Source code for hydrogram.raw.functions.stickers.change_sticker
# Hydrogram - Telegram MTProto API Client Library for Python# Copyright (C) 2023-present Hydrogram <https://hydrogram.org>## This file is part of Hydrogram.## Hydrogram is free software: you can redistribute it and/or modify# it under the terms of the GNU Lesser General Public License as published# by the Free Software Foundation, either version 3 of the License, or# (at your option) any later version.## Hydrogram is distributed in the hope that it will be useful,# but WITHOUT ANY WARRANTY; without even the implied warranty of# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the# GNU Lesser General Public License for more details.## You should have received a copy of the GNU Lesser General Public License# along with Hydrogram. If not, see <http://www.gnu.org/licenses/>.fromioimportBytesIOfromhydrogram.raw.core.primitivesimportInt,Long,Int128,Int256,Bool,Bytes,String,Double,Vectorfromhydrogram.raw.coreimportTLObjectfromhydrogramimportrawfromtypingimportList,Optional,Any# # # # # # # # # # # # # # # # # # # # # # # ## !!! WARNING !!! ## This is a generated file! ## All changes made in this file will be lost! ## # # # # # # # # # # # # # # # # # # # # # # #
[docs]classChangeSticker(TLObject):# type: ignore"""Update the keywords, emojis or mask coordinates of a sticker, bots only. Details: - Layer: ``181`` - ID: ``F5537EBC`` Parameters: sticker (:obj:`InputDocument <hydrogram.raw.base.InputDocument>`): The sticker emoji (``str``, *optional*): If set, updates the emoji list associated to the sticker mask_coords (:obj:`MaskCoords <hydrogram.raw.base.MaskCoords>`, *optional*): If set, updates the mask coordinates keywords (``str``, *optional*): If set, updates the sticker keywords (separated by commas). Can't be provided for mask stickers. Returns: :obj:`messages.StickerSet <hydrogram.raw.base.messages.StickerSet>` """__slots__:List[str]=["sticker","emoji","mask_coords","keywords"]ID=0xf5537ebcQUALNAME="functions.stickers.ChangeSticker"def__init__(self,*,sticker:"raw.base.InputDocument",emoji:Optional[str]=None,mask_coords:"raw.base.MaskCoords"=None,keywords:Optional[str]=None)->None:self.sticker=sticker# InputDocumentself.emoji=emoji# flags.0?stringself.mask_coords=mask_coords# flags.1?MaskCoordsself.keywords=keywords# flags.2?string@staticmethoddefread(b:BytesIO,*args:Any)->"ChangeSticker":flags=Int.read(b)sticker=TLObject.read(b)emoji=String.read(b)ifflags&(1<<0)elseNonemask_coords=TLObject.read(b)ifflags&(1<<1)elseNonekeywords=String.read(b)ifflags&(1<<2)elseNonereturnChangeSticker(sticker=sticker,emoji=emoji,mask_coords=mask_coords,keywords=keywords)defwrite(self,*args)->bytes:b=BytesIO()b.write(Int(self.ID,False))flags=0flags|=(1<<0)ifself.emojiisnotNoneelse0flags|=(1<<1)ifself.mask_coordsisnotNoneelse0flags|=(1<<2)ifself.keywordsisnotNoneelse0b.write(Int(flags))b.write(self.sticker.write())ifself.emojiisnotNone:b.write(String(self.emoji))ifself.mask_coordsisnotNone:b.write(self.mask_coords.write())ifself.keywordsisnotNone:b.write(String(self.keywords))returnb.getvalue()