@tgsnake/skema
    Preparing search index...

    Class User

    Base abstract class for all Type Language (TL) schema objects within the MTProto protocol.

    In the Telegram MTProto protocol, messages and API payloads are defined in a custom ID-based schema language called Type Language (TL). TLObject is the root class providing fundamental binary serialization (write) and deserialization (read) interfaces, alongside custom console print formatters and standard JSON serializers.

    Hierarchy (View Summary)

    Index

    Constructors

    • Parameters

      • params: {
            accessHash?: bigint;
            applyMinPhoto?: boolean;
            attachMenuEnabled?: boolean;
            bot?: boolean;
            botActiveUsers?: number;
            botAttachMenu?: boolean;
            botBusiness?: boolean;
            botCanEdit?: boolean;
            botCanManageBots?: boolean;
            botChatHistory?: boolean;
            botForumCanManageTopics?: boolean;
            botForumView?: boolean;
            botGuard?: boolean;
            botGuestchat?: boolean;
            botHasMainApp?: boolean;
            botInfoVersion?: number;
            botInlineGeo?: boolean;
            botInlinePlaceholder?: string;
            botNochats?: boolean;
            botVerificationIcon?: bigint;
            closeFriend?: boolean;
            color?: TypePeerColor;
            contact?: boolean;
            contactRequirePremium?: boolean;
            deleted?: boolean;
            emojiStatus?: TypeEmojiStatus;
            fake?: boolean;
            firstName?: string;
            id: bigint;
            langCode?: string;
            lastName?: string;
            min?: boolean;
            mutualContact?: boolean;
            phone?: string;
            photo?: TypeUserProfilePhoto;
            premium?: boolean;
            profileColor?: TypePeerColor;
            restricted?: boolean;
            restrictionReason?: Raw.Vector<RestrictionReason>;
            scam?: boolean;
            self?: boolean;
            sendPaidMessagesStars?: bigint;
            status?: TypeUserStatus;
            storiesHidden?: boolean;
            storiesMaxId?: RecentStory;
            storiesUnavailable?: boolean;
            support?: boolean;
            username?: string;
            usernames?: Raw.Vector<Username>;
            verified?: boolean;
        }

      Returns User

    Properties

    _slots: string[]

    The internal slot list storing serialization field property names.

    accessHash?: bigint
    applyMinPhoto?: boolean
    attachMenuEnabled?: boolean
    bot?: boolean
    botActiveUsers?: number
    botAttachMenu?: boolean
    botBusiness?: boolean
    botCanEdit?: boolean
    botCanManageBots?: boolean
    botChatHistory?: boolean
    botForumCanManageTopics?: boolean
    botForumView?: boolean
    botGuard?: boolean
    botGuestchat?: boolean
    botHasMainApp?: boolean
    botInfoVersion?: number
    botInlineGeo?: boolean
    botInlinePlaceholder?: string
    botNochats?: boolean
    botVerificationIcon?: bigint
    className: string

    The canonical string name of this class representation.

    classType: string

    The underlying classification type (e.g. request, constructor, function).

    closeFriend?: boolean
    cls: any = ...

    A dynamic reference to the current subclass constructor. Enables late static binding for instance methods to access static helper operations.

    constructorId: number

    The unique 32-bit integer identifier (CRC32 checksum) of this TL constructor.

    contact?: boolean
    contactRequirePremium?: boolean
    deleted?: boolean
    emojiStatus?: TypeEmojiStatus
    fake?: boolean
    firstName?: string
    id: bigint
    langCode?: string
    lastName?: string
    min?: boolean
    mutualContact?: boolean
    phone?: string
    premium?: boolean
    profileColor?: TypePeerColor
    restricted?: boolean
    restrictionReason?: Raw.Vector<RestrictionReason>
    scam?: boolean
    self?: boolean
    sendPaidMessagesStars?: bigint
    storiesHidden?: boolean
    storiesMaxId?: RecentStory
    storiesUnavailable?: boolean
    subclassOfId: number

    The unique 32-bit integer identifier of the parent/abstract type this TL subclass represents.

    support?: boolean
    username?: string
    usernames?: Raw.Vector<Username>
    verified?: boolean

    Methods

    • Deserializes a binary stream into this specific TLObject instance.

      Parameters

      • data: BytesIO

        The BytesIO buffer stream containing the serialized TLObject.

      • ...args: any[]

        Additional arguments passed down to the read parser.

      Returns Promise<any>

      A promise resolving to the parsed instance.

    • Serializes the TLObject instance to a clean JSON-compatible representation.

      Returns { [key: string]: any }

      A plain object containing class attributes and values.

      Correctly stringifies extremely large fields (e.g. bigints) that are normally not serializable in standard JSON.stringify calls.

    • Formats the TLObject into a structured string.

      Returns string

      A string starting with the constructor name followed by a pretty JSON payload.

    • Generate the TLObject from buffer.

      Parameters

      • _data: BytesIO

        BytesIO class from TLObject will be convert to TLObject class.

      • ..._args: any[]

      Returns Promise<User>

    • Serializes constructor arguments into a raw binary buffer.

      Parameters

      • ..._args: any[]

        Arguments to be serialized.

      Returns Buffer

      An empty Buffer of size 0.

      This base implementation acts as an abstract stub returning an empty Buffer. Subclasses override this static method to handle specific binary serialization layouts.