mtproto

package
v0.0.0-...-483b589 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 23, 2018 License: Apache-2.0 Imports: 27 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ErrTelegramTimeOut = errors.New("telegram time out.")
	ErrUsernameInvalid = errors.New("USERNAME_INVALID")
)

Functions

func DoAES256IGEdecrypt

func DoAES256IGEdecrypt(data, key, iv []byte) ([]byte, error)

func DoAES256IGEencrypt

func DoAES256IGEencrypt(data, key, iv []byte) ([]byte, error)

func EncodeInterface

func EncodeInterface(msg interface{}) []byte

func EncodeTL

func EncodeTL(msg TL) []byte

func GenerateAES

func GenerateAES(msg_key, auth_key []byte, decode bool) ([]byte, []byte)

func GenerateMessageId

func GenerateMessageId() int64

func GenerateNonce

func GenerateNonce(size int) []byte

func MakePacket

func MakePacket(msg TL) ([]byte, error)

func MakePacketHttp

func MakePacketHttp(msg TL, cd *CacheData) ([]byte, error)

func MakingPacket

func MakingPacket(msg TL, cd *CacheData) ([]byte, error)

func ReadData

func ReadData(conn net.Conn, cd *CacheData) (interface{}, error)

func ToBool

func ToBool(x TL) (bool, error)

Types

type CacheData

type CacheData struct {
	Nonce       []byte
	ServerNonce []byte
	NewNonce    []byte
	TmpAESKey   []byte
	TmpAESIV    []byte
	AuthKeyID   int64
	AuthKey     []byte
	AuthKeyHash []byte
	GA          *big.Int
	G           int32
	A           *big.Int
	MsgID       int64
	SeqNo       int32
	ServerSalt  []byte
	SessionID   int64
	Encrypted   bool
	ReqMsgID    int64
}

type ChannelInfo

type ChannelInfo struct {
	Title             string    `json:"title"`
	Username          string    `json:"username"`
	ID                int32     `json:"id"`
	Hash              int64     `json:"hash"`
	ParticipantsCount int32     `json:"participaint_count"`
	Posts             []Message `json:"posts"`
	TopMessage        int32     `json:"-"`
	Pts               int32     `json:"-"`
	UnreadCount       int32     `json:"-"`
}

type Configuration

type Configuration struct {
	Id            int32
	Hash          string
	Version       string
	DeviceModel   string
	SystemVersion string
	Language      string
}

func NewConfiguration

func NewConfiguration(id int32, hash, version, deviceModel, systemVersion, language string) (*Configuration, error)

func (Configuration) Check

func (appConfig Configuration) Check() error

type DecodeBuf

type DecodeBuf struct {
	// contains filtered or unexported fields
}

func NewDecodeBuf

func NewDecodeBuf(b []byte) *DecodeBuf

func (*DecodeBuf) BigInt

func (m *DecodeBuf) BigInt() *big.Int

func (*DecodeBuf) Bool

func (m *DecodeBuf) Bool() bool

func (*DecodeBuf) Bytes

func (m *DecodeBuf) Bytes(size int) []byte

func (*DecodeBuf) Double

func (m *DecodeBuf) Double() float64

func (*DecodeBuf) Error

func (m *DecodeBuf) Error() error

func (*DecodeBuf) Int

func (m *DecodeBuf) Int() int32

func (*DecodeBuf) Long

func (m *DecodeBuf) Long() int64

func (*DecodeBuf) Object

func (m *DecodeBuf) Object() (r TL)

func (*DecodeBuf) ObjectGenerated

func (m *DecodeBuf) ObjectGenerated(constructor uint32) (r TL)

func (*DecodeBuf) Size

func (m *DecodeBuf) Size() int

func (*DecodeBuf) String

func (m *DecodeBuf) String() string

func (*DecodeBuf) StringBytes

func (m *DecodeBuf) StringBytes() []byte

func (*DecodeBuf) UInt

func (m *DecodeBuf) UInt() uint32

func (*DecodeBuf) Vector

func (m *DecodeBuf) Vector() []TL

func (*DecodeBuf) VectorInt

func (m *DecodeBuf) VectorInt() []int32

func (*DecodeBuf) VectorLong

func (m *DecodeBuf) VectorLong() []int64

func (*DecodeBuf) VectorString

func (m *DecodeBuf) VectorString() []string

type EncodeBuf

type EncodeBuf struct {
	// contains filtered or unexported fields
}

func NewEncodeBuf

func NewEncodeBuf(cap int) *EncodeBuf

func (*EncodeBuf) BigInt

func (e *EncodeBuf) BigInt(s *big.Int)

func (*EncodeBuf) Buf

func (e *EncodeBuf) Buf() []byte

func (*EncodeBuf) Bytes

func (e *EncodeBuf) Bytes(s []byte)

func (*EncodeBuf) Double

func (e *EncodeBuf) Double(s float64)

func (*EncodeBuf) Int

func (e *EncodeBuf) Int(s int32)

func (*EncodeBuf) Long

func (e *EncodeBuf) Long(s int64)

func (*EncodeBuf) String

func (e *EncodeBuf) String(s string)

func (*EncodeBuf) StringBytes

func (e *EncodeBuf) StringBytes(s []byte)

func (*EncodeBuf) UInt

func (e *EncodeBuf) UInt(s uint32)

func (*EncodeBuf) Vector

func (e *EncodeBuf) Vector(v []TL)

func (*EncodeBuf) VectorInt

func (e *EncodeBuf) VectorInt(v []int32)

func (*EncodeBuf) VectorLong

func (e *EncodeBuf) VectorLong(v []int64)

func (*EncodeBuf) VectorString

func (e *EncodeBuf) VectorString(v []string)

type HttpData

type HttpData struct {
	Data      interface{}
	CacheData CacheData
}

func ReadHttpData

func ReadHttpData(rData []byte, sessions map[string]*CacheData) (*HttpData, error)

type MTProto

type MTProto struct {
	Addr string

	StopRoutines chan struct{}

	IsMigrate   bool
	IsReconnect bool
	IsConnected bool
	HasErr      bool
	CurrentDC   int32

	CurUserPhone string
	// contains filtered or unexported fields
}

func NewMTProto

func NewMTProto(newSession bool, phoneNumber, authKeyPath string) (*MTProto, error)

func (*MTProto) AccountChangeStatus

func (m *MTProto) AccountChangeStatus(offline bool) (TL, error)

func (*MTProto) Auth

func (m *MTProto) Auth(phonenumber string) error

func (*MTProto) AuthExportAuthorization

func (m *MTProto) AuthExportAuthorization(dc_id int32) (*TL_auth_exportedAuthorization, error)

func (*MTProto) AuthImportAuthorization

func (m *MTProto) AuthImportAuthorization(id int32, bytes []byte) (*TL_auth_authorization, error)

func (*MTProto) AuthLogOut

func (m *MTProto) AuthLogOut() (bool, error)

func (*MTProto) AuthSendCode

func (m *MTProto) AuthSendCode(phonenumber string) (*TL_auth_sentCode, error)

func (*MTProto) AuthSignIn

func (m *MTProto) AuthSignIn(phoneNumber, phoneCode, phoneCodeHash string) (*TL_auth_authorization, error)

func (*MTProto) ChannelsReadHistory

func (m *MTProto) ChannelsReadHistory(channelID, maxID int32, accessHash int64) error

func (*MTProto) Connect

func (m *MTProto) Connect() error

func (*MTProto) ContactsGetContacts

func (m *MTProto) ContactsGetContacts(hash string) (*TL, error)

func (*MTProto) ContactsGetTopPeers

func (m *MTProto) ContactsGetTopPeers(correspondents, botsPM, botsInline, groups, channels bool, offset, limit, hash int32) (*TL, error)

func (*MTProto) Disconnect

func (m *MTProto) Disconnect() error

func (*MTProto) DownloadImage

func (m *MTProto) DownloadImage(volumeID, secret, localID, size, path string) ([]byte, error)

func (*MTProto) DownloadVideo

func (m *MTProto) DownloadVideo(id, hash, size, path string) ([]byte, error)

func (*MTProto) GetChannelFromGlobalSearch

func (m *MTProto) GetChannelFromGlobalSearch(username string) (TL_channel, error)

func (*MTProto) GetChannelFromUsername

func (m *MTProto) GetChannelFromUsername(username string) (TL_channel, error)

func (*MTProto) GetChannelObjects

func (m *MTProto) GetChannelObjects(channel TL_channel) ChannelInfo

func (*MTProto) GetChannelParticipants

func (m *MTProto) GetChannelParticipants(channelID int32, hash int64, offset, limit int32) (TL, error)

func (*MTProto) GetChannels

func (m *MTProto) GetChannels(str string) error

func (*MTProto) GetChannelsUnreadMsg

func (m *MTProto) GetChannelsUnreadMsg(excludePinned bool, offsetDate, offsetId int32, offsetPeer TL, limit int32) (channels []ChannelInfo, err error)

func (*MTProto) GetConfig

func (m *MTProto) GetConfig() error

func (*MTProto) GetDC

func (m *MTProto) GetDC(path string) error

func (*MTProto) GetDialogs

func (m *MTProto) GetDialogs(excludePinned bool, offsetDate, offsetId int32, offsetPeer TL, limit int32) (TL, error)

func (*MTProto) GetFile

func (m *MTProto) GetFile(id, hash int64, offset int32) (TL, error)

func (*MTProto) GetFullChannel

func (m *MTProto) GetFullChannel(channelID int32, accessHash int64) (TL_channelFull, error)

func (*MTProto) GetMessage

func (m *MTProto) GetMessage(msgId, channelId, hash string) (Message, error)

func (*MTProto) GetMessageObject

func (m *MTProto) GetMessageObject(msg TL_message, channelId int32) Message

func (*MTProto) GetParticipants

func (m *MTProto) GetParticipants(channelID int32, accessHash int64) (count int32, err error)

func (*MTProto) GetPhoto

func (m *MTProto) GetPhoto(volumeID, secret int64, localID, offset int32, flag bool) (TL, error)

func (*MTProto) GetPosts

func (m *MTProto) GetPosts(msgsId []int32, channelId int32, hash int64) []TL_message

func (*MTProto) GetUserFromUsername

func (m *MTProto) GetUserFromUsername(username string) (TL_user, error)

func (*MTProto) ImportContact

func (m *MTProto) ImportContact(contacts []TL) (*TL, error)

func (*MTProto) JoinChannel

func (m *MTProto) JoinChannel(channelId int32, hash int64) (TL, error)

func (*MTProto) LeaveChannel

func (m *MTProto) LeaveChannel(channelId int32, hash int64) error

func (*MTProto) MessageSendMedia

func (m *MTProto) MessageSendMedia(msg Message, objectId string, randomId, botAccessHash int64, BotId int32) (err error)

func (*MTProto) MessagesForwardMessage

func (m *MTProto) MessagesForwardMessage(Silent, Background, With_my_score bool, From_peer TL, id []int32, Random_id []int64, to_peer TL) (TL, error)

func (*MTProto) MessagesGetHistory

func (m *MTProto) MessagesGetHistory(peer TL, offsetId, offsetDate, addOffset, limit, maxID, minId int32) (TL, error)

func (*MTProto) MessagesSendMessage

func (m *MTProto) MessagesSendMessage(no_webpage, silent, background, clear_draft bool, peer TL,
	reply_to_msg_id int32, message string, random_id int64, reply_markup TL, entities []TL) (*TL, error)

func (*MTProto) Read

func (m *MTProto) Read(conn *net.TCPConn) (interface{}, error)

func (*MTProto) Reconnect

func (m *MTProto) Reconnect(newaddr string) error

func (*MTProto) SaveDC

func (m *MTProto) SaveDC(path string, DCList map[int32]string) error

func (*MTProto) SaveImage

func (m *MTProto) SaveImage(path string, content []byte)

func (*MTProto) SendMedia

func (m *MTProto) SendMedia(media TL, randomId, botAccessHash int64, BotId int32) error

func (*MTProto) SendPacket

func (m *MTProto) SendPacket(msg TL, resp chan response) error

func (*MTProto) SendProfilePhoto

func (m *MTProto) SendProfilePhoto(photoId int64, hash int64, objectId string, randomId, BotAccessHash int64, BotId int32) error

func (*MTProto) UpdateVeiwsCount

func (m *MTProto) UpdateVeiwsCount(ids []string, channelID, accessHash string) (TL, error)

func (*MTProto) UpdatesGetChannelDifference

func (m *MTProto) UpdatesGetChannelDifference(force bool, channel, filter TL, pts, limit int32) (TL, error)

func (*MTProto) UpdatesGetDifference

func (m *MTProto) UpdatesGetDifference(pts, ptsTotalLimit, date, qts int32) (*TL, error)

func (*MTProto) UpdatesGetState

func (m *MTProto) UpdatesGetState() (TL, error)

func (*MTProto) UsersGetFullUsers

func (m *MTProto) UsersGetFullUsers(id TL) (*TL_userFull, error)

type Message

type Message struct {
	ID        string `json:"id"`
	Text      string `json:"text"`
	Date      int32  `json:"date"`
	ViewCount int32  `json:"view_count"`
	Media     TL     `json:"media"`
}

type TL

type TL interface {
	// contains filtered or unexported methods
}

type TL_MT_message

type TL_MT_message struct {
	Msg_id int64
	Seq_no int32
	Size   int32
	Data   TL
}

type TL_accountDaysTTL

type TL_accountDaysTTL struct {
	Days int32 // days:int
}

type TL_account_authorizations

type TL_account_authorizations struct {
	Authorizations []TL // authorizations:Vector<Authorization>
}

type TL_account_changePhone

type TL_account_changePhone struct {
	Phone_number    string // phone_number:string
	Phone_code_hash string // phone_code_hash:string
	Phone_code      string // phone_code:string
}

type TL_account_checkUsername

type TL_account_checkUsername struct {
	Username string // username:string
}

type TL_account_confirmPhone

type TL_account_confirmPhone struct {
	Phone_code_hash string // phone_code_hash:string
	Phone_code      string // phone_code:string
}

type TL_account_deleteAccount

type TL_account_deleteAccount struct {
	Reason string // reason:string
}

type TL_account_getAccountTTL

type TL_account_getAccountTTL struct {
}

type TL_account_getAuthorizations

type TL_account_getAuthorizations struct {
}

type TL_account_getNotifySettings

type TL_account_getNotifySettings struct {
	Peer TL // peer:InputNotifyPeer
}

type TL_account_getPassword

type TL_account_getPassword struct {
}

type TL_account_getPasswordSettings

type TL_account_getPasswordSettings struct {
	Current_password_hash []byte // current_password_hash:bytes
}

type TL_account_getPrivacy

type TL_account_getPrivacy struct {
	Key TL // key:InputPrivacyKey
}

type TL_account_getTmpPassword

type TL_account_getTmpPassword struct {
	Password_hash []byte // password_hash:bytes
	Period        int32  // period:int
}

type TL_account_getWallPapers

type TL_account_getWallPapers struct {
}

type TL_account_noPassword

type TL_account_noPassword struct {
	New_salt                  []byte // new_salt:bytes
	Email_unconfirmed_pattern string // email_unconfirmed_pattern:string
}

type TL_account_password

type TL_account_password struct {
	Current_salt              []byte // current_salt:bytes
	New_salt                  []byte // new_salt:bytes
	Hint                      string // hint:string
	Has_recovery              TL     // has_recovery:Bool
	Email_unconfirmed_pattern string // email_unconfirmed_pattern:string
}

type TL_account_passwordInputSettings

type TL_account_passwordInputSettings struct {
	Flags             int32
	New_salt          []byte // new_salt:flags.0?bytes
	New_password_hash []byte // new_password_hash:flags.0?bytes
	Hint              string // hint:flags.0?string
	Email             string // email:flags.1?string
}

type TL_account_passwordSettings

type TL_account_passwordSettings struct {
	Email string // email:string
}

type TL_account_privacyRules

type TL_account_privacyRules struct {
	Rules []TL // rules:Vector<PrivacyRule>
	Users []TL // users:Vector<User>
}

type TL_account_registerDevice

type TL_account_registerDevice struct {
	Token_type int32  // token_type:int
	Token      string // token:string
}

type TL_account_reportPeer

type TL_account_reportPeer struct {
	Peer   TL // peer:InputPeer
	Reason TL // reason:ReportReason
}

type TL_account_resetAuthorization

type TL_account_resetAuthorization struct {
	Hash int64 // Hash:long
}

type TL_account_resetNotifySettings

type TL_account_resetNotifySettings struct {
}

type TL_account_sendChangePhoneCode

type TL_account_sendChangePhoneCode struct {
	Flags           int32
	Allow_flashcall bool   // allow_flashcall:flags.0?true
	Phone_number    string // phone_number:string
	Current_number  TL     // current_number:flags.0?Bool
}

type TL_account_sendConfirmPhoneCode

type TL_account_sendConfirmPhoneCode struct {
	Flags           int32
	Allow_flashcall bool   // allow_flashcall:flags.0?true
	Hash            string // Hash:string
	Current_number  TL     // current_number:flags.0?Bool
}

type TL_account_setAccountTTL

type TL_account_setAccountTTL struct {
	Ttl TL // ttl:AccountDaysTTL
}

type TL_account_setPrivacy

type TL_account_setPrivacy struct {
	Key   TL   // key:InputPrivacyKey
	Rules []TL // rules:Vector<InputPrivacyRule>
}

type TL_account_tmpPassword

type TL_account_tmpPassword struct {
	Tmp_password []byte // tmp_password:bytes
	Valid_until  int32  // valid_until:int
}

type TL_account_unregisterDevice

type TL_account_unregisterDevice struct {
	Token_type int32  // token_type:int
	Token      string // token:string
}

type TL_account_updateDeviceLocked

type TL_account_updateDeviceLocked struct {
	Period int32 // period:int
}

type TL_account_updateNotifySettings

type TL_account_updateNotifySettings struct {
	Peer     TL // peer:InputNotifyPeer
	Settings TL // settings:InputPeerNotifySettings
}

type TL_account_updatePasswordSettings

type TL_account_updatePasswordSettings struct {
	Current_password_hash []byte // current_password_hash:bytes
	New_settings          TL     // new_settings:account.PasswordInputSettings
}

type TL_account_updateProfile

type TL_account_updateProfile struct {
	Flags      int32
	First_name string // first_name:flags.0?string
	Last_name  string // last_name:flags.1?string
	About      string // about:flags.2?string
}

type TL_account_updateStatus

type TL_account_updateStatus struct {
	Offline TL // offline:Bool
}

type TL_account_updateUsername

type TL_account_updateUsername struct {
	Username string // username:string
}

type TL_auth_authorization

type TL_auth_authorization struct {
	Flags        int32
	Tmp_sessions int32 // tmp_sessions:flags.0?int
	User         TL    // user:User
}

type TL_auth_bindTempAuthKey

type TL_auth_bindTempAuthKey struct {
	Perm_auth_key_id  int64  // perm_auth_key_id:long
	Nonce             int64  // nonce:long
	Expires_at        int32  // expires_at:int
	Encrypted_message []byte // encrypted_message:bytes
}

type TL_auth_cancelCode

type TL_auth_cancelCode struct {
	Phone_number    string // phone_number:string
	Phone_code_hash string // phone_code_hash:string
}

type TL_auth_checkPassword

type TL_auth_checkPassword struct {
	Password_hash []byte // password_hash:bytes
}

type TL_auth_checkPhone

type TL_auth_checkPhone struct {
	Phone_number string // phone_number:string
}

type TL_auth_checkedPhone

type TL_auth_checkedPhone struct {
	Phone_registered TL // phone_registered:Bool
}

type TL_auth_codeTypeCall

type TL_auth_codeTypeCall struct {
}

type TL_auth_codeTypeFlashCall

type TL_auth_codeTypeFlashCall struct {
}

type TL_auth_codeTypeSms

type TL_auth_codeTypeSms struct {
}

type TL_auth_dropTempAuthKeys

type TL_auth_dropTempAuthKeys struct {
	Except_auth_keys []int64 // except_auth_keys:Vector<long>
}

type TL_auth_exportAuthorization

type TL_auth_exportAuthorization struct {
	Dc_id int32 // dc_id:int
}

type TL_auth_exportedAuthorization

type TL_auth_exportedAuthorization struct {
	Id    int32  // Id:int
	Bytes []byte // bytes:bytes
}

type TL_auth_importAuthorization

type TL_auth_importAuthorization struct {
	Id    int32  // Id:int
	Bytes []byte // bytes:bytes
}

type TL_auth_importBotAuthorization

type TL_auth_importBotAuthorization struct {
	Flags          int32  // flags:int
	Api_id         int32  // api_id:int
	Api_hash       string // api_hash:string
	Bot_auth_token string // bot_auth_token:string
}

type TL_auth_logOut

type TL_auth_logOut struct {
}

type TL_auth_passwordRecovery

type TL_auth_passwordRecovery struct {
	Email_pattern string // email_pattern:string
}

type TL_auth_recoverPassword

type TL_auth_recoverPassword struct {
	Code string // code:string
}

type TL_auth_requestPasswordRecovery

type TL_auth_requestPasswordRecovery struct {
}

type TL_auth_resendCode

type TL_auth_resendCode struct {
	Phone_number    string // phone_number:string
	Phone_code_hash string // phone_code_hash:string
}

type TL_auth_resetAuthorizations

type TL_auth_resetAuthorizations struct {
}

type TL_auth_sendCode

type TL_auth_sendCode struct {
	Flags           int32
	Allow_flashcall bool   // allow_flashcall:flags.0?true
	Phone_number    string // phone_number:string
	Current_number  TL     // current_number:flags.0?Bool
	Api_id          int32  // api_id:int
	Api_hash        string // api_hash:string
}

type TL_auth_sendInvites

type TL_auth_sendInvites struct {
	Phone_numbers []string // phone_numbers:Vector<string>
	Message       string   // message:string
}

type TL_auth_sentCode

type TL_auth_sentCode struct {
	Flags            int32
	Phone_registered bool   // phone_registered:flags.0?true
	Code_type        TL     // type:auth.SentCodeType
	Phone_code_hash  string // phone_code_hash:string
	Next_type        TL     // next_type:flags.1?auth.CodeType
	Timeout          int32  // timeout:flags.2?int
}

type TL_auth_sentCodeTypeApp

type TL_auth_sentCodeTypeApp struct {
	Length int32 // length:int
}

type TL_auth_sentCodeTypeCall

type TL_auth_sentCodeTypeCall struct {
	Length int32 // length:int
}

type TL_auth_sentCodeTypeFlashCall

type TL_auth_sentCodeTypeFlashCall struct {
	Pattern string // pattern:string
}

type TL_auth_sentCodeTypeSms

type TL_auth_sentCodeTypeSms struct {
	Length int32 // length:int
}

type TL_auth_signIn

type TL_auth_signIn struct {
	Phone_number    string // phone_number:string
	Phone_code_hash string // phone_code_hash:string
	Phone_code      string // phone_code:string
}

type TL_auth_signUp

type TL_auth_signUp struct {
	Phone_number    string // phone_number:string
	Phone_code_hash string // phone_code_hash:string
	Phone_code      string // phone_code:string
	First_name      string // first_name:string
	Last_name       string // last_name:string
}

type TL_authorization

type TL_authorization struct {
	Hash           int64  // Hash:long
	Flags          int32  // flags:int
	Device_model   string // device_model:string
	Platform       string // platform:string
	System_version string // system_version:string
	Api_id         int32  // api_id:int
	App_name       string // app_name:string
	App_version    string // app_version:string
	Date_created   int32  // date_created:int
	Date_active    int32  // date_active:int
	Ip             string // ip:string
	Country        string // country:string
	Region         string // region:string
}

type TL_bad_msg_notification

type TL_bad_msg_notification struct {
	Bad_msg_id    int64
	Bad_msg_seqno int32
	Error_code    int32
}

type TL_bad_server_salt

type TL_bad_server_salt struct {
	Bad_msg_id      int64
	Bad_msg_seqno   int32
	Error_code      int32
	New_server_salt []byte
}

type TL_boolFalse

type TL_boolFalse struct {
}

type TL_boolTrue

type TL_boolTrue struct {
}

type TL_botCommand

type TL_botCommand struct {
	Command     string // command:string
	Description string // description:string
}

type TL_botInfo

type TL_botInfo struct {
	User_id     int32  // user_id:int
	Description string // description:string
	Commands    []TL   // commands:Vector<BotCommand>
}

type TL_botInlineMediaResult

type TL_botInlineMediaResult struct {
	Flags        int32
	Id           string // Id:string
	Code_type    string // type:string
	Photo        TL     // photo:flags.0?Photo
	Document     TL     // document:flags.1?Document
	Title        string // title:flags.2?string
	Description  string // description:flags.3?string
	Send_message TL     // send_message:BotInlineMessage
}

type TL_botInlineMessageMediaAuto

type TL_botInlineMessageMediaAuto struct {
	Flags        int32
	Caption      string // caption:string
	Reply_markup TL     // reply_markup:flags.2?ReplyMarkup
}

type TL_botInlineMessageMediaContact

type TL_botInlineMessageMediaContact struct {
	Flags        int32
	Phone_number string // phone_number:string
	First_name   string // first_name:string
	Last_name    string // last_name:string
	Reply_markup TL     // reply_markup:flags.2?ReplyMarkup
}

type TL_botInlineMessageMediaGeo

type TL_botInlineMessageMediaGeo struct {
	Flags        int32
	Geo          TL // geo:GeoPoint
	Reply_markup TL // reply_markup:flags.2?ReplyMarkup
}

type TL_botInlineMessageMediaVenue

type TL_botInlineMessageMediaVenue struct {
	Flags        int32
	Geo          TL     // geo:GeoPoint
	Title        string // title:string
	Address      string // address:string
	Provider     string // provider:string
	Venue_id     string // venue_id:string
	Reply_markup TL     // reply_markup:flags.2?ReplyMarkup
}

type TL_botInlineMessageText

type TL_botInlineMessageText struct {
	Flags        int32
	No_webpage   bool   // no_webpage:flags.0?true
	Message      string // message:string
	Entities     []TL   // entities:flags.1?Vector<MessageEntity>
	Reply_markup TL     // reply_markup:flags.2?ReplyMarkup
}

type TL_botInlineResult

type TL_botInlineResult struct {
	Flags        int32
	Id           string // Id:string
	Code_type    string // type:string
	Title        string // title:flags.1?string
	Description  string // description:flags.2?string
	Url          string // url:flags.3?string
	Thumb_url    string // thumb_url:flags.4?string
	Content_url  string // content_url:flags.5?string
	Content_type string // content_type:flags.5?string
	W            int32  // w:flags.6?int
	H            int32  // h:flags.6?int
	Duration     int32  // duration:flags.7?int
	Send_message TL     // send_message:BotInlineMessage
}

type TL_bots_answerWebhookJSONQuery

type TL_bots_answerWebhookJSONQuery struct {
	Query_id int64 // query_id:long
	Data     TL    // data:DataJSON
}

type TL_bots_sendCustomRequest

type TL_bots_sendCustomRequest struct {
	Custom_method string // custom_method:string
	Params        TL     // params:DataJSON
}

type TL_channel

type TL_channel struct {
	Flags              int32
	Creator            bool   // creator:flags.0?true
	Kicked             bool   // kicked:flags.1?true
	Left               bool   // left:flags.2?true
	Editor             bool   // editor:flags.3?true
	Moderator          bool   // moderator:flags.4?true
	Broadcast          bool   // broadcast:flags.5?true
	Verified           bool   // verified:flags.7?true
	Megagroup          bool   // megagroup:flags.8?true
	Restricted         bool   // restricted:flags.9?true
	Democracy          bool   // democracy:flags.10?true
	Signatures         bool   // signatures:flags.11?true
	Min                bool   // min:flags.12?true
	Id                 int32  // Id:int
	Access_hash        int64  // access_hash:flags.13?long
	Title              string // title:string
	Username           string // username:flags.6?string
	Photo              TL     // photo:ChatPhoto
	Date               int32  // date:int
	Version            int32  // Version:int
	Restriction_reason string // restriction_reason:flags.9?string
}

type TL_channelForbidden

type TL_channelForbidden struct {
	Flags       int32
	Broadcast   bool   // broadcast:flags.5?true
	Megagroup   bool   // megagroup:flags.8?true
	Id          int32  // Id:int
	Access_hash int64  // access_hash:long
	Title       string // title:string
}

type TL_channelFull

type TL_channelFull struct {
	Flags                 int32
	Can_view_participants bool   // can_view_participants:flags.3?true
	Can_set_username      bool   // can_set_username:flags.6?true
	Id                    int32  // Id:int
	About                 string // about:string
	ParticipantsCount     int32  // participants_count:flags.0?int
	Admins_count          int32  // admins_count:flags.1?int
	Kicked_count          int32  // kicked_count:flags.2?int
	Read_inbox_max_id     int32  // read_inbox_max_id:int
	Read_outbox_max_id    int32  // read_outbox_max_id:int
	Unread_count          int32  // unread_count:int
	Chat_photo            TL     // chat_photo:Photo
	Notify_settings       TL     // notify_settings:PeerNotifySettings
	Exported_invite       TL     // exported_invite:ExportedChatInvite
	Bot_info              []TL   // bot_info:Vector<BotInfo>
	Migrated_from_chat_id int32  // migrated_from_chat_id:flags.4?int
	Migrated_from_max_id  int32  // migrated_from_max_id:flags.4?int
	Pinned_msg_id         int32  // pinned_msg_id:flags.5?int
}

type TL_channelMessagesFilter

type TL_channelMessagesFilter struct {
	Flags                int32
	Exclude_new_messages bool // exclude_new_messages:flags.1?true
	Ranges               []TL // ranges:Vector<MessageRange>
}

type TL_channelMessagesFilterEmpty

type TL_channelMessagesFilterEmpty struct {
}

type TL_channelParticipant

type TL_channelParticipant struct {
	User_id int32 // user_id:int
	Date    int32 // date:int
}

type TL_channelParticipantCreator

type TL_channelParticipantCreator struct {
	User_id int32 // user_id:int
}

type TL_channelParticipantEditor

type TL_channelParticipantEditor struct {
	User_id    int32 // user_id:int
	Inviter_id int32 // inviter_id:int
	Date       int32 // date:int
}

type TL_channelParticipantKicked

type TL_channelParticipantKicked struct {
	User_id   int32 // user_id:int
	Kicked_by int32 // kicked_by:int
	Date      int32 // date:int
}

type TL_channelParticipantModerator

type TL_channelParticipantModerator struct {
	User_id    int32 // user_id:int
	Inviter_id int32 // inviter_id:int
	Date       int32 // date:int
}

type TL_channelParticipantSelf

type TL_channelParticipantSelf struct {
	User_id    int32 // user_id:int
	Inviter_id int32 // inviter_id:int
	Date       int32 // date:int
}

type TL_channelParticipantsAdmins

type TL_channelParticipantsAdmins struct {
}

type TL_channelParticipantsBots

type TL_channelParticipantsBots struct {
}

type TL_channelParticipantsKicked

type TL_channelParticipantsKicked struct {
}

type TL_channelParticipantsRecent

type TL_channelParticipantsRecent struct {
}

type TL_channelRoleEditor

type TL_channelRoleEditor struct {
}

type TL_channelRoleEmpty

type TL_channelRoleEmpty struct {
}

type TL_channelRoleModerator

type TL_channelRoleModerator struct {
}

type TL_channels_channelParticipant

type TL_channels_channelParticipant struct {
	Participant TL   // participant:ChannelParticipant
	Users       []TL // users:Vector<User>
}

type TL_channels_channelParticipants

type TL_channels_channelParticipants struct {
	Count        int32 // count:int
	Participants []TL  // participants:Vector<ChannelParticipant>
	Users        []TL  // users:Vector<User>
}

type TL_channels_checkUsername

type TL_channels_checkUsername struct {
	Channel  TL     // channel:InputChannel
	Username string // username:string
}

type TL_channels_createChannel

type TL_channels_createChannel struct {
	Flags     int32
	Broadcast bool   // broadcast:flags.0?true
	Megagroup bool   // megagroup:flags.1?true
	Title     string // title:string
	About     string // about:string
}

type TL_channels_deleteChannel

type TL_channels_deleteChannel struct {
	Channel TL // channel:InputChannel
}

type TL_channels_deleteMessages

type TL_channels_deleteMessages struct {
	Channel TL      // channel:InputChannel
	Id      []int32 // Id:Vector<int>
}

type TL_channels_deleteUserHistory

type TL_channels_deleteUserHistory struct {
	Channel TL // channel:InputChannel
	User_id TL // user_id:InputUser
}

type TL_channels_editAbout

type TL_channels_editAbout struct {
	Channel TL     // channel:InputChannel
	About   string // about:string
}

type TL_channels_editAdmin

type TL_channels_editAdmin struct {
	Channel TL // channel:InputChannel
	User_id TL // user_id:InputUser
	Role    TL // role:ChannelParticipantRole
}

type TL_channels_editPhoto

type TL_channels_editPhoto struct {
	Channel TL // channel:InputChannel
	Photo   TL // photo:InputChatPhoto
}

type TL_channels_editTitle

type TL_channels_editTitle struct {
	Channel TL     // channel:InputChannel
	Title   string // title:string
}

type TL_channels_exportInvite

type TL_channels_exportInvite struct {
	Channel TL // channel:InputChannel
}
type TL_channels_exportMessageLink struct {
	Channel TL    // channel:InputChannel
	Id      int32 // Id:int
}

type TL_channels_getAdminedPublicChannels

type TL_channels_getAdminedPublicChannels struct {
}

type TL_channels_getChannels

type TL_channels_getChannels struct {
	Id []TL // Id:Vector<InputChannel>
}

type TL_channels_getFullChannel

type TL_channels_getFullChannel struct {
	Channel TL // channel:InputChannel
}

type TL_channels_getMessages

type TL_channels_getMessages struct {
	Channel TL      // channel:InputChannel
	Id      []int32 // Id:Vector<int>
}

type TL_channels_getParticipant

type TL_channels_getParticipant struct {
	Channel TL // channel:InputChannel
	User_id TL // user_id:InputUser
}

type TL_channels_getParticipants

type TL_channels_getParticipants struct {
	Channel TL    // channel:InputChannel
	Filter  TL    // filter:ChannelParticipantsFilter
	Offset  int32 // offset:int
	Limit   int32 // limit:int
}

type TL_channels_inviteToChannel

type TL_channels_inviteToChannel struct {
	Channel TL   // channel:InputChannel
	Users   []TL // users:Vector<InputUser>
}

type TL_channels_joinChannel

type TL_channels_joinChannel struct {
	Channel TL // channel:InputChannel
}

type TL_channels_kickFromChannel

type TL_channels_kickFromChannel struct {
	Channel TL // channel:InputChannel
	User_id TL // user_id:InputUser
	Kicked  TL // kicked:Bool
}

type TL_channels_leaveChannel

type TL_channels_leaveChannel struct {
	Channel TL // channel:InputChannel
}

type TL_channels_readHistory

type TL_channels_readHistory struct {
	Channel TL    // channel:InputChannel
	Max_id  int32 // max_id:int
}

type TL_channels_reportSpam

type TL_channels_reportSpam struct {
	Channel TL      // channel:InputChannel
	User_id TL      // user_id:InputUser
	Id      []int32 // Id:Vector<int>
}

type TL_channels_toggleInvites

type TL_channels_toggleInvites struct {
	Channel TL // channel:InputChannel
	Enabled TL // enabled:Bool
}

type TL_channels_toggleSignatures

type TL_channels_toggleSignatures struct {
	Channel TL // channel:InputChannel
	Enabled TL // enabled:Bool
}

type TL_channels_updatePinnedMessage

type TL_channels_updatePinnedMessage struct {
	Flags   int32
	Silent  bool  // silent:flags.0?true
	Channel TL    // channel:InputChannel
	Id      int32 // Id:int
}

type TL_channels_updateUsername

type TL_channels_updateUsername struct {
	Channel  TL     // channel:InputChannel
	Username string // username:string
}

type TL_chat

type TL_chat struct {
	Flags              int32
	Creator            bool   // creator:flags.0?true
	Kicked             bool   // kicked:flags.1?true
	Left               bool   // left:flags.2?true
	Admins_enabled     bool   // admins_enabled:flags.3?true
	Admin              bool   // admin:flags.4?true
	Deactivated        bool   // deactivated:flags.5?true
	Id                 int32  // Id:int
	Title              string // title:string
	Photo              TL     // photo:ChatPhoto
	Participants_count int32  // participants_count:int
	Date               int32  // date:int
	Version            int32  // Version:int
	Migrated_to        TL     // migrated_to:flags.6?InputChannel
}

type TL_chatEmpty

type TL_chatEmpty struct {
	Id int32 // Id:int
}

type TL_chatForbidden

type TL_chatForbidden struct {
	Id    int32  // Id:int
	Title string // title:string
}

type TL_chatFull

type TL_chatFull struct {
	Id              int32 // Id:int
	Participants    TL    // participants:ChatParticipants
	Chat_photo      TL    // chat_photo:Photo
	Notify_settings TL    // notify_settings:PeerNotifySettings
	Exported_invite TL    // exported_invite:ExportedChatInvite
	Bot_info        []TL  // bot_info:Vector<BotInfo>
}

type TL_chatInvite

type TL_chatInvite struct {
	Flags              int32
	Channel            bool   // channel:flags.0?true
	Broadcast          bool   // broadcast:flags.1?true
	Public             bool   // public:flags.2?true
	Megagroup          bool   // megagroup:flags.3?true
	Title              string // title:string
	Photo              TL     // photo:ChatPhoto
	Participants_count int32  // participants_count:int
	Participants       []TL   // participants:flags.4?Vector<User>
}

type TL_chatInviteAlready

type TL_chatInviteAlready struct {
	Chat TL // chat:Chat
}

type TL_chatInviteEmpty

type TL_chatInviteEmpty struct {
}

type TL_chatInviteExported

type TL_chatInviteExported struct {
	Link string // link:string
}

type TL_chatParticipant

type TL_chatParticipant struct {
	User_id    int32 // user_id:int
	Inviter_id int32 // inviter_id:int
	Date       int32 // date:int
}

type TL_chatParticipantAdmin

type TL_chatParticipantAdmin struct {
	User_id    int32 // user_id:int
	Inviter_id int32 // inviter_id:int
	Date       int32 // date:int
}

type TL_chatParticipantCreator

type TL_chatParticipantCreator struct {
	User_id int32 // user_id:int
}

type TL_chatParticipants

type TL_chatParticipants struct {
	Chat_id      int32 // chat_id:int
	Participants []TL  // participants:Vector<ChatParticipant>
	Version      int32 // Version:int
}

type TL_chatParticipantsForbidden

type TL_chatParticipantsForbidden struct {
	Flags            int32
	Chat_id          int32 // chat_id:int
	Self_participant TL    // self_participant:flags.0?ChatParticipant
}

type TL_chatPhoto

type TL_chatPhoto struct {
	Photo_small TL // photo_small:FileLocation
	Photo_big   TL // photo_big:FileLocation
}

type TL_chatPhotoEmpty

type TL_chatPhotoEmpty struct {
}

type TL_client_DH_inner_data

type TL_client_DH_inner_data struct {
	Nonce        []byte
	Server_nonce []byte
	Retry        int64
	G_b          *big.Int
}

type TL_config

type TL_config struct {
	Flags                    int32
	Phonecalls_enabled       bool   // phonecalls_enabled:flags.1?true
	Date                     int32  // date:int
	Expires                  int32  // expires:int
	Test_mode                TL     // test_mode:Bool
	This_dc                  int32  // this_dc:int
	Dc_options               []TL   // dc_options:Vector<DcOption>
	Chat_size_max            int32  // chat_size_max:int
	Megagroup_size_max       int32  // megagroup_size_max:int
	Forwarded_count_max      int32  // forwarded_count_max:int
	Online_update_period_ms  int32  // online_update_period_ms:int
	Offline_blur_timeout_ms  int32  // offline_blur_timeout_ms:int
	Offline_idle_timeout_ms  int32  // offline_idle_timeout_ms:int
	Online_cloud_timeout_ms  int32  // online_cloud_timeout_ms:int
	Notify_cloud_delay_ms    int32  // notify_cloud_delay_ms:int
	Notify_default_delay_ms  int32  // notify_default_delay_ms:int
	Chat_big_size            int32  // chat_big_size:int
	Push_chat_period_ms      int32  // push_chat_period_ms:int
	Push_chat_limit          int32  // push_chat_limit:int
	Saved_gifs_limit         int32  // saved_gifs_limit:int
	Edit_time_limit          int32  // edit_time_limit:int
	Rating_e_decay           int32  // rating_e_decay:int
	Stickers_recent_limit    int32  // stickers_recent_limit:int
	Tmp_sessions             int32  // tmp_sessions:flags.0?int
	Pinned_dialogs_count_max int32  // pinned_dialogs_count_max:int
	Call_receive_timeout_ms  int32  // call_receive_timeout_ms:int
	Call_ring_timeout_ms     int32  // call_ring_timeout_ms:int
	Call_connect_timeout_ms  int32  // call_connect_timeout_ms:int
	Call_packet_timeout_ms   int32  // call_packet_timeout_ms:int
	Me_url_prefix            string // me_url_prefix:string
	Disabled_features        []TL   // disabled_features:Vector<DisabledFeature>
}

type TL_contact

type TL_contact struct {
	User_id int32 // user_id:int
	Mutual  TL    // mutual:Bool
}

type TL_contactBlocked

type TL_contactBlocked struct {
	User_id int32 // user_id:int
	Date    int32 // date:int
}

type TL_contactLinkContact

type TL_contactLinkContact struct {
}

type TL_contactLinkHasPhone

type TL_contactLinkHasPhone struct {
}

type TL_contactLinkNone

type TL_contactLinkNone struct {
}

type TL_contactLinkUnknown

type TL_contactLinkUnknown struct {
}

type TL_contactStatus

type TL_contactStatus struct {
	User_id int32 // user_id:int
	Status  TL    // status:UserStatus
}

type TL_contacts_block

type TL_contacts_block struct {
	Id TL // Id:InputUser
}

type TL_contacts_blocked

type TL_contacts_blocked struct {
	Blocked []TL // blocked:Vector<ContactBlocked>
	Users   []TL // users:Vector<User>
}

type TL_contacts_blockedSlice

type TL_contacts_blockedSlice struct {
	Count   int32 // count:int
	Blocked []TL  // blocked:Vector<ContactBlocked>
	Users   []TL  // users:Vector<User>
}

type TL_contacts_contacts

type TL_contacts_contacts struct {
	Contacts []TL // contacts:Vector<Contact>
	Users    []TL // users:Vector<User>
}

type TL_contacts_contactsNotModified

type TL_contacts_contactsNotModified struct {
}

type TL_contacts_deleteContact

type TL_contacts_deleteContact struct {
	Id TL // Id:InputUser
}

type TL_contacts_deleteContacts

type TL_contacts_deleteContacts struct {
	Id []TL // Id:Vector<InputUser>
}

type TL_contacts_exportCard

type TL_contacts_exportCard struct {
}

type TL_contacts_found

type TL_contacts_found struct {
	Results []TL // results:Vector<Peer>
	Chats   []TL // chats:Vector<Chat>
	Users   []TL // users:Vector<User>
}

type TL_contacts_getBlocked

type TL_contacts_getBlocked struct {
	Offset int32 // offset:int
	Limit  int32 // limit:int
}

type TL_contacts_getContacts

type TL_contacts_getContacts struct {
	Hash string // Hash:string
}

type TL_contacts_getStatuses

type TL_contacts_getStatuses struct {
}

type TL_contacts_getTopPeers

type TL_contacts_getTopPeers struct {
	Flags          int32
	Correspondents bool  // correspondents:flags.0?true
	Bots_pm        bool  // bots_pm:flags.1?true
	Bots_inline    bool  // bots_inline:flags.2?true
	Groups         bool  // groups:flags.10?true
	Channels       bool  // channels:flags.15?true
	Offset         int32 // offset:int
	Limit          int32 // limit:int
	Hash           int32 // Hash:int
}

type TL_contacts_importCard

type TL_contacts_importCard struct {
	Export_card []int32 // export_card:Vector<int>
}

type TL_contacts_importContacts

type TL_contacts_importContacts struct {
	Contacts []TL // contacts:Vector<InputContact>
	Replace  TL   // replace:Bool
}

type TL_contacts_importedContacts

type TL_contacts_importedContacts struct {
	Imported       []TL    // imported:Vector<ImportedContact>
	Retry_contacts []int64 // retry_contacts:Vector<long>
	Users          []TL    // users:Vector<User>
}
type TL_contacts_link struct {
	My_link      TL // my_link:ContactLink
	Foreign_link TL // foreign_link:ContactLink
	User         TL // user:User
}

type TL_contacts_resetTopPeerRating

type TL_contacts_resetTopPeerRating struct {
	Category TL // category:TopPeerCategory
	Peer     TL // peer:InputPeer
}

type TL_contacts_resolveUsername

type TL_contacts_resolveUsername struct {
	Username string // username:string
}

type TL_contacts_resolvedPeer

type TL_contacts_resolvedPeer struct {
	Peer  TL   // peer:Peer
	Chats []TL // chats:Vector<Chat>
	Users []TL // users:Vector<User>
}
type TL_contacts_search struct {
	Q     string // q:string
	Limit int32  // limit:int
}

type TL_contacts_topPeers

type TL_contacts_topPeers struct {
	Categories []TL // categories:Vector<TopPeerCategoryPeers>
	Chats      []TL // chats:Vector<Chat>
	Users      []TL // users:Vector<User>
}

type TL_contacts_topPeersNotModified

type TL_contacts_topPeersNotModified struct {
}

type TL_contacts_unblock

type TL_contacts_unblock struct {
	Id TL // Id:InputUser
}

type TL_dataJSON

type TL_dataJSON struct {
	Data string // data:string
}

type TL_dcOption

type TL_dcOption struct {
	Flags      int32
	Ipv6       bool   // ipv6:flags.0?true
	Media_only bool   // media_only:flags.1?true
	Tcpo_only  bool   // tcpo_only:flags.2?true
	Id         int32  // Id:int
	Ip_address string // ip_address:string
	Port       int32  // port:int
}

type TL_dh_gen_ok

type TL_dh_gen_ok struct {
	Nonce           []byte
	Server_nonce    []byte
	New_nonce_hash1 []byte
}

type TL_dialog

type TL_dialog struct {
	Flags              int32
	Pinned             bool  // pinned:flags.2?true
	Peer               TL    // peer:Peer
	Top_message        int32 // top_message:int
	Read_inbox_max_id  int32 // read_inbox_max_id:int
	Read_outbox_max_id int32 // read_outbox_max_id:int
	Unread_count       int32 // unread_count:int
	Notify_settings    TL    // notify_settings:PeerNotifySettings
	Pts                int32 // pts:flags.0?int
	Draft              TL    // draft:flags.1?DraftMessage
}

type TL_disabledFeature

type TL_disabledFeature struct {
	Feature     string // feature:string
	Description string // description:string
}

type TL_document

type TL_document struct {
	Id          int64  `json:"id"`          // Id:long
	Access_hash int64  `json:"access_hash"` // access_hash:long
	Date        int32  `json:"date"`        // date:int
	Mime_type   string `json:"mime_type"`   // mime_type:string
	Size        int32  `json:"size"`        // size:int
	Thumb       TL     `json:"thumb"`       // thumb:PhotoSize
	Dc_id       int32  `json:"dc_id"`       // dc_id:int
	Version     int32  `json:"version"`     // Version:int
	Attributes  []TL   `json:"attributes"`  // attributes:Vector<DocumentAttribute>
}

type TL_documentAttributeAnimated

type TL_documentAttributeAnimated struct {
}

type TL_documentAttributeAudio

type TL_documentAttributeAudio struct {
	Flags     int32
	Voice     bool   // voice:flags.10?true
	Duration  int32  // duration:int
	Title     string // title:flags.0?string
	Performer string // performer:flags.1?string
	Waveform  []byte // waveform:flags.2?bytes
}

type TL_documentAttributeFilename

type TL_documentAttributeFilename struct {
	File_name string `json:"file_name"` // file_name:string
}

type TL_documentAttributeHasStickers

type TL_documentAttributeHasStickers struct {
}

type TL_documentAttributeImageSize

type TL_documentAttributeImageSize struct {
	W int32 // w:int
	H int32 // h:int
}

type TL_documentAttributeSticker

type TL_documentAttributeSticker struct {
	Flags       int32
	Mask        bool   // mask:flags.1?true
	Alt         string // alt:string
	Stickerset  TL     // stickerset:InputStickerSet
	Mask_coords TL     // mask_coords:flags.0?MaskCoords
}

type TL_documentAttributeVideo

type TL_documentAttributeVideo struct {
	Duration int32 `json:"duration"` // duration:int
	W        int32 `json:"w"`        // w:int
	H        int32 `json:"h"`        // h:int
}

type TL_documentEmpty

type TL_documentEmpty struct {
	Id int64 // Id:long
}

type TL_draftMessage

type TL_draftMessage struct {
	Flags           int32
	No_webpage      bool   // no_webpage:flags.1?true
	Reply_to_msg_id int32  // reply_to_msg_id:flags.0?int
	Message         string // message:string
	Entities        []TL   // entities:flags.3?Vector<MessageEntity>
	Date            int32  // date:int
}

type TL_draftMessageEmpty

type TL_draftMessageEmpty struct {
}

type TL_encryptedChat

type TL_encryptedChat struct {
	Id              int32  // Id:int
	Access_hash     int64  // access_hash:long
	Date            int32  // date:int
	Admin_id        int32  // admin_id:int
	Participant_id  int32  // participant_id:int
	G_a_or_b        []byte // g_a_or_b:bytes
	Key_fingerprint int64  // key_fingerprint:long
}

type TL_encryptedChatDiscarded

type TL_encryptedChatDiscarded struct {
	Id int32 // Id:int
}

type TL_encryptedChatEmpty

type TL_encryptedChatEmpty struct {
	Id int32 // Id:int
}

type TL_encryptedChatRequested

type TL_encryptedChatRequested struct {
	Id             int32  // Id:int
	Access_hash    int64  // access_hash:long
	Date           int32  // date:int
	Admin_id       int32  // admin_id:int
	Participant_id int32  // participant_id:int
	G_a            []byte // g_a:bytes
}

type TL_encryptedChatWaiting

type TL_encryptedChatWaiting struct {
	Id             int32 // Id:int
	Access_hash    int64 // access_hash:long
	Date           int32 // date:int
	Admin_id       int32 // admin_id:int
	Participant_id int32 // participant_id:int
}

type TL_encryptedFile

type TL_encryptedFile struct {
	Id              int64 // Id:long
	Access_hash     int64 // access_hash:long
	Size            int32 // size:int
	Dc_id           int32 // dc_id:int
	Key_fingerprint int32 // key_fingerprint:int
}

type TL_encryptedFileEmpty

type TL_encryptedFileEmpty struct {
}

type TL_encryptedMessage

type TL_encryptedMessage struct {
	Random_id int64  // random_id:long
	Chat_id   int32  // chat_id:int
	Date      int32  // date:int
	Bytes     []byte // bytes:bytes
	File      TL     // file:EncryptedFile
}

type TL_encryptedMessageService

type TL_encryptedMessageService struct {
	Random_id int64  // random_id:long
	Chat_id   int32  // chat_id:int
	Date      int32  // date:int
	Bytes     []byte // bytes:bytes
}

type TL_error

type TL_error struct {
	Code int32  // code:int
	Text string // text:string
}
type TL_exportedMessageLink struct {
	Link string // link:string
}

type TL_fileLocation

type TL_fileLocation struct {
	Dc_id     int32 `json:"dc_id"`     // dc_id:int
	Volume_id int64 `json:"volume_id"` // volume_id:long
	Local_id  int32 `json:"local_id"`  // local_id:int
	Secret    int64 `json:"secret"`    // secret:long
}

type TL_fileLocationUnavailable

type TL_fileLocationUnavailable struct {
	Volume_id int64 // volume_id:long
	Local_id  int32 // local_id:int
	Secret    int64 // secret:long
}

type TL_foundGif

type TL_foundGif struct {
	Url          string // url:string
	Thumb_url    string // thumb_url:string
	Content_url  string // content_url:string
	Content_type string // content_type:string
	W            int32  // w:int
	H            int32  // h:int
}

type TL_foundGifCached

type TL_foundGifCached struct {
	Url      string // url:string
	Photo    TL     // photo:Photo
	Document TL     // document:Document
}

type TL_game

type TL_game struct {
	Flags       int32
	Id          int64  // Id:long
	Access_hash int64  // access_hash:long
	Short_name  string // short_name:string
	Title       string // title:string
	Description string // description:string
	Photo       TL     // photo:Photo
	Document    TL     // document:flags.0?Document
}

type TL_geoPoint

type TL_geoPoint struct {
	Long float64 // long:double
	Lat  float64 // lat:double
}

type TL_geoPointEmpty

type TL_geoPointEmpty struct {
}

type TL_help_appUpdate

type TL_help_appUpdate struct {
	Id       int32  // Id:int
	Critical TL     // critical:Bool
	Url      string // url:string
	Text     string // text:string
}

type TL_help_getAppChangelog

type TL_help_getAppChangelog struct {
	Prev_app_version string // prev_app_version:string
}

type TL_help_getAppUpdate

type TL_help_getAppUpdate struct {
}

type TL_help_getConfig

type TL_help_getConfig struct {
}

type TL_help_getInviteText

type TL_help_getInviteText struct {
}

type TL_help_getNearestDc

type TL_help_getNearestDc struct {
}

type TL_help_getSupport

type TL_help_getSupport struct {
}

type TL_help_getTermsOfService

type TL_help_getTermsOfService struct {
}

type TL_help_inviteText

type TL_help_inviteText struct {
	Message string // message:string
}

type TL_help_noAppUpdate

type TL_help_noAppUpdate struct {
}

type TL_help_saveAppLog

type TL_help_saveAppLog struct {
	Events []TL // events:Vector<InputAppEvent>
}

type TL_help_setBotUpdatesStatus

type TL_help_setBotUpdatesStatus struct {
	Pending_updates_count int32  // pending_updates_count:int
	Message               string // message:string
}

type TL_help_support

type TL_help_support struct {
	Phone_number string // phone_number:string
	User         TL     // user:User
}

type TL_help_termsOfService

type TL_help_termsOfService struct {
	Text string // text:string
}

type TL_highScore

type TL_highScore struct {
	Pos     int32 // pos:int
	User_id int32 // user_id:int
	Score   int32 // score:int
}

type TL_http_wait

type TL_http_wait struct {
	Max_delay  int32
	Wait_after int32
	Max_wait   int32
}

type TL_importedContact

type TL_importedContact struct {
	User_id   int32 // user_id:int
	Client_id int64 // client_id:long
}

type TL_initConnection

type TL_initConnection struct {
	Api_id         int32  // api_id:int
	Device_model   string // device_model:string
	System_version string // system_version:string
	App_version    string // app_version:string
	Lang_code      string // lang_code:string
	Query          TL     // query:!X
}

type TL_inlineBotSwitchPM

type TL_inlineBotSwitchPM struct {
	Text        string // text:string
	Start_param string // start_param:string
}

type TL_inputAppEvent

type TL_inputAppEvent struct {
	Time      float64 // time:double
	Code_type string  // type:string
	Peer      int64   // peer:long
	Data      string  // data:string
}

type TL_inputBotInlineMessageGame

type TL_inputBotInlineMessageGame struct {
	Flags        int32
	Reply_markup TL // reply_markup:flags.2?ReplyMarkup
}

type TL_inputBotInlineMessageID

type TL_inputBotInlineMessageID struct {
	Dc_id       int32 // dc_id:int
	Id          int64 // Id:long
	Access_hash int64 // access_hash:long
}

type TL_inputBotInlineMessageMediaAuto

type TL_inputBotInlineMessageMediaAuto struct {
	Flags        int32
	Caption      string // caption:string
	Reply_markup TL     // reply_markup:flags.2?ReplyMarkup
}

type TL_inputBotInlineMessageMediaContact

type TL_inputBotInlineMessageMediaContact struct {
	Flags        int32
	Phone_number string // phone_number:string
	First_name   string // first_name:string
	Last_name    string // last_name:string
	Reply_markup TL     // reply_markup:flags.2?ReplyMarkup
}

type TL_inputBotInlineMessageMediaGeo

type TL_inputBotInlineMessageMediaGeo struct {
	Flags        int32
	Geo_point    TL // geo_point:InputGeoPoint
	Reply_markup TL // reply_markup:flags.2?ReplyMarkup
}

type TL_inputBotInlineMessageMediaVenue

type TL_inputBotInlineMessageMediaVenue struct {
	Flags        int32
	Geo_point    TL     // geo_point:InputGeoPoint
	Title        string // title:string
	Address      string // address:string
	Provider     string // provider:string
	Venue_id     string // venue_id:string
	Reply_markup TL     // reply_markup:flags.2?ReplyMarkup
}

type TL_inputBotInlineMessageText

type TL_inputBotInlineMessageText struct {
	Flags        int32
	No_webpage   bool   // no_webpage:flags.0?true
	Message      string // message:string
	Entities     []TL   // entities:flags.1?Vector<MessageEntity>
	Reply_markup TL     // reply_markup:flags.2?ReplyMarkup
}

type TL_inputBotInlineResult

type TL_inputBotInlineResult struct {
	Flags        int32
	Id           string // Id:string
	Code_type    string // type:string
	Title        string // title:flags.1?string
	Description  string // description:flags.2?string
	Url          string // url:flags.3?string
	Thumb_url    string // thumb_url:flags.4?string
	Content_url  string // content_url:flags.5?string
	Content_type string // content_type:flags.5?string
	W            int32  // w:flags.6?int
	H            int32  // h:flags.6?int
	Duration     int32  // duration:flags.7?int
	Send_message TL     // send_message:InputBotInlineMessage
}

type TL_inputBotInlineResultDocument

type TL_inputBotInlineResultDocument struct {
	Flags        int32
	Id           string // Id:string
	Code_type    string // type:string
	Title        string // title:flags.1?string
	Description  string // description:flags.2?string
	Document     TL     // document:InputDocument
	Send_message TL     // send_message:InputBotInlineMessage
}

type TL_inputBotInlineResultGame

type TL_inputBotInlineResultGame struct {
	Id           string // Id:string
	Short_name   string // short_name:string
	Send_message TL     // send_message:InputBotInlineMessage
}

type TL_inputBotInlineResultPhoto

type TL_inputBotInlineResultPhoto struct {
	Id           string // Id:string
	Code_type    string // type:string
	Photo        TL     // photo:InputPhoto
	Send_message TL     // send_message:InputBotInlineMessage
}

type TL_inputChannel

type TL_inputChannel struct {
	Channel_id  int32 // channel_id:int
	Access_hash int64 // access_hash:long
}

type TL_inputChannelEmpty

type TL_inputChannelEmpty struct {
}

type TL_inputChatPhoto

type TL_inputChatPhoto struct {
	Id TL // Id:InputPhoto
}

type TL_inputChatPhotoEmpty

type TL_inputChatPhotoEmpty struct {
}

type TL_inputChatUploadedPhoto

type TL_inputChatUploadedPhoto struct {
	File TL // file:InputFile
}

type TL_inputDocument

type TL_inputDocument struct {
	Id          int64 // Id:long
	Access_hash int64 // access_hash:long
}

type TL_inputDocumentEmpty

type TL_inputDocumentEmpty struct {
}

type TL_inputDocumentFileLocation

type TL_inputDocumentFileLocation struct {
	Id          int64 // Id:long
	Access_hash int64 // access_hash:long
	Version     int32 // Version:int
}

type TL_inputEncryptedChat

type TL_inputEncryptedChat struct {
	Chat_id     int32 // chat_id:int
	Access_hash int64 // access_hash:long
}

type TL_inputEncryptedFile

type TL_inputEncryptedFile struct {
	Id          int64 // Id:long
	Access_hash int64 // access_hash:long
}

type TL_inputEncryptedFileBigUploaded

type TL_inputEncryptedFileBigUploaded struct {
	Id              int64 // Id:long
	Parts           int32 // parts:int
	Key_fingerprint int32 // key_fingerprint:int
}

type TL_inputEncryptedFileEmpty

type TL_inputEncryptedFileEmpty struct {
}

type TL_inputEncryptedFileLocation

type TL_inputEncryptedFileLocation struct {
	Id          int64 // Id:long
	Access_hash int64 // access_hash:long
}

type TL_inputEncryptedFileUploaded

type TL_inputEncryptedFileUploaded struct {
	Id              int64  // Id:long
	Parts           int32  // parts:int
	Md5_checksum    string // md5_checksum:string
	Key_fingerprint int32  // key_fingerprint:int
}

type TL_inputFile

type TL_inputFile struct {
	Id           int64  // Id:long
	Parts        int32  // parts:int
	Name         string // name:string
	Md5_checksum string // md5_checksum:string
}

type TL_inputFileBig

type TL_inputFileBig struct {
	Id    int64  // Id:long
	Parts int32  // parts:int
	Name  string // name:string
}

type TL_inputFileLocation

type TL_inputFileLocation struct {
	Volume_id int64 // volume_id:long
	Local_id  int32 // local_id:int
	Secret    int64 // secret:long
}

type TL_inputGameID

type TL_inputGameID struct {
	Id          int64 // Id:long
	Access_hash int64 // access_hash:long
}

type TL_inputGameShortName

type TL_inputGameShortName struct {
	Bot_id     TL     // bot_id:InputUser
	Short_name string // short_name:string
}

type TL_inputGeoPoint

type TL_inputGeoPoint struct {
	Lat  float64 // lat:double
	Long float64 // long:double
}

type TL_inputGeoPointEmpty

type TL_inputGeoPointEmpty struct {
}

type TL_inputMediaContact

type TL_inputMediaContact struct {
	Phone_number string // phone_number:string
	First_name   string // first_name:string
	Last_name    string // last_name:string
}

type TL_inputMediaDocument

type TL_inputMediaDocument struct {
	Id      TL     // Id:InputDocument
	Caption string // caption:string
}

type TL_inputMediaDocumentExternal

type TL_inputMediaDocumentExternal struct {
	Url     string // url:string
	Caption string // caption:string
}

type TL_inputMediaEmpty

type TL_inputMediaEmpty struct {
}

type TL_inputMediaGame

type TL_inputMediaGame struct {
	Id TL // Id:InputGame
}

type TL_inputMediaGeoPoint

type TL_inputMediaGeoPoint struct {
	Geo_point TL // geo_point:InputGeoPoint
}

type TL_inputMediaGifExternal

type TL_inputMediaGifExternal struct {
	Url string // url:string
	Q   string // q:string
}

type TL_inputMediaInvoice

type TL_inputMediaInvoice struct {
	Flags       int32
	Title       string // title:string
	Description string // description:string
	Photo       TL     // photo:flags.0?InputWebDocument
	Invoice     TL     // invoice:Invoice
	Payload     []byte // payload:bytes
	Provider    string // provider:string
	Start_param string // start_param:string
}

type TL_inputMediaPhoto

type TL_inputMediaPhoto struct {
	Id      TL     // Id:InputPhoto
	Caption string // caption:string
}

type TL_inputMediaPhotoExternal

type TL_inputMediaPhotoExternal struct {
	Url     string // url:string
	Caption string // caption:string
}

type TL_inputMediaUploadedDocument

type TL_inputMediaUploadedDocument struct {
	Flags      int32
	File       TL     // file:InputFile
	Mime_type  string // mime_type:string
	Attributes []TL   // attributes:Vector<DocumentAttribute>
	Caption    string // caption:string
	Stickers   []TL   // stickers:flags.0?Vector<InputDocument>
}

type TL_inputMediaUploadedPhoto

type TL_inputMediaUploadedPhoto struct {
	Flags    int32
	File     TL     // file:InputFile
	Caption  string // caption:string
	Stickers []TL   // stickers:flags.0?Vector<InputDocument>
}

type TL_inputMediaUploadedThumbDocument

type TL_inputMediaUploadedThumbDocument struct {
	Flags      int32
	File       TL     // file:InputFile
	Thumb      TL     // thumb:InputFile
	Mime_type  string // mime_type:string
	Attributes []TL   // attributes:Vector<DocumentAttribute>
	Caption    string // caption:string
	Stickers   []TL   // stickers:flags.0?Vector<InputDocument>
}

type TL_inputMediaVenue

type TL_inputMediaVenue struct {
	Geo_point TL     // geo_point:InputGeoPoint
	Title     string // title:string
	Address   string // address:string
	Provider  string // provider:string
	Venue_id  string // venue_id:string
}

type TL_inputMessageEntityMentionName

type TL_inputMessageEntityMentionName struct {
	Offset  int32 // offset:int
	Length  int32 // length:int
	User_id TL    // user_id:InputUser
}

type TL_inputMessagesFilterChatPhotos

type TL_inputMessagesFilterChatPhotos struct {
}

type TL_inputMessagesFilterDocument

type TL_inputMessagesFilterDocument struct {
}

type TL_inputMessagesFilterEmpty

type TL_inputMessagesFilterEmpty struct {
}

type TL_inputMessagesFilterGif

type TL_inputMessagesFilterGif struct {
}

type TL_inputMessagesFilterMusic

type TL_inputMessagesFilterMusic struct {
}

type TL_inputMessagesFilterPhoneCalls

type TL_inputMessagesFilterPhoneCalls struct {
	Flags  int32
	Missed bool // missed:flags.0?true
}

type TL_inputMessagesFilterPhotoVideo

type TL_inputMessagesFilterPhotoVideo struct {
}

type TL_inputMessagesFilterPhotoVideoDocuments

type TL_inputMessagesFilterPhotoVideoDocuments struct {
}

type TL_inputMessagesFilterPhotos

type TL_inputMessagesFilterPhotos struct {
}

type TL_inputMessagesFilterUrl

type TL_inputMessagesFilterUrl struct {
}

type TL_inputMessagesFilterVideo

type TL_inputMessagesFilterVideo struct {
}

type TL_inputMessagesFilterVoice

type TL_inputMessagesFilterVoice struct {
}

type TL_inputNotifyAll

type TL_inputNotifyAll struct {
}

type TL_inputNotifyChats

type TL_inputNotifyChats struct {
}

type TL_inputNotifyPeer

type TL_inputNotifyPeer struct {
	Peer TL // peer:InputPeer
}

type TL_inputNotifyUsers

type TL_inputNotifyUsers struct {
}

type TL_inputPaymentCredentials

type TL_inputPaymentCredentials struct {
	Flags int32
	Save  bool // save:flags.0?true
	Data  TL   // data:DataJSON
}

type TL_inputPaymentCredentialsSaved

type TL_inputPaymentCredentialsSaved struct {
	Id           string // Id:string
	Tmp_password []byte // tmp_password:bytes
}

type TL_inputPeerChannel

type TL_inputPeerChannel struct {
	Channel_id  int32 // channel_id:int
	Access_hash int64 // access_hash:long
}

type TL_inputPeerChat

type TL_inputPeerChat struct {
	Chat_id int32 // chat_id:int
}

type TL_inputPeerEmpty

type TL_inputPeerEmpty struct {
}

type TL_inputPeerNotifyEventsAll

type TL_inputPeerNotifyEventsAll struct {
}

type TL_inputPeerNotifyEventsEmpty

type TL_inputPeerNotifyEventsEmpty struct {
}

type TL_inputPeerNotifySettings

type TL_inputPeerNotifySettings struct {
	Flags         int32
	Show_previews bool   // show_previews:flags.0?true
	Silent        bool   // silent:flags.1?true
	Mute_until    int32  // mute_until:int
	Sound         string // sound:string
}

type TL_inputPeerSelf

type TL_inputPeerSelf struct {
}

type TL_inputPeerUser

type TL_inputPeerUser struct {
	User_id     int32 // user_id:int
	Access_hash int64 // access_hash:long
}

type TL_inputPhoneCall

type TL_inputPhoneCall struct {
	Id          int64 // Id:long
	Access_hash int64 // access_hash:long
}

type TL_inputPhoneContact

type TL_inputPhoneContact struct {
	Client_id  int64  // client_id:long
	Phone      string // phone:string
	First_name string // first_name:string
	Last_name  string // last_name:string
}

type TL_inputPhoto

type TL_inputPhoto struct {
	Id          int64 // Id:long
	Access_hash int64 // access_hash:long
}

type TL_inputPhotoEmpty

type TL_inputPhotoEmpty struct {
}

type TL_inputPrivacyKeyChatInvite

type TL_inputPrivacyKeyChatInvite struct {
}

type TL_inputPrivacyKeyPhoneCall

type TL_inputPrivacyKeyPhoneCall struct {
}

type TL_inputPrivacyKeyStatusTimestamp

type TL_inputPrivacyKeyStatusTimestamp struct {
}

type TL_inputPrivacyValueAllowAll

type TL_inputPrivacyValueAllowAll struct {
}

type TL_inputPrivacyValueAllowContacts

type TL_inputPrivacyValueAllowContacts struct {
}

type TL_inputPrivacyValueAllowUsers

type TL_inputPrivacyValueAllowUsers struct {
	Users []TL // users:Vector<InputUser>
}

type TL_inputPrivacyValueDisallowAll

type TL_inputPrivacyValueDisallowAll struct {
}

type TL_inputPrivacyValueDisallowContacts

type TL_inputPrivacyValueDisallowContacts struct {
}

type TL_inputPrivacyValueDisallowUsers

type TL_inputPrivacyValueDisallowUsers struct {
	Users []TL // users:Vector<InputUser>
}

type TL_inputReportReasonOther

type TL_inputReportReasonOther struct {
	Text string // text:string
}

type TL_inputReportReasonPornography

type TL_inputReportReasonPornography struct {
}

type TL_inputReportReasonSpam

type TL_inputReportReasonSpam struct {
}

type TL_inputReportReasonViolence

type TL_inputReportReasonViolence struct {
}

type TL_inputStickerSetEmpty

type TL_inputStickerSetEmpty struct {
}

type TL_inputStickerSetID

type TL_inputStickerSetID struct {
	Id          int64 // Id:long
	Access_hash int64 // access_hash:long
}

type TL_inputStickerSetShortName

type TL_inputStickerSetShortName struct {
	Short_name string // short_name:string
}

type TL_inputStickeredMediaDocument

type TL_inputStickeredMediaDocument struct {
	Id TL // Id:InputDocument
}

type TL_inputStickeredMediaPhoto

type TL_inputStickeredMediaPhoto struct {
	Id TL // Id:InputPhoto
}

type TL_inputUser

type TL_inputUser struct {
	User_id     int32 // user_id:int
	Access_hash int64 // access_hash:long
}

type TL_inputUserEmpty

type TL_inputUserEmpty struct {
}

type TL_inputUserSelf

type TL_inputUserSelf struct {
}

type TL_inputWebDocument

type TL_inputWebDocument struct {
	Url        string // url:string
	Size       int32  // size:int
	Mime_type  string // mime_type:string
	Attributes []TL   // attributes:Vector<DocumentAttribute>
}

type TL_inputWebFileLocation

type TL_inputWebFileLocation struct {
	Url         string // url:string
	Access_hash int64  // access_hash:long
}

type TL_invoice

type TL_invoice struct {
	Flags                      int32
	Test                       bool   // test:flags.0?true
	Name_requested             bool   // name_requested:flags.1?true
	Phone_requested            bool   // phone_requested:flags.2?true
	Email_requested            bool   // email_requested:flags.3?true
	Shipping_address_requested bool   // shipping_address_requested:flags.4?true
	Flexible                   bool   // flexible:flags.5?true
	Currency                   string // currency:string
	Prices                     []TL   // prices:Vector<LabeledPrice>
}

type TL_invokeAfterMsg

type TL_invokeAfterMsg struct {
	Msg_id int64 // msg_id:long
	Query  TL    // query:!X
}

type TL_invokeAfterMsgs

type TL_invokeAfterMsgs struct {
	Msg_ids []int64 // msg_ids:Vector<long>
	Query   TL      // query:!X
}

type TL_invokeWithLayer

type TL_invokeWithLayer struct {
	Layer int32 // layer:int
	Query TL    // query:!X
}

type TL_invokeWithoutUpdates

type TL_invokeWithoutUpdates struct {
	Query TL // query:!X
}

type TL_keyboardButton

type TL_keyboardButton struct {
	Text string // text:string
}

type TL_keyboardButtonBuy

type TL_keyboardButtonBuy struct {
	Text string // text:string
}

type TL_keyboardButtonCallback

type TL_keyboardButtonCallback struct {
	Text string // text:string
	Data []byte // data:bytes
}

type TL_keyboardButtonGame

type TL_keyboardButtonGame struct {
	Text string // text:string
}

type TL_keyboardButtonRequestGeoLocation

type TL_keyboardButtonRequestGeoLocation struct {
	Text string // text:string
}

type TL_keyboardButtonRequestPhone

type TL_keyboardButtonRequestPhone struct {
	Text string // text:string
}

type TL_keyboardButtonRow

type TL_keyboardButtonRow struct {
	Buttons []TL // buttons:Vector<KeyboardButton>
}

type TL_keyboardButtonSwitchInline

type TL_keyboardButtonSwitchInline struct {
	Flags     int32
	Same_peer bool   // same_peer:flags.0?true
	Text      string // text:string
	Query     string // query:string
}

type TL_keyboardButtonUrl

type TL_keyboardButtonUrl struct {
	Text string // text:string
	Url  string // url:string
}

type TL_labeledPrice

type TL_labeledPrice struct {
	Label  string // label:string
	Amount int64  // amount:long
}

type TL_maskCoords

type TL_maskCoords struct {
	N    int32   // n:int
	X    float64 // x:double
	Y    float64 // y:double
	Zoom float64 // zoom:double
}

type TL_message

type TL_message struct {
	Flags           int32
	Out             bool   // out:flags.1?true
	Mentioned       bool   // mentioned:flags.4?true
	Media_unread    bool   // media_unread:flags.5?true
	Silent          bool   // silent:flags.13?true
	Post            bool   // post:flags.14?true
	Id              int32  // Id:int
	From_id         int32  // from_id:flags.8?int
	To_id           TL     // to_id:Peer
	Fwd_from        TL     // fwd_from:flags.2?MessageFwdHeader
	Via_bot_id      int32  // via_bot_id:flags.11?int
	Reply_to_msg_id int32  // reply_to_msg_id:flags.3?int
	Date            int32  // date:int
	Message         string // message:string
	Media           TL     // media:flags.9?MessageMedia
	Reply_markup    TL     // reply_markup:flags.6?ReplyMarkup
	Entities        []TL   // entities:flags.7?Vector<MessageEntity>
	Views           int32  // views:flags.10?int
	Edit_date       int32  // edit_date:flags.15?int
}

type TL_messageActionChannelCreate

type TL_messageActionChannelCreate struct {
	Title string // title:string
}

type TL_messageActionChannelMigrateFrom

type TL_messageActionChannelMigrateFrom struct {
	Title   string // title:string
	Chat_id int32  // chat_id:int
}

type TL_messageActionChatAddUser

type TL_messageActionChatAddUser struct {
	Users []int32 // users:Vector<int>
}

type TL_messageActionChatCreate

type TL_messageActionChatCreate struct {
	Title string  // title:string
	Users []int32 // users:Vector<int>
}

type TL_messageActionChatDeletePhoto

type TL_messageActionChatDeletePhoto struct {
}

type TL_messageActionChatDeleteUser

type TL_messageActionChatDeleteUser struct {
	User_id int32 // user_id:int
}

type TL_messageActionChatEditPhoto

type TL_messageActionChatEditPhoto struct {
	Photo TL // photo:Photo
}

type TL_messageActionChatEditTitle

type TL_messageActionChatEditTitle struct {
	Title string // title:string
}
type TL_messageActionChatJoinedByLink struct {
	Inviter_id int32 // inviter_id:int
}

type TL_messageActionChatMigrateTo

type TL_messageActionChatMigrateTo struct {
	Channel_id int32 // channel_id:int
}

type TL_messageActionEmpty

type TL_messageActionEmpty struct {
}

type TL_messageActionGameScore

type TL_messageActionGameScore struct {
	Game_id int64 // game_id:long
	Score   int32 // score:int
}

type TL_messageActionHistoryClear

type TL_messageActionHistoryClear struct {
}

type TL_messageActionPaymentSent

type TL_messageActionPaymentSent struct {
	Currency     string // currency:string
	Total_amount int64  // total_amount:long
}

type TL_messageActionPaymentSentMe

type TL_messageActionPaymentSentMe struct {
	Flags              int32
	Currency           string // currency:string
	Total_amount       int64  // total_amount:long
	Payload            []byte // payload:bytes
	Info               TL     // info:flags.0?PaymentRequestedInfo
	Shipping_option_id string // shipping_option_id:flags.1?string
	Charge             TL     // charge:PaymentCharge
}

type TL_messageActionPhoneCall

type TL_messageActionPhoneCall struct {
	Flags    int32
	Call_id  int64 // call_id:long
	Reason   TL    // reason:flags.0?PhoneCallDiscardReason
	Duration int32 // duration:flags.1?int
}

type TL_messageActionPinMessage

type TL_messageActionPinMessage struct {
}

type TL_messageEmpty

type TL_messageEmpty struct {
	Id int32 // Id:int
}

type TL_messageEntityBold

type TL_messageEntityBold struct {
	Offset int32 // offset:int
	Length int32 // length:int
}

type TL_messageEntityBotCommand

type TL_messageEntityBotCommand struct {
	Offset int32 // offset:int
	Length int32 // length:int
}

type TL_messageEntityCode

type TL_messageEntityCode struct {
	Offset int32 // offset:int
	Length int32 // length:int
}

type TL_messageEntityEmail

type TL_messageEntityEmail struct {
	Offset int32 // offset:int
	Length int32 // length:int
}

type TL_messageEntityHashtag

type TL_messageEntityHashtag struct {
	Offset int32 // offset:int
	Length int32 // length:int
}

type TL_messageEntityItalic

type TL_messageEntityItalic struct {
	Offset int32 // offset:int
	Length int32 // length:int
}

type TL_messageEntityMention

type TL_messageEntityMention struct {
	Offset int32 // offset:int
	Length int32 // length:int
}

type TL_messageEntityMentionName

type TL_messageEntityMentionName struct {
	Offset  int32 // offset:int
	Length  int32 // length:int
	User_id int32 // user_id:int
}

type TL_messageEntityPre

type TL_messageEntityPre struct {
	Offset   int32  // offset:int
	Length   int32  // length:int
	Language string // Language:string
}

type TL_messageEntityTextUrl

type TL_messageEntityTextUrl struct {
	Offset int32  // offset:int
	Length int32  // length:int
	Url    string // url:string
}

type TL_messageEntityUnknown

type TL_messageEntityUnknown struct {
	Offset int32 // offset:int
	Length int32 // length:int
}

type TL_messageEntityUrl

type TL_messageEntityUrl struct {
	Offset int32 // offset:int
	Length int32 // length:int
}

type TL_messageFwdHeader

type TL_messageFwdHeader struct {
	Flags        int32
	From_id      int32 // from_id:flags.0?int
	Date         int32 // date:int
	Channel_id   int32 // channel_id:flags.1?int
	Channel_post int32 // channel_post:flags.2?int
}

type TL_messageMediaContact

type TL_messageMediaContact struct {
	Phone_number string // phone_number:string
	First_name   string // first_name:string
	Last_name    string // last_name:string
	User_id      int32  // user_id:int
}

type TL_messageMediaDocument

type TL_messageMediaDocument struct {
	Document TL     `json:"document"` // document:Document
	Caption  string `json:"caption"`  // caption:string
}

type TL_messageMediaEmpty

type TL_messageMediaEmpty struct {
}

type TL_messageMediaGame

type TL_messageMediaGame struct {
	Game TL // game:Game
}

type TL_messageMediaGeo

type TL_messageMediaGeo struct {
	Geo TL // geo:GeoPoint
}

type TL_messageMediaInvoice

type TL_messageMediaInvoice struct {
	Flags                      int32
	Shipping_address_requested bool   // shipping_address_requested:flags.1?true
	Test                       bool   // test:flags.3?true
	Title                      string // title:string
	Description                string // description:string
	Photo                      TL     // photo:flags.0?WebDocument
	Receipt_msg_id             int32  // receipt_msg_id:flags.2?int
	Currency                   string // currency:string
	Total_amount               int64  // total_amount:long
	Start_param                string // start_param:string
}

type TL_messageMediaPhoto

type TL_messageMediaPhoto struct {
	Photo   TL     `json:"photo"`   // photo:Photo
	Caption string `json:"caption"` // caption:string
}

type TL_messageMediaUnsupported

type TL_messageMediaUnsupported struct {
}

type TL_messageMediaVenue

type TL_messageMediaVenue struct {
	Geo      TL     // geo:GeoPoint
	Title    string // title:string
	Address  string // address:string
	Provider string // provider:string
	Venue_id string // venue_id:string
}

type TL_messageMediaWebPage

type TL_messageMediaWebPage struct {
	Webpage TL // webpage:WebPage
}

type TL_messageRange

type TL_messageRange struct {
	Min_id int32 // min_id:int
	Max_id int32 // max_id:int
}

type TL_messageService

type TL_messageService struct {
	Flags           int32
	Out             bool  // out:flags.1?true
	Mentioned       bool  // mentioned:flags.4?true
	Media_unread    bool  // media_unread:flags.5?true
	Silent          bool  // silent:flags.13?true
	Post            bool  // post:flags.14?true
	Id              int32 // Id:int
	From_id         int32 // from_id:flags.8?int
	To_id           TL    // to_id:Peer
	Reply_to_msg_id int32 // reply_to_msg_id:flags.3?int
	Date            int32 // date:int
	Action          TL    // action:MessageAction
}

type TL_messages_acceptEncryption

type TL_messages_acceptEncryption struct {
	Peer            TL     // peer:InputEncryptedChat
	G_b             []byte // g_b:bytes
	Key_fingerprint int64  // key_fingerprint:long
}

type TL_messages_addChatUser

type TL_messages_addChatUser struct {
	Chat_id   int32 // chat_id:int
	User_id   TL    // user_id:InputUser
	Fwd_limit int32 // fwd_limit:int
}

type TL_messages_affectedHistory

type TL_messages_affectedHistory struct {
	Pts       int32 // pts:int
	Pts_count int32 // pts_count:int
	Offset    int32 // offset:int
}

type TL_messages_affectedMessages

type TL_messages_affectedMessages struct {
	Pts       int32 // pts:int
	Pts_count int32 // pts_count:int
}

type TL_messages_allStickers

type TL_messages_allStickers struct {
	Hash int32 // Hash:int
	Sets []TL  // sets:Vector<StickerSet>
}

type TL_messages_allStickersNotModified

type TL_messages_allStickersNotModified struct {
}

type TL_messages_archivedStickers

type TL_messages_archivedStickers struct {
	Count int32 // count:int
	Sets  []TL  // sets:Vector<StickerSetCovered>
}

type TL_messages_botCallbackAnswer

type TL_messages_botCallbackAnswer struct {
	Flags      int32
	Alert      bool   // alert:flags.1?true
	Has_url    bool   // has_url:flags.3?true
	Message    string // message:flags.0?string
	Url        string // url:flags.2?string
	Cache_time int32  // cache_time:int
}

type TL_messages_botResults

type TL_messages_botResults struct {
	Flags       int32
	Gallery     bool   // gallery:flags.0?true
	Query_id    int64  // query_id:long
	Next_offset string // next_offset:flags.1?string
	Switch_pm   TL     // switch_pm:flags.2?InlineBotSwitchPM
	Results     []TL   // results:Vector<BotInlineResult>
	Cache_time  int32  // cache_time:int
}

type TL_messages_channelMessages

type TL_messages_channelMessages struct {
	Flags    int32
	Pts      int32 // pts:int
	Count    int32 // count:int
	Messages []TL  // messages:Vector<Message>
	Chats    []TL  // chats:Vector<Chat>
	Users    []TL  // users:Vector<User>
}

type TL_messages_chatFull

type TL_messages_chatFull struct {
	Full_chat TL   // full_chat:ChatFull
	Chats     []TL // chats:Vector<Chat>
	Users     []TL // users:Vector<User>
}

type TL_messages_chats

type TL_messages_chats struct {
	Chats []TL // chats:Vector<Chat>
}

type TL_messages_chatsSlice

type TL_messages_chatsSlice struct {
	Count int32 // count:int
	Chats []TL  // chats:Vector<Chat>
}

type TL_messages_checkChatInvite

type TL_messages_checkChatInvite struct {
	Hash string // Hash:string
}

type TL_messages_clearRecentStickers

type TL_messages_clearRecentStickers struct {
	Flags    int32
	Attached bool // attached:flags.0?true
}

type TL_messages_createChat

type TL_messages_createChat struct {
	Users []TL   // users:Vector<InputUser>
	Title string // title:string
}

type TL_messages_deleteChatUser

type TL_messages_deleteChatUser struct {
	Chat_id int32 // chat_id:int
	User_id TL    // user_id:InputUser
}

type TL_messages_deleteHistory

type TL_messages_deleteHistory struct {
	Flags      int32
	Just_clear bool  // just_clear:flags.0?true
	Peer       TL    // peer:InputPeer
	Max_id     int32 // max_id:int
}

type TL_messages_deleteMessages

type TL_messages_deleteMessages struct {
	Flags  int32
	Revoke bool    // revoke:flags.0?true
	Id     []int32 // Id:Vector<int>
}

type TL_messages_dhConfig

type TL_messages_dhConfig struct {
	G       int32  // g:int
	P       []byte // p:bytes
	Version int32  // Version:int
	Random  []byte // random:bytes
}

type TL_messages_dhConfigNotModified

type TL_messages_dhConfigNotModified struct {
	Random []byte // random:bytes
}

type TL_messages_dialogs

type TL_messages_dialogs struct {
	Dialogs  []TL // dialogs:Vector<Dialog>
	Messages []TL // messages:Vector<Message>
	Chats    []TL // chats:Vector<Chat>
	Users    []TL // users:Vector<User>
}

type TL_messages_dialogsSlice

type TL_messages_dialogsSlice struct {
	Count    int32 // count:int
	Dialogs  []TL  // dialogs:Vector<Dialog>
	Messages []TL  // messages:Vector<Message>
	Chats    []TL  // chats:Vector<Chat>
	Users    []TL  // users:Vector<User>
}

type TL_messages_discardEncryption

type TL_messages_discardEncryption struct {
	Chat_id int32 // chat_id:int
}

type TL_messages_editChatAdmin

type TL_messages_editChatAdmin struct {
	Chat_id  int32 // chat_id:int
	User_id  TL    // user_id:InputUser
	Is_admin TL    // is_admin:Bool
}

type TL_messages_editChatPhoto

type TL_messages_editChatPhoto struct {
	Chat_id int32 // chat_id:int
	Photo   TL    // photo:InputChatPhoto
}

type TL_messages_editChatTitle

type TL_messages_editChatTitle struct {
	Chat_id int32  // chat_id:int
	Title   string // title:string
}

type TL_messages_editInlineBotMessage

type TL_messages_editInlineBotMessage struct {
	Flags        int32
	No_webpage   bool   // no_webpage:flags.1?true
	Id           TL     // Id:InputBotInlineMessageID
	Message      string // message:flags.11?string
	Reply_markup TL     // reply_markup:flags.2?ReplyMarkup
	Entities     []TL   // entities:flags.3?Vector<MessageEntity>
}

type TL_messages_editMessage

type TL_messages_editMessage struct {
	Flags        int32
	No_webpage   bool   // no_webpage:flags.1?true
	Peer         TL     // peer:InputPeer
	Id           int32  // Id:int
	Message      string // message:flags.11?string
	Reply_markup TL     // reply_markup:flags.2?ReplyMarkup
	Entities     []TL   // entities:flags.3?Vector<MessageEntity>
}

type TL_messages_exportChatInvite

type TL_messages_exportChatInvite struct {
	Chat_id int32 // chat_id:int
}

type TL_messages_featuredStickers

type TL_messages_featuredStickers struct {
	Hash   int32   // Hash:int
	Sets   []TL    // sets:Vector<StickerSetCovered>
	Unread []int64 // unread:Vector<long>
}

type TL_messages_featuredStickersNotModified

type TL_messages_featuredStickersNotModified struct {
}

type TL_messages_forwardMessage

type TL_messages_forwardMessage struct {
	Peer      TL    // peer:InputPeer
	Id        int32 // Id:int
	Random_id int64 // random_id:long
}

type TL_messages_forwardMessages

type TL_messages_forwardMessages struct {
	Flags         int32
	Silent        bool    // silent:flags.5?true
	Background    bool    // background:flags.6?true
	With_my_score bool    // with_my_score:flags.8?true
	From_peer     TL      // from_peer:InputPeer
	Id            []int32 // Id:Vector<int>
	Random_id     []int64 // random_id:Vector<long>
	To_peer       TL      // to_peer:InputPeer
}

type TL_messages_foundGifs

type TL_messages_foundGifs struct {
	Next_offset int32 // next_offset:int
	Results     []TL  // results:Vector<FoundGif>
}

type TL_messages_getAllChats

type TL_messages_getAllChats struct {
	Except_ids []int32 // except_ids:Vector<int>
}

type TL_messages_getAllDrafts

type TL_messages_getAllDrafts struct {
}

type TL_messages_getAllStickers

type TL_messages_getAllStickers struct {
	Hash int32 // Hash:int
}

type TL_messages_getArchivedStickers

type TL_messages_getArchivedStickers struct {
	Flags     int32
	Masks     bool  // masks:flags.0?true
	Offset_id int64 // offset_id:long
	Limit     int32 // limit:int
}

type TL_messages_getAttachedStickers

type TL_messages_getAttachedStickers struct {
	Media TL // media:InputStickeredMedia
}

type TL_messages_getBotCallbackAnswer

type TL_messages_getBotCallbackAnswer struct {
	Flags  int32
	Game   bool   // game:flags.1?true
	Peer   TL     // peer:InputPeer
	Msg_id int32  // msg_id:int
	Data   []byte // data:flags.0?bytes
}

type TL_messages_getChats

type TL_messages_getChats struct {
	Id []int32 // Id:Vector<int>
}

type TL_messages_getCommonChats

type TL_messages_getCommonChats struct {
	User_id TL    // user_id:InputUser
	Max_id  int32 // max_id:int
	Limit   int32 // limit:int
}

type TL_messages_getDhConfig

type TL_messages_getDhConfig struct {
	Version       int32 // Version:int
	Random_length int32 // random_length:int
}

type TL_messages_getDialogs

type TL_messages_getDialogs struct {
	Flags          int32
	Exclude_pinned bool  // exclude_pinned:flags.0?true
	Offset_date    int32 // offset_date:int
	Offset_id      int32 // offset_id:int
	Offset_peer    TL    // offset_peer:InputPeer
	Limit          int32 // limit:int
}

type TL_messages_getDocumentByHash

type TL_messages_getDocumentByHash struct {
	Sha256    []byte // sha256:bytes
	Size      int32  // size:int
	Mime_type string // mime_type:string
}

type TL_messages_getFeaturedStickers

type TL_messages_getFeaturedStickers struct {
	Hash int32 // Hash:int
}

type TL_messages_getFullChat

type TL_messages_getFullChat struct {
	Chat_id int32 // chat_id:int
}

type TL_messages_getGameHighScores

type TL_messages_getGameHighScores struct {
	Peer    TL    // peer:InputPeer
	Id      int32 // Id:int
	User_id TL    // user_id:InputUser
}

type TL_messages_getHistory

type TL_messages_getHistory struct {
	Peer        TL    // peer:InputPeer
	Offset_id   int32 // offset_id:int
	Offset_date int32 // offset_date:int
	Add_offset  int32 // add_offset:int
	Limit       int32 // limit:int
	Max_id      int32 // max_id:int
	Min_id      int32 // min_id:int
}

type TL_messages_getInlineBotResults

type TL_messages_getInlineBotResults struct {
	Flags     int32
	Bot       TL     // bot:InputUser
	Peer      TL     // peer:InputPeer
	Geo_point TL     // geo_point:flags.0?InputGeoPoint
	Query     string // query:string
	Offset    string // offset:string
}

type TL_messages_getInlineGameHighScores

type TL_messages_getInlineGameHighScores struct {
	Id      TL // Id:InputBotInlineMessageID
	User_id TL // user_id:InputUser
}

type TL_messages_getMaskStickers

type TL_messages_getMaskStickers struct {
	Hash int32 // Hash:int
}

type TL_messages_getMessageEditData

type TL_messages_getMessageEditData struct {
	Peer TL    // peer:InputPeer
	Id   int32 // Id:int
}

type TL_messages_getMessages

type TL_messages_getMessages struct {
	Id []int32 // Id:Vector<int>
}

type TL_messages_getMessagesViews

type TL_messages_getMessagesViews struct {
	Peer      TL      // peer:InputPeer
	Id        []int32 // Id:Vector<int>
	Increment TL      // increment:Bool
}

type TL_messages_getPeerDialogs

type TL_messages_getPeerDialogs struct {
	Peers []TL // peers:Vector<InputPeer>
}

type TL_messages_getPeerSettings

type TL_messages_getPeerSettings struct {
	Peer TL // peer:InputPeer
}

type TL_messages_getPinnedDialogs

type TL_messages_getPinnedDialogs struct {
}

type TL_messages_getRecentStickers

type TL_messages_getRecentStickers struct {
	Flags    int32
	Attached bool  // attached:flags.0?true
	Hash     int32 // Hash:int
}

type TL_messages_getSavedGifs

type TL_messages_getSavedGifs struct {
	Hash int32 // Hash:int
}

type TL_messages_getStickerSet

type TL_messages_getStickerSet struct {
	Stickerset TL // stickerset:InputStickerSet
}

type TL_messages_getWebPage

type TL_messages_getWebPage struct {
	Url  string // url:string
	Hash int32  // Hash:int
}

type TL_messages_getWebPagePreview

type TL_messages_getWebPagePreview struct {
	Message string // message:string
}

type TL_messages_hideReportSpam

type TL_messages_hideReportSpam struct {
	Peer TL // peer:InputPeer
}

type TL_messages_highScores

type TL_messages_highScores struct {
	Scores []TL // scores:Vector<HighScore>
	Users  []TL // users:Vector<User>
}

type TL_messages_importChatInvite

type TL_messages_importChatInvite struct {
	Hash string // Hash:string
}

type TL_messages_installStickerSet

type TL_messages_installStickerSet struct {
	Stickerset TL // stickerset:InputStickerSet
	Archived   TL // archived:Bool
}

type TL_messages_messageEditData

type TL_messages_messageEditData struct {
	Flags   int32
	Caption bool // caption:flags.0?true
}

type TL_messages_messages

type TL_messages_messages struct {
	Messages []TL // messages:Vector<Message>
	Chats    []TL // chats:Vector<Chat>
	Users    []TL // users:Vector<User>
}

type TL_messages_messagesSlice

type TL_messages_messagesSlice struct {
	Count    int32 // count:int
	Messages []TL  // messages:Vector<Message>
	Chats    []TL  // chats:Vector<Chat>
	Users    []TL  // users:Vector<User>
}

type TL_messages_migrateChat

type TL_messages_migrateChat struct {
	Chat_id int32 // chat_id:int
}

type TL_messages_peerDialogs

type TL_messages_peerDialogs struct {
	Dialogs  []TL // dialogs:Vector<Dialog>
	Messages []TL // messages:Vector<Message>
	Chats    []TL // chats:Vector<Chat>
	Users    []TL // users:Vector<User>
	State    TL   // state:updates.State
}

type TL_messages_readEncryptedHistory

type TL_messages_readEncryptedHistory struct {
	Peer     TL    // peer:InputEncryptedChat
	Max_date int32 // max_date:int
}

type TL_messages_readFeaturedStickers

type TL_messages_readFeaturedStickers struct {
	Id []int64 // Id:Vector<long>
}

type TL_messages_readHistory

type TL_messages_readHistory struct {
	Peer   TL    // peer:InputPeer
	Max_id int32 // max_id:int
}

type TL_messages_readMessageContents

type TL_messages_readMessageContents struct {
	Id []int32 // Id:Vector<int>
}

type TL_messages_receivedMessages

type TL_messages_receivedMessages struct {
	Max_id int32 // max_id:int
}

type TL_messages_receivedQueue

type TL_messages_receivedQueue struct {
	Max_qts int32 // max_qts:int
}

type TL_messages_recentStickers

type TL_messages_recentStickers struct {
	Hash     int32 // Hash:int
	Stickers []TL  // stickers:Vector<Document>
}

type TL_messages_recentStickersNotModified

type TL_messages_recentStickersNotModified struct {
}

type TL_messages_reorderPinnedDialogs

type TL_messages_reorderPinnedDialogs struct {
	Flags int32
	Force bool // force:flags.0?true
	Order []TL // order:Vector<InputPeer>
}

type TL_messages_reorderStickerSets

type TL_messages_reorderStickerSets struct {
	Flags int32
	Masks bool    // masks:flags.0?true
	Order []int64 // order:Vector<long>
}

type TL_messages_reportEncryptedSpam

type TL_messages_reportEncryptedSpam struct {
	Peer TL // peer:InputEncryptedChat
}

type TL_messages_reportSpam

type TL_messages_reportSpam struct {
	Peer TL // peer:InputPeer
}

type TL_messages_requestEncryption

type TL_messages_requestEncryption struct {
	User_id   TL     // user_id:InputUser
	Random_id int32  // random_id:int
	G_a       []byte // g_a:bytes
}

type TL_messages_saveDraft

type TL_messages_saveDraft struct {
	Flags           int32
	No_webpage      bool   // no_webpage:flags.1?true
	Reply_to_msg_id int32  // reply_to_msg_id:flags.0?int
	Peer            TL     // peer:InputPeer
	Message         string // message:string
	Entities        []TL   // entities:flags.3?Vector<MessageEntity>
}

type TL_messages_saveGif

type TL_messages_saveGif struct {
	Id     TL // Id:InputDocument
	Unsave TL // unsave:Bool
}

type TL_messages_saveRecentSticker

type TL_messages_saveRecentSticker struct {
	Flags    int32
	Attached bool // attached:flags.0?true
	Id       TL   // Id:InputDocument
	Unsave   TL   // unsave:Bool
}

type TL_messages_savedGifs

type TL_messages_savedGifs struct {
	Hash int32 // Hash:int
	Gifs []TL  // gifs:Vector<Document>
}

type TL_messages_savedGifsNotModified

type TL_messages_savedGifsNotModified struct {
}
type TL_messages_search struct {
	Flags    int32
	Peer     TL     // peer:InputPeer
	Q        string // q:string
	Filter   TL     // filter:MessagesFilter
	Min_date int32  // min_date:int
	Max_date int32  // max_date:int
	Offset   int32  // offset:int
	Max_id   int32  // max_id:int
	Limit    int32  // limit:int
}

type TL_messages_searchGifs

type TL_messages_searchGifs struct {
	Q      string // q:string
	Offset int32  // offset:int
}

type TL_messages_searchGlobal

type TL_messages_searchGlobal struct {
	Q           string // q:string
	Offset_date int32  // offset_date:int
	Offset_peer TL     // offset_peer:InputPeer
	Offset_id   int32  // offset_id:int
	Limit       int32  // limit:int
}

type TL_messages_sendEncrypted

type TL_messages_sendEncrypted struct {
	Peer      TL     // peer:InputEncryptedChat
	Random_id int64  // random_id:long
	Data      []byte // data:bytes
}

type TL_messages_sendEncryptedFile

type TL_messages_sendEncryptedFile struct {
	Peer      TL     // peer:InputEncryptedChat
	Random_id int64  // random_id:long
	Data      []byte // data:bytes
	File      TL     // file:InputEncryptedFile
}

type TL_messages_sendEncryptedService

type TL_messages_sendEncryptedService struct {
	Peer      TL     // peer:InputEncryptedChat
	Random_id int64  // random_id:long
	Data      []byte // data:bytes
}

type TL_messages_sendInlineBotResult

type TL_messages_sendInlineBotResult struct {
	Flags           int32
	Silent          bool   // silent:flags.5?true
	Background      bool   // background:flags.6?true
	Clear_draft     bool   // clear_draft:flags.7?true
	Peer            TL     // peer:InputPeer
	Reply_to_msg_id int32  // reply_to_msg_id:flags.0?int
	Random_id       int64  // random_id:long
	Query_id        int64  // query_id:long
	Id              string // Id:string
}

type TL_messages_sendMedia

type TL_messages_sendMedia struct {
	Flags           int32
	Silent          bool  // silent:flags.5?true
	Background      bool  // background:flags.6?true
	Clear_draft     bool  // clear_draft:flags.7?true
	Peer            TL    // peer:InputPeer
	Reply_to_msg_id int32 // reply_to_msg_id:flags.0?int
	Media           TL    // media:InputMedia
	Random_id       int64 // random_id:long
	Reply_markup    TL    // reply_markup:flags.2?ReplyMarkup
}

type TL_messages_sendMessage

type TL_messages_sendMessage struct {
	Flags           int32
	No_webpage      bool   // no_webpage:flags.1?true
	Silent          bool   // silent:flags.5?true
	Background      bool   // background:flags.6?true
	Clear_draft     bool   // clear_draft:flags.7?true
	Peer            TL     // peer:InputPeer
	Reply_to_msg_id int32  // reply_to_msg_id:flags.0?int
	Message         string // message:string
	Random_id       int64  // random_id:long
	Reply_markup    TL     // reply_markup:flags.2?ReplyMarkup
	Entities        []TL   // entities:flags.3?Vector<MessageEntity>
}

type TL_messages_sentEncryptedFile

type TL_messages_sentEncryptedFile struct {
	Date int32 // date:int
	File TL    // file:EncryptedFile
}

type TL_messages_sentEncryptedMessage

type TL_messages_sentEncryptedMessage struct {
	Date int32 // date:int
}

type TL_messages_setBotCallbackAnswer

type TL_messages_setBotCallbackAnswer struct {
	Flags      int32
	Alert      bool   // alert:flags.1?true
	Query_id   int64  // query_id:long
	Message    string // message:flags.0?string
	Url        string // url:flags.2?string
	Cache_time int32  // cache_time:int
}

type TL_messages_setBotPrecheckoutResults

type TL_messages_setBotPrecheckoutResults struct {
	Flags    int32
	Success  bool   // success:flags.1?true
	Query_id int64  // query_id:long
	Error    string // error:flags.0?string
}

type TL_messages_setBotShippingResults

type TL_messages_setBotShippingResults struct {
	Flags            int32
	Query_id         int64  // query_id:long
	Error            string // error:flags.0?string
	Shipping_options []TL   // shipping_options:flags.1?Vector<ShippingOption>
}

type TL_messages_setEncryptedTyping

type TL_messages_setEncryptedTyping struct {
	Peer   TL // peer:InputEncryptedChat
	Typing TL // typing:Bool
}

type TL_messages_setGameScore

type TL_messages_setGameScore struct {
	Flags        int32
	Edit_message bool  // edit_message:flags.0?true
	Force        bool  // force:flags.1?true
	Peer         TL    // peer:InputPeer
	Id           int32 // Id:int
	User_id      TL    // user_id:InputUser
	Score        int32 // score:int
}

type TL_messages_setInlineBotResults

type TL_messages_setInlineBotResults struct {
	Flags       int32
	Gallery     bool   // gallery:flags.0?true
	Private     bool   // private:flags.1?true
	Query_id    int64  // query_id:long
	Results     []TL   // results:Vector<InputBotInlineResult>
	Cache_time  int32  // cache_time:int
	Next_offset string // next_offset:flags.2?string
	Switch_pm   TL     // switch_pm:flags.3?InlineBotSwitchPM
}

type TL_messages_setInlineGameScore

type TL_messages_setInlineGameScore struct {
	Flags        int32
	Edit_message bool  // edit_message:flags.0?true
	Force        bool  // force:flags.1?true
	Id           TL    // Id:InputBotInlineMessageID
	User_id      TL    // user_id:InputUser
	Score        int32 // score:int
}

type TL_messages_setTyping

type TL_messages_setTyping struct {
	Peer   TL // peer:InputPeer
	Action TL // action:SendMessageAction
}

type TL_messages_startBot

type TL_messages_startBot struct {
	Bot         TL     // bot:InputUser
	Peer        TL     // peer:InputPeer
	Random_id   int64  // random_id:long
	Start_param string // start_param:string
}

type TL_messages_stickerSet

type TL_messages_stickerSet struct {
	Set       TL   // set:StickerSet
	Packs     []TL // packs:Vector<StickerPack>
	Documents []TL // documents:Vector<Document>
}

type TL_messages_stickerSetInstallResultArchive

type TL_messages_stickerSetInstallResultArchive struct {
	Sets []TL // sets:Vector<StickerSetCovered>
}

type TL_messages_stickerSetInstallResultSuccess

type TL_messages_stickerSetInstallResultSuccess struct {
}

type TL_messages_stickers

type TL_messages_stickers struct {
	Hash     string // Hash:string
	Stickers []TL   // stickers:Vector<Document>
}

type TL_messages_stickersNotModified

type TL_messages_stickersNotModified struct {
}

type TL_messages_toggleChatAdmins

type TL_messages_toggleChatAdmins struct {
	Chat_id int32 // chat_id:int
	Enabled TL    // enabled:Bool
}

type TL_messages_toggleDialogPin

type TL_messages_toggleDialogPin struct {
	Flags  int32
	Pinned bool // pinned:flags.0?true
	Peer   TL   // peer:InputPeer
}

type TL_messages_uninstallStickerSet

type TL_messages_uninstallStickerSet struct {
	Stickerset TL // stickerset:InputStickerSet
}

type TL_msg_container

type TL_msg_container struct {
	Items []TL_MT_message
}

type TL_msgs_ack

type TL_msgs_ack struct {
	MsgIds []int64
}

type TL_nearestDc

type TL_nearestDc struct {
	Country    string // country:string
	This_dc    int32  // this_dc:int
	Nearest_dc int32  // nearest_dc:int
}

type TL_new_session_created

type TL_new_session_created struct {
	First_msg_id int64
	Unique_id    int64
	Server_salt  []byte
}

type TL_notifyAll

type TL_notifyAll struct {
}

type TL_notifyChats

type TL_notifyChats struct {
}

type TL_notifyPeer

type TL_notifyPeer struct {
	Peer TL // peer:Peer
}

type TL_notifyUsers

type TL_notifyUsers struct {
}

type TL_null

type TL_null struct {
}

type TL_p_q_inner_data

type TL_p_q_inner_data struct {
	Pq           *big.Int
	P            *big.Int
	Q            *big.Int
	Nonce        []byte
	Server_nonce []byte
	New_nonce    []byte
}

type TL_pageBlockAnchor

type TL_pageBlockAnchor struct {
	Name string // name:string
}

type TL_pageBlockAuthorDate

type TL_pageBlockAuthorDate struct {
	Author         TL    // author:RichText
	Published_date int32 // published_date:int
}

type TL_pageBlockBlockquote

type TL_pageBlockBlockquote struct {
	Text    TL // text:RichText
	Caption TL // caption:RichText
}

type TL_pageBlockCollage

type TL_pageBlockCollage struct {
	Items   []TL // items:Vector<PageBlock>
	Caption TL   // caption:RichText
}

type TL_pageBlockCover

type TL_pageBlockCover struct {
	Cover TL // cover:PageBlock
}

type TL_pageBlockDivider

type TL_pageBlockDivider struct {
}

type TL_pageBlockEmbed

type TL_pageBlockEmbed struct {
	Flags           int32
	Full_width      bool   // full_width:flags.0?true
	Allow_scrolling bool   // allow_scrolling:flags.3?true
	Url             string // url:flags.1?string
	Html            string // html:flags.2?string
	Poster_photo_id int64  // poster_photo_id:flags.4?long
	W               int32  // w:int
	H               int32  // h:int
	Caption         TL     // caption:RichText
}

type TL_pageBlockEmbedPost

type TL_pageBlockEmbedPost struct {
	Url             string // url:string
	Webpage_id      int64  // webpage_id:long
	Author_photo_id int64  // author_photo_id:long
	Author          string // author:string
	Date            int32  // date:int
	Blocks          []TL   // blocks:Vector<PageBlock>
	Caption         TL     // caption:RichText
}

type TL_pageBlockFooter

type TL_pageBlockFooter struct {
	Text TL // text:RichText
}

type TL_pageBlockHeader

type TL_pageBlockHeader struct {
	Text TL // text:RichText
}

type TL_pageBlockList

type TL_pageBlockList struct {
	Ordered TL   // ordered:Bool
	Items   []TL // items:Vector<RichText>
}

type TL_pageBlockParagraph

type TL_pageBlockParagraph struct {
	Text TL // text:RichText
}

type TL_pageBlockPhoto

type TL_pageBlockPhoto struct {
	Photo_id int64 // photo_id:long
	Caption  TL    // caption:RichText
}

type TL_pageBlockPreformatted

type TL_pageBlockPreformatted struct {
	Text     TL     // text:RichText
	Language string // Language:string
}

type TL_pageBlockPullquote

type TL_pageBlockPullquote struct {
	Text    TL // text:RichText
	Caption TL // caption:RichText
}

type TL_pageBlockSlideshow

type TL_pageBlockSlideshow struct {
	Items   []TL // items:Vector<PageBlock>
	Caption TL   // caption:RichText
}

type TL_pageBlockSubheader

type TL_pageBlockSubheader struct {
	Text TL // text:RichText
}

type TL_pageBlockSubtitle

type TL_pageBlockSubtitle struct {
	Text TL // text:RichText
}

type TL_pageBlockTitle

type TL_pageBlockTitle struct {
	Text TL // text:RichText
}

type TL_pageBlockUnsupported

type TL_pageBlockUnsupported struct {
}

type TL_pageBlockVideo

type TL_pageBlockVideo struct {
	Flags    int32
	Autoplay bool  // autoplay:flags.0?true
	Loop     bool  // loop:flags.1?true
	Video_id int64 // video_id:long
	Caption  TL    // caption:RichText
}

type TL_pageFull

type TL_pageFull struct {
	Blocks []TL // blocks:Vector<PageBlock>
	Photos []TL // photos:Vector<Photo>
	Videos []TL // videos:Vector<Document>
}

type TL_pagePart

type TL_pagePart struct {
	Blocks []TL // blocks:Vector<PageBlock>
	Photos []TL // photos:Vector<Photo>
	Videos []TL // videos:Vector<Document>
}

type TL_paymentCharge

type TL_paymentCharge struct {
	Id                 string // Id:string
	Provider_charge_id string // provider_charge_id:string
}

type TL_paymentRequestedInfo

type TL_paymentRequestedInfo struct {
	Flags            int32
	Name             string // name:flags.0?string
	Phone            string // phone:flags.1?string
	Email            string // email:flags.2?string
	Shipping_address TL     // shipping_address:flags.3?PostAddress
}

type TL_paymentSavedCredentialsCard

type TL_paymentSavedCredentialsCard struct {
	Id    string // Id:string
	Title string // title:string
}

type TL_payments_clearSavedInfo

type TL_payments_clearSavedInfo struct {
	Flags       int32
	Credentials bool // credentials:flags.0?true
	Info        bool // info:flags.1?true
}

type TL_payments_getPaymentForm

type TL_payments_getPaymentForm struct {
	Msg_id int32 // msg_id:int
}

type TL_payments_getPaymentReceipt

type TL_payments_getPaymentReceipt struct {
	Msg_id int32 // msg_id:int
}

type TL_payments_getSavedInfo

type TL_payments_getSavedInfo struct {
}

type TL_payments_paymentForm

type TL_payments_paymentForm struct {
	Flags                int32
	Can_save_credentials bool   // can_save_credentials:flags.2?true
	Password_missing     bool   // password_missing:flags.3?true
	Bot_id               int32  // bot_id:int
	Invoice              TL     // invoice:Invoice
	Provider_id          int32  // provider_id:int
	Url                  string // url:string
	Native_provider      string // native_provider:flags.4?string
	Native_params        TL     // native_params:flags.4?DataJSON
	Saved_info           TL     // saved_info:flags.0?PaymentRequestedInfo
	Saved_credentials    TL     // saved_credentials:flags.1?PaymentSavedCredentials
	Users                []TL   // users:Vector<User>
}

type TL_payments_paymentReceipt

type TL_payments_paymentReceipt struct {
	Flags             int32
	Date              int32  // date:int
	Bot_id            int32  // bot_id:int
	Invoice           TL     // invoice:Invoice
	Provider_id       int32  // provider_id:int
	Info              TL     // info:flags.0?PaymentRequestedInfo
	Shipping          TL     // shipping:flags.1?ShippingOption
	Currency          string // currency:string
	Total_amount      int64  // total_amount:long
	Credentials_title string // credentials_title:string
	Users             []TL   // users:Vector<User>
}

type TL_payments_paymentResult

type TL_payments_paymentResult struct {
	Updates TL // updates:Updates
}

type TL_payments_paymentVerficationNeeded

type TL_payments_paymentVerficationNeeded struct {
	Url string // url:string
}

type TL_payments_savedInfo

type TL_payments_savedInfo struct {
	Flags                 int32
	Has_saved_credentials bool // has_saved_credentials:flags.1?true
	Saved_info            TL   // saved_info:flags.0?PaymentRequestedInfo
}

type TL_payments_sendPaymentForm

type TL_payments_sendPaymentForm struct {
	Flags              int32
	Msg_id             int32  // msg_id:int
	Requested_info_id  string // requested_info_id:flags.0?string
	Shipping_option_id string // shipping_option_id:flags.1?string
	Credentials        TL     // credentials:InputPaymentCredentials
}

type TL_payments_validateRequestedInfo

type TL_payments_validateRequestedInfo struct {
	Flags  int32
	Save   bool  // save:flags.0?true
	Msg_id int32 // msg_id:int
	Info   TL    // info:PaymentRequestedInfo
}

type TL_payments_validatedRequestedInfo

type TL_payments_validatedRequestedInfo struct {
	Flags            int32
	Id               string // Id:flags.0?string
	Shipping_options []TL   // shipping_options:flags.1?Vector<ShippingOption>
}

type TL_peerChannel

type TL_peerChannel struct {
	Channel_id int32 // channel_id:int
}

type TL_peerChat

type TL_peerChat struct {
	Chat_id int32 // chat_id:int
}

type TL_peerNotifyEventsAll

type TL_peerNotifyEventsAll struct {
}

type TL_peerNotifyEventsEmpty

type TL_peerNotifyEventsEmpty struct {
}

type TL_peerNotifySettings

type TL_peerNotifySettings struct {
	Flags         int32
	Show_previews bool   // show_previews:flags.0?true
	Silent        bool   // silent:flags.1?true
	Mute_until    int32  // mute_until:int
	Sound         string // sound:string
}

type TL_peerNotifySettingsEmpty

type TL_peerNotifySettingsEmpty struct {
}

type TL_peerSettings

type TL_peerSettings struct {
	Flags       int32
	Report_spam bool // report_spam:flags.0?true
}

type TL_peerUser

type TL_peerUser struct {
	User_id int32 // user_id:int
}

type TL_phoneCall

type TL_phoneCall struct {
	Id                      int64  // Id:long
	Access_hash             int64  // access_hash:long
	Date                    int32  // date:int
	Admin_id                int32  // admin_id:int
	Participant_id          int32  // participant_id:int
	G_a_or_b                []byte // g_a_or_b:bytes
	Key_fingerprint         int64  // key_fingerprint:long
	Protocol                TL     // protocol:PhoneCallProtocol
	Connection              TL     // connection:PhoneConnection
	Alternative_connections []TL   // alternative_connections:Vector<PhoneConnection>
	Start_date              int32  // start_date:int
}

type TL_phoneCallAccepted

type TL_phoneCallAccepted struct {
	Id             int64  // Id:long
	Access_hash    int64  // access_hash:long
	Date           int32  // date:int
	Admin_id       int32  // admin_id:int
	Participant_id int32  // participant_id:int
	G_b            []byte // g_b:bytes
	Protocol       TL     // protocol:PhoneCallProtocol
}

type TL_phoneCallDiscardReasonBusy

type TL_phoneCallDiscardReasonBusy struct {
}

type TL_phoneCallDiscardReasonDisconnect

type TL_phoneCallDiscardReasonDisconnect struct {
}

type TL_phoneCallDiscardReasonHangup

type TL_phoneCallDiscardReasonHangup struct {
}

type TL_phoneCallDiscardReasonMissed

type TL_phoneCallDiscardReasonMissed struct {
}

type TL_phoneCallDiscarded

type TL_phoneCallDiscarded struct {
	Flags       int32
	Need_rating bool  // need_rating:flags.2?true
	Need_debug  bool  // need_debug:flags.3?true
	Id          int64 // Id:long
	Reason      TL    // reason:flags.0?PhoneCallDiscardReason
	Duration    int32 // duration:flags.1?int
}

type TL_phoneCallEmpty

type TL_phoneCallEmpty struct {
	Id int64 // Id:long
}

type TL_phoneCallProtocol

type TL_phoneCallProtocol struct {
	Flags         int32
	Udp_p2p       bool  // udp_p2p:flags.0?true
	Udp_reflector bool  // udp_reflector:flags.1?true
	Min_layer     int32 // min_layer:int
	Max_layer     int32 // max_layer:int
}

type TL_phoneCallRequested

type TL_phoneCallRequested struct {
	Id             int64  // Id:long
	Access_hash    int64  // access_hash:long
	Date           int32  // date:int
	Admin_id       int32  // admin_id:int
	Participant_id int32  // participant_id:int
	G_a_hash       []byte // g_a_hash:bytes
	Protocol       TL     // protocol:PhoneCallProtocol
}

type TL_phoneCallWaiting

type TL_phoneCallWaiting struct {
	Flags          int32
	Id             int64 // Id:long
	Access_hash    int64 // access_hash:long
	Date           int32 // date:int
	Admin_id       int32 // admin_id:int
	Participant_id int32 // participant_id:int
	Protocol       TL    // protocol:PhoneCallProtocol
	Receive_date   int32 // receive_date:flags.0?int
}

type TL_phoneConnection

type TL_phoneConnection struct {
	Id       int64  // Id:long
	Ip       string // ip:string
	Ipv6     string // ipv6:string
	Port     int32  // port:int
	Peer_tag []byte // peer_tag:bytes
}

type TL_phone_acceptCall

type TL_phone_acceptCall struct {
	Peer     TL     // peer:InputPhoneCall
	G_b      []byte // g_b:bytes
	Protocol TL     // protocol:PhoneCallProtocol
}

type TL_phone_confirmCall

type TL_phone_confirmCall struct {
	Peer            TL     // peer:InputPhoneCall
	G_a             []byte // g_a:bytes
	Key_fingerprint int64  // key_fingerprint:long
	Protocol        TL     // protocol:PhoneCallProtocol
}

type TL_phone_discardCall

type TL_phone_discardCall struct {
	Peer          TL    // peer:InputPhoneCall
	Duration      int32 // duration:int
	Reason        TL    // reason:PhoneCallDiscardReason
	Connection_id int64 // connection_id:long
}

type TL_phone_getCallConfig

type TL_phone_getCallConfig struct {
}

type TL_phone_phoneCall

type TL_phone_phoneCall struct {
	Phone_call TL   // phone_call:PhoneCall
	Users      []TL // users:Vector<User>
}

type TL_phone_receivedCall

type TL_phone_receivedCall struct {
	Peer TL // peer:InputPhoneCall
}

type TL_phone_requestCall

type TL_phone_requestCall struct {
	User_id   TL     // user_id:InputUser
	Random_id int32  // random_id:int
	G_a_hash  []byte // g_a_hash:bytes
	Protocol  TL     // protocol:PhoneCallProtocol
}

type TL_phone_saveCallDebug

type TL_phone_saveCallDebug struct {
	Peer  TL // peer:InputPhoneCall
	Debug TL // debug:DataJSON
}

type TL_phone_setCallRating

type TL_phone_setCallRating struct {
	Peer    TL     // peer:InputPhoneCall
	Rating  int32  // rating:int
	Comment string // comment:string
}

type TL_photo

type TL_photo struct {
	Flags        int32 `json:"flags"`
	Has_stickers bool  `json:"has_stickers"` // has_stickers:flags.0?true
	Id           int64 `json:"id"`           // Id:long
	Access_hash  int64 `json:"access_hash"`  // access_hash:long
	Date         int32 `json:"date"`         // date:int
	Sizes        []TL  `json:"sizes"`        // sizes:Vector<PhotoSize>
}

type TL_photoCachedSize

type TL_photoCachedSize struct {
	Code_type string `json:"type"`     // type:string
	Location  TL     `json:"location"` // location:FileLocation
	W         int32  `json:"w"`        // w:int
	H         int32  `json:"h"`        // h:int
	Bytes     []byte `json:"-"`        // bytes:bytes
}

type TL_photoEmpty

type TL_photoEmpty struct {
	Id int64 // Id:long
}

type TL_photoSize

type TL_photoSize struct {
	Code_type string `json:"code_type"` // type:string
	Location  TL     `json:"location"`  // location:FileLocation
	W         int32  `json:"w"`         // w:int
	H         int32  `json:"h"`         // h:int
	Size      int32  `json:"size"`      // size:int
}

type TL_photoSizeEmpty

type TL_photoSizeEmpty struct {
	Code_type string // type:string
}

type TL_photos_deletePhotos

type TL_photos_deletePhotos struct {
	Id []TL // Id:Vector<InputPhoto>
}

type TL_photos_getUserPhotos

type TL_photos_getUserPhotos struct {
	User_id TL    // user_id:InputUser
	Offset  int32 // offset:int
	Max_id  int64 // max_id:long
	Limit   int32 // limit:int
}

type TL_photos_photo

type TL_photos_photo struct {
	Photo TL   // photo:Photo
	Users []TL // users:Vector<User>
}

type TL_photos_photos

type TL_photos_photos struct {
	Photos []TL // photos:Vector<Photo>
	Users  []TL // users:Vector<User>
}

type TL_photos_photosSlice

type TL_photos_photosSlice struct {
	Count  int32 // count:int
	Photos []TL  // photos:Vector<Photo>
	Users  []TL  // users:Vector<User>
}

type TL_photos_updateProfilePhoto

type TL_photos_updateProfilePhoto struct {
	Id TL // Id:InputPhoto
}

type TL_photos_uploadProfilePhoto

type TL_photos_uploadProfilePhoto struct {
	File TL // file:InputFile
}

type TL_ping

type TL_ping struct {
	Ping_id int64
}

type TL_pong

type TL_pong struct {
	Msg_id  int64
	Ping_id int64
}

type TL_postAddress

type TL_postAddress struct {
	Street_line1 string // street_line1:string
	Street_line2 string // street_line2:string
	City         string // city:string
	State        string // state:string
	Country_iso2 string // country_iso2:string
	Post_code    string // post_code:string
}

type TL_privacyKeyChatInvite

type TL_privacyKeyChatInvite struct {
}

type TL_privacyKeyPhoneCall

type TL_privacyKeyPhoneCall struct {
}

type TL_privacyKeyStatusTimestamp

type TL_privacyKeyStatusTimestamp struct {
}

type TL_privacyValueAllowAll

type TL_privacyValueAllowAll struct {
}

type TL_privacyValueAllowContacts

type TL_privacyValueAllowContacts struct {
}

type TL_privacyValueAllowUsers

type TL_privacyValueAllowUsers struct {
	Users []int32 // users:Vector<int>
}

type TL_privacyValueDisallowAll

type TL_privacyValueDisallowAll struct {
}

type TL_privacyValueDisallowContacts

type TL_privacyValueDisallowContacts struct {
}

type TL_privacyValueDisallowUsers

type TL_privacyValueDisallowUsers struct {
	Users []int32 // users:Vector<int>
}

type TL_receivedNotifyMessage

type TL_receivedNotifyMessage struct {
	Id    int32 // Id:int
	Flags int32 // flags:int
}

type TL_replyInlineMarkup

type TL_replyInlineMarkup struct {
	Rows []TL // rows:Vector<KeyboardButtonRow>
}

type TL_replyKeyboardForceReply

type TL_replyKeyboardForceReply struct {
	Flags      int32
	Single_use bool // single_use:flags.1?true
	Selective  bool // selective:flags.2?true
}

type TL_replyKeyboardHide

type TL_replyKeyboardHide struct {
	Flags     int32
	Selective bool // selective:flags.2?true
}

type TL_replyKeyboardMarkup

type TL_replyKeyboardMarkup struct {
	Flags      int32
	Resize     bool // resize:flags.0?true
	Single_use bool // single_use:flags.1?true
	Selective  bool // selective:flags.2?true
	Rows       []TL // rows:Vector<KeyboardButtonRow>
}

type TL_req_DH_params

type TL_req_DH_params struct {
	Nonce        []byte
	Server_nonce []byte
	P            *big.Int
	Q            *big.Int
	Fp           uint64
	Encdata      []byte
}

type TL_req_pq

type TL_req_pq struct {
	Nonce []byte
}

type TL_resPQ

type TL_resPQ struct {
	Nonce        []byte
	Server_nonce []byte
	Pq           *big.Int
	Fingerprints []int64
}

type TL_rpc_error

type TL_rpc_error struct {
	Error_code    int32
	Error_message string
}

type TL_rpc_result

type TL_rpc_result struct {
	Req_msg_id int64
	Obj        interface{}
}

type TL_sendMessageCancelAction

type TL_sendMessageCancelAction struct {
}

type TL_sendMessageChooseContactAction

type TL_sendMessageChooseContactAction struct {
}

type TL_sendMessageGamePlayAction

type TL_sendMessageGamePlayAction struct {
}

type TL_sendMessageGeoLocationAction

type TL_sendMessageGeoLocationAction struct {
}

type TL_sendMessageRecordAudioAction

type TL_sendMessageRecordAudioAction struct {
}

type TL_sendMessageRecordVideoAction

type TL_sendMessageRecordVideoAction struct {
}

type TL_sendMessageTypingAction

type TL_sendMessageTypingAction struct {
}

type TL_sendMessageUploadAudioAction

type TL_sendMessageUploadAudioAction struct {
	Progress int32 // progress:int
}

type TL_sendMessageUploadDocumentAction

type TL_sendMessageUploadDocumentAction struct {
	Progress int32 // progress:int
}

type TL_sendMessageUploadPhotoAction

type TL_sendMessageUploadPhotoAction struct {
	Progress int32 // progress:int
}

type TL_sendMessageUploadVideoAction

type TL_sendMessageUploadVideoAction struct {
	Progress int32 // progress:int
}

type TL_server_DH_inner_data

type TL_server_DH_inner_data struct {
	Nonce        []byte
	Server_nonce []byte
	G            int32
	Dh_prime     *big.Int
	G_a          *big.Int
	Server_time  int32
}

type TL_server_DH_params_fail

type TL_server_DH_params_fail struct {
	Nonce          []byte
	Server_nonce   []byte
	New_nonce_hash []byte
}

type TL_server_DH_params_ok

type TL_server_DH_params_ok struct {
	Nonce            []byte
	Server_nonce     []byte
	Encrypted_answer []byte
}

type TL_set_client_DH_params

type TL_set_client_DH_params struct {
	Nonce        []byte
	Server_nonce []byte
	Encdata      []byte
}

type TL_shippingOption

type TL_shippingOption struct {
	Id     string // Id:string
	Title  string // title:string
	Prices []TL   // prices:Vector<LabeledPrice>
}

type TL_stickerPack

type TL_stickerPack struct {
	Emoticon  string  // emoticon:string
	Documents []int64 // documents:Vector<long>
}

type TL_stickerSet

type TL_stickerSet struct {
	Flags       int32
	Installed   bool   // installed:flags.0?true
	Archived    bool   // archived:flags.1?true
	Official    bool   // official:flags.2?true
	Masks       bool   // masks:flags.3?true
	Id          int64  // Id:long
	Access_hash int64  // access_hash:long
	Title       string // title:string
	Short_name  string // short_name:string
	Count       int32  // count:int
	Hash        int32  // Hash:int
}

type TL_stickerSetCovered

type TL_stickerSetCovered struct {
	Set   TL // set:StickerSet
	Cover TL // cover:Document
}

type TL_stickerSetMultiCovered

type TL_stickerSetMultiCovered struct {
	Set    TL   // set:StickerSet
	Covers []TL // covers:Vector<Document>
}

type TL_storage_fileGif

type TL_storage_fileGif struct {
}

type TL_storage_fileJpeg

type TL_storage_fileJpeg struct {
}

type TL_storage_fileMov

type TL_storage_fileMov struct {
}

type TL_storage_fileMp3

type TL_storage_fileMp3 struct {
}

type TL_storage_fileMp4

type TL_storage_fileMp4 struct {
}

type TL_storage_filePartial

type TL_storage_filePartial struct {
}

type TL_storage_filePdf

type TL_storage_filePdf struct {
}

type TL_storage_filePng

type TL_storage_filePng struct {
}

type TL_storage_fileUnknown

type TL_storage_fileUnknown struct {
}

type TL_storage_fileWebp

type TL_storage_fileWebp struct {
}

type TL_textBold

type TL_textBold struct {
	Text TL // text:RichText
}

type TL_textConcat

type TL_textConcat struct {
	Texts []TL // texts:Vector<RichText>
}

type TL_textEmail

type TL_textEmail struct {
	Text  TL     // text:RichText
	Email string // email:string
}

type TL_textEmpty

type TL_textEmpty struct {
}

type TL_textFixed

type TL_textFixed struct {
	Text TL // text:RichText
}

type TL_textItalic

type TL_textItalic struct {
	Text TL // text:RichText
}

type TL_textPlain

type TL_textPlain struct {
	Text string // text:string
}

type TL_textStrike

type TL_textStrike struct {
	Text TL // text:RichText
}

type TL_textUnderline

type TL_textUnderline struct {
	Text TL // text:RichText
}

type TL_textUrl

type TL_textUrl struct {
	Text       TL     // text:RichText
	Url        string // url:string
	Webpage_id int64  // webpage_id:long
}

type TL_topPeer

type TL_topPeer struct {
	Peer   TL      // peer:Peer
	Rating float64 // rating:double
}

type TL_topPeerCategoryBotsInline

type TL_topPeerCategoryBotsInline struct {
}

type TL_topPeerCategoryBotsPM

type TL_topPeerCategoryBotsPM struct {
}

type TL_topPeerCategoryChannels

type TL_topPeerCategoryChannels struct {
}

type TL_topPeerCategoryCorrespondents

type TL_topPeerCategoryCorrespondents struct {
}

type TL_topPeerCategoryGroups

type TL_topPeerCategoryGroups struct {
}

type TL_topPeerCategoryPeers

type TL_topPeerCategoryPeers struct {
	Category TL    // category:TopPeerCategory
	Count    int32 // count:int
	Peers    []TL  // peers:Vector<TopPeer>
}

type TL_true

type TL_true struct {
}

type TL_updateBotCallbackQuery

type TL_updateBotCallbackQuery struct {
	Flags           int32
	Query_id        int64  // query_id:long
	User_id         int32  // user_id:int
	Peer            TL     // peer:Peer
	Msg_id          int32  // msg_id:int
	Chat_instance   int64  // chat_instance:long
	Data            []byte // data:flags.0?bytes
	Game_short_name string // game_short_name:flags.1?string
}

type TL_updateBotInlineQuery

type TL_updateBotInlineQuery struct {
	Flags    int32
	Query_id int64  // query_id:long
	User_id  int32  // user_id:int
	Query    string // query:string
	Geo      TL     // geo:flags.0?GeoPoint
	Offset   string // offset:string
}

type TL_updateBotInlineSend

type TL_updateBotInlineSend struct {
	Flags   int32
	User_id int32  // user_id:int
	Query   string // query:string
	Geo     TL     // geo:flags.0?GeoPoint
	Id      string // Id:string
	Msg_id  TL     // msg_id:flags.1?InputBotInlineMessageID
}

type TL_updateBotPrecheckoutQuery

type TL_updateBotPrecheckoutQuery struct {
	Flags              int32
	Query_id           int64  // query_id:long
	User_id            int32  // user_id:int
	Payload            []byte // payload:bytes
	Info               TL     // info:flags.0?PaymentRequestedInfo
	Shipping_option_id string // shipping_option_id:flags.1?string
	Currency           string // currency:string
	Total_amount       int64  // total_amount:long
}

type TL_updateBotShippingQuery

type TL_updateBotShippingQuery struct {
	Query_id         int64  // query_id:long
	User_id          int32  // user_id:int
	Payload          []byte // payload:bytes
	Shipping_address TL     // shipping_address:PostAddress
}

type TL_updateBotWebhookJSON

type TL_updateBotWebhookJSON struct {
	Data TL // data:DataJSON
}

type TL_updateBotWebhookJSONQuery

type TL_updateBotWebhookJSONQuery struct {
	Query_id int64 // query_id:long
	Data     TL    // data:DataJSON
	Timeout  int32 // timeout:int
}

type TL_updateChannel

type TL_updateChannel struct {
	Channel_id int32 // channel_id:int
}

type TL_updateChannelMessageViews

type TL_updateChannelMessageViews struct {
	Channel_id int32 // channel_id:int
	Id         int32 // Id:int
	Views      int32 // views:int
}

type TL_updateChannelPinnedMessage

type TL_updateChannelPinnedMessage struct {
	Channel_id int32 // channel_id:int
	Id         int32 // Id:int
}

type TL_updateChannelTooLong

type TL_updateChannelTooLong struct {
	Flags      int32
	Channel_id int32 // channel_id:int
	Pts        int32 // pts:flags.0?int
}

type TL_updateChannelWebPage

type TL_updateChannelWebPage struct {
	Channel_id int32 // channel_id:int
	Webpage    TL    // webpage:WebPage
	Pts        int32 // pts:int
	Pts_count  int32 // pts_count:int
}

type TL_updateChatAdmins

type TL_updateChatAdmins struct {
	Chat_id int32 // chat_id:int
	Enabled TL    // enabled:Bool
	Version int32 // Version:int
}

type TL_updateChatParticipantAdd

type TL_updateChatParticipantAdd struct {
	Chat_id    int32 // chat_id:int
	User_id    int32 // user_id:int
	Inviter_id int32 // inviter_id:int
	Date       int32 // date:int
	Version    int32 // Version:int
}

type TL_updateChatParticipantAdmin

type TL_updateChatParticipantAdmin struct {
	Chat_id  int32 // chat_id:int
	User_id  int32 // user_id:int
	Is_admin TL    // is_admin:Bool
	Version  int32 // Version:int
}

type TL_updateChatParticipantDelete

type TL_updateChatParticipantDelete struct {
	Chat_id int32 // chat_id:int
	User_id int32 // user_id:int
	Version int32 // Version:int
}

type TL_updateChatParticipants

type TL_updateChatParticipants struct {
	Participants TL // participants:ChatParticipants
}

type TL_updateChatUserTyping

type TL_updateChatUserTyping struct {
	Chat_id int32 // chat_id:int
	User_id int32 // user_id:int
	Action  TL    // action:SendMessageAction
}

type TL_updateConfig

type TL_updateConfig struct {
}
type TL_updateContactLink struct {
	User_id      int32 // user_id:int
	My_link      TL    // my_link:ContactLink
	Foreign_link TL    // foreign_link:ContactLink
}

type TL_updateContactRegistered

type TL_updateContactRegistered struct {
	User_id int32 // user_id:int
	Date    int32 // date:int
}

type TL_updateDcOptions

type TL_updateDcOptions struct {
	Dc_options []TL // dc_options:Vector<DcOption>
}

type TL_updateDeleteChannelMessages

type TL_updateDeleteChannelMessages struct {
	Channel_id int32   // channel_id:int
	Messages   []int32 // messages:Vector<int>
	Pts        int32   // pts:int
	Pts_count  int32   // pts_count:int
}

type TL_updateDeleteMessages

type TL_updateDeleteMessages struct {
	Messages  []int32 // messages:Vector<int>
	Pts       int32   // pts:int
	Pts_count int32   // pts_count:int
}

type TL_updateDialogPinned

type TL_updateDialogPinned struct {
	Flags  int32
	Pinned bool // pinned:flags.0?true
	Peer   TL   // peer:Peer
}

type TL_updateDraftMessage

type TL_updateDraftMessage struct {
	Peer  TL // peer:Peer
	Draft TL // draft:DraftMessage
}

type TL_updateEditChannelMessage

type TL_updateEditChannelMessage struct {
	Message   TL    // message:Message
	Pts       int32 // pts:int
	Pts_count int32 // pts_count:int
}

type TL_updateEditMessage

type TL_updateEditMessage struct {
	Message   TL    // message:Message
	Pts       int32 // pts:int
	Pts_count int32 // pts_count:int
}

type TL_updateEncryptedChatTyping

type TL_updateEncryptedChatTyping struct {
	Chat_id int32 // chat_id:int
}

type TL_updateEncryptedMessagesRead

type TL_updateEncryptedMessagesRead struct {
	Chat_id  int32 // chat_id:int
	Max_date int32 // max_date:int
	Date     int32 // date:int
}

type TL_updateEncryption

type TL_updateEncryption struct {
	Chat TL    // chat:EncryptedChat
	Date int32 // date:int
}

type TL_updateInlineBotCallbackQuery

type TL_updateInlineBotCallbackQuery struct {
	Flags           int32
	Query_id        int64  // query_id:long
	User_id         int32  // user_id:int
	Msg_id          TL     // msg_id:InputBotInlineMessageID
	Chat_instance   int64  // chat_instance:long
	Data            []byte // data:flags.0?bytes
	Game_short_name string // game_short_name:flags.1?string
}

type TL_updateMessageID

type TL_updateMessageID struct {
	Id        int32 // Id:int
	Random_id int64 // random_id:long
}

type TL_updateNewChannelMessage

type TL_updateNewChannelMessage struct {
	Message   TL    // message:Message
	Pts       int32 // pts:int
	Pts_count int32 // pts_count:int
}

type TL_updateNewEncryptedMessage

type TL_updateNewEncryptedMessage struct {
	Message TL    // message:EncryptedMessage
	Qts     int32 // qts:int
}

type TL_updateNewMessage

type TL_updateNewMessage struct {
	Message   TL    // message:Message
	Pts       int32 // pts:int
	Pts_count int32 // pts_count:int
}

type TL_updateNewStickerSet

type TL_updateNewStickerSet struct {
	Stickerset TL // stickerset:messages.StickerSet
}

type TL_updateNotifySettings

type TL_updateNotifySettings struct {
	Peer            TL // peer:NotifyPeer
	Notify_settings TL // notify_settings:PeerNotifySettings
}

type TL_updatePhoneCall

type TL_updatePhoneCall struct {
	Phone_call TL // phone_call:PhoneCall
}

type TL_updatePinnedDialogs

type TL_updatePinnedDialogs struct {
	Flags int32
	Order []TL // order:flags.0?Vector<Peer>
}

type TL_updatePrivacy

type TL_updatePrivacy struct {
	Key   TL   // key:PrivacyKey
	Rules []TL // rules:Vector<PrivacyRule>
}

type TL_updatePtsChanged

type TL_updatePtsChanged struct {
}

type TL_updateReadChannelInbox

type TL_updateReadChannelInbox struct {
	Channel_id int32 // channel_id:int
	Max_id     int32 // max_id:int
}

type TL_updateReadChannelOutbox

type TL_updateReadChannelOutbox struct {
	Channel_id int32 // channel_id:int
	Max_id     int32 // max_id:int
}

type TL_updateReadFeaturedStickers

type TL_updateReadFeaturedStickers struct {
}

type TL_updateReadHistoryInbox

type TL_updateReadHistoryInbox struct {
	Peer      TL    // peer:Peer
	Max_id    int32 // max_id:int
	Pts       int32 // pts:int
	Pts_count int32 // pts_count:int
}

type TL_updateReadHistoryOutbox

type TL_updateReadHistoryOutbox struct {
	Peer      TL    // peer:Peer
	Max_id    int32 // max_id:int
	Pts       int32 // pts:int
	Pts_count int32 // pts_count:int
}

type TL_updateReadMessagesContents

type TL_updateReadMessagesContents struct {
	Messages  []int32 // messages:Vector<int>
	Pts       int32   // pts:int
	Pts_count int32   // pts_count:int
}

type TL_updateRecentStickers

type TL_updateRecentStickers struct {
}

type TL_updateSavedGifs

type TL_updateSavedGifs struct {
}

type TL_updateServiceNotification

type TL_updateServiceNotification struct {
	Flags      int32
	Popup      bool   // popup:flags.0?true
	Inbox_date int32  // inbox_date:flags.1?int
	Code_type  string // type:string
	Message    string // message:string
	Media      TL     // media:MessageMedia
	Entities   []TL   // entities:Vector<MessageEntity>
}

type TL_updateShort

type TL_updateShort struct {
	Update TL    // update:Update
	Date   int32 // date:int
}

type TL_updateShortChatMessage

type TL_updateShortChatMessage struct {
	Flags           int32
	Out             bool   // out:flags.1?true
	Mentioned       bool   // mentioned:flags.4?true
	Media_unread    bool   // media_unread:flags.5?true
	Silent          bool   // silent:flags.13?true
	Id              int32  // Id:int
	From_id         int32  // from_id:int
	Chat_id         int32  // chat_id:int
	Message         string // message:string
	Pts             int32  // pts:int
	Pts_count       int32  // pts_count:int
	Date            int32  // date:int
	Fwd_from        TL     // fwd_from:flags.2?MessageFwdHeader
	Via_bot_id      int32  // via_bot_id:flags.11?int
	Reply_to_msg_id int32  // reply_to_msg_id:flags.3?int
	Entities        []TL   // entities:flags.7?Vector<MessageEntity>
}

type TL_updateShortMessage

type TL_updateShortMessage struct {
	Flags           int32
	Out             bool   // out:flags.1?true
	Mentioned       bool   // mentioned:flags.4?true
	Media_unread    bool   // media_unread:flags.5?true
	Silent          bool   // silent:flags.13?true
	Id              int32  // Id:int
	User_id         int32  // user_id:int
	Message         string // message:string
	Pts             int32  // pts:int
	Pts_count       int32  // pts_count:int
	Date            int32  // date:int
	Fwd_from        TL     // fwd_from:flags.2?MessageFwdHeader
	Via_bot_id      int32  // via_bot_id:flags.11?int
	Reply_to_msg_id int32  // reply_to_msg_id:flags.3?int
	Entities        []TL   // entities:flags.7?Vector<MessageEntity>
}

type TL_updateShortSentMessage

type TL_updateShortSentMessage struct {
	Flags     int32
	Out       bool  // out:flags.1?true
	Id        int32 // Id:int
	Pts       int32 // pts:int
	Pts_count int32 // pts_count:int
	Date      int32 // date:int
	Media     TL    // media:flags.9?MessageMedia
	Entities  []TL  // entities:flags.7?Vector<MessageEntity>
}

type TL_updateStickerSets

type TL_updateStickerSets struct {
}

type TL_updateStickerSetsOrder

type TL_updateStickerSetsOrder struct {
	Flags int32
	Masks bool    // masks:flags.0?true
	Order []int64 // order:Vector<long>
}

type TL_updateUserBlocked

type TL_updateUserBlocked struct {
	User_id int32 // user_id:int
	Blocked TL    // blocked:Bool
}

type TL_updateUserName

type TL_updateUserName struct {
	User_id    int32  // user_id:int
	First_name string // first_name:string
	Last_name  string // last_name:string
	Username   string // username:string
}

type TL_updateUserPhone

type TL_updateUserPhone struct {
	User_id int32  // user_id:int
	Phone   string // phone:string
}

type TL_updateUserPhoto

type TL_updateUserPhoto struct {
	User_id  int32 // user_id:int
	Date     int32 // date:int
	Photo    TL    // photo:UserProfilePhoto
	Previous TL    // previous:Bool
}

type TL_updateUserStatus

type TL_updateUserStatus struct {
	User_id int32 // user_id:int
	Status  TL    // status:UserStatus
}

type TL_updateUserTyping

type TL_updateUserTyping struct {
	User_id int32 // user_id:int
	Action  TL    // action:SendMessageAction
}

type TL_updateWebPage

type TL_updateWebPage struct {
	Webpage   TL    // webpage:WebPage
	Pts       int32 // pts:int
	Pts_count int32 // pts_count:int
}

type TL_updates

type TL_updates struct {
	Updates []TL  // updates:Vector<Update>
	Users   []TL  // users:Vector<User>
	Chats   []TL  // chats:Vector<Chat>
	Date    int32 // date:int
	Seq     int32 // seq:int
}

type TL_updatesCombined

type TL_updatesCombined struct {
	Updates   []TL  // updates:Vector<Update>
	Users     []TL  // users:Vector<User>
	Chats     []TL  // chats:Vector<Chat>
	Date      int32 // date:int
	Seq_start int32 // seq_start:int
	Seq       int32 // seq:int
}

type TL_updatesTooLong

type TL_updatesTooLong struct {
}

type TL_updates_channelDifference

type TL_updates_channelDifference struct {
	Flags         int32
	Final         bool  // final:flags.0?true
	Pts           int32 // pts:int
	Timeout       int32 // timeout:flags.1?int
	New_messages  []TL  // new_messages:Vector<Message>
	Other_updates []TL  // other_updates:Vector<Update>
	Chats         []TL  // chats:Vector<Chat>
	Users         []TL  // users:Vector<User>
}

type TL_updates_channelDifferenceEmpty

type TL_updates_channelDifferenceEmpty struct {
	Flags   int32
	Final   bool  // final:flags.0?true
	Pts     int32 // pts:int
	Timeout int32 // timeout:flags.1?int
}

type TL_updates_channelDifferenceTooLong

type TL_updates_channelDifferenceTooLong struct {
	Flags              int32
	Final              bool  // final:flags.0?true
	Pts                int32 // pts:int
	Timeout            int32 // timeout:flags.1?int
	Top_message        int32 // top_message:int
	Read_inbox_max_id  int32 // read_inbox_max_id:int
	Read_outbox_max_id int32 // read_outbox_max_id:int
	Unread_count       int32 // unread_count:int
	Messages           []TL  // messages:Vector<Message>
	Chats              []TL  // chats:Vector<Chat>
	Users              []TL  // users:Vector<User>
}

type TL_updates_difference

type TL_updates_difference struct {
	New_messages           []TL // new_messages:Vector<Message>
	New_encrypted_messages []TL // new_encrypted_messages:Vector<EncryptedMessage>
	Other_updates          []TL // other_updates:Vector<Update>
	Chats                  []TL // chats:Vector<Chat>
	Users                  []TL // users:Vector<User>
	State                  TL   // state:updates.State
}

type TL_updates_differenceEmpty

type TL_updates_differenceEmpty struct {
	Date int32 // date:int
	Seq  int32 // seq:int
}

type TL_updates_differenceSlice

type TL_updates_differenceSlice struct {
	New_messages           []TL // new_messages:Vector<Message>
	New_encrypted_messages []TL // new_encrypted_messages:Vector<EncryptedMessage>
	Other_updates          []TL // other_updates:Vector<Update>
	Chats                  []TL // chats:Vector<Chat>
	Users                  []TL // users:Vector<User>
	Intermediate_state     TL   // intermediate_state:updates.State
}

type TL_updates_differenceTooLong

type TL_updates_differenceTooLong struct {
	Pts int32 // pts:int
}

type TL_updates_getChannelDifference

type TL_updates_getChannelDifference struct {
	Flags   int32
	Force   bool  // force:flags.0?true
	Channel TL    // channel:InputChannel
	Filter  TL    // filter:ChannelMessagesFilter
	Pts     int32 // pts:int
	Limit   int32 // limit:int
}

type TL_updates_getDifference

type TL_updates_getDifference struct {
	Flags           int32
	Pts             int32 // pts:int
	Pts_total_limit int32 // pts_total_limit:flags.0?int
	Date            int32 // date:int
	Qts             int32 // qts:int
}

type TL_updates_getState

type TL_updates_getState struct {
}

type TL_updates_state

type TL_updates_state struct {
	Pts          int32 // pts:int
	Qts          int32 // qts:int
	Date         int32 // date:int
	Seq          int32 // seq:int
	Unread_count int32 // unread_count:int
}

type TL_upload_file

type TL_upload_file struct {
	Code_type TL     // type:storage.FileType
	Mtime     int32  // mtime:int
	Bytes     []byte // bytes:bytes
}

type TL_upload_getFile

type TL_upload_getFile struct {
	Location TL    // location:InputFileLocation
	Offset   int32 // offset:int
	Limit    int32 // limit:int
}

type TL_upload_getWebFile

type TL_upload_getWebFile struct {
	Location TL    // location:InputWebFileLocation
	Offset   int32 // offset:int
	Limit    int32 // limit:int
}

type TL_upload_saveBigFilePart

type TL_upload_saveBigFilePart struct {
	File_id          int64  // file_id:long
	File_part        int32  // file_part:int
	File_total_parts int32  // file_total_parts:int
	Bytes            []byte // bytes:bytes
}

type TL_upload_saveFilePart

type TL_upload_saveFilePart struct {
	File_id   int64  // file_id:long
	File_part int32  // file_part:int
	Bytes     []byte // bytes:bytes
}

type TL_upload_webFile

type TL_upload_webFile struct {
	Size      int32  // size:int
	Mime_type string // mime_type:string
	File_type TL     // file_type:storage.FileType
	Mtime     int32  // mtime:int
	Bytes     []byte // bytes:bytes
}

type TL_user

type TL_user struct {
	Flags                  int32
	Self                   bool   // self:flags.10?true
	Contact                bool   // contact:flags.11?true
	Mutual_contact         bool   // mutual_contact:flags.12?true
	Deleted                bool   // deleted:flags.13?true
	Bot                    bool   // bot:flags.14?true
	Bot_chat_history       bool   // bot_chat_history:flags.15?true
	Bot_nochats            bool   // bot_nochats:flags.16?true
	Verified               bool   // verified:flags.17?true
	Restricted             bool   // restricted:flags.18?true
	Min                    bool   // min:flags.20?true
	Bot_inline_geo         bool   // bot_inline_geo:flags.21?true
	Id                     int32  // Id:int
	Access_hash            int64  // access_hash:flags.0?long
	First_name             string // first_name:flags.1?string
	Last_name              string // last_name:flags.2?string
	Username               string // username:flags.3?string
	Phone                  string // phone:flags.4?string
	Photo                  TL     // photo:flags.5?UserProfilePhoto
	Status                 TL     // status:flags.6?UserStatus
	Bot_info_version       int32  // bot_info_version:flags.14?int
	Restriction_reason     string // restriction_reason:flags.18?string
	Bot_inline_placeholder string // bot_inline_placeholder:flags.19?string
}

type TL_userEmpty

type TL_userEmpty struct {
	Id int32 // Id:int
}

type TL_userFull

type TL_userFull struct {
	Flags                 int32
	Blocked               bool   // blocked:flags.0?true
	Phone_calls_available bool   // phone_calls_available:flags.4?true
	Phone_calls_private   bool   // phone_calls_private:flags.5?true
	User                  TL     // user:User
	About                 string // about:flags.1?string
	Link                  TL     // link:contacts.Link
	Profile_photo         TL     // profile_photo:flags.2?Photo
	Notify_settings       TL     // notify_settings:PeerNotifySettings
	Bot_info              TL     // bot_info:flags.3?BotInfo
	Common_chats_count    int32  // common_chats_count:int
}

type TL_userProfilePhoto

type TL_userProfilePhoto struct {
	Photo_id    int64 // photo_id:long
	Photo_small TL    // photo_small:FileLocation
	Photo_big   TL    // photo_big:FileLocation
}

type TL_userProfilePhotoEmpty

type TL_userProfilePhotoEmpty struct {
}

type TL_userStatusEmpty

type TL_userStatusEmpty struct {
}

type TL_userStatusLastMonth

type TL_userStatusLastMonth struct {
}

type TL_userStatusLastWeek

type TL_userStatusLastWeek struct {
}

type TL_userStatusOffline

type TL_userStatusOffline struct {
	Was_online int32 // was_online:int
}

type TL_userStatusOnline

type TL_userStatusOnline struct {
	Expires int32 // expires:int
}

type TL_userStatusRecently

type TL_userStatusRecently struct {
}

type TL_users_getFullUser

type TL_users_getFullUser struct {
	Id TL // Id:InputUser
}

type TL_users_getUsers

type TL_users_getUsers struct {
	Id []TL // Id:Vector<InputUser>
}

type TL_vector

type TL_vector []int32

vector#1cb5c415 {t:Type} # [ t ] = Vector t;

type TL_wallPaper

type TL_wallPaper struct {
	Id    int32  // Id:int
	Title string // title:string
	Sizes []TL   // sizes:Vector<PhotoSize>
	Color int32  // color:int
}

type TL_wallPaperSolid

type TL_wallPaperSolid struct {
	Id       int32  // Id:int
	Title    string // title:string
	Bg_color int32  // bg_color:int
	Color    int32  // color:int
}

type TL_webDocument

type TL_webDocument struct {
	Url         string // url:string
	Access_hash int64  // access_hash:long
	Size        int32  // size:int
	Mime_type   string // mime_type:string
	Attributes  []TL   // attributes:Vector<DocumentAttribute>
	Dc_id       int32  // dc_id:int
}

type TL_webPage

type TL_webPage struct {
	Flags        int32
	Id           int64  // Id:long
	Url          string // url:string
	Display_url  string // display_url:string
	Hash         int32  // Hash:int
	Code_type    string // type:flags.0?string
	Site_name    string // site_name:flags.1?string
	Title        string // title:flags.2?string
	Description  string // description:flags.3?string
	Photo        TL     // photo:flags.4?Photo
	Embed_url    string // embed_url:flags.5?string
	Embed_type   string // embed_type:flags.5?string
	Embed_width  int32  // embed_width:flags.6?int
	Embed_height int32  // embed_height:flags.6?int
	Duration     int32  // duration:flags.7?int
	Author       string // author:flags.8?string
	Document     TL     // document:flags.9?Document
	Cached_page  TL     // cached_page:flags.10?Page
}

type TL_webPageEmpty

type TL_webPageEmpty struct {
	Id int64 // Id:long
}

type TL_webPageNotModified

type TL_webPageNotModified struct {
}

type TL_webPagePending

type TL_webPagePending struct {
	Id   int64 // Id:long
	Date int32 // date:int
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL