is it guaranteed that sticker id of a custom emoji sticker (class sticker) will match custom_emoji_id in stickerFullTypeCustomEmoji
No. This should never be needed to be used.
so i should never use stickerFullTypeCustomEmoji is that what you are implying? or do u mean i should never use id inside of that class/object? because object itself seems to contain needs_repainting which's needed to draw those colorless icons that can change colors depending on themes
You must always use custom_emoji_id whenever custom emoji identifier is required and sticker.id whenever sticker identifier is required.
well im calling [getCustomEmojiStickers] obviously and getting sticker object which additionally contains that stickerFullTypeCustomEmoji im asking to know whether i will have to handle some extreme situations where id wont match id of sticker because im trying to download them to display them to client, i dont want to end up calling getCustomEmojiStickers 10 different times just to get to the root and traverse back
You almost never need sticker.id. You need custom_emoji_id to identify a custom emoji and process it.
im asking all this because for stickers we also have stickerFullTypeRegular which got [object_ptr]()< [file]() > premium_animation_, can it differ from the actual sticker?
The animation definitely isn't related directly to the sticker.
but it is related to the sticker, because how are you supposed to send premium sticker when you dont have premium? if it wasnt related to the sticker it wouldve let you to send regular sticker as non premium user and for premium users it wouldve used the premium animation? or how does it work? 2 separate files one of which is just animation played over the real sticker? lol
You described mostly how it works. The premium animation is a separate file.
ok thanks