Files
Leeksov 4647310322 GLEGram 12.5 — Initial public release
Based on Swiftgram 12.5 (Telegram iOS 12.5).
All GLEGram features ported and organized in GLEGram/ folder.

Features: Ghost Mode, Saved Deleted Messages, Content Protection Bypass,
Font Replacement, Fake Profile, Chat Export, Plugin System, and more.

See CHANGELOG_12.5.md for full details.
2026-04-06 09:48:12 +03:00

1754 lines
79 KiB
Swift

public extension Api {
enum BotBusinessConnection: TypeConstructorDescription {
public class Cons_botBusinessConnection: TypeConstructorDescription {
public var flags: Int32
public var connectionId: String
public var userId: Int64
public var dcId: Int32
public var date: Int32
public var rights: Api.BusinessBotRights?
public init(flags: Int32, connectionId: String, userId: Int64, dcId: Int32, date: Int32, rights: Api.BusinessBotRights?) {
self.flags = flags
self.connectionId = connectionId
self.userId = userId
self.dcId = dcId
self.date = date
self.rights = rights
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("botBusinessConnection", [("flags", self.flags as Any), ("connectionId", self.connectionId as Any), ("userId", self.userId as Any), ("dcId", self.dcId as Any), ("date", self.date as Any), ("rights", self.rights as Any)])
}
}
case botBusinessConnection(Cons_botBusinessConnection)
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
switch self {
case .botBusinessConnection(let _data):
if boxed {
buffer.appendInt32(-1892371723)
}
serializeInt32(_data.flags, buffer: buffer, boxed: false)
serializeString(_data.connectionId, buffer: buffer, boxed: false)
serializeInt64(_data.userId, buffer: buffer, boxed: false)
serializeInt32(_data.dcId, buffer: buffer, boxed: false)
serializeInt32(_data.date, buffer: buffer, boxed: false)
if Int(_data.flags) & Int(1 << 2) != 0 {
_data.rights!.serialize(buffer, true)
}
break
}
}
public func descriptionFields() -> (String, [(String, Any)]) {
switch self {
case .botBusinessConnection(let _data):
return ("botBusinessConnection", [("flags", _data.flags as Any), ("connectionId", _data.connectionId as Any), ("userId", _data.userId as Any), ("dcId", _data.dcId as Any), ("date", _data.date as Any), ("rights", _data.rights as Any)])
}
}
public static func parse_botBusinessConnection(_ reader: BufferReader) -> BotBusinessConnection? {
var _1: Int32?
_1 = reader.readInt32()
var _2: String?
_2 = parseString(reader)
var _3: Int64?
_3 = reader.readInt64()
var _4: Int32?
_4 = reader.readInt32()
var _5: Int32?
_5 = reader.readInt32()
var _6: Api.BusinessBotRights?
if Int(_1!) & Int(1 << 2) != 0 {
if let signature = reader.readInt32() {
_6 = Api.parse(reader, signature: signature) as? Api.BusinessBotRights
}
}
let _c1 = _1 != nil
let _c2 = _2 != nil
let _c3 = _3 != nil
let _c4 = _4 != nil
let _c5 = _5 != nil
let _c6 = (Int(_1!) & Int(1 << 2) == 0) || _6 != nil
if _c1 && _c2 && _c3 && _c4 && _c5 && _c6 {
return Api.BotBusinessConnection.botBusinessConnection(Cons_botBusinessConnection(flags: _1!, connectionId: _2!, userId: _3!, dcId: _4!, date: _5!, rights: _6))
}
else {
return nil
}
}
}
}
public extension Api {
enum BotCommand: TypeConstructorDescription {
public class Cons_botCommand: TypeConstructorDescription {
public var command: String
public var description: String
public init(command: String, description: String) {
self.command = command
self.description = description
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("botCommand", [("command", self.command as Any), ("description", self.description as Any)])
}
}
case botCommand(Cons_botCommand)
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
switch self {
case .botCommand(let _data):
if boxed {
buffer.appendInt32(-1032140601)
}
serializeString(_data.command, buffer: buffer, boxed: false)
serializeString(_data.description, buffer: buffer, boxed: false)
break
}
}
public func descriptionFields() -> (String, [(String, Any)]) {
switch self {
case .botCommand(let _data):
return ("botCommand", [("command", _data.command as Any), ("description", _data.description as Any)])
}
}
public static func parse_botCommand(_ reader: BufferReader) -> BotCommand? {
var _1: String?
_1 = parseString(reader)
var _2: String?
_2 = parseString(reader)
let _c1 = _1 != nil
let _c2 = _2 != nil
if _c1 && _c2 {
return Api.BotCommand.botCommand(Cons_botCommand(command: _1!, description: _2!))
}
else {
return nil
}
}
}
}
public extension Api {
indirect enum BotCommandScope: TypeConstructorDescription {
public class Cons_botCommandScopePeer: TypeConstructorDescription {
public var peer: Api.InputPeer
public init(peer: Api.InputPeer) {
self.peer = peer
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("botCommandScopePeer", [("peer", self.peer as Any)])
}
}
public class Cons_botCommandScopePeerAdmins: TypeConstructorDescription {
public var peer: Api.InputPeer
public init(peer: Api.InputPeer) {
self.peer = peer
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("botCommandScopePeerAdmins", [("peer", self.peer as Any)])
}
}
public class Cons_botCommandScopePeerUser: TypeConstructorDescription {
public var peer: Api.InputPeer
public var userId: Api.InputUser
public init(peer: Api.InputPeer, userId: Api.InputUser) {
self.peer = peer
self.userId = userId
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("botCommandScopePeerUser", [("peer", self.peer as Any), ("userId", self.userId as Any)])
}
}
case botCommandScopeChatAdmins
case botCommandScopeChats
case botCommandScopeDefault
case botCommandScopePeer(Cons_botCommandScopePeer)
case botCommandScopePeerAdmins(Cons_botCommandScopePeerAdmins)
case botCommandScopePeerUser(Cons_botCommandScopePeerUser)
case botCommandScopeUsers
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
switch self {
case .botCommandScopeChatAdmins:
if boxed {
buffer.appendInt32(-1180016534)
}
break
case .botCommandScopeChats:
if boxed {
buffer.appendInt32(1877059713)
}
break
case .botCommandScopeDefault:
if boxed {
buffer.appendInt32(795652779)
}
break
case .botCommandScopePeer(let _data):
if boxed {
buffer.appendInt32(-610432643)
}
_data.peer.serialize(buffer, true)
break
case .botCommandScopePeerAdmins(let _data):
if boxed {
buffer.appendInt32(1071145937)
}
_data.peer.serialize(buffer, true)
break
case .botCommandScopePeerUser(let _data):
if boxed {
buffer.appendInt32(169026035)
}
_data.peer.serialize(buffer, true)
_data.userId.serialize(buffer, true)
break
case .botCommandScopeUsers:
if boxed {
buffer.appendInt32(1011811544)
}
break
}
}
public func descriptionFields() -> (String, [(String, Any)]) {
switch self {
case .botCommandScopeChatAdmins:
return ("botCommandScopeChatAdmins", [])
case .botCommandScopeChats:
return ("botCommandScopeChats", [])
case .botCommandScopeDefault:
return ("botCommandScopeDefault", [])
case .botCommandScopePeer(let _data):
return ("botCommandScopePeer", [("peer", _data.peer as Any)])
case .botCommandScopePeerAdmins(let _data):
return ("botCommandScopePeerAdmins", [("peer", _data.peer as Any)])
case .botCommandScopePeerUser(let _data):
return ("botCommandScopePeerUser", [("peer", _data.peer as Any), ("userId", _data.userId as Any)])
case .botCommandScopeUsers:
return ("botCommandScopeUsers", [])
}
}
public static func parse_botCommandScopeChatAdmins(_ reader: BufferReader) -> BotCommandScope? {
return Api.BotCommandScope.botCommandScopeChatAdmins
}
public static func parse_botCommandScopeChats(_ reader: BufferReader) -> BotCommandScope? {
return Api.BotCommandScope.botCommandScopeChats
}
public static func parse_botCommandScopeDefault(_ reader: BufferReader) -> BotCommandScope? {
return Api.BotCommandScope.botCommandScopeDefault
}
public static func parse_botCommandScopePeer(_ reader: BufferReader) -> BotCommandScope? {
var _1: Api.InputPeer?
if let signature = reader.readInt32() {
_1 = Api.parse(reader, signature: signature) as? Api.InputPeer
}
let _c1 = _1 != nil
if _c1 {
return Api.BotCommandScope.botCommandScopePeer(Cons_botCommandScopePeer(peer: _1!))
}
else {
return nil
}
}
public static func parse_botCommandScopePeerAdmins(_ reader: BufferReader) -> BotCommandScope? {
var _1: Api.InputPeer?
if let signature = reader.readInt32() {
_1 = Api.parse(reader, signature: signature) as? Api.InputPeer
}
let _c1 = _1 != nil
if _c1 {
return Api.BotCommandScope.botCommandScopePeerAdmins(Cons_botCommandScopePeerAdmins(peer: _1!))
}
else {
return nil
}
}
public static func parse_botCommandScopePeerUser(_ reader: BufferReader) -> BotCommandScope? {
var _1: Api.InputPeer?
if let signature = reader.readInt32() {
_1 = Api.parse(reader, signature: signature) as? Api.InputPeer
}
var _2: Api.InputUser?
if let signature = reader.readInt32() {
_2 = Api.parse(reader, signature: signature) as? Api.InputUser
}
let _c1 = _1 != nil
let _c2 = _2 != nil
if _c1 && _c2 {
return Api.BotCommandScope.botCommandScopePeerUser(Cons_botCommandScopePeerUser(peer: _1!, userId: _2!))
}
else {
return nil
}
}
public static func parse_botCommandScopeUsers(_ reader: BufferReader) -> BotCommandScope? {
return Api.BotCommandScope.botCommandScopeUsers
}
}
}
public extension Api {
enum BotInfo: TypeConstructorDescription {
public class Cons_botInfo: TypeConstructorDescription {
public var flags: Int32
public var userId: Int64?
public var description: String?
public var descriptionPhoto: Api.Photo?
public var descriptionDocument: Api.Document?
public var commands: [Api.BotCommand]?
public var menuButton: Api.BotMenuButton?
public var privacyPolicyUrl: String?
public var appSettings: Api.BotAppSettings?
public var verifierSettings: Api.BotVerifierSettings?
public init(flags: Int32, userId: Int64?, description: String?, descriptionPhoto: Api.Photo?, descriptionDocument: Api.Document?, commands: [Api.BotCommand]?, menuButton: Api.BotMenuButton?, privacyPolicyUrl: String?, appSettings: Api.BotAppSettings?, verifierSettings: Api.BotVerifierSettings?) {
self.flags = flags
self.userId = userId
self.description = description
self.descriptionPhoto = descriptionPhoto
self.descriptionDocument = descriptionDocument
self.commands = commands
self.menuButton = menuButton
self.privacyPolicyUrl = privacyPolicyUrl
self.appSettings = appSettings
self.verifierSettings = verifierSettings
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("botInfo", [("flags", self.flags as Any), ("userId", self.userId as Any), ("description", self.description as Any), ("descriptionPhoto", self.descriptionPhoto as Any), ("descriptionDocument", self.descriptionDocument as Any), ("commands", self.commands as Any), ("menuButton", self.menuButton as Any), ("privacyPolicyUrl", self.privacyPolicyUrl as Any), ("appSettings", self.appSettings as Any), ("verifierSettings", self.verifierSettings as Any)])
}
}
case botInfo(Cons_botInfo)
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
switch self {
case .botInfo(let _data):
if boxed {
buffer.appendInt32(1300890265)
}
serializeInt32(_data.flags, buffer: buffer, boxed: false)
if Int(_data.flags) & Int(1 << 0) != 0 {
serializeInt64(_data.userId!, buffer: buffer, boxed: false)
}
if Int(_data.flags) & Int(1 << 1) != 0 {
serializeString(_data.description!, buffer: buffer, boxed: false)
}
if Int(_data.flags) & Int(1 << 4) != 0 {
_data.descriptionPhoto!.serialize(buffer, true)
}
if Int(_data.flags) & Int(1 << 5) != 0 {
_data.descriptionDocument!.serialize(buffer, true)
}
if Int(_data.flags) & Int(1 << 2) != 0 {
buffer.appendInt32(481674261)
buffer.appendInt32(Int32(_data.commands!.count))
for item in _data.commands! {
item.serialize(buffer, true)
}
}
if Int(_data.flags) & Int(1 << 3) != 0 {
_data.menuButton!.serialize(buffer, true)
}
if Int(_data.flags) & Int(1 << 7) != 0 {
serializeString(_data.privacyPolicyUrl!, buffer: buffer, boxed: false)
}
if Int(_data.flags) & Int(1 << 8) != 0 {
_data.appSettings!.serialize(buffer, true)
}
if Int(_data.flags) & Int(1 << 9) != 0 {
_data.verifierSettings!.serialize(buffer, true)
}
break
}
}
public func descriptionFields() -> (String, [(String, Any)]) {
switch self {
case .botInfo(let _data):
return ("botInfo", [("flags", _data.flags as Any), ("userId", _data.userId as Any), ("description", _data.description as Any), ("descriptionPhoto", _data.descriptionPhoto as Any), ("descriptionDocument", _data.descriptionDocument as Any), ("commands", _data.commands as Any), ("menuButton", _data.menuButton as Any), ("privacyPolicyUrl", _data.privacyPolicyUrl as Any), ("appSettings", _data.appSettings as Any), ("verifierSettings", _data.verifierSettings as Any)])
}
}
public static func parse_botInfo(_ reader: BufferReader) -> BotInfo? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Int64?
if Int(_1!) & Int(1 << 0) != 0 {
_2 = reader.readInt64()
}
var _3: String?
if Int(_1!) & Int(1 << 1) != 0 {
_3 = parseString(reader)
}
var _4: Api.Photo?
if Int(_1!) & Int(1 << 4) != 0 {
if let signature = reader.readInt32() {
_4 = Api.parse(reader, signature: signature) as? Api.Photo
}
}
var _5: Api.Document?
if Int(_1!) & Int(1 << 5) != 0 {
if let signature = reader.readInt32() {
_5 = Api.parse(reader, signature: signature) as? Api.Document
}
}
var _6: [Api.BotCommand]?
if Int(_1!) & Int(1 << 2) != 0 {
if let _ = reader.readInt32() {
_6 = Api.parseVector(reader, elementSignature: 0, elementType: Api.BotCommand.self)
}
}
var _7: Api.BotMenuButton?
if Int(_1!) & Int(1 << 3) != 0 {
if let signature = reader.readInt32() {
_7 = Api.parse(reader, signature: signature) as? Api.BotMenuButton
}
}
var _8: String?
if Int(_1!) & Int(1 << 7) != 0 {
_8 = parseString(reader)
}
var _9: Api.BotAppSettings?
if Int(_1!) & Int(1 << 8) != 0 {
if let signature = reader.readInt32() {
_9 = Api.parse(reader, signature: signature) as? Api.BotAppSettings
}
}
var _10: Api.BotVerifierSettings?
if Int(_1!) & Int(1 << 9) != 0 {
if let signature = reader.readInt32() {
_10 = Api.parse(reader, signature: signature) as? Api.BotVerifierSettings
}
}
let _c1 = _1 != nil
let _c2 = (Int(_1!) & Int(1 << 0) == 0) || _2 != nil
let _c3 = (Int(_1!) & Int(1 << 1) == 0) || _3 != nil
let _c4 = (Int(_1!) & Int(1 << 4) == 0) || _4 != nil
let _c5 = (Int(_1!) & Int(1 << 5) == 0) || _5 != nil
let _c6 = (Int(_1!) & Int(1 << 2) == 0) || _6 != nil
let _c7 = (Int(_1!) & Int(1 << 3) == 0) || _7 != nil
let _c8 = (Int(_1!) & Int(1 << 7) == 0) || _8 != nil
let _c9 = (Int(_1!) & Int(1 << 8) == 0) || _9 != nil
let _c10 = (Int(_1!) & Int(1 << 9) == 0) || _10 != nil
if _c1 && _c2 && _c3 && _c4 && _c5 && _c6 && _c7 && _c8 && _c9 && _c10 {
return Api.BotInfo.botInfo(Cons_botInfo(flags: _1!, userId: _2, description: _3, descriptionPhoto: _4, descriptionDocument: _5, commands: _6, menuButton: _7, privacyPolicyUrl: _8, appSettings: _9, verifierSettings: _10))
}
else {
return nil
}
}
}
}
public extension Api {
enum BotInlineMessage: TypeConstructorDescription {
public class Cons_botInlineMessageMediaAuto: TypeConstructorDescription {
public var flags: Int32
public var message: String
public var entities: [Api.MessageEntity]?
public var replyMarkup: Api.ReplyMarkup?
public init(flags: Int32, message: String, entities: [Api.MessageEntity]?, replyMarkup: Api.ReplyMarkup?) {
self.flags = flags
self.message = message
self.entities = entities
self.replyMarkup = replyMarkup
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("botInlineMessageMediaAuto", [("flags", self.flags as Any), ("message", self.message as Any), ("entities", self.entities as Any), ("replyMarkup", self.replyMarkup as Any)])
}
}
public class Cons_botInlineMessageMediaContact: TypeConstructorDescription {
public var flags: Int32
public var phoneNumber: String
public var firstName: String
public var lastName: String
public var vcard: String
public var replyMarkup: Api.ReplyMarkup?
public init(flags: Int32, phoneNumber: String, firstName: String, lastName: String, vcard: String, replyMarkup: Api.ReplyMarkup?) {
self.flags = flags
self.phoneNumber = phoneNumber
self.firstName = firstName
self.lastName = lastName
self.vcard = vcard
self.replyMarkup = replyMarkup
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("botInlineMessageMediaContact", [("flags", self.flags as Any), ("phoneNumber", self.phoneNumber as Any), ("firstName", self.firstName as Any), ("lastName", self.lastName as Any), ("vcard", self.vcard as Any), ("replyMarkup", self.replyMarkup as Any)])
}
}
public class Cons_botInlineMessageMediaGeo: TypeConstructorDescription {
public var flags: Int32
public var geo: Api.GeoPoint
public var heading: Int32?
public var period: Int32?
public var proximityNotificationRadius: Int32?
public var replyMarkup: Api.ReplyMarkup?
public init(flags: Int32, geo: Api.GeoPoint, heading: Int32?, period: Int32?, proximityNotificationRadius: Int32?, replyMarkup: Api.ReplyMarkup?) {
self.flags = flags
self.geo = geo
self.heading = heading
self.period = period
self.proximityNotificationRadius = proximityNotificationRadius
self.replyMarkup = replyMarkup
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("botInlineMessageMediaGeo", [("flags", self.flags as Any), ("geo", self.geo as Any), ("heading", self.heading as Any), ("period", self.period as Any), ("proximityNotificationRadius", self.proximityNotificationRadius as Any), ("replyMarkup", self.replyMarkup as Any)])
}
}
public class Cons_botInlineMessageMediaInvoice: TypeConstructorDescription {
public var flags: Int32
public var title: String
public var description: String
public var photo: Api.WebDocument?
public var currency: String
public var totalAmount: Int64
public var replyMarkup: Api.ReplyMarkup?
public init(flags: Int32, title: String, description: String, photo: Api.WebDocument?, currency: String, totalAmount: Int64, replyMarkup: Api.ReplyMarkup?) {
self.flags = flags
self.title = title
self.description = description
self.photo = photo
self.currency = currency
self.totalAmount = totalAmount
self.replyMarkup = replyMarkup
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("botInlineMessageMediaInvoice", [("flags", self.flags as Any), ("title", self.title as Any), ("description", self.description as Any), ("photo", self.photo as Any), ("currency", self.currency as Any), ("totalAmount", self.totalAmount as Any), ("replyMarkup", self.replyMarkup as Any)])
}
}
public class Cons_botInlineMessageMediaVenue: TypeConstructorDescription {
public var flags: Int32
public var geo: Api.GeoPoint
public var title: String
public var address: String
public var provider: String
public var venueId: String
public var venueType: String
public var replyMarkup: Api.ReplyMarkup?
public init(flags: Int32, geo: Api.GeoPoint, title: String, address: String, provider: String, venueId: String, venueType: String, replyMarkup: Api.ReplyMarkup?) {
self.flags = flags
self.geo = geo
self.title = title
self.address = address
self.provider = provider
self.venueId = venueId
self.venueType = venueType
self.replyMarkup = replyMarkup
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("botInlineMessageMediaVenue", [("flags", self.flags as Any), ("geo", self.geo as Any), ("title", self.title as Any), ("address", self.address as Any), ("provider", self.provider as Any), ("venueId", self.venueId as Any), ("venueType", self.venueType as Any), ("replyMarkup", self.replyMarkup as Any)])
}
}
public class Cons_botInlineMessageMediaWebPage: TypeConstructorDescription {
public var flags: Int32
public var message: String
public var entities: [Api.MessageEntity]?
public var url: String
public var replyMarkup: Api.ReplyMarkup?
public init(flags: Int32, message: String, entities: [Api.MessageEntity]?, url: String, replyMarkup: Api.ReplyMarkup?) {
self.flags = flags
self.message = message
self.entities = entities
self.url = url
self.replyMarkup = replyMarkup
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("botInlineMessageMediaWebPage", [("flags", self.flags as Any), ("message", self.message as Any), ("entities", self.entities as Any), ("url", self.url as Any), ("replyMarkup", self.replyMarkup as Any)])
}
}
public class Cons_botInlineMessageText: TypeConstructorDescription {
public var flags: Int32
public var message: String
public var entities: [Api.MessageEntity]?
public var replyMarkup: Api.ReplyMarkup?
public init(flags: Int32, message: String, entities: [Api.MessageEntity]?, replyMarkup: Api.ReplyMarkup?) {
self.flags = flags
self.message = message
self.entities = entities
self.replyMarkup = replyMarkup
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("botInlineMessageText", [("flags", self.flags as Any), ("message", self.message as Any), ("entities", self.entities as Any), ("replyMarkup", self.replyMarkup as Any)])
}
}
case botInlineMessageMediaAuto(Cons_botInlineMessageMediaAuto)
case botInlineMessageMediaContact(Cons_botInlineMessageMediaContact)
case botInlineMessageMediaGeo(Cons_botInlineMessageMediaGeo)
case botInlineMessageMediaInvoice(Cons_botInlineMessageMediaInvoice)
case botInlineMessageMediaVenue(Cons_botInlineMessageMediaVenue)
case botInlineMessageMediaWebPage(Cons_botInlineMessageMediaWebPage)
case botInlineMessageText(Cons_botInlineMessageText)
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
switch self {
case .botInlineMessageMediaAuto(let _data):
if boxed {
buffer.appendInt32(1984755728)
}
serializeInt32(_data.flags, buffer: buffer, boxed: false)
serializeString(_data.message, buffer: buffer, boxed: false)
if Int(_data.flags) & Int(1 << 1) != 0 {
buffer.appendInt32(481674261)
buffer.appendInt32(Int32(_data.entities!.count))
for item in _data.entities! {
item.serialize(buffer, true)
}
}
if Int(_data.flags) & Int(1 << 2) != 0 {
_data.replyMarkup!.serialize(buffer, true)
}
break
case .botInlineMessageMediaContact(let _data):
if boxed {
buffer.appendInt32(416402882)
}
serializeInt32(_data.flags, buffer: buffer, boxed: false)
serializeString(_data.phoneNumber, buffer: buffer, boxed: false)
serializeString(_data.firstName, buffer: buffer, boxed: false)
serializeString(_data.lastName, buffer: buffer, boxed: false)
serializeString(_data.vcard, buffer: buffer, boxed: false)
if Int(_data.flags) & Int(1 << 2) != 0 {
_data.replyMarkup!.serialize(buffer, true)
}
break
case .botInlineMessageMediaGeo(let _data):
if boxed {
buffer.appendInt32(85477117)
}
serializeInt32(_data.flags, buffer: buffer, boxed: false)
_data.geo.serialize(buffer, true)
if Int(_data.flags) & Int(1 << 0) != 0 {
serializeInt32(_data.heading!, buffer: buffer, boxed: false)
}
if Int(_data.flags) & Int(1 << 1) != 0 {
serializeInt32(_data.period!, buffer: buffer, boxed: false)
}
if Int(_data.flags) & Int(1 << 3) != 0 {
serializeInt32(_data.proximityNotificationRadius!, buffer: buffer, boxed: false)
}
if Int(_data.flags) & Int(1 << 2) != 0 {
_data.replyMarkup!.serialize(buffer, true)
}
break
case .botInlineMessageMediaInvoice(let _data):
if boxed {
buffer.appendInt32(894081801)
}
serializeInt32(_data.flags, buffer: buffer, boxed: false)
serializeString(_data.title, buffer: buffer, boxed: false)
serializeString(_data.description, buffer: buffer, boxed: false)
if Int(_data.flags) & Int(1 << 0) != 0 {
_data.photo!.serialize(buffer, true)
}
serializeString(_data.currency, buffer: buffer, boxed: false)
serializeInt64(_data.totalAmount, buffer: buffer, boxed: false)
if Int(_data.flags) & Int(1 << 2) != 0 {
_data.replyMarkup!.serialize(buffer, true)
}
break
case .botInlineMessageMediaVenue(let _data):
if boxed {
buffer.appendInt32(-1970903652)
}
serializeInt32(_data.flags, buffer: buffer, boxed: false)
_data.geo.serialize(buffer, true)
serializeString(_data.title, buffer: buffer, boxed: false)
serializeString(_data.address, buffer: buffer, boxed: false)
serializeString(_data.provider, buffer: buffer, boxed: false)
serializeString(_data.venueId, buffer: buffer, boxed: false)
serializeString(_data.venueType, buffer: buffer, boxed: false)
if Int(_data.flags) & Int(1 << 2) != 0 {
_data.replyMarkup!.serialize(buffer, true)
}
break
case .botInlineMessageMediaWebPage(let _data):
if boxed {
buffer.appendInt32(-2137335386)
}
serializeInt32(_data.flags, buffer: buffer, boxed: false)
serializeString(_data.message, buffer: buffer, boxed: false)
if Int(_data.flags) & Int(1 << 1) != 0 {
buffer.appendInt32(481674261)
buffer.appendInt32(Int32(_data.entities!.count))
for item in _data.entities! {
item.serialize(buffer, true)
}
}
serializeString(_data.url, buffer: buffer, boxed: false)
if Int(_data.flags) & Int(1 << 2) != 0 {
_data.replyMarkup!.serialize(buffer, true)
}
break
case .botInlineMessageText(let _data):
if boxed {
buffer.appendInt32(-1937807902)
}
serializeInt32(_data.flags, buffer: buffer, boxed: false)
serializeString(_data.message, buffer: buffer, boxed: false)
if Int(_data.flags) & Int(1 << 1) != 0 {
buffer.appendInt32(481674261)
buffer.appendInt32(Int32(_data.entities!.count))
for item in _data.entities! {
item.serialize(buffer, true)
}
}
if Int(_data.flags) & Int(1 << 2) != 0 {
_data.replyMarkup!.serialize(buffer, true)
}
break
}
}
public func descriptionFields() -> (String, [(String, Any)]) {
switch self {
case .botInlineMessageMediaAuto(let _data):
return ("botInlineMessageMediaAuto", [("flags", _data.flags as Any), ("message", _data.message as Any), ("entities", _data.entities as Any), ("replyMarkup", _data.replyMarkup as Any)])
case .botInlineMessageMediaContact(let _data):
return ("botInlineMessageMediaContact", [("flags", _data.flags as Any), ("phoneNumber", _data.phoneNumber as Any), ("firstName", _data.firstName as Any), ("lastName", _data.lastName as Any), ("vcard", _data.vcard as Any), ("replyMarkup", _data.replyMarkup as Any)])
case .botInlineMessageMediaGeo(let _data):
return ("botInlineMessageMediaGeo", [("flags", _data.flags as Any), ("geo", _data.geo as Any), ("heading", _data.heading as Any), ("period", _data.period as Any), ("proximityNotificationRadius", _data.proximityNotificationRadius as Any), ("replyMarkup", _data.replyMarkup as Any)])
case .botInlineMessageMediaInvoice(let _data):
return ("botInlineMessageMediaInvoice", [("flags", _data.flags as Any), ("title", _data.title as Any), ("description", _data.description as Any), ("photo", _data.photo as Any), ("currency", _data.currency as Any), ("totalAmount", _data.totalAmount as Any), ("replyMarkup", _data.replyMarkup as Any)])
case .botInlineMessageMediaVenue(let _data):
return ("botInlineMessageMediaVenue", [("flags", _data.flags as Any), ("geo", _data.geo as Any), ("title", _data.title as Any), ("address", _data.address as Any), ("provider", _data.provider as Any), ("venueId", _data.venueId as Any), ("venueType", _data.venueType as Any), ("replyMarkup", _data.replyMarkup as Any)])
case .botInlineMessageMediaWebPage(let _data):
return ("botInlineMessageMediaWebPage", [("flags", _data.flags as Any), ("message", _data.message as Any), ("entities", _data.entities as Any), ("url", _data.url as Any), ("replyMarkup", _data.replyMarkup as Any)])
case .botInlineMessageText(let _data):
return ("botInlineMessageText", [("flags", _data.flags as Any), ("message", _data.message as Any), ("entities", _data.entities as Any), ("replyMarkup", _data.replyMarkup as Any)])
}
}
public static func parse_botInlineMessageMediaAuto(_ reader: BufferReader) -> BotInlineMessage? {
var _1: Int32?
_1 = reader.readInt32()
var _2: String?
_2 = parseString(reader)
var _3: [Api.MessageEntity]?
if Int(_1!) & Int(1 << 1) != 0 {
if let _ = reader.readInt32() {
_3 = Api.parseVector(reader, elementSignature: 0, elementType: Api.MessageEntity.self)
}
}
var _4: Api.ReplyMarkup?
if Int(_1!) & Int(1 << 2) != 0 {
if let signature = reader.readInt32() {
_4 = Api.parse(reader, signature: signature) as? Api.ReplyMarkup
}
}
let _c1 = _1 != nil
let _c2 = _2 != nil
let _c3 = (Int(_1!) & Int(1 << 1) == 0) || _3 != nil
let _c4 = (Int(_1!) & Int(1 << 2) == 0) || _4 != nil
if _c1 && _c2 && _c3 && _c4 {
return Api.BotInlineMessage.botInlineMessageMediaAuto(Cons_botInlineMessageMediaAuto(flags: _1!, message: _2!, entities: _3, replyMarkup: _4))
}
else {
return nil
}
}
public static func parse_botInlineMessageMediaContact(_ reader: BufferReader) -> BotInlineMessage? {
var _1: Int32?
_1 = reader.readInt32()
var _2: String?
_2 = parseString(reader)
var _3: String?
_3 = parseString(reader)
var _4: String?
_4 = parseString(reader)
var _5: String?
_5 = parseString(reader)
var _6: Api.ReplyMarkup?
if Int(_1!) & Int(1 << 2) != 0 {
if let signature = reader.readInt32() {
_6 = Api.parse(reader, signature: signature) as? Api.ReplyMarkup
}
}
let _c1 = _1 != nil
let _c2 = _2 != nil
let _c3 = _3 != nil
let _c4 = _4 != nil
let _c5 = _5 != nil
let _c6 = (Int(_1!) & Int(1 << 2) == 0) || _6 != nil
if _c1 && _c2 && _c3 && _c4 && _c5 && _c6 {
return Api.BotInlineMessage.botInlineMessageMediaContact(Cons_botInlineMessageMediaContact(flags: _1!, phoneNumber: _2!, firstName: _3!, lastName: _4!, vcard: _5!, replyMarkup: _6))
}
else {
return nil
}
}
public static func parse_botInlineMessageMediaGeo(_ reader: BufferReader) -> BotInlineMessage? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Api.GeoPoint?
if let signature = reader.readInt32() {
_2 = Api.parse(reader, signature: signature) as? Api.GeoPoint
}
var _3: Int32?
if Int(_1!) & Int(1 << 0) != 0 {
_3 = reader.readInt32()
}
var _4: Int32?
if Int(_1!) & Int(1 << 1) != 0 {
_4 = reader.readInt32()
}
var _5: Int32?
if Int(_1!) & Int(1 << 3) != 0 {
_5 = reader.readInt32()
}
var _6: Api.ReplyMarkup?
if Int(_1!) & Int(1 << 2) != 0 {
if let signature = reader.readInt32() {
_6 = Api.parse(reader, signature: signature) as? Api.ReplyMarkup
}
}
let _c1 = _1 != nil
let _c2 = _2 != nil
let _c3 = (Int(_1!) & Int(1 << 0) == 0) || _3 != nil
let _c4 = (Int(_1!) & Int(1 << 1) == 0) || _4 != nil
let _c5 = (Int(_1!) & Int(1 << 3) == 0) || _5 != nil
let _c6 = (Int(_1!) & Int(1 << 2) == 0) || _6 != nil
if _c1 && _c2 && _c3 && _c4 && _c5 && _c6 {
return Api.BotInlineMessage.botInlineMessageMediaGeo(Cons_botInlineMessageMediaGeo(flags: _1!, geo: _2!, heading: _3, period: _4, proximityNotificationRadius: _5, replyMarkup: _6))
}
else {
return nil
}
}
public static func parse_botInlineMessageMediaInvoice(_ reader: BufferReader) -> BotInlineMessage? {
var _1: Int32?
_1 = reader.readInt32()
var _2: String?
_2 = parseString(reader)
var _3: String?
_3 = parseString(reader)
var _4: Api.WebDocument?
if Int(_1!) & Int(1 << 0) != 0 {
if let signature = reader.readInt32() {
_4 = Api.parse(reader, signature: signature) as? Api.WebDocument
}
}
var _5: String?
_5 = parseString(reader)
var _6: Int64?
_6 = reader.readInt64()
var _7: Api.ReplyMarkup?
if Int(_1!) & Int(1 << 2) != 0 {
if let signature = reader.readInt32() {
_7 = Api.parse(reader, signature: signature) as? Api.ReplyMarkup
}
}
let _c1 = _1 != nil
let _c2 = _2 != nil
let _c3 = _3 != nil
let _c4 = (Int(_1!) & Int(1 << 0) == 0) || _4 != nil
let _c5 = _5 != nil
let _c6 = _6 != nil
let _c7 = (Int(_1!) & Int(1 << 2) == 0) || _7 != nil
if _c1 && _c2 && _c3 && _c4 && _c5 && _c6 && _c7 {
return Api.BotInlineMessage.botInlineMessageMediaInvoice(Cons_botInlineMessageMediaInvoice(flags: _1!, title: _2!, description: _3!, photo: _4, currency: _5!, totalAmount: _6!, replyMarkup: _7))
}
else {
return nil
}
}
public static func parse_botInlineMessageMediaVenue(_ reader: BufferReader) -> BotInlineMessage? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Api.GeoPoint?
if let signature = reader.readInt32() {
_2 = Api.parse(reader, signature: signature) as? Api.GeoPoint
}
var _3: String?
_3 = parseString(reader)
var _4: String?
_4 = parseString(reader)
var _5: String?
_5 = parseString(reader)
var _6: String?
_6 = parseString(reader)
var _7: String?
_7 = parseString(reader)
var _8: Api.ReplyMarkup?
if Int(_1!) & Int(1 << 2) != 0 {
if let signature = reader.readInt32() {
_8 = Api.parse(reader, signature: signature) as? Api.ReplyMarkup
}
}
let _c1 = _1 != nil
let _c2 = _2 != nil
let _c3 = _3 != nil
let _c4 = _4 != nil
let _c5 = _5 != nil
let _c6 = _6 != nil
let _c7 = _7 != nil
let _c8 = (Int(_1!) & Int(1 << 2) == 0) || _8 != nil
if _c1 && _c2 && _c3 && _c4 && _c5 && _c6 && _c7 && _c8 {
return Api.BotInlineMessage.botInlineMessageMediaVenue(Cons_botInlineMessageMediaVenue(flags: _1!, geo: _2!, title: _3!, address: _4!, provider: _5!, venueId: _6!, venueType: _7!, replyMarkup: _8))
}
else {
return nil
}
}
public static func parse_botInlineMessageMediaWebPage(_ reader: BufferReader) -> BotInlineMessage? {
var _1: Int32?
_1 = reader.readInt32()
var _2: String?
_2 = parseString(reader)
var _3: [Api.MessageEntity]?
if Int(_1!) & Int(1 << 1) != 0 {
if let _ = reader.readInt32() {
_3 = Api.parseVector(reader, elementSignature: 0, elementType: Api.MessageEntity.self)
}
}
var _4: String?
_4 = parseString(reader)
var _5: Api.ReplyMarkup?
if Int(_1!) & Int(1 << 2) != 0 {
if let signature = reader.readInt32() {
_5 = Api.parse(reader, signature: signature) as? Api.ReplyMarkup
}
}
let _c1 = _1 != nil
let _c2 = _2 != nil
let _c3 = (Int(_1!) & Int(1 << 1) == 0) || _3 != nil
let _c4 = _4 != nil
let _c5 = (Int(_1!) & Int(1 << 2) == 0) || _5 != nil
if _c1 && _c2 && _c3 && _c4 && _c5 {
return Api.BotInlineMessage.botInlineMessageMediaWebPage(Cons_botInlineMessageMediaWebPage(flags: _1!, message: _2!, entities: _3, url: _4!, replyMarkup: _5))
}
else {
return nil
}
}
public static func parse_botInlineMessageText(_ reader: BufferReader) -> BotInlineMessage? {
var _1: Int32?
_1 = reader.readInt32()
var _2: String?
_2 = parseString(reader)
var _3: [Api.MessageEntity]?
if Int(_1!) & Int(1 << 1) != 0 {
if let _ = reader.readInt32() {
_3 = Api.parseVector(reader, elementSignature: 0, elementType: Api.MessageEntity.self)
}
}
var _4: Api.ReplyMarkup?
if Int(_1!) & Int(1 << 2) != 0 {
if let signature = reader.readInt32() {
_4 = Api.parse(reader, signature: signature) as? Api.ReplyMarkup
}
}
let _c1 = _1 != nil
let _c2 = _2 != nil
let _c3 = (Int(_1!) & Int(1 << 1) == 0) || _3 != nil
let _c4 = (Int(_1!) & Int(1 << 2) == 0) || _4 != nil
if _c1 && _c2 && _c3 && _c4 {
return Api.BotInlineMessage.botInlineMessageText(Cons_botInlineMessageText(flags: _1!, message: _2!, entities: _3, replyMarkup: _4))
}
else {
return nil
}
}
}
}
public extension Api {
enum BotInlineResult: TypeConstructorDescription {
public class Cons_botInlineMediaResult: TypeConstructorDescription {
public var flags: Int32
public var id: String
public var type: String
public var photo: Api.Photo?
public var document: Api.Document?
public var title: String?
public var description: String?
public var sendMessage: Api.BotInlineMessage
public init(flags: Int32, id: String, type: String, photo: Api.Photo?, document: Api.Document?, title: String?, description: String?, sendMessage: Api.BotInlineMessage) {
self.flags = flags
self.id = id
self.type = type
self.photo = photo
self.document = document
self.title = title
self.description = description
self.sendMessage = sendMessage
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("botInlineMediaResult", [("flags", self.flags as Any), ("id", self.id as Any), ("type", self.type as Any), ("photo", self.photo as Any), ("document", self.document as Any), ("title", self.title as Any), ("description", self.description as Any), ("sendMessage", self.sendMessage as Any)])
}
}
public class Cons_botInlineResult: TypeConstructorDescription {
public var flags: Int32
public var id: String
public var type: String
public var title: String?
public var description: String?
public var url: String?
public var thumb: Api.WebDocument?
public var content: Api.WebDocument?
public var sendMessage: Api.BotInlineMessage
public init(flags: Int32, id: String, type: String, title: String?, description: String?, url: String?, thumb: Api.WebDocument?, content: Api.WebDocument?, sendMessage: Api.BotInlineMessage) {
self.flags = flags
self.id = id
self.type = type
self.title = title
self.description = description
self.url = url
self.thumb = thumb
self.content = content
self.sendMessage = sendMessage
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("botInlineResult", [("flags", self.flags as Any), ("id", self.id as Any), ("type", self.type as Any), ("title", self.title as Any), ("description", self.description as Any), ("url", self.url as Any), ("thumb", self.thumb as Any), ("content", self.content as Any), ("sendMessage", self.sendMessage as Any)])
}
}
case botInlineMediaResult(Cons_botInlineMediaResult)
case botInlineResult(Cons_botInlineResult)
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
switch self {
case .botInlineMediaResult(let _data):
if boxed {
buffer.appendInt32(400266251)
}
serializeInt32(_data.flags, buffer: buffer, boxed: false)
serializeString(_data.id, buffer: buffer, boxed: false)
serializeString(_data.type, buffer: buffer, boxed: false)
if Int(_data.flags) & Int(1 << 0) != 0 {
_data.photo!.serialize(buffer, true)
}
if Int(_data.flags) & Int(1 << 1) != 0 {
_data.document!.serialize(buffer, true)
}
if Int(_data.flags) & Int(1 << 2) != 0 {
serializeString(_data.title!, buffer: buffer, boxed: false)
}
if Int(_data.flags) & Int(1 << 3) != 0 {
serializeString(_data.description!, buffer: buffer, boxed: false)
}
_data.sendMessage.serialize(buffer, true)
break
case .botInlineResult(let _data):
if boxed {
buffer.appendInt32(295067450)
}
serializeInt32(_data.flags, buffer: buffer, boxed: false)
serializeString(_data.id, buffer: buffer, boxed: false)
serializeString(_data.type, buffer: buffer, boxed: false)
if Int(_data.flags) & Int(1 << 1) != 0 {
serializeString(_data.title!, buffer: buffer, boxed: false)
}
if Int(_data.flags) & Int(1 << 2) != 0 {
serializeString(_data.description!, buffer: buffer, boxed: false)
}
if Int(_data.flags) & Int(1 << 3) != 0 {
serializeString(_data.url!, buffer: buffer, boxed: false)
}
if Int(_data.flags) & Int(1 << 4) != 0 {
_data.thumb!.serialize(buffer, true)
}
if Int(_data.flags) & Int(1 << 5) != 0 {
_data.content!.serialize(buffer, true)
}
_data.sendMessage.serialize(buffer, true)
break
}
}
public func descriptionFields() -> (String, [(String, Any)]) {
switch self {
case .botInlineMediaResult(let _data):
return ("botInlineMediaResult", [("flags", _data.flags as Any), ("id", _data.id as Any), ("type", _data.type as Any), ("photo", _data.photo as Any), ("document", _data.document as Any), ("title", _data.title as Any), ("description", _data.description as Any), ("sendMessage", _data.sendMessage as Any)])
case .botInlineResult(let _data):
return ("botInlineResult", [("flags", _data.flags as Any), ("id", _data.id as Any), ("type", _data.type as Any), ("title", _data.title as Any), ("description", _data.description as Any), ("url", _data.url as Any), ("thumb", _data.thumb as Any), ("content", _data.content as Any), ("sendMessage", _data.sendMessage as Any)])
}
}
public static func parse_botInlineMediaResult(_ reader: BufferReader) -> BotInlineResult? {
var _1: Int32?
_1 = reader.readInt32()
var _2: String?
_2 = parseString(reader)
var _3: String?
_3 = parseString(reader)
var _4: Api.Photo?
if Int(_1!) & Int(1 << 0) != 0 {
if let signature = reader.readInt32() {
_4 = Api.parse(reader, signature: signature) as? Api.Photo
}
}
var _5: Api.Document?
if Int(_1!) & Int(1 << 1) != 0 {
if let signature = reader.readInt32() {
_5 = Api.parse(reader, signature: signature) as? Api.Document
}
}
var _6: String?
if Int(_1!) & Int(1 << 2) != 0 {
_6 = parseString(reader)
}
var _7: String?
if Int(_1!) & Int(1 << 3) != 0 {
_7 = parseString(reader)
}
var _8: Api.BotInlineMessage?
if let signature = reader.readInt32() {
_8 = Api.parse(reader, signature: signature) as? Api.BotInlineMessage
}
let _c1 = _1 != nil
let _c2 = _2 != nil
let _c3 = _3 != nil
let _c4 = (Int(_1!) & Int(1 << 0) == 0) || _4 != nil
let _c5 = (Int(_1!) & Int(1 << 1) == 0) || _5 != nil
let _c6 = (Int(_1!) & Int(1 << 2) == 0) || _6 != nil
let _c7 = (Int(_1!) & Int(1 << 3) == 0) || _7 != nil
let _c8 = _8 != nil
if _c1 && _c2 && _c3 && _c4 && _c5 && _c6 && _c7 && _c8 {
return Api.BotInlineResult.botInlineMediaResult(Cons_botInlineMediaResult(flags: _1!, id: _2!, type: _3!, photo: _4, document: _5, title: _6, description: _7, sendMessage: _8!))
}
else {
return nil
}
}
public static func parse_botInlineResult(_ reader: BufferReader) -> BotInlineResult? {
var _1: Int32?
_1 = reader.readInt32()
var _2: String?
_2 = parseString(reader)
var _3: String?
_3 = parseString(reader)
var _4: String?
if Int(_1!) & Int(1 << 1) != 0 {
_4 = parseString(reader)
}
var _5: String?
if Int(_1!) & Int(1 << 2) != 0 {
_5 = parseString(reader)
}
var _6: String?
if Int(_1!) & Int(1 << 3) != 0 {
_6 = parseString(reader)
}
var _7: Api.WebDocument?
if Int(_1!) & Int(1 << 4) != 0 {
if let signature = reader.readInt32() {
_7 = Api.parse(reader, signature: signature) as? Api.WebDocument
}
}
var _8: Api.WebDocument?
if Int(_1!) & Int(1 << 5) != 0 {
if let signature = reader.readInt32() {
_8 = Api.parse(reader, signature: signature) as? Api.WebDocument
}
}
var _9: Api.BotInlineMessage?
if let signature = reader.readInt32() {
_9 = Api.parse(reader, signature: signature) as? Api.BotInlineMessage
}
let _c1 = _1 != nil
let _c2 = _2 != nil
let _c3 = _3 != nil
let _c4 = (Int(_1!) & Int(1 << 1) == 0) || _4 != nil
let _c5 = (Int(_1!) & Int(1 << 2) == 0) || _5 != nil
let _c6 = (Int(_1!) & Int(1 << 3) == 0) || _6 != nil
let _c7 = (Int(_1!) & Int(1 << 4) == 0) || _7 != nil
let _c8 = (Int(_1!) & Int(1 << 5) == 0) || _8 != nil
let _c9 = _9 != nil
if _c1 && _c2 && _c3 && _c4 && _c5 && _c6 && _c7 && _c8 && _c9 {
return Api.BotInlineResult.botInlineResult(Cons_botInlineResult(flags: _1!, id: _2!, type: _3!, title: _4, description: _5, url: _6, thumb: _7, content: _8, sendMessage: _9!))
}
else {
return nil
}
}
}
}
public extension Api {
enum BotMenuButton: TypeConstructorDescription {
public class Cons_botMenuButton: TypeConstructorDescription {
public var text: String
public var url: String
public init(text: String, url: String) {
self.text = text
self.url = url
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("botMenuButton", [("text", self.text as Any), ("url", self.url as Any)])
}
}
case botMenuButton(Cons_botMenuButton)
case botMenuButtonCommands
case botMenuButtonDefault
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
switch self {
case .botMenuButton(let _data):
if boxed {
buffer.appendInt32(-944407322)
}
serializeString(_data.text, buffer: buffer, boxed: false)
serializeString(_data.url, buffer: buffer, boxed: false)
break
case .botMenuButtonCommands:
if boxed {
buffer.appendInt32(1113113093)
}
break
case .botMenuButtonDefault:
if boxed {
buffer.appendInt32(1966318984)
}
break
}
}
public func descriptionFields() -> (String, [(String, Any)]) {
switch self {
case .botMenuButton(let _data):
return ("botMenuButton", [("text", _data.text as Any), ("url", _data.url as Any)])
case .botMenuButtonCommands:
return ("botMenuButtonCommands", [])
case .botMenuButtonDefault:
return ("botMenuButtonDefault", [])
}
}
public static func parse_botMenuButton(_ reader: BufferReader) -> BotMenuButton? {
var _1: String?
_1 = parseString(reader)
var _2: String?
_2 = parseString(reader)
let _c1 = _1 != nil
let _c2 = _2 != nil
if _c1 && _c2 {
return Api.BotMenuButton.botMenuButton(Cons_botMenuButton(text: _1!, url: _2!))
}
else {
return nil
}
}
public static func parse_botMenuButtonCommands(_ reader: BufferReader) -> BotMenuButton? {
return Api.BotMenuButton.botMenuButtonCommands
}
public static func parse_botMenuButtonDefault(_ reader: BufferReader) -> BotMenuButton? {
return Api.BotMenuButton.botMenuButtonDefault
}
}
}
public extension Api {
indirect enum BotPreviewMedia: TypeConstructorDescription {
public class Cons_botPreviewMedia: TypeConstructorDescription {
public var date: Int32
public var media: Api.MessageMedia
public init(date: Int32, media: Api.MessageMedia) {
self.date = date
self.media = media
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("botPreviewMedia", [("date", self.date as Any), ("media", self.media as Any)])
}
}
case botPreviewMedia(Cons_botPreviewMedia)
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
switch self {
case .botPreviewMedia(let _data):
if boxed {
buffer.appendInt32(602479523)
}
serializeInt32(_data.date, buffer: buffer, boxed: false)
_data.media.serialize(buffer, true)
break
}
}
public func descriptionFields() -> (String, [(String, Any)]) {
switch self {
case .botPreviewMedia(let _data):
return ("botPreviewMedia", [("date", _data.date as Any), ("media", _data.media as Any)])
}
}
public static func parse_botPreviewMedia(_ reader: BufferReader) -> BotPreviewMedia? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Api.MessageMedia?
if let signature = reader.readInt32() {
_2 = Api.parse(reader, signature: signature) as? Api.MessageMedia
}
let _c1 = _1 != nil
let _c2 = _2 != nil
if _c1 && _c2 {
return Api.BotPreviewMedia.botPreviewMedia(Cons_botPreviewMedia(date: _1!, media: _2!))
}
else {
return nil
}
}
}
}
public extension Api {
enum BotVerification: TypeConstructorDescription {
public class Cons_botVerification: TypeConstructorDescription {
public var botId: Int64
public var icon: Int64
public var description: String
public init(botId: Int64, icon: Int64, description: String) {
self.botId = botId
self.icon = icon
self.description = description
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("botVerification", [("botId", self.botId as Any), ("icon", self.icon as Any), ("description", self.description as Any)])
}
}
case botVerification(Cons_botVerification)
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
switch self {
case .botVerification(let _data):
if boxed {
buffer.appendInt32(-113453988)
}
serializeInt64(_data.botId, buffer: buffer, boxed: false)
serializeInt64(_data.icon, buffer: buffer, boxed: false)
serializeString(_data.description, buffer: buffer, boxed: false)
break
}
}
public func descriptionFields() -> (String, [(String, Any)]) {
switch self {
case .botVerification(let _data):
return ("botVerification", [("botId", _data.botId as Any), ("icon", _data.icon as Any), ("description", _data.description as Any)])
}
}
public static func parse_botVerification(_ reader: BufferReader) -> BotVerification? {
var _1: Int64?
_1 = reader.readInt64()
var _2: Int64?
_2 = reader.readInt64()
var _3: String?
_3 = parseString(reader)
let _c1 = _1 != nil
let _c2 = _2 != nil
let _c3 = _3 != nil
if _c1 && _c2 && _c3 {
return Api.BotVerification.botVerification(Cons_botVerification(botId: _1!, icon: _2!, description: _3!))
}
else {
return nil
}
}
}
}
public extension Api {
enum BotVerifierSettings: TypeConstructorDescription {
public class Cons_botVerifierSettings: TypeConstructorDescription {
public var flags: Int32
public var icon: Int64
public var company: String
public var customDescription: String?
public init(flags: Int32, icon: Int64, company: String, customDescription: String?) {
self.flags = flags
self.icon = icon
self.company = company
self.customDescription = customDescription
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("botVerifierSettings", [("flags", self.flags as Any), ("icon", self.icon as Any), ("company", self.company as Any), ("customDescription", self.customDescription as Any)])
}
}
case botVerifierSettings(Cons_botVerifierSettings)
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
switch self {
case .botVerifierSettings(let _data):
if boxed {
buffer.appendInt32(-1328716265)
}
serializeInt32(_data.flags, buffer: buffer, boxed: false)
serializeInt64(_data.icon, buffer: buffer, boxed: false)
serializeString(_data.company, buffer: buffer, boxed: false)
if Int(_data.flags) & Int(1 << 0) != 0 {
serializeString(_data.customDescription!, buffer: buffer, boxed: false)
}
break
}
}
public func descriptionFields() -> (String, [(String, Any)]) {
switch self {
case .botVerifierSettings(let _data):
return ("botVerifierSettings", [("flags", _data.flags as Any), ("icon", _data.icon as Any), ("company", _data.company as Any), ("customDescription", _data.customDescription as Any)])
}
}
public static func parse_botVerifierSettings(_ reader: BufferReader) -> BotVerifierSettings? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Int64?
_2 = reader.readInt64()
var _3: String?
_3 = parseString(reader)
var _4: String?
if Int(_1!) & Int(1 << 0) != 0 {
_4 = parseString(reader)
}
let _c1 = _1 != nil
let _c2 = _2 != nil
let _c3 = _3 != nil
let _c4 = (Int(_1!) & Int(1 << 0) == 0) || _4 != nil
if _c1 && _c2 && _c3 && _c4 {
return Api.BotVerifierSettings.botVerifierSettings(Cons_botVerifierSettings(flags: _1!, icon: _2!, company: _3!, customDescription: _4))
}
else {
return nil
}
}
}
}
public extension Api {
enum BusinessAwayMessage: TypeConstructorDescription {
public class Cons_businessAwayMessage: TypeConstructorDescription {
public var flags: Int32
public var shortcutId: Int32
public var schedule: Api.BusinessAwayMessageSchedule
public var recipients: Api.BusinessRecipients
public init(flags: Int32, shortcutId: Int32, schedule: Api.BusinessAwayMessageSchedule, recipients: Api.BusinessRecipients) {
self.flags = flags
self.shortcutId = shortcutId
self.schedule = schedule
self.recipients = recipients
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("businessAwayMessage", [("flags", self.flags as Any), ("shortcutId", self.shortcutId as Any), ("schedule", self.schedule as Any), ("recipients", self.recipients as Any)])
}
}
case businessAwayMessage(Cons_businessAwayMessage)
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
switch self {
case .businessAwayMessage(let _data):
if boxed {
buffer.appendInt32(-283809188)
}
serializeInt32(_data.flags, buffer: buffer, boxed: false)
serializeInt32(_data.shortcutId, buffer: buffer, boxed: false)
_data.schedule.serialize(buffer, true)
_data.recipients.serialize(buffer, true)
break
}
}
public func descriptionFields() -> (String, [(String, Any)]) {
switch self {
case .businessAwayMessage(let _data):
return ("businessAwayMessage", [("flags", _data.flags as Any), ("shortcutId", _data.shortcutId as Any), ("schedule", _data.schedule as Any), ("recipients", _data.recipients as Any)])
}
}
public static func parse_businessAwayMessage(_ reader: BufferReader) -> BusinessAwayMessage? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Int32?
_2 = reader.readInt32()
var _3: Api.BusinessAwayMessageSchedule?
if let signature = reader.readInt32() {
_3 = Api.parse(reader, signature: signature) as? Api.BusinessAwayMessageSchedule
}
var _4: Api.BusinessRecipients?
if let signature = reader.readInt32() {
_4 = Api.parse(reader, signature: signature) as? Api.BusinessRecipients
}
let _c1 = _1 != nil
let _c2 = _2 != nil
let _c3 = _3 != nil
let _c4 = _4 != nil
if _c1 && _c2 && _c3 && _c4 {
return Api.BusinessAwayMessage.businessAwayMessage(Cons_businessAwayMessage(flags: _1!, shortcutId: _2!, schedule: _3!, recipients: _4!))
}
else {
return nil
}
}
}
}
public extension Api {
enum BusinessAwayMessageSchedule: TypeConstructorDescription {
public class Cons_businessAwayMessageScheduleCustom: TypeConstructorDescription {
public var startDate: Int32
public var endDate: Int32
public init(startDate: Int32, endDate: Int32) {
self.startDate = startDate
self.endDate = endDate
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("businessAwayMessageScheduleCustom", [("startDate", self.startDate as Any), ("endDate", self.endDate as Any)])
}
}
case businessAwayMessageScheduleAlways
case businessAwayMessageScheduleCustom(Cons_businessAwayMessageScheduleCustom)
case businessAwayMessageScheduleOutsideWorkHours
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
switch self {
case .businessAwayMessageScheduleAlways:
if boxed {
buffer.appendInt32(-910564679)
}
break
case .businessAwayMessageScheduleCustom(let _data):
if boxed {
buffer.appendInt32(-867328308)
}
serializeInt32(_data.startDate, buffer: buffer, boxed: false)
serializeInt32(_data.endDate, buffer: buffer, boxed: false)
break
case .businessAwayMessageScheduleOutsideWorkHours:
if boxed {
buffer.appendInt32(-1007487743)
}
break
}
}
public func descriptionFields() -> (String, [(String, Any)]) {
switch self {
case .businessAwayMessageScheduleAlways:
return ("businessAwayMessageScheduleAlways", [])
case .businessAwayMessageScheduleCustom(let _data):
return ("businessAwayMessageScheduleCustom", [("startDate", _data.startDate as Any), ("endDate", _data.endDate as Any)])
case .businessAwayMessageScheduleOutsideWorkHours:
return ("businessAwayMessageScheduleOutsideWorkHours", [])
}
}
public static func parse_businessAwayMessageScheduleAlways(_ reader: BufferReader) -> BusinessAwayMessageSchedule? {
return Api.BusinessAwayMessageSchedule.businessAwayMessageScheduleAlways
}
public static func parse_businessAwayMessageScheduleCustom(_ reader: BufferReader) -> BusinessAwayMessageSchedule? {
var _1: Int32?
_1 = reader.readInt32()
var _2: Int32?
_2 = reader.readInt32()
let _c1 = _1 != nil
let _c2 = _2 != nil
if _c1 && _c2 {
return Api.BusinessAwayMessageSchedule.businessAwayMessageScheduleCustom(Cons_businessAwayMessageScheduleCustom(startDate: _1!, endDate: _2!))
}
else {
return nil
}
}
public static func parse_businessAwayMessageScheduleOutsideWorkHours(_ reader: BufferReader) -> BusinessAwayMessageSchedule? {
return Api.BusinessAwayMessageSchedule.businessAwayMessageScheduleOutsideWorkHours
}
}
}
public extension Api {
enum BusinessBotRecipients: TypeConstructorDescription {
public class Cons_businessBotRecipients: TypeConstructorDescription {
public var flags: Int32
public var users: [Int64]?
public var excludeUsers: [Int64]?
public init(flags: Int32, users: [Int64]?, excludeUsers: [Int64]?) {
self.flags = flags
self.users = users
self.excludeUsers = excludeUsers
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("businessBotRecipients", [("flags", self.flags as Any), ("users", self.users as Any), ("excludeUsers", self.excludeUsers as Any)])
}
}
case businessBotRecipients(Cons_businessBotRecipients)
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
switch self {
case .businessBotRecipients(let _data):
if boxed {
buffer.appendInt32(-1198722189)
}
serializeInt32(_data.flags, buffer: buffer, boxed: false)
if Int(_data.flags) & Int(1 << 4) != 0 {
buffer.appendInt32(481674261)
buffer.appendInt32(Int32(_data.users!.count))
for item in _data.users! {
serializeInt64(item, buffer: buffer, boxed: false)
}
}
if Int(_data.flags) & Int(1 << 6) != 0 {
buffer.appendInt32(481674261)
buffer.appendInt32(Int32(_data.excludeUsers!.count))
for item in _data.excludeUsers! {
serializeInt64(item, buffer: buffer, boxed: false)
}
}
break
}
}
public func descriptionFields() -> (String, [(String, Any)]) {
switch self {
case .businessBotRecipients(let _data):
return ("businessBotRecipients", [("flags", _data.flags as Any), ("users", _data.users as Any), ("excludeUsers", _data.excludeUsers as Any)])
}
}
public static func parse_businessBotRecipients(_ reader: BufferReader) -> BusinessBotRecipients? {
var _1: Int32?
_1 = reader.readInt32()
var _2: [Int64]?
if Int(_1!) & Int(1 << 4) != 0 {
if let _ = reader.readInt32() {
_2 = Api.parseVector(reader, elementSignature: 570911930, elementType: Int64.self)
}
}
var _3: [Int64]?
if Int(_1!) & Int(1 << 6) != 0 {
if let _ = reader.readInt32() {
_3 = Api.parseVector(reader, elementSignature: 570911930, elementType: Int64.self)
}
}
let _c1 = _1 != nil
let _c2 = (Int(_1!) & Int(1 << 4) == 0) || _2 != nil
let _c3 = (Int(_1!) & Int(1 << 6) == 0) || _3 != nil
if _c1 && _c2 && _c3 {
return Api.BusinessBotRecipients.businessBotRecipients(Cons_businessBotRecipients(flags: _1!, users: _2, excludeUsers: _3))
}
else {
return nil
}
}
}
}
public extension Api {
enum BusinessBotRights: TypeConstructorDescription {
public class Cons_businessBotRights: TypeConstructorDescription {
public var flags: Int32
public init(flags: Int32) {
self.flags = flags
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("businessBotRights", [("flags", self.flags as Any)])
}
}
case businessBotRights(Cons_businessBotRights)
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
switch self {
case .businessBotRights(let _data):
if boxed {
buffer.appendInt32(-1604170505)
}
serializeInt32(_data.flags, buffer: buffer, boxed: false)
break
}
}
public func descriptionFields() -> (String, [(String, Any)]) {
switch self {
case .businessBotRights(let _data):
return ("businessBotRights", [("flags", _data.flags as Any)])
}
}
public static func parse_businessBotRights(_ reader: BufferReader) -> BusinessBotRights? {
var _1: Int32?
_1 = reader.readInt32()
let _c1 = _1 != nil
if _c1 {
return Api.BusinessBotRights.businessBotRights(Cons_businessBotRights(flags: _1!))
}
else {
return nil
}
}
}
}
public extension Api {
enum BusinessChatLink: TypeConstructorDescription {
public class Cons_businessChatLink: TypeConstructorDescription {
public var flags: Int32
public var link: String
public var message: String
public var entities: [Api.MessageEntity]?
public var title: String?
public var views: Int32
public init(flags: Int32, link: String, message: String, entities: [Api.MessageEntity]?, title: String?, views: Int32) {
self.flags = flags
self.link = link
self.message = message
self.entities = entities
self.title = title
self.views = views
}
public func descriptionFields() -> (String, [(String, Any)]) {
return ("businessChatLink", [("flags", self.flags as Any), ("link", self.link as Any), ("message", self.message as Any), ("entities", self.entities as Any), ("title", self.title as Any), ("views", self.views as Any)])
}
}
case businessChatLink(Cons_businessChatLink)
public func serialize(_ buffer: Buffer, _ boxed: Swift.Bool) {
switch self {
case .businessChatLink(let _data):
if boxed {
buffer.appendInt32(-1263638929)
}
serializeInt32(_data.flags, buffer: buffer, boxed: false)
serializeString(_data.link, buffer: buffer, boxed: false)
serializeString(_data.message, buffer: buffer, boxed: false)
if Int(_data.flags) & Int(1 << 0) != 0 {
buffer.appendInt32(481674261)
buffer.appendInt32(Int32(_data.entities!.count))
for item in _data.entities! {
item.serialize(buffer, true)
}
}
if Int(_data.flags) & Int(1 << 1) != 0 {
serializeString(_data.title!, buffer: buffer, boxed: false)
}
serializeInt32(_data.views, buffer: buffer, boxed: false)
break
}
}
public func descriptionFields() -> (String, [(String, Any)]) {
switch self {
case .businessChatLink(let _data):
return ("businessChatLink", [("flags", _data.flags as Any), ("link", _data.link as Any), ("message", _data.message as Any), ("entities", _data.entities as Any), ("title", _data.title as Any), ("views", _data.views as Any)])
}
}
public static func parse_businessChatLink(_ reader: BufferReader) -> BusinessChatLink? {
var _1: Int32?
_1 = reader.readInt32()
var _2: String?
_2 = parseString(reader)
var _3: String?
_3 = parseString(reader)
var _4: [Api.MessageEntity]?
if Int(_1!) & Int(1 << 0) != 0 {
if let _ = reader.readInt32() {
_4 = Api.parseVector(reader, elementSignature: 0, elementType: Api.MessageEntity.self)
}
}
var _5: String?
if Int(_1!) & Int(1 << 1) != 0 {
_5 = parseString(reader)
}
var _6: Int32?
_6 = reader.readInt32()
let _c1 = _1 != nil
let _c2 = _2 != nil
let _c3 = _3 != nil
let _c4 = (Int(_1!) & Int(1 << 0) == 0) || _4 != nil
let _c5 = (Int(_1!) & Int(1 << 1) == 0) || _5 != nil
let _c6 = _6 != nil
if _c1 && _c2 && _c3 && _c4 && _c5 && _c6 {
return Api.BusinessChatLink.businessChatLink(Cons_businessChatLink(flags: _1!, link: _2!, message: _3!, entities: _4, title: _5, views: _6!))
}
else {
return nil
}
}
}
}