diff --git a/WAMessage/WAMessage.d.ts b/WAMessage/index.d.ts similarity index 61% rename from WAMessage/WAMessage.d.ts rename to WAMessage/index.d.ts index 51d9d1b..5412364 100644 --- a/WAMessage/WAMessage.d.ts +++ b/WAMessage/index.d.ts @@ -2,7577 +2,109 @@ import * as $protobuf from "protobufjs"; /** Namespace proto. */ export namespace proto { - /** Properties of an AppVersion. */ - interface IAppVersion { + /** Properties of a MessageKey. */ + interface IMessageKey { - /** AppVersion primary */ - primary?: (number|null); + /** MessageKey remoteJid */ + remoteJid?: (string|null); - /** AppVersion secondary */ - secondary?: (number|null); + /** MessageKey fromMe */ + fromMe?: (boolean|null); - /** AppVersion tertiary */ - tertiary?: (number|null); + /** MessageKey id */ + id?: (string|null); - /** AppVersion quaternary */ - quaternary?: (number|null); - - /** AppVersion quinary */ - quinary?: (number|null); - } - - /** Represents an AppVersion. */ - class AppVersion implements IAppVersion { - - /** - * Constructs a new AppVersion. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IAppVersion); - - /** AppVersion primary. */ - public primary: number; - - /** AppVersion secondary. */ - public secondary: number; - - /** AppVersion tertiary. */ - public tertiary: number; - - /** AppVersion quaternary. */ - public quaternary: number; - - /** AppVersion quinary. */ - public quinary: number; - - /** - * Creates a new AppVersion instance using the specified properties. - * @param [properties] Properties to set - * @returns AppVersion instance - */ - public static create(properties?: proto.IAppVersion): proto.AppVersion; - - /** - * Encodes the specified AppVersion message. Does not implicitly {@link proto.AppVersion.verify|verify} messages. - * @param message AppVersion message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IAppVersion, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified AppVersion message, length delimited. Does not implicitly {@link proto.AppVersion.verify|verify} messages. - * @param message AppVersion message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IAppVersion, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes an AppVersion message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns AppVersion - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.AppVersion; - - /** - * Decodes an AppVersion message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns AppVersion - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.AppVersion; - - /** - * Verifies an AppVersion message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates an AppVersion message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns AppVersion - */ - public static fromObject(object: { [k: string]: any }): proto.AppVersion; - - /** - * Creates a plain object from an AppVersion message. Also converts values to other types if specified. - * @param message AppVersion - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.AppVersion, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this AppVersion to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a UserAgent. */ - interface IUserAgent { - - /** UserAgent platform */ - platform?: (proto.UserAgent.UserAgentPlatform|null); - - /** UserAgent appVersion */ - appVersion?: (proto.IAppVersion|null); - - /** UserAgent mcc */ - mcc?: (string|null); - - /** UserAgent mnc */ - mnc?: (string|null); - - /** UserAgent osVersion */ - osVersion?: (string|null); - - /** UserAgent manufacturer */ - manufacturer?: (string|null); - - /** UserAgent device */ - device?: (string|null); - - /** UserAgent osBuildNumber */ - osBuildNumber?: (string|null); - - /** UserAgent phoneId */ - phoneId?: (string|null); - - /** UserAgent releaseChannel */ - releaseChannel?: (proto.UserAgent.UserAgentReleaseChannel|null); - - /** UserAgent localeLanguageIso6391 */ - localeLanguageIso6391?: (string|null); - - /** UserAgent localeCountryIso31661Alpha2 */ - localeCountryIso31661Alpha2?: (string|null); - - /** UserAgent deviceBoard */ - deviceBoard?: (string|null); - } - - /** Represents a UserAgent. */ - class UserAgent implements IUserAgent { - - /** - * Constructs a new UserAgent. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IUserAgent); - - /** UserAgent platform. */ - public platform: proto.UserAgent.UserAgentPlatform; - - /** UserAgent appVersion. */ - public appVersion?: (proto.IAppVersion|null); - - /** UserAgent mcc. */ - public mcc: string; - - /** UserAgent mnc. */ - public mnc: string; - - /** UserAgent osVersion. */ - public osVersion: string; - - /** UserAgent manufacturer. */ - public manufacturer: string; - - /** UserAgent device. */ - public device: string; - - /** UserAgent osBuildNumber. */ - public osBuildNumber: string; - - /** UserAgent phoneId. */ - public phoneId: string; - - /** UserAgent releaseChannel. */ - public releaseChannel: proto.UserAgent.UserAgentReleaseChannel; - - /** UserAgent localeLanguageIso6391. */ - public localeLanguageIso6391: string; - - /** UserAgent localeCountryIso31661Alpha2. */ - public localeCountryIso31661Alpha2: string; - - /** UserAgent deviceBoard. */ - public deviceBoard: string; - - /** - * Creates a new UserAgent instance using the specified properties. - * @param [properties] Properties to set - * @returns UserAgent instance - */ - public static create(properties?: proto.IUserAgent): proto.UserAgent; - - /** - * Encodes the specified UserAgent message. Does not implicitly {@link proto.UserAgent.verify|verify} messages. - * @param message UserAgent message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IUserAgent, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified UserAgent message, length delimited. Does not implicitly {@link proto.UserAgent.verify|verify} messages. - * @param message UserAgent message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IUserAgent, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a UserAgent message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns UserAgent - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.UserAgent; - - /** - * Decodes a UserAgent message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns UserAgent - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.UserAgent; - - /** - * Verifies a UserAgent message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a UserAgent message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns UserAgent - */ - public static fromObject(object: { [k: string]: any }): proto.UserAgent; - - /** - * Creates a plain object from a UserAgent message. Also converts values to other types if specified. - * @param message UserAgent - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.UserAgent, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this UserAgent to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - namespace UserAgent { - - /** UserAgentPlatform enum. */ - enum UserAgentPlatform { - ANDROID = 0, - IOS = 1, - WINDOWS_PHONE = 2, - BLACKBERRY = 3, - BLACKBERRYX = 4, - S40 = 5, - S60 = 6, - PYTHON_CLIENT = 7, - TIZEN = 8, - ENTERPRISE = 9, - SMB_ANDROID = 10, - KAIOS = 11, - SMB_IOS = 12, - WINDOWS = 13, - WEB = 14, - PORTAL = 15, - GREEN_ANDROID = 16, - GREEN_IPHONE = 17, - BLUE_ANDROID = 18, - BLUE_IPHONE = 19, - FBLITE_ANDROID = 20, - MLITE_ANDROID = 21, - IGLITE_ANDROID = 22, - PAGE = 23, - MACOS = 24, - VR = 25 - } - - /** UserAgentReleaseChannel enum. */ - enum UserAgentReleaseChannel { - RELEASE = 0, - BETA = 1, - ALPHA = 2, - DEBUG = 3 - } - } - - /** Properties of a WebdPayload. */ - interface IWebdPayload { - - /** WebdPayload usesParticipantInKey */ - usesParticipantInKey?: (boolean|null); - - /** WebdPayload supportsStarredMessages */ - supportsStarredMessages?: (boolean|null); - - /** WebdPayload supportsDocumentMessages */ - supportsDocumentMessages?: (boolean|null); - - /** WebdPayload supportsUrlMessages */ - supportsUrlMessages?: (boolean|null); - - /** WebdPayload supportsMediaRetry */ - supportsMediaRetry?: (boolean|null); - - /** WebdPayload supportsE2EImage */ - supportsE2EImage?: (boolean|null); - - /** WebdPayload supportsE2EVideo */ - supportsE2EVideo?: (boolean|null); - - /** WebdPayload supportsE2EAudio */ - supportsE2EAudio?: (boolean|null); - - /** WebdPayload supportsE2EDocument */ - supportsE2EDocument?: (boolean|null); - - /** WebdPayload documentTypes */ - documentTypes?: (string|null); - - /** WebdPayload features */ - features?: (Uint8Array|null); - } - - /** Represents a WebdPayload. */ - class WebdPayload implements IWebdPayload { - - /** - * Constructs a new WebdPayload. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IWebdPayload); - - /** WebdPayload usesParticipantInKey. */ - public usesParticipantInKey: boolean; - - /** WebdPayload supportsStarredMessages. */ - public supportsStarredMessages: boolean; - - /** WebdPayload supportsDocumentMessages. */ - public supportsDocumentMessages: boolean; - - /** WebdPayload supportsUrlMessages. */ - public supportsUrlMessages: boolean; - - /** WebdPayload supportsMediaRetry. */ - public supportsMediaRetry: boolean; - - /** WebdPayload supportsE2EImage. */ - public supportsE2EImage: boolean; - - /** WebdPayload supportsE2EVideo. */ - public supportsE2EVideo: boolean; - - /** WebdPayload supportsE2EAudio. */ - public supportsE2EAudio: boolean; - - /** WebdPayload supportsE2EDocument. */ - public supportsE2EDocument: boolean; - - /** WebdPayload documentTypes. */ - public documentTypes: string; - - /** WebdPayload features. */ - public features: Uint8Array; - - /** - * Creates a new WebdPayload instance using the specified properties. - * @param [properties] Properties to set - * @returns WebdPayload instance - */ - public static create(properties?: proto.IWebdPayload): proto.WebdPayload; - - /** - * Encodes the specified WebdPayload message. Does not implicitly {@link proto.WebdPayload.verify|verify} messages. - * @param message WebdPayload message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IWebdPayload, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified WebdPayload message, length delimited. Does not implicitly {@link proto.WebdPayload.verify|verify} messages. - * @param message WebdPayload message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IWebdPayload, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a WebdPayload message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns WebdPayload - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.WebdPayload; - - /** - * Decodes a WebdPayload message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns WebdPayload - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.WebdPayload; - - /** - * Verifies a WebdPayload message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a WebdPayload message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns WebdPayload - */ - public static fromObject(object: { [k: string]: any }): proto.WebdPayload; - - /** - * Creates a plain object from a WebdPayload message. Also converts values to other types if specified. - * @param message WebdPayload - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.WebdPayload, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this WebdPayload to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a WebInfo. */ - interface IWebInfo { - - /** WebInfo refToken */ - refToken?: (string|null); - - /** WebInfo version */ - version?: (string|null); - - /** WebInfo webdPayload */ - webdPayload?: (proto.IWebdPayload|null); - - /** WebInfo webSubPlatform */ - webSubPlatform?: (proto.WebInfo.WebInfoWebSubPlatform|null); - } - - /** Represents a WebInfo. */ - class WebInfo implements IWebInfo { - - /** - * Constructs a new WebInfo. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IWebInfo); - - /** WebInfo refToken. */ - public refToken: string; - - /** WebInfo version. */ - public version: string; - - /** WebInfo webdPayload. */ - public webdPayload?: (proto.IWebdPayload|null); - - /** WebInfo webSubPlatform. */ - public webSubPlatform: proto.WebInfo.WebInfoWebSubPlatform; - - /** - * Creates a new WebInfo instance using the specified properties. - * @param [properties] Properties to set - * @returns WebInfo instance - */ - public static create(properties?: proto.IWebInfo): proto.WebInfo; - - /** - * Encodes the specified WebInfo message. Does not implicitly {@link proto.WebInfo.verify|verify} messages. - * @param message WebInfo message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IWebInfo, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified WebInfo message, length delimited. Does not implicitly {@link proto.WebInfo.verify|verify} messages. - * @param message WebInfo message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IWebInfo, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a WebInfo message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns WebInfo - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.WebInfo; - - /** - * Decodes a WebInfo message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns WebInfo - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.WebInfo; - - /** - * Verifies a WebInfo message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a WebInfo message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns WebInfo - */ - public static fromObject(object: { [k: string]: any }): proto.WebInfo; - - /** - * Creates a plain object from a WebInfo message. Also converts values to other types if specified. - * @param message WebInfo - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.WebInfo, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this WebInfo to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - namespace WebInfo { - - /** WebInfoWebSubPlatform enum. */ - enum WebInfoWebSubPlatform { - WEB_BROWSER = 0, - APP_STORE = 1, - WIN_STORE = 2, - DARWIN = 3, - WIN32 = 4 - } - } - - /** Properties of a DNSSource. */ - interface IDNSSource { - - /** DNSSource dnsMethod */ - dnsMethod?: (proto.DNSSource.DNSSourceDNSResolutionMethod|null); - - /** DNSSource appCached */ - appCached?: (boolean|null); - } - - /** Represents a DNSSource. */ - class DNSSource implements IDNSSource { - - /** - * Constructs a new DNSSource. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IDNSSource); - - /** DNSSource dnsMethod. */ - public dnsMethod: proto.DNSSource.DNSSourceDNSResolutionMethod; - - /** DNSSource appCached. */ - public appCached: boolean; - - /** - * Creates a new DNSSource instance using the specified properties. - * @param [properties] Properties to set - * @returns DNSSource instance - */ - public static create(properties?: proto.IDNSSource): proto.DNSSource; - - /** - * Encodes the specified DNSSource message. Does not implicitly {@link proto.DNSSource.verify|verify} messages. - * @param message DNSSource message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IDNSSource, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified DNSSource message, length delimited. Does not implicitly {@link proto.DNSSource.verify|verify} messages. - * @param message DNSSource message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IDNSSource, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a DNSSource message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns DNSSource - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.DNSSource; - - /** - * Decodes a DNSSource message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns DNSSource - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.DNSSource; - - /** - * Verifies a DNSSource message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a DNSSource message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns DNSSource - */ - public static fromObject(object: { [k: string]: any }): proto.DNSSource; - - /** - * Creates a plain object from a DNSSource message. Also converts values to other types if specified. - * @param message DNSSource - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.DNSSource, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this DNSSource to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - namespace DNSSource { - - /** DNSSourceDNSResolutionMethod enum. */ - enum DNSSourceDNSResolutionMethod { - SYSTEM = 0, - GOOGLE = 1, - HARDCODED = 2, - OVERRIDE = 3, - FALLBACK = 4 - } - } - - /** Properties of a CompanionRegData. */ - interface ICompanionRegData { - - /** CompanionRegData eRegid */ - eRegid?: (Uint8Array|null); - - /** CompanionRegData eKeytype */ - eKeytype?: (Uint8Array|null); - - /** CompanionRegData eIdent */ - eIdent?: (Uint8Array|null); - - /** CompanionRegData eSkeyId */ - eSkeyId?: (Uint8Array|null); - - /** CompanionRegData eSkeyVal */ - eSkeyVal?: (Uint8Array|null); - - /** CompanionRegData eSkeySig */ - eSkeySig?: (Uint8Array|null); - - /** CompanionRegData buildHash */ - buildHash?: (Uint8Array|null); - - /** CompanionRegData companionProps */ - companionProps?: (Uint8Array|null); - } - - /** Represents a CompanionRegData. */ - class CompanionRegData implements ICompanionRegData { - - /** - * Constructs a new CompanionRegData. - * @param [properties] Properties to set - */ - constructor(properties?: proto.ICompanionRegData); - - /** CompanionRegData eRegid. */ - public eRegid: Uint8Array; - - /** CompanionRegData eKeytype. */ - public eKeytype: Uint8Array; - - /** CompanionRegData eIdent. */ - public eIdent: Uint8Array; - - /** CompanionRegData eSkeyId. */ - public eSkeyId: Uint8Array; - - /** CompanionRegData eSkeyVal. */ - public eSkeyVal: Uint8Array; - - /** CompanionRegData eSkeySig. */ - public eSkeySig: Uint8Array; - - /** CompanionRegData buildHash. */ - public buildHash: Uint8Array; - - /** CompanionRegData companionProps. */ - public companionProps: Uint8Array; - - /** - * Creates a new CompanionRegData instance using the specified properties. - * @param [properties] Properties to set - * @returns CompanionRegData instance - */ - public static create(properties?: proto.ICompanionRegData): proto.CompanionRegData; - - /** - * Encodes the specified CompanionRegData message. Does not implicitly {@link proto.CompanionRegData.verify|verify} messages. - * @param message CompanionRegData message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.ICompanionRegData, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified CompanionRegData message, length delimited. Does not implicitly {@link proto.CompanionRegData.verify|verify} messages. - * @param message CompanionRegData message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.ICompanionRegData, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a CompanionRegData message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns CompanionRegData - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.CompanionRegData; - - /** - * Decodes a CompanionRegData message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns CompanionRegData - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.CompanionRegData; - - /** - * Verifies a CompanionRegData message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a CompanionRegData message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns CompanionRegData - */ - public static fromObject(object: { [k: string]: any }): proto.CompanionRegData; - - /** - * Creates a plain object from a CompanionRegData message. Also converts values to other types if specified. - * @param message CompanionRegData - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.CompanionRegData, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this CompanionRegData to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a ClientPayload. */ - interface IClientPayload { - - /** ClientPayload username */ - username?: (number|Long|null); - - /** ClientPayload passive */ - passive?: (boolean|null); - - /** ClientPayload clientFeatures */ - clientFeatures?: (proto.ClientPayload.ClientPayloadClientFeature[]|null); - - /** ClientPayload userAgent */ - userAgent?: (proto.IUserAgent|null); - - /** ClientPayload webInfo */ - webInfo?: (proto.IWebInfo|null); - - /** ClientPayload pushName */ - pushName?: (string|null); - - /** ClientPayload sessionId */ - sessionId?: (number|null); - - /** ClientPayload shortConnect */ - shortConnect?: (boolean|null); - - /** ClientPayload iosAppExtension */ - iosAppExtension?: (proto.ClientPayload.ClientPayloadIOSAppExtension|null); - - /** ClientPayload connectType */ - connectType?: (proto.ClientPayload.ClientPayloadConnectType|null); - - /** ClientPayload connectReason */ - connectReason?: (proto.ClientPayload.ClientPayloadConnectReason|null); - - /** ClientPayload shards */ - shards?: (number[]|null); - - /** ClientPayload dnsSource */ - dnsSource?: (proto.IDNSSource|null); - - /** ClientPayload connectAttemptCount */ - connectAttemptCount?: (number|null); - - /** ClientPayload agent */ - agent?: (number|null); - - /** ClientPayload device */ - device?: (number|null); - - /** ClientPayload regData */ - regData?: (proto.ICompanionRegData|null); - - /** ClientPayload product */ - product?: (proto.ClientPayload.ClientPayloadProduct|null); - - /** ClientPayload fbCat */ - fbCat?: (Uint8Array|null); - - /** ClientPayload fbUserAgent */ - fbUserAgent?: (Uint8Array|null); - - /** ClientPayload oc */ - oc?: (boolean|null); - } - - /** Represents a ClientPayload. */ - class ClientPayload implements IClientPayload { - - /** - * Constructs a new ClientPayload. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IClientPayload); - - /** ClientPayload username. */ - public username: (number|Long); - - /** ClientPayload passive. */ - public passive: boolean; - - /** ClientPayload clientFeatures. */ - public clientFeatures: proto.ClientPayload.ClientPayloadClientFeature[]; - - /** ClientPayload userAgent. */ - public userAgent?: (proto.IUserAgent|null); - - /** ClientPayload webInfo. */ - public webInfo?: (proto.IWebInfo|null); - - /** ClientPayload pushName. */ - public pushName: string; - - /** ClientPayload sessionId. */ - public sessionId: number; - - /** ClientPayload shortConnect. */ - public shortConnect: boolean; - - /** ClientPayload iosAppExtension. */ - public iosAppExtension: proto.ClientPayload.ClientPayloadIOSAppExtension; - - /** ClientPayload connectType. */ - public connectType: proto.ClientPayload.ClientPayloadConnectType; - - /** ClientPayload connectReason. */ - public connectReason: proto.ClientPayload.ClientPayloadConnectReason; - - /** ClientPayload shards. */ - public shards: number[]; - - /** ClientPayload dnsSource. */ - public dnsSource?: (proto.IDNSSource|null); - - /** ClientPayload connectAttemptCount. */ - public connectAttemptCount: number; - - /** ClientPayload agent. */ - public agent: number; - - /** ClientPayload device. */ - public device: number; - - /** ClientPayload regData. */ - public regData?: (proto.ICompanionRegData|null); - - /** ClientPayload product. */ - public product: proto.ClientPayload.ClientPayloadProduct; - - /** ClientPayload fbCat. */ - public fbCat: Uint8Array; - - /** ClientPayload fbUserAgent. */ - public fbUserAgent: Uint8Array; - - /** ClientPayload oc. */ - public oc: boolean; - - /** - * Creates a new ClientPayload instance using the specified properties. - * @param [properties] Properties to set - * @returns ClientPayload instance - */ - public static create(properties?: proto.IClientPayload): proto.ClientPayload; - - /** - * Encodes the specified ClientPayload message. Does not implicitly {@link proto.ClientPayload.verify|verify} messages. - * @param message ClientPayload message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IClientPayload, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified ClientPayload message, length delimited. Does not implicitly {@link proto.ClientPayload.verify|verify} messages. - * @param message ClientPayload message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IClientPayload, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a ClientPayload message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ClientPayload - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.ClientPayload; - - /** - * Decodes a ClientPayload message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ClientPayload - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.ClientPayload; - - /** - * Verifies a ClientPayload message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a ClientPayload message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ClientPayload - */ - public static fromObject(object: { [k: string]: any }): proto.ClientPayload; - - /** - * Creates a plain object from a ClientPayload message. Also converts values to other types if specified. - * @param message ClientPayload - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.ClientPayload, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this ClientPayload to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - namespace ClientPayload { - - /** ClientPayloadClientFeature enum. */ - enum ClientPayloadClientFeature { - NONE = 0 - } - - /** ClientPayloadIOSAppExtension enum. */ - enum ClientPayloadIOSAppExtension { - SHARE_EXTENSION = 0, - SERVICE_EXTENSION = 1, - INTENTS_EXTENSION = 2 - } - - /** ClientPayloadConnectType enum. */ - enum ClientPayloadConnectType { - CELLULAR_UNKNOWN = 0, - WIFI_UNKNOWN = 1, - CELLULAR_EDGE = 100, - CELLULAR_IDEN = 101, - CELLULAR_UMTS = 102, - CELLULAR_EVDO = 103, - CELLULAR_GPRS = 104, - CELLULAR_HSDPA = 105, - CELLULAR_HSUPA = 106, - CELLULAR_HSPA = 107, - CELLULAR_CDMA = 108, - CELLULAR_1XRTT = 109, - CELLULAR_EHRPD = 110, - CELLULAR_LTE = 111, - CELLULAR_HSPAP = 112 - } - - /** ClientPayloadConnectReason enum. */ - enum ClientPayloadConnectReason { - PUSH = 0, - USER_ACTIVATED = 1, - SCHEDULED = 2, - ERROR_RECONNECT = 3, - NETWORK_SWITCH = 4, - PING_RECONNECT = 5 - } - - /** ClientPayloadProduct enum. */ - enum ClientPayloadProduct { - WHATSAPP = 0, - MESSENGER = 1 - } - } - - /** Properties of a NoiseCertificate. */ - interface INoiseCertificate { - - /** NoiseCertificate details */ - details?: (Uint8Array|null); - - /** NoiseCertificate signature */ - signature?: (Uint8Array|null); - } - - /** Represents a NoiseCertificate. */ - class NoiseCertificate implements INoiseCertificate { - - /** - * Constructs a new NoiseCertificate. - * @param [properties] Properties to set - */ - constructor(properties?: proto.INoiseCertificate); - - /** NoiseCertificate details. */ - public details: Uint8Array; - - /** NoiseCertificate signature. */ - public signature: Uint8Array; - - /** - * Creates a new NoiseCertificate instance using the specified properties. - * @param [properties] Properties to set - * @returns NoiseCertificate instance - */ - public static create(properties?: proto.INoiseCertificate): proto.NoiseCertificate; - - /** - * Encodes the specified NoiseCertificate message. Does not implicitly {@link proto.NoiseCertificate.verify|verify} messages. - * @param message NoiseCertificate message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.INoiseCertificate, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified NoiseCertificate message, length delimited. Does not implicitly {@link proto.NoiseCertificate.verify|verify} messages. - * @param message NoiseCertificate message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.INoiseCertificate, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a NoiseCertificate message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns NoiseCertificate - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.NoiseCertificate; - - /** - * Decodes a NoiseCertificate message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns NoiseCertificate - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.NoiseCertificate; - - /** - * Verifies a NoiseCertificate message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a NoiseCertificate message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns NoiseCertificate - */ - public static fromObject(object: { [k: string]: any }): proto.NoiseCertificate; - - /** - * Creates a plain object from a NoiseCertificate message. Also converts values to other types if specified. - * @param message NoiseCertificate - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.NoiseCertificate, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this NoiseCertificate to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a ClientHello. */ - interface IClientHello { - - /** ClientHello ephemeral */ - ephemeral?: (Uint8Array|null); - - /** ClientHello static */ - "static"?: (Uint8Array|null); - - /** ClientHello payload */ - payload?: (Uint8Array|null); - } - - /** Represents a ClientHello. */ - class ClientHello implements IClientHello { - - /** - * Constructs a new ClientHello. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IClientHello); - - /** ClientHello ephemeral. */ - public ephemeral: Uint8Array; - - /** ClientHello static. */ - public static: Uint8Array; - - /** ClientHello payload. */ - public payload: Uint8Array; - - /** - * Creates a new ClientHello instance using the specified properties. - * @param [properties] Properties to set - * @returns ClientHello instance - */ - public static create(properties?: proto.IClientHello): proto.ClientHello; - - /** - * Encodes the specified ClientHello message. Does not implicitly {@link proto.ClientHello.verify|verify} messages. - * @param message ClientHello message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IClientHello, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified ClientHello message, length delimited. Does not implicitly {@link proto.ClientHello.verify|verify} messages. - * @param message ClientHello message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IClientHello, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a ClientHello message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ClientHello - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.ClientHello; - - /** - * Decodes a ClientHello message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ClientHello - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.ClientHello; - - /** - * Verifies a ClientHello message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a ClientHello message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ClientHello - */ - public static fromObject(object: { [k: string]: any }): proto.ClientHello; - - /** - * Creates a plain object from a ClientHello message. Also converts values to other types if specified. - * @param message ClientHello - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.ClientHello, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this ClientHello to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a ServerHello. */ - interface IServerHello { - - /** ServerHello ephemeral */ - ephemeral?: (Uint8Array|null); - - /** ServerHello static */ - "static"?: (Uint8Array|null); - - /** ServerHello payload */ - payload?: (Uint8Array|null); - } - - /** Represents a ServerHello. */ - class ServerHello implements IServerHello { - - /** - * Constructs a new ServerHello. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IServerHello); - - /** ServerHello ephemeral. */ - public ephemeral: Uint8Array; - - /** ServerHello static. */ - public static: Uint8Array; - - /** ServerHello payload. */ - public payload: Uint8Array; - - /** - * Creates a new ServerHello instance using the specified properties. - * @param [properties] Properties to set - * @returns ServerHello instance - */ - public static create(properties?: proto.IServerHello): proto.ServerHello; - - /** - * Encodes the specified ServerHello message. Does not implicitly {@link proto.ServerHello.verify|verify} messages. - * @param message ServerHello message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IServerHello, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified ServerHello message, length delimited. Does not implicitly {@link proto.ServerHello.verify|verify} messages. - * @param message ServerHello message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IServerHello, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a ServerHello message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ServerHello - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.ServerHello; - - /** - * Decodes a ServerHello message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ServerHello - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.ServerHello; - - /** - * Verifies a ServerHello message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a ServerHello message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ServerHello - */ - public static fromObject(object: { [k: string]: any }): proto.ServerHello; - - /** - * Creates a plain object from a ServerHello message. Also converts values to other types if specified. - * @param message ServerHello - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.ServerHello, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this ServerHello to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a ClientFinish. */ - interface IClientFinish { - - /** ClientFinish static */ - "static"?: (Uint8Array|null); - - /** ClientFinish payload */ - payload?: (Uint8Array|null); - } - - /** Represents a ClientFinish. */ - class ClientFinish implements IClientFinish { - - /** - * Constructs a new ClientFinish. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IClientFinish); - - /** ClientFinish static. */ - public static: Uint8Array; - - /** ClientFinish payload. */ - public payload: Uint8Array; - - /** - * Creates a new ClientFinish instance using the specified properties. - * @param [properties] Properties to set - * @returns ClientFinish instance - */ - public static create(properties?: proto.IClientFinish): proto.ClientFinish; - - /** - * Encodes the specified ClientFinish message. Does not implicitly {@link proto.ClientFinish.verify|verify} messages. - * @param message ClientFinish message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IClientFinish, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified ClientFinish message, length delimited. Does not implicitly {@link proto.ClientFinish.verify|verify} messages. - * @param message ClientFinish message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IClientFinish, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a ClientFinish message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ClientFinish - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.ClientFinish; - - /** - * Decodes a ClientFinish message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ClientFinish - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.ClientFinish; - - /** - * Verifies a ClientFinish message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a ClientFinish message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ClientFinish - */ - public static fromObject(object: { [k: string]: any }): proto.ClientFinish; - - /** - * Creates a plain object from a ClientFinish message. Also converts values to other types if specified. - * @param message ClientFinish - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.ClientFinish, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this ClientFinish to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a HandshakeMessage. */ - interface IHandshakeMessage { - - /** HandshakeMessage clientHello */ - clientHello?: (proto.IClientHello|null); - - /** HandshakeMessage serverHello */ - serverHello?: (proto.IServerHello|null); - - /** HandshakeMessage clientFinish */ - clientFinish?: (proto.IClientFinish|null); - } - - /** Represents a HandshakeMessage. */ - class HandshakeMessage implements IHandshakeMessage { - - /** - * Constructs a new HandshakeMessage. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IHandshakeMessage); - - /** HandshakeMessage clientHello. */ - public clientHello?: (proto.IClientHello|null); - - /** HandshakeMessage serverHello. */ - public serverHello?: (proto.IServerHello|null); - - /** HandshakeMessage clientFinish. */ - public clientFinish?: (proto.IClientFinish|null); - - /** - * Creates a new HandshakeMessage instance using the specified properties. - * @param [properties] Properties to set - * @returns HandshakeMessage instance - */ - public static create(properties?: proto.IHandshakeMessage): proto.HandshakeMessage; - - /** - * Encodes the specified HandshakeMessage message. Does not implicitly {@link proto.HandshakeMessage.verify|verify} messages. - * @param message HandshakeMessage message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IHandshakeMessage, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified HandshakeMessage message, length delimited. Does not implicitly {@link proto.HandshakeMessage.verify|verify} messages. - * @param message HandshakeMessage message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IHandshakeMessage, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a HandshakeMessage message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns HandshakeMessage - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.HandshakeMessage; - - /** - * Decodes a HandshakeMessage message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns HandshakeMessage - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.HandshakeMessage; - - /** - * Verifies a HandshakeMessage message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a HandshakeMessage message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns HandshakeMessage - */ - public static fromObject(object: { [k: string]: any }): proto.HandshakeMessage; - - /** - * Creates a plain object from a HandshakeMessage message. Also converts values to other types if specified. - * @param message HandshakeMessage - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.HandshakeMessage, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this HandshakeMessage to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a BizIdentityInfo. */ - interface IBizIdentityInfo { - - /** BizIdentityInfo vlevel */ - vlevel?: (proto.BizIdentityInfo.BizIdentityInfoVerifiedLevelValue|null); - - /** BizIdentityInfo vnameCert */ - vnameCert?: (proto.IVerifiedNameCertificate|null); - - /** BizIdentityInfo signed */ - signed?: (boolean|null); - - /** BizIdentityInfo revoked */ - revoked?: (boolean|null); - - /** BizIdentityInfo hostStorage */ - hostStorage?: (proto.BizIdentityInfo.BizIdentityInfoHostStorageType|null); - - /** BizIdentityInfo actualActors */ - actualActors?: (proto.BizIdentityInfo.BizIdentityInfoActualActorsType|null); - - /** BizIdentityInfo privacyModeTs */ - privacyModeTs?: (number|Long|null); - } - - /** Represents a BizIdentityInfo. */ - class BizIdentityInfo implements IBizIdentityInfo { - - /** - * Constructs a new BizIdentityInfo. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IBizIdentityInfo); - - /** BizIdentityInfo vlevel. */ - public vlevel: proto.BizIdentityInfo.BizIdentityInfoVerifiedLevelValue; - - /** BizIdentityInfo vnameCert. */ - public vnameCert?: (proto.IVerifiedNameCertificate|null); - - /** BizIdentityInfo signed. */ - public signed: boolean; - - /** BizIdentityInfo revoked. */ - public revoked: boolean; - - /** BizIdentityInfo hostStorage. */ - public hostStorage: proto.BizIdentityInfo.BizIdentityInfoHostStorageType; - - /** BizIdentityInfo actualActors. */ - public actualActors: proto.BizIdentityInfo.BizIdentityInfoActualActorsType; - - /** BizIdentityInfo privacyModeTs. */ - public privacyModeTs: (number|Long); - - /** - * Creates a new BizIdentityInfo instance using the specified properties. - * @param [properties] Properties to set - * @returns BizIdentityInfo instance - */ - public static create(properties?: proto.IBizIdentityInfo): proto.BizIdentityInfo; - - /** - * Encodes the specified BizIdentityInfo message. Does not implicitly {@link proto.BizIdentityInfo.verify|verify} messages. - * @param message BizIdentityInfo message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IBizIdentityInfo, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified BizIdentityInfo message, length delimited. Does not implicitly {@link proto.BizIdentityInfo.verify|verify} messages. - * @param message BizIdentityInfo message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IBizIdentityInfo, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a BizIdentityInfo message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns BizIdentityInfo - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.BizIdentityInfo; - - /** - * Decodes a BizIdentityInfo message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns BizIdentityInfo - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.BizIdentityInfo; - - /** - * Verifies a BizIdentityInfo message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a BizIdentityInfo message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns BizIdentityInfo - */ - public static fromObject(object: { [k: string]: any }): proto.BizIdentityInfo; - - /** - * Creates a plain object from a BizIdentityInfo message. Also converts values to other types if specified. - * @param message BizIdentityInfo - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.BizIdentityInfo, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this BizIdentityInfo to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - namespace BizIdentityInfo { - - /** BizIdentityInfoVerifiedLevelValue enum. */ - enum BizIdentityInfoVerifiedLevelValue { - UNKNOWN = 0, - LOW = 1, - HIGH = 2 - } - - /** BizIdentityInfoHostStorageType enum. */ - enum BizIdentityInfoHostStorageType { - ON_PREMISE = 0, - FACEBOOK = 1 - } - - /** BizIdentityInfoActualActorsType enum. */ - enum BizIdentityInfoActualActorsType { - SELF = 0, - BSP = 1 - } - } - - /** Properties of a BizAccountLinkInfo. */ - interface IBizAccountLinkInfo { - - /** BizAccountLinkInfo whatsappBizAcctFbid */ - whatsappBizAcctFbid?: (number|Long|null); - - /** BizAccountLinkInfo whatsappAcctNumber */ - whatsappAcctNumber?: (string|null); - - /** BizAccountLinkInfo issueTime */ - issueTime?: (number|Long|null); - - /** BizAccountLinkInfo hostStorage */ - hostStorage?: (proto.BizAccountLinkInfo.BizAccountLinkInfoHostStorageType|null); - - /** BizAccountLinkInfo accountType */ - accountType?: (proto.BizAccountLinkInfo.BizAccountLinkInfoAccountType|null); - } - - /** Represents a BizAccountLinkInfo. */ - class BizAccountLinkInfo implements IBizAccountLinkInfo { - - /** - * Constructs a new BizAccountLinkInfo. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IBizAccountLinkInfo); - - /** BizAccountLinkInfo whatsappBizAcctFbid. */ - public whatsappBizAcctFbid: (number|Long); - - /** BizAccountLinkInfo whatsappAcctNumber. */ - public whatsappAcctNumber: string; - - /** BizAccountLinkInfo issueTime. */ - public issueTime: (number|Long); - - /** BizAccountLinkInfo hostStorage. */ - public hostStorage: proto.BizAccountLinkInfo.BizAccountLinkInfoHostStorageType; - - /** BizAccountLinkInfo accountType. */ - public accountType: proto.BizAccountLinkInfo.BizAccountLinkInfoAccountType; - - /** - * Creates a new BizAccountLinkInfo instance using the specified properties. - * @param [properties] Properties to set - * @returns BizAccountLinkInfo instance - */ - public static create(properties?: proto.IBizAccountLinkInfo): proto.BizAccountLinkInfo; - - /** - * Encodes the specified BizAccountLinkInfo message. Does not implicitly {@link proto.BizAccountLinkInfo.verify|verify} messages. - * @param message BizAccountLinkInfo message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IBizAccountLinkInfo, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified BizAccountLinkInfo message, length delimited. Does not implicitly {@link proto.BizAccountLinkInfo.verify|verify} messages. - * @param message BizAccountLinkInfo message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IBizAccountLinkInfo, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a BizAccountLinkInfo message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns BizAccountLinkInfo - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.BizAccountLinkInfo; - - /** - * Decodes a BizAccountLinkInfo message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns BizAccountLinkInfo - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.BizAccountLinkInfo; - - /** - * Verifies a BizAccountLinkInfo message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a BizAccountLinkInfo message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns BizAccountLinkInfo - */ - public static fromObject(object: { [k: string]: any }): proto.BizAccountLinkInfo; - - /** - * Creates a plain object from a BizAccountLinkInfo message. Also converts values to other types if specified. - * @param message BizAccountLinkInfo - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.BizAccountLinkInfo, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this BizAccountLinkInfo to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - namespace BizAccountLinkInfo { - - /** BizAccountLinkInfoHostStorageType enum. */ - enum BizAccountLinkInfoHostStorageType { - ON_PREMISE = 0, - FACEBOOK = 1 - } - - /** BizAccountLinkInfoAccountType enum. */ - enum BizAccountLinkInfoAccountType { - ENTERPRISE = 0, - PAGE = 1 - } - } - - /** Properties of a BizAccountPayload. */ - interface IBizAccountPayload { - - /** BizAccountPayload vnameCert */ - vnameCert?: (proto.IVerifiedNameCertificate|null); - - /** BizAccountPayload bizAcctLinkInfo */ - bizAcctLinkInfo?: (Uint8Array|null); - } - - /** Represents a BizAccountPayload. */ - class BizAccountPayload implements IBizAccountPayload { - - /** - * Constructs a new BizAccountPayload. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IBizAccountPayload); - - /** BizAccountPayload vnameCert. */ - public vnameCert?: (proto.IVerifiedNameCertificate|null); - - /** BizAccountPayload bizAcctLinkInfo. */ - public bizAcctLinkInfo: Uint8Array; - - /** - * Creates a new BizAccountPayload instance using the specified properties. - * @param [properties] Properties to set - * @returns BizAccountPayload instance - */ - public static create(properties?: proto.IBizAccountPayload): proto.BizAccountPayload; - - /** - * Encodes the specified BizAccountPayload message. Does not implicitly {@link proto.BizAccountPayload.verify|verify} messages. - * @param message BizAccountPayload message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IBizAccountPayload, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified BizAccountPayload message, length delimited. Does not implicitly {@link proto.BizAccountPayload.verify|verify} messages. - * @param message BizAccountPayload message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IBizAccountPayload, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a BizAccountPayload message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns BizAccountPayload - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.BizAccountPayload; - - /** - * Decodes a BizAccountPayload message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns BizAccountPayload - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.BizAccountPayload; - - /** - * Verifies a BizAccountPayload message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a BizAccountPayload message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns BizAccountPayload - */ - public static fromObject(object: { [k: string]: any }): proto.BizAccountPayload; - - /** - * Creates a plain object from a BizAccountPayload message. Also converts values to other types if specified. - * @param message BizAccountPayload - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.BizAccountPayload, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this BizAccountPayload to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a VerifiedNameCertificate. */ - interface IVerifiedNameCertificate { - - /** VerifiedNameCertificate details */ - details?: (Uint8Array|null); - - /** VerifiedNameCertificate signature */ - signature?: (Uint8Array|null); - - /** VerifiedNameCertificate serverSignature */ - serverSignature?: (Uint8Array|null); - } - - /** Represents a VerifiedNameCertificate. */ - class VerifiedNameCertificate implements IVerifiedNameCertificate { - - /** - * Constructs a new VerifiedNameCertificate. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IVerifiedNameCertificate); - - /** VerifiedNameCertificate details. */ - public details: Uint8Array; - - /** VerifiedNameCertificate signature. */ - public signature: Uint8Array; - - /** VerifiedNameCertificate serverSignature. */ - public serverSignature: Uint8Array; - - /** - * Creates a new VerifiedNameCertificate instance using the specified properties. - * @param [properties] Properties to set - * @returns VerifiedNameCertificate instance - */ - public static create(properties?: proto.IVerifiedNameCertificate): proto.VerifiedNameCertificate; - - /** - * Encodes the specified VerifiedNameCertificate message. Does not implicitly {@link proto.VerifiedNameCertificate.verify|verify} messages. - * @param message VerifiedNameCertificate message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IVerifiedNameCertificate, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified VerifiedNameCertificate message, length delimited. Does not implicitly {@link proto.VerifiedNameCertificate.verify|verify} messages. - * @param message VerifiedNameCertificate message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IVerifiedNameCertificate, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a VerifiedNameCertificate message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns VerifiedNameCertificate - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.VerifiedNameCertificate; - - /** - * Decodes a VerifiedNameCertificate message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns VerifiedNameCertificate - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.VerifiedNameCertificate; - - /** - * Verifies a VerifiedNameCertificate message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a VerifiedNameCertificate message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns VerifiedNameCertificate - */ - public static fromObject(object: { [k: string]: any }): proto.VerifiedNameCertificate; - - /** - * Creates a plain object from a VerifiedNameCertificate message. Also converts values to other types if specified. - * @param message VerifiedNameCertificate - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.VerifiedNameCertificate, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this VerifiedNameCertificate to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a LocalizedName. */ - interface ILocalizedName { - - /** LocalizedName lg */ - lg?: (string|null); - - /** LocalizedName lc */ - lc?: (string|null); - - /** LocalizedName verifiedName */ - verifiedName?: (string|null); - } - - /** Represents a LocalizedName. */ - class LocalizedName implements ILocalizedName { - - /** - * Constructs a new LocalizedName. - * @param [properties] Properties to set - */ - constructor(properties?: proto.ILocalizedName); - - /** LocalizedName lg. */ - public lg: string; - - /** LocalizedName lc. */ - public lc: string; - - /** LocalizedName verifiedName. */ - public verifiedName: string; - - /** - * Creates a new LocalizedName instance using the specified properties. - * @param [properties] Properties to set - * @returns LocalizedName instance - */ - public static create(properties?: proto.ILocalizedName): proto.LocalizedName; - - /** - * Encodes the specified LocalizedName message. Does not implicitly {@link proto.LocalizedName.verify|verify} messages. - * @param message LocalizedName message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.ILocalizedName, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified LocalizedName message, length delimited. Does not implicitly {@link proto.LocalizedName.verify|verify} messages. - * @param message LocalizedName message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.ILocalizedName, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a LocalizedName message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns LocalizedName - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.LocalizedName; - - /** - * Decodes a LocalizedName message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns LocalizedName - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.LocalizedName; - - /** - * Verifies a LocalizedName message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a LocalizedName message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns LocalizedName - */ - public static fromObject(object: { [k: string]: any }): proto.LocalizedName; - - /** - * Creates a plain object from a LocalizedName message. Also converts values to other types if specified. - * @param message LocalizedName - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.LocalizedName, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this LocalizedName to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a SyncActionData. */ - interface ISyncActionData { - - /** SyncActionData index */ - index?: (Uint8Array|null); - - /** SyncActionData value */ - value?: (proto.ISyncActionValue|null); - - /** SyncActionData padding */ - padding?: (Uint8Array|null); - - /** SyncActionData version */ - version?: (number|null); - } - - /** Represents a SyncActionData. */ - class SyncActionData implements ISyncActionData { - - /** - * Constructs a new SyncActionData. - * @param [properties] Properties to set - */ - constructor(properties?: proto.ISyncActionData); - - /** SyncActionData index. */ - public index: Uint8Array; - - /** SyncActionData value. */ - public value?: (proto.ISyncActionValue|null); - - /** SyncActionData padding. */ - public padding: Uint8Array; - - /** SyncActionData version. */ - public version: number; - - /** - * Creates a new SyncActionData instance using the specified properties. - * @param [properties] Properties to set - * @returns SyncActionData instance - */ - public static create(properties?: proto.ISyncActionData): proto.SyncActionData; - - /** - * Encodes the specified SyncActionData message. Does not implicitly {@link proto.SyncActionData.verify|verify} messages. - * @param message SyncActionData message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.ISyncActionData, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified SyncActionData message, length delimited. Does not implicitly {@link proto.SyncActionData.verify|verify} messages. - * @param message SyncActionData message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.ISyncActionData, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a SyncActionData message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns SyncActionData - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.SyncActionData; - - /** - * Decodes a SyncActionData message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns SyncActionData - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.SyncActionData; - - /** - * Verifies a SyncActionData message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a SyncActionData message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns SyncActionData - */ - public static fromObject(object: { [k: string]: any }): proto.SyncActionData; - - /** - * Creates a plain object from a SyncActionData message. Also converts values to other types if specified. - * @param message SyncActionData - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.SyncActionData, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this SyncActionData to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a StarAction. */ - interface IStarAction { - - /** StarAction starred */ - starred?: (boolean|null); - } - - /** Represents a StarAction. */ - class StarAction implements IStarAction { - - /** - * Constructs a new StarAction. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IStarAction); - - /** StarAction starred. */ - public starred: boolean; - - /** - * Creates a new StarAction instance using the specified properties. - * @param [properties] Properties to set - * @returns StarAction instance - */ - public static create(properties?: proto.IStarAction): proto.StarAction; - - /** - * Encodes the specified StarAction message. Does not implicitly {@link proto.StarAction.verify|verify} messages. - * @param message StarAction message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IStarAction, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified StarAction message, length delimited. Does not implicitly {@link proto.StarAction.verify|verify} messages. - * @param message StarAction message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IStarAction, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a StarAction message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns StarAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.StarAction; - - /** - * Decodes a StarAction message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns StarAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.StarAction; - - /** - * Verifies a StarAction message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a StarAction message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns StarAction - */ - public static fromObject(object: { [k: string]: any }): proto.StarAction; - - /** - * Creates a plain object from a StarAction message. Also converts values to other types if specified. - * @param message StarAction - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.StarAction, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this StarAction to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a ContactAction. */ - interface IContactAction { - - /** ContactAction fullName */ - fullName?: (string|null); - - /** ContactAction firstName */ - firstName?: (string|null); - } - - /** Represents a ContactAction. */ - class ContactAction implements IContactAction { - - /** - * Constructs a new ContactAction. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IContactAction); - - /** ContactAction fullName. */ - public fullName: string; - - /** ContactAction firstName. */ - public firstName: string; - - /** - * Creates a new ContactAction instance using the specified properties. - * @param [properties] Properties to set - * @returns ContactAction instance - */ - public static create(properties?: proto.IContactAction): proto.ContactAction; - - /** - * Encodes the specified ContactAction message. Does not implicitly {@link proto.ContactAction.verify|verify} messages. - * @param message ContactAction message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IContactAction, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified ContactAction message, length delimited. Does not implicitly {@link proto.ContactAction.verify|verify} messages. - * @param message ContactAction message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IContactAction, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a ContactAction message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ContactAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.ContactAction; - - /** - * Decodes a ContactAction message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ContactAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.ContactAction; - - /** - * Verifies a ContactAction message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a ContactAction message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ContactAction - */ - public static fromObject(object: { [k: string]: any }): proto.ContactAction; - - /** - * Creates a plain object from a ContactAction message. Also converts values to other types if specified. - * @param message ContactAction - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.ContactAction, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this ContactAction to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a MuteAction. */ - interface IMuteAction { - - /** MuteAction muted */ - muted?: (boolean|null); - - /** MuteAction muteEndTimestamp */ - muteEndTimestamp?: (number|Long|null); - } - - /** Represents a MuteAction. */ - class MuteAction implements IMuteAction { - - /** - * Constructs a new MuteAction. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IMuteAction); - - /** MuteAction muted. */ - public muted: boolean; - - /** MuteAction muteEndTimestamp. */ - public muteEndTimestamp: (number|Long); - - /** - * Creates a new MuteAction instance using the specified properties. - * @param [properties] Properties to set - * @returns MuteAction instance - */ - public static create(properties?: proto.IMuteAction): proto.MuteAction; - - /** - * Encodes the specified MuteAction message. Does not implicitly {@link proto.MuteAction.verify|verify} messages. - * @param message MuteAction message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IMuteAction, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified MuteAction message, length delimited. Does not implicitly {@link proto.MuteAction.verify|verify} messages. - * @param message MuteAction message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IMuteAction, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a MuteAction message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns MuteAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.MuteAction; - - /** - * Decodes a MuteAction message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns MuteAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.MuteAction; - - /** - * Verifies a MuteAction message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a MuteAction message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns MuteAction - */ - public static fromObject(object: { [k: string]: any }): proto.MuteAction; - - /** - * Creates a plain object from a MuteAction message. Also converts values to other types if specified. - * @param message MuteAction - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.MuteAction, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this MuteAction to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a PinAction. */ - interface IPinAction { - - /** PinAction pinned */ - pinned?: (boolean|null); - } - - /** Represents a PinAction. */ - class PinAction implements IPinAction { - - /** - * Constructs a new PinAction. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IPinAction); - - /** PinAction pinned. */ - public pinned: boolean; - - /** - * Creates a new PinAction instance using the specified properties. - * @param [properties] Properties to set - * @returns PinAction instance - */ - public static create(properties?: proto.IPinAction): proto.PinAction; - - /** - * Encodes the specified PinAction message. Does not implicitly {@link proto.PinAction.verify|verify} messages. - * @param message PinAction message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IPinAction, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified PinAction message, length delimited. Does not implicitly {@link proto.PinAction.verify|verify} messages. - * @param message PinAction message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IPinAction, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a PinAction message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns PinAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.PinAction; - - /** - * Decodes a PinAction message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns PinAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.PinAction; - - /** - * Verifies a PinAction message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a PinAction message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns PinAction - */ - public static fromObject(object: { [k: string]: any }): proto.PinAction; - - /** - * Creates a plain object from a PinAction message. Also converts values to other types if specified. - * @param message PinAction - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.PinAction, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this PinAction to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a SecurityNotificationSetting. */ - interface ISecurityNotificationSetting { - - /** SecurityNotificationSetting showNotification */ - showNotification?: (boolean|null); - } - - /** Represents a SecurityNotificationSetting. */ - class SecurityNotificationSetting implements ISecurityNotificationSetting { - - /** - * Constructs a new SecurityNotificationSetting. - * @param [properties] Properties to set - */ - constructor(properties?: proto.ISecurityNotificationSetting); - - /** SecurityNotificationSetting showNotification. */ - public showNotification: boolean; - - /** - * Creates a new SecurityNotificationSetting instance using the specified properties. - * @param [properties] Properties to set - * @returns SecurityNotificationSetting instance - */ - public static create(properties?: proto.ISecurityNotificationSetting): proto.SecurityNotificationSetting; - - /** - * Encodes the specified SecurityNotificationSetting message. Does not implicitly {@link proto.SecurityNotificationSetting.verify|verify} messages. - * @param message SecurityNotificationSetting message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.ISecurityNotificationSetting, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified SecurityNotificationSetting message, length delimited. Does not implicitly {@link proto.SecurityNotificationSetting.verify|verify} messages. - * @param message SecurityNotificationSetting message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.ISecurityNotificationSetting, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a SecurityNotificationSetting message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns SecurityNotificationSetting - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.SecurityNotificationSetting; - - /** - * Decodes a SecurityNotificationSetting message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns SecurityNotificationSetting - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.SecurityNotificationSetting; - - /** - * Verifies a SecurityNotificationSetting message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a SecurityNotificationSetting message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns SecurityNotificationSetting - */ - public static fromObject(object: { [k: string]: any }): proto.SecurityNotificationSetting; - - /** - * Creates a plain object from a SecurityNotificationSetting message. Also converts values to other types if specified. - * @param message SecurityNotificationSetting - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.SecurityNotificationSetting, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this SecurityNotificationSetting to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a PushNameSetting. */ - interface IPushNameSetting { - - /** PushNameSetting name */ - name?: (string|null); - } - - /** Represents a PushNameSetting. */ - class PushNameSetting implements IPushNameSetting { - - /** - * Constructs a new PushNameSetting. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IPushNameSetting); - - /** PushNameSetting name. */ - public name: string; - - /** - * Creates a new PushNameSetting instance using the specified properties. - * @param [properties] Properties to set - * @returns PushNameSetting instance - */ - public static create(properties?: proto.IPushNameSetting): proto.PushNameSetting; - - /** - * Encodes the specified PushNameSetting message. Does not implicitly {@link proto.PushNameSetting.verify|verify} messages. - * @param message PushNameSetting message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IPushNameSetting, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified PushNameSetting message, length delimited. Does not implicitly {@link proto.PushNameSetting.verify|verify} messages. - * @param message PushNameSetting message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IPushNameSetting, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a PushNameSetting message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns PushNameSetting - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.PushNameSetting; - - /** - * Decodes a PushNameSetting message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns PushNameSetting - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.PushNameSetting; - - /** - * Verifies a PushNameSetting message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a PushNameSetting message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns PushNameSetting - */ - public static fromObject(object: { [k: string]: any }): proto.PushNameSetting; - - /** - * Creates a plain object from a PushNameSetting message. Also converts values to other types if specified. - * @param message PushNameSetting - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.PushNameSetting, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this PushNameSetting to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a LocaleSetting. */ - interface ILocaleSetting { - - /** LocaleSetting locale */ - locale?: (string|null); - } - - /** Represents a LocaleSetting. */ - class LocaleSetting implements ILocaleSetting { - - /** - * Constructs a new LocaleSetting. - * @param [properties] Properties to set - */ - constructor(properties?: proto.ILocaleSetting); - - /** LocaleSetting locale. */ - public locale: string; - - /** - * Creates a new LocaleSetting instance using the specified properties. - * @param [properties] Properties to set - * @returns LocaleSetting instance - */ - public static create(properties?: proto.ILocaleSetting): proto.LocaleSetting; - - /** - * Encodes the specified LocaleSetting message. Does not implicitly {@link proto.LocaleSetting.verify|verify} messages. - * @param message LocaleSetting message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.ILocaleSetting, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified LocaleSetting message, length delimited. Does not implicitly {@link proto.LocaleSetting.verify|verify} messages. - * @param message LocaleSetting message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.ILocaleSetting, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a LocaleSetting message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns LocaleSetting - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.LocaleSetting; - - /** - * Decodes a LocaleSetting message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns LocaleSetting - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.LocaleSetting; - - /** - * Verifies a LocaleSetting message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a LocaleSetting message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns LocaleSetting - */ - public static fromObject(object: { [k: string]: any }): proto.LocaleSetting; - - /** - * Creates a plain object from a LocaleSetting message. Also converts values to other types if specified. - * @param message LocaleSetting - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.LocaleSetting, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this LocaleSetting to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a QuickReplyAction. */ - interface IQuickReplyAction { - - /** QuickReplyAction shortcut */ - shortcut?: (string|null); - - /** QuickReplyAction message */ - message?: (string|null); - - /** QuickReplyAction keywords */ - keywords?: (string[]|null); - - /** QuickReplyAction count */ - count?: (number|null); - - /** QuickReplyAction deleted */ - deleted?: (boolean|null); - } - - /** Represents a QuickReplyAction. */ - class QuickReplyAction implements IQuickReplyAction { - - /** - * Constructs a new QuickReplyAction. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IQuickReplyAction); - - /** QuickReplyAction shortcut. */ - public shortcut: string; - - /** QuickReplyAction message. */ - public message: string; - - /** QuickReplyAction keywords. */ - public keywords: string[]; - - /** QuickReplyAction count. */ - public count: number; - - /** QuickReplyAction deleted. */ - public deleted: boolean; - - /** - * Creates a new QuickReplyAction instance using the specified properties. - * @param [properties] Properties to set - * @returns QuickReplyAction instance - */ - public static create(properties?: proto.IQuickReplyAction): proto.QuickReplyAction; - - /** - * Encodes the specified QuickReplyAction message. Does not implicitly {@link proto.QuickReplyAction.verify|verify} messages. - * @param message QuickReplyAction message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IQuickReplyAction, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified QuickReplyAction message, length delimited. Does not implicitly {@link proto.QuickReplyAction.verify|verify} messages. - * @param message QuickReplyAction message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IQuickReplyAction, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a QuickReplyAction message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns QuickReplyAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.QuickReplyAction; - - /** - * Decodes a QuickReplyAction message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns QuickReplyAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.QuickReplyAction; - - /** - * Verifies a QuickReplyAction message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a QuickReplyAction message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns QuickReplyAction - */ - public static fromObject(object: { [k: string]: any }): proto.QuickReplyAction; - - /** - * Creates a plain object from a QuickReplyAction message. Also converts values to other types if specified. - * @param message QuickReplyAction - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.QuickReplyAction, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this QuickReplyAction to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a LabelAssociationAction. */ - interface ILabelAssociationAction { - - /** LabelAssociationAction labeled */ - labeled?: (boolean|null); - } - - /** Represents a LabelAssociationAction. */ - class LabelAssociationAction implements ILabelAssociationAction { - - /** - * Constructs a new LabelAssociationAction. - * @param [properties] Properties to set - */ - constructor(properties?: proto.ILabelAssociationAction); - - /** LabelAssociationAction labeled. */ - public labeled: boolean; - - /** - * Creates a new LabelAssociationAction instance using the specified properties. - * @param [properties] Properties to set - * @returns LabelAssociationAction instance - */ - public static create(properties?: proto.ILabelAssociationAction): proto.LabelAssociationAction; - - /** - * Encodes the specified LabelAssociationAction message. Does not implicitly {@link proto.LabelAssociationAction.verify|verify} messages. - * @param message LabelAssociationAction message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.ILabelAssociationAction, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified LabelAssociationAction message, length delimited. Does not implicitly {@link proto.LabelAssociationAction.verify|verify} messages. - * @param message LabelAssociationAction message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.ILabelAssociationAction, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a LabelAssociationAction message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns LabelAssociationAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.LabelAssociationAction; - - /** - * Decodes a LabelAssociationAction message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns LabelAssociationAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.LabelAssociationAction; - - /** - * Verifies a LabelAssociationAction message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a LabelAssociationAction message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns LabelAssociationAction - */ - public static fromObject(object: { [k: string]: any }): proto.LabelAssociationAction; - - /** - * Creates a plain object from a LabelAssociationAction message. Also converts values to other types if specified. - * @param message LabelAssociationAction - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.LabelAssociationAction, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this LabelAssociationAction to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a LabelEditAction. */ - interface ILabelEditAction { - - /** LabelEditAction name */ - name?: (string|null); - - /** LabelEditAction color */ - color?: (number|null); - - /** LabelEditAction predefinedId */ - predefinedId?: (number|null); - - /** LabelEditAction deleted */ - deleted?: (boolean|null); - } - - /** Represents a LabelEditAction. */ - class LabelEditAction implements ILabelEditAction { - - /** - * Constructs a new LabelEditAction. - * @param [properties] Properties to set - */ - constructor(properties?: proto.ILabelEditAction); - - /** LabelEditAction name. */ - public name: string; - - /** LabelEditAction color. */ - public color: number; - - /** LabelEditAction predefinedId. */ - public predefinedId: number; - - /** LabelEditAction deleted. */ - public deleted: boolean; - - /** - * Creates a new LabelEditAction instance using the specified properties. - * @param [properties] Properties to set - * @returns LabelEditAction instance - */ - public static create(properties?: proto.ILabelEditAction): proto.LabelEditAction; - - /** - * Encodes the specified LabelEditAction message. Does not implicitly {@link proto.LabelEditAction.verify|verify} messages. - * @param message LabelEditAction message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.ILabelEditAction, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified LabelEditAction message, length delimited. Does not implicitly {@link proto.LabelEditAction.verify|verify} messages. - * @param message LabelEditAction message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.ILabelEditAction, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a LabelEditAction message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns LabelEditAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.LabelEditAction; - - /** - * Decodes a LabelEditAction message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns LabelEditAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.LabelEditAction; - - /** - * Verifies a LabelEditAction message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a LabelEditAction message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns LabelEditAction - */ - public static fromObject(object: { [k: string]: any }): proto.LabelEditAction; - - /** - * Creates a plain object from a LabelEditAction message. Also converts values to other types if specified. - * @param message LabelEditAction - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.LabelEditAction, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this LabelEditAction to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a RecentStickerWeightsAction. */ - interface IRecentStickerWeightsAction { - - /** RecentStickerWeightsAction weights */ - weights?: (proto.IRecentStickerWeight[]|null); - } - - /** Represents a RecentStickerWeightsAction. */ - class RecentStickerWeightsAction implements IRecentStickerWeightsAction { - - /** - * Constructs a new RecentStickerWeightsAction. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IRecentStickerWeightsAction); - - /** RecentStickerWeightsAction weights. */ - public weights: proto.IRecentStickerWeight[]; - - /** - * Creates a new RecentStickerWeightsAction instance using the specified properties. - * @param [properties] Properties to set - * @returns RecentStickerWeightsAction instance - */ - public static create(properties?: proto.IRecentStickerWeightsAction): proto.RecentStickerWeightsAction; - - /** - * Encodes the specified RecentStickerWeightsAction message. Does not implicitly {@link proto.RecentStickerWeightsAction.verify|verify} messages. - * @param message RecentStickerWeightsAction message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IRecentStickerWeightsAction, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified RecentStickerWeightsAction message, length delimited. Does not implicitly {@link proto.RecentStickerWeightsAction.verify|verify} messages. - * @param message RecentStickerWeightsAction message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IRecentStickerWeightsAction, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a RecentStickerWeightsAction message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns RecentStickerWeightsAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.RecentStickerWeightsAction; - - /** - * Decodes a RecentStickerWeightsAction message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns RecentStickerWeightsAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.RecentStickerWeightsAction; - - /** - * Verifies a RecentStickerWeightsAction message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a RecentStickerWeightsAction message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns RecentStickerWeightsAction - */ - public static fromObject(object: { [k: string]: any }): proto.RecentStickerWeightsAction; - - /** - * Creates a plain object from a RecentStickerWeightsAction message. Also converts values to other types if specified. - * @param message RecentStickerWeightsAction - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.RecentStickerWeightsAction, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this RecentStickerWeightsAction to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a RecentStickerMetadata. */ - interface IRecentStickerMetadata { - - /** RecentStickerMetadata directPath */ - directPath?: (string|null); - - /** RecentStickerMetadata encFilehash */ - encFilehash?: (string|null); - - /** RecentStickerMetadata mediaKey */ - mediaKey?: (string|null); - - /** RecentStickerMetadata stanzaId */ - stanzaId?: (string|null); - - /** RecentStickerMetadata chatJid */ - chatJid?: (string|null); - - /** RecentStickerMetadata participant */ + /** MessageKey participant */ participant?: (string|null); - - /** RecentStickerMetadata isSentByMe */ - isSentByMe?: (boolean|null); } - /** Represents a RecentStickerMetadata. */ - class RecentStickerMetadata implements IRecentStickerMetadata { + /** Represents a MessageKey. */ + class MessageKey implements IMessageKey { /** - * Constructs a new RecentStickerMetadata. + * Constructs a new MessageKey. * @param [properties] Properties to set */ - constructor(properties?: proto.IRecentStickerMetadata); + constructor(properties?: proto.IMessageKey); - /** RecentStickerMetadata directPath. */ - public directPath: string; + /** MessageKey remoteJid. */ + public remoteJid: string; - /** RecentStickerMetadata encFilehash. */ - public encFilehash: string; + /** MessageKey fromMe. */ + public fromMe: boolean; - /** RecentStickerMetadata mediaKey. */ - public mediaKey: string; + /** MessageKey id. */ + public id: string; - /** RecentStickerMetadata stanzaId. */ - public stanzaId: string; - - /** RecentStickerMetadata chatJid. */ - public chatJid: string; - - /** RecentStickerMetadata participant. */ + /** MessageKey participant. */ public participant: string; - /** RecentStickerMetadata isSentByMe. */ - public isSentByMe: boolean; - /** - * Creates a new RecentStickerMetadata instance using the specified properties. + * Creates a new MessageKey instance using the specified properties. * @param [properties] Properties to set - * @returns RecentStickerMetadata instance + * @returns MessageKey instance */ - public static create(properties?: proto.IRecentStickerMetadata): proto.RecentStickerMetadata; + public static create(properties?: proto.IMessageKey): proto.MessageKey; /** - * Encodes the specified RecentStickerMetadata message. Does not implicitly {@link proto.RecentStickerMetadata.verify|verify} messages. - * @param message RecentStickerMetadata message or plain object to encode + * Encodes the specified MessageKey message. Does not implicitly {@link proto.MessageKey.verify|verify} messages. + * @param message MessageKey message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encode(message: proto.IRecentStickerMetadata, writer?: $protobuf.Writer): $protobuf.Writer; + public static encode(message: proto.IMessageKey, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Encodes the specified RecentStickerMetadata message, length delimited. Does not implicitly {@link proto.RecentStickerMetadata.verify|verify} messages. - * @param message RecentStickerMetadata message or plain object to encode + * Encodes the specified MessageKey message, length delimited. Does not implicitly {@link proto.MessageKey.verify|verify} messages. + * @param message MessageKey message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encodeDelimited(message: proto.IRecentStickerMetadata, writer?: $protobuf.Writer): $protobuf.Writer; + public static encodeDelimited(message: proto.IMessageKey, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Decodes a RecentStickerMetadata message from the specified reader or buffer. + * Decodes a MessageKey message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand - * @returns RecentStickerMetadata + * @returns MessageKey * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.RecentStickerMetadata; + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.MessageKey; /** - * Decodes a RecentStickerMetadata message from the specified reader or buffer, length delimited. + * Decodes a MessageKey message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from - * @returns RecentStickerMetadata + * @returns MessageKey * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.RecentStickerMetadata; + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.MessageKey; /** - * Verifies a RecentStickerMetadata message. + * Verifies a MessageKey message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** - * Creates a RecentStickerMetadata message from a plain object. Also converts values to their respective internal types. + * Creates a MessageKey message from a plain object. Also converts values to their respective internal types. * @param object Plain object - * @returns RecentStickerMetadata + * @returns MessageKey */ - public static fromObject(object: { [k: string]: any }): proto.RecentStickerMetadata; + public static fromObject(object: { [k: string]: any }): proto.MessageKey; /** - * Creates a plain object from a RecentStickerMetadata message. Also converts values to other types if specified. - * @param message RecentStickerMetadata + * Creates a plain object from a MessageKey message. Also converts values to other types if specified. + * @param message MessageKey * @param [options] Conversion options * @returns Plain object */ - public static toObject(message: proto.RecentStickerMetadata, options?: $protobuf.IConversionOptions): { [k: string]: any }; + public static toObject(message: proto.MessageKey, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** - * Converts this RecentStickerMetadata to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a RecentEmojiWeightsAction. */ - interface IRecentEmojiWeightsAction { - - /** RecentEmojiWeightsAction weights */ - weights?: (proto.IRecentEmojiWeight[]|null); - } - - /** Represents a RecentEmojiWeightsAction. */ - class RecentEmojiWeightsAction implements IRecentEmojiWeightsAction { - - /** - * Constructs a new RecentEmojiWeightsAction. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IRecentEmojiWeightsAction); - - /** RecentEmojiWeightsAction weights. */ - public weights: proto.IRecentEmojiWeight[]; - - /** - * Creates a new RecentEmojiWeightsAction instance using the specified properties. - * @param [properties] Properties to set - * @returns RecentEmojiWeightsAction instance - */ - public static create(properties?: proto.IRecentEmojiWeightsAction): proto.RecentEmojiWeightsAction; - - /** - * Encodes the specified RecentEmojiWeightsAction message. Does not implicitly {@link proto.RecentEmojiWeightsAction.verify|verify} messages. - * @param message RecentEmojiWeightsAction message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IRecentEmojiWeightsAction, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified RecentEmojiWeightsAction message, length delimited. Does not implicitly {@link proto.RecentEmojiWeightsAction.verify|verify} messages. - * @param message RecentEmojiWeightsAction message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IRecentEmojiWeightsAction, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a RecentEmojiWeightsAction message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns RecentEmojiWeightsAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.RecentEmojiWeightsAction; - - /** - * Decodes a RecentEmojiWeightsAction message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns RecentEmojiWeightsAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.RecentEmojiWeightsAction; - - /** - * Verifies a RecentEmojiWeightsAction message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a RecentEmojiWeightsAction message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns RecentEmojiWeightsAction - */ - public static fromObject(object: { [k: string]: any }): proto.RecentEmojiWeightsAction; - - /** - * Creates a plain object from a RecentEmojiWeightsAction message. Also converts values to other types if specified. - * @param message RecentEmojiWeightsAction - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.RecentEmojiWeightsAction, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this RecentEmojiWeightsAction to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of an ArchiveChatAction. */ - interface IArchiveChatAction { - - /** ArchiveChatAction archived */ - archived?: (boolean|null); - - /** ArchiveChatAction messageRange */ - messageRange?: (proto.ISyncActionMessageRange|null); - } - - /** Represents an ArchiveChatAction. */ - class ArchiveChatAction implements IArchiveChatAction { - - /** - * Constructs a new ArchiveChatAction. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IArchiveChatAction); - - /** ArchiveChatAction archived. */ - public archived: boolean; - - /** ArchiveChatAction messageRange. */ - public messageRange?: (proto.ISyncActionMessageRange|null); - - /** - * Creates a new ArchiveChatAction instance using the specified properties. - * @param [properties] Properties to set - * @returns ArchiveChatAction instance - */ - public static create(properties?: proto.IArchiveChatAction): proto.ArchiveChatAction; - - /** - * Encodes the specified ArchiveChatAction message. Does not implicitly {@link proto.ArchiveChatAction.verify|verify} messages. - * @param message ArchiveChatAction message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IArchiveChatAction, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified ArchiveChatAction message, length delimited. Does not implicitly {@link proto.ArchiveChatAction.verify|verify} messages. - * @param message ArchiveChatAction message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IArchiveChatAction, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes an ArchiveChatAction message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ArchiveChatAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.ArchiveChatAction; - - /** - * Decodes an ArchiveChatAction message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ArchiveChatAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.ArchiveChatAction; - - /** - * Verifies an ArchiveChatAction message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates an ArchiveChatAction message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ArchiveChatAction - */ - public static fromObject(object: { [k: string]: any }): proto.ArchiveChatAction; - - /** - * Creates a plain object from an ArchiveChatAction message. Also converts values to other types if specified. - * @param message ArchiveChatAction - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.ArchiveChatAction, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this ArchiveChatAction to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a DeleteMessageForMeAction. */ - interface IDeleteMessageForMeAction { - - /** DeleteMessageForMeAction deleteMedia */ - deleteMedia?: (boolean|null); - - /** DeleteMessageForMeAction messageTimestamp */ - messageTimestamp?: (number|Long|null); - } - - /** Represents a DeleteMessageForMeAction. */ - class DeleteMessageForMeAction implements IDeleteMessageForMeAction { - - /** - * Constructs a new DeleteMessageForMeAction. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IDeleteMessageForMeAction); - - /** DeleteMessageForMeAction deleteMedia. */ - public deleteMedia: boolean; - - /** DeleteMessageForMeAction messageTimestamp. */ - public messageTimestamp: (number|Long); - - /** - * Creates a new DeleteMessageForMeAction instance using the specified properties. - * @param [properties] Properties to set - * @returns DeleteMessageForMeAction instance - */ - public static create(properties?: proto.IDeleteMessageForMeAction): proto.DeleteMessageForMeAction; - - /** - * Encodes the specified DeleteMessageForMeAction message. Does not implicitly {@link proto.DeleteMessageForMeAction.verify|verify} messages. - * @param message DeleteMessageForMeAction message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IDeleteMessageForMeAction, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified DeleteMessageForMeAction message, length delimited. Does not implicitly {@link proto.DeleteMessageForMeAction.verify|verify} messages. - * @param message DeleteMessageForMeAction message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IDeleteMessageForMeAction, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a DeleteMessageForMeAction message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns DeleteMessageForMeAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.DeleteMessageForMeAction; - - /** - * Decodes a DeleteMessageForMeAction message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns DeleteMessageForMeAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.DeleteMessageForMeAction; - - /** - * Verifies a DeleteMessageForMeAction message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a DeleteMessageForMeAction message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns DeleteMessageForMeAction - */ - public static fromObject(object: { [k: string]: any }): proto.DeleteMessageForMeAction; - - /** - * Creates a plain object from a DeleteMessageForMeAction message. Also converts values to other types if specified. - * @param message DeleteMessageForMeAction - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.DeleteMessageForMeAction, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this DeleteMessageForMeAction to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a MarkChatAsReadAction. */ - interface IMarkChatAsReadAction { - - /** MarkChatAsReadAction read */ - read?: (boolean|null); - - /** MarkChatAsReadAction messageRange */ - messageRange?: (proto.ISyncActionMessageRange|null); - } - - /** Represents a MarkChatAsReadAction. */ - class MarkChatAsReadAction implements IMarkChatAsReadAction { - - /** - * Constructs a new MarkChatAsReadAction. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IMarkChatAsReadAction); - - /** MarkChatAsReadAction read. */ - public read: boolean; - - /** MarkChatAsReadAction messageRange. */ - public messageRange?: (proto.ISyncActionMessageRange|null); - - /** - * Creates a new MarkChatAsReadAction instance using the specified properties. - * @param [properties] Properties to set - * @returns MarkChatAsReadAction instance - */ - public static create(properties?: proto.IMarkChatAsReadAction): proto.MarkChatAsReadAction; - - /** - * Encodes the specified MarkChatAsReadAction message. Does not implicitly {@link proto.MarkChatAsReadAction.verify|verify} messages. - * @param message MarkChatAsReadAction message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IMarkChatAsReadAction, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified MarkChatAsReadAction message, length delimited. Does not implicitly {@link proto.MarkChatAsReadAction.verify|verify} messages. - * @param message MarkChatAsReadAction message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IMarkChatAsReadAction, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a MarkChatAsReadAction message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns MarkChatAsReadAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.MarkChatAsReadAction; - - /** - * Decodes a MarkChatAsReadAction message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns MarkChatAsReadAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.MarkChatAsReadAction; - - /** - * Verifies a MarkChatAsReadAction message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a MarkChatAsReadAction message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns MarkChatAsReadAction - */ - public static fromObject(object: { [k: string]: any }): proto.MarkChatAsReadAction; - - /** - * Creates a plain object from a MarkChatAsReadAction message. Also converts values to other types if specified. - * @param message MarkChatAsReadAction - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.MarkChatAsReadAction, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this MarkChatAsReadAction to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a ClearChatAction. */ - interface IClearChatAction { - - /** ClearChatAction messageRange */ - messageRange?: (proto.ISyncActionMessageRange|null); - } - - /** Represents a ClearChatAction. */ - class ClearChatAction implements IClearChatAction { - - /** - * Constructs a new ClearChatAction. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IClearChatAction); - - /** ClearChatAction messageRange. */ - public messageRange?: (proto.ISyncActionMessageRange|null); - - /** - * Creates a new ClearChatAction instance using the specified properties. - * @param [properties] Properties to set - * @returns ClearChatAction instance - */ - public static create(properties?: proto.IClearChatAction): proto.ClearChatAction; - - /** - * Encodes the specified ClearChatAction message. Does not implicitly {@link proto.ClearChatAction.verify|verify} messages. - * @param message ClearChatAction message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IClearChatAction, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified ClearChatAction message, length delimited. Does not implicitly {@link proto.ClearChatAction.verify|verify} messages. - * @param message ClearChatAction message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IClearChatAction, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a ClearChatAction message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ClearChatAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.ClearChatAction; - - /** - * Decodes a ClearChatAction message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ClearChatAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.ClearChatAction; - - /** - * Verifies a ClearChatAction message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a ClearChatAction message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ClearChatAction - */ - public static fromObject(object: { [k: string]: any }): proto.ClearChatAction; - - /** - * Creates a plain object from a ClearChatAction message. Also converts values to other types if specified. - * @param message ClearChatAction - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.ClearChatAction, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this ClearChatAction to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a DeleteChatAction. */ - interface IDeleteChatAction { - - /** DeleteChatAction messageRange */ - messageRange?: (proto.ISyncActionMessageRange|null); - } - - /** Represents a DeleteChatAction. */ - class DeleteChatAction implements IDeleteChatAction { - - /** - * Constructs a new DeleteChatAction. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IDeleteChatAction); - - /** DeleteChatAction messageRange. */ - public messageRange?: (proto.ISyncActionMessageRange|null); - - /** - * Creates a new DeleteChatAction instance using the specified properties. - * @param [properties] Properties to set - * @returns DeleteChatAction instance - */ - public static create(properties?: proto.IDeleteChatAction): proto.DeleteChatAction; - - /** - * Encodes the specified DeleteChatAction message. Does not implicitly {@link proto.DeleteChatAction.verify|verify} messages. - * @param message DeleteChatAction message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IDeleteChatAction, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified DeleteChatAction message, length delimited. Does not implicitly {@link proto.DeleteChatAction.verify|verify} messages. - * @param message DeleteChatAction message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IDeleteChatAction, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a DeleteChatAction message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns DeleteChatAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.DeleteChatAction; - - /** - * Decodes a DeleteChatAction message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns DeleteChatAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.DeleteChatAction; - - /** - * Verifies a DeleteChatAction message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a DeleteChatAction message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns DeleteChatAction - */ - public static fromObject(object: { [k: string]: any }): proto.DeleteChatAction; - - /** - * Creates a plain object from a DeleteChatAction message. Also converts values to other types if specified. - * @param message DeleteChatAction - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.DeleteChatAction, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this DeleteChatAction to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of an UnarchiveChatsSetting. */ - interface IUnarchiveChatsSetting { - - /** UnarchiveChatsSetting unarchiveChats */ - unarchiveChats?: (boolean|null); - } - - /** Represents an UnarchiveChatsSetting. */ - class UnarchiveChatsSetting implements IUnarchiveChatsSetting { - - /** - * Constructs a new UnarchiveChatsSetting. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IUnarchiveChatsSetting); - - /** UnarchiveChatsSetting unarchiveChats. */ - public unarchiveChats: boolean; - - /** - * Creates a new UnarchiveChatsSetting instance using the specified properties. - * @param [properties] Properties to set - * @returns UnarchiveChatsSetting instance - */ - public static create(properties?: proto.IUnarchiveChatsSetting): proto.UnarchiveChatsSetting; - - /** - * Encodes the specified UnarchiveChatsSetting message. Does not implicitly {@link proto.UnarchiveChatsSetting.verify|verify} messages. - * @param message UnarchiveChatsSetting message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IUnarchiveChatsSetting, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified UnarchiveChatsSetting message, length delimited. Does not implicitly {@link proto.UnarchiveChatsSetting.verify|verify} messages. - * @param message UnarchiveChatsSetting message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IUnarchiveChatsSetting, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes an UnarchiveChatsSetting message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns UnarchiveChatsSetting - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.UnarchiveChatsSetting; - - /** - * Decodes an UnarchiveChatsSetting message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns UnarchiveChatsSetting - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.UnarchiveChatsSetting; - - /** - * Verifies an UnarchiveChatsSetting message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates an UnarchiveChatsSetting message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns UnarchiveChatsSetting - */ - public static fromObject(object: { [k: string]: any }): proto.UnarchiveChatsSetting; - - /** - * Creates a plain object from an UnarchiveChatsSetting message. Also converts values to other types if specified. - * @param message UnarchiveChatsSetting - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.UnarchiveChatsSetting, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this UnarchiveChatsSetting to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a SyncActionMessageRange. */ - interface ISyncActionMessageRange { - - /** SyncActionMessageRange lastMessageTimestamp */ - lastMessageTimestamp?: (number|Long|null); - - /** SyncActionMessageRange lastSystemMessageTimestamp */ - lastSystemMessageTimestamp?: (number|Long|null); - - /** SyncActionMessageRange messages */ - messages?: (proto.ISyncActionMessage[]|null); - } - - /** Represents a SyncActionMessageRange. */ - class SyncActionMessageRange implements ISyncActionMessageRange { - - /** - * Constructs a new SyncActionMessageRange. - * @param [properties] Properties to set - */ - constructor(properties?: proto.ISyncActionMessageRange); - - /** SyncActionMessageRange lastMessageTimestamp. */ - public lastMessageTimestamp: (number|Long); - - /** SyncActionMessageRange lastSystemMessageTimestamp. */ - public lastSystemMessageTimestamp: (number|Long); - - /** SyncActionMessageRange messages. */ - public messages: proto.ISyncActionMessage[]; - - /** - * Creates a new SyncActionMessageRange instance using the specified properties. - * @param [properties] Properties to set - * @returns SyncActionMessageRange instance - */ - public static create(properties?: proto.ISyncActionMessageRange): proto.SyncActionMessageRange; - - /** - * Encodes the specified SyncActionMessageRange message. Does not implicitly {@link proto.SyncActionMessageRange.verify|verify} messages. - * @param message SyncActionMessageRange message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.ISyncActionMessageRange, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified SyncActionMessageRange message, length delimited. Does not implicitly {@link proto.SyncActionMessageRange.verify|verify} messages. - * @param message SyncActionMessageRange message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.ISyncActionMessageRange, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a SyncActionMessageRange message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns SyncActionMessageRange - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.SyncActionMessageRange; - - /** - * Decodes a SyncActionMessageRange message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns SyncActionMessageRange - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.SyncActionMessageRange; - - /** - * Verifies a SyncActionMessageRange message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a SyncActionMessageRange message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns SyncActionMessageRange - */ - public static fromObject(object: { [k: string]: any }): proto.SyncActionMessageRange; - - /** - * Creates a plain object from a SyncActionMessageRange message. Also converts values to other types if specified. - * @param message SyncActionMessageRange - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.SyncActionMessageRange, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this SyncActionMessageRange to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a SyncActionMessage. */ - interface ISyncActionMessage { - - /** SyncActionMessage key */ - key?: (proto.IMessageKey|null); - - /** SyncActionMessage timestamp */ - timestamp?: (number|Long|null); - } - - /** Represents a SyncActionMessage. */ - class SyncActionMessage implements ISyncActionMessage { - - /** - * Constructs a new SyncActionMessage. - * @param [properties] Properties to set - */ - constructor(properties?: proto.ISyncActionMessage); - - /** SyncActionMessage key. */ - public key?: (proto.IMessageKey|null); - - /** SyncActionMessage timestamp. */ - public timestamp: (number|Long); - - /** - * Creates a new SyncActionMessage instance using the specified properties. - * @param [properties] Properties to set - * @returns SyncActionMessage instance - */ - public static create(properties?: proto.ISyncActionMessage): proto.SyncActionMessage; - - /** - * Encodes the specified SyncActionMessage message. Does not implicitly {@link proto.SyncActionMessage.verify|verify} messages. - * @param message SyncActionMessage message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.ISyncActionMessage, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified SyncActionMessage message, length delimited. Does not implicitly {@link proto.SyncActionMessage.verify|verify} messages. - * @param message SyncActionMessage message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.ISyncActionMessage, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a SyncActionMessage message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns SyncActionMessage - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.SyncActionMessage; - - /** - * Decodes a SyncActionMessage message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns SyncActionMessage - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.SyncActionMessage; - - /** - * Verifies a SyncActionMessage message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a SyncActionMessage message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns SyncActionMessage - */ - public static fromObject(object: { [k: string]: any }): proto.SyncActionMessage; - - /** - * Creates a plain object from a SyncActionMessage message. Also converts values to other types if specified. - * @param message SyncActionMessage - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.SyncActionMessage, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this SyncActionMessage to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a KeyExpiration. */ - interface IKeyExpiration { - - /** KeyExpiration expiredKeyEpoch */ - expiredKeyEpoch?: (number|null); - } - - /** Represents a KeyExpiration. */ - class KeyExpiration implements IKeyExpiration { - - /** - * Constructs a new KeyExpiration. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IKeyExpiration); - - /** KeyExpiration expiredKeyEpoch. */ - public expiredKeyEpoch: number; - - /** - * Creates a new KeyExpiration instance using the specified properties. - * @param [properties] Properties to set - * @returns KeyExpiration instance - */ - public static create(properties?: proto.IKeyExpiration): proto.KeyExpiration; - - /** - * Encodes the specified KeyExpiration message. Does not implicitly {@link proto.KeyExpiration.verify|verify} messages. - * @param message KeyExpiration message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IKeyExpiration, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified KeyExpiration message, length delimited. Does not implicitly {@link proto.KeyExpiration.verify|verify} messages. - * @param message KeyExpiration message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IKeyExpiration, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a KeyExpiration message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns KeyExpiration - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.KeyExpiration; - - /** - * Decodes a KeyExpiration message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns KeyExpiration - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.KeyExpiration; - - /** - * Verifies a KeyExpiration message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a KeyExpiration message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns KeyExpiration - */ - public static fromObject(object: { [k: string]: any }): proto.KeyExpiration; - - /** - * Creates a plain object from a KeyExpiration message. Also converts values to other types if specified. - * @param message KeyExpiration - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.KeyExpiration, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this KeyExpiration to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a SyncActionValue. */ - interface ISyncActionValue { - - /** SyncActionValue timestamp */ - timestamp?: (number|Long|null); - - /** SyncActionValue starAction */ - starAction?: (proto.IStarAction|null); - - /** SyncActionValue contactAction */ - contactAction?: (proto.IContactAction|null); - - /** SyncActionValue muteAction */ - muteAction?: (proto.IMuteAction|null); - - /** SyncActionValue pinAction */ - pinAction?: (proto.IPinAction|null); - - /** SyncActionValue securityNotificationSetting */ - securityNotificationSetting?: (proto.ISecurityNotificationSetting|null); - - /** SyncActionValue pushNameSetting */ - pushNameSetting?: (proto.IPushNameSetting|null); - - /** SyncActionValue quickReplyAction */ - quickReplyAction?: (proto.IQuickReplyAction|null); - - /** SyncActionValue recentStickerWeightsAction */ - recentStickerWeightsAction?: (proto.IRecentStickerWeightsAction|null); - - /** SyncActionValue recentStickerMetadata */ - recentStickerMetadata?: (proto.IRecentStickerMetadata|null); - - /** SyncActionValue recentEmojiWeightsAction */ - recentEmojiWeightsAction?: (proto.IRecentEmojiWeightsAction|null); - - /** SyncActionValue labelEditAction */ - labelEditAction?: (proto.ILabelEditAction|null); - - /** SyncActionValue labelAssociationAction */ - labelAssociationAction?: (proto.ILabelAssociationAction|null); - - /** SyncActionValue localeSetting */ - localeSetting?: (proto.ILocaleSetting|null); - - /** SyncActionValue archiveChatAction */ - archiveChatAction?: (proto.IArchiveChatAction|null); - - /** SyncActionValue deleteMessageForMeAction */ - deleteMessageForMeAction?: (proto.IDeleteMessageForMeAction|null); - - /** SyncActionValue keyExpiration */ - keyExpiration?: (proto.IKeyExpiration|null); - - /** SyncActionValue markChatAsReadAction */ - markChatAsReadAction?: (proto.IMarkChatAsReadAction|null); - - /** SyncActionValue clearChatAction */ - clearChatAction?: (proto.IClearChatAction|null); - - /** SyncActionValue deleteChatAction */ - deleteChatAction?: (proto.IDeleteChatAction|null); - - /** SyncActionValue unarchiveChatsSetting */ - unarchiveChatsSetting?: (proto.IUnarchiveChatsSetting|null); - } - - /** Represents a SyncActionValue. */ - class SyncActionValue implements ISyncActionValue { - - /** - * Constructs a new SyncActionValue. - * @param [properties] Properties to set - */ - constructor(properties?: proto.ISyncActionValue); - - /** SyncActionValue timestamp. */ - public timestamp: (number|Long); - - /** SyncActionValue starAction. */ - public starAction?: (proto.IStarAction|null); - - /** SyncActionValue contactAction. */ - public contactAction?: (proto.IContactAction|null); - - /** SyncActionValue muteAction. */ - public muteAction?: (proto.IMuteAction|null); - - /** SyncActionValue pinAction. */ - public pinAction?: (proto.IPinAction|null); - - /** SyncActionValue securityNotificationSetting. */ - public securityNotificationSetting?: (proto.ISecurityNotificationSetting|null); - - /** SyncActionValue pushNameSetting. */ - public pushNameSetting?: (proto.IPushNameSetting|null); - - /** SyncActionValue quickReplyAction. */ - public quickReplyAction?: (proto.IQuickReplyAction|null); - - /** SyncActionValue recentStickerWeightsAction. */ - public recentStickerWeightsAction?: (proto.IRecentStickerWeightsAction|null); - - /** SyncActionValue recentStickerMetadata. */ - public recentStickerMetadata?: (proto.IRecentStickerMetadata|null); - - /** SyncActionValue recentEmojiWeightsAction. */ - public recentEmojiWeightsAction?: (proto.IRecentEmojiWeightsAction|null); - - /** SyncActionValue labelEditAction. */ - public labelEditAction?: (proto.ILabelEditAction|null); - - /** SyncActionValue labelAssociationAction. */ - public labelAssociationAction?: (proto.ILabelAssociationAction|null); - - /** SyncActionValue localeSetting. */ - public localeSetting?: (proto.ILocaleSetting|null); - - /** SyncActionValue archiveChatAction. */ - public archiveChatAction?: (proto.IArchiveChatAction|null); - - /** SyncActionValue deleteMessageForMeAction. */ - public deleteMessageForMeAction?: (proto.IDeleteMessageForMeAction|null); - - /** SyncActionValue keyExpiration. */ - public keyExpiration?: (proto.IKeyExpiration|null); - - /** SyncActionValue markChatAsReadAction. */ - public markChatAsReadAction?: (proto.IMarkChatAsReadAction|null); - - /** SyncActionValue clearChatAction. */ - public clearChatAction?: (proto.IClearChatAction|null); - - /** SyncActionValue deleteChatAction. */ - public deleteChatAction?: (proto.IDeleteChatAction|null); - - /** SyncActionValue unarchiveChatsSetting. */ - public unarchiveChatsSetting?: (proto.IUnarchiveChatsSetting|null); - - /** - * Creates a new SyncActionValue instance using the specified properties. - * @param [properties] Properties to set - * @returns SyncActionValue instance - */ - public static create(properties?: proto.ISyncActionValue): proto.SyncActionValue; - - /** - * Encodes the specified SyncActionValue message. Does not implicitly {@link proto.SyncActionValue.verify|verify} messages. - * @param message SyncActionValue message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.ISyncActionValue, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified SyncActionValue message, length delimited. Does not implicitly {@link proto.SyncActionValue.verify|verify} messages. - * @param message SyncActionValue message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.ISyncActionValue, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a SyncActionValue message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns SyncActionValue - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.SyncActionValue; - - /** - * Decodes a SyncActionValue message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns SyncActionValue - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.SyncActionValue; - - /** - * Verifies a SyncActionValue message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a SyncActionValue message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns SyncActionValue - */ - public static fromObject(object: { [k: string]: any }): proto.SyncActionValue; - - /** - * Creates a plain object from a SyncActionValue message. Also converts values to other types if specified. - * @param message SyncActionValue - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.SyncActionValue, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this SyncActionValue to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a RecentEmojiWeight. */ - interface IRecentEmojiWeight { - - /** RecentEmojiWeight emoji */ - emoji?: (string|null); - - /** RecentEmojiWeight weight */ - weight?: (number|null); - } - - /** Represents a RecentEmojiWeight. */ - class RecentEmojiWeight implements IRecentEmojiWeight { - - /** - * Constructs a new RecentEmojiWeight. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IRecentEmojiWeight); - - /** RecentEmojiWeight emoji. */ - public emoji: string; - - /** RecentEmojiWeight weight. */ - public weight: number; - - /** - * Creates a new RecentEmojiWeight instance using the specified properties. - * @param [properties] Properties to set - * @returns RecentEmojiWeight instance - */ - public static create(properties?: proto.IRecentEmojiWeight): proto.RecentEmojiWeight; - - /** - * Encodes the specified RecentEmojiWeight message. Does not implicitly {@link proto.RecentEmojiWeight.verify|verify} messages. - * @param message RecentEmojiWeight message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IRecentEmojiWeight, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified RecentEmojiWeight message, length delimited. Does not implicitly {@link proto.RecentEmojiWeight.verify|verify} messages. - * @param message RecentEmojiWeight message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IRecentEmojiWeight, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a RecentEmojiWeight message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns RecentEmojiWeight - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.RecentEmojiWeight; - - /** - * Decodes a RecentEmojiWeight message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns RecentEmojiWeight - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.RecentEmojiWeight; - - /** - * Verifies a RecentEmojiWeight message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a RecentEmojiWeight message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns RecentEmojiWeight - */ - public static fromObject(object: { [k: string]: any }): proto.RecentEmojiWeight; - - /** - * Creates a plain object from a RecentEmojiWeight message. Also converts values to other types if specified. - * @param message RecentEmojiWeight - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.RecentEmojiWeight, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this RecentEmojiWeight to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a RecentStickerWeight. */ - interface IRecentStickerWeight { - - /** RecentStickerWeight filehash */ - filehash?: (string|null); - - /** RecentStickerWeight weight */ - weight?: (number|null); - } - - /** Represents a RecentStickerWeight. */ - class RecentStickerWeight implements IRecentStickerWeight { - - /** - * Constructs a new RecentStickerWeight. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IRecentStickerWeight); - - /** RecentStickerWeight filehash. */ - public filehash: string; - - /** RecentStickerWeight weight. */ - public weight: number; - - /** - * Creates a new RecentStickerWeight instance using the specified properties. - * @param [properties] Properties to set - * @returns RecentStickerWeight instance - */ - public static create(properties?: proto.IRecentStickerWeight): proto.RecentStickerWeight; - - /** - * Encodes the specified RecentStickerWeight message. Does not implicitly {@link proto.RecentStickerWeight.verify|verify} messages. - * @param message RecentStickerWeight message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IRecentStickerWeight, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified RecentStickerWeight message, length delimited. Does not implicitly {@link proto.RecentStickerWeight.verify|verify} messages. - * @param message RecentStickerWeight message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IRecentStickerWeight, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a RecentStickerWeight message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns RecentStickerWeight - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.RecentStickerWeight; - - /** - * Decodes a RecentStickerWeight message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns RecentStickerWeight - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.RecentStickerWeight; - - /** - * Verifies a RecentStickerWeight message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a RecentStickerWeight message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns RecentStickerWeight - */ - public static fromObject(object: { [k: string]: any }): proto.RecentStickerWeight; - - /** - * Creates a plain object from a RecentStickerWeight message. Also converts values to other types if specified. - * @param message RecentStickerWeight - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.RecentStickerWeight, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this RecentStickerWeight to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a SyncdPatch. */ - interface ISyncdPatch { - - /** SyncdPatch version */ - version?: (proto.ISyncdVersion|null); - - /** SyncdPatch mutations */ - mutations?: (proto.ISyncdMutation[]|null); - - /** SyncdPatch externalMutations */ - externalMutations?: (proto.IExternalBlobReference|null); - - /** SyncdPatch snapshotMac */ - snapshotMac?: (Uint8Array|null); - - /** SyncdPatch patchMac */ - patchMac?: (Uint8Array|null); - - /** SyncdPatch keyId */ - keyId?: (proto.IKeyId|null); - - /** SyncdPatch exitCode */ - exitCode?: (proto.IExitCode|null); - - /** SyncdPatch deviceIndex */ - deviceIndex?: (number|null); - } - - /** Represents a SyncdPatch. */ - class SyncdPatch implements ISyncdPatch { - - /** - * Constructs a new SyncdPatch. - * @param [properties] Properties to set - */ - constructor(properties?: proto.ISyncdPatch); - - /** SyncdPatch version. */ - public version?: (proto.ISyncdVersion|null); - - /** SyncdPatch mutations. */ - public mutations: proto.ISyncdMutation[]; - - /** SyncdPatch externalMutations. */ - public externalMutations?: (proto.IExternalBlobReference|null); - - /** SyncdPatch snapshotMac. */ - public snapshotMac: Uint8Array; - - /** SyncdPatch patchMac. */ - public patchMac: Uint8Array; - - /** SyncdPatch keyId. */ - public keyId?: (proto.IKeyId|null); - - /** SyncdPatch exitCode. */ - public exitCode?: (proto.IExitCode|null); - - /** SyncdPatch deviceIndex. */ - public deviceIndex: number; - - /** - * Creates a new SyncdPatch instance using the specified properties. - * @param [properties] Properties to set - * @returns SyncdPatch instance - */ - public static create(properties?: proto.ISyncdPatch): proto.SyncdPatch; - - /** - * Encodes the specified SyncdPatch message. Does not implicitly {@link proto.SyncdPatch.verify|verify} messages. - * @param message SyncdPatch message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.ISyncdPatch, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified SyncdPatch message, length delimited. Does not implicitly {@link proto.SyncdPatch.verify|verify} messages. - * @param message SyncdPatch message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.ISyncdPatch, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a SyncdPatch message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns SyncdPatch - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.SyncdPatch; - - /** - * Decodes a SyncdPatch message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns SyncdPatch - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.SyncdPatch; - - /** - * Verifies a SyncdPatch message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a SyncdPatch message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns SyncdPatch - */ - public static fromObject(object: { [k: string]: any }): proto.SyncdPatch; - - /** - * Creates a plain object from a SyncdPatch message. Also converts values to other types if specified. - * @param message SyncdPatch - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.SyncdPatch, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this SyncdPatch to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a SyncdMutation. */ - interface ISyncdMutation { - - /** SyncdMutation operation */ - operation?: (proto.SyncdMutation.SyncdMutationSyncdOperation|null); - - /** SyncdMutation record */ - record?: (proto.ISyncdRecord|null); - } - - /** Represents a SyncdMutation. */ - class SyncdMutation implements ISyncdMutation { - - /** - * Constructs a new SyncdMutation. - * @param [properties] Properties to set - */ - constructor(properties?: proto.ISyncdMutation); - - /** SyncdMutation operation. */ - public operation: proto.SyncdMutation.SyncdMutationSyncdOperation; - - /** SyncdMutation record. */ - public record?: (proto.ISyncdRecord|null); - - /** - * Creates a new SyncdMutation instance using the specified properties. - * @param [properties] Properties to set - * @returns SyncdMutation instance - */ - public static create(properties?: proto.ISyncdMutation): proto.SyncdMutation; - - /** - * Encodes the specified SyncdMutation message. Does not implicitly {@link proto.SyncdMutation.verify|verify} messages. - * @param message SyncdMutation message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.ISyncdMutation, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified SyncdMutation message, length delimited. Does not implicitly {@link proto.SyncdMutation.verify|verify} messages. - * @param message SyncdMutation message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.ISyncdMutation, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a SyncdMutation message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns SyncdMutation - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.SyncdMutation; - - /** - * Decodes a SyncdMutation message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns SyncdMutation - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.SyncdMutation; - - /** - * Verifies a SyncdMutation message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a SyncdMutation message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns SyncdMutation - */ - public static fromObject(object: { [k: string]: any }): proto.SyncdMutation; - - /** - * Creates a plain object from a SyncdMutation message. Also converts values to other types if specified. - * @param message SyncdMutation - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.SyncdMutation, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this SyncdMutation to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - namespace SyncdMutation { - - /** SyncdMutationSyncdOperation enum. */ - enum SyncdMutationSyncdOperation { - SET = 0, - REMOVE = 1 - } - } - - /** Properties of a SyncdMutations. */ - interface ISyncdMutations { - - /** SyncdMutations mutations */ - mutations?: (proto.ISyncdMutation[]|null); - } - - /** Represents a SyncdMutations. */ - class SyncdMutations implements ISyncdMutations { - - /** - * Constructs a new SyncdMutations. - * @param [properties] Properties to set - */ - constructor(properties?: proto.ISyncdMutations); - - /** SyncdMutations mutations. */ - public mutations: proto.ISyncdMutation[]; - - /** - * Creates a new SyncdMutations instance using the specified properties. - * @param [properties] Properties to set - * @returns SyncdMutations instance - */ - public static create(properties?: proto.ISyncdMutations): proto.SyncdMutations; - - /** - * Encodes the specified SyncdMutations message. Does not implicitly {@link proto.SyncdMutations.verify|verify} messages. - * @param message SyncdMutations message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.ISyncdMutations, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified SyncdMutations message, length delimited. Does not implicitly {@link proto.SyncdMutations.verify|verify} messages. - * @param message SyncdMutations message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.ISyncdMutations, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a SyncdMutations message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns SyncdMutations - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.SyncdMutations; - - /** - * Decodes a SyncdMutations message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns SyncdMutations - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.SyncdMutations; - - /** - * Verifies a SyncdMutations message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a SyncdMutations message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns SyncdMutations - */ - public static fromObject(object: { [k: string]: any }): proto.SyncdMutations; - - /** - * Creates a plain object from a SyncdMutations message. Also converts values to other types if specified. - * @param message SyncdMutations - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.SyncdMutations, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this SyncdMutations to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a SyncdSnapshot. */ - interface ISyncdSnapshot { - - /** SyncdSnapshot version */ - version?: (proto.ISyncdVersion|null); - - /** SyncdSnapshot records */ - records?: (proto.ISyncdRecord[]|null); - - /** SyncdSnapshot mac */ - mac?: (Uint8Array|null); - - /** SyncdSnapshot keyId */ - keyId?: (proto.IKeyId|null); - } - - /** Represents a SyncdSnapshot. */ - class SyncdSnapshot implements ISyncdSnapshot { - - /** - * Constructs a new SyncdSnapshot. - * @param [properties] Properties to set - */ - constructor(properties?: proto.ISyncdSnapshot); - - /** SyncdSnapshot version. */ - public version?: (proto.ISyncdVersion|null); - - /** SyncdSnapshot records. */ - public records: proto.ISyncdRecord[]; - - /** SyncdSnapshot mac. */ - public mac: Uint8Array; - - /** SyncdSnapshot keyId. */ - public keyId?: (proto.IKeyId|null); - - /** - * Creates a new SyncdSnapshot instance using the specified properties. - * @param [properties] Properties to set - * @returns SyncdSnapshot instance - */ - public static create(properties?: proto.ISyncdSnapshot): proto.SyncdSnapshot; - - /** - * Encodes the specified SyncdSnapshot message. Does not implicitly {@link proto.SyncdSnapshot.verify|verify} messages. - * @param message SyncdSnapshot message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.ISyncdSnapshot, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified SyncdSnapshot message, length delimited. Does not implicitly {@link proto.SyncdSnapshot.verify|verify} messages. - * @param message SyncdSnapshot message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.ISyncdSnapshot, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a SyncdSnapshot message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns SyncdSnapshot - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.SyncdSnapshot; - - /** - * Decodes a SyncdSnapshot message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns SyncdSnapshot - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.SyncdSnapshot; - - /** - * Verifies a SyncdSnapshot message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a SyncdSnapshot message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns SyncdSnapshot - */ - public static fromObject(object: { [k: string]: any }): proto.SyncdSnapshot; - - /** - * Creates a plain object from a SyncdSnapshot message. Also converts values to other types if specified. - * @param message SyncdSnapshot - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.SyncdSnapshot, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this SyncdSnapshot to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of an ExternalBlobReference. */ - interface IExternalBlobReference { - - /** ExternalBlobReference mediaKey */ - mediaKey?: (Uint8Array|null); - - /** ExternalBlobReference directPath */ - directPath?: (string|null); - - /** ExternalBlobReference handle */ - handle?: (string|null); - - /** ExternalBlobReference fileSizeBytes */ - fileSizeBytes?: (number|Long|null); - - /** ExternalBlobReference fileSha256 */ - fileSha256?: (Uint8Array|null); - - /** ExternalBlobReference fileEncSha256 */ - fileEncSha256?: (Uint8Array|null); - } - - /** Represents an ExternalBlobReference. */ - class ExternalBlobReference implements IExternalBlobReference { - - /** - * Constructs a new ExternalBlobReference. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IExternalBlobReference); - - /** ExternalBlobReference mediaKey. */ - public mediaKey: Uint8Array; - - /** ExternalBlobReference directPath. */ - public directPath: string; - - /** ExternalBlobReference handle. */ - public handle: string; - - /** ExternalBlobReference fileSizeBytes. */ - public fileSizeBytes: (number|Long); - - /** ExternalBlobReference fileSha256. */ - public fileSha256: Uint8Array; - - /** ExternalBlobReference fileEncSha256. */ - public fileEncSha256: Uint8Array; - - /** - * Creates a new ExternalBlobReference instance using the specified properties. - * @param [properties] Properties to set - * @returns ExternalBlobReference instance - */ - public static create(properties?: proto.IExternalBlobReference): proto.ExternalBlobReference; - - /** - * Encodes the specified ExternalBlobReference message. Does not implicitly {@link proto.ExternalBlobReference.verify|verify} messages. - * @param message ExternalBlobReference message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IExternalBlobReference, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified ExternalBlobReference message, length delimited. Does not implicitly {@link proto.ExternalBlobReference.verify|verify} messages. - * @param message ExternalBlobReference message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IExternalBlobReference, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes an ExternalBlobReference message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ExternalBlobReference - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.ExternalBlobReference; - - /** - * Decodes an ExternalBlobReference message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ExternalBlobReference - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.ExternalBlobReference; - - /** - * Verifies an ExternalBlobReference message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates an ExternalBlobReference message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ExternalBlobReference - */ - public static fromObject(object: { [k: string]: any }): proto.ExternalBlobReference; - - /** - * Creates a plain object from an ExternalBlobReference message. Also converts values to other types if specified. - * @param message ExternalBlobReference - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.ExternalBlobReference, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this ExternalBlobReference to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a SyncdRecord. */ - interface ISyncdRecord { - - /** SyncdRecord index */ - index?: (proto.ISyncdIndex|null); - - /** SyncdRecord value */ - value?: (proto.ISyncdValue|null); - - /** SyncdRecord keyId */ - keyId?: (proto.IKeyId|null); - } - - /** Represents a SyncdRecord. */ - class SyncdRecord implements ISyncdRecord { - - /** - * Constructs a new SyncdRecord. - * @param [properties] Properties to set - */ - constructor(properties?: proto.ISyncdRecord); - - /** SyncdRecord index. */ - public index?: (proto.ISyncdIndex|null); - - /** SyncdRecord value. */ - public value?: (proto.ISyncdValue|null); - - /** SyncdRecord keyId. */ - public keyId?: (proto.IKeyId|null); - - /** - * Creates a new SyncdRecord instance using the specified properties. - * @param [properties] Properties to set - * @returns SyncdRecord instance - */ - public static create(properties?: proto.ISyncdRecord): proto.SyncdRecord; - - /** - * Encodes the specified SyncdRecord message. Does not implicitly {@link proto.SyncdRecord.verify|verify} messages. - * @param message SyncdRecord message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.ISyncdRecord, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified SyncdRecord message, length delimited. Does not implicitly {@link proto.SyncdRecord.verify|verify} messages. - * @param message SyncdRecord message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.ISyncdRecord, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a SyncdRecord message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns SyncdRecord - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.SyncdRecord; - - /** - * Decodes a SyncdRecord message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns SyncdRecord - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.SyncdRecord; - - /** - * Verifies a SyncdRecord message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a SyncdRecord message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns SyncdRecord - */ - public static fromObject(object: { [k: string]: any }): proto.SyncdRecord; - - /** - * Creates a plain object from a SyncdRecord message. Also converts values to other types if specified. - * @param message SyncdRecord - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.SyncdRecord, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this SyncdRecord to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a KeyId. */ - interface IKeyId { - - /** KeyId id */ - id?: (Uint8Array|null); - } - - /** Represents a KeyId. */ - class KeyId implements IKeyId { - - /** - * Constructs a new KeyId. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IKeyId); - - /** KeyId id. */ - public id: Uint8Array; - - /** - * Creates a new KeyId instance using the specified properties. - * @param [properties] Properties to set - * @returns KeyId instance - */ - public static create(properties?: proto.IKeyId): proto.KeyId; - - /** - * Encodes the specified KeyId message. Does not implicitly {@link proto.KeyId.verify|verify} messages. - * @param message KeyId message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IKeyId, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified KeyId message, length delimited. Does not implicitly {@link proto.KeyId.verify|verify} messages. - * @param message KeyId message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IKeyId, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a KeyId message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns KeyId - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.KeyId; - - /** - * Decodes a KeyId message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns KeyId - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.KeyId; - - /** - * Verifies a KeyId message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a KeyId message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns KeyId - */ - public static fromObject(object: { [k: string]: any }): proto.KeyId; - - /** - * Creates a plain object from a KeyId message. Also converts values to other types if specified. - * @param message KeyId - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.KeyId, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this KeyId to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a SyncdValue. */ - interface ISyncdValue { - - /** SyncdValue blob */ - blob?: (Uint8Array|null); - } - - /** Represents a SyncdValue. */ - class SyncdValue implements ISyncdValue { - - /** - * Constructs a new SyncdValue. - * @param [properties] Properties to set - */ - constructor(properties?: proto.ISyncdValue); - - /** SyncdValue blob. */ - public blob: Uint8Array; - - /** - * Creates a new SyncdValue instance using the specified properties. - * @param [properties] Properties to set - * @returns SyncdValue instance - */ - public static create(properties?: proto.ISyncdValue): proto.SyncdValue; - - /** - * Encodes the specified SyncdValue message. Does not implicitly {@link proto.SyncdValue.verify|verify} messages. - * @param message SyncdValue message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.ISyncdValue, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified SyncdValue message, length delimited. Does not implicitly {@link proto.SyncdValue.verify|verify} messages. - * @param message SyncdValue message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.ISyncdValue, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a SyncdValue message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns SyncdValue - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.SyncdValue; - - /** - * Decodes a SyncdValue message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns SyncdValue - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.SyncdValue; - - /** - * Verifies a SyncdValue message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a SyncdValue message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns SyncdValue - */ - public static fromObject(object: { [k: string]: any }): proto.SyncdValue; - - /** - * Creates a plain object from a SyncdValue message. Also converts values to other types if specified. - * @param message SyncdValue - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.SyncdValue, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this SyncdValue to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a SyncdIndex. */ - interface ISyncdIndex { - - /** SyncdIndex blob */ - blob?: (Uint8Array|null); - } - - /** Represents a SyncdIndex. */ - class SyncdIndex implements ISyncdIndex { - - /** - * Constructs a new SyncdIndex. - * @param [properties] Properties to set - */ - constructor(properties?: proto.ISyncdIndex); - - /** SyncdIndex blob. */ - public blob: Uint8Array; - - /** - * Creates a new SyncdIndex instance using the specified properties. - * @param [properties] Properties to set - * @returns SyncdIndex instance - */ - public static create(properties?: proto.ISyncdIndex): proto.SyncdIndex; - - /** - * Encodes the specified SyncdIndex message. Does not implicitly {@link proto.SyncdIndex.verify|verify} messages. - * @param message SyncdIndex message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.ISyncdIndex, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified SyncdIndex message, length delimited. Does not implicitly {@link proto.SyncdIndex.verify|verify} messages. - * @param message SyncdIndex message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.ISyncdIndex, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a SyncdIndex message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns SyncdIndex - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.SyncdIndex; - - /** - * Decodes a SyncdIndex message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns SyncdIndex - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.SyncdIndex; - - /** - * Verifies a SyncdIndex message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a SyncdIndex message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns SyncdIndex - */ - public static fromObject(object: { [k: string]: any }): proto.SyncdIndex; - - /** - * Creates a plain object from a SyncdIndex message. Also converts values to other types if specified. - * @param message SyncdIndex - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.SyncdIndex, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this SyncdIndex to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of an ExitCode. */ - interface IExitCode { - - /** ExitCode code */ - code?: (number|Long|null); - - /** ExitCode text */ - text?: (string|null); - } - - /** Represents an ExitCode. */ - class ExitCode implements IExitCode { - - /** - * Constructs a new ExitCode. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IExitCode); - - /** ExitCode code. */ - public code: (number|Long); - - /** ExitCode text. */ - public text: string; - - /** - * Creates a new ExitCode instance using the specified properties. - * @param [properties] Properties to set - * @returns ExitCode instance - */ - public static create(properties?: proto.IExitCode): proto.ExitCode; - - /** - * Encodes the specified ExitCode message. Does not implicitly {@link proto.ExitCode.verify|verify} messages. - * @param message ExitCode message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IExitCode, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified ExitCode message, length delimited. Does not implicitly {@link proto.ExitCode.verify|verify} messages. - * @param message ExitCode message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IExitCode, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes an ExitCode message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ExitCode - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.ExitCode; - - /** - * Decodes an ExitCode message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ExitCode - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.ExitCode; - - /** - * Verifies an ExitCode message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates an ExitCode message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ExitCode - */ - public static fromObject(object: { [k: string]: any }): proto.ExitCode; - - /** - * Creates a plain object from an ExitCode message. Also converts values to other types if specified. - * @param message ExitCode - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.ExitCode, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this ExitCode to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a SyncdVersion. */ - interface ISyncdVersion { - - /** SyncdVersion version */ - version?: (number|Long|null); - } - - /** Represents a SyncdVersion. */ - class SyncdVersion implements ISyncdVersion { - - /** - * Constructs a new SyncdVersion. - * @param [properties] Properties to set - */ - constructor(properties?: proto.ISyncdVersion); - - /** SyncdVersion version. */ - public version: (number|Long); - - /** - * Creates a new SyncdVersion instance using the specified properties. - * @param [properties] Properties to set - * @returns SyncdVersion instance - */ - public static create(properties?: proto.ISyncdVersion): proto.SyncdVersion; - - /** - * Encodes the specified SyncdVersion message. Does not implicitly {@link proto.SyncdVersion.verify|verify} messages. - * @param message SyncdVersion message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.ISyncdVersion, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified SyncdVersion message, length delimited. Does not implicitly {@link proto.SyncdVersion.verify|verify} messages. - * @param message SyncdVersion message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.ISyncdVersion, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a SyncdVersion message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns SyncdVersion - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.SyncdVersion; - - /** - * Decodes a SyncdVersion message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns SyncdVersion - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.SyncdVersion; - - /** - * Verifies a SyncdVersion message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a SyncdVersion message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns SyncdVersion - */ - public static fromObject(object: { [k: string]: any }): proto.SyncdVersion; - - /** - * Creates a plain object from a SyncdVersion message. Also converts values to other types if specified. - * @param message SyncdVersion - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.SyncdVersion, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this SyncdVersion to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a ServerErrorReceipt. */ - interface IServerErrorReceipt { - - /** ServerErrorReceipt stanzaId */ - stanzaId?: (string|null); - } - - /** Represents a ServerErrorReceipt. */ - class ServerErrorReceipt implements IServerErrorReceipt { - - /** - * Constructs a new ServerErrorReceipt. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IServerErrorReceipt); - - /** ServerErrorReceipt stanzaId. */ - public stanzaId: string; - - /** - * Creates a new ServerErrorReceipt instance using the specified properties. - * @param [properties] Properties to set - * @returns ServerErrorReceipt instance - */ - public static create(properties?: proto.IServerErrorReceipt): proto.ServerErrorReceipt; - - /** - * Encodes the specified ServerErrorReceipt message. Does not implicitly {@link proto.ServerErrorReceipt.verify|verify} messages. - * @param message ServerErrorReceipt message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IServerErrorReceipt, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified ServerErrorReceipt message, length delimited. Does not implicitly {@link proto.ServerErrorReceipt.verify|verify} messages. - * @param message ServerErrorReceipt message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IServerErrorReceipt, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a ServerErrorReceipt message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ServerErrorReceipt - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.ServerErrorReceipt; - - /** - * Decodes a ServerErrorReceipt message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ServerErrorReceipt - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.ServerErrorReceipt; - - /** - * Verifies a ServerErrorReceipt message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a ServerErrorReceipt message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ServerErrorReceipt - */ - public static fromObject(object: { [k: string]: any }): proto.ServerErrorReceipt; - - /** - * Creates a plain object from a ServerErrorReceipt message. Also converts values to other types if specified. - * @param message ServerErrorReceipt - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.ServerErrorReceipt, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this ServerErrorReceipt to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a MediaRetryNotification. */ - interface IMediaRetryNotification { - - /** MediaRetryNotification stanzaId */ - stanzaId?: (string|null); - - /** MediaRetryNotification directPath */ - directPath?: (string|null); - - /** MediaRetryNotification result */ - result?: (proto.MediaRetryNotification.MediaRetryNotificationResultType|null); - } - - /** Represents a MediaRetryNotification. */ - class MediaRetryNotification implements IMediaRetryNotification { - - /** - * Constructs a new MediaRetryNotification. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IMediaRetryNotification); - - /** MediaRetryNotification stanzaId. */ - public stanzaId: string; - - /** MediaRetryNotification directPath. */ - public directPath: string; - - /** MediaRetryNotification result. */ - public result: proto.MediaRetryNotification.MediaRetryNotificationResultType; - - /** - * Creates a new MediaRetryNotification instance using the specified properties. - * @param [properties] Properties to set - * @returns MediaRetryNotification instance - */ - public static create(properties?: proto.IMediaRetryNotification): proto.MediaRetryNotification; - - /** - * Encodes the specified MediaRetryNotification message. Does not implicitly {@link proto.MediaRetryNotification.verify|verify} messages. - * @param message MediaRetryNotification message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IMediaRetryNotification, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified MediaRetryNotification message, length delimited. Does not implicitly {@link proto.MediaRetryNotification.verify|verify} messages. - * @param message MediaRetryNotification message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IMediaRetryNotification, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a MediaRetryNotification message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns MediaRetryNotification - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.MediaRetryNotification; - - /** - * Decodes a MediaRetryNotification message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns MediaRetryNotification - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.MediaRetryNotification; - - /** - * Verifies a MediaRetryNotification message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a MediaRetryNotification message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns MediaRetryNotification - */ - public static fromObject(object: { [k: string]: any }): proto.MediaRetryNotification; - - /** - * Creates a plain object from a MediaRetryNotification message. Also converts values to other types if specified. - * @param message MediaRetryNotification - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.MediaRetryNotification, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this MediaRetryNotification to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - namespace MediaRetryNotification { - - /** MediaRetryNotificationResultType enum. */ - enum MediaRetryNotificationResultType { - GENERAL_ERROR = 0, - SUCCESS = 1, - NOT_FOUND = 2, - DECRYPTION_ERROR = 3 - } - } - - /** Properties of a MsgOpaqueData. */ - interface IMsgOpaqueData { - - /** MsgOpaqueData body */ - body?: (string|null); - - /** MsgOpaqueData caption */ - caption?: (string|null); - - /** MsgOpaqueData clientUrl */ - clientUrl?: (string|null); - - /** MsgOpaqueData lng */ - lng?: (number|null); - - /** MsgOpaqueData lat */ - lat?: (number|null); - - /** MsgOpaqueData paymentAmount1000 */ - paymentAmount1000?: (number|null); - - /** MsgOpaqueData paymentNoteMsgBody */ - paymentNoteMsgBody?: (string|null); - - /** MsgOpaqueData canonicalUrl */ - canonicalUrl?: (string|null); - - /** MsgOpaqueData matchedText */ - matchedText?: (string|null); - - /** MsgOpaqueData title */ - title?: (string|null); - - /** MsgOpaqueData description */ - description?: (string|null); - } - - /** Represents a MsgOpaqueData. */ - class MsgOpaqueData implements IMsgOpaqueData { - - /** - * Constructs a new MsgOpaqueData. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IMsgOpaqueData); - - /** MsgOpaqueData body. */ - public body: string; - - /** MsgOpaqueData caption. */ - public caption: string; - - /** MsgOpaqueData clientUrl. */ - public clientUrl: string; - - /** MsgOpaqueData lng. */ - public lng: number; - - /** MsgOpaqueData lat. */ - public lat: number; - - /** MsgOpaqueData paymentAmount1000. */ - public paymentAmount1000: number; - - /** MsgOpaqueData paymentNoteMsgBody. */ - public paymentNoteMsgBody: string; - - /** MsgOpaqueData canonicalUrl. */ - public canonicalUrl: string; - - /** MsgOpaqueData matchedText. */ - public matchedText: string; - - /** MsgOpaqueData title. */ - public title: string; - - /** MsgOpaqueData description. */ - public description: string; - - /** - * Creates a new MsgOpaqueData instance using the specified properties. - * @param [properties] Properties to set - * @returns MsgOpaqueData instance - */ - public static create(properties?: proto.IMsgOpaqueData): proto.MsgOpaqueData; - - /** - * Encodes the specified MsgOpaqueData message. Does not implicitly {@link proto.MsgOpaqueData.verify|verify} messages. - * @param message MsgOpaqueData message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IMsgOpaqueData, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified MsgOpaqueData message, length delimited. Does not implicitly {@link proto.MsgOpaqueData.verify|verify} messages. - * @param message MsgOpaqueData message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IMsgOpaqueData, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a MsgOpaqueData message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns MsgOpaqueData - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.MsgOpaqueData; - - /** - * Decodes a MsgOpaqueData message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns MsgOpaqueData - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.MsgOpaqueData; - - /** - * Verifies a MsgOpaqueData message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a MsgOpaqueData message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns MsgOpaqueData - */ - public static fromObject(object: { [k: string]: any }): proto.MsgOpaqueData; - - /** - * Creates a plain object from a MsgOpaqueData message. Also converts values to other types if specified. - * @param message MsgOpaqueData - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.MsgOpaqueData, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this MsgOpaqueData to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a MsgRowOpaqueData. */ - interface IMsgRowOpaqueData { - - /** MsgRowOpaqueData currentMsg */ - currentMsg?: (proto.IMsgOpaqueData|null); - - /** MsgRowOpaqueData quotedMsg */ - quotedMsg?: (proto.IMsgOpaqueData|null); - } - - /** Represents a MsgRowOpaqueData. */ - class MsgRowOpaqueData implements IMsgRowOpaqueData { - - /** - * Constructs a new MsgRowOpaqueData. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IMsgRowOpaqueData); - - /** MsgRowOpaqueData currentMsg. */ - public currentMsg?: (proto.IMsgOpaqueData|null); - - /** MsgRowOpaqueData quotedMsg. */ - public quotedMsg?: (proto.IMsgOpaqueData|null); - - /** - * Creates a new MsgRowOpaqueData instance using the specified properties. - * @param [properties] Properties to set - * @returns MsgRowOpaqueData instance - */ - public static create(properties?: proto.IMsgRowOpaqueData): proto.MsgRowOpaqueData; - - /** - * Encodes the specified MsgRowOpaqueData message. Does not implicitly {@link proto.MsgRowOpaqueData.verify|verify} messages. - * @param message MsgRowOpaqueData message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IMsgRowOpaqueData, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified MsgRowOpaqueData message, length delimited. Does not implicitly {@link proto.MsgRowOpaqueData.verify|verify} messages. - * @param message MsgRowOpaqueData message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IMsgRowOpaqueData, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a MsgRowOpaqueData message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns MsgRowOpaqueData - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.MsgRowOpaqueData; - - /** - * Decodes a MsgRowOpaqueData message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns MsgRowOpaqueData - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.MsgRowOpaqueData; - - /** - * Verifies a MsgRowOpaqueData message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a MsgRowOpaqueData message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns MsgRowOpaqueData - */ - public static fromObject(object: { [k: string]: any }): proto.MsgRowOpaqueData; - - /** - * Creates a plain object from a MsgRowOpaqueData message. Also converts values to other types if specified. - * @param message MsgRowOpaqueData - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.MsgRowOpaqueData, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this MsgRowOpaqueData to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a Pushname. */ - interface IPushname { - - /** Pushname id */ - id?: (string|null); - - /** Pushname pushname */ - pushname?: (string|null); - } - - /** Represents a Pushname. */ - class Pushname implements IPushname { - - /** - * Constructs a new Pushname. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IPushname); - - /** Pushname id. */ - public id: string; - - /** Pushname pushname. */ - public pushname: string; - - /** - * Creates a new Pushname instance using the specified properties. - * @param [properties] Properties to set - * @returns Pushname instance - */ - public static create(properties?: proto.IPushname): proto.Pushname; - - /** - * Encodes the specified Pushname message. Does not implicitly {@link proto.Pushname.verify|verify} messages. - * @param message Pushname message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IPushname, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified Pushname message, length delimited. Does not implicitly {@link proto.Pushname.verify|verify} messages. - * @param message Pushname message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IPushname, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a Pushname message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns Pushname - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.Pushname; - - /** - * Decodes a Pushname message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns Pushname - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.Pushname; - - /** - * Verifies a Pushname message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a Pushname message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns Pushname - */ - public static fromObject(object: { [k: string]: any }): proto.Pushname; - - /** - * Creates a plain object from a Pushname message. Also converts values to other types if specified. - * @param message Pushname - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.Pushname, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this Pushname to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a HistorySyncMsg. */ - interface IHistorySyncMsg { - - /** HistorySyncMsg message */ - message?: (proto.IWebMessageInfo|null); - - /** HistorySyncMsg msgOrderId */ - msgOrderId?: (number|Long|null); - } - - /** Represents a HistorySyncMsg. */ - class HistorySyncMsg implements IHistorySyncMsg { - - /** - * Constructs a new HistorySyncMsg. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IHistorySyncMsg); - - /** HistorySyncMsg message. */ - public message?: (proto.IWebMessageInfo|null); - - /** HistorySyncMsg msgOrderId. */ - public msgOrderId: (number|Long); - - /** - * Creates a new HistorySyncMsg instance using the specified properties. - * @param [properties] Properties to set - * @returns HistorySyncMsg instance - */ - public static create(properties?: proto.IHistorySyncMsg): proto.HistorySyncMsg; - - /** - * Encodes the specified HistorySyncMsg message. Does not implicitly {@link proto.HistorySyncMsg.verify|verify} messages. - * @param message HistorySyncMsg message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IHistorySyncMsg, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified HistorySyncMsg message, length delimited. Does not implicitly {@link proto.HistorySyncMsg.verify|verify} messages. - * @param message HistorySyncMsg message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IHistorySyncMsg, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a HistorySyncMsg message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns HistorySyncMsg - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.HistorySyncMsg; - - /** - * Decodes a HistorySyncMsg message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns HistorySyncMsg - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.HistorySyncMsg; - - /** - * Verifies a HistorySyncMsg message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a HistorySyncMsg message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns HistorySyncMsg - */ - public static fromObject(object: { [k: string]: any }): proto.HistorySyncMsg; - - /** - * Creates a plain object from a HistorySyncMsg message. Also converts values to other types if specified. - * @param message HistorySyncMsg - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.HistorySyncMsg, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this HistorySyncMsg to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a Conversation. */ - interface IConversation { - - /** Conversation id */ - id: string; - - /** Conversation messages */ - messages?: (proto.IHistorySyncMsg[]|null); - - /** Conversation newJid */ - newJid?: (string|null); - - /** Conversation oldJid */ - oldJid?: (string|null); - - /** Conversation lastMsgTimestamp */ - lastMsgTimestamp?: (number|Long|null); - - /** Conversation unreadCount */ - unreadCount?: (number|null); - - /** Conversation readOnly */ - readOnly?: (boolean|null); - - /** Conversation endOfHistoryTransfer */ - endOfHistoryTransfer?: (boolean|null); - - /** Conversation ephemeralExpiration */ - ephemeralExpiration?: (number|null); - - /** Conversation ephemeralSettingTimestamp */ - ephemeralSettingTimestamp?: (number|Long|null); - - /** Conversation endOfHistoryTransferType */ - endOfHistoryTransferType?: (proto.Conversation.ConversationEndOfHistoryTransferType|null); - - /** Conversation conversationTimestamp */ - conversationTimestamp?: (number|Long|null); - - /** Conversation name */ - name?: (string|null); - - /** Conversation pHash */ - pHash?: (string|null); - - /** Conversation notSpam */ - notSpam?: (boolean|null); - } - - /** Represents a Conversation. */ - class Conversation implements IConversation { - - /** - * Constructs a new Conversation. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IConversation); - - /** Conversation id. */ - public id: string; - - /** Conversation messages. */ - public messages: proto.IHistorySyncMsg[]; - - /** Conversation newJid. */ - public newJid: string; - - /** Conversation oldJid. */ - public oldJid: string; - - /** Conversation lastMsgTimestamp. */ - public lastMsgTimestamp: (number|Long); - - /** Conversation unreadCount. */ - public unreadCount: number; - - /** Conversation readOnly. */ - public readOnly: boolean; - - /** Conversation endOfHistoryTransfer. */ - public endOfHistoryTransfer: boolean; - - /** Conversation ephemeralExpiration. */ - public ephemeralExpiration: number; - - /** Conversation ephemeralSettingTimestamp. */ - public ephemeralSettingTimestamp: (number|Long); - - /** Conversation endOfHistoryTransferType. */ - public endOfHistoryTransferType: proto.Conversation.ConversationEndOfHistoryTransferType; - - /** Conversation conversationTimestamp. */ - public conversationTimestamp: (number|Long); - - /** Conversation name. */ - public name: string; - - /** Conversation pHash. */ - public pHash: string; - - /** Conversation notSpam. */ - public notSpam: boolean; - - /** - * Creates a new Conversation instance using the specified properties. - * @param [properties] Properties to set - * @returns Conversation instance - */ - public static create(properties?: proto.IConversation): proto.Conversation; - - /** - * Encodes the specified Conversation message. Does not implicitly {@link proto.Conversation.verify|verify} messages. - * @param message Conversation message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IConversation, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified Conversation message, length delimited. Does not implicitly {@link proto.Conversation.verify|verify} messages. - * @param message Conversation message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IConversation, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a Conversation message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns Conversation - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.Conversation; - - /** - * Decodes a Conversation message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns Conversation - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.Conversation; - - /** - * Verifies a Conversation message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a Conversation message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns Conversation - */ - public static fromObject(object: { [k: string]: any }): proto.Conversation; - - /** - * Creates a plain object from a Conversation message. Also converts values to other types if specified. - * @param message Conversation - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.Conversation, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this Conversation to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - namespace Conversation { - - /** ConversationEndOfHistoryTransferType enum. */ - enum ConversationEndOfHistoryTransferType { - COMPLETE_BUT_MORE_MESSAGES_REMAIN_ON_PRIMARY = 0, - COMPLETE_AND_NO_MORE_MESSAGE_REMAIN_ON_PRIMARY = 1 - } - } - - /** Properties of a HistorySync. */ - interface IHistorySync { - - /** HistorySync syncType */ - syncType: proto.HistorySync.HistorySyncHistorySyncType; - - /** HistorySync conversations */ - conversations?: (proto.IConversation[]|null); - - /** HistorySync statusV3Messages */ - statusV3Messages?: (proto.IWebMessageInfo[]|null); - - /** HistorySync chunkOrder */ - chunkOrder?: (number|null); - - /** HistorySync progress */ - progress?: (number|null); - - /** HistorySync pushnames */ - pushnames?: (proto.IPushname[]|null); - } - - /** Represents a HistorySync. */ - class HistorySync implements IHistorySync { - - /** - * Constructs a new HistorySync. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IHistorySync); - - /** HistorySync syncType. */ - public syncType: proto.HistorySync.HistorySyncHistorySyncType; - - /** HistorySync conversations. */ - public conversations: proto.IConversation[]; - - /** HistorySync statusV3Messages. */ - public statusV3Messages: proto.IWebMessageInfo[]; - - /** HistorySync chunkOrder. */ - public chunkOrder: number; - - /** HistorySync progress. */ - public progress: number; - - /** HistorySync pushnames. */ - public pushnames: proto.IPushname[]; - - /** - * Creates a new HistorySync instance using the specified properties. - * @param [properties] Properties to set - * @returns HistorySync instance - */ - public static create(properties?: proto.IHistorySync): proto.HistorySync; - - /** - * Encodes the specified HistorySync message. Does not implicitly {@link proto.HistorySync.verify|verify} messages. - * @param message HistorySync message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IHistorySync, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified HistorySync message, length delimited. Does not implicitly {@link proto.HistorySync.verify|verify} messages. - * @param message HistorySync message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IHistorySync, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a HistorySync message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns HistorySync - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.HistorySync; - - /** - * Decodes a HistorySync message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns HistorySync - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.HistorySync; - - /** - * Verifies a HistorySync message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a HistorySync message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns HistorySync - */ - public static fromObject(object: { [k: string]: any }): proto.HistorySync; - - /** - * Creates a plain object from a HistorySync message. Also converts values to other types if specified. - * @param message HistorySync - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.HistorySync, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this HistorySync to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - namespace HistorySync { - - /** HistorySyncHistorySyncType enum. */ - enum HistorySyncHistorySyncType { - INITIAL_BOOTSTRAP = 0, - INITIAL_STATUS_V3 = 1, - FULL = 2, - RECENT = 3, - PUSH_NAME = 4 - } - } - - /** Properties of an EphemeralSetting. */ - interface IEphemeralSetting { - - /** EphemeralSetting duration */ - duration?: (number|null); - - /** EphemeralSetting timestamp */ - timestamp?: (number|Long|null); - } - - /** Represents an EphemeralSetting. */ - class EphemeralSetting implements IEphemeralSetting { - - /** - * Constructs a new EphemeralSetting. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IEphemeralSetting); - - /** EphemeralSetting duration. */ - public duration: number; - - /** EphemeralSetting timestamp. */ - public timestamp: (number|Long); - - /** - * Creates a new EphemeralSetting instance using the specified properties. - * @param [properties] Properties to set - * @returns EphemeralSetting instance - */ - public static create(properties?: proto.IEphemeralSetting): proto.EphemeralSetting; - - /** - * Encodes the specified EphemeralSetting message. Does not implicitly {@link proto.EphemeralSetting.verify|verify} messages. - * @param message EphemeralSetting message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IEphemeralSetting, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified EphemeralSetting message, length delimited. Does not implicitly {@link proto.EphemeralSetting.verify|verify} messages. - * @param message EphemeralSetting message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IEphemeralSetting, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes an EphemeralSetting message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns EphemeralSetting - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.EphemeralSetting; - - /** - * Decodes an EphemeralSetting message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns EphemeralSetting - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.EphemeralSetting; - - /** - * Verifies an EphemeralSetting message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates an EphemeralSetting message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns EphemeralSetting - */ - public static fromObject(object: { [k: string]: any }): proto.EphemeralSetting; - - /** - * Creates a plain object from an EphemeralSetting message. Also converts values to other types if specified. - * @param message EphemeralSetting - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.EphemeralSetting, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this EphemeralSetting to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a PaymentBackground. */ - interface IPaymentBackground { - - /** PaymentBackground id */ - id?: (string|null); - - /** PaymentBackground fileLength */ - fileLength?: (string|null); - - /** PaymentBackground width */ - width?: (number|null); - - /** PaymentBackground height */ - height?: (number|null); - - /** PaymentBackground mimetype */ - mimetype?: (string|null); - - /** PaymentBackground placeholderArgb */ - placeholderArgb?: (number|null); - - /** PaymentBackground textArgb */ - textArgb?: (number|null); - - /** PaymentBackground subtextArgb */ - subtextArgb?: (number|null); - } - - /** Represents a PaymentBackground. */ - class PaymentBackground implements IPaymentBackground { - - /** - * Constructs a new PaymentBackground. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IPaymentBackground); - - /** PaymentBackground id. */ - public id: string; - - /** PaymentBackground fileLength. */ - public fileLength: string; - - /** PaymentBackground width. */ - public width: number; - - /** PaymentBackground height. */ - public height: number; - - /** PaymentBackground mimetype. */ - public mimetype: string; - - /** PaymentBackground placeholderArgb. */ - public placeholderArgb: number; - - /** PaymentBackground textArgb. */ - public textArgb: number; - - /** PaymentBackground subtextArgb. */ - public subtextArgb: number; - - /** - * Creates a new PaymentBackground instance using the specified properties. - * @param [properties] Properties to set - * @returns PaymentBackground instance - */ - public static create(properties?: proto.IPaymentBackground): proto.PaymentBackground; - - /** - * Encodes the specified PaymentBackground message. Does not implicitly {@link proto.PaymentBackground.verify|verify} messages. - * @param message PaymentBackground message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IPaymentBackground, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified PaymentBackground message, length delimited. Does not implicitly {@link proto.PaymentBackground.verify|verify} messages. - * @param message PaymentBackground message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IPaymentBackground, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a PaymentBackground message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns PaymentBackground - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.PaymentBackground; - - /** - * Decodes a PaymentBackground message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns PaymentBackground - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.PaymentBackground; - - /** - * Verifies a PaymentBackground message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a PaymentBackground message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns PaymentBackground - */ - public static fromObject(object: { [k: string]: any }): proto.PaymentBackground; - - /** - * Creates a plain object from a PaymentBackground message. Also converts values to other types if specified. - * @param message PaymentBackground - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.PaymentBackground, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this PaymentBackground to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a Money. */ - interface IMoney { - - /** Money value */ - value?: (number|Long|null); - - /** Money offset */ - offset?: (number|null); - - /** Money currencyCode */ - currencyCode?: (string|null); - } - - /** Represents a Money. */ - class Money implements IMoney { - - /** - * Constructs a new Money. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IMoney); - - /** Money value. */ - public value: (number|Long); - - /** Money offset. */ - public offset: number; - - /** Money currencyCode. */ - public currencyCode: string; - - /** - * Creates a new Money instance using the specified properties. - * @param [properties] Properties to set - * @returns Money instance - */ - public static create(properties?: proto.IMoney): proto.Money; - - /** - * Encodes the specified Money message. Does not implicitly {@link proto.Money.verify|verify} messages. - * @param message Money message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IMoney, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified Money message, length delimited. Does not implicitly {@link proto.Money.verify|verify} messages. - * @param message Money message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IMoney, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a Money message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns Money - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.Money; - - /** - * Decodes a Money message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns Money - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.Money; - - /** - * Verifies a Money message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a Money message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns Money - */ - public static fromObject(object: { [k: string]: any }): proto.Money; - - /** - * Creates a plain object from a Money message. Also converts values to other types if specified. - * @param message Money - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.Money, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this Money to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a HydratedQuickReplyButton. */ - interface IHydratedQuickReplyButton { - - /** HydratedQuickReplyButton displayText */ - displayText?: (string|null); - - /** HydratedQuickReplyButton id */ - id?: (string|null); - } - - /** Represents a HydratedQuickReplyButton. */ - class HydratedQuickReplyButton implements IHydratedQuickReplyButton { - - /** - * Constructs a new HydratedQuickReplyButton. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IHydratedQuickReplyButton); - - /** HydratedQuickReplyButton displayText. */ - public displayText: string; - - /** HydratedQuickReplyButton id. */ - public id: string; - - /** - * Creates a new HydratedQuickReplyButton instance using the specified properties. - * @param [properties] Properties to set - * @returns HydratedQuickReplyButton instance - */ - public static create(properties?: proto.IHydratedQuickReplyButton): proto.HydratedQuickReplyButton; - - /** - * Encodes the specified HydratedQuickReplyButton message. Does not implicitly {@link proto.HydratedQuickReplyButton.verify|verify} messages. - * @param message HydratedQuickReplyButton message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IHydratedQuickReplyButton, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified HydratedQuickReplyButton message, length delimited. Does not implicitly {@link proto.HydratedQuickReplyButton.verify|verify} messages. - * @param message HydratedQuickReplyButton message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IHydratedQuickReplyButton, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a HydratedQuickReplyButton message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns HydratedQuickReplyButton - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.HydratedQuickReplyButton; - - /** - * Decodes a HydratedQuickReplyButton message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns HydratedQuickReplyButton - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.HydratedQuickReplyButton; - - /** - * Verifies a HydratedQuickReplyButton message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a HydratedQuickReplyButton message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns HydratedQuickReplyButton - */ - public static fromObject(object: { [k: string]: any }): proto.HydratedQuickReplyButton; - - /** - * Creates a plain object from a HydratedQuickReplyButton message. Also converts values to other types if specified. - * @param message HydratedQuickReplyButton - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.HydratedQuickReplyButton, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this HydratedQuickReplyButton to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a HydratedURLButton. */ - interface IHydratedURLButton { - - /** HydratedURLButton displayText */ - displayText?: (string|null); - - /** HydratedURLButton url */ - url?: (string|null); - } - - /** Represents a HydratedURLButton. */ - class HydratedURLButton implements IHydratedURLButton { - - /** - * Constructs a new HydratedURLButton. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IHydratedURLButton); - - /** HydratedURLButton displayText. */ - public displayText: string; - - /** HydratedURLButton url. */ - public url: string; - - /** - * Creates a new HydratedURLButton instance using the specified properties. - * @param [properties] Properties to set - * @returns HydratedURLButton instance - */ - public static create(properties?: proto.IHydratedURLButton): proto.HydratedURLButton; - - /** - * Encodes the specified HydratedURLButton message. Does not implicitly {@link proto.HydratedURLButton.verify|verify} messages. - * @param message HydratedURLButton message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IHydratedURLButton, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified HydratedURLButton message, length delimited. Does not implicitly {@link proto.HydratedURLButton.verify|verify} messages. - * @param message HydratedURLButton message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IHydratedURLButton, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a HydratedURLButton message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns HydratedURLButton - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.HydratedURLButton; - - /** - * Decodes a HydratedURLButton message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns HydratedURLButton - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.HydratedURLButton; - - /** - * Verifies a HydratedURLButton message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a HydratedURLButton message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns HydratedURLButton - */ - public static fromObject(object: { [k: string]: any }): proto.HydratedURLButton; - - /** - * Creates a plain object from a HydratedURLButton message. Also converts values to other types if specified. - * @param message HydratedURLButton - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.HydratedURLButton, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this HydratedURLButton to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a HydratedCallButton. */ - interface IHydratedCallButton { - - /** HydratedCallButton displayText */ - displayText?: (string|null); - - /** HydratedCallButton phoneNumber */ - phoneNumber?: (string|null); - } - - /** Represents a HydratedCallButton. */ - class HydratedCallButton implements IHydratedCallButton { - - /** - * Constructs a new HydratedCallButton. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IHydratedCallButton); - - /** HydratedCallButton displayText. */ - public displayText: string; - - /** HydratedCallButton phoneNumber. */ - public phoneNumber: string; - - /** - * Creates a new HydratedCallButton instance using the specified properties. - * @param [properties] Properties to set - * @returns HydratedCallButton instance - */ - public static create(properties?: proto.IHydratedCallButton): proto.HydratedCallButton; - - /** - * Encodes the specified HydratedCallButton message. Does not implicitly {@link proto.HydratedCallButton.verify|verify} messages. - * @param message HydratedCallButton message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IHydratedCallButton, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified HydratedCallButton message, length delimited. Does not implicitly {@link proto.HydratedCallButton.verify|verify} messages. - * @param message HydratedCallButton message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IHydratedCallButton, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a HydratedCallButton message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns HydratedCallButton - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.HydratedCallButton; - - /** - * Decodes a HydratedCallButton message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns HydratedCallButton - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.HydratedCallButton; - - /** - * Verifies a HydratedCallButton message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a HydratedCallButton message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns HydratedCallButton - */ - public static fromObject(object: { [k: string]: any }): proto.HydratedCallButton; - - /** - * Creates a plain object from a HydratedCallButton message. Also converts values to other types if specified. - * @param message HydratedCallButton - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.HydratedCallButton, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this HydratedCallButton to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a HydratedTemplateButton. */ - interface IHydratedTemplateButton { - - /** HydratedTemplateButton index */ - index?: (number|null); - - /** HydratedTemplateButton quickReplyButton */ - quickReplyButton?: (proto.IHydratedQuickReplyButton|null); - - /** HydratedTemplateButton urlButton */ - urlButton?: (proto.IHydratedURLButton|null); - - /** HydratedTemplateButton callButton */ - callButton?: (proto.IHydratedCallButton|null); - } - - /** Represents a HydratedTemplateButton. */ - class HydratedTemplateButton implements IHydratedTemplateButton { - - /** - * Constructs a new HydratedTemplateButton. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IHydratedTemplateButton); - - /** HydratedTemplateButton index. */ - public index: number; - - /** HydratedTemplateButton quickReplyButton. */ - public quickReplyButton?: (proto.IHydratedQuickReplyButton|null); - - /** HydratedTemplateButton urlButton. */ - public urlButton?: (proto.IHydratedURLButton|null); - - /** HydratedTemplateButton callButton. */ - public callButton?: (proto.IHydratedCallButton|null); - - /** HydratedTemplateButton hydratedButton. */ - public hydratedButton?: ("quickReplyButton"|"urlButton"|"callButton"); - - /** - * Creates a new HydratedTemplateButton instance using the specified properties. - * @param [properties] Properties to set - * @returns HydratedTemplateButton instance - */ - public static create(properties?: proto.IHydratedTemplateButton): proto.HydratedTemplateButton; - - /** - * Encodes the specified HydratedTemplateButton message. Does not implicitly {@link proto.HydratedTemplateButton.verify|verify} messages. - * @param message HydratedTemplateButton message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IHydratedTemplateButton, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified HydratedTemplateButton message, length delimited. Does not implicitly {@link proto.HydratedTemplateButton.verify|verify} messages. - * @param message HydratedTemplateButton message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IHydratedTemplateButton, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a HydratedTemplateButton message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns HydratedTemplateButton - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.HydratedTemplateButton; - - /** - * Decodes a HydratedTemplateButton message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns HydratedTemplateButton - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.HydratedTemplateButton; - - /** - * Verifies a HydratedTemplateButton message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a HydratedTemplateButton message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns HydratedTemplateButton - */ - public static fromObject(object: { [k: string]: any }): proto.HydratedTemplateButton; - - /** - * Creates a plain object from a HydratedTemplateButton message. Also converts values to other types if specified. - * @param message HydratedTemplateButton - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.HydratedTemplateButton, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this HydratedTemplateButton to JSON. + * Converts this MessageKey to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; @@ -8827,6 +1359,9 @@ export namespace proto { /** ContextInfo entryPointConversionDelaySeconds */ entryPointConversionDelaySeconds?: (number|null); + + /** ContextInfo disappearingMode */ + disappearingMode?: (proto.IDisappearingMode|null); } /** Represents a ContextInfo. */ @@ -8895,6 +1430,9 @@ export namespace proto { /** ContextInfo entryPointConversionDelaySeconds. */ public entryPointConversionDelaySeconds: number; + /** ContextInfo disappearingMode. */ + public disappearingMode?: (proto.IDisappearingMode|null); + /** * Creates a new ContextInfo instance using the specified properties. * @param [properties] Properties to set @@ -9139,6 +1677,9 @@ export namespace proto { /** ImageMessage thumbnailEncSha256 */ thumbnailEncSha256?: (Uint8Array|null); + + /** ImageMessage staticUrl */ + staticUrl?: (string|null); } /** Represents an ImageMessage. */ @@ -9225,6 +1766,9 @@ export namespace proto { /** ImageMessage thumbnailEncSha256. */ public thumbnailEncSha256: Uint8Array; + /** ImageMessage staticUrl. */ + public staticUrl: string; + /** * Creates a new ImageMessage instance using the specified properties. * @param [properties] Properties to set @@ -10346,6 +2890,9 @@ export namespace proto { /** VideoMessage thumbnailEncSha256 */ thumbnailEncSha256?: (Uint8Array|null); + + /** VideoMessage staticUrl */ + staticUrl?: (string|null); } /** Represents a VideoMessage. */ @@ -10423,6 +2970,9 @@ export namespace proto { /** VideoMessage thumbnailEncSha256. */ public thumbnailEncSha256: Uint8Array; + /** VideoMessage staticUrl. */ + public staticUrl: string; + /** * Creates a new VideoMessage instance using the specified properties. * @param [properties] Properties to set @@ -10737,6 +3287,9 @@ export namespace proto { /** ProtocolMessage appStateFatalExceptionNotification */ appStateFatalExceptionNotification?: (proto.IAppStateFatalExceptionNotification|null); + + /** ProtocolMessage disappearingMode */ + disappearingMode?: (proto.IDisappearingMode|null); } /** Represents a ProtocolMessage. */ @@ -10775,6 +3328,9 @@ export namespace proto { /** ProtocolMessage appStateFatalExceptionNotification. */ public appStateFatalExceptionNotification?: (proto.IAppStateFatalExceptionNotification|null); + /** ProtocolMessage disappearingMode. */ + public disappearingMode?: (proto.IDisappearingMode|null); + /** * Creates a new ProtocolMessage instance using the specified properties. * @param [properties] Properties to set @@ -15332,6 +7888,649 @@ export namespace proto { } } + /** Properties of a Header. */ + interface IHeader { + + /** Header title */ + title?: (string|null); + + /** Header subtitle */ + subtitle?: (string|null); + + /** Header documentMessage */ + documentMessage?: (proto.IDocumentMessage|null); + + /** Header imageMessage */ + imageMessage?: (proto.IImageMessage|null); + } + + /** Represents a Header. */ + class Header implements IHeader { + + /** + * Constructs a new Header. + * @param [properties] Properties to set + */ + constructor(properties?: proto.IHeader); + + /** Header title. */ + public title: string; + + /** Header subtitle. */ + public subtitle: string; + + /** Header documentMessage. */ + public documentMessage?: (proto.IDocumentMessage|null); + + /** Header imageMessage. */ + public imageMessage?: (proto.IImageMessage|null); + + /** Header media. */ + public media?: ("documentMessage"|"imageMessage"); + + /** + * Creates a new Header instance using the specified properties. + * @param [properties] Properties to set + * @returns Header instance + */ + public static create(properties?: proto.IHeader): proto.Header; + + /** + * Encodes the specified Header message. Does not implicitly {@link proto.Header.verify|verify} messages. + * @param message Header message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: proto.IHeader, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified Header message, length delimited. Does not implicitly {@link proto.Header.verify|verify} messages. + * @param message Header message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: proto.IHeader, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a Header message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns Header + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.Header; + + /** + * Decodes a Header message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns Header + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.Header; + + /** + * Verifies a Header message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a Header message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns Header + */ + public static fromObject(object: { [k: string]: any }): proto.Header; + + /** + * Creates a plain object from a Header message. Also converts values to other types if specified. + * @param message Header + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: proto.Header, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this Header to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a Body. */ + interface IBody { + + /** Body text */ + text?: (string|null); + } + + /** Represents a Body. */ + class Body implements IBody { + + /** + * Constructs a new Body. + * @param [properties] Properties to set + */ + constructor(properties?: proto.IBody); + + /** Body text. */ + public text: string; + + /** + * Creates a new Body instance using the specified properties. + * @param [properties] Properties to set + * @returns Body instance + */ + public static create(properties?: proto.IBody): proto.Body; + + /** + * Encodes the specified Body message. Does not implicitly {@link proto.Body.verify|verify} messages. + * @param message Body message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: proto.IBody, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified Body message, length delimited. Does not implicitly {@link proto.Body.verify|verify} messages. + * @param message Body message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: proto.IBody, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a Body message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns Body + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.Body; + + /** + * Decodes a Body message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns Body + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.Body; + + /** + * Verifies a Body message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a Body message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns Body + */ + public static fromObject(object: { [k: string]: any }): proto.Body; + + /** + * Creates a plain object from a Body message. Also converts values to other types if specified. + * @param message Body + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: proto.Body, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this Body to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a Footer. */ + interface IFooter { + + /** Footer text */ + text?: (string|null); + } + + /** Represents a Footer. */ + class Footer implements IFooter { + + /** + * Constructs a new Footer. + * @param [properties] Properties to set + */ + constructor(properties?: proto.IFooter); + + /** Footer text. */ + public text: string; + + /** + * Creates a new Footer instance using the specified properties. + * @param [properties] Properties to set + * @returns Footer instance + */ + public static create(properties?: proto.IFooter): proto.Footer; + + /** + * Encodes the specified Footer message. Does not implicitly {@link proto.Footer.verify|verify} messages. + * @param message Footer message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: proto.IFooter, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified Footer message, length delimited. Does not implicitly {@link proto.Footer.verify|verify} messages. + * @param message Footer message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: proto.IFooter, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a Footer message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns Footer + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.Footer; + + /** + * Decodes a Footer message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns Footer + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.Footer; + + /** + * Verifies a Footer message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a Footer message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns Footer + */ + public static fromObject(object: { [k: string]: any }): proto.Footer; + + /** + * Creates a plain object from a Footer message. Also converts values to other types if specified. + * @param message Footer + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: proto.Footer, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this Footer to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a ShopsMessage. */ + interface IShopsMessage { + + /** ShopsMessage id */ + id?: (string|null); + + /** ShopsMessage surface */ + surface?: (proto.ShopsMessage.ShopsMessageSurface|null); + + /** ShopsMessage type */ + type?: (proto.ShopsMessage.ShopsMessageType|null); + + /** ShopsMessage messageVersion */ + messageVersion?: (number|null); + } + + /** Represents a ShopsMessage. */ + class ShopsMessage implements IShopsMessage { + + /** + * Constructs a new ShopsMessage. + * @param [properties] Properties to set + */ + constructor(properties?: proto.IShopsMessage); + + /** ShopsMessage id. */ + public id: string; + + /** ShopsMessage surface. */ + public surface: proto.ShopsMessage.ShopsMessageSurface; + + /** ShopsMessage type. */ + public type: proto.ShopsMessage.ShopsMessageType; + + /** ShopsMessage messageVersion. */ + public messageVersion: number; + + /** + * Creates a new ShopsMessage instance using the specified properties. + * @param [properties] Properties to set + * @returns ShopsMessage instance + */ + public static create(properties?: proto.IShopsMessage): proto.ShopsMessage; + + /** + * Encodes the specified ShopsMessage message. Does not implicitly {@link proto.ShopsMessage.verify|verify} messages. + * @param message ShopsMessage message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: proto.IShopsMessage, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified ShopsMessage message, length delimited. Does not implicitly {@link proto.ShopsMessage.verify|verify} messages. + * @param message ShopsMessage message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: proto.IShopsMessage, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a ShopsMessage message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns ShopsMessage + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.ShopsMessage; + + /** + * Decodes a ShopsMessage message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns ShopsMessage + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.ShopsMessage; + + /** + * Verifies a ShopsMessage message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a ShopsMessage message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns ShopsMessage + */ + public static fromObject(object: { [k: string]: any }): proto.ShopsMessage; + + /** + * Creates a plain object from a ShopsMessage message. Also converts values to other types if specified. + * @param message ShopsMessage + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: proto.ShopsMessage, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this ShopsMessage to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + namespace ShopsMessage { + + /** ShopsMessageSurface enum. */ + enum ShopsMessageSurface { + UNKNOWN_SURFACE = 0, + FB = 1, + IG = 2, + WA = 3 + } + + /** ShopsMessageType enum. */ + enum ShopsMessageType { + UNKNOWN_TYPE = 0, + PRODUCT = 1, + STOREFRONT = 2, + COLLECTION = 3 + } + } + + /** Properties of a CollectionMessage. */ + interface ICollectionMessage { + + /** CollectionMessage bizJid */ + bizJid?: (string|null); + + /** CollectionMessage id */ + id?: (string|null); + + /** CollectionMessage messageVersion */ + messageVersion?: (number|null); + } + + /** Represents a CollectionMessage. */ + class CollectionMessage implements ICollectionMessage { + + /** + * Constructs a new CollectionMessage. + * @param [properties] Properties to set + */ + constructor(properties?: proto.ICollectionMessage); + + /** CollectionMessage bizJid. */ + public bizJid: string; + + /** CollectionMessage id. */ + public id: string; + + /** CollectionMessage messageVersion. */ + public messageVersion: number; + + /** + * Creates a new CollectionMessage instance using the specified properties. + * @param [properties] Properties to set + * @returns CollectionMessage instance + */ + public static create(properties?: proto.ICollectionMessage): proto.CollectionMessage; + + /** + * Encodes the specified CollectionMessage message. Does not implicitly {@link proto.CollectionMessage.verify|verify} messages. + * @param message CollectionMessage message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: proto.ICollectionMessage, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified CollectionMessage message, length delimited. Does not implicitly {@link proto.CollectionMessage.verify|verify} messages. + * @param message CollectionMessage message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: proto.ICollectionMessage, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a CollectionMessage message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns CollectionMessage + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.CollectionMessage; + + /** + * Decodes a CollectionMessage message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns CollectionMessage + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.CollectionMessage; + + /** + * Verifies a CollectionMessage message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a CollectionMessage message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns CollectionMessage + */ + public static fromObject(object: { [k: string]: any }): proto.CollectionMessage; + + /** + * Creates a plain object from a CollectionMessage message. Also converts values to other types if specified. + * @param message CollectionMessage + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: proto.CollectionMessage, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this CollectionMessage to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of an InteractiveMessage. */ + interface IInteractiveMessage { + + /** InteractiveMessage header */ + header?: (proto.IHeader|null); + + /** InteractiveMessage body */ + body?: (proto.IBody|null); + + /** InteractiveMessage footer */ + footer?: (proto.IFooter|null); + + /** InteractiveMessage contextInfo */ + contextInfo?: (proto.IContextInfo|null); + + /** InteractiveMessage shopsMessage */ + shopsMessage?: (proto.IShopsMessage|null); + + /** InteractiveMessage collectionMessage */ + collectionMessage?: (proto.ICollectionMessage|null); + } + + /** Represents an InteractiveMessage. */ + class InteractiveMessage implements IInteractiveMessage { + + /** + * Constructs a new InteractiveMessage. + * @param [properties] Properties to set + */ + constructor(properties?: proto.IInteractiveMessage); + + /** InteractiveMessage header. */ + public header?: (proto.IHeader|null); + + /** InteractiveMessage body. */ + public body?: (proto.IBody|null); + + /** InteractiveMessage footer. */ + public footer?: (proto.IFooter|null); + + /** InteractiveMessage contextInfo. */ + public contextInfo?: (proto.IContextInfo|null); + + /** InteractiveMessage shopsMessage. */ + public shopsMessage?: (proto.IShopsMessage|null); + + /** InteractiveMessage collectionMessage. */ + public collectionMessage?: (proto.ICollectionMessage|null); + + /** InteractiveMessage interactiveMessage. */ + public interactiveMessage?: ("shopsMessage"|"collectionMessage"); + + /** + * Creates a new InteractiveMessage instance using the specified properties. + * @param [properties] Properties to set + * @returns InteractiveMessage instance + */ + public static create(properties?: proto.IInteractiveMessage): proto.InteractiveMessage; + + /** + * Encodes the specified InteractiveMessage message. Does not implicitly {@link proto.InteractiveMessage.verify|verify} messages. + * @param message InteractiveMessage message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: proto.IInteractiveMessage, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified InteractiveMessage message, length delimited. Does not implicitly {@link proto.InteractiveMessage.verify|verify} messages. + * @param message InteractiveMessage message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: proto.IInteractiveMessage, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes an InteractiveMessage message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns InteractiveMessage + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.InteractiveMessage; + + /** + * Decodes an InteractiveMessage message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns InteractiveMessage + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.InteractiveMessage; + + /** + * Verifies an InteractiveMessage message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates an InteractiveMessage message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns InteractiveMessage + */ + public static fromObject(object: { [k: string]: any }): proto.InteractiveMessage; + + /** + * Creates a plain object from an InteractiveMessage message. Also converts values to other types if specified. + * @param message InteractiveMessage + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: proto.InteractiveMessage, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this InteractiveMessage to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + /** Properties of a GroupInviteMessage. */ interface IGroupInviteMessage { @@ -16345,6 +9544,9 @@ export namespace proto { /** Message paymentInviteMessage */ paymentInviteMessage?: (proto.IPaymentInviteMessage|null); + + /** Message interactiveMessage */ + interactiveMessage?: (proto.IInteractiveMessage|null); } /** Represents a Message. */ @@ -16464,6 +9666,9 @@ export namespace proto { /** Message paymentInviteMessage. */ public paymentInviteMessage?: (proto.IPaymentInviteMessage|null); + /** Message interactiveMessage. */ + public interactiveMessage?: (proto.IInteractiveMessage|null); + /** * Creates a new Message instance using the specified properties. * @param [properties] Properties to set @@ -16535,747 +9740,854 @@ export namespace proto { public toJSON(): { [k: string]: any }; } - /** Properties of a CompanionProps. */ - interface ICompanionProps { + /** Properties of a DisappearingMode. */ + interface IDisappearingMode { - /** CompanionProps os */ - os?: (string|null); - - /** CompanionProps version */ - version?: (proto.IAppVersion|null); - - /** CompanionProps platformType */ - platformType?: (proto.CompanionProps.CompanionPropsPlatformType|null); - - /** CompanionProps requireFullSync */ - requireFullSync?: (boolean|null); + /** DisappearingMode initiator */ + initiator?: (proto.DisappearingMode.DisappearingModeInitiator|null); } - /** Represents a CompanionProps. */ - class CompanionProps implements ICompanionProps { + /** Represents a DisappearingMode. */ + class DisappearingMode implements IDisappearingMode { /** - * Constructs a new CompanionProps. + * Constructs a new DisappearingMode. * @param [properties] Properties to set */ - constructor(properties?: proto.ICompanionProps); + constructor(properties?: proto.IDisappearingMode); - /** CompanionProps os. */ - public os: string; - - /** CompanionProps version. */ - public version?: (proto.IAppVersion|null); - - /** CompanionProps platformType. */ - public platformType: proto.CompanionProps.CompanionPropsPlatformType; - - /** CompanionProps requireFullSync. */ - public requireFullSync: boolean; + /** DisappearingMode initiator. */ + public initiator: proto.DisappearingMode.DisappearingModeInitiator; /** - * Creates a new CompanionProps instance using the specified properties. + * Creates a new DisappearingMode instance using the specified properties. * @param [properties] Properties to set - * @returns CompanionProps instance + * @returns DisappearingMode instance */ - public static create(properties?: proto.ICompanionProps): proto.CompanionProps; + public static create(properties?: proto.IDisappearingMode): proto.DisappearingMode; /** - * Encodes the specified CompanionProps message. Does not implicitly {@link proto.CompanionProps.verify|verify} messages. - * @param message CompanionProps message or plain object to encode + * Encodes the specified DisappearingMode message. Does not implicitly {@link proto.DisappearingMode.verify|verify} messages. + * @param message DisappearingMode message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encode(message: proto.ICompanionProps, writer?: $protobuf.Writer): $protobuf.Writer; + public static encode(message: proto.IDisappearingMode, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Encodes the specified CompanionProps message, length delimited. Does not implicitly {@link proto.CompanionProps.verify|verify} messages. - * @param message CompanionProps message or plain object to encode + * Encodes the specified DisappearingMode message, length delimited. Does not implicitly {@link proto.DisappearingMode.verify|verify} messages. + * @param message DisappearingMode message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encodeDelimited(message: proto.ICompanionProps, writer?: $protobuf.Writer): $protobuf.Writer; + public static encodeDelimited(message: proto.IDisappearingMode, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Decodes a CompanionProps message from the specified reader or buffer. + * Decodes a DisappearingMode message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand - * @returns CompanionProps + * @returns DisappearingMode * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.CompanionProps; + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.DisappearingMode; /** - * Decodes a CompanionProps message from the specified reader or buffer, length delimited. + * Decodes a DisappearingMode message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from - * @returns CompanionProps + * @returns DisappearingMode * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.CompanionProps; + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.DisappearingMode; /** - * Verifies a CompanionProps message. + * Verifies a DisappearingMode message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** - * Creates a CompanionProps message from a plain object. Also converts values to their respective internal types. + * Creates a DisappearingMode message from a plain object. Also converts values to their respective internal types. * @param object Plain object - * @returns CompanionProps + * @returns DisappearingMode */ - public static fromObject(object: { [k: string]: any }): proto.CompanionProps; + public static fromObject(object: { [k: string]: any }): proto.DisappearingMode; /** - * Creates a plain object from a CompanionProps message. Also converts values to other types if specified. - * @param message CompanionProps + * Creates a plain object from a DisappearingMode message. Also converts values to other types if specified. + * @param message DisappearingMode * @param [options] Conversion options * @returns Plain object */ - public static toObject(message: proto.CompanionProps, options?: $protobuf.IConversionOptions): { [k: string]: any }; + public static toObject(message: proto.DisappearingMode, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** - * Converts this CompanionProps to JSON. + * Converts this DisappearingMode to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; } - namespace CompanionProps { + namespace DisappearingMode { - /** CompanionPropsPlatformType enum. */ - enum CompanionPropsPlatformType { - UNKNOWN = 0, - CHROME = 1, - FIREFOX = 2, - IE = 3, - OPERA = 4, - SAFARI = 5, - EDGE = 6, - DESKTOP = 7, - IPAD = 8, - ANDROID_TABLET = 9, - OHANA = 10, - ALOHA = 11, - CATALINA = 12 + /** DisappearingModeInitiator enum. */ + enum DisappearingModeInitiator { + CHANGED_IN_CHAT = 0, + INITIATED_BY_ME = 1, + INITIATED_BY_OTHER = 2 } } - /** Properties of a ADVSignedDeviceIdentityHMAC. */ - interface IADVSignedDeviceIdentityHMAC { + /** Properties of a PaymentBackground. */ + interface IPaymentBackground { - /** ADVSignedDeviceIdentityHMAC details */ - details?: (Uint8Array|null); - - /** ADVSignedDeviceIdentityHMAC hmac */ - hmac?: (Uint8Array|null); - } - - /** Represents a ADVSignedDeviceIdentityHMAC. */ - class ADVSignedDeviceIdentityHMAC implements IADVSignedDeviceIdentityHMAC { - - /** - * Constructs a new ADVSignedDeviceIdentityHMAC. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IADVSignedDeviceIdentityHMAC); - - /** ADVSignedDeviceIdentityHMAC details. */ - public details: Uint8Array; - - /** ADVSignedDeviceIdentityHMAC hmac. */ - public hmac: Uint8Array; - - /** - * Creates a new ADVSignedDeviceIdentityHMAC instance using the specified properties. - * @param [properties] Properties to set - * @returns ADVSignedDeviceIdentityHMAC instance - */ - public static create(properties?: proto.IADVSignedDeviceIdentityHMAC): proto.ADVSignedDeviceIdentityHMAC; - - /** - * Encodes the specified ADVSignedDeviceIdentityHMAC message. Does not implicitly {@link proto.ADVSignedDeviceIdentityHMAC.verify|verify} messages. - * @param message ADVSignedDeviceIdentityHMAC message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IADVSignedDeviceIdentityHMAC, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified ADVSignedDeviceIdentityHMAC message, length delimited. Does not implicitly {@link proto.ADVSignedDeviceIdentityHMAC.verify|verify} messages. - * @param message ADVSignedDeviceIdentityHMAC message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IADVSignedDeviceIdentityHMAC, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a ADVSignedDeviceIdentityHMAC message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ADVSignedDeviceIdentityHMAC - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.ADVSignedDeviceIdentityHMAC; - - /** - * Decodes a ADVSignedDeviceIdentityHMAC message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ADVSignedDeviceIdentityHMAC - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.ADVSignedDeviceIdentityHMAC; - - /** - * Verifies a ADVSignedDeviceIdentityHMAC message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a ADVSignedDeviceIdentityHMAC message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ADVSignedDeviceIdentityHMAC - */ - public static fromObject(object: { [k: string]: any }): proto.ADVSignedDeviceIdentityHMAC; - - /** - * Creates a plain object from a ADVSignedDeviceIdentityHMAC message. Also converts values to other types if specified. - * @param message ADVSignedDeviceIdentityHMAC - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.ADVSignedDeviceIdentityHMAC, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this ADVSignedDeviceIdentityHMAC to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a ADVSignedDeviceIdentity. */ - interface IADVSignedDeviceIdentity { - - /** ADVSignedDeviceIdentity details */ - details?: (Uint8Array|null); - - /** ADVSignedDeviceIdentity accountSignatureKey */ - accountSignatureKey?: (Uint8Array|null); - - /** ADVSignedDeviceIdentity accountSignature */ - accountSignature?: (Uint8Array|null); - - /** ADVSignedDeviceIdentity deviceSignature */ - deviceSignature?: (Uint8Array|null); - } - - /** Represents a ADVSignedDeviceIdentity. */ - class ADVSignedDeviceIdentity implements IADVSignedDeviceIdentity { - - /** - * Constructs a new ADVSignedDeviceIdentity. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IADVSignedDeviceIdentity); - - /** ADVSignedDeviceIdentity details. */ - public details: Uint8Array; - - /** ADVSignedDeviceIdentity accountSignatureKey. */ - public accountSignatureKey: Uint8Array; - - /** ADVSignedDeviceIdentity accountSignature. */ - public accountSignature: Uint8Array; - - /** ADVSignedDeviceIdentity deviceSignature. */ - public deviceSignature: Uint8Array; - - /** - * Creates a new ADVSignedDeviceIdentity instance using the specified properties. - * @param [properties] Properties to set - * @returns ADVSignedDeviceIdentity instance - */ - public static create(properties?: proto.IADVSignedDeviceIdentity): proto.ADVSignedDeviceIdentity; - - /** - * Encodes the specified ADVSignedDeviceIdentity message. Does not implicitly {@link proto.ADVSignedDeviceIdentity.verify|verify} messages. - * @param message ADVSignedDeviceIdentity message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IADVSignedDeviceIdentity, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified ADVSignedDeviceIdentity message, length delimited. Does not implicitly {@link proto.ADVSignedDeviceIdentity.verify|verify} messages. - * @param message ADVSignedDeviceIdentity message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IADVSignedDeviceIdentity, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a ADVSignedDeviceIdentity message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ADVSignedDeviceIdentity - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.ADVSignedDeviceIdentity; - - /** - * Decodes a ADVSignedDeviceIdentity message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ADVSignedDeviceIdentity - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.ADVSignedDeviceIdentity; - - /** - * Verifies a ADVSignedDeviceIdentity message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a ADVSignedDeviceIdentity message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ADVSignedDeviceIdentity - */ - public static fromObject(object: { [k: string]: any }): proto.ADVSignedDeviceIdentity; - - /** - * Creates a plain object from a ADVSignedDeviceIdentity message. Also converts values to other types if specified. - * @param message ADVSignedDeviceIdentity - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.ADVSignedDeviceIdentity, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this ADVSignedDeviceIdentity to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a ADVDeviceIdentity. */ - interface IADVDeviceIdentity { - - /** ADVDeviceIdentity rawId */ - rawId?: (number|null); - - /** ADVDeviceIdentity timestamp */ - timestamp?: (number|Long|null); - - /** ADVDeviceIdentity keyIndex */ - keyIndex?: (number|null); - } - - /** Represents a ADVDeviceIdentity. */ - class ADVDeviceIdentity implements IADVDeviceIdentity { - - /** - * Constructs a new ADVDeviceIdentity. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IADVDeviceIdentity); - - /** ADVDeviceIdentity rawId. */ - public rawId: number; - - /** ADVDeviceIdentity timestamp. */ - public timestamp: (number|Long); - - /** ADVDeviceIdentity keyIndex. */ - public keyIndex: number; - - /** - * Creates a new ADVDeviceIdentity instance using the specified properties. - * @param [properties] Properties to set - * @returns ADVDeviceIdentity instance - */ - public static create(properties?: proto.IADVDeviceIdentity): proto.ADVDeviceIdentity; - - /** - * Encodes the specified ADVDeviceIdentity message. Does not implicitly {@link proto.ADVDeviceIdentity.verify|verify} messages. - * @param message ADVDeviceIdentity message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IADVDeviceIdentity, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified ADVDeviceIdentity message, length delimited. Does not implicitly {@link proto.ADVDeviceIdentity.verify|verify} messages. - * @param message ADVDeviceIdentity message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IADVDeviceIdentity, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a ADVDeviceIdentity message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ADVDeviceIdentity - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.ADVDeviceIdentity; - - /** - * Decodes a ADVDeviceIdentity message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ADVDeviceIdentity - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.ADVDeviceIdentity; - - /** - * Verifies a ADVDeviceIdentity message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a ADVDeviceIdentity message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ADVDeviceIdentity - */ - public static fromObject(object: { [k: string]: any }): proto.ADVDeviceIdentity; - - /** - * Creates a plain object from a ADVDeviceIdentity message. Also converts values to other types if specified. - * @param message ADVDeviceIdentity - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.ADVDeviceIdentity, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this ADVDeviceIdentity to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a ADVSignedKeyIndexList. */ - interface IADVSignedKeyIndexList { - - /** ADVSignedKeyIndexList details */ - details?: (Uint8Array|null); - - /** ADVSignedKeyIndexList accountSignature */ - accountSignature?: (Uint8Array|null); - } - - /** Represents a ADVSignedKeyIndexList. */ - class ADVSignedKeyIndexList implements IADVSignedKeyIndexList { - - /** - * Constructs a new ADVSignedKeyIndexList. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IADVSignedKeyIndexList); - - /** ADVSignedKeyIndexList details. */ - public details: Uint8Array; - - /** ADVSignedKeyIndexList accountSignature. */ - public accountSignature: Uint8Array; - - /** - * Creates a new ADVSignedKeyIndexList instance using the specified properties. - * @param [properties] Properties to set - * @returns ADVSignedKeyIndexList instance - */ - public static create(properties?: proto.IADVSignedKeyIndexList): proto.ADVSignedKeyIndexList; - - /** - * Encodes the specified ADVSignedKeyIndexList message. Does not implicitly {@link proto.ADVSignedKeyIndexList.verify|verify} messages. - * @param message ADVSignedKeyIndexList message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IADVSignedKeyIndexList, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified ADVSignedKeyIndexList message, length delimited. Does not implicitly {@link proto.ADVSignedKeyIndexList.verify|verify} messages. - * @param message ADVSignedKeyIndexList message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IADVSignedKeyIndexList, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a ADVSignedKeyIndexList message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ADVSignedKeyIndexList - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.ADVSignedKeyIndexList; - - /** - * Decodes a ADVSignedKeyIndexList message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ADVSignedKeyIndexList - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.ADVSignedKeyIndexList; - - /** - * Verifies a ADVSignedKeyIndexList message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a ADVSignedKeyIndexList message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ADVSignedKeyIndexList - */ - public static fromObject(object: { [k: string]: any }): proto.ADVSignedKeyIndexList; - - /** - * Creates a plain object from a ADVSignedKeyIndexList message. Also converts values to other types if specified. - * @param message ADVSignedKeyIndexList - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.ADVSignedKeyIndexList, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this ADVSignedKeyIndexList to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a ADVKeyIndexList. */ - interface IADVKeyIndexList { - - /** ADVKeyIndexList rawId */ - rawId?: (number|null); - - /** ADVKeyIndexList timestamp */ - timestamp?: (number|Long|null); - - /** ADVKeyIndexList currentIndex */ - currentIndex?: (number|null); - - /** ADVKeyIndexList validIndexes */ - validIndexes?: (number[]|null); - } - - /** Represents a ADVKeyIndexList. */ - class ADVKeyIndexList implements IADVKeyIndexList { - - /** - * Constructs a new ADVKeyIndexList. - * @param [properties] Properties to set - */ - constructor(properties?: proto.IADVKeyIndexList); - - /** ADVKeyIndexList rawId. */ - public rawId: number; - - /** ADVKeyIndexList timestamp. */ - public timestamp: (number|Long); - - /** ADVKeyIndexList currentIndex. */ - public currentIndex: number; - - /** ADVKeyIndexList validIndexes. */ - public validIndexes: number[]; - - /** - * Creates a new ADVKeyIndexList instance using the specified properties. - * @param [properties] Properties to set - * @returns ADVKeyIndexList instance - */ - public static create(properties?: proto.IADVKeyIndexList): proto.ADVKeyIndexList; - - /** - * Encodes the specified ADVKeyIndexList message. Does not implicitly {@link proto.ADVKeyIndexList.verify|verify} messages. - * @param message ADVKeyIndexList message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encode(message: proto.IADVKeyIndexList, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Encodes the specified ADVKeyIndexList message, length delimited. Does not implicitly {@link proto.ADVKeyIndexList.verify|verify} messages. - * @param message ADVKeyIndexList message or plain object to encode - * @param [writer] Writer to encode to - * @returns Writer - */ - public static encodeDelimited(message: proto.IADVKeyIndexList, writer?: $protobuf.Writer): $protobuf.Writer; - - /** - * Decodes a ADVKeyIndexList message from the specified reader or buffer. - * @param reader Reader or buffer to decode from - * @param [length] Message length if known beforehand - * @returns ADVKeyIndexList - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.ADVKeyIndexList; - - /** - * Decodes a ADVKeyIndexList message from the specified reader or buffer, length delimited. - * @param reader Reader or buffer to decode from - * @returns ADVKeyIndexList - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.ADVKeyIndexList; - - /** - * Verifies a ADVKeyIndexList message. - * @param message Plain object to verify - * @returns `null` if valid, otherwise the reason why it is not - */ - public static verify(message: { [k: string]: any }): (string|null); - - /** - * Creates a ADVKeyIndexList message from a plain object. Also converts values to their respective internal types. - * @param object Plain object - * @returns ADVKeyIndexList - */ - public static fromObject(object: { [k: string]: any }): proto.ADVKeyIndexList; - - /** - * Creates a plain object from a ADVKeyIndexList message. Also converts values to other types if specified. - * @param message ADVKeyIndexList - * @param [options] Conversion options - * @returns Plain object - */ - public static toObject(message: proto.ADVKeyIndexList, options?: $protobuf.IConversionOptions): { [k: string]: any }; - - /** - * Converts this ADVKeyIndexList to JSON. - * @returns JSON object - */ - public toJSON(): { [k: string]: any }; - } - - /** Properties of a MessageKey. */ - interface IMessageKey { - - /** MessageKey remoteJid */ - remoteJid?: (string|null); - - /** MessageKey fromMe */ - fromMe?: (boolean|null); - - /** MessageKey id */ + /** PaymentBackground id */ id?: (string|null); - /** MessageKey participant */ - participant?: (string|null); + /** PaymentBackground fileLength */ + fileLength?: (number|Long|null); + + /** PaymentBackground width */ + width?: (number|null); + + /** PaymentBackground height */ + height?: (number|null); + + /** PaymentBackground mimetype */ + mimetype?: (string|null); + + /** PaymentBackground placeholderArgb */ + placeholderArgb?: (number|null); + + /** PaymentBackground textArgb */ + textArgb?: (number|null); + + /** PaymentBackground subtextArgb */ + subtextArgb?: (number|null); } - /** Represents a MessageKey. */ - class MessageKey implements IMessageKey { + /** Represents a PaymentBackground. */ + class PaymentBackground implements IPaymentBackground { /** - * Constructs a new MessageKey. + * Constructs a new PaymentBackground. * @param [properties] Properties to set */ - constructor(properties?: proto.IMessageKey); + constructor(properties?: proto.IPaymentBackground); - /** MessageKey remoteJid. */ - public remoteJid: string; - - /** MessageKey fromMe. */ - public fromMe: boolean; - - /** MessageKey id. */ + /** PaymentBackground id. */ public id: string; - /** MessageKey participant. */ - public participant: string; + /** PaymentBackground fileLength. */ + public fileLength: (number|Long); + + /** PaymentBackground width. */ + public width: number; + + /** PaymentBackground height. */ + public height: number; + + /** PaymentBackground mimetype. */ + public mimetype: string; + + /** PaymentBackground placeholderArgb. */ + public placeholderArgb: number; + + /** PaymentBackground textArgb. */ + public textArgb: number; + + /** PaymentBackground subtextArgb. */ + public subtextArgb: number; /** - * Creates a new MessageKey instance using the specified properties. + * Creates a new PaymentBackground instance using the specified properties. * @param [properties] Properties to set - * @returns MessageKey instance + * @returns PaymentBackground instance */ - public static create(properties?: proto.IMessageKey): proto.MessageKey; + public static create(properties?: proto.IPaymentBackground): proto.PaymentBackground; /** - * Encodes the specified MessageKey message. Does not implicitly {@link proto.MessageKey.verify|verify} messages. - * @param message MessageKey message or plain object to encode + * Encodes the specified PaymentBackground message. Does not implicitly {@link proto.PaymentBackground.verify|verify} messages. + * @param message PaymentBackground message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encode(message: proto.IMessageKey, writer?: $protobuf.Writer): $protobuf.Writer; + public static encode(message: proto.IPaymentBackground, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Encodes the specified MessageKey message, length delimited. Does not implicitly {@link proto.MessageKey.verify|verify} messages. - * @param message MessageKey message or plain object to encode + * Encodes the specified PaymentBackground message, length delimited. Does not implicitly {@link proto.PaymentBackground.verify|verify} messages. + * @param message PaymentBackground message or plain object to encode * @param [writer] Writer to encode to * @returns Writer */ - public static encodeDelimited(message: proto.IMessageKey, writer?: $protobuf.Writer): $protobuf.Writer; + public static encodeDelimited(message: proto.IPaymentBackground, writer?: $protobuf.Writer): $protobuf.Writer; /** - * Decodes a MessageKey message from the specified reader or buffer. + * Decodes a PaymentBackground message from the specified reader or buffer. * @param reader Reader or buffer to decode from * @param [length] Message length if known beforehand - * @returns MessageKey + * @returns PaymentBackground * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.MessageKey; + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.PaymentBackground; /** - * Decodes a MessageKey message from the specified reader or buffer, length delimited. + * Decodes a PaymentBackground message from the specified reader or buffer, length delimited. * @param reader Reader or buffer to decode from - * @returns MessageKey + * @returns PaymentBackground * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.MessageKey; + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.PaymentBackground; /** - * Verifies a MessageKey message. + * Verifies a PaymentBackground message. * @param message Plain object to verify * @returns `null` if valid, otherwise the reason why it is not */ public static verify(message: { [k: string]: any }): (string|null); /** - * Creates a MessageKey message from a plain object. Also converts values to their respective internal types. + * Creates a PaymentBackground message from a plain object. Also converts values to their respective internal types. * @param object Plain object - * @returns MessageKey + * @returns PaymentBackground */ - public static fromObject(object: { [k: string]: any }): proto.MessageKey; + public static fromObject(object: { [k: string]: any }): proto.PaymentBackground; /** - * Creates a plain object from a MessageKey message. Also converts values to other types if specified. - * @param message MessageKey + * Creates a plain object from a PaymentBackground message. Also converts values to other types if specified. + * @param message PaymentBackground * @param [options] Conversion options * @returns Plain object */ - public static toObject(message: proto.MessageKey, options?: $protobuf.IConversionOptions): { [k: string]: any }; + public static toObject(message: proto.PaymentBackground, options?: $protobuf.IConversionOptions): { [k: string]: any }; /** - * Converts this MessageKey to JSON. + * Converts this PaymentBackground to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a Money. */ + interface IMoney { + + /** Money value */ + value?: (number|Long|null); + + /** Money offset */ + offset?: (number|null); + + /** Money currencyCode */ + currencyCode?: (string|null); + } + + /** Represents a Money. */ + class Money implements IMoney { + + /** + * Constructs a new Money. + * @param [properties] Properties to set + */ + constructor(properties?: proto.IMoney); + + /** Money value. */ + public value: (number|Long); + + /** Money offset. */ + public offset: number; + + /** Money currencyCode. */ + public currencyCode: string; + + /** + * Creates a new Money instance using the specified properties. + * @param [properties] Properties to set + * @returns Money instance + */ + public static create(properties?: proto.IMoney): proto.Money; + + /** + * Encodes the specified Money message. Does not implicitly {@link proto.Money.verify|verify} messages. + * @param message Money message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: proto.IMoney, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified Money message, length delimited. Does not implicitly {@link proto.Money.verify|verify} messages. + * @param message Money message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: proto.IMoney, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a Money message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns Money + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.Money; + + /** + * Decodes a Money message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns Money + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.Money; + + /** + * Verifies a Money message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a Money message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns Money + */ + public static fromObject(object: { [k: string]: any }): proto.Money; + + /** + * Creates a plain object from a Money message. Also converts values to other types if specified. + * @param message Money + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: proto.Money, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this Money to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a HydratedQuickReplyButton. */ + interface IHydratedQuickReplyButton { + + /** HydratedQuickReplyButton displayText */ + displayText?: (string|null); + + /** HydratedQuickReplyButton id */ + id?: (string|null); + } + + /** Represents a HydratedQuickReplyButton. */ + class HydratedQuickReplyButton implements IHydratedQuickReplyButton { + + /** + * Constructs a new HydratedQuickReplyButton. + * @param [properties] Properties to set + */ + constructor(properties?: proto.IHydratedQuickReplyButton); + + /** HydratedQuickReplyButton displayText. */ + public displayText: string; + + /** HydratedQuickReplyButton id. */ + public id: string; + + /** + * Creates a new HydratedQuickReplyButton instance using the specified properties. + * @param [properties] Properties to set + * @returns HydratedQuickReplyButton instance + */ + public static create(properties?: proto.IHydratedQuickReplyButton): proto.HydratedQuickReplyButton; + + /** + * Encodes the specified HydratedQuickReplyButton message. Does not implicitly {@link proto.HydratedQuickReplyButton.verify|verify} messages. + * @param message HydratedQuickReplyButton message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: proto.IHydratedQuickReplyButton, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified HydratedQuickReplyButton message, length delimited. Does not implicitly {@link proto.HydratedQuickReplyButton.verify|verify} messages. + * @param message HydratedQuickReplyButton message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: proto.IHydratedQuickReplyButton, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a HydratedQuickReplyButton message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns HydratedQuickReplyButton + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.HydratedQuickReplyButton; + + /** + * Decodes a HydratedQuickReplyButton message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns HydratedQuickReplyButton + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.HydratedQuickReplyButton; + + /** + * Verifies a HydratedQuickReplyButton message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a HydratedQuickReplyButton message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns HydratedQuickReplyButton + */ + public static fromObject(object: { [k: string]: any }): proto.HydratedQuickReplyButton; + + /** + * Creates a plain object from a HydratedQuickReplyButton message. Also converts values to other types if specified. + * @param message HydratedQuickReplyButton + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: proto.HydratedQuickReplyButton, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this HydratedQuickReplyButton to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a HydratedURLButton. */ + interface IHydratedURLButton { + + /** HydratedURLButton displayText */ + displayText?: (string|null); + + /** HydratedURLButton url */ + url?: (string|null); + } + + /** Represents a HydratedURLButton. */ + class HydratedURLButton implements IHydratedURLButton { + + /** + * Constructs a new HydratedURLButton. + * @param [properties] Properties to set + */ + constructor(properties?: proto.IHydratedURLButton); + + /** HydratedURLButton displayText. */ + public displayText: string; + + /** HydratedURLButton url. */ + public url: string; + + /** + * Creates a new HydratedURLButton instance using the specified properties. + * @param [properties] Properties to set + * @returns HydratedURLButton instance + */ + public static create(properties?: proto.IHydratedURLButton): proto.HydratedURLButton; + + /** + * Encodes the specified HydratedURLButton message. Does not implicitly {@link proto.HydratedURLButton.verify|verify} messages. + * @param message HydratedURLButton message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: proto.IHydratedURLButton, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified HydratedURLButton message, length delimited. Does not implicitly {@link proto.HydratedURLButton.verify|verify} messages. + * @param message HydratedURLButton message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: proto.IHydratedURLButton, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a HydratedURLButton message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns HydratedURLButton + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.HydratedURLButton; + + /** + * Decodes a HydratedURLButton message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns HydratedURLButton + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.HydratedURLButton; + + /** + * Verifies a HydratedURLButton message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a HydratedURLButton message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns HydratedURLButton + */ + public static fromObject(object: { [k: string]: any }): proto.HydratedURLButton; + + /** + * Creates a plain object from a HydratedURLButton message. Also converts values to other types if specified. + * @param message HydratedURLButton + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: proto.HydratedURLButton, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this HydratedURLButton to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a HydratedCallButton. */ + interface IHydratedCallButton { + + /** HydratedCallButton displayText */ + displayText?: (string|null); + + /** HydratedCallButton phoneNumber */ + phoneNumber?: (string|null); + } + + /** Represents a HydratedCallButton. */ + class HydratedCallButton implements IHydratedCallButton { + + /** + * Constructs a new HydratedCallButton. + * @param [properties] Properties to set + */ + constructor(properties?: proto.IHydratedCallButton); + + /** HydratedCallButton displayText. */ + public displayText: string; + + /** HydratedCallButton phoneNumber. */ + public phoneNumber: string; + + /** + * Creates a new HydratedCallButton instance using the specified properties. + * @param [properties] Properties to set + * @returns HydratedCallButton instance + */ + public static create(properties?: proto.IHydratedCallButton): proto.HydratedCallButton; + + /** + * Encodes the specified HydratedCallButton message. Does not implicitly {@link proto.HydratedCallButton.verify|verify} messages. + * @param message HydratedCallButton message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: proto.IHydratedCallButton, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified HydratedCallButton message, length delimited. Does not implicitly {@link proto.HydratedCallButton.verify|verify} messages. + * @param message HydratedCallButton message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: proto.IHydratedCallButton, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a HydratedCallButton message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns HydratedCallButton + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.HydratedCallButton; + + /** + * Decodes a HydratedCallButton message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns HydratedCallButton + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.HydratedCallButton; + + /** + * Verifies a HydratedCallButton message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a HydratedCallButton message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns HydratedCallButton + */ + public static fromObject(object: { [k: string]: any }): proto.HydratedCallButton; + + /** + * Creates a plain object from a HydratedCallButton message. Also converts values to other types if specified. + * @param message HydratedCallButton + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: proto.HydratedCallButton, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this HydratedCallButton to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a HydratedTemplateButton. */ + interface IHydratedTemplateButton { + + /** HydratedTemplateButton index */ + index?: (number|null); + + /** HydratedTemplateButton quickReplyButton */ + quickReplyButton?: (proto.IHydratedQuickReplyButton|null); + + /** HydratedTemplateButton urlButton */ + urlButton?: (proto.IHydratedURLButton|null); + + /** HydratedTemplateButton callButton */ + callButton?: (proto.IHydratedCallButton|null); + } + + /** Represents a HydratedTemplateButton. */ + class HydratedTemplateButton implements IHydratedTemplateButton { + + /** + * Constructs a new HydratedTemplateButton. + * @param [properties] Properties to set + */ + constructor(properties?: proto.IHydratedTemplateButton); + + /** HydratedTemplateButton index. */ + public index: number; + + /** HydratedTemplateButton quickReplyButton. */ + public quickReplyButton?: (proto.IHydratedQuickReplyButton|null); + + /** HydratedTemplateButton urlButton. */ + public urlButton?: (proto.IHydratedURLButton|null); + + /** HydratedTemplateButton callButton. */ + public callButton?: (proto.IHydratedCallButton|null); + + /** HydratedTemplateButton hydratedButton. */ + public hydratedButton?: ("quickReplyButton"|"urlButton"|"callButton"); + + /** + * Creates a new HydratedTemplateButton instance using the specified properties. + * @param [properties] Properties to set + * @returns HydratedTemplateButton instance + */ + public static create(properties?: proto.IHydratedTemplateButton): proto.HydratedTemplateButton; + + /** + * Encodes the specified HydratedTemplateButton message. Does not implicitly {@link proto.HydratedTemplateButton.verify|verify} messages. + * @param message HydratedTemplateButton message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: proto.IHydratedTemplateButton, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified HydratedTemplateButton message, length delimited. Does not implicitly {@link proto.HydratedTemplateButton.verify|verify} messages. + * @param message HydratedTemplateButton message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: proto.IHydratedTemplateButton, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a HydratedTemplateButton message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns HydratedTemplateButton + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.HydratedTemplateButton; + + /** + * Decodes a HydratedTemplateButton message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns HydratedTemplateButton + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.HydratedTemplateButton; + + /** + * Verifies a HydratedTemplateButton message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a HydratedTemplateButton message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns HydratedTemplateButton + */ + public static fromObject(object: { [k: string]: any }): proto.HydratedTemplateButton; + + /** + * Creates a plain object from a HydratedTemplateButton message. Also converts values to other types if specified. + * @param message HydratedTemplateButton + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: proto.HydratedTemplateButton, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this HydratedTemplateButton to JSON. + * @returns JSON object + */ + public toJSON(): { [k: string]: any }; + } + + /** Properties of a UserReceipt. */ + interface IUserReceipt { + + /** UserReceipt userJid */ + userJid: string; + + /** UserReceipt receiptTimestamp */ + receiptTimestamp?: (number|Long|null); + + /** UserReceipt readTimestamp */ + readTimestamp?: (number|Long|null); + + /** UserReceipt playedTimestamp */ + playedTimestamp?: (number|Long|null); + + /** UserReceipt pendingDeviceJid */ + pendingDeviceJid?: (string[]|null); + + /** UserReceipt deliveredDeviceJid */ + deliveredDeviceJid?: (string[]|null); + } + + /** Represents a UserReceipt. */ + class UserReceipt implements IUserReceipt { + + /** + * Constructs a new UserReceipt. + * @param [properties] Properties to set + */ + constructor(properties?: proto.IUserReceipt); + + /** UserReceipt userJid. */ + public userJid: string; + + /** UserReceipt receiptTimestamp. */ + public receiptTimestamp: (number|Long); + + /** UserReceipt readTimestamp. */ + public readTimestamp: (number|Long); + + /** UserReceipt playedTimestamp. */ + public playedTimestamp: (number|Long); + + /** UserReceipt pendingDeviceJid. */ + public pendingDeviceJid: string[]; + + /** UserReceipt deliveredDeviceJid. */ + public deliveredDeviceJid: string[]; + + /** + * Creates a new UserReceipt instance using the specified properties. + * @param [properties] Properties to set + * @returns UserReceipt instance + */ + public static create(properties?: proto.IUserReceipt): proto.UserReceipt; + + /** + * Encodes the specified UserReceipt message. Does not implicitly {@link proto.UserReceipt.verify|verify} messages. + * @param message UserReceipt message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encode(message: proto.IUserReceipt, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Encodes the specified UserReceipt message, length delimited. Does not implicitly {@link proto.UserReceipt.verify|verify} messages. + * @param message UserReceipt message or plain object to encode + * @param [writer] Writer to encode to + * @returns Writer + */ + public static encodeDelimited(message: proto.IUserReceipt, writer?: $protobuf.Writer): $protobuf.Writer; + + /** + * Decodes a UserReceipt message from the specified reader or buffer. + * @param reader Reader or buffer to decode from + * @param [length] Message length if known beforehand + * @returns UserReceipt + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decode(reader: ($protobuf.Reader|Uint8Array), length?: number): proto.UserReceipt; + + /** + * Decodes a UserReceipt message from the specified reader or buffer, length delimited. + * @param reader Reader or buffer to decode from + * @returns UserReceipt + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + public static decodeDelimited(reader: ($protobuf.Reader|Uint8Array)): proto.UserReceipt; + + /** + * Verifies a UserReceipt message. + * @param message Plain object to verify + * @returns `null` if valid, otherwise the reason why it is not + */ + public static verify(message: { [k: string]: any }): (string|null); + + /** + * Creates a UserReceipt message from a plain object. Also converts values to their respective internal types. + * @param object Plain object + * @returns UserReceipt + */ + public static fromObject(object: { [k: string]: any }): proto.UserReceipt; + + /** + * Creates a plain object from a UserReceipt message. Also converts values to other types if specified. + * @param message UserReceipt + * @param [options] Conversion options + * @returns Plain object + */ + public static toObject(message: proto.UserReceipt, options?: $protobuf.IConversionOptions): { [k: string]: any }; + + /** + * Converts this UserReceipt to JSON. * @returns JSON object */ public toJSON(): { [k: string]: any }; @@ -17601,6 +10913,9 @@ export namespace proto { /** WebFeatures mdForceUpgrade */ mdForceUpgrade?: (proto.WebFeatures.WebFeaturesFlag|null); + + /** WebFeatures disappearingMode */ + disappearingMode?: (proto.WebFeatures.WebFeaturesFlag|null); } /** Represents a WebFeatures. */ @@ -17738,6 +11053,9 @@ export namespace proto { /** WebFeatures mdForceUpgrade. */ public mdForceUpgrade: proto.WebFeatures.WebFeaturesFlag; + /** WebFeatures disappearingMode. */ + public disappearingMode: proto.WebFeatures.WebFeaturesFlag; + /** * Creates a new WebFeatures instance using the specified properties. * @param [properties] Properties to set @@ -18348,6 +11666,9 @@ export namespace proto { /** WebMessageInfo photoChange */ photoChange?: (proto.IPhotoChange|null); + + /** WebMessageInfo userReceipt */ + userReceipt?: (proto.IUserReceipt[]|null); } /** Represents a WebMessageInfo. */ @@ -18449,6 +11770,9 @@ export namespace proto { /** WebMessageInfo photoChange. */ public photoChange?: (proto.IPhotoChange|null); + /** WebMessageInfo userReceipt. */ + public userReceipt: proto.IUserReceipt[]; + /** * Creates a new WebMessageInfo instance using the specified properties. * @param [properties] Properties to set @@ -18663,7 +11987,8 @@ export namespace proto { BIZ_PRIVACY_MODE_INIT_FB = 126, BIZ_PRIVACY_MODE_INIT_BSP = 127, BIZ_PRIVACY_MODE_TO_FB = 128, - BIZ_PRIVACY_MODE_TO_BSP = 129 + BIZ_PRIVACY_MODE_TO_BSP = 129, + DISAPPEARING_MODE = 130 } /** WebMessageInfoBizPrivacyStatus enum. */ diff --git a/WAMessage/WAMessage.js b/WAMessage/index.js similarity index 65% rename from WAMessage/WAMessage.js rename to WAMessage/index.js index 140aede..5f73b72 100644 --- a/WAMessage/WAMessage.js +++ b/WAMessage/index.js @@ -18,28 +18,27 @@ $root.proto = (function() { */ var proto = {}; - proto.AppVersion = (function() { + proto.MessageKey = (function() { /** - * Properties of an AppVersion. + * Properties of a MessageKey. * @memberof proto - * @interface IAppVersion - * @property {number|null} [primary] AppVersion primary - * @property {number|null} [secondary] AppVersion secondary - * @property {number|null} [tertiary] AppVersion tertiary - * @property {number|null} [quaternary] AppVersion quaternary - * @property {number|null} [quinary] AppVersion quinary + * @interface IMessageKey + * @property {string|null} [remoteJid] MessageKey remoteJid + * @property {boolean|null} [fromMe] MessageKey fromMe + * @property {string|null} [id] MessageKey id + * @property {string|null} [participant] MessageKey participant */ /** - * Constructs a new AppVersion. + * Constructs a new MessageKey. * @memberof proto - * @classdesc Represents an AppVersion. - * @implements IAppVersion + * @classdesc Represents a MessageKey. + * @implements IMessageKey * @constructor - * @param {proto.IAppVersion=} [properties] Properties to set + * @param {proto.IMessageKey=} [properties] Properties to set */ - function AppVersion(properties) { + function MessageKey(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -47,8810 +46,115 @@ $root.proto = (function() { } /** - * AppVersion primary. - * @member {number} primary - * @memberof proto.AppVersion + * MessageKey remoteJid. + * @member {string} remoteJid + * @memberof proto.MessageKey * @instance */ - AppVersion.prototype.primary = 0; + MessageKey.prototype.remoteJid = ""; /** - * AppVersion secondary. - * @member {number} secondary - * @memberof proto.AppVersion + * MessageKey fromMe. + * @member {boolean} fromMe + * @memberof proto.MessageKey * @instance */ - AppVersion.prototype.secondary = 0; + MessageKey.prototype.fromMe = false; /** - * AppVersion tertiary. - * @member {number} tertiary - * @memberof proto.AppVersion + * MessageKey id. + * @member {string} id + * @memberof proto.MessageKey * @instance */ - AppVersion.prototype.tertiary = 0; + MessageKey.prototype.id = ""; /** - * AppVersion quaternary. - * @member {number} quaternary - * @memberof proto.AppVersion - * @instance - */ - AppVersion.prototype.quaternary = 0; - - /** - * AppVersion quinary. - * @member {number} quinary - * @memberof proto.AppVersion - * @instance - */ - AppVersion.prototype.quinary = 0; - - /** - * Creates a new AppVersion instance using the specified properties. - * @function create - * @memberof proto.AppVersion - * @static - * @param {proto.IAppVersion=} [properties] Properties to set - * @returns {proto.AppVersion} AppVersion instance - */ - AppVersion.create = function create(properties) { - return new AppVersion(properties); - }; - - /** - * Encodes the specified AppVersion message. Does not implicitly {@link proto.AppVersion.verify|verify} messages. - * @function encode - * @memberof proto.AppVersion - * @static - * @param {proto.IAppVersion} message AppVersion message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - AppVersion.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.primary != null && Object.hasOwnProperty.call(message, "primary")) - writer.uint32(/* id 1, wireType 0 =*/8).uint32(message.primary); - if (message.secondary != null && Object.hasOwnProperty.call(message, "secondary")) - writer.uint32(/* id 2, wireType 0 =*/16).uint32(message.secondary); - if (message.tertiary != null && Object.hasOwnProperty.call(message, "tertiary")) - writer.uint32(/* id 3, wireType 0 =*/24).uint32(message.tertiary); - if (message.quaternary != null && Object.hasOwnProperty.call(message, "quaternary")) - writer.uint32(/* id 4, wireType 0 =*/32).uint32(message.quaternary); - if (message.quinary != null && Object.hasOwnProperty.call(message, "quinary")) - writer.uint32(/* id 5, wireType 0 =*/40).uint32(message.quinary); - return writer; - }; - - /** - * Encodes the specified AppVersion message, length delimited. Does not implicitly {@link proto.AppVersion.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.AppVersion - * @static - * @param {proto.IAppVersion} message AppVersion message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - AppVersion.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes an AppVersion message from the specified reader or buffer. - * @function decode - * @memberof proto.AppVersion - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.AppVersion} AppVersion - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - AppVersion.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.AppVersion(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.primary = reader.uint32(); - break; - case 2: - message.secondary = reader.uint32(); - break; - case 3: - message.tertiary = reader.uint32(); - break; - case 4: - message.quaternary = reader.uint32(); - break; - case 5: - message.quinary = reader.uint32(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes an AppVersion message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.AppVersion - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.AppVersion} AppVersion - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - AppVersion.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies an AppVersion message. - * @function verify - * @memberof proto.AppVersion - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - AppVersion.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.primary != null && message.hasOwnProperty("primary")) - if (!$util.isInteger(message.primary)) - return "primary: integer expected"; - if (message.secondary != null && message.hasOwnProperty("secondary")) - if (!$util.isInteger(message.secondary)) - return "secondary: integer expected"; - if (message.tertiary != null && message.hasOwnProperty("tertiary")) - if (!$util.isInteger(message.tertiary)) - return "tertiary: integer expected"; - if (message.quaternary != null && message.hasOwnProperty("quaternary")) - if (!$util.isInteger(message.quaternary)) - return "quaternary: integer expected"; - if (message.quinary != null && message.hasOwnProperty("quinary")) - if (!$util.isInteger(message.quinary)) - return "quinary: integer expected"; - return null; - }; - - /** - * Creates an AppVersion message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.AppVersion - * @static - * @param {Object.} object Plain object - * @returns {proto.AppVersion} AppVersion - */ - AppVersion.fromObject = function fromObject(object) { - if (object instanceof $root.proto.AppVersion) - return object; - var message = new $root.proto.AppVersion(); - if (object.primary != null) - message.primary = object.primary >>> 0; - if (object.secondary != null) - message.secondary = object.secondary >>> 0; - if (object.tertiary != null) - message.tertiary = object.tertiary >>> 0; - if (object.quaternary != null) - message.quaternary = object.quaternary >>> 0; - if (object.quinary != null) - message.quinary = object.quinary >>> 0; - return message; - }; - - /** - * Creates a plain object from an AppVersion message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.AppVersion - * @static - * @param {proto.AppVersion} message AppVersion - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - AppVersion.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.primary = 0; - object.secondary = 0; - object.tertiary = 0; - object.quaternary = 0; - object.quinary = 0; - } - if (message.primary != null && message.hasOwnProperty("primary")) - object.primary = message.primary; - if (message.secondary != null && message.hasOwnProperty("secondary")) - object.secondary = message.secondary; - if (message.tertiary != null && message.hasOwnProperty("tertiary")) - object.tertiary = message.tertiary; - if (message.quaternary != null && message.hasOwnProperty("quaternary")) - object.quaternary = message.quaternary; - if (message.quinary != null && message.hasOwnProperty("quinary")) - object.quinary = message.quinary; - return object; - }; - - /** - * Converts this AppVersion to JSON. - * @function toJSON - * @memberof proto.AppVersion - * @instance - * @returns {Object.} JSON object - */ - AppVersion.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return AppVersion; - })(); - - proto.UserAgent = (function() { - - /** - * Properties of a UserAgent. - * @memberof proto - * @interface IUserAgent - * @property {proto.UserAgent.UserAgentPlatform|null} [platform] UserAgent platform - * @property {proto.IAppVersion|null} [appVersion] UserAgent appVersion - * @property {string|null} [mcc] UserAgent mcc - * @property {string|null} [mnc] UserAgent mnc - * @property {string|null} [osVersion] UserAgent osVersion - * @property {string|null} [manufacturer] UserAgent manufacturer - * @property {string|null} [device] UserAgent device - * @property {string|null} [osBuildNumber] UserAgent osBuildNumber - * @property {string|null} [phoneId] UserAgent phoneId - * @property {proto.UserAgent.UserAgentReleaseChannel|null} [releaseChannel] UserAgent releaseChannel - * @property {string|null} [localeLanguageIso6391] UserAgent localeLanguageIso6391 - * @property {string|null} [localeCountryIso31661Alpha2] UserAgent localeCountryIso31661Alpha2 - * @property {string|null} [deviceBoard] UserAgent deviceBoard - */ - - /** - * Constructs a new UserAgent. - * @memberof proto - * @classdesc Represents a UserAgent. - * @implements IUserAgent - * @constructor - * @param {proto.IUserAgent=} [properties] Properties to set - */ - function UserAgent(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * UserAgent platform. - * @member {proto.UserAgent.UserAgentPlatform} platform - * @memberof proto.UserAgent - * @instance - */ - UserAgent.prototype.platform = 0; - - /** - * UserAgent appVersion. - * @member {proto.IAppVersion|null|undefined} appVersion - * @memberof proto.UserAgent - * @instance - */ - UserAgent.prototype.appVersion = null; - - /** - * UserAgent mcc. - * @member {string} mcc - * @memberof proto.UserAgent - * @instance - */ - UserAgent.prototype.mcc = ""; - - /** - * UserAgent mnc. - * @member {string} mnc - * @memberof proto.UserAgent - * @instance - */ - UserAgent.prototype.mnc = ""; - - /** - * UserAgent osVersion. - * @member {string} osVersion - * @memberof proto.UserAgent - * @instance - */ - UserAgent.prototype.osVersion = ""; - - /** - * UserAgent manufacturer. - * @member {string} manufacturer - * @memberof proto.UserAgent - * @instance - */ - UserAgent.prototype.manufacturer = ""; - - /** - * UserAgent device. - * @member {string} device - * @memberof proto.UserAgent - * @instance - */ - UserAgent.prototype.device = ""; - - /** - * UserAgent osBuildNumber. - * @member {string} osBuildNumber - * @memberof proto.UserAgent - * @instance - */ - UserAgent.prototype.osBuildNumber = ""; - - /** - * UserAgent phoneId. - * @member {string} phoneId - * @memberof proto.UserAgent - * @instance - */ - UserAgent.prototype.phoneId = ""; - - /** - * UserAgent releaseChannel. - * @member {proto.UserAgent.UserAgentReleaseChannel} releaseChannel - * @memberof proto.UserAgent - * @instance - */ - UserAgent.prototype.releaseChannel = 0; - - /** - * UserAgent localeLanguageIso6391. - * @member {string} localeLanguageIso6391 - * @memberof proto.UserAgent - * @instance - */ - UserAgent.prototype.localeLanguageIso6391 = ""; - - /** - * UserAgent localeCountryIso31661Alpha2. - * @member {string} localeCountryIso31661Alpha2 - * @memberof proto.UserAgent - * @instance - */ - UserAgent.prototype.localeCountryIso31661Alpha2 = ""; - - /** - * UserAgent deviceBoard. - * @member {string} deviceBoard - * @memberof proto.UserAgent - * @instance - */ - UserAgent.prototype.deviceBoard = ""; - - /** - * Creates a new UserAgent instance using the specified properties. - * @function create - * @memberof proto.UserAgent - * @static - * @param {proto.IUserAgent=} [properties] Properties to set - * @returns {proto.UserAgent} UserAgent instance - */ - UserAgent.create = function create(properties) { - return new UserAgent(properties); - }; - - /** - * Encodes the specified UserAgent message. Does not implicitly {@link proto.UserAgent.verify|verify} messages. - * @function encode - * @memberof proto.UserAgent - * @static - * @param {proto.IUserAgent} message UserAgent message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - UserAgent.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.platform != null && Object.hasOwnProperty.call(message, "platform")) - writer.uint32(/* id 1, wireType 0 =*/8).int32(message.platform); - if (message.appVersion != null && Object.hasOwnProperty.call(message, "appVersion")) - $root.proto.AppVersion.encode(message.appVersion, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - if (message.mcc != null && Object.hasOwnProperty.call(message, "mcc")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.mcc); - if (message.mnc != null && Object.hasOwnProperty.call(message, "mnc")) - writer.uint32(/* id 4, wireType 2 =*/34).string(message.mnc); - if (message.osVersion != null && Object.hasOwnProperty.call(message, "osVersion")) - writer.uint32(/* id 5, wireType 2 =*/42).string(message.osVersion); - if (message.manufacturer != null && Object.hasOwnProperty.call(message, "manufacturer")) - writer.uint32(/* id 6, wireType 2 =*/50).string(message.manufacturer); - if (message.device != null && Object.hasOwnProperty.call(message, "device")) - writer.uint32(/* id 7, wireType 2 =*/58).string(message.device); - if (message.osBuildNumber != null && Object.hasOwnProperty.call(message, "osBuildNumber")) - writer.uint32(/* id 8, wireType 2 =*/66).string(message.osBuildNumber); - if (message.phoneId != null && Object.hasOwnProperty.call(message, "phoneId")) - writer.uint32(/* id 9, wireType 2 =*/74).string(message.phoneId); - if (message.releaseChannel != null && Object.hasOwnProperty.call(message, "releaseChannel")) - writer.uint32(/* id 10, wireType 0 =*/80).int32(message.releaseChannel); - if (message.localeLanguageIso6391 != null && Object.hasOwnProperty.call(message, "localeLanguageIso6391")) - writer.uint32(/* id 11, wireType 2 =*/90).string(message.localeLanguageIso6391); - if (message.localeCountryIso31661Alpha2 != null && Object.hasOwnProperty.call(message, "localeCountryIso31661Alpha2")) - writer.uint32(/* id 12, wireType 2 =*/98).string(message.localeCountryIso31661Alpha2); - if (message.deviceBoard != null && Object.hasOwnProperty.call(message, "deviceBoard")) - writer.uint32(/* id 13, wireType 2 =*/106).string(message.deviceBoard); - return writer; - }; - - /** - * Encodes the specified UserAgent message, length delimited. Does not implicitly {@link proto.UserAgent.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.UserAgent - * @static - * @param {proto.IUserAgent} message UserAgent message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - UserAgent.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a UserAgent message from the specified reader or buffer. - * @function decode - * @memberof proto.UserAgent - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.UserAgent} UserAgent - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - UserAgent.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.UserAgent(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.platform = reader.int32(); - break; - case 2: - message.appVersion = $root.proto.AppVersion.decode(reader, reader.uint32()); - break; - case 3: - message.mcc = reader.string(); - break; - case 4: - message.mnc = reader.string(); - break; - case 5: - message.osVersion = reader.string(); - break; - case 6: - message.manufacturer = reader.string(); - break; - case 7: - message.device = reader.string(); - break; - case 8: - message.osBuildNumber = reader.string(); - break; - case 9: - message.phoneId = reader.string(); - break; - case 10: - message.releaseChannel = reader.int32(); - break; - case 11: - message.localeLanguageIso6391 = reader.string(); - break; - case 12: - message.localeCountryIso31661Alpha2 = reader.string(); - break; - case 13: - message.deviceBoard = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a UserAgent message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.UserAgent - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.UserAgent} UserAgent - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - UserAgent.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a UserAgent message. - * @function verify - * @memberof proto.UserAgent - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - UserAgent.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.platform != null && message.hasOwnProperty("platform")) - switch (message.platform) { - default: - return "platform: enum value expected"; - case 0: - case 1: - case 2: - case 3: - case 4: - case 5: - case 6: - case 7: - case 8: - case 9: - case 10: - case 11: - case 12: - case 13: - case 14: - case 15: - case 16: - case 17: - case 18: - case 19: - case 20: - case 21: - case 22: - case 23: - case 24: - case 25: - break; - } - if (message.appVersion != null && message.hasOwnProperty("appVersion")) { - var error = $root.proto.AppVersion.verify(message.appVersion); - if (error) - return "appVersion." + error; - } - if (message.mcc != null && message.hasOwnProperty("mcc")) - if (!$util.isString(message.mcc)) - return "mcc: string expected"; - if (message.mnc != null && message.hasOwnProperty("mnc")) - if (!$util.isString(message.mnc)) - return "mnc: string expected"; - if (message.osVersion != null && message.hasOwnProperty("osVersion")) - if (!$util.isString(message.osVersion)) - return "osVersion: string expected"; - if (message.manufacturer != null && message.hasOwnProperty("manufacturer")) - if (!$util.isString(message.manufacturer)) - return "manufacturer: string expected"; - if (message.device != null && message.hasOwnProperty("device")) - if (!$util.isString(message.device)) - return "device: string expected"; - if (message.osBuildNumber != null && message.hasOwnProperty("osBuildNumber")) - if (!$util.isString(message.osBuildNumber)) - return "osBuildNumber: string expected"; - if (message.phoneId != null && message.hasOwnProperty("phoneId")) - if (!$util.isString(message.phoneId)) - return "phoneId: string expected"; - if (message.releaseChannel != null && message.hasOwnProperty("releaseChannel")) - switch (message.releaseChannel) { - default: - return "releaseChannel: enum value expected"; - case 0: - case 1: - case 2: - case 3: - break; - } - if (message.localeLanguageIso6391 != null && message.hasOwnProperty("localeLanguageIso6391")) - if (!$util.isString(message.localeLanguageIso6391)) - return "localeLanguageIso6391: string expected"; - if (message.localeCountryIso31661Alpha2 != null && message.hasOwnProperty("localeCountryIso31661Alpha2")) - if (!$util.isString(message.localeCountryIso31661Alpha2)) - return "localeCountryIso31661Alpha2: string expected"; - if (message.deviceBoard != null && message.hasOwnProperty("deviceBoard")) - if (!$util.isString(message.deviceBoard)) - return "deviceBoard: string expected"; - return null; - }; - - /** - * Creates a UserAgent message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.UserAgent - * @static - * @param {Object.} object Plain object - * @returns {proto.UserAgent} UserAgent - */ - UserAgent.fromObject = function fromObject(object) { - if (object instanceof $root.proto.UserAgent) - return object; - var message = new $root.proto.UserAgent(); - switch (object.platform) { - case "ANDROID": - case 0: - message.platform = 0; - break; - case "IOS": - case 1: - message.platform = 1; - break; - case "WINDOWS_PHONE": - case 2: - message.platform = 2; - break; - case "BLACKBERRY": - case 3: - message.platform = 3; - break; - case "BLACKBERRYX": - case 4: - message.platform = 4; - break; - case "S40": - case 5: - message.platform = 5; - break; - case "S60": - case 6: - message.platform = 6; - break; - case "PYTHON_CLIENT": - case 7: - message.platform = 7; - break; - case "TIZEN": - case 8: - message.platform = 8; - break; - case "ENTERPRISE": - case 9: - message.platform = 9; - break; - case "SMB_ANDROID": - case 10: - message.platform = 10; - break; - case "KAIOS": - case 11: - message.platform = 11; - break; - case "SMB_IOS": - case 12: - message.platform = 12; - break; - case "WINDOWS": - case 13: - message.platform = 13; - break; - case "WEB": - case 14: - message.platform = 14; - break; - case "PORTAL": - case 15: - message.platform = 15; - break; - case "GREEN_ANDROID": - case 16: - message.platform = 16; - break; - case "GREEN_IPHONE": - case 17: - message.platform = 17; - break; - case "BLUE_ANDROID": - case 18: - message.platform = 18; - break; - case "BLUE_IPHONE": - case 19: - message.platform = 19; - break; - case "FBLITE_ANDROID": - case 20: - message.platform = 20; - break; - case "MLITE_ANDROID": - case 21: - message.platform = 21; - break; - case "IGLITE_ANDROID": - case 22: - message.platform = 22; - break; - case "PAGE": - case 23: - message.platform = 23; - break; - case "MACOS": - case 24: - message.platform = 24; - break; - case "VR": - case 25: - message.platform = 25; - break; - } - if (object.appVersion != null) { - if (typeof object.appVersion !== "object") - throw TypeError(".proto.UserAgent.appVersion: object expected"); - message.appVersion = $root.proto.AppVersion.fromObject(object.appVersion); - } - if (object.mcc != null) - message.mcc = String(object.mcc); - if (object.mnc != null) - message.mnc = String(object.mnc); - if (object.osVersion != null) - message.osVersion = String(object.osVersion); - if (object.manufacturer != null) - message.manufacturer = String(object.manufacturer); - if (object.device != null) - message.device = String(object.device); - if (object.osBuildNumber != null) - message.osBuildNumber = String(object.osBuildNumber); - if (object.phoneId != null) - message.phoneId = String(object.phoneId); - switch (object.releaseChannel) { - case "RELEASE": - case 0: - message.releaseChannel = 0; - break; - case "BETA": - case 1: - message.releaseChannel = 1; - break; - case "ALPHA": - case 2: - message.releaseChannel = 2; - break; - case "DEBUG": - case 3: - message.releaseChannel = 3; - break; - } - if (object.localeLanguageIso6391 != null) - message.localeLanguageIso6391 = String(object.localeLanguageIso6391); - if (object.localeCountryIso31661Alpha2 != null) - message.localeCountryIso31661Alpha2 = String(object.localeCountryIso31661Alpha2); - if (object.deviceBoard != null) - message.deviceBoard = String(object.deviceBoard); - return message; - }; - - /** - * Creates a plain object from a UserAgent message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.UserAgent - * @static - * @param {proto.UserAgent} message UserAgent - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - UserAgent.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.platform = options.enums === String ? "ANDROID" : 0; - object.appVersion = null; - object.mcc = ""; - object.mnc = ""; - object.osVersion = ""; - object.manufacturer = ""; - object.device = ""; - object.osBuildNumber = ""; - object.phoneId = ""; - object.releaseChannel = options.enums === String ? "RELEASE" : 0; - object.localeLanguageIso6391 = ""; - object.localeCountryIso31661Alpha2 = ""; - object.deviceBoard = ""; - } - if (message.platform != null && message.hasOwnProperty("platform")) - object.platform = options.enums === String ? $root.proto.UserAgent.UserAgentPlatform[message.platform] : message.platform; - if (message.appVersion != null && message.hasOwnProperty("appVersion")) - object.appVersion = $root.proto.AppVersion.toObject(message.appVersion, options); - if (message.mcc != null && message.hasOwnProperty("mcc")) - object.mcc = message.mcc; - if (message.mnc != null && message.hasOwnProperty("mnc")) - object.mnc = message.mnc; - if (message.osVersion != null && message.hasOwnProperty("osVersion")) - object.osVersion = message.osVersion; - if (message.manufacturer != null && message.hasOwnProperty("manufacturer")) - object.manufacturer = message.manufacturer; - if (message.device != null && message.hasOwnProperty("device")) - object.device = message.device; - if (message.osBuildNumber != null && message.hasOwnProperty("osBuildNumber")) - object.osBuildNumber = message.osBuildNumber; - if (message.phoneId != null && message.hasOwnProperty("phoneId")) - object.phoneId = message.phoneId; - if (message.releaseChannel != null && message.hasOwnProperty("releaseChannel")) - object.releaseChannel = options.enums === String ? $root.proto.UserAgent.UserAgentReleaseChannel[message.releaseChannel] : message.releaseChannel; - if (message.localeLanguageIso6391 != null && message.hasOwnProperty("localeLanguageIso6391")) - object.localeLanguageIso6391 = message.localeLanguageIso6391; - if (message.localeCountryIso31661Alpha2 != null && message.hasOwnProperty("localeCountryIso31661Alpha2")) - object.localeCountryIso31661Alpha2 = message.localeCountryIso31661Alpha2; - if (message.deviceBoard != null && message.hasOwnProperty("deviceBoard")) - object.deviceBoard = message.deviceBoard; - return object; - }; - - /** - * Converts this UserAgent to JSON. - * @function toJSON - * @memberof proto.UserAgent - * @instance - * @returns {Object.} JSON object - */ - UserAgent.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - /** - * UserAgentPlatform enum. - * @name proto.UserAgent.UserAgentPlatform - * @enum {number} - * @property {number} ANDROID=0 ANDROID value - * @property {number} IOS=1 IOS value - * @property {number} WINDOWS_PHONE=2 WINDOWS_PHONE value - * @property {number} BLACKBERRY=3 BLACKBERRY value - * @property {number} BLACKBERRYX=4 BLACKBERRYX value - * @property {number} S40=5 S40 value - * @property {number} S60=6 S60 value - * @property {number} PYTHON_CLIENT=7 PYTHON_CLIENT value - * @property {number} TIZEN=8 TIZEN value - * @property {number} ENTERPRISE=9 ENTERPRISE value - * @property {number} SMB_ANDROID=10 SMB_ANDROID value - * @property {number} KAIOS=11 KAIOS value - * @property {number} SMB_IOS=12 SMB_IOS value - * @property {number} WINDOWS=13 WINDOWS value - * @property {number} WEB=14 WEB value - * @property {number} PORTAL=15 PORTAL value - * @property {number} GREEN_ANDROID=16 GREEN_ANDROID value - * @property {number} GREEN_IPHONE=17 GREEN_IPHONE value - * @property {number} BLUE_ANDROID=18 BLUE_ANDROID value - * @property {number} BLUE_IPHONE=19 BLUE_IPHONE value - * @property {number} FBLITE_ANDROID=20 FBLITE_ANDROID value - * @property {number} MLITE_ANDROID=21 MLITE_ANDROID value - * @property {number} IGLITE_ANDROID=22 IGLITE_ANDROID value - * @property {number} PAGE=23 PAGE value - * @property {number} MACOS=24 MACOS value - * @property {number} VR=25 VR value - */ - UserAgent.UserAgentPlatform = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "ANDROID"] = 0; - values[valuesById[1] = "IOS"] = 1; - values[valuesById[2] = "WINDOWS_PHONE"] = 2; - values[valuesById[3] = "BLACKBERRY"] = 3; - values[valuesById[4] = "BLACKBERRYX"] = 4; - values[valuesById[5] = "S40"] = 5; - values[valuesById[6] = "S60"] = 6; - values[valuesById[7] = "PYTHON_CLIENT"] = 7; - values[valuesById[8] = "TIZEN"] = 8; - values[valuesById[9] = "ENTERPRISE"] = 9; - values[valuesById[10] = "SMB_ANDROID"] = 10; - values[valuesById[11] = "KAIOS"] = 11; - values[valuesById[12] = "SMB_IOS"] = 12; - values[valuesById[13] = "WINDOWS"] = 13; - values[valuesById[14] = "WEB"] = 14; - values[valuesById[15] = "PORTAL"] = 15; - values[valuesById[16] = "GREEN_ANDROID"] = 16; - values[valuesById[17] = "GREEN_IPHONE"] = 17; - values[valuesById[18] = "BLUE_ANDROID"] = 18; - values[valuesById[19] = "BLUE_IPHONE"] = 19; - values[valuesById[20] = "FBLITE_ANDROID"] = 20; - values[valuesById[21] = "MLITE_ANDROID"] = 21; - values[valuesById[22] = "IGLITE_ANDROID"] = 22; - values[valuesById[23] = "PAGE"] = 23; - values[valuesById[24] = "MACOS"] = 24; - values[valuesById[25] = "VR"] = 25; - return values; - })(); - - /** - * UserAgentReleaseChannel enum. - * @name proto.UserAgent.UserAgentReleaseChannel - * @enum {number} - * @property {number} RELEASE=0 RELEASE value - * @property {number} BETA=1 BETA value - * @property {number} ALPHA=2 ALPHA value - * @property {number} DEBUG=3 DEBUG value - */ - UserAgent.UserAgentReleaseChannel = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "RELEASE"] = 0; - values[valuesById[1] = "BETA"] = 1; - values[valuesById[2] = "ALPHA"] = 2; - values[valuesById[3] = "DEBUG"] = 3; - return values; - })(); - - return UserAgent; - })(); - - proto.WebdPayload = (function() { - - /** - * Properties of a WebdPayload. - * @memberof proto - * @interface IWebdPayload - * @property {boolean|null} [usesParticipantInKey] WebdPayload usesParticipantInKey - * @property {boolean|null} [supportsStarredMessages] WebdPayload supportsStarredMessages - * @property {boolean|null} [supportsDocumentMessages] WebdPayload supportsDocumentMessages - * @property {boolean|null} [supportsUrlMessages] WebdPayload supportsUrlMessages - * @property {boolean|null} [supportsMediaRetry] WebdPayload supportsMediaRetry - * @property {boolean|null} [supportsE2EImage] WebdPayload supportsE2EImage - * @property {boolean|null} [supportsE2EVideo] WebdPayload supportsE2EVideo - * @property {boolean|null} [supportsE2EAudio] WebdPayload supportsE2EAudio - * @property {boolean|null} [supportsE2EDocument] WebdPayload supportsE2EDocument - * @property {string|null} [documentTypes] WebdPayload documentTypes - * @property {Uint8Array|null} [features] WebdPayload features - */ - - /** - * Constructs a new WebdPayload. - * @memberof proto - * @classdesc Represents a WebdPayload. - * @implements IWebdPayload - * @constructor - * @param {proto.IWebdPayload=} [properties] Properties to set - */ - function WebdPayload(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * WebdPayload usesParticipantInKey. - * @member {boolean} usesParticipantInKey - * @memberof proto.WebdPayload - * @instance - */ - WebdPayload.prototype.usesParticipantInKey = false; - - /** - * WebdPayload supportsStarredMessages. - * @member {boolean} supportsStarredMessages - * @memberof proto.WebdPayload - * @instance - */ - WebdPayload.prototype.supportsStarredMessages = false; - - /** - * WebdPayload supportsDocumentMessages. - * @member {boolean} supportsDocumentMessages - * @memberof proto.WebdPayload - * @instance - */ - WebdPayload.prototype.supportsDocumentMessages = false; - - /** - * WebdPayload supportsUrlMessages. - * @member {boolean} supportsUrlMessages - * @memberof proto.WebdPayload - * @instance - */ - WebdPayload.prototype.supportsUrlMessages = false; - - /** - * WebdPayload supportsMediaRetry. - * @member {boolean} supportsMediaRetry - * @memberof proto.WebdPayload - * @instance - */ - WebdPayload.prototype.supportsMediaRetry = false; - - /** - * WebdPayload supportsE2EImage. - * @member {boolean} supportsE2EImage - * @memberof proto.WebdPayload - * @instance - */ - WebdPayload.prototype.supportsE2EImage = false; - - /** - * WebdPayload supportsE2EVideo. - * @member {boolean} supportsE2EVideo - * @memberof proto.WebdPayload - * @instance - */ - WebdPayload.prototype.supportsE2EVideo = false; - - /** - * WebdPayload supportsE2EAudio. - * @member {boolean} supportsE2EAudio - * @memberof proto.WebdPayload - * @instance - */ - WebdPayload.prototype.supportsE2EAudio = false; - - /** - * WebdPayload supportsE2EDocument. - * @member {boolean} supportsE2EDocument - * @memberof proto.WebdPayload - * @instance - */ - WebdPayload.prototype.supportsE2EDocument = false; - - /** - * WebdPayload documentTypes. - * @member {string} documentTypes - * @memberof proto.WebdPayload - * @instance - */ - WebdPayload.prototype.documentTypes = ""; - - /** - * WebdPayload features. - * @member {Uint8Array} features - * @memberof proto.WebdPayload - * @instance - */ - WebdPayload.prototype.features = $util.newBuffer([]); - - /** - * Creates a new WebdPayload instance using the specified properties. - * @function create - * @memberof proto.WebdPayload - * @static - * @param {proto.IWebdPayload=} [properties] Properties to set - * @returns {proto.WebdPayload} WebdPayload instance - */ - WebdPayload.create = function create(properties) { - return new WebdPayload(properties); - }; - - /** - * Encodes the specified WebdPayload message. Does not implicitly {@link proto.WebdPayload.verify|verify} messages. - * @function encode - * @memberof proto.WebdPayload - * @static - * @param {proto.IWebdPayload} message WebdPayload message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - WebdPayload.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.usesParticipantInKey != null && Object.hasOwnProperty.call(message, "usesParticipantInKey")) - writer.uint32(/* id 1, wireType 0 =*/8).bool(message.usesParticipantInKey); - if (message.supportsStarredMessages != null && Object.hasOwnProperty.call(message, "supportsStarredMessages")) - writer.uint32(/* id 2, wireType 0 =*/16).bool(message.supportsStarredMessages); - if (message.supportsDocumentMessages != null && Object.hasOwnProperty.call(message, "supportsDocumentMessages")) - writer.uint32(/* id 3, wireType 0 =*/24).bool(message.supportsDocumentMessages); - if (message.supportsUrlMessages != null && Object.hasOwnProperty.call(message, "supportsUrlMessages")) - writer.uint32(/* id 4, wireType 0 =*/32).bool(message.supportsUrlMessages); - if (message.supportsMediaRetry != null && Object.hasOwnProperty.call(message, "supportsMediaRetry")) - writer.uint32(/* id 5, wireType 0 =*/40).bool(message.supportsMediaRetry); - if (message.supportsE2EImage != null && Object.hasOwnProperty.call(message, "supportsE2EImage")) - writer.uint32(/* id 6, wireType 0 =*/48).bool(message.supportsE2EImage); - if (message.supportsE2EVideo != null && Object.hasOwnProperty.call(message, "supportsE2EVideo")) - writer.uint32(/* id 7, wireType 0 =*/56).bool(message.supportsE2EVideo); - if (message.supportsE2EAudio != null && Object.hasOwnProperty.call(message, "supportsE2EAudio")) - writer.uint32(/* id 8, wireType 0 =*/64).bool(message.supportsE2EAudio); - if (message.supportsE2EDocument != null && Object.hasOwnProperty.call(message, "supportsE2EDocument")) - writer.uint32(/* id 9, wireType 0 =*/72).bool(message.supportsE2EDocument); - if (message.documentTypes != null && Object.hasOwnProperty.call(message, "documentTypes")) - writer.uint32(/* id 10, wireType 2 =*/82).string(message.documentTypes); - if (message.features != null && Object.hasOwnProperty.call(message, "features")) - writer.uint32(/* id 11, wireType 2 =*/90).bytes(message.features); - return writer; - }; - - /** - * Encodes the specified WebdPayload message, length delimited. Does not implicitly {@link proto.WebdPayload.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.WebdPayload - * @static - * @param {proto.IWebdPayload} message WebdPayload message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - WebdPayload.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a WebdPayload message from the specified reader or buffer. - * @function decode - * @memberof proto.WebdPayload - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.WebdPayload} WebdPayload - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - WebdPayload.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.WebdPayload(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.usesParticipantInKey = reader.bool(); - break; - case 2: - message.supportsStarredMessages = reader.bool(); - break; - case 3: - message.supportsDocumentMessages = reader.bool(); - break; - case 4: - message.supportsUrlMessages = reader.bool(); - break; - case 5: - message.supportsMediaRetry = reader.bool(); - break; - case 6: - message.supportsE2EImage = reader.bool(); - break; - case 7: - message.supportsE2EVideo = reader.bool(); - break; - case 8: - message.supportsE2EAudio = reader.bool(); - break; - case 9: - message.supportsE2EDocument = reader.bool(); - break; - case 10: - message.documentTypes = reader.string(); - break; - case 11: - message.features = reader.bytes(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a WebdPayload message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.WebdPayload - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.WebdPayload} WebdPayload - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - WebdPayload.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a WebdPayload message. - * @function verify - * @memberof proto.WebdPayload - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - WebdPayload.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.usesParticipantInKey != null && message.hasOwnProperty("usesParticipantInKey")) - if (typeof message.usesParticipantInKey !== "boolean") - return "usesParticipantInKey: boolean expected"; - if (message.supportsStarredMessages != null && message.hasOwnProperty("supportsStarredMessages")) - if (typeof message.supportsStarredMessages !== "boolean") - return "supportsStarredMessages: boolean expected"; - if (message.supportsDocumentMessages != null && message.hasOwnProperty("supportsDocumentMessages")) - if (typeof message.supportsDocumentMessages !== "boolean") - return "supportsDocumentMessages: boolean expected"; - if (message.supportsUrlMessages != null && message.hasOwnProperty("supportsUrlMessages")) - if (typeof message.supportsUrlMessages !== "boolean") - return "supportsUrlMessages: boolean expected"; - if (message.supportsMediaRetry != null && message.hasOwnProperty("supportsMediaRetry")) - if (typeof message.supportsMediaRetry !== "boolean") - return "supportsMediaRetry: boolean expected"; - if (message.supportsE2EImage != null && message.hasOwnProperty("supportsE2EImage")) - if (typeof message.supportsE2EImage !== "boolean") - return "supportsE2EImage: boolean expected"; - if (message.supportsE2EVideo != null && message.hasOwnProperty("supportsE2EVideo")) - if (typeof message.supportsE2EVideo !== "boolean") - return "supportsE2EVideo: boolean expected"; - if (message.supportsE2EAudio != null && message.hasOwnProperty("supportsE2EAudio")) - if (typeof message.supportsE2EAudio !== "boolean") - return "supportsE2EAudio: boolean expected"; - if (message.supportsE2EDocument != null && message.hasOwnProperty("supportsE2EDocument")) - if (typeof message.supportsE2EDocument !== "boolean") - return "supportsE2EDocument: boolean expected"; - if (message.documentTypes != null && message.hasOwnProperty("documentTypes")) - if (!$util.isString(message.documentTypes)) - return "documentTypes: string expected"; - if (message.features != null && message.hasOwnProperty("features")) - if (!(message.features && typeof message.features.length === "number" || $util.isString(message.features))) - return "features: buffer expected"; - return null; - }; - - /** - * Creates a WebdPayload message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.WebdPayload - * @static - * @param {Object.} object Plain object - * @returns {proto.WebdPayload} WebdPayload - */ - WebdPayload.fromObject = function fromObject(object) { - if (object instanceof $root.proto.WebdPayload) - return object; - var message = new $root.proto.WebdPayload(); - if (object.usesParticipantInKey != null) - message.usesParticipantInKey = Boolean(object.usesParticipantInKey); - if (object.supportsStarredMessages != null) - message.supportsStarredMessages = Boolean(object.supportsStarredMessages); - if (object.supportsDocumentMessages != null) - message.supportsDocumentMessages = Boolean(object.supportsDocumentMessages); - if (object.supportsUrlMessages != null) - message.supportsUrlMessages = Boolean(object.supportsUrlMessages); - if (object.supportsMediaRetry != null) - message.supportsMediaRetry = Boolean(object.supportsMediaRetry); - if (object.supportsE2EImage != null) - message.supportsE2EImage = Boolean(object.supportsE2EImage); - if (object.supportsE2EVideo != null) - message.supportsE2EVideo = Boolean(object.supportsE2EVideo); - if (object.supportsE2EAudio != null) - message.supportsE2EAudio = Boolean(object.supportsE2EAudio); - if (object.supportsE2EDocument != null) - message.supportsE2EDocument = Boolean(object.supportsE2EDocument); - if (object.documentTypes != null) - message.documentTypes = String(object.documentTypes); - if (object.features != null) - if (typeof object.features === "string") - $util.base64.decode(object.features, message.features = $util.newBuffer($util.base64.length(object.features)), 0); - else if (object.features.length) - message.features = object.features; - return message; - }; - - /** - * Creates a plain object from a WebdPayload message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.WebdPayload - * @static - * @param {proto.WebdPayload} message WebdPayload - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - WebdPayload.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.usesParticipantInKey = false; - object.supportsStarredMessages = false; - object.supportsDocumentMessages = false; - object.supportsUrlMessages = false; - object.supportsMediaRetry = false; - object.supportsE2EImage = false; - object.supportsE2EVideo = false; - object.supportsE2EAudio = false; - object.supportsE2EDocument = false; - object.documentTypes = ""; - if (options.bytes === String) - object.features = ""; - else { - object.features = []; - if (options.bytes !== Array) - object.features = $util.newBuffer(object.features); - } - } - if (message.usesParticipantInKey != null && message.hasOwnProperty("usesParticipantInKey")) - object.usesParticipantInKey = message.usesParticipantInKey; - if (message.supportsStarredMessages != null && message.hasOwnProperty("supportsStarredMessages")) - object.supportsStarredMessages = message.supportsStarredMessages; - if (message.supportsDocumentMessages != null && message.hasOwnProperty("supportsDocumentMessages")) - object.supportsDocumentMessages = message.supportsDocumentMessages; - if (message.supportsUrlMessages != null && message.hasOwnProperty("supportsUrlMessages")) - object.supportsUrlMessages = message.supportsUrlMessages; - if (message.supportsMediaRetry != null && message.hasOwnProperty("supportsMediaRetry")) - object.supportsMediaRetry = message.supportsMediaRetry; - if (message.supportsE2EImage != null && message.hasOwnProperty("supportsE2EImage")) - object.supportsE2EImage = message.supportsE2EImage; - if (message.supportsE2EVideo != null && message.hasOwnProperty("supportsE2EVideo")) - object.supportsE2EVideo = message.supportsE2EVideo; - if (message.supportsE2EAudio != null && message.hasOwnProperty("supportsE2EAudio")) - object.supportsE2EAudio = message.supportsE2EAudio; - if (message.supportsE2EDocument != null && message.hasOwnProperty("supportsE2EDocument")) - object.supportsE2EDocument = message.supportsE2EDocument; - if (message.documentTypes != null && message.hasOwnProperty("documentTypes")) - object.documentTypes = message.documentTypes; - if (message.features != null && message.hasOwnProperty("features")) - object.features = options.bytes === String ? $util.base64.encode(message.features, 0, message.features.length) : options.bytes === Array ? Array.prototype.slice.call(message.features) : message.features; - return object; - }; - - /** - * Converts this WebdPayload to JSON. - * @function toJSON - * @memberof proto.WebdPayload - * @instance - * @returns {Object.} JSON object - */ - WebdPayload.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return WebdPayload; - })(); - - proto.WebInfo = (function() { - - /** - * Properties of a WebInfo. - * @memberof proto - * @interface IWebInfo - * @property {string|null} [refToken] WebInfo refToken - * @property {string|null} [version] WebInfo version - * @property {proto.IWebdPayload|null} [webdPayload] WebInfo webdPayload - * @property {proto.WebInfo.WebInfoWebSubPlatform|null} [webSubPlatform] WebInfo webSubPlatform - */ - - /** - * Constructs a new WebInfo. - * @memberof proto - * @classdesc Represents a WebInfo. - * @implements IWebInfo - * @constructor - * @param {proto.IWebInfo=} [properties] Properties to set - */ - function WebInfo(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * WebInfo refToken. - * @member {string} refToken - * @memberof proto.WebInfo - * @instance - */ - WebInfo.prototype.refToken = ""; - - /** - * WebInfo version. - * @member {string} version - * @memberof proto.WebInfo - * @instance - */ - WebInfo.prototype.version = ""; - - /** - * WebInfo webdPayload. - * @member {proto.IWebdPayload|null|undefined} webdPayload - * @memberof proto.WebInfo - * @instance - */ - WebInfo.prototype.webdPayload = null; - - /** - * WebInfo webSubPlatform. - * @member {proto.WebInfo.WebInfoWebSubPlatform} webSubPlatform - * @memberof proto.WebInfo - * @instance - */ - WebInfo.prototype.webSubPlatform = 0; - - /** - * Creates a new WebInfo instance using the specified properties. - * @function create - * @memberof proto.WebInfo - * @static - * @param {proto.IWebInfo=} [properties] Properties to set - * @returns {proto.WebInfo} WebInfo instance - */ - WebInfo.create = function create(properties) { - return new WebInfo(properties); - }; - - /** - * Encodes the specified WebInfo message. Does not implicitly {@link proto.WebInfo.verify|verify} messages. - * @function encode - * @memberof proto.WebInfo - * @static - * @param {proto.IWebInfo} message WebInfo message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - WebInfo.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.refToken != null && Object.hasOwnProperty.call(message, "refToken")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.refToken); - if (message.version != null && Object.hasOwnProperty.call(message, "version")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.version); - if (message.webdPayload != null && Object.hasOwnProperty.call(message, "webdPayload")) - $root.proto.WebdPayload.encode(message.webdPayload, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); - if (message.webSubPlatform != null && Object.hasOwnProperty.call(message, "webSubPlatform")) - writer.uint32(/* id 4, wireType 0 =*/32).int32(message.webSubPlatform); - return writer; - }; - - /** - * Encodes the specified WebInfo message, length delimited. Does not implicitly {@link proto.WebInfo.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.WebInfo - * @static - * @param {proto.IWebInfo} message WebInfo message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - WebInfo.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a WebInfo message from the specified reader or buffer. - * @function decode - * @memberof proto.WebInfo - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.WebInfo} WebInfo - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - WebInfo.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.WebInfo(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.refToken = reader.string(); - break; - case 2: - message.version = reader.string(); - break; - case 3: - message.webdPayload = $root.proto.WebdPayload.decode(reader, reader.uint32()); - break; - case 4: - message.webSubPlatform = reader.int32(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a WebInfo message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.WebInfo - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.WebInfo} WebInfo - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - WebInfo.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a WebInfo message. - * @function verify - * @memberof proto.WebInfo - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - WebInfo.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.refToken != null && message.hasOwnProperty("refToken")) - if (!$util.isString(message.refToken)) - return "refToken: string expected"; - if (message.version != null && message.hasOwnProperty("version")) - if (!$util.isString(message.version)) - return "version: string expected"; - if (message.webdPayload != null && message.hasOwnProperty("webdPayload")) { - var error = $root.proto.WebdPayload.verify(message.webdPayload); - if (error) - return "webdPayload." + error; - } - if (message.webSubPlatform != null && message.hasOwnProperty("webSubPlatform")) - switch (message.webSubPlatform) { - default: - return "webSubPlatform: enum value expected"; - case 0: - case 1: - case 2: - case 3: - case 4: - break; - } - return null; - }; - - /** - * Creates a WebInfo message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.WebInfo - * @static - * @param {Object.} object Plain object - * @returns {proto.WebInfo} WebInfo - */ - WebInfo.fromObject = function fromObject(object) { - if (object instanceof $root.proto.WebInfo) - return object; - var message = new $root.proto.WebInfo(); - if (object.refToken != null) - message.refToken = String(object.refToken); - if (object.version != null) - message.version = String(object.version); - if (object.webdPayload != null) { - if (typeof object.webdPayload !== "object") - throw TypeError(".proto.WebInfo.webdPayload: object expected"); - message.webdPayload = $root.proto.WebdPayload.fromObject(object.webdPayload); - } - switch (object.webSubPlatform) { - case "WEB_BROWSER": - case 0: - message.webSubPlatform = 0; - break; - case "APP_STORE": - case 1: - message.webSubPlatform = 1; - break; - case "WIN_STORE": - case 2: - message.webSubPlatform = 2; - break; - case "DARWIN": - case 3: - message.webSubPlatform = 3; - break; - case "WIN32": - case 4: - message.webSubPlatform = 4; - break; - } - return message; - }; - - /** - * Creates a plain object from a WebInfo message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.WebInfo - * @static - * @param {proto.WebInfo} message WebInfo - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - WebInfo.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.refToken = ""; - object.version = ""; - object.webdPayload = null; - object.webSubPlatform = options.enums === String ? "WEB_BROWSER" : 0; - } - if (message.refToken != null && message.hasOwnProperty("refToken")) - object.refToken = message.refToken; - if (message.version != null && message.hasOwnProperty("version")) - object.version = message.version; - if (message.webdPayload != null && message.hasOwnProperty("webdPayload")) - object.webdPayload = $root.proto.WebdPayload.toObject(message.webdPayload, options); - if (message.webSubPlatform != null && message.hasOwnProperty("webSubPlatform")) - object.webSubPlatform = options.enums === String ? $root.proto.WebInfo.WebInfoWebSubPlatform[message.webSubPlatform] : message.webSubPlatform; - return object; - }; - - /** - * Converts this WebInfo to JSON. - * @function toJSON - * @memberof proto.WebInfo - * @instance - * @returns {Object.} JSON object - */ - WebInfo.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - /** - * WebInfoWebSubPlatform enum. - * @name proto.WebInfo.WebInfoWebSubPlatform - * @enum {number} - * @property {number} WEB_BROWSER=0 WEB_BROWSER value - * @property {number} APP_STORE=1 APP_STORE value - * @property {number} WIN_STORE=2 WIN_STORE value - * @property {number} DARWIN=3 DARWIN value - * @property {number} WIN32=4 WIN32 value - */ - WebInfo.WebInfoWebSubPlatform = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "WEB_BROWSER"] = 0; - values[valuesById[1] = "APP_STORE"] = 1; - values[valuesById[2] = "WIN_STORE"] = 2; - values[valuesById[3] = "DARWIN"] = 3; - values[valuesById[4] = "WIN32"] = 4; - return values; - })(); - - return WebInfo; - })(); - - proto.DNSSource = (function() { - - /** - * Properties of a DNSSource. - * @memberof proto - * @interface IDNSSource - * @property {proto.DNSSource.DNSSourceDNSResolutionMethod|null} [dnsMethod] DNSSource dnsMethod - * @property {boolean|null} [appCached] DNSSource appCached - */ - - /** - * Constructs a new DNSSource. - * @memberof proto - * @classdesc Represents a DNSSource. - * @implements IDNSSource - * @constructor - * @param {proto.IDNSSource=} [properties] Properties to set - */ - function DNSSource(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * DNSSource dnsMethod. - * @member {proto.DNSSource.DNSSourceDNSResolutionMethod} dnsMethod - * @memberof proto.DNSSource - * @instance - */ - DNSSource.prototype.dnsMethod = 0; - - /** - * DNSSource appCached. - * @member {boolean} appCached - * @memberof proto.DNSSource - * @instance - */ - DNSSource.prototype.appCached = false; - - /** - * Creates a new DNSSource instance using the specified properties. - * @function create - * @memberof proto.DNSSource - * @static - * @param {proto.IDNSSource=} [properties] Properties to set - * @returns {proto.DNSSource} DNSSource instance - */ - DNSSource.create = function create(properties) { - return new DNSSource(properties); - }; - - /** - * Encodes the specified DNSSource message. Does not implicitly {@link proto.DNSSource.verify|verify} messages. - * @function encode - * @memberof proto.DNSSource - * @static - * @param {proto.IDNSSource} message DNSSource message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - DNSSource.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.dnsMethod != null && Object.hasOwnProperty.call(message, "dnsMethod")) - writer.uint32(/* id 15, wireType 0 =*/120).int32(message.dnsMethod); - if (message.appCached != null && Object.hasOwnProperty.call(message, "appCached")) - writer.uint32(/* id 16, wireType 0 =*/128).bool(message.appCached); - return writer; - }; - - /** - * Encodes the specified DNSSource message, length delimited. Does not implicitly {@link proto.DNSSource.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.DNSSource - * @static - * @param {proto.IDNSSource} message DNSSource message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - DNSSource.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a DNSSource message from the specified reader or buffer. - * @function decode - * @memberof proto.DNSSource - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.DNSSource} DNSSource - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - DNSSource.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.DNSSource(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 15: - message.dnsMethod = reader.int32(); - break; - case 16: - message.appCached = reader.bool(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a DNSSource message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.DNSSource - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.DNSSource} DNSSource - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - DNSSource.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a DNSSource message. - * @function verify - * @memberof proto.DNSSource - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - DNSSource.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.dnsMethod != null && message.hasOwnProperty("dnsMethod")) - switch (message.dnsMethod) { - default: - return "dnsMethod: enum value expected"; - case 0: - case 1: - case 2: - case 3: - case 4: - break; - } - if (message.appCached != null && message.hasOwnProperty("appCached")) - if (typeof message.appCached !== "boolean") - return "appCached: boolean expected"; - return null; - }; - - /** - * Creates a DNSSource message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.DNSSource - * @static - * @param {Object.} object Plain object - * @returns {proto.DNSSource} DNSSource - */ - DNSSource.fromObject = function fromObject(object) { - if (object instanceof $root.proto.DNSSource) - return object; - var message = new $root.proto.DNSSource(); - switch (object.dnsMethod) { - case "SYSTEM": - case 0: - message.dnsMethod = 0; - break; - case "GOOGLE": - case 1: - message.dnsMethod = 1; - break; - case "HARDCODED": - case 2: - message.dnsMethod = 2; - break; - case "OVERRIDE": - case 3: - message.dnsMethod = 3; - break; - case "FALLBACK": - case 4: - message.dnsMethod = 4; - break; - } - if (object.appCached != null) - message.appCached = Boolean(object.appCached); - return message; - }; - - /** - * Creates a plain object from a DNSSource message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.DNSSource - * @static - * @param {proto.DNSSource} message DNSSource - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - DNSSource.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.dnsMethod = options.enums === String ? "SYSTEM" : 0; - object.appCached = false; - } - if (message.dnsMethod != null && message.hasOwnProperty("dnsMethod")) - object.dnsMethod = options.enums === String ? $root.proto.DNSSource.DNSSourceDNSResolutionMethod[message.dnsMethod] : message.dnsMethod; - if (message.appCached != null && message.hasOwnProperty("appCached")) - object.appCached = message.appCached; - return object; - }; - - /** - * Converts this DNSSource to JSON. - * @function toJSON - * @memberof proto.DNSSource - * @instance - * @returns {Object.} JSON object - */ - DNSSource.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - /** - * DNSSourceDNSResolutionMethod enum. - * @name proto.DNSSource.DNSSourceDNSResolutionMethod - * @enum {number} - * @property {number} SYSTEM=0 SYSTEM value - * @property {number} GOOGLE=1 GOOGLE value - * @property {number} HARDCODED=2 HARDCODED value - * @property {number} OVERRIDE=3 OVERRIDE value - * @property {number} FALLBACK=4 FALLBACK value - */ - DNSSource.DNSSourceDNSResolutionMethod = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "SYSTEM"] = 0; - values[valuesById[1] = "GOOGLE"] = 1; - values[valuesById[2] = "HARDCODED"] = 2; - values[valuesById[3] = "OVERRIDE"] = 3; - values[valuesById[4] = "FALLBACK"] = 4; - return values; - })(); - - return DNSSource; - })(); - - proto.CompanionRegData = (function() { - - /** - * Properties of a CompanionRegData. - * @memberof proto - * @interface ICompanionRegData - * @property {Uint8Array|null} [eRegid] CompanionRegData eRegid - * @property {Uint8Array|null} [eKeytype] CompanionRegData eKeytype - * @property {Uint8Array|null} [eIdent] CompanionRegData eIdent - * @property {Uint8Array|null} [eSkeyId] CompanionRegData eSkeyId - * @property {Uint8Array|null} [eSkeyVal] CompanionRegData eSkeyVal - * @property {Uint8Array|null} [eSkeySig] CompanionRegData eSkeySig - * @property {Uint8Array|null} [buildHash] CompanionRegData buildHash - * @property {Uint8Array|null} [companionProps] CompanionRegData companionProps - */ - - /** - * Constructs a new CompanionRegData. - * @memberof proto - * @classdesc Represents a CompanionRegData. - * @implements ICompanionRegData - * @constructor - * @param {proto.ICompanionRegData=} [properties] Properties to set - */ - function CompanionRegData(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * CompanionRegData eRegid. - * @member {Uint8Array} eRegid - * @memberof proto.CompanionRegData - * @instance - */ - CompanionRegData.prototype.eRegid = $util.newBuffer([]); - - /** - * CompanionRegData eKeytype. - * @member {Uint8Array} eKeytype - * @memberof proto.CompanionRegData - * @instance - */ - CompanionRegData.prototype.eKeytype = $util.newBuffer([]); - - /** - * CompanionRegData eIdent. - * @member {Uint8Array} eIdent - * @memberof proto.CompanionRegData - * @instance - */ - CompanionRegData.prototype.eIdent = $util.newBuffer([]); - - /** - * CompanionRegData eSkeyId. - * @member {Uint8Array} eSkeyId - * @memberof proto.CompanionRegData - * @instance - */ - CompanionRegData.prototype.eSkeyId = $util.newBuffer([]); - - /** - * CompanionRegData eSkeyVal. - * @member {Uint8Array} eSkeyVal - * @memberof proto.CompanionRegData - * @instance - */ - CompanionRegData.prototype.eSkeyVal = $util.newBuffer([]); - - /** - * CompanionRegData eSkeySig. - * @member {Uint8Array} eSkeySig - * @memberof proto.CompanionRegData - * @instance - */ - CompanionRegData.prototype.eSkeySig = $util.newBuffer([]); - - /** - * CompanionRegData buildHash. - * @member {Uint8Array} buildHash - * @memberof proto.CompanionRegData - * @instance - */ - CompanionRegData.prototype.buildHash = $util.newBuffer([]); - - /** - * CompanionRegData companionProps. - * @member {Uint8Array} companionProps - * @memberof proto.CompanionRegData - * @instance - */ - CompanionRegData.prototype.companionProps = $util.newBuffer([]); - - /** - * Creates a new CompanionRegData instance using the specified properties. - * @function create - * @memberof proto.CompanionRegData - * @static - * @param {proto.ICompanionRegData=} [properties] Properties to set - * @returns {proto.CompanionRegData} CompanionRegData instance - */ - CompanionRegData.create = function create(properties) { - return new CompanionRegData(properties); - }; - - /** - * Encodes the specified CompanionRegData message. Does not implicitly {@link proto.CompanionRegData.verify|verify} messages. - * @function encode - * @memberof proto.CompanionRegData - * @static - * @param {proto.ICompanionRegData} message CompanionRegData message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - CompanionRegData.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.eRegid != null && Object.hasOwnProperty.call(message, "eRegid")) - writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.eRegid); - if (message.eKeytype != null && Object.hasOwnProperty.call(message, "eKeytype")) - writer.uint32(/* id 2, wireType 2 =*/18).bytes(message.eKeytype); - if (message.eIdent != null && Object.hasOwnProperty.call(message, "eIdent")) - writer.uint32(/* id 3, wireType 2 =*/26).bytes(message.eIdent); - if (message.eSkeyId != null && Object.hasOwnProperty.call(message, "eSkeyId")) - writer.uint32(/* id 4, wireType 2 =*/34).bytes(message.eSkeyId); - if (message.eSkeyVal != null && Object.hasOwnProperty.call(message, "eSkeyVal")) - writer.uint32(/* id 5, wireType 2 =*/42).bytes(message.eSkeyVal); - if (message.eSkeySig != null && Object.hasOwnProperty.call(message, "eSkeySig")) - writer.uint32(/* id 6, wireType 2 =*/50).bytes(message.eSkeySig); - if (message.buildHash != null && Object.hasOwnProperty.call(message, "buildHash")) - writer.uint32(/* id 7, wireType 2 =*/58).bytes(message.buildHash); - if (message.companionProps != null && Object.hasOwnProperty.call(message, "companionProps")) - writer.uint32(/* id 8, wireType 2 =*/66).bytes(message.companionProps); - return writer; - }; - - /** - * Encodes the specified CompanionRegData message, length delimited. Does not implicitly {@link proto.CompanionRegData.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.CompanionRegData - * @static - * @param {proto.ICompanionRegData} message CompanionRegData message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - CompanionRegData.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a CompanionRegData message from the specified reader or buffer. - * @function decode - * @memberof proto.CompanionRegData - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.CompanionRegData} CompanionRegData - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - CompanionRegData.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.CompanionRegData(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.eRegid = reader.bytes(); - break; - case 2: - message.eKeytype = reader.bytes(); - break; - case 3: - message.eIdent = reader.bytes(); - break; - case 4: - message.eSkeyId = reader.bytes(); - break; - case 5: - message.eSkeyVal = reader.bytes(); - break; - case 6: - message.eSkeySig = reader.bytes(); - break; - case 7: - message.buildHash = reader.bytes(); - break; - case 8: - message.companionProps = reader.bytes(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a CompanionRegData message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.CompanionRegData - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.CompanionRegData} CompanionRegData - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - CompanionRegData.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a CompanionRegData message. - * @function verify - * @memberof proto.CompanionRegData - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - CompanionRegData.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.eRegid != null && message.hasOwnProperty("eRegid")) - if (!(message.eRegid && typeof message.eRegid.length === "number" || $util.isString(message.eRegid))) - return "eRegid: buffer expected"; - if (message.eKeytype != null && message.hasOwnProperty("eKeytype")) - if (!(message.eKeytype && typeof message.eKeytype.length === "number" || $util.isString(message.eKeytype))) - return "eKeytype: buffer expected"; - if (message.eIdent != null && message.hasOwnProperty("eIdent")) - if (!(message.eIdent && typeof message.eIdent.length === "number" || $util.isString(message.eIdent))) - return "eIdent: buffer expected"; - if (message.eSkeyId != null && message.hasOwnProperty("eSkeyId")) - if (!(message.eSkeyId && typeof message.eSkeyId.length === "number" || $util.isString(message.eSkeyId))) - return "eSkeyId: buffer expected"; - if (message.eSkeyVal != null && message.hasOwnProperty("eSkeyVal")) - if (!(message.eSkeyVal && typeof message.eSkeyVal.length === "number" || $util.isString(message.eSkeyVal))) - return "eSkeyVal: buffer expected"; - if (message.eSkeySig != null && message.hasOwnProperty("eSkeySig")) - if (!(message.eSkeySig && typeof message.eSkeySig.length === "number" || $util.isString(message.eSkeySig))) - return "eSkeySig: buffer expected"; - if (message.buildHash != null && message.hasOwnProperty("buildHash")) - if (!(message.buildHash && typeof message.buildHash.length === "number" || $util.isString(message.buildHash))) - return "buildHash: buffer expected"; - if (message.companionProps != null && message.hasOwnProperty("companionProps")) - if (!(message.companionProps && typeof message.companionProps.length === "number" || $util.isString(message.companionProps))) - return "companionProps: buffer expected"; - return null; - }; - - /** - * Creates a CompanionRegData message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.CompanionRegData - * @static - * @param {Object.} object Plain object - * @returns {proto.CompanionRegData} CompanionRegData - */ - CompanionRegData.fromObject = function fromObject(object) { - if (object instanceof $root.proto.CompanionRegData) - return object; - var message = new $root.proto.CompanionRegData(); - if (object.eRegid != null) - if (typeof object.eRegid === "string") - $util.base64.decode(object.eRegid, message.eRegid = $util.newBuffer($util.base64.length(object.eRegid)), 0); - else if (object.eRegid.length) - message.eRegid = object.eRegid; - if (object.eKeytype != null) - if (typeof object.eKeytype === "string") - $util.base64.decode(object.eKeytype, message.eKeytype = $util.newBuffer($util.base64.length(object.eKeytype)), 0); - else if (object.eKeytype.length) - message.eKeytype = object.eKeytype; - if (object.eIdent != null) - if (typeof object.eIdent === "string") - $util.base64.decode(object.eIdent, message.eIdent = $util.newBuffer($util.base64.length(object.eIdent)), 0); - else if (object.eIdent.length) - message.eIdent = object.eIdent; - if (object.eSkeyId != null) - if (typeof object.eSkeyId === "string") - $util.base64.decode(object.eSkeyId, message.eSkeyId = $util.newBuffer($util.base64.length(object.eSkeyId)), 0); - else if (object.eSkeyId.length) - message.eSkeyId = object.eSkeyId; - if (object.eSkeyVal != null) - if (typeof object.eSkeyVal === "string") - $util.base64.decode(object.eSkeyVal, message.eSkeyVal = $util.newBuffer($util.base64.length(object.eSkeyVal)), 0); - else if (object.eSkeyVal.length) - message.eSkeyVal = object.eSkeyVal; - if (object.eSkeySig != null) - if (typeof object.eSkeySig === "string") - $util.base64.decode(object.eSkeySig, message.eSkeySig = $util.newBuffer($util.base64.length(object.eSkeySig)), 0); - else if (object.eSkeySig.length) - message.eSkeySig = object.eSkeySig; - if (object.buildHash != null) - if (typeof object.buildHash === "string") - $util.base64.decode(object.buildHash, message.buildHash = $util.newBuffer($util.base64.length(object.buildHash)), 0); - else if (object.buildHash.length) - message.buildHash = object.buildHash; - if (object.companionProps != null) - if (typeof object.companionProps === "string") - $util.base64.decode(object.companionProps, message.companionProps = $util.newBuffer($util.base64.length(object.companionProps)), 0); - else if (object.companionProps.length) - message.companionProps = object.companionProps; - return message; - }; - - /** - * Creates a plain object from a CompanionRegData message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.CompanionRegData - * @static - * @param {proto.CompanionRegData} message CompanionRegData - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - CompanionRegData.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - if (options.bytes === String) - object.eRegid = ""; - else { - object.eRegid = []; - if (options.bytes !== Array) - object.eRegid = $util.newBuffer(object.eRegid); - } - if (options.bytes === String) - object.eKeytype = ""; - else { - object.eKeytype = []; - if (options.bytes !== Array) - object.eKeytype = $util.newBuffer(object.eKeytype); - } - if (options.bytes === String) - object.eIdent = ""; - else { - object.eIdent = []; - if (options.bytes !== Array) - object.eIdent = $util.newBuffer(object.eIdent); - } - if (options.bytes === String) - object.eSkeyId = ""; - else { - object.eSkeyId = []; - if (options.bytes !== Array) - object.eSkeyId = $util.newBuffer(object.eSkeyId); - } - if (options.bytes === String) - object.eSkeyVal = ""; - else { - object.eSkeyVal = []; - if (options.bytes !== Array) - object.eSkeyVal = $util.newBuffer(object.eSkeyVal); - } - if (options.bytes === String) - object.eSkeySig = ""; - else { - object.eSkeySig = []; - if (options.bytes !== Array) - object.eSkeySig = $util.newBuffer(object.eSkeySig); - } - if (options.bytes === String) - object.buildHash = ""; - else { - object.buildHash = []; - if (options.bytes !== Array) - object.buildHash = $util.newBuffer(object.buildHash); - } - if (options.bytes === String) - object.companionProps = ""; - else { - object.companionProps = []; - if (options.bytes !== Array) - object.companionProps = $util.newBuffer(object.companionProps); - } - } - if (message.eRegid != null && message.hasOwnProperty("eRegid")) - object.eRegid = options.bytes === String ? $util.base64.encode(message.eRegid, 0, message.eRegid.length) : options.bytes === Array ? Array.prototype.slice.call(message.eRegid) : message.eRegid; - if (message.eKeytype != null && message.hasOwnProperty("eKeytype")) - object.eKeytype = options.bytes === String ? $util.base64.encode(message.eKeytype, 0, message.eKeytype.length) : options.bytes === Array ? Array.prototype.slice.call(message.eKeytype) : message.eKeytype; - if (message.eIdent != null && message.hasOwnProperty("eIdent")) - object.eIdent = options.bytes === String ? $util.base64.encode(message.eIdent, 0, message.eIdent.length) : options.bytes === Array ? Array.prototype.slice.call(message.eIdent) : message.eIdent; - if (message.eSkeyId != null && message.hasOwnProperty("eSkeyId")) - object.eSkeyId = options.bytes === String ? $util.base64.encode(message.eSkeyId, 0, message.eSkeyId.length) : options.bytes === Array ? Array.prototype.slice.call(message.eSkeyId) : message.eSkeyId; - if (message.eSkeyVal != null && message.hasOwnProperty("eSkeyVal")) - object.eSkeyVal = options.bytes === String ? $util.base64.encode(message.eSkeyVal, 0, message.eSkeyVal.length) : options.bytes === Array ? Array.prototype.slice.call(message.eSkeyVal) : message.eSkeyVal; - if (message.eSkeySig != null && message.hasOwnProperty("eSkeySig")) - object.eSkeySig = options.bytes === String ? $util.base64.encode(message.eSkeySig, 0, message.eSkeySig.length) : options.bytes === Array ? Array.prototype.slice.call(message.eSkeySig) : message.eSkeySig; - if (message.buildHash != null && message.hasOwnProperty("buildHash")) - object.buildHash = options.bytes === String ? $util.base64.encode(message.buildHash, 0, message.buildHash.length) : options.bytes === Array ? Array.prototype.slice.call(message.buildHash) : message.buildHash; - if (message.companionProps != null && message.hasOwnProperty("companionProps")) - object.companionProps = options.bytes === String ? $util.base64.encode(message.companionProps, 0, message.companionProps.length) : options.bytes === Array ? Array.prototype.slice.call(message.companionProps) : message.companionProps; - return object; - }; - - /** - * Converts this CompanionRegData to JSON. - * @function toJSON - * @memberof proto.CompanionRegData - * @instance - * @returns {Object.} JSON object - */ - CompanionRegData.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return CompanionRegData; - })(); - - proto.ClientPayload = (function() { - - /** - * Properties of a ClientPayload. - * @memberof proto - * @interface IClientPayload - * @property {number|Long|null} [username] ClientPayload username - * @property {boolean|null} [passive] ClientPayload passive - * @property {Array.|null} [clientFeatures] ClientPayload clientFeatures - * @property {proto.IUserAgent|null} [userAgent] ClientPayload userAgent - * @property {proto.IWebInfo|null} [webInfo] ClientPayload webInfo - * @property {string|null} [pushName] ClientPayload pushName - * @property {number|null} [sessionId] ClientPayload sessionId - * @property {boolean|null} [shortConnect] ClientPayload shortConnect - * @property {proto.ClientPayload.ClientPayloadIOSAppExtension|null} [iosAppExtension] ClientPayload iosAppExtension - * @property {proto.ClientPayload.ClientPayloadConnectType|null} [connectType] ClientPayload connectType - * @property {proto.ClientPayload.ClientPayloadConnectReason|null} [connectReason] ClientPayload connectReason - * @property {Array.|null} [shards] ClientPayload shards - * @property {proto.IDNSSource|null} [dnsSource] ClientPayload dnsSource - * @property {number|null} [connectAttemptCount] ClientPayload connectAttemptCount - * @property {number|null} [agent] ClientPayload agent - * @property {number|null} [device] ClientPayload device - * @property {proto.ICompanionRegData|null} [regData] ClientPayload regData - * @property {proto.ClientPayload.ClientPayloadProduct|null} [product] ClientPayload product - * @property {Uint8Array|null} [fbCat] ClientPayload fbCat - * @property {Uint8Array|null} [fbUserAgent] ClientPayload fbUserAgent - * @property {boolean|null} [oc] ClientPayload oc - */ - - /** - * Constructs a new ClientPayload. - * @memberof proto - * @classdesc Represents a ClientPayload. - * @implements IClientPayload - * @constructor - * @param {proto.IClientPayload=} [properties] Properties to set - */ - function ClientPayload(properties) { - this.clientFeatures = []; - this.shards = []; - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * ClientPayload username. - * @member {number|Long} username - * @memberof proto.ClientPayload - * @instance - */ - ClientPayload.prototype.username = $util.Long ? $util.Long.fromBits(0,0,true) : 0; - - /** - * ClientPayload passive. - * @member {boolean} passive - * @memberof proto.ClientPayload - * @instance - */ - ClientPayload.prototype.passive = false; - - /** - * ClientPayload clientFeatures. - * @member {Array.} clientFeatures - * @memberof proto.ClientPayload - * @instance - */ - ClientPayload.prototype.clientFeatures = $util.emptyArray; - - /** - * ClientPayload userAgent. - * @member {proto.IUserAgent|null|undefined} userAgent - * @memberof proto.ClientPayload - * @instance - */ - ClientPayload.prototype.userAgent = null; - - /** - * ClientPayload webInfo. - * @member {proto.IWebInfo|null|undefined} webInfo - * @memberof proto.ClientPayload - * @instance - */ - ClientPayload.prototype.webInfo = null; - - /** - * ClientPayload pushName. - * @member {string} pushName - * @memberof proto.ClientPayload - * @instance - */ - ClientPayload.prototype.pushName = ""; - - /** - * ClientPayload sessionId. - * @member {number} sessionId - * @memberof proto.ClientPayload - * @instance - */ - ClientPayload.prototype.sessionId = 0; - - /** - * ClientPayload shortConnect. - * @member {boolean} shortConnect - * @memberof proto.ClientPayload - * @instance - */ - ClientPayload.prototype.shortConnect = false; - - /** - * ClientPayload iosAppExtension. - * @member {proto.ClientPayload.ClientPayloadIOSAppExtension} iosAppExtension - * @memberof proto.ClientPayload - * @instance - */ - ClientPayload.prototype.iosAppExtension = 0; - - /** - * ClientPayload connectType. - * @member {proto.ClientPayload.ClientPayloadConnectType} connectType - * @memberof proto.ClientPayload - * @instance - */ - ClientPayload.prototype.connectType = 0; - - /** - * ClientPayload connectReason. - * @member {proto.ClientPayload.ClientPayloadConnectReason} connectReason - * @memberof proto.ClientPayload - * @instance - */ - ClientPayload.prototype.connectReason = 0; - - /** - * ClientPayload shards. - * @member {Array.} shards - * @memberof proto.ClientPayload - * @instance - */ - ClientPayload.prototype.shards = $util.emptyArray; - - /** - * ClientPayload dnsSource. - * @member {proto.IDNSSource|null|undefined} dnsSource - * @memberof proto.ClientPayload - * @instance - */ - ClientPayload.prototype.dnsSource = null; - - /** - * ClientPayload connectAttemptCount. - * @member {number} connectAttemptCount - * @memberof proto.ClientPayload - * @instance - */ - ClientPayload.prototype.connectAttemptCount = 0; - - /** - * ClientPayload agent. - * @member {number} agent - * @memberof proto.ClientPayload - * @instance - */ - ClientPayload.prototype.agent = 0; - - /** - * ClientPayload device. - * @member {number} device - * @memberof proto.ClientPayload - * @instance - */ - ClientPayload.prototype.device = 0; - - /** - * ClientPayload regData. - * @member {proto.ICompanionRegData|null|undefined} regData - * @memberof proto.ClientPayload - * @instance - */ - ClientPayload.prototype.regData = null; - - /** - * ClientPayload product. - * @member {proto.ClientPayload.ClientPayloadProduct} product - * @memberof proto.ClientPayload - * @instance - */ - ClientPayload.prototype.product = 0; - - /** - * ClientPayload fbCat. - * @member {Uint8Array} fbCat - * @memberof proto.ClientPayload - * @instance - */ - ClientPayload.prototype.fbCat = $util.newBuffer([]); - - /** - * ClientPayload fbUserAgent. - * @member {Uint8Array} fbUserAgent - * @memberof proto.ClientPayload - * @instance - */ - ClientPayload.prototype.fbUserAgent = $util.newBuffer([]); - - /** - * ClientPayload oc. - * @member {boolean} oc - * @memberof proto.ClientPayload - * @instance - */ - ClientPayload.prototype.oc = false; - - /** - * Creates a new ClientPayload instance using the specified properties. - * @function create - * @memberof proto.ClientPayload - * @static - * @param {proto.IClientPayload=} [properties] Properties to set - * @returns {proto.ClientPayload} ClientPayload instance - */ - ClientPayload.create = function create(properties) { - return new ClientPayload(properties); - }; - - /** - * Encodes the specified ClientPayload message. Does not implicitly {@link proto.ClientPayload.verify|verify} messages. - * @function encode - * @memberof proto.ClientPayload - * @static - * @param {proto.IClientPayload} message ClientPayload message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ClientPayload.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.username != null && Object.hasOwnProperty.call(message, "username")) - writer.uint32(/* id 1, wireType 0 =*/8).uint64(message.username); - if (message.passive != null && Object.hasOwnProperty.call(message, "passive")) - writer.uint32(/* id 3, wireType 0 =*/24).bool(message.passive); - if (message.clientFeatures != null && message.clientFeatures.length) - for (var i = 0; i < message.clientFeatures.length; ++i) - writer.uint32(/* id 4, wireType 0 =*/32).int32(message.clientFeatures[i]); - if (message.userAgent != null && Object.hasOwnProperty.call(message, "userAgent")) - $root.proto.UserAgent.encode(message.userAgent, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); - if (message.webInfo != null && Object.hasOwnProperty.call(message, "webInfo")) - $root.proto.WebInfo.encode(message.webInfo, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); - if (message.pushName != null && Object.hasOwnProperty.call(message, "pushName")) - writer.uint32(/* id 7, wireType 2 =*/58).string(message.pushName); - if (message.sessionId != null && Object.hasOwnProperty.call(message, "sessionId")) - writer.uint32(/* id 9, wireType 5 =*/77).sfixed32(message.sessionId); - if (message.shortConnect != null && Object.hasOwnProperty.call(message, "shortConnect")) - writer.uint32(/* id 10, wireType 0 =*/80).bool(message.shortConnect); - if (message.connectType != null && Object.hasOwnProperty.call(message, "connectType")) - writer.uint32(/* id 12, wireType 0 =*/96).int32(message.connectType); - if (message.connectReason != null && Object.hasOwnProperty.call(message, "connectReason")) - writer.uint32(/* id 13, wireType 0 =*/104).int32(message.connectReason); - if (message.shards != null && message.shards.length) - for (var i = 0; i < message.shards.length; ++i) - writer.uint32(/* id 14, wireType 0 =*/112).int32(message.shards[i]); - if (message.dnsSource != null && Object.hasOwnProperty.call(message, "dnsSource")) - $root.proto.DNSSource.encode(message.dnsSource, writer.uint32(/* id 15, wireType 2 =*/122).fork()).ldelim(); - if (message.connectAttemptCount != null && Object.hasOwnProperty.call(message, "connectAttemptCount")) - writer.uint32(/* id 16, wireType 0 =*/128).uint32(message.connectAttemptCount); - if (message.agent != null && Object.hasOwnProperty.call(message, "agent")) - writer.uint32(/* id 17, wireType 0 =*/136).uint32(message.agent); - if (message.device != null && Object.hasOwnProperty.call(message, "device")) - writer.uint32(/* id 18, wireType 0 =*/144).uint32(message.device); - if (message.regData != null && Object.hasOwnProperty.call(message, "regData")) - $root.proto.CompanionRegData.encode(message.regData, writer.uint32(/* id 19, wireType 2 =*/154).fork()).ldelim(); - if (message.product != null && Object.hasOwnProperty.call(message, "product")) - writer.uint32(/* id 20, wireType 0 =*/160).int32(message.product); - if (message.fbCat != null && Object.hasOwnProperty.call(message, "fbCat")) - writer.uint32(/* id 21, wireType 2 =*/170).bytes(message.fbCat); - if (message.fbUserAgent != null && Object.hasOwnProperty.call(message, "fbUserAgent")) - writer.uint32(/* id 22, wireType 2 =*/178).bytes(message.fbUserAgent); - if (message.oc != null && Object.hasOwnProperty.call(message, "oc")) - writer.uint32(/* id 23, wireType 0 =*/184).bool(message.oc); - if (message.iosAppExtension != null && Object.hasOwnProperty.call(message, "iosAppExtension")) - writer.uint32(/* id 30, wireType 0 =*/240).int32(message.iosAppExtension); - return writer; - }; - - /** - * Encodes the specified ClientPayload message, length delimited. Does not implicitly {@link proto.ClientPayload.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.ClientPayload - * @static - * @param {proto.IClientPayload} message ClientPayload message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ClientPayload.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a ClientPayload message from the specified reader or buffer. - * @function decode - * @memberof proto.ClientPayload - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.ClientPayload} ClientPayload - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ClientPayload.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.ClientPayload(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.username = reader.uint64(); - break; - case 3: - message.passive = reader.bool(); - break; - case 4: - if (!(message.clientFeatures && message.clientFeatures.length)) - message.clientFeatures = []; - if ((tag & 7) === 2) { - var end2 = reader.uint32() + reader.pos; - while (reader.pos < end2) - message.clientFeatures.push(reader.int32()); - } else - message.clientFeatures.push(reader.int32()); - break; - case 5: - message.userAgent = $root.proto.UserAgent.decode(reader, reader.uint32()); - break; - case 6: - message.webInfo = $root.proto.WebInfo.decode(reader, reader.uint32()); - break; - case 7: - message.pushName = reader.string(); - break; - case 9: - message.sessionId = reader.sfixed32(); - break; - case 10: - message.shortConnect = reader.bool(); - break; - case 30: - message.iosAppExtension = reader.int32(); - break; - case 12: - message.connectType = reader.int32(); - break; - case 13: - message.connectReason = reader.int32(); - break; - case 14: - if (!(message.shards && message.shards.length)) - message.shards = []; - if ((tag & 7) === 2) { - var end2 = reader.uint32() + reader.pos; - while (reader.pos < end2) - message.shards.push(reader.int32()); - } else - message.shards.push(reader.int32()); - break; - case 15: - message.dnsSource = $root.proto.DNSSource.decode(reader, reader.uint32()); - break; - case 16: - message.connectAttemptCount = reader.uint32(); - break; - case 17: - message.agent = reader.uint32(); - break; - case 18: - message.device = reader.uint32(); - break; - case 19: - message.regData = $root.proto.CompanionRegData.decode(reader, reader.uint32()); - break; - case 20: - message.product = reader.int32(); - break; - case 21: - message.fbCat = reader.bytes(); - break; - case 22: - message.fbUserAgent = reader.bytes(); - break; - case 23: - message.oc = reader.bool(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a ClientPayload message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.ClientPayload - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.ClientPayload} ClientPayload - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ClientPayload.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a ClientPayload message. - * @function verify - * @memberof proto.ClientPayload - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - ClientPayload.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.username != null && message.hasOwnProperty("username")) - if (!$util.isInteger(message.username) && !(message.username && $util.isInteger(message.username.low) && $util.isInteger(message.username.high))) - return "username: integer|Long expected"; - if (message.passive != null && message.hasOwnProperty("passive")) - if (typeof message.passive !== "boolean") - return "passive: boolean expected"; - if (message.clientFeatures != null && message.hasOwnProperty("clientFeatures")) { - if (!Array.isArray(message.clientFeatures)) - return "clientFeatures: array expected"; - for (var i = 0; i < message.clientFeatures.length; ++i) - switch (message.clientFeatures[i]) { - default: - return "clientFeatures: enum value[] expected"; - case 0: - break; - } - } - if (message.userAgent != null && message.hasOwnProperty("userAgent")) { - var error = $root.proto.UserAgent.verify(message.userAgent); - if (error) - return "userAgent." + error; - } - if (message.webInfo != null && message.hasOwnProperty("webInfo")) { - var error = $root.proto.WebInfo.verify(message.webInfo); - if (error) - return "webInfo." + error; - } - if (message.pushName != null && message.hasOwnProperty("pushName")) - if (!$util.isString(message.pushName)) - return "pushName: string expected"; - if (message.sessionId != null && message.hasOwnProperty("sessionId")) - if (!$util.isInteger(message.sessionId)) - return "sessionId: integer expected"; - if (message.shortConnect != null && message.hasOwnProperty("shortConnect")) - if (typeof message.shortConnect !== "boolean") - return "shortConnect: boolean expected"; - if (message.iosAppExtension != null && message.hasOwnProperty("iosAppExtension")) - switch (message.iosAppExtension) { - default: - return "iosAppExtension: enum value expected"; - case 0: - case 1: - case 2: - break; - } - if (message.connectType != null && message.hasOwnProperty("connectType")) - switch (message.connectType) { - default: - return "connectType: enum value expected"; - case 0: - case 1: - case 100: - case 101: - case 102: - case 103: - case 104: - case 105: - case 106: - case 107: - case 108: - case 109: - case 110: - case 111: - case 112: - break; - } - if (message.connectReason != null && message.hasOwnProperty("connectReason")) - switch (message.connectReason) { - default: - return "connectReason: enum value expected"; - case 0: - case 1: - case 2: - case 3: - case 4: - case 5: - break; - } - if (message.shards != null && message.hasOwnProperty("shards")) { - if (!Array.isArray(message.shards)) - return "shards: array expected"; - for (var i = 0; i < message.shards.length; ++i) - if (!$util.isInteger(message.shards[i])) - return "shards: integer[] expected"; - } - if (message.dnsSource != null && message.hasOwnProperty("dnsSource")) { - var error = $root.proto.DNSSource.verify(message.dnsSource); - if (error) - return "dnsSource." + error; - } - if (message.connectAttemptCount != null && message.hasOwnProperty("connectAttemptCount")) - if (!$util.isInteger(message.connectAttemptCount)) - return "connectAttemptCount: integer expected"; - if (message.agent != null && message.hasOwnProperty("agent")) - if (!$util.isInteger(message.agent)) - return "agent: integer expected"; - if (message.device != null && message.hasOwnProperty("device")) - if (!$util.isInteger(message.device)) - return "device: integer expected"; - if (message.regData != null && message.hasOwnProperty("regData")) { - var error = $root.proto.CompanionRegData.verify(message.regData); - if (error) - return "regData." + error; - } - if (message.product != null && message.hasOwnProperty("product")) - switch (message.product) { - default: - return "product: enum value expected"; - case 0: - case 1: - break; - } - if (message.fbCat != null && message.hasOwnProperty("fbCat")) - if (!(message.fbCat && typeof message.fbCat.length === "number" || $util.isString(message.fbCat))) - return "fbCat: buffer expected"; - if (message.fbUserAgent != null && message.hasOwnProperty("fbUserAgent")) - if (!(message.fbUserAgent && typeof message.fbUserAgent.length === "number" || $util.isString(message.fbUserAgent))) - return "fbUserAgent: buffer expected"; - if (message.oc != null && message.hasOwnProperty("oc")) - if (typeof message.oc !== "boolean") - return "oc: boolean expected"; - return null; - }; - - /** - * Creates a ClientPayload message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.ClientPayload - * @static - * @param {Object.} object Plain object - * @returns {proto.ClientPayload} ClientPayload - */ - ClientPayload.fromObject = function fromObject(object) { - if (object instanceof $root.proto.ClientPayload) - return object; - var message = new $root.proto.ClientPayload(); - if (object.username != null) - if ($util.Long) - (message.username = $util.Long.fromValue(object.username)).unsigned = true; - else if (typeof object.username === "string") - message.username = parseInt(object.username, 10); - else if (typeof object.username === "number") - message.username = object.username; - else if (typeof object.username === "object") - message.username = new $util.LongBits(object.username.low >>> 0, object.username.high >>> 0).toNumber(true); - if (object.passive != null) - message.passive = Boolean(object.passive); - if (object.clientFeatures) { - if (!Array.isArray(object.clientFeatures)) - throw TypeError(".proto.ClientPayload.clientFeatures: array expected"); - message.clientFeatures = []; - for (var i = 0; i < object.clientFeatures.length; ++i) - switch (object.clientFeatures[i]) { - default: - case "NONE": - case 0: - message.clientFeatures[i] = 0; - break; - } - } - if (object.userAgent != null) { - if (typeof object.userAgent !== "object") - throw TypeError(".proto.ClientPayload.userAgent: object expected"); - message.userAgent = $root.proto.UserAgent.fromObject(object.userAgent); - } - if (object.webInfo != null) { - if (typeof object.webInfo !== "object") - throw TypeError(".proto.ClientPayload.webInfo: object expected"); - message.webInfo = $root.proto.WebInfo.fromObject(object.webInfo); - } - if (object.pushName != null) - message.pushName = String(object.pushName); - if (object.sessionId != null) - message.sessionId = object.sessionId | 0; - if (object.shortConnect != null) - message.shortConnect = Boolean(object.shortConnect); - switch (object.iosAppExtension) { - case "SHARE_EXTENSION": - case 0: - message.iosAppExtension = 0; - break; - case "SERVICE_EXTENSION": - case 1: - message.iosAppExtension = 1; - break; - case "INTENTS_EXTENSION": - case 2: - message.iosAppExtension = 2; - break; - } - switch (object.connectType) { - case "CELLULAR_UNKNOWN": - case 0: - message.connectType = 0; - break; - case "WIFI_UNKNOWN": - case 1: - message.connectType = 1; - break; - case "CELLULAR_EDGE": - case 100: - message.connectType = 100; - break; - case "CELLULAR_IDEN": - case 101: - message.connectType = 101; - break; - case "CELLULAR_UMTS": - case 102: - message.connectType = 102; - break; - case "CELLULAR_EVDO": - case 103: - message.connectType = 103; - break; - case "CELLULAR_GPRS": - case 104: - message.connectType = 104; - break; - case "CELLULAR_HSDPA": - case 105: - message.connectType = 105; - break; - case "CELLULAR_HSUPA": - case 106: - message.connectType = 106; - break; - case "CELLULAR_HSPA": - case 107: - message.connectType = 107; - break; - case "CELLULAR_CDMA": - case 108: - message.connectType = 108; - break; - case "CELLULAR_1XRTT": - case 109: - message.connectType = 109; - break; - case "CELLULAR_EHRPD": - case 110: - message.connectType = 110; - break; - case "CELLULAR_LTE": - case 111: - message.connectType = 111; - break; - case "CELLULAR_HSPAP": - case 112: - message.connectType = 112; - break; - } - switch (object.connectReason) { - case "PUSH": - case 0: - message.connectReason = 0; - break; - case "USER_ACTIVATED": - case 1: - message.connectReason = 1; - break; - case "SCHEDULED": - case 2: - message.connectReason = 2; - break; - case "ERROR_RECONNECT": - case 3: - message.connectReason = 3; - break; - case "NETWORK_SWITCH": - case 4: - message.connectReason = 4; - break; - case "PING_RECONNECT": - case 5: - message.connectReason = 5; - break; - } - if (object.shards) { - if (!Array.isArray(object.shards)) - throw TypeError(".proto.ClientPayload.shards: array expected"); - message.shards = []; - for (var i = 0; i < object.shards.length; ++i) - message.shards[i] = object.shards[i] | 0; - } - if (object.dnsSource != null) { - if (typeof object.dnsSource !== "object") - throw TypeError(".proto.ClientPayload.dnsSource: object expected"); - message.dnsSource = $root.proto.DNSSource.fromObject(object.dnsSource); - } - if (object.connectAttemptCount != null) - message.connectAttemptCount = object.connectAttemptCount >>> 0; - if (object.agent != null) - message.agent = object.agent >>> 0; - if (object.device != null) - message.device = object.device >>> 0; - if (object.regData != null) { - if (typeof object.regData !== "object") - throw TypeError(".proto.ClientPayload.regData: object expected"); - message.regData = $root.proto.CompanionRegData.fromObject(object.regData); - } - switch (object.product) { - case "WHATSAPP": - case 0: - message.product = 0; - break; - case "MESSENGER": - case 1: - message.product = 1; - break; - } - if (object.fbCat != null) - if (typeof object.fbCat === "string") - $util.base64.decode(object.fbCat, message.fbCat = $util.newBuffer($util.base64.length(object.fbCat)), 0); - else if (object.fbCat.length) - message.fbCat = object.fbCat; - if (object.fbUserAgent != null) - if (typeof object.fbUserAgent === "string") - $util.base64.decode(object.fbUserAgent, message.fbUserAgent = $util.newBuffer($util.base64.length(object.fbUserAgent)), 0); - else if (object.fbUserAgent.length) - message.fbUserAgent = object.fbUserAgent; - if (object.oc != null) - message.oc = Boolean(object.oc); - return message; - }; - - /** - * Creates a plain object from a ClientPayload message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.ClientPayload - * @static - * @param {proto.ClientPayload} message ClientPayload - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ClientPayload.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) { - object.clientFeatures = []; - object.shards = []; - } - if (options.defaults) { - if ($util.Long) { - var long = new $util.Long(0, 0, true); - object.username = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; - } else - object.username = options.longs === String ? "0" : 0; - object.passive = false; - object.userAgent = null; - object.webInfo = null; - object.pushName = ""; - object.sessionId = 0; - object.shortConnect = false; - object.connectType = options.enums === String ? "CELLULAR_UNKNOWN" : 0; - object.connectReason = options.enums === String ? "PUSH" : 0; - object.dnsSource = null; - object.connectAttemptCount = 0; - object.agent = 0; - object.device = 0; - object.regData = null; - object.product = options.enums === String ? "WHATSAPP" : 0; - if (options.bytes === String) - object.fbCat = ""; - else { - object.fbCat = []; - if (options.bytes !== Array) - object.fbCat = $util.newBuffer(object.fbCat); - } - if (options.bytes === String) - object.fbUserAgent = ""; - else { - object.fbUserAgent = []; - if (options.bytes !== Array) - object.fbUserAgent = $util.newBuffer(object.fbUserAgent); - } - object.oc = false; - object.iosAppExtension = options.enums === String ? "SHARE_EXTENSION" : 0; - } - if (message.username != null && message.hasOwnProperty("username")) - if (typeof message.username === "number") - object.username = options.longs === String ? String(message.username) : message.username; - else - object.username = options.longs === String ? $util.Long.prototype.toString.call(message.username) : options.longs === Number ? new $util.LongBits(message.username.low >>> 0, message.username.high >>> 0).toNumber(true) : message.username; - if (message.passive != null && message.hasOwnProperty("passive")) - object.passive = message.passive; - if (message.clientFeatures && message.clientFeatures.length) { - object.clientFeatures = []; - for (var j = 0; j < message.clientFeatures.length; ++j) - object.clientFeatures[j] = options.enums === String ? $root.proto.ClientPayload.ClientPayloadClientFeature[message.clientFeatures[j]] : message.clientFeatures[j]; - } - if (message.userAgent != null && message.hasOwnProperty("userAgent")) - object.userAgent = $root.proto.UserAgent.toObject(message.userAgent, options); - if (message.webInfo != null && message.hasOwnProperty("webInfo")) - object.webInfo = $root.proto.WebInfo.toObject(message.webInfo, options); - if (message.pushName != null && message.hasOwnProperty("pushName")) - object.pushName = message.pushName; - if (message.sessionId != null && message.hasOwnProperty("sessionId")) - object.sessionId = message.sessionId; - if (message.shortConnect != null && message.hasOwnProperty("shortConnect")) - object.shortConnect = message.shortConnect; - if (message.connectType != null && message.hasOwnProperty("connectType")) - object.connectType = options.enums === String ? $root.proto.ClientPayload.ClientPayloadConnectType[message.connectType] : message.connectType; - if (message.connectReason != null && message.hasOwnProperty("connectReason")) - object.connectReason = options.enums === String ? $root.proto.ClientPayload.ClientPayloadConnectReason[message.connectReason] : message.connectReason; - if (message.shards && message.shards.length) { - object.shards = []; - for (var j = 0; j < message.shards.length; ++j) - object.shards[j] = message.shards[j]; - } - if (message.dnsSource != null && message.hasOwnProperty("dnsSource")) - object.dnsSource = $root.proto.DNSSource.toObject(message.dnsSource, options); - if (message.connectAttemptCount != null && message.hasOwnProperty("connectAttemptCount")) - object.connectAttemptCount = message.connectAttemptCount; - if (message.agent != null && message.hasOwnProperty("agent")) - object.agent = message.agent; - if (message.device != null && message.hasOwnProperty("device")) - object.device = message.device; - if (message.regData != null && message.hasOwnProperty("regData")) - object.regData = $root.proto.CompanionRegData.toObject(message.regData, options); - if (message.product != null && message.hasOwnProperty("product")) - object.product = options.enums === String ? $root.proto.ClientPayload.ClientPayloadProduct[message.product] : message.product; - if (message.fbCat != null && message.hasOwnProperty("fbCat")) - object.fbCat = options.bytes === String ? $util.base64.encode(message.fbCat, 0, message.fbCat.length) : options.bytes === Array ? Array.prototype.slice.call(message.fbCat) : message.fbCat; - if (message.fbUserAgent != null && message.hasOwnProperty("fbUserAgent")) - object.fbUserAgent = options.bytes === String ? $util.base64.encode(message.fbUserAgent, 0, message.fbUserAgent.length) : options.bytes === Array ? Array.prototype.slice.call(message.fbUserAgent) : message.fbUserAgent; - if (message.oc != null && message.hasOwnProperty("oc")) - object.oc = message.oc; - if (message.iosAppExtension != null && message.hasOwnProperty("iosAppExtension")) - object.iosAppExtension = options.enums === String ? $root.proto.ClientPayload.ClientPayloadIOSAppExtension[message.iosAppExtension] : message.iosAppExtension; - return object; - }; - - /** - * Converts this ClientPayload to JSON. - * @function toJSON - * @memberof proto.ClientPayload - * @instance - * @returns {Object.} JSON object - */ - ClientPayload.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - /** - * ClientPayloadClientFeature enum. - * @name proto.ClientPayload.ClientPayloadClientFeature - * @enum {number} - * @property {number} NONE=0 NONE value - */ - ClientPayload.ClientPayloadClientFeature = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "NONE"] = 0; - return values; - })(); - - /** - * ClientPayloadIOSAppExtension enum. - * @name proto.ClientPayload.ClientPayloadIOSAppExtension - * @enum {number} - * @property {number} SHARE_EXTENSION=0 SHARE_EXTENSION value - * @property {number} SERVICE_EXTENSION=1 SERVICE_EXTENSION value - * @property {number} INTENTS_EXTENSION=2 INTENTS_EXTENSION value - */ - ClientPayload.ClientPayloadIOSAppExtension = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "SHARE_EXTENSION"] = 0; - values[valuesById[1] = "SERVICE_EXTENSION"] = 1; - values[valuesById[2] = "INTENTS_EXTENSION"] = 2; - return values; - })(); - - /** - * ClientPayloadConnectType enum. - * @name proto.ClientPayload.ClientPayloadConnectType - * @enum {number} - * @property {number} CELLULAR_UNKNOWN=0 CELLULAR_UNKNOWN value - * @property {number} WIFI_UNKNOWN=1 WIFI_UNKNOWN value - * @property {number} CELLULAR_EDGE=100 CELLULAR_EDGE value - * @property {number} CELLULAR_IDEN=101 CELLULAR_IDEN value - * @property {number} CELLULAR_UMTS=102 CELLULAR_UMTS value - * @property {number} CELLULAR_EVDO=103 CELLULAR_EVDO value - * @property {number} CELLULAR_GPRS=104 CELLULAR_GPRS value - * @property {number} CELLULAR_HSDPA=105 CELLULAR_HSDPA value - * @property {number} CELLULAR_HSUPA=106 CELLULAR_HSUPA value - * @property {number} CELLULAR_HSPA=107 CELLULAR_HSPA value - * @property {number} CELLULAR_CDMA=108 CELLULAR_CDMA value - * @property {number} CELLULAR_1XRTT=109 CELLULAR_1XRTT value - * @property {number} CELLULAR_EHRPD=110 CELLULAR_EHRPD value - * @property {number} CELLULAR_LTE=111 CELLULAR_LTE value - * @property {number} CELLULAR_HSPAP=112 CELLULAR_HSPAP value - */ - ClientPayload.ClientPayloadConnectType = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "CELLULAR_UNKNOWN"] = 0; - values[valuesById[1] = "WIFI_UNKNOWN"] = 1; - values[valuesById[100] = "CELLULAR_EDGE"] = 100; - values[valuesById[101] = "CELLULAR_IDEN"] = 101; - values[valuesById[102] = "CELLULAR_UMTS"] = 102; - values[valuesById[103] = "CELLULAR_EVDO"] = 103; - values[valuesById[104] = "CELLULAR_GPRS"] = 104; - values[valuesById[105] = "CELLULAR_HSDPA"] = 105; - values[valuesById[106] = "CELLULAR_HSUPA"] = 106; - values[valuesById[107] = "CELLULAR_HSPA"] = 107; - values[valuesById[108] = "CELLULAR_CDMA"] = 108; - values[valuesById[109] = "CELLULAR_1XRTT"] = 109; - values[valuesById[110] = "CELLULAR_EHRPD"] = 110; - values[valuesById[111] = "CELLULAR_LTE"] = 111; - values[valuesById[112] = "CELLULAR_HSPAP"] = 112; - return values; - })(); - - /** - * ClientPayloadConnectReason enum. - * @name proto.ClientPayload.ClientPayloadConnectReason - * @enum {number} - * @property {number} PUSH=0 PUSH value - * @property {number} USER_ACTIVATED=1 USER_ACTIVATED value - * @property {number} SCHEDULED=2 SCHEDULED value - * @property {number} ERROR_RECONNECT=3 ERROR_RECONNECT value - * @property {number} NETWORK_SWITCH=4 NETWORK_SWITCH value - * @property {number} PING_RECONNECT=5 PING_RECONNECT value - */ - ClientPayload.ClientPayloadConnectReason = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "PUSH"] = 0; - values[valuesById[1] = "USER_ACTIVATED"] = 1; - values[valuesById[2] = "SCHEDULED"] = 2; - values[valuesById[3] = "ERROR_RECONNECT"] = 3; - values[valuesById[4] = "NETWORK_SWITCH"] = 4; - values[valuesById[5] = "PING_RECONNECT"] = 5; - return values; - })(); - - /** - * ClientPayloadProduct enum. - * @name proto.ClientPayload.ClientPayloadProduct - * @enum {number} - * @property {number} WHATSAPP=0 WHATSAPP value - * @property {number} MESSENGER=1 MESSENGER value - */ - ClientPayload.ClientPayloadProduct = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "WHATSAPP"] = 0; - values[valuesById[1] = "MESSENGER"] = 1; - return values; - })(); - - return ClientPayload; - })(); - - proto.NoiseCertificate = (function() { - - /** - * Properties of a NoiseCertificate. - * @memberof proto - * @interface INoiseCertificate - * @property {Uint8Array|null} [details] NoiseCertificate details - * @property {Uint8Array|null} [signature] NoiseCertificate signature - */ - - /** - * Constructs a new NoiseCertificate. - * @memberof proto - * @classdesc Represents a NoiseCertificate. - * @implements INoiseCertificate - * @constructor - * @param {proto.INoiseCertificate=} [properties] Properties to set - */ - function NoiseCertificate(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * NoiseCertificate details. - * @member {Uint8Array} details - * @memberof proto.NoiseCertificate - * @instance - */ - NoiseCertificate.prototype.details = $util.newBuffer([]); - - /** - * NoiseCertificate signature. - * @member {Uint8Array} signature - * @memberof proto.NoiseCertificate - * @instance - */ - NoiseCertificate.prototype.signature = $util.newBuffer([]); - - /** - * Creates a new NoiseCertificate instance using the specified properties. - * @function create - * @memberof proto.NoiseCertificate - * @static - * @param {proto.INoiseCertificate=} [properties] Properties to set - * @returns {proto.NoiseCertificate} NoiseCertificate instance - */ - NoiseCertificate.create = function create(properties) { - return new NoiseCertificate(properties); - }; - - /** - * Encodes the specified NoiseCertificate message. Does not implicitly {@link proto.NoiseCertificate.verify|verify} messages. - * @function encode - * @memberof proto.NoiseCertificate - * @static - * @param {proto.INoiseCertificate} message NoiseCertificate message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - NoiseCertificate.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.details != null && Object.hasOwnProperty.call(message, "details")) - writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.details); - if (message.signature != null && Object.hasOwnProperty.call(message, "signature")) - writer.uint32(/* id 2, wireType 2 =*/18).bytes(message.signature); - return writer; - }; - - /** - * Encodes the specified NoiseCertificate message, length delimited. Does not implicitly {@link proto.NoiseCertificate.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.NoiseCertificate - * @static - * @param {proto.INoiseCertificate} message NoiseCertificate message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - NoiseCertificate.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a NoiseCertificate message from the specified reader or buffer. - * @function decode - * @memberof proto.NoiseCertificate - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.NoiseCertificate} NoiseCertificate - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - NoiseCertificate.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.NoiseCertificate(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.details = reader.bytes(); - break; - case 2: - message.signature = reader.bytes(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a NoiseCertificate message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.NoiseCertificate - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.NoiseCertificate} NoiseCertificate - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - NoiseCertificate.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a NoiseCertificate message. - * @function verify - * @memberof proto.NoiseCertificate - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - NoiseCertificate.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.details != null && message.hasOwnProperty("details")) - if (!(message.details && typeof message.details.length === "number" || $util.isString(message.details))) - return "details: buffer expected"; - if (message.signature != null && message.hasOwnProperty("signature")) - if (!(message.signature && typeof message.signature.length === "number" || $util.isString(message.signature))) - return "signature: buffer expected"; - return null; - }; - - /** - * Creates a NoiseCertificate message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.NoiseCertificate - * @static - * @param {Object.} object Plain object - * @returns {proto.NoiseCertificate} NoiseCertificate - */ - NoiseCertificate.fromObject = function fromObject(object) { - if (object instanceof $root.proto.NoiseCertificate) - return object; - var message = new $root.proto.NoiseCertificate(); - if (object.details != null) - if (typeof object.details === "string") - $util.base64.decode(object.details, message.details = $util.newBuffer($util.base64.length(object.details)), 0); - else if (object.details.length) - message.details = object.details; - if (object.signature != null) - if (typeof object.signature === "string") - $util.base64.decode(object.signature, message.signature = $util.newBuffer($util.base64.length(object.signature)), 0); - else if (object.signature.length) - message.signature = object.signature; - return message; - }; - - /** - * Creates a plain object from a NoiseCertificate message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.NoiseCertificate - * @static - * @param {proto.NoiseCertificate} message NoiseCertificate - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - NoiseCertificate.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - if (options.bytes === String) - object.details = ""; - else { - object.details = []; - if (options.bytes !== Array) - object.details = $util.newBuffer(object.details); - } - if (options.bytes === String) - object.signature = ""; - else { - object.signature = []; - if (options.bytes !== Array) - object.signature = $util.newBuffer(object.signature); - } - } - if (message.details != null && message.hasOwnProperty("details")) - object.details = options.bytes === String ? $util.base64.encode(message.details, 0, message.details.length) : options.bytes === Array ? Array.prototype.slice.call(message.details) : message.details; - if (message.signature != null && message.hasOwnProperty("signature")) - object.signature = options.bytes === String ? $util.base64.encode(message.signature, 0, message.signature.length) : options.bytes === Array ? Array.prototype.slice.call(message.signature) : message.signature; - return object; - }; - - /** - * Converts this NoiseCertificate to JSON. - * @function toJSON - * @memberof proto.NoiseCertificate - * @instance - * @returns {Object.} JSON object - */ - NoiseCertificate.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return NoiseCertificate; - })(); - - proto.ClientHello = (function() { - - /** - * Properties of a ClientHello. - * @memberof proto - * @interface IClientHello - * @property {Uint8Array|null} [ephemeral] ClientHello ephemeral - * @property {Uint8Array|null} ["static"] ClientHello static - * @property {Uint8Array|null} [payload] ClientHello payload - */ - - /** - * Constructs a new ClientHello. - * @memberof proto - * @classdesc Represents a ClientHello. - * @implements IClientHello - * @constructor - * @param {proto.IClientHello=} [properties] Properties to set - */ - function ClientHello(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * ClientHello ephemeral. - * @member {Uint8Array} ephemeral - * @memberof proto.ClientHello - * @instance - */ - ClientHello.prototype.ephemeral = $util.newBuffer([]); - - /** - * ClientHello static. - * @member {Uint8Array} static - * @memberof proto.ClientHello - * @instance - */ - ClientHello.prototype["static"] = $util.newBuffer([]); - - /** - * ClientHello payload. - * @member {Uint8Array} payload - * @memberof proto.ClientHello - * @instance - */ - ClientHello.prototype.payload = $util.newBuffer([]); - - /** - * Creates a new ClientHello instance using the specified properties. - * @function create - * @memberof proto.ClientHello - * @static - * @param {proto.IClientHello=} [properties] Properties to set - * @returns {proto.ClientHello} ClientHello instance - */ - ClientHello.create = function create(properties) { - return new ClientHello(properties); - }; - - /** - * Encodes the specified ClientHello message. Does not implicitly {@link proto.ClientHello.verify|verify} messages. - * @function encode - * @memberof proto.ClientHello - * @static - * @param {proto.IClientHello} message ClientHello message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ClientHello.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.ephemeral != null && Object.hasOwnProperty.call(message, "ephemeral")) - writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.ephemeral); - if (message["static"] != null && Object.hasOwnProperty.call(message, "static")) - writer.uint32(/* id 2, wireType 2 =*/18).bytes(message["static"]); - if (message.payload != null && Object.hasOwnProperty.call(message, "payload")) - writer.uint32(/* id 3, wireType 2 =*/26).bytes(message.payload); - return writer; - }; - - /** - * Encodes the specified ClientHello message, length delimited. Does not implicitly {@link proto.ClientHello.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.ClientHello - * @static - * @param {proto.IClientHello} message ClientHello message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ClientHello.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a ClientHello message from the specified reader or buffer. - * @function decode - * @memberof proto.ClientHello - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.ClientHello} ClientHello - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ClientHello.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.ClientHello(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.ephemeral = reader.bytes(); - break; - case 2: - message["static"] = reader.bytes(); - break; - case 3: - message.payload = reader.bytes(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a ClientHello message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.ClientHello - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.ClientHello} ClientHello - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ClientHello.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a ClientHello message. - * @function verify - * @memberof proto.ClientHello - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - ClientHello.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.ephemeral != null && message.hasOwnProperty("ephemeral")) - if (!(message.ephemeral && typeof message.ephemeral.length === "number" || $util.isString(message.ephemeral))) - return "ephemeral: buffer expected"; - if (message["static"] != null && message.hasOwnProperty("static")) - if (!(message["static"] && typeof message["static"].length === "number" || $util.isString(message["static"]))) - return "static: buffer expected"; - if (message.payload != null && message.hasOwnProperty("payload")) - if (!(message.payload && typeof message.payload.length === "number" || $util.isString(message.payload))) - return "payload: buffer expected"; - return null; - }; - - /** - * Creates a ClientHello message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.ClientHello - * @static - * @param {Object.} object Plain object - * @returns {proto.ClientHello} ClientHello - */ - ClientHello.fromObject = function fromObject(object) { - if (object instanceof $root.proto.ClientHello) - return object; - var message = new $root.proto.ClientHello(); - if (object.ephemeral != null) - if (typeof object.ephemeral === "string") - $util.base64.decode(object.ephemeral, message.ephemeral = $util.newBuffer($util.base64.length(object.ephemeral)), 0); - else if (object.ephemeral.length) - message.ephemeral = object.ephemeral; - if (object["static"] != null) - if (typeof object["static"] === "string") - $util.base64.decode(object["static"], message["static"] = $util.newBuffer($util.base64.length(object["static"])), 0); - else if (object["static"].length) - message["static"] = object["static"]; - if (object.payload != null) - if (typeof object.payload === "string") - $util.base64.decode(object.payload, message.payload = $util.newBuffer($util.base64.length(object.payload)), 0); - else if (object.payload.length) - message.payload = object.payload; - return message; - }; - - /** - * Creates a plain object from a ClientHello message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.ClientHello - * @static - * @param {proto.ClientHello} message ClientHello - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ClientHello.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - if (options.bytes === String) - object.ephemeral = ""; - else { - object.ephemeral = []; - if (options.bytes !== Array) - object.ephemeral = $util.newBuffer(object.ephemeral); - } - if (options.bytes === String) - object["static"] = ""; - else { - object["static"] = []; - if (options.bytes !== Array) - object["static"] = $util.newBuffer(object["static"]); - } - if (options.bytes === String) - object.payload = ""; - else { - object.payload = []; - if (options.bytes !== Array) - object.payload = $util.newBuffer(object.payload); - } - } - if (message.ephemeral != null && message.hasOwnProperty("ephemeral")) - object.ephemeral = options.bytes === String ? $util.base64.encode(message.ephemeral, 0, message.ephemeral.length) : options.bytes === Array ? Array.prototype.slice.call(message.ephemeral) : message.ephemeral; - if (message["static"] != null && message.hasOwnProperty("static")) - object["static"] = options.bytes === String ? $util.base64.encode(message["static"], 0, message["static"].length) : options.bytes === Array ? Array.prototype.slice.call(message["static"]) : message["static"]; - if (message.payload != null && message.hasOwnProperty("payload")) - object.payload = options.bytes === String ? $util.base64.encode(message.payload, 0, message.payload.length) : options.bytes === Array ? Array.prototype.slice.call(message.payload) : message.payload; - return object; - }; - - /** - * Converts this ClientHello to JSON. - * @function toJSON - * @memberof proto.ClientHello - * @instance - * @returns {Object.} JSON object - */ - ClientHello.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return ClientHello; - })(); - - proto.ServerHello = (function() { - - /** - * Properties of a ServerHello. - * @memberof proto - * @interface IServerHello - * @property {Uint8Array|null} [ephemeral] ServerHello ephemeral - * @property {Uint8Array|null} ["static"] ServerHello static - * @property {Uint8Array|null} [payload] ServerHello payload - */ - - /** - * Constructs a new ServerHello. - * @memberof proto - * @classdesc Represents a ServerHello. - * @implements IServerHello - * @constructor - * @param {proto.IServerHello=} [properties] Properties to set - */ - function ServerHello(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * ServerHello ephemeral. - * @member {Uint8Array} ephemeral - * @memberof proto.ServerHello - * @instance - */ - ServerHello.prototype.ephemeral = $util.newBuffer([]); - - /** - * ServerHello static. - * @member {Uint8Array} static - * @memberof proto.ServerHello - * @instance - */ - ServerHello.prototype["static"] = $util.newBuffer([]); - - /** - * ServerHello payload. - * @member {Uint8Array} payload - * @memberof proto.ServerHello - * @instance - */ - ServerHello.prototype.payload = $util.newBuffer([]); - - /** - * Creates a new ServerHello instance using the specified properties. - * @function create - * @memberof proto.ServerHello - * @static - * @param {proto.IServerHello=} [properties] Properties to set - * @returns {proto.ServerHello} ServerHello instance - */ - ServerHello.create = function create(properties) { - return new ServerHello(properties); - }; - - /** - * Encodes the specified ServerHello message. Does not implicitly {@link proto.ServerHello.verify|verify} messages. - * @function encode - * @memberof proto.ServerHello - * @static - * @param {proto.IServerHello} message ServerHello message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ServerHello.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.ephemeral != null && Object.hasOwnProperty.call(message, "ephemeral")) - writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.ephemeral); - if (message["static"] != null && Object.hasOwnProperty.call(message, "static")) - writer.uint32(/* id 2, wireType 2 =*/18).bytes(message["static"]); - if (message.payload != null && Object.hasOwnProperty.call(message, "payload")) - writer.uint32(/* id 3, wireType 2 =*/26).bytes(message.payload); - return writer; - }; - - /** - * Encodes the specified ServerHello message, length delimited. Does not implicitly {@link proto.ServerHello.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.ServerHello - * @static - * @param {proto.IServerHello} message ServerHello message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ServerHello.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a ServerHello message from the specified reader or buffer. - * @function decode - * @memberof proto.ServerHello - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.ServerHello} ServerHello - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ServerHello.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.ServerHello(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.ephemeral = reader.bytes(); - break; - case 2: - message["static"] = reader.bytes(); - break; - case 3: - message.payload = reader.bytes(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a ServerHello message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.ServerHello - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.ServerHello} ServerHello - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ServerHello.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a ServerHello message. - * @function verify - * @memberof proto.ServerHello - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - ServerHello.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.ephemeral != null && message.hasOwnProperty("ephemeral")) - if (!(message.ephemeral && typeof message.ephemeral.length === "number" || $util.isString(message.ephemeral))) - return "ephemeral: buffer expected"; - if (message["static"] != null && message.hasOwnProperty("static")) - if (!(message["static"] && typeof message["static"].length === "number" || $util.isString(message["static"]))) - return "static: buffer expected"; - if (message.payload != null && message.hasOwnProperty("payload")) - if (!(message.payload && typeof message.payload.length === "number" || $util.isString(message.payload))) - return "payload: buffer expected"; - return null; - }; - - /** - * Creates a ServerHello message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.ServerHello - * @static - * @param {Object.} object Plain object - * @returns {proto.ServerHello} ServerHello - */ - ServerHello.fromObject = function fromObject(object) { - if (object instanceof $root.proto.ServerHello) - return object; - var message = new $root.proto.ServerHello(); - if (object.ephemeral != null) - if (typeof object.ephemeral === "string") - $util.base64.decode(object.ephemeral, message.ephemeral = $util.newBuffer($util.base64.length(object.ephemeral)), 0); - else if (object.ephemeral.length) - message.ephemeral = object.ephemeral; - if (object["static"] != null) - if (typeof object["static"] === "string") - $util.base64.decode(object["static"], message["static"] = $util.newBuffer($util.base64.length(object["static"])), 0); - else if (object["static"].length) - message["static"] = object["static"]; - if (object.payload != null) - if (typeof object.payload === "string") - $util.base64.decode(object.payload, message.payload = $util.newBuffer($util.base64.length(object.payload)), 0); - else if (object.payload.length) - message.payload = object.payload; - return message; - }; - - /** - * Creates a plain object from a ServerHello message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.ServerHello - * @static - * @param {proto.ServerHello} message ServerHello - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ServerHello.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - if (options.bytes === String) - object.ephemeral = ""; - else { - object.ephemeral = []; - if (options.bytes !== Array) - object.ephemeral = $util.newBuffer(object.ephemeral); - } - if (options.bytes === String) - object["static"] = ""; - else { - object["static"] = []; - if (options.bytes !== Array) - object["static"] = $util.newBuffer(object["static"]); - } - if (options.bytes === String) - object.payload = ""; - else { - object.payload = []; - if (options.bytes !== Array) - object.payload = $util.newBuffer(object.payload); - } - } - if (message.ephemeral != null && message.hasOwnProperty("ephemeral")) - object.ephemeral = options.bytes === String ? $util.base64.encode(message.ephemeral, 0, message.ephemeral.length) : options.bytes === Array ? Array.prototype.slice.call(message.ephemeral) : message.ephemeral; - if (message["static"] != null && message.hasOwnProperty("static")) - object["static"] = options.bytes === String ? $util.base64.encode(message["static"], 0, message["static"].length) : options.bytes === Array ? Array.prototype.slice.call(message["static"]) : message["static"]; - if (message.payload != null && message.hasOwnProperty("payload")) - object.payload = options.bytes === String ? $util.base64.encode(message.payload, 0, message.payload.length) : options.bytes === Array ? Array.prototype.slice.call(message.payload) : message.payload; - return object; - }; - - /** - * Converts this ServerHello to JSON. - * @function toJSON - * @memberof proto.ServerHello - * @instance - * @returns {Object.} JSON object - */ - ServerHello.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return ServerHello; - })(); - - proto.ClientFinish = (function() { - - /** - * Properties of a ClientFinish. - * @memberof proto - * @interface IClientFinish - * @property {Uint8Array|null} ["static"] ClientFinish static - * @property {Uint8Array|null} [payload] ClientFinish payload - */ - - /** - * Constructs a new ClientFinish. - * @memberof proto - * @classdesc Represents a ClientFinish. - * @implements IClientFinish - * @constructor - * @param {proto.IClientFinish=} [properties] Properties to set - */ - function ClientFinish(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * ClientFinish static. - * @member {Uint8Array} static - * @memberof proto.ClientFinish - * @instance - */ - ClientFinish.prototype["static"] = $util.newBuffer([]); - - /** - * ClientFinish payload. - * @member {Uint8Array} payload - * @memberof proto.ClientFinish - * @instance - */ - ClientFinish.prototype.payload = $util.newBuffer([]); - - /** - * Creates a new ClientFinish instance using the specified properties. - * @function create - * @memberof proto.ClientFinish - * @static - * @param {proto.IClientFinish=} [properties] Properties to set - * @returns {proto.ClientFinish} ClientFinish instance - */ - ClientFinish.create = function create(properties) { - return new ClientFinish(properties); - }; - - /** - * Encodes the specified ClientFinish message. Does not implicitly {@link proto.ClientFinish.verify|verify} messages. - * @function encode - * @memberof proto.ClientFinish - * @static - * @param {proto.IClientFinish} message ClientFinish message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ClientFinish.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message["static"] != null && Object.hasOwnProperty.call(message, "static")) - writer.uint32(/* id 1, wireType 2 =*/10).bytes(message["static"]); - if (message.payload != null && Object.hasOwnProperty.call(message, "payload")) - writer.uint32(/* id 2, wireType 2 =*/18).bytes(message.payload); - return writer; - }; - - /** - * Encodes the specified ClientFinish message, length delimited. Does not implicitly {@link proto.ClientFinish.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.ClientFinish - * @static - * @param {proto.IClientFinish} message ClientFinish message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ClientFinish.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a ClientFinish message from the specified reader or buffer. - * @function decode - * @memberof proto.ClientFinish - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.ClientFinish} ClientFinish - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ClientFinish.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.ClientFinish(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message["static"] = reader.bytes(); - break; - case 2: - message.payload = reader.bytes(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a ClientFinish message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.ClientFinish - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.ClientFinish} ClientFinish - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ClientFinish.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a ClientFinish message. - * @function verify - * @memberof proto.ClientFinish - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - ClientFinish.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message["static"] != null && message.hasOwnProperty("static")) - if (!(message["static"] && typeof message["static"].length === "number" || $util.isString(message["static"]))) - return "static: buffer expected"; - if (message.payload != null && message.hasOwnProperty("payload")) - if (!(message.payload && typeof message.payload.length === "number" || $util.isString(message.payload))) - return "payload: buffer expected"; - return null; - }; - - /** - * Creates a ClientFinish message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.ClientFinish - * @static - * @param {Object.} object Plain object - * @returns {proto.ClientFinish} ClientFinish - */ - ClientFinish.fromObject = function fromObject(object) { - if (object instanceof $root.proto.ClientFinish) - return object; - var message = new $root.proto.ClientFinish(); - if (object["static"] != null) - if (typeof object["static"] === "string") - $util.base64.decode(object["static"], message["static"] = $util.newBuffer($util.base64.length(object["static"])), 0); - else if (object["static"].length) - message["static"] = object["static"]; - if (object.payload != null) - if (typeof object.payload === "string") - $util.base64.decode(object.payload, message.payload = $util.newBuffer($util.base64.length(object.payload)), 0); - else if (object.payload.length) - message.payload = object.payload; - return message; - }; - - /** - * Creates a plain object from a ClientFinish message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.ClientFinish - * @static - * @param {proto.ClientFinish} message ClientFinish - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ClientFinish.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - if (options.bytes === String) - object["static"] = ""; - else { - object["static"] = []; - if (options.bytes !== Array) - object["static"] = $util.newBuffer(object["static"]); - } - if (options.bytes === String) - object.payload = ""; - else { - object.payload = []; - if (options.bytes !== Array) - object.payload = $util.newBuffer(object.payload); - } - } - if (message["static"] != null && message.hasOwnProperty("static")) - object["static"] = options.bytes === String ? $util.base64.encode(message["static"], 0, message["static"].length) : options.bytes === Array ? Array.prototype.slice.call(message["static"]) : message["static"]; - if (message.payload != null && message.hasOwnProperty("payload")) - object.payload = options.bytes === String ? $util.base64.encode(message.payload, 0, message.payload.length) : options.bytes === Array ? Array.prototype.slice.call(message.payload) : message.payload; - return object; - }; - - /** - * Converts this ClientFinish to JSON. - * @function toJSON - * @memberof proto.ClientFinish - * @instance - * @returns {Object.} JSON object - */ - ClientFinish.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return ClientFinish; - })(); - - proto.HandshakeMessage = (function() { - - /** - * Properties of a HandshakeMessage. - * @memberof proto - * @interface IHandshakeMessage - * @property {proto.IClientHello|null} [clientHello] HandshakeMessage clientHello - * @property {proto.IServerHello|null} [serverHello] HandshakeMessage serverHello - * @property {proto.IClientFinish|null} [clientFinish] HandshakeMessage clientFinish - */ - - /** - * Constructs a new HandshakeMessage. - * @memberof proto - * @classdesc Represents a HandshakeMessage. - * @implements IHandshakeMessage - * @constructor - * @param {proto.IHandshakeMessage=} [properties] Properties to set - */ - function HandshakeMessage(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * HandshakeMessage clientHello. - * @member {proto.IClientHello|null|undefined} clientHello - * @memberof proto.HandshakeMessage - * @instance - */ - HandshakeMessage.prototype.clientHello = null; - - /** - * HandshakeMessage serverHello. - * @member {proto.IServerHello|null|undefined} serverHello - * @memberof proto.HandshakeMessage - * @instance - */ - HandshakeMessage.prototype.serverHello = null; - - /** - * HandshakeMessage clientFinish. - * @member {proto.IClientFinish|null|undefined} clientFinish - * @memberof proto.HandshakeMessage - * @instance - */ - HandshakeMessage.prototype.clientFinish = null; - - /** - * Creates a new HandshakeMessage instance using the specified properties. - * @function create - * @memberof proto.HandshakeMessage - * @static - * @param {proto.IHandshakeMessage=} [properties] Properties to set - * @returns {proto.HandshakeMessage} HandshakeMessage instance - */ - HandshakeMessage.create = function create(properties) { - return new HandshakeMessage(properties); - }; - - /** - * Encodes the specified HandshakeMessage message. Does not implicitly {@link proto.HandshakeMessage.verify|verify} messages. - * @function encode - * @memberof proto.HandshakeMessage - * @static - * @param {proto.IHandshakeMessage} message HandshakeMessage message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - HandshakeMessage.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.clientHello != null && Object.hasOwnProperty.call(message, "clientHello")) - $root.proto.ClientHello.encode(message.clientHello, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - if (message.serverHello != null && Object.hasOwnProperty.call(message, "serverHello")) - $root.proto.ServerHello.encode(message.serverHello, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); - if (message.clientFinish != null && Object.hasOwnProperty.call(message, "clientFinish")) - $root.proto.ClientFinish.encode(message.clientFinish, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); - return writer; - }; - - /** - * Encodes the specified HandshakeMessage message, length delimited. Does not implicitly {@link proto.HandshakeMessage.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.HandshakeMessage - * @static - * @param {proto.IHandshakeMessage} message HandshakeMessage message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - HandshakeMessage.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a HandshakeMessage message from the specified reader or buffer. - * @function decode - * @memberof proto.HandshakeMessage - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.HandshakeMessage} HandshakeMessage - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - HandshakeMessage.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.HandshakeMessage(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 2: - message.clientHello = $root.proto.ClientHello.decode(reader, reader.uint32()); - break; - case 3: - message.serverHello = $root.proto.ServerHello.decode(reader, reader.uint32()); - break; - case 4: - message.clientFinish = $root.proto.ClientFinish.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a HandshakeMessage message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.HandshakeMessage - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.HandshakeMessage} HandshakeMessage - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - HandshakeMessage.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a HandshakeMessage message. - * @function verify - * @memberof proto.HandshakeMessage - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - HandshakeMessage.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.clientHello != null && message.hasOwnProperty("clientHello")) { - var error = $root.proto.ClientHello.verify(message.clientHello); - if (error) - return "clientHello." + error; - } - if (message.serverHello != null && message.hasOwnProperty("serverHello")) { - var error = $root.proto.ServerHello.verify(message.serverHello); - if (error) - return "serverHello." + error; - } - if (message.clientFinish != null && message.hasOwnProperty("clientFinish")) { - var error = $root.proto.ClientFinish.verify(message.clientFinish); - if (error) - return "clientFinish." + error; - } - return null; - }; - - /** - * Creates a HandshakeMessage message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.HandshakeMessage - * @static - * @param {Object.} object Plain object - * @returns {proto.HandshakeMessage} HandshakeMessage - */ - HandshakeMessage.fromObject = function fromObject(object) { - if (object instanceof $root.proto.HandshakeMessage) - return object; - var message = new $root.proto.HandshakeMessage(); - if (object.clientHello != null) { - if (typeof object.clientHello !== "object") - throw TypeError(".proto.HandshakeMessage.clientHello: object expected"); - message.clientHello = $root.proto.ClientHello.fromObject(object.clientHello); - } - if (object.serverHello != null) { - if (typeof object.serverHello !== "object") - throw TypeError(".proto.HandshakeMessage.serverHello: object expected"); - message.serverHello = $root.proto.ServerHello.fromObject(object.serverHello); - } - if (object.clientFinish != null) { - if (typeof object.clientFinish !== "object") - throw TypeError(".proto.HandshakeMessage.clientFinish: object expected"); - message.clientFinish = $root.proto.ClientFinish.fromObject(object.clientFinish); - } - return message; - }; - - /** - * Creates a plain object from a HandshakeMessage message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.HandshakeMessage - * @static - * @param {proto.HandshakeMessage} message HandshakeMessage - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - HandshakeMessage.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.clientHello = null; - object.serverHello = null; - object.clientFinish = null; - } - if (message.clientHello != null && message.hasOwnProperty("clientHello")) - object.clientHello = $root.proto.ClientHello.toObject(message.clientHello, options); - if (message.serverHello != null && message.hasOwnProperty("serverHello")) - object.serverHello = $root.proto.ServerHello.toObject(message.serverHello, options); - if (message.clientFinish != null && message.hasOwnProperty("clientFinish")) - object.clientFinish = $root.proto.ClientFinish.toObject(message.clientFinish, options); - return object; - }; - - /** - * Converts this HandshakeMessage to JSON. - * @function toJSON - * @memberof proto.HandshakeMessage - * @instance - * @returns {Object.} JSON object - */ - HandshakeMessage.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return HandshakeMessage; - })(); - - proto.BizIdentityInfo = (function() { - - /** - * Properties of a BizIdentityInfo. - * @memberof proto - * @interface IBizIdentityInfo - * @property {proto.BizIdentityInfo.BizIdentityInfoVerifiedLevelValue|null} [vlevel] BizIdentityInfo vlevel - * @property {proto.IVerifiedNameCertificate|null} [vnameCert] BizIdentityInfo vnameCert - * @property {boolean|null} [signed] BizIdentityInfo signed - * @property {boolean|null} [revoked] BizIdentityInfo revoked - * @property {proto.BizIdentityInfo.BizIdentityInfoHostStorageType|null} [hostStorage] BizIdentityInfo hostStorage - * @property {proto.BizIdentityInfo.BizIdentityInfoActualActorsType|null} [actualActors] BizIdentityInfo actualActors - * @property {number|Long|null} [privacyModeTs] BizIdentityInfo privacyModeTs - */ - - /** - * Constructs a new BizIdentityInfo. - * @memberof proto - * @classdesc Represents a BizIdentityInfo. - * @implements IBizIdentityInfo - * @constructor - * @param {proto.IBizIdentityInfo=} [properties] Properties to set - */ - function BizIdentityInfo(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * BizIdentityInfo vlevel. - * @member {proto.BizIdentityInfo.BizIdentityInfoVerifiedLevelValue} vlevel - * @memberof proto.BizIdentityInfo - * @instance - */ - BizIdentityInfo.prototype.vlevel = 0; - - /** - * BizIdentityInfo vnameCert. - * @member {proto.IVerifiedNameCertificate|null|undefined} vnameCert - * @memberof proto.BizIdentityInfo - * @instance - */ - BizIdentityInfo.prototype.vnameCert = null; - - /** - * BizIdentityInfo signed. - * @member {boolean} signed - * @memberof proto.BizIdentityInfo - * @instance - */ - BizIdentityInfo.prototype.signed = false; - - /** - * BizIdentityInfo revoked. - * @member {boolean} revoked - * @memberof proto.BizIdentityInfo - * @instance - */ - BizIdentityInfo.prototype.revoked = false; - - /** - * BizIdentityInfo hostStorage. - * @member {proto.BizIdentityInfo.BizIdentityInfoHostStorageType} hostStorage - * @memberof proto.BizIdentityInfo - * @instance - */ - BizIdentityInfo.prototype.hostStorage = 0; - - /** - * BizIdentityInfo actualActors. - * @member {proto.BizIdentityInfo.BizIdentityInfoActualActorsType} actualActors - * @memberof proto.BizIdentityInfo - * @instance - */ - BizIdentityInfo.prototype.actualActors = 0; - - /** - * BizIdentityInfo privacyModeTs. - * @member {number|Long} privacyModeTs - * @memberof proto.BizIdentityInfo - * @instance - */ - BizIdentityInfo.prototype.privacyModeTs = $util.Long ? $util.Long.fromBits(0,0,true) : 0; - - /** - * Creates a new BizIdentityInfo instance using the specified properties. - * @function create - * @memberof proto.BizIdentityInfo - * @static - * @param {proto.IBizIdentityInfo=} [properties] Properties to set - * @returns {proto.BizIdentityInfo} BizIdentityInfo instance - */ - BizIdentityInfo.create = function create(properties) { - return new BizIdentityInfo(properties); - }; - - /** - * Encodes the specified BizIdentityInfo message. Does not implicitly {@link proto.BizIdentityInfo.verify|verify} messages. - * @function encode - * @memberof proto.BizIdentityInfo - * @static - * @param {proto.IBizIdentityInfo} message BizIdentityInfo message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - BizIdentityInfo.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.vlevel != null && Object.hasOwnProperty.call(message, "vlevel")) - writer.uint32(/* id 1, wireType 0 =*/8).int32(message.vlevel); - if (message.vnameCert != null && Object.hasOwnProperty.call(message, "vnameCert")) - $root.proto.VerifiedNameCertificate.encode(message.vnameCert, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - if (message.signed != null && Object.hasOwnProperty.call(message, "signed")) - writer.uint32(/* id 3, wireType 0 =*/24).bool(message.signed); - if (message.revoked != null && Object.hasOwnProperty.call(message, "revoked")) - writer.uint32(/* id 4, wireType 0 =*/32).bool(message.revoked); - if (message.hostStorage != null && Object.hasOwnProperty.call(message, "hostStorage")) - writer.uint32(/* id 5, wireType 0 =*/40).int32(message.hostStorage); - if (message.actualActors != null && Object.hasOwnProperty.call(message, "actualActors")) - writer.uint32(/* id 6, wireType 0 =*/48).int32(message.actualActors); - if (message.privacyModeTs != null && Object.hasOwnProperty.call(message, "privacyModeTs")) - writer.uint32(/* id 7, wireType 0 =*/56).uint64(message.privacyModeTs); - return writer; - }; - - /** - * Encodes the specified BizIdentityInfo message, length delimited. Does not implicitly {@link proto.BizIdentityInfo.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.BizIdentityInfo - * @static - * @param {proto.IBizIdentityInfo} message BizIdentityInfo message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - BizIdentityInfo.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a BizIdentityInfo message from the specified reader or buffer. - * @function decode - * @memberof proto.BizIdentityInfo - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.BizIdentityInfo} BizIdentityInfo - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - BizIdentityInfo.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.BizIdentityInfo(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.vlevel = reader.int32(); - break; - case 2: - message.vnameCert = $root.proto.VerifiedNameCertificate.decode(reader, reader.uint32()); - break; - case 3: - message.signed = reader.bool(); - break; - case 4: - message.revoked = reader.bool(); - break; - case 5: - message.hostStorage = reader.int32(); - break; - case 6: - message.actualActors = reader.int32(); - break; - case 7: - message.privacyModeTs = reader.uint64(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a BizIdentityInfo message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.BizIdentityInfo - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.BizIdentityInfo} BizIdentityInfo - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - BizIdentityInfo.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a BizIdentityInfo message. - * @function verify - * @memberof proto.BizIdentityInfo - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - BizIdentityInfo.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.vlevel != null && message.hasOwnProperty("vlevel")) - switch (message.vlevel) { - default: - return "vlevel: enum value expected"; - case 0: - case 1: - case 2: - break; - } - if (message.vnameCert != null && message.hasOwnProperty("vnameCert")) { - var error = $root.proto.VerifiedNameCertificate.verify(message.vnameCert); - if (error) - return "vnameCert." + error; - } - if (message.signed != null && message.hasOwnProperty("signed")) - if (typeof message.signed !== "boolean") - return "signed: boolean expected"; - if (message.revoked != null && message.hasOwnProperty("revoked")) - if (typeof message.revoked !== "boolean") - return "revoked: boolean expected"; - if (message.hostStorage != null && message.hasOwnProperty("hostStorage")) - switch (message.hostStorage) { - default: - return "hostStorage: enum value expected"; - case 0: - case 1: - break; - } - if (message.actualActors != null && message.hasOwnProperty("actualActors")) - switch (message.actualActors) { - default: - return "actualActors: enum value expected"; - case 0: - case 1: - break; - } - if (message.privacyModeTs != null && message.hasOwnProperty("privacyModeTs")) - if (!$util.isInteger(message.privacyModeTs) && !(message.privacyModeTs && $util.isInteger(message.privacyModeTs.low) && $util.isInteger(message.privacyModeTs.high))) - return "privacyModeTs: integer|Long expected"; - return null; - }; - - /** - * Creates a BizIdentityInfo message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.BizIdentityInfo - * @static - * @param {Object.} object Plain object - * @returns {proto.BizIdentityInfo} BizIdentityInfo - */ - BizIdentityInfo.fromObject = function fromObject(object) { - if (object instanceof $root.proto.BizIdentityInfo) - return object; - var message = new $root.proto.BizIdentityInfo(); - switch (object.vlevel) { - case "UNKNOWN": - case 0: - message.vlevel = 0; - break; - case "LOW": - case 1: - message.vlevel = 1; - break; - case "HIGH": - case 2: - message.vlevel = 2; - break; - } - if (object.vnameCert != null) { - if (typeof object.vnameCert !== "object") - throw TypeError(".proto.BizIdentityInfo.vnameCert: object expected"); - message.vnameCert = $root.proto.VerifiedNameCertificate.fromObject(object.vnameCert); - } - if (object.signed != null) - message.signed = Boolean(object.signed); - if (object.revoked != null) - message.revoked = Boolean(object.revoked); - switch (object.hostStorage) { - case "ON_PREMISE": - case 0: - message.hostStorage = 0; - break; - case "FACEBOOK": - case 1: - message.hostStorage = 1; - break; - } - switch (object.actualActors) { - case "SELF": - case 0: - message.actualActors = 0; - break; - case "BSP": - case 1: - message.actualActors = 1; - break; - } - if (object.privacyModeTs != null) - if ($util.Long) - (message.privacyModeTs = $util.Long.fromValue(object.privacyModeTs)).unsigned = true; - else if (typeof object.privacyModeTs === "string") - message.privacyModeTs = parseInt(object.privacyModeTs, 10); - else if (typeof object.privacyModeTs === "number") - message.privacyModeTs = object.privacyModeTs; - else if (typeof object.privacyModeTs === "object") - message.privacyModeTs = new $util.LongBits(object.privacyModeTs.low >>> 0, object.privacyModeTs.high >>> 0).toNumber(true); - return message; - }; - - /** - * Creates a plain object from a BizIdentityInfo message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.BizIdentityInfo - * @static - * @param {proto.BizIdentityInfo} message BizIdentityInfo - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - BizIdentityInfo.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.vlevel = options.enums === String ? "UNKNOWN" : 0; - object.vnameCert = null; - object.signed = false; - object.revoked = false; - object.hostStorage = options.enums === String ? "ON_PREMISE" : 0; - object.actualActors = options.enums === String ? "SELF" : 0; - if ($util.Long) { - var long = new $util.Long(0, 0, true); - object.privacyModeTs = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; - } else - object.privacyModeTs = options.longs === String ? "0" : 0; - } - if (message.vlevel != null && message.hasOwnProperty("vlevel")) - object.vlevel = options.enums === String ? $root.proto.BizIdentityInfo.BizIdentityInfoVerifiedLevelValue[message.vlevel] : message.vlevel; - if (message.vnameCert != null && message.hasOwnProperty("vnameCert")) - object.vnameCert = $root.proto.VerifiedNameCertificate.toObject(message.vnameCert, options); - if (message.signed != null && message.hasOwnProperty("signed")) - object.signed = message.signed; - if (message.revoked != null && message.hasOwnProperty("revoked")) - object.revoked = message.revoked; - if (message.hostStorage != null && message.hasOwnProperty("hostStorage")) - object.hostStorage = options.enums === String ? $root.proto.BizIdentityInfo.BizIdentityInfoHostStorageType[message.hostStorage] : message.hostStorage; - if (message.actualActors != null && message.hasOwnProperty("actualActors")) - object.actualActors = options.enums === String ? $root.proto.BizIdentityInfo.BizIdentityInfoActualActorsType[message.actualActors] : message.actualActors; - if (message.privacyModeTs != null && message.hasOwnProperty("privacyModeTs")) - if (typeof message.privacyModeTs === "number") - object.privacyModeTs = options.longs === String ? String(message.privacyModeTs) : message.privacyModeTs; - else - object.privacyModeTs = options.longs === String ? $util.Long.prototype.toString.call(message.privacyModeTs) : options.longs === Number ? new $util.LongBits(message.privacyModeTs.low >>> 0, message.privacyModeTs.high >>> 0).toNumber(true) : message.privacyModeTs; - return object; - }; - - /** - * Converts this BizIdentityInfo to JSON. - * @function toJSON - * @memberof proto.BizIdentityInfo - * @instance - * @returns {Object.} JSON object - */ - BizIdentityInfo.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - /** - * BizIdentityInfoVerifiedLevelValue enum. - * @name proto.BizIdentityInfo.BizIdentityInfoVerifiedLevelValue - * @enum {number} - * @property {number} UNKNOWN=0 UNKNOWN value - * @property {number} LOW=1 LOW value - * @property {number} HIGH=2 HIGH value - */ - BizIdentityInfo.BizIdentityInfoVerifiedLevelValue = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "UNKNOWN"] = 0; - values[valuesById[1] = "LOW"] = 1; - values[valuesById[2] = "HIGH"] = 2; - return values; - })(); - - /** - * BizIdentityInfoHostStorageType enum. - * @name proto.BizIdentityInfo.BizIdentityInfoHostStorageType - * @enum {number} - * @property {number} ON_PREMISE=0 ON_PREMISE value - * @property {number} FACEBOOK=1 FACEBOOK value - */ - BizIdentityInfo.BizIdentityInfoHostStorageType = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "ON_PREMISE"] = 0; - values[valuesById[1] = "FACEBOOK"] = 1; - return values; - })(); - - /** - * BizIdentityInfoActualActorsType enum. - * @name proto.BizIdentityInfo.BizIdentityInfoActualActorsType - * @enum {number} - * @property {number} SELF=0 SELF value - * @property {number} BSP=1 BSP value - */ - BizIdentityInfo.BizIdentityInfoActualActorsType = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "SELF"] = 0; - values[valuesById[1] = "BSP"] = 1; - return values; - })(); - - return BizIdentityInfo; - })(); - - proto.BizAccountLinkInfo = (function() { - - /** - * Properties of a BizAccountLinkInfo. - * @memberof proto - * @interface IBizAccountLinkInfo - * @property {number|Long|null} [whatsappBizAcctFbid] BizAccountLinkInfo whatsappBizAcctFbid - * @property {string|null} [whatsappAcctNumber] BizAccountLinkInfo whatsappAcctNumber - * @property {number|Long|null} [issueTime] BizAccountLinkInfo issueTime - * @property {proto.BizAccountLinkInfo.BizAccountLinkInfoHostStorageType|null} [hostStorage] BizAccountLinkInfo hostStorage - * @property {proto.BizAccountLinkInfo.BizAccountLinkInfoAccountType|null} [accountType] BizAccountLinkInfo accountType - */ - - /** - * Constructs a new BizAccountLinkInfo. - * @memberof proto - * @classdesc Represents a BizAccountLinkInfo. - * @implements IBizAccountLinkInfo - * @constructor - * @param {proto.IBizAccountLinkInfo=} [properties] Properties to set - */ - function BizAccountLinkInfo(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * BizAccountLinkInfo whatsappBizAcctFbid. - * @member {number|Long} whatsappBizAcctFbid - * @memberof proto.BizAccountLinkInfo - * @instance - */ - BizAccountLinkInfo.prototype.whatsappBizAcctFbid = $util.Long ? $util.Long.fromBits(0,0,true) : 0; - - /** - * BizAccountLinkInfo whatsappAcctNumber. - * @member {string} whatsappAcctNumber - * @memberof proto.BizAccountLinkInfo - * @instance - */ - BizAccountLinkInfo.prototype.whatsappAcctNumber = ""; - - /** - * BizAccountLinkInfo issueTime. - * @member {number|Long} issueTime - * @memberof proto.BizAccountLinkInfo - * @instance - */ - BizAccountLinkInfo.prototype.issueTime = $util.Long ? $util.Long.fromBits(0,0,true) : 0; - - /** - * BizAccountLinkInfo hostStorage. - * @member {proto.BizAccountLinkInfo.BizAccountLinkInfoHostStorageType} hostStorage - * @memberof proto.BizAccountLinkInfo - * @instance - */ - BizAccountLinkInfo.prototype.hostStorage = 0; - - /** - * BizAccountLinkInfo accountType. - * @member {proto.BizAccountLinkInfo.BizAccountLinkInfoAccountType} accountType - * @memberof proto.BizAccountLinkInfo - * @instance - */ - BizAccountLinkInfo.prototype.accountType = 0; - - /** - * Creates a new BizAccountLinkInfo instance using the specified properties. - * @function create - * @memberof proto.BizAccountLinkInfo - * @static - * @param {proto.IBizAccountLinkInfo=} [properties] Properties to set - * @returns {proto.BizAccountLinkInfo} BizAccountLinkInfo instance - */ - BizAccountLinkInfo.create = function create(properties) { - return new BizAccountLinkInfo(properties); - }; - - /** - * Encodes the specified BizAccountLinkInfo message. Does not implicitly {@link proto.BizAccountLinkInfo.verify|verify} messages. - * @function encode - * @memberof proto.BizAccountLinkInfo - * @static - * @param {proto.IBizAccountLinkInfo} message BizAccountLinkInfo message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - BizAccountLinkInfo.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.whatsappBizAcctFbid != null && Object.hasOwnProperty.call(message, "whatsappBizAcctFbid")) - writer.uint32(/* id 1, wireType 0 =*/8).uint64(message.whatsappBizAcctFbid); - if (message.whatsappAcctNumber != null && Object.hasOwnProperty.call(message, "whatsappAcctNumber")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.whatsappAcctNumber); - if (message.issueTime != null && Object.hasOwnProperty.call(message, "issueTime")) - writer.uint32(/* id 3, wireType 0 =*/24).uint64(message.issueTime); - if (message.hostStorage != null && Object.hasOwnProperty.call(message, "hostStorage")) - writer.uint32(/* id 4, wireType 0 =*/32).int32(message.hostStorage); - if (message.accountType != null && Object.hasOwnProperty.call(message, "accountType")) - writer.uint32(/* id 5, wireType 0 =*/40).int32(message.accountType); - return writer; - }; - - /** - * Encodes the specified BizAccountLinkInfo message, length delimited. Does not implicitly {@link proto.BizAccountLinkInfo.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.BizAccountLinkInfo - * @static - * @param {proto.IBizAccountLinkInfo} message BizAccountLinkInfo message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - BizAccountLinkInfo.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a BizAccountLinkInfo message from the specified reader or buffer. - * @function decode - * @memberof proto.BizAccountLinkInfo - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.BizAccountLinkInfo} BizAccountLinkInfo - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - BizAccountLinkInfo.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.BizAccountLinkInfo(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.whatsappBizAcctFbid = reader.uint64(); - break; - case 2: - message.whatsappAcctNumber = reader.string(); - break; - case 3: - message.issueTime = reader.uint64(); - break; - case 4: - message.hostStorage = reader.int32(); - break; - case 5: - message.accountType = reader.int32(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a BizAccountLinkInfo message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.BizAccountLinkInfo - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.BizAccountLinkInfo} BizAccountLinkInfo - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - BizAccountLinkInfo.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a BizAccountLinkInfo message. - * @function verify - * @memberof proto.BizAccountLinkInfo - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - BizAccountLinkInfo.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.whatsappBizAcctFbid != null && message.hasOwnProperty("whatsappBizAcctFbid")) - if (!$util.isInteger(message.whatsappBizAcctFbid) && !(message.whatsappBizAcctFbid && $util.isInteger(message.whatsappBizAcctFbid.low) && $util.isInteger(message.whatsappBizAcctFbid.high))) - return "whatsappBizAcctFbid: integer|Long expected"; - if (message.whatsappAcctNumber != null && message.hasOwnProperty("whatsappAcctNumber")) - if (!$util.isString(message.whatsappAcctNumber)) - return "whatsappAcctNumber: string expected"; - if (message.issueTime != null && message.hasOwnProperty("issueTime")) - if (!$util.isInteger(message.issueTime) && !(message.issueTime && $util.isInteger(message.issueTime.low) && $util.isInteger(message.issueTime.high))) - return "issueTime: integer|Long expected"; - if (message.hostStorage != null && message.hasOwnProperty("hostStorage")) - switch (message.hostStorage) { - default: - return "hostStorage: enum value expected"; - case 0: - case 1: - break; - } - if (message.accountType != null && message.hasOwnProperty("accountType")) - switch (message.accountType) { - default: - return "accountType: enum value expected"; - case 0: - case 1: - break; - } - return null; - }; - - /** - * Creates a BizAccountLinkInfo message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.BizAccountLinkInfo - * @static - * @param {Object.} object Plain object - * @returns {proto.BizAccountLinkInfo} BizAccountLinkInfo - */ - BizAccountLinkInfo.fromObject = function fromObject(object) { - if (object instanceof $root.proto.BizAccountLinkInfo) - return object; - var message = new $root.proto.BizAccountLinkInfo(); - if (object.whatsappBizAcctFbid != null) - if ($util.Long) - (message.whatsappBizAcctFbid = $util.Long.fromValue(object.whatsappBizAcctFbid)).unsigned = true; - else if (typeof object.whatsappBizAcctFbid === "string") - message.whatsappBizAcctFbid = parseInt(object.whatsappBizAcctFbid, 10); - else if (typeof object.whatsappBizAcctFbid === "number") - message.whatsappBizAcctFbid = object.whatsappBizAcctFbid; - else if (typeof object.whatsappBizAcctFbid === "object") - message.whatsappBizAcctFbid = new $util.LongBits(object.whatsappBizAcctFbid.low >>> 0, object.whatsappBizAcctFbid.high >>> 0).toNumber(true); - if (object.whatsappAcctNumber != null) - message.whatsappAcctNumber = String(object.whatsappAcctNumber); - if (object.issueTime != null) - if ($util.Long) - (message.issueTime = $util.Long.fromValue(object.issueTime)).unsigned = true; - else if (typeof object.issueTime === "string") - message.issueTime = parseInt(object.issueTime, 10); - else if (typeof object.issueTime === "number") - message.issueTime = object.issueTime; - else if (typeof object.issueTime === "object") - message.issueTime = new $util.LongBits(object.issueTime.low >>> 0, object.issueTime.high >>> 0).toNumber(true); - switch (object.hostStorage) { - case "ON_PREMISE": - case 0: - message.hostStorage = 0; - break; - case "FACEBOOK": - case 1: - message.hostStorage = 1; - break; - } - switch (object.accountType) { - case "ENTERPRISE": - case 0: - message.accountType = 0; - break; - case "PAGE": - case 1: - message.accountType = 1; - break; - } - return message; - }; - - /** - * Creates a plain object from a BizAccountLinkInfo message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.BizAccountLinkInfo - * @static - * @param {proto.BizAccountLinkInfo} message BizAccountLinkInfo - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - BizAccountLinkInfo.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - if ($util.Long) { - var long = new $util.Long(0, 0, true); - object.whatsappBizAcctFbid = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; - } else - object.whatsappBizAcctFbid = options.longs === String ? "0" : 0; - object.whatsappAcctNumber = ""; - if ($util.Long) { - var long = new $util.Long(0, 0, true); - object.issueTime = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; - } else - object.issueTime = options.longs === String ? "0" : 0; - object.hostStorage = options.enums === String ? "ON_PREMISE" : 0; - object.accountType = options.enums === String ? "ENTERPRISE" : 0; - } - if (message.whatsappBizAcctFbid != null && message.hasOwnProperty("whatsappBizAcctFbid")) - if (typeof message.whatsappBizAcctFbid === "number") - object.whatsappBizAcctFbid = options.longs === String ? String(message.whatsappBizAcctFbid) : message.whatsappBizAcctFbid; - else - object.whatsappBizAcctFbid = options.longs === String ? $util.Long.prototype.toString.call(message.whatsappBizAcctFbid) : options.longs === Number ? new $util.LongBits(message.whatsappBizAcctFbid.low >>> 0, message.whatsappBizAcctFbid.high >>> 0).toNumber(true) : message.whatsappBizAcctFbid; - if (message.whatsappAcctNumber != null && message.hasOwnProperty("whatsappAcctNumber")) - object.whatsappAcctNumber = message.whatsappAcctNumber; - if (message.issueTime != null && message.hasOwnProperty("issueTime")) - if (typeof message.issueTime === "number") - object.issueTime = options.longs === String ? String(message.issueTime) : message.issueTime; - else - object.issueTime = options.longs === String ? $util.Long.prototype.toString.call(message.issueTime) : options.longs === Number ? new $util.LongBits(message.issueTime.low >>> 0, message.issueTime.high >>> 0).toNumber(true) : message.issueTime; - if (message.hostStorage != null && message.hasOwnProperty("hostStorage")) - object.hostStorage = options.enums === String ? $root.proto.BizAccountLinkInfo.BizAccountLinkInfoHostStorageType[message.hostStorage] : message.hostStorage; - if (message.accountType != null && message.hasOwnProperty("accountType")) - object.accountType = options.enums === String ? $root.proto.BizAccountLinkInfo.BizAccountLinkInfoAccountType[message.accountType] : message.accountType; - return object; - }; - - /** - * Converts this BizAccountLinkInfo to JSON. - * @function toJSON - * @memberof proto.BizAccountLinkInfo - * @instance - * @returns {Object.} JSON object - */ - BizAccountLinkInfo.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - /** - * BizAccountLinkInfoHostStorageType enum. - * @name proto.BizAccountLinkInfo.BizAccountLinkInfoHostStorageType - * @enum {number} - * @property {number} ON_PREMISE=0 ON_PREMISE value - * @property {number} FACEBOOK=1 FACEBOOK value - */ - BizAccountLinkInfo.BizAccountLinkInfoHostStorageType = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "ON_PREMISE"] = 0; - values[valuesById[1] = "FACEBOOK"] = 1; - return values; - })(); - - /** - * BizAccountLinkInfoAccountType enum. - * @name proto.BizAccountLinkInfo.BizAccountLinkInfoAccountType - * @enum {number} - * @property {number} ENTERPRISE=0 ENTERPRISE value - * @property {number} PAGE=1 PAGE value - */ - BizAccountLinkInfo.BizAccountLinkInfoAccountType = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "ENTERPRISE"] = 0; - values[valuesById[1] = "PAGE"] = 1; - return values; - })(); - - return BizAccountLinkInfo; - })(); - - proto.BizAccountPayload = (function() { - - /** - * Properties of a BizAccountPayload. - * @memberof proto - * @interface IBizAccountPayload - * @property {proto.IVerifiedNameCertificate|null} [vnameCert] BizAccountPayload vnameCert - * @property {Uint8Array|null} [bizAcctLinkInfo] BizAccountPayload bizAcctLinkInfo - */ - - /** - * Constructs a new BizAccountPayload. - * @memberof proto - * @classdesc Represents a BizAccountPayload. - * @implements IBizAccountPayload - * @constructor - * @param {proto.IBizAccountPayload=} [properties] Properties to set - */ - function BizAccountPayload(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * BizAccountPayload vnameCert. - * @member {proto.IVerifiedNameCertificate|null|undefined} vnameCert - * @memberof proto.BizAccountPayload - * @instance - */ - BizAccountPayload.prototype.vnameCert = null; - - /** - * BizAccountPayload bizAcctLinkInfo. - * @member {Uint8Array} bizAcctLinkInfo - * @memberof proto.BizAccountPayload - * @instance - */ - BizAccountPayload.prototype.bizAcctLinkInfo = $util.newBuffer([]); - - /** - * Creates a new BizAccountPayload instance using the specified properties. - * @function create - * @memberof proto.BizAccountPayload - * @static - * @param {proto.IBizAccountPayload=} [properties] Properties to set - * @returns {proto.BizAccountPayload} BizAccountPayload instance - */ - BizAccountPayload.create = function create(properties) { - return new BizAccountPayload(properties); - }; - - /** - * Encodes the specified BizAccountPayload message. Does not implicitly {@link proto.BizAccountPayload.verify|verify} messages. - * @function encode - * @memberof proto.BizAccountPayload - * @static - * @param {proto.IBizAccountPayload} message BizAccountPayload message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - BizAccountPayload.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.vnameCert != null && Object.hasOwnProperty.call(message, "vnameCert")) - $root.proto.VerifiedNameCertificate.encode(message.vnameCert, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); - if (message.bizAcctLinkInfo != null && Object.hasOwnProperty.call(message, "bizAcctLinkInfo")) - writer.uint32(/* id 2, wireType 2 =*/18).bytes(message.bizAcctLinkInfo); - return writer; - }; - - /** - * Encodes the specified BizAccountPayload message, length delimited. Does not implicitly {@link proto.BizAccountPayload.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.BizAccountPayload - * @static - * @param {proto.IBizAccountPayload} message BizAccountPayload message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - BizAccountPayload.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a BizAccountPayload message from the specified reader or buffer. - * @function decode - * @memberof proto.BizAccountPayload - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.BizAccountPayload} BizAccountPayload - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - BizAccountPayload.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.BizAccountPayload(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.vnameCert = $root.proto.VerifiedNameCertificate.decode(reader, reader.uint32()); - break; - case 2: - message.bizAcctLinkInfo = reader.bytes(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a BizAccountPayload message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.BizAccountPayload - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.BizAccountPayload} BizAccountPayload - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - BizAccountPayload.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a BizAccountPayload message. - * @function verify - * @memberof proto.BizAccountPayload - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - BizAccountPayload.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.vnameCert != null && message.hasOwnProperty("vnameCert")) { - var error = $root.proto.VerifiedNameCertificate.verify(message.vnameCert); - if (error) - return "vnameCert." + error; - } - if (message.bizAcctLinkInfo != null && message.hasOwnProperty("bizAcctLinkInfo")) - if (!(message.bizAcctLinkInfo && typeof message.bizAcctLinkInfo.length === "number" || $util.isString(message.bizAcctLinkInfo))) - return "bizAcctLinkInfo: buffer expected"; - return null; - }; - - /** - * Creates a BizAccountPayload message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.BizAccountPayload - * @static - * @param {Object.} object Plain object - * @returns {proto.BizAccountPayload} BizAccountPayload - */ - BizAccountPayload.fromObject = function fromObject(object) { - if (object instanceof $root.proto.BizAccountPayload) - return object; - var message = new $root.proto.BizAccountPayload(); - if (object.vnameCert != null) { - if (typeof object.vnameCert !== "object") - throw TypeError(".proto.BizAccountPayload.vnameCert: object expected"); - message.vnameCert = $root.proto.VerifiedNameCertificate.fromObject(object.vnameCert); - } - if (object.bizAcctLinkInfo != null) - if (typeof object.bizAcctLinkInfo === "string") - $util.base64.decode(object.bizAcctLinkInfo, message.bizAcctLinkInfo = $util.newBuffer($util.base64.length(object.bizAcctLinkInfo)), 0); - else if (object.bizAcctLinkInfo.length) - message.bizAcctLinkInfo = object.bizAcctLinkInfo; - return message; - }; - - /** - * Creates a plain object from a BizAccountPayload message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.BizAccountPayload - * @static - * @param {proto.BizAccountPayload} message BizAccountPayload - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - BizAccountPayload.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.vnameCert = null; - if (options.bytes === String) - object.bizAcctLinkInfo = ""; - else { - object.bizAcctLinkInfo = []; - if (options.bytes !== Array) - object.bizAcctLinkInfo = $util.newBuffer(object.bizAcctLinkInfo); - } - } - if (message.vnameCert != null && message.hasOwnProperty("vnameCert")) - object.vnameCert = $root.proto.VerifiedNameCertificate.toObject(message.vnameCert, options); - if (message.bizAcctLinkInfo != null && message.hasOwnProperty("bizAcctLinkInfo")) - object.bizAcctLinkInfo = options.bytes === String ? $util.base64.encode(message.bizAcctLinkInfo, 0, message.bizAcctLinkInfo.length) : options.bytes === Array ? Array.prototype.slice.call(message.bizAcctLinkInfo) : message.bizAcctLinkInfo; - return object; - }; - - /** - * Converts this BizAccountPayload to JSON. - * @function toJSON - * @memberof proto.BizAccountPayload - * @instance - * @returns {Object.} JSON object - */ - BizAccountPayload.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return BizAccountPayload; - })(); - - proto.VerifiedNameCertificate = (function() { - - /** - * Properties of a VerifiedNameCertificate. - * @memberof proto - * @interface IVerifiedNameCertificate - * @property {Uint8Array|null} [details] VerifiedNameCertificate details - * @property {Uint8Array|null} [signature] VerifiedNameCertificate signature - * @property {Uint8Array|null} [serverSignature] VerifiedNameCertificate serverSignature - */ - - /** - * Constructs a new VerifiedNameCertificate. - * @memberof proto - * @classdesc Represents a VerifiedNameCertificate. - * @implements IVerifiedNameCertificate - * @constructor - * @param {proto.IVerifiedNameCertificate=} [properties] Properties to set - */ - function VerifiedNameCertificate(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * VerifiedNameCertificate details. - * @member {Uint8Array} details - * @memberof proto.VerifiedNameCertificate - * @instance - */ - VerifiedNameCertificate.prototype.details = $util.newBuffer([]); - - /** - * VerifiedNameCertificate signature. - * @member {Uint8Array} signature - * @memberof proto.VerifiedNameCertificate - * @instance - */ - VerifiedNameCertificate.prototype.signature = $util.newBuffer([]); - - /** - * VerifiedNameCertificate serverSignature. - * @member {Uint8Array} serverSignature - * @memberof proto.VerifiedNameCertificate - * @instance - */ - VerifiedNameCertificate.prototype.serverSignature = $util.newBuffer([]); - - /** - * Creates a new VerifiedNameCertificate instance using the specified properties. - * @function create - * @memberof proto.VerifiedNameCertificate - * @static - * @param {proto.IVerifiedNameCertificate=} [properties] Properties to set - * @returns {proto.VerifiedNameCertificate} VerifiedNameCertificate instance - */ - VerifiedNameCertificate.create = function create(properties) { - return new VerifiedNameCertificate(properties); - }; - - /** - * Encodes the specified VerifiedNameCertificate message. Does not implicitly {@link proto.VerifiedNameCertificate.verify|verify} messages. - * @function encode - * @memberof proto.VerifiedNameCertificate - * @static - * @param {proto.IVerifiedNameCertificate} message VerifiedNameCertificate message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - VerifiedNameCertificate.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.details != null && Object.hasOwnProperty.call(message, "details")) - writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.details); - if (message.signature != null && Object.hasOwnProperty.call(message, "signature")) - writer.uint32(/* id 2, wireType 2 =*/18).bytes(message.signature); - if (message.serverSignature != null && Object.hasOwnProperty.call(message, "serverSignature")) - writer.uint32(/* id 3, wireType 2 =*/26).bytes(message.serverSignature); - return writer; - }; - - /** - * Encodes the specified VerifiedNameCertificate message, length delimited. Does not implicitly {@link proto.VerifiedNameCertificate.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.VerifiedNameCertificate - * @static - * @param {proto.IVerifiedNameCertificate} message VerifiedNameCertificate message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - VerifiedNameCertificate.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a VerifiedNameCertificate message from the specified reader or buffer. - * @function decode - * @memberof proto.VerifiedNameCertificate - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.VerifiedNameCertificate} VerifiedNameCertificate - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - VerifiedNameCertificate.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.VerifiedNameCertificate(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.details = reader.bytes(); - break; - case 2: - message.signature = reader.bytes(); - break; - case 3: - message.serverSignature = reader.bytes(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a VerifiedNameCertificate message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.VerifiedNameCertificate - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.VerifiedNameCertificate} VerifiedNameCertificate - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - VerifiedNameCertificate.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a VerifiedNameCertificate message. - * @function verify - * @memberof proto.VerifiedNameCertificate - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - VerifiedNameCertificate.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.details != null && message.hasOwnProperty("details")) - if (!(message.details && typeof message.details.length === "number" || $util.isString(message.details))) - return "details: buffer expected"; - if (message.signature != null && message.hasOwnProperty("signature")) - if (!(message.signature && typeof message.signature.length === "number" || $util.isString(message.signature))) - return "signature: buffer expected"; - if (message.serverSignature != null && message.hasOwnProperty("serverSignature")) - if (!(message.serverSignature && typeof message.serverSignature.length === "number" || $util.isString(message.serverSignature))) - return "serverSignature: buffer expected"; - return null; - }; - - /** - * Creates a VerifiedNameCertificate message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.VerifiedNameCertificate - * @static - * @param {Object.} object Plain object - * @returns {proto.VerifiedNameCertificate} VerifiedNameCertificate - */ - VerifiedNameCertificate.fromObject = function fromObject(object) { - if (object instanceof $root.proto.VerifiedNameCertificate) - return object; - var message = new $root.proto.VerifiedNameCertificate(); - if (object.details != null) - if (typeof object.details === "string") - $util.base64.decode(object.details, message.details = $util.newBuffer($util.base64.length(object.details)), 0); - else if (object.details.length) - message.details = object.details; - if (object.signature != null) - if (typeof object.signature === "string") - $util.base64.decode(object.signature, message.signature = $util.newBuffer($util.base64.length(object.signature)), 0); - else if (object.signature.length) - message.signature = object.signature; - if (object.serverSignature != null) - if (typeof object.serverSignature === "string") - $util.base64.decode(object.serverSignature, message.serverSignature = $util.newBuffer($util.base64.length(object.serverSignature)), 0); - else if (object.serverSignature.length) - message.serverSignature = object.serverSignature; - return message; - }; - - /** - * Creates a plain object from a VerifiedNameCertificate message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.VerifiedNameCertificate - * @static - * @param {proto.VerifiedNameCertificate} message VerifiedNameCertificate - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - VerifiedNameCertificate.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - if (options.bytes === String) - object.details = ""; - else { - object.details = []; - if (options.bytes !== Array) - object.details = $util.newBuffer(object.details); - } - if (options.bytes === String) - object.signature = ""; - else { - object.signature = []; - if (options.bytes !== Array) - object.signature = $util.newBuffer(object.signature); - } - if (options.bytes === String) - object.serverSignature = ""; - else { - object.serverSignature = []; - if (options.bytes !== Array) - object.serverSignature = $util.newBuffer(object.serverSignature); - } - } - if (message.details != null && message.hasOwnProperty("details")) - object.details = options.bytes === String ? $util.base64.encode(message.details, 0, message.details.length) : options.bytes === Array ? Array.prototype.slice.call(message.details) : message.details; - if (message.signature != null && message.hasOwnProperty("signature")) - object.signature = options.bytes === String ? $util.base64.encode(message.signature, 0, message.signature.length) : options.bytes === Array ? Array.prototype.slice.call(message.signature) : message.signature; - if (message.serverSignature != null && message.hasOwnProperty("serverSignature")) - object.serverSignature = options.bytes === String ? $util.base64.encode(message.serverSignature, 0, message.serverSignature.length) : options.bytes === Array ? Array.prototype.slice.call(message.serverSignature) : message.serverSignature; - return object; - }; - - /** - * Converts this VerifiedNameCertificate to JSON. - * @function toJSON - * @memberof proto.VerifiedNameCertificate - * @instance - * @returns {Object.} JSON object - */ - VerifiedNameCertificate.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return VerifiedNameCertificate; - })(); - - proto.LocalizedName = (function() { - - /** - * Properties of a LocalizedName. - * @memberof proto - * @interface ILocalizedName - * @property {string|null} [lg] LocalizedName lg - * @property {string|null} [lc] LocalizedName lc - * @property {string|null} [verifiedName] LocalizedName verifiedName - */ - - /** - * Constructs a new LocalizedName. - * @memberof proto - * @classdesc Represents a LocalizedName. - * @implements ILocalizedName - * @constructor - * @param {proto.ILocalizedName=} [properties] Properties to set - */ - function LocalizedName(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * LocalizedName lg. - * @member {string} lg - * @memberof proto.LocalizedName - * @instance - */ - LocalizedName.prototype.lg = ""; - - /** - * LocalizedName lc. - * @member {string} lc - * @memberof proto.LocalizedName - * @instance - */ - LocalizedName.prototype.lc = ""; - - /** - * LocalizedName verifiedName. - * @member {string} verifiedName - * @memberof proto.LocalizedName - * @instance - */ - LocalizedName.prototype.verifiedName = ""; - - /** - * Creates a new LocalizedName instance using the specified properties. - * @function create - * @memberof proto.LocalizedName - * @static - * @param {proto.ILocalizedName=} [properties] Properties to set - * @returns {proto.LocalizedName} LocalizedName instance - */ - LocalizedName.create = function create(properties) { - return new LocalizedName(properties); - }; - - /** - * Encodes the specified LocalizedName message. Does not implicitly {@link proto.LocalizedName.verify|verify} messages. - * @function encode - * @memberof proto.LocalizedName - * @static - * @param {proto.ILocalizedName} message LocalizedName message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - LocalizedName.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.lg != null && Object.hasOwnProperty.call(message, "lg")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.lg); - if (message.lc != null && Object.hasOwnProperty.call(message, "lc")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.lc); - if (message.verifiedName != null && Object.hasOwnProperty.call(message, "verifiedName")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.verifiedName); - return writer; - }; - - /** - * Encodes the specified LocalizedName message, length delimited. Does not implicitly {@link proto.LocalizedName.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.LocalizedName - * @static - * @param {proto.ILocalizedName} message LocalizedName message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - LocalizedName.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a LocalizedName message from the specified reader or buffer. - * @function decode - * @memberof proto.LocalizedName - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.LocalizedName} LocalizedName - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - LocalizedName.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.LocalizedName(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.lg = reader.string(); - break; - case 2: - message.lc = reader.string(); - break; - case 3: - message.verifiedName = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a LocalizedName message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.LocalizedName - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.LocalizedName} LocalizedName - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - LocalizedName.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a LocalizedName message. - * @function verify - * @memberof proto.LocalizedName - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - LocalizedName.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.lg != null && message.hasOwnProperty("lg")) - if (!$util.isString(message.lg)) - return "lg: string expected"; - if (message.lc != null && message.hasOwnProperty("lc")) - if (!$util.isString(message.lc)) - return "lc: string expected"; - if (message.verifiedName != null && message.hasOwnProperty("verifiedName")) - if (!$util.isString(message.verifiedName)) - return "verifiedName: string expected"; - return null; - }; - - /** - * Creates a LocalizedName message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.LocalizedName - * @static - * @param {Object.} object Plain object - * @returns {proto.LocalizedName} LocalizedName - */ - LocalizedName.fromObject = function fromObject(object) { - if (object instanceof $root.proto.LocalizedName) - return object; - var message = new $root.proto.LocalizedName(); - if (object.lg != null) - message.lg = String(object.lg); - if (object.lc != null) - message.lc = String(object.lc); - if (object.verifiedName != null) - message.verifiedName = String(object.verifiedName); - return message; - }; - - /** - * Creates a plain object from a LocalizedName message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.LocalizedName - * @static - * @param {proto.LocalizedName} message LocalizedName - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - LocalizedName.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.lg = ""; - object.lc = ""; - object.verifiedName = ""; - } - if (message.lg != null && message.hasOwnProperty("lg")) - object.lg = message.lg; - if (message.lc != null && message.hasOwnProperty("lc")) - object.lc = message.lc; - if (message.verifiedName != null && message.hasOwnProperty("verifiedName")) - object.verifiedName = message.verifiedName; - return object; - }; - - /** - * Converts this LocalizedName to JSON. - * @function toJSON - * @memberof proto.LocalizedName - * @instance - * @returns {Object.} JSON object - */ - LocalizedName.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return LocalizedName; - })(); - - proto.SyncActionData = (function() { - - /** - * Properties of a SyncActionData. - * @memberof proto - * @interface ISyncActionData - * @property {Uint8Array|null} [index] SyncActionData index - * @property {proto.ISyncActionValue|null} [value] SyncActionData value - * @property {Uint8Array|null} [padding] SyncActionData padding - * @property {number|null} [version] SyncActionData version - */ - - /** - * Constructs a new SyncActionData. - * @memberof proto - * @classdesc Represents a SyncActionData. - * @implements ISyncActionData - * @constructor - * @param {proto.ISyncActionData=} [properties] Properties to set - */ - function SyncActionData(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * SyncActionData index. - * @member {Uint8Array} index - * @memberof proto.SyncActionData - * @instance - */ - SyncActionData.prototype.index = $util.newBuffer([]); - - /** - * SyncActionData value. - * @member {proto.ISyncActionValue|null|undefined} value - * @memberof proto.SyncActionData - * @instance - */ - SyncActionData.prototype.value = null; - - /** - * SyncActionData padding. - * @member {Uint8Array} padding - * @memberof proto.SyncActionData - * @instance - */ - SyncActionData.prototype.padding = $util.newBuffer([]); - - /** - * SyncActionData version. - * @member {number} version - * @memberof proto.SyncActionData - * @instance - */ - SyncActionData.prototype.version = 0; - - /** - * Creates a new SyncActionData instance using the specified properties. - * @function create - * @memberof proto.SyncActionData - * @static - * @param {proto.ISyncActionData=} [properties] Properties to set - * @returns {proto.SyncActionData} SyncActionData instance - */ - SyncActionData.create = function create(properties) { - return new SyncActionData(properties); - }; - - /** - * Encodes the specified SyncActionData message. Does not implicitly {@link proto.SyncActionData.verify|verify} messages. - * @function encode - * @memberof proto.SyncActionData - * @static - * @param {proto.ISyncActionData} message SyncActionData message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - SyncActionData.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.index != null && Object.hasOwnProperty.call(message, "index")) - writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.index); - if (message.value != null && Object.hasOwnProperty.call(message, "value")) - $root.proto.SyncActionValue.encode(message.value, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - if (message.padding != null && Object.hasOwnProperty.call(message, "padding")) - writer.uint32(/* id 3, wireType 2 =*/26).bytes(message.padding); - if (message.version != null && Object.hasOwnProperty.call(message, "version")) - writer.uint32(/* id 4, wireType 0 =*/32).int32(message.version); - return writer; - }; - - /** - * Encodes the specified SyncActionData message, length delimited. Does not implicitly {@link proto.SyncActionData.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.SyncActionData - * @static - * @param {proto.ISyncActionData} message SyncActionData message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - SyncActionData.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a SyncActionData message from the specified reader or buffer. - * @function decode - * @memberof proto.SyncActionData - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.SyncActionData} SyncActionData - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - SyncActionData.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.SyncActionData(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.index = reader.bytes(); - break; - case 2: - message.value = $root.proto.SyncActionValue.decode(reader, reader.uint32()); - break; - case 3: - message.padding = reader.bytes(); - break; - case 4: - message.version = reader.int32(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a SyncActionData message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.SyncActionData - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.SyncActionData} SyncActionData - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - SyncActionData.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a SyncActionData message. - * @function verify - * @memberof proto.SyncActionData - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - SyncActionData.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.index != null && message.hasOwnProperty("index")) - if (!(message.index && typeof message.index.length === "number" || $util.isString(message.index))) - return "index: buffer expected"; - if (message.value != null && message.hasOwnProperty("value")) { - var error = $root.proto.SyncActionValue.verify(message.value); - if (error) - return "value." + error; - } - if (message.padding != null && message.hasOwnProperty("padding")) - if (!(message.padding && typeof message.padding.length === "number" || $util.isString(message.padding))) - return "padding: buffer expected"; - if (message.version != null && message.hasOwnProperty("version")) - if (!$util.isInteger(message.version)) - return "version: integer expected"; - return null; - }; - - /** - * Creates a SyncActionData message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.SyncActionData - * @static - * @param {Object.} object Plain object - * @returns {proto.SyncActionData} SyncActionData - */ - SyncActionData.fromObject = function fromObject(object) { - if (object instanceof $root.proto.SyncActionData) - return object; - var message = new $root.proto.SyncActionData(); - if (object.index != null) - if (typeof object.index === "string") - $util.base64.decode(object.index, message.index = $util.newBuffer($util.base64.length(object.index)), 0); - else if (object.index.length) - message.index = object.index; - if (object.value != null) { - if (typeof object.value !== "object") - throw TypeError(".proto.SyncActionData.value: object expected"); - message.value = $root.proto.SyncActionValue.fromObject(object.value); - } - if (object.padding != null) - if (typeof object.padding === "string") - $util.base64.decode(object.padding, message.padding = $util.newBuffer($util.base64.length(object.padding)), 0); - else if (object.padding.length) - message.padding = object.padding; - if (object.version != null) - message.version = object.version | 0; - return message; - }; - - /** - * Creates a plain object from a SyncActionData message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.SyncActionData - * @static - * @param {proto.SyncActionData} message SyncActionData - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - SyncActionData.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - if (options.bytes === String) - object.index = ""; - else { - object.index = []; - if (options.bytes !== Array) - object.index = $util.newBuffer(object.index); - } - object.value = null; - if (options.bytes === String) - object.padding = ""; - else { - object.padding = []; - if (options.bytes !== Array) - object.padding = $util.newBuffer(object.padding); - } - object.version = 0; - } - if (message.index != null && message.hasOwnProperty("index")) - object.index = options.bytes === String ? $util.base64.encode(message.index, 0, message.index.length) : options.bytes === Array ? Array.prototype.slice.call(message.index) : message.index; - if (message.value != null && message.hasOwnProperty("value")) - object.value = $root.proto.SyncActionValue.toObject(message.value, options); - if (message.padding != null && message.hasOwnProperty("padding")) - object.padding = options.bytes === String ? $util.base64.encode(message.padding, 0, message.padding.length) : options.bytes === Array ? Array.prototype.slice.call(message.padding) : message.padding; - if (message.version != null && message.hasOwnProperty("version")) - object.version = message.version; - return object; - }; - - /** - * Converts this SyncActionData to JSON. - * @function toJSON - * @memberof proto.SyncActionData - * @instance - * @returns {Object.} JSON object - */ - SyncActionData.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return SyncActionData; - })(); - - proto.StarAction = (function() { - - /** - * Properties of a StarAction. - * @memberof proto - * @interface IStarAction - * @property {boolean|null} [starred] StarAction starred - */ - - /** - * Constructs a new StarAction. - * @memberof proto - * @classdesc Represents a StarAction. - * @implements IStarAction - * @constructor - * @param {proto.IStarAction=} [properties] Properties to set - */ - function StarAction(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * StarAction starred. - * @member {boolean} starred - * @memberof proto.StarAction - * @instance - */ - StarAction.prototype.starred = false; - - /** - * Creates a new StarAction instance using the specified properties. - * @function create - * @memberof proto.StarAction - * @static - * @param {proto.IStarAction=} [properties] Properties to set - * @returns {proto.StarAction} StarAction instance - */ - StarAction.create = function create(properties) { - return new StarAction(properties); - }; - - /** - * Encodes the specified StarAction message. Does not implicitly {@link proto.StarAction.verify|verify} messages. - * @function encode - * @memberof proto.StarAction - * @static - * @param {proto.IStarAction} message StarAction message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - StarAction.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.starred != null && Object.hasOwnProperty.call(message, "starred")) - writer.uint32(/* id 1, wireType 0 =*/8).bool(message.starred); - return writer; - }; - - /** - * Encodes the specified StarAction message, length delimited. Does not implicitly {@link proto.StarAction.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.StarAction - * @static - * @param {proto.IStarAction} message StarAction message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - StarAction.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a StarAction message from the specified reader or buffer. - * @function decode - * @memberof proto.StarAction - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.StarAction} StarAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - StarAction.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.StarAction(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.starred = reader.bool(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a StarAction message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.StarAction - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.StarAction} StarAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - StarAction.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a StarAction message. - * @function verify - * @memberof proto.StarAction - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - StarAction.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.starred != null && message.hasOwnProperty("starred")) - if (typeof message.starred !== "boolean") - return "starred: boolean expected"; - return null; - }; - - /** - * Creates a StarAction message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.StarAction - * @static - * @param {Object.} object Plain object - * @returns {proto.StarAction} StarAction - */ - StarAction.fromObject = function fromObject(object) { - if (object instanceof $root.proto.StarAction) - return object; - var message = new $root.proto.StarAction(); - if (object.starred != null) - message.starred = Boolean(object.starred); - return message; - }; - - /** - * Creates a plain object from a StarAction message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.StarAction - * @static - * @param {proto.StarAction} message StarAction - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - StarAction.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) - object.starred = false; - if (message.starred != null && message.hasOwnProperty("starred")) - object.starred = message.starred; - return object; - }; - - /** - * Converts this StarAction to JSON. - * @function toJSON - * @memberof proto.StarAction - * @instance - * @returns {Object.} JSON object - */ - StarAction.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return StarAction; - })(); - - proto.ContactAction = (function() { - - /** - * Properties of a ContactAction. - * @memberof proto - * @interface IContactAction - * @property {string|null} [fullName] ContactAction fullName - * @property {string|null} [firstName] ContactAction firstName - */ - - /** - * Constructs a new ContactAction. - * @memberof proto - * @classdesc Represents a ContactAction. - * @implements IContactAction - * @constructor - * @param {proto.IContactAction=} [properties] Properties to set - */ - function ContactAction(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * ContactAction fullName. - * @member {string} fullName - * @memberof proto.ContactAction - * @instance - */ - ContactAction.prototype.fullName = ""; - - /** - * ContactAction firstName. - * @member {string} firstName - * @memberof proto.ContactAction - * @instance - */ - ContactAction.prototype.firstName = ""; - - /** - * Creates a new ContactAction instance using the specified properties. - * @function create - * @memberof proto.ContactAction - * @static - * @param {proto.IContactAction=} [properties] Properties to set - * @returns {proto.ContactAction} ContactAction instance - */ - ContactAction.create = function create(properties) { - return new ContactAction(properties); - }; - - /** - * Encodes the specified ContactAction message. Does not implicitly {@link proto.ContactAction.verify|verify} messages. - * @function encode - * @memberof proto.ContactAction - * @static - * @param {proto.IContactAction} message ContactAction message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ContactAction.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.fullName != null && Object.hasOwnProperty.call(message, "fullName")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.fullName); - if (message.firstName != null && Object.hasOwnProperty.call(message, "firstName")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.firstName); - return writer; - }; - - /** - * Encodes the specified ContactAction message, length delimited. Does not implicitly {@link proto.ContactAction.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.ContactAction - * @static - * @param {proto.IContactAction} message ContactAction message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ContactAction.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a ContactAction message from the specified reader or buffer. - * @function decode - * @memberof proto.ContactAction - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.ContactAction} ContactAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ContactAction.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.ContactAction(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.fullName = reader.string(); - break; - case 2: - message.firstName = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a ContactAction message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.ContactAction - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.ContactAction} ContactAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ContactAction.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a ContactAction message. - * @function verify - * @memberof proto.ContactAction - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - ContactAction.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.fullName != null && message.hasOwnProperty("fullName")) - if (!$util.isString(message.fullName)) - return "fullName: string expected"; - if (message.firstName != null && message.hasOwnProperty("firstName")) - if (!$util.isString(message.firstName)) - return "firstName: string expected"; - return null; - }; - - /** - * Creates a ContactAction message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.ContactAction - * @static - * @param {Object.} object Plain object - * @returns {proto.ContactAction} ContactAction - */ - ContactAction.fromObject = function fromObject(object) { - if (object instanceof $root.proto.ContactAction) - return object; - var message = new $root.proto.ContactAction(); - if (object.fullName != null) - message.fullName = String(object.fullName); - if (object.firstName != null) - message.firstName = String(object.firstName); - return message; - }; - - /** - * Creates a plain object from a ContactAction message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.ContactAction - * @static - * @param {proto.ContactAction} message ContactAction - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ContactAction.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.fullName = ""; - object.firstName = ""; - } - if (message.fullName != null && message.hasOwnProperty("fullName")) - object.fullName = message.fullName; - if (message.firstName != null && message.hasOwnProperty("firstName")) - object.firstName = message.firstName; - return object; - }; - - /** - * Converts this ContactAction to JSON. - * @function toJSON - * @memberof proto.ContactAction - * @instance - * @returns {Object.} JSON object - */ - ContactAction.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return ContactAction; - })(); - - proto.MuteAction = (function() { - - /** - * Properties of a MuteAction. - * @memberof proto - * @interface IMuteAction - * @property {boolean|null} [muted] MuteAction muted - * @property {number|Long|null} [muteEndTimestamp] MuteAction muteEndTimestamp - */ - - /** - * Constructs a new MuteAction. - * @memberof proto - * @classdesc Represents a MuteAction. - * @implements IMuteAction - * @constructor - * @param {proto.IMuteAction=} [properties] Properties to set - */ - function MuteAction(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * MuteAction muted. - * @member {boolean} muted - * @memberof proto.MuteAction - * @instance - */ - MuteAction.prototype.muted = false; - - /** - * MuteAction muteEndTimestamp. - * @member {number|Long} muteEndTimestamp - * @memberof proto.MuteAction - * @instance - */ - MuteAction.prototype.muteEndTimestamp = $util.Long ? $util.Long.fromBits(0,0,false) : 0; - - /** - * Creates a new MuteAction instance using the specified properties. - * @function create - * @memberof proto.MuteAction - * @static - * @param {proto.IMuteAction=} [properties] Properties to set - * @returns {proto.MuteAction} MuteAction instance - */ - MuteAction.create = function create(properties) { - return new MuteAction(properties); - }; - - /** - * Encodes the specified MuteAction message. Does not implicitly {@link proto.MuteAction.verify|verify} messages. - * @function encode - * @memberof proto.MuteAction - * @static - * @param {proto.IMuteAction} message MuteAction message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - MuteAction.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.muted != null && Object.hasOwnProperty.call(message, "muted")) - writer.uint32(/* id 1, wireType 0 =*/8).bool(message.muted); - if (message.muteEndTimestamp != null && Object.hasOwnProperty.call(message, "muteEndTimestamp")) - writer.uint32(/* id 2, wireType 0 =*/16).int64(message.muteEndTimestamp); - return writer; - }; - - /** - * Encodes the specified MuteAction message, length delimited. Does not implicitly {@link proto.MuteAction.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.MuteAction - * @static - * @param {proto.IMuteAction} message MuteAction message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - MuteAction.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a MuteAction message from the specified reader or buffer. - * @function decode - * @memberof proto.MuteAction - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.MuteAction} MuteAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - MuteAction.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.MuteAction(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.muted = reader.bool(); - break; - case 2: - message.muteEndTimestamp = reader.int64(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a MuteAction message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.MuteAction - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.MuteAction} MuteAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - MuteAction.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a MuteAction message. - * @function verify - * @memberof proto.MuteAction - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - MuteAction.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.muted != null && message.hasOwnProperty("muted")) - if (typeof message.muted !== "boolean") - return "muted: boolean expected"; - if (message.muteEndTimestamp != null && message.hasOwnProperty("muteEndTimestamp")) - if (!$util.isInteger(message.muteEndTimestamp) && !(message.muteEndTimestamp && $util.isInteger(message.muteEndTimestamp.low) && $util.isInteger(message.muteEndTimestamp.high))) - return "muteEndTimestamp: integer|Long expected"; - return null; - }; - - /** - * Creates a MuteAction message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.MuteAction - * @static - * @param {Object.} object Plain object - * @returns {proto.MuteAction} MuteAction - */ - MuteAction.fromObject = function fromObject(object) { - if (object instanceof $root.proto.MuteAction) - return object; - var message = new $root.proto.MuteAction(); - if (object.muted != null) - message.muted = Boolean(object.muted); - if (object.muteEndTimestamp != null) - if ($util.Long) - (message.muteEndTimestamp = $util.Long.fromValue(object.muteEndTimestamp)).unsigned = false; - else if (typeof object.muteEndTimestamp === "string") - message.muteEndTimestamp = parseInt(object.muteEndTimestamp, 10); - else if (typeof object.muteEndTimestamp === "number") - message.muteEndTimestamp = object.muteEndTimestamp; - else if (typeof object.muteEndTimestamp === "object") - message.muteEndTimestamp = new $util.LongBits(object.muteEndTimestamp.low >>> 0, object.muteEndTimestamp.high >>> 0).toNumber(); - return message; - }; - - /** - * Creates a plain object from a MuteAction message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.MuteAction - * @static - * @param {proto.MuteAction} message MuteAction - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - MuteAction.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.muted = false; - if ($util.Long) { - var long = new $util.Long(0, 0, false); - object.muteEndTimestamp = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; - } else - object.muteEndTimestamp = options.longs === String ? "0" : 0; - } - if (message.muted != null && message.hasOwnProperty("muted")) - object.muted = message.muted; - if (message.muteEndTimestamp != null && message.hasOwnProperty("muteEndTimestamp")) - if (typeof message.muteEndTimestamp === "number") - object.muteEndTimestamp = options.longs === String ? String(message.muteEndTimestamp) : message.muteEndTimestamp; - else - object.muteEndTimestamp = options.longs === String ? $util.Long.prototype.toString.call(message.muteEndTimestamp) : options.longs === Number ? new $util.LongBits(message.muteEndTimestamp.low >>> 0, message.muteEndTimestamp.high >>> 0).toNumber() : message.muteEndTimestamp; - return object; - }; - - /** - * Converts this MuteAction to JSON. - * @function toJSON - * @memberof proto.MuteAction - * @instance - * @returns {Object.} JSON object - */ - MuteAction.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return MuteAction; - })(); - - proto.PinAction = (function() { - - /** - * Properties of a PinAction. - * @memberof proto - * @interface IPinAction - * @property {boolean|null} [pinned] PinAction pinned - */ - - /** - * Constructs a new PinAction. - * @memberof proto - * @classdesc Represents a PinAction. - * @implements IPinAction - * @constructor - * @param {proto.IPinAction=} [properties] Properties to set - */ - function PinAction(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * PinAction pinned. - * @member {boolean} pinned - * @memberof proto.PinAction - * @instance - */ - PinAction.prototype.pinned = false; - - /** - * Creates a new PinAction instance using the specified properties. - * @function create - * @memberof proto.PinAction - * @static - * @param {proto.IPinAction=} [properties] Properties to set - * @returns {proto.PinAction} PinAction instance - */ - PinAction.create = function create(properties) { - return new PinAction(properties); - }; - - /** - * Encodes the specified PinAction message. Does not implicitly {@link proto.PinAction.verify|verify} messages. - * @function encode - * @memberof proto.PinAction - * @static - * @param {proto.IPinAction} message PinAction message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - PinAction.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.pinned != null && Object.hasOwnProperty.call(message, "pinned")) - writer.uint32(/* id 1, wireType 0 =*/8).bool(message.pinned); - return writer; - }; - - /** - * Encodes the specified PinAction message, length delimited. Does not implicitly {@link proto.PinAction.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.PinAction - * @static - * @param {proto.IPinAction} message PinAction message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - PinAction.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a PinAction message from the specified reader or buffer. - * @function decode - * @memberof proto.PinAction - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.PinAction} PinAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - PinAction.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.PinAction(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.pinned = reader.bool(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a PinAction message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.PinAction - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.PinAction} PinAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - PinAction.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a PinAction message. - * @function verify - * @memberof proto.PinAction - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - PinAction.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.pinned != null && message.hasOwnProperty("pinned")) - if (typeof message.pinned !== "boolean") - return "pinned: boolean expected"; - return null; - }; - - /** - * Creates a PinAction message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.PinAction - * @static - * @param {Object.} object Plain object - * @returns {proto.PinAction} PinAction - */ - PinAction.fromObject = function fromObject(object) { - if (object instanceof $root.proto.PinAction) - return object; - var message = new $root.proto.PinAction(); - if (object.pinned != null) - message.pinned = Boolean(object.pinned); - return message; - }; - - /** - * Creates a plain object from a PinAction message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.PinAction - * @static - * @param {proto.PinAction} message PinAction - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - PinAction.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) - object.pinned = false; - if (message.pinned != null && message.hasOwnProperty("pinned")) - object.pinned = message.pinned; - return object; - }; - - /** - * Converts this PinAction to JSON. - * @function toJSON - * @memberof proto.PinAction - * @instance - * @returns {Object.} JSON object - */ - PinAction.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return PinAction; - })(); - - proto.SecurityNotificationSetting = (function() { - - /** - * Properties of a SecurityNotificationSetting. - * @memberof proto - * @interface ISecurityNotificationSetting - * @property {boolean|null} [showNotification] SecurityNotificationSetting showNotification - */ - - /** - * Constructs a new SecurityNotificationSetting. - * @memberof proto - * @classdesc Represents a SecurityNotificationSetting. - * @implements ISecurityNotificationSetting - * @constructor - * @param {proto.ISecurityNotificationSetting=} [properties] Properties to set - */ - function SecurityNotificationSetting(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * SecurityNotificationSetting showNotification. - * @member {boolean} showNotification - * @memberof proto.SecurityNotificationSetting - * @instance - */ - SecurityNotificationSetting.prototype.showNotification = false; - - /** - * Creates a new SecurityNotificationSetting instance using the specified properties. - * @function create - * @memberof proto.SecurityNotificationSetting - * @static - * @param {proto.ISecurityNotificationSetting=} [properties] Properties to set - * @returns {proto.SecurityNotificationSetting} SecurityNotificationSetting instance - */ - SecurityNotificationSetting.create = function create(properties) { - return new SecurityNotificationSetting(properties); - }; - - /** - * Encodes the specified SecurityNotificationSetting message. Does not implicitly {@link proto.SecurityNotificationSetting.verify|verify} messages. - * @function encode - * @memberof proto.SecurityNotificationSetting - * @static - * @param {proto.ISecurityNotificationSetting} message SecurityNotificationSetting message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - SecurityNotificationSetting.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.showNotification != null && Object.hasOwnProperty.call(message, "showNotification")) - writer.uint32(/* id 1, wireType 0 =*/8).bool(message.showNotification); - return writer; - }; - - /** - * Encodes the specified SecurityNotificationSetting message, length delimited. Does not implicitly {@link proto.SecurityNotificationSetting.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.SecurityNotificationSetting - * @static - * @param {proto.ISecurityNotificationSetting} message SecurityNotificationSetting message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - SecurityNotificationSetting.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a SecurityNotificationSetting message from the specified reader or buffer. - * @function decode - * @memberof proto.SecurityNotificationSetting - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.SecurityNotificationSetting} SecurityNotificationSetting - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - SecurityNotificationSetting.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.SecurityNotificationSetting(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.showNotification = reader.bool(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a SecurityNotificationSetting message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.SecurityNotificationSetting - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.SecurityNotificationSetting} SecurityNotificationSetting - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - SecurityNotificationSetting.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a SecurityNotificationSetting message. - * @function verify - * @memberof proto.SecurityNotificationSetting - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - SecurityNotificationSetting.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.showNotification != null && message.hasOwnProperty("showNotification")) - if (typeof message.showNotification !== "boolean") - return "showNotification: boolean expected"; - return null; - }; - - /** - * Creates a SecurityNotificationSetting message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.SecurityNotificationSetting - * @static - * @param {Object.} object Plain object - * @returns {proto.SecurityNotificationSetting} SecurityNotificationSetting - */ - SecurityNotificationSetting.fromObject = function fromObject(object) { - if (object instanceof $root.proto.SecurityNotificationSetting) - return object; - var message = new $root.proto.SecurityNotificationSetting(); - if (object.showNotification != null) - message.showNotification = Boolean(object.showNotification); - return message; - }; - - /** - * Creates a plain object from a SecurityNotificationSetting message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.SecurityNotificationSetting - * @static - * @param {proto.SecurityNotificationSetting} message SecurityNotificationSetting - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - SecurityNotificationSetting.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) - object.showNotification = false; - if (message.showNotification != null && message.hasOwnProperty("showNotification")) - object.showNotification = message.showNotification; - return object; - }; - - /** - * Converts this SecurityNotificationSetting to JSON. - * @function toJSON - * @memberof proto.SecurityNotificationSetting - * @instance - * @returns {Object.} JSON object - */ - SecurityNotificationSetting.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return SecurityNotificationSetting; - })(); - - proto.PushNameSetting = (function() { - - /** - * Properties of a PushNameSetting. - * @memberof proto - * @interface IPushNameSetting - * @property {string|null} [name] PushNameSetting name - */ - - /** - * Constructs a new PushNameSetting. - * @memberof proto - * @classdesc Represents a PushNameSetting. - * @implements IPushNameSetting - * @constructor - * @param {proto.IPushNameSetting=} [properties] Properties to set - */ - function PushNameSetting(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * PushNameSetting name. - * @member {string} name - * @memberof proto.PushNameSetting - * @instance - */ - PushNameSetting.prototype.name = ""; - - /** - * Creates a new PushNameSetting instance using the specified properties. - * @function create - * @memberof proto.PushNameSetting - * @static - * @param {proto.IPushNameSetting=} [properties] Properties to set - * @returns {proto.PushNameSetting} PushNameSetting instance - */ - PushNameSetting.create = function create(properties) { - return new PushNameSetting(properties); - }; - - /** - * Encodes the specified PushNameSetting message. Does not implicitly {@link proto.PushNameSetting.verify|verify} messages. - * @function encode - * @memberof proto.PushNameSetting - * @static - * @param {proto.IPushNameSetting} message PushNameSetting message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - PushNameSetting.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.name != null && Object.hasOwnProperty.call(message, "name")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); - return writer; - }; - - /** - * Encodes the specified PushNameSetting message, length delimited. Does not implicitly {@link proto.PushNameSetting.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.PushNameSetting - * @static - * @param {proto.IPushNameSetting} message PushNameSetting message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - PushNameSetting.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a PushNameSetting message from the specified reader or buffer. - * @function decode - * @memberof proto.PushNameSetting - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.PushNameSetting} PushNameSetting - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - PushNameSetting.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.PushNameSetting(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a PushNameSetting message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.PushNameSetting - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.PushNameSetting} PushNameSetting - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - PushNameSetting.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a PushNameSetting message. - * @function verify - * @memberof proto.PushNameSetting - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - PushNameSetting.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.name != null && message.hasOwnProperty("name")) - if (!$util.isString(message.name)) - return "name: string expected"; - return null; - }; - - /** - * Creates a PushNameSetting message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.PushNameSetting - * @static - * @param {Object.} object Plain object - * @returns {proto.PushNameSetting} PushNameSetting - */ - PushNameSetting.fromObject = function fromObject(object) { - if (object instanceof $root.proto.PushNameSetting) - return object; - var message = new $root.proto.PushNameSetting(); - if (object.name != null) - message.name = String(object.name); - return message; - }; - - /** - * Creates a plain object from a PushNameSetting message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.PushNameSetting - * @static - * @param {proto.PushNameSetting} message PushNameSetting - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - PushNameSetting.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) - object.name = ""; - if (message.name != null && message.hasOwnProperty("name")) - object.name = message.name; - return object; - }; - - /** - * Converts this PushNameSetting to JSON. - * @function toJSON - * @memberof proto.PushNameSetting - * @instance - * @returns {Object.} JSON object - */ - PushNameSetting.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return PushNameSetting; - })(); - - proto.LocaleSetting = (function() { - - /** - * Properties of a LocaleSetting. - * @memberof proto - * @interface ILocaleSetting - * @property {string|null} [locale] LocaleSetting locale - */ - - /** - * Constructs a new LocaleSetting. - * @memberof proto - * @classdesc Represents a LocaleSetting. - * @implements ILocaleSetting - * @constructor - * @param {proto.ILocaleSetting=} [properties] Properties to set - */ - function LocaleSetting(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * LocaleSetting locale. - * @member {string} locale - * @memberof proto.LocaleSetting - * @instance - */ - LocaleSetting.prototype.locale = ""; - - /** - * Creates a new LocaleSetting instance using the specified properties. - * @function create - * @memberof proto.LocaleSetting - * @static - * @param {proto.ILocaleSetting=} [properties] Properties to set - * @returns {proto.LocaleSetting} LocaleSetting instance - */ - LocaleSetting.create = function create(properties) { - return new LocaleSetting(properties); - }; - - /** - * Encodes the specified LocaleSetting message. Does not implicitly {@link proto.LocaleSetting.verify|verify} messages. - * @function encode - * @memberof proto.LocaleSetting - * @static - * @param {proto.ILocaleSetting} message LocaleSetting message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - LocaleSetting.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.locale != null && Object.hasOwnProperty.call(message, "locale")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.locale); - return writer; - }; - - /** - * Encodes the specified LocaleSetting message, length delimited. Does not implicitly {@link proto.LocaleSetting.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.LocaleSetting - * @static - * @param {proto.ILocaleSetting} message LocaleSetting message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - LocaleSetting.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a LocaleSetting message from the specified reader or buffer. - * @function decode - * @memberof proto.LocaleSetting - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.LocaleSetting} LocaleSetting - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - LocaleSetting.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.LocaleSetting(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.locale = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a LocaleSetting message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.LocaleSetting - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.LocaleSetting} LocaleSetting - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - LocaleSetting.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a LocaleSetting message. - * @function verify - * @memberof proto.LocaleSetting - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - LocaleSetting.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.locale != null && message.hasOwnProperty("locale")) - if (!$util.isString(message.locale)) - return "locale: string expected"; - return null; - }; - - /** - * Creates a LocaleSetting message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.LocaleSetting - * @static - * @param {Object.} object Plain object - * @returns {proto.LocaleSetting} LocaleSetting - */ - LocaleSetting.fromObject = function fromObject(object) { - if (object instanceof $root.proto.LocaleSetting) - return object; - var message = new $root.proto.LocaleSetting(); - if (object.locale != null) - message.locale = String(object.locale); - return message; - }; - - /** - * Creates a plain object from a LocaleSetting message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.LocaleSetting - * @static - * @param {proto.LocaleSetting} message LocaleSetting - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - LocaleSetting.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) - object.locale = ""; - if (message.locale != null && message.hasOwnProperty("locale")) - object.locale = message.locale; - return object; - }; - - /** - * Converts this LocaleSetting to JSON. - * @function toJSON - * @memberof proto.LocaleSetting - * @instance - * @returns {Object.} JSON object - */ - LocaleSetting.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return LocaleSetting; - })(); - - proto.QuickReplyAction = (function() { - - /** - * Properties of a QuickReplyAction. - * @memberof proto - * @interface IQuickReplyAction - * @property {string|null} [shortcut] QuickReplyAction shortcut - * @property {string|null} [message] QuickReplyAction message - * @property {Array.|null} [keywords] QuickReplyAction keywords - * @property {number|null} [count] QuickReplyAction count - * @property {boolean|null} [deleted] QuickReplyAction deleted - */ - - /** - * Constructs a new QuickReplyAction. - * @memberof proto - * @classdesc Represents a QuickReplyAction. - * @implements IQuickReplyAction - * @constructor - * @param {proto.IQuickReplyAction=} [properties] Properties to set - */ - function QuickReplyAction(properties) { - this.keywords = []; - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * QuickReplyAction shortcut. - * @member {string} shortcut - * @memberof proto.QuickReplyAction - * @instance - */ - QuickReplyAction.prototype.shortcut = ""; - - /** - * QuickReplyAction message. - * @member {string} message - * @memberof proto.QuickReplyAction - * @instance - */ - QuickReplyAction.prototype.message = ""; - - /** - * QuickReplyAction keywords. - * @member {Array.} keywords - * @memberof proto.QuickReplyAction - * @instance - */ - QuickReplyAction.prototype.keywords = $util.emptyArray; - - /** - * QuickReplyAction count. - * @member {number} count - * @memberof proto.QuickReplyAction - * @instance - */ - QuickReplyAction.prototype.count = 0; - - /** - * QuickReplyAction deleted. - * @member {boolean} deleted - * @memberof proto.QuickReplyAction - * @instance - */ - QuickReplyAction.prototype.deleted = false; - - /** - * Creates a new QuickReplyAction instance using the specified properties. - * @function create - * @memberof proto.QuickReplyAction - * @static - * @param {proto.IQuickReplyAction=} [properties] Properties to set - * @returns {proto.QuickReplyAction} QuickReplyAction instance - */ - QuickReplyAction.create = function create(properties) { - return new QuickReplyAction(properties); - }; - - /** - * Encodes the specified QuickReplyAction message. Does not implicitly {@link proto.QuickReplyAction.verify|verify} messages. - * @function encode - * @memberof proto.QuickReplyAction - * @static - * @param {proto.IQuickReplyAction} message QuickReplyAction message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - QuickReplyAction.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.shortcut != null && Object.hasOwnProperty.call(message, "shortcut")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.shortcut); - if (message.message != null && Object.hasOwnProperty.call(message, "message")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.message); - if (message.keywords != null && message.keywords.length) - for (var i = 0; i < message.keywords.length; ++i) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.keywords[i]); - if (message.count != null && Object.hasOwnProperty.call(message, "count")) - writer.uint32(/* id 4, wireType 0 =*/32).int32(message.count); - if (message.deleted != null && Object.hasOwnProperty.call(message, "deleted")) - writer.uint32(/* id 5, wireType 0 =*/40).bool(message.deleted); - return writer; - }; - - /** - * Encodes the specified QuickReplyAction message, length delimited. Does not implicitly {@link proto.QuickReplyAction.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.QuickReplyAction - * @static - * @param {proto.IQuickReplyAction} message QuickReplyAction message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - QuickReplyAction.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a QuickReplyAction message from the specified reader or buffer. - * @function decode - * @memberof proto.QuickReplyAction - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.QuickReplyAction} QuickReplyAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - QuickReplyAction.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.QuickReplyAction(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.shortcut = reader.string(); - break; - case 2: - message.message = reader.string(); - break; - case 3: - if (!(message.keywords && message.keywords.length)) - message.keywords = []; - message.keywords.push(reader.string()); - break; - case 4: - message.count = reader.int32(); - break; - case 5: - message.deleted = reader.bool(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a QuickReplyAction message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.QuickReplyAction - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.QuickReplyAction} QuickReplyAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - QuickReplyAction.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a QuickReplyAction message. - * @function verify - * @memberof proto.QuickReplyAction - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - QuickReplyAction.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.shortcut != null && message.hasOwnProperty("shortcut")) - if (!$util.isString(message.shortcut)) - return "shortcut: string expected"; - if (message.message != null && message.hasOwnProperty("message")) - if (!$util.isString(message.message)) - return "message: string expected"; - if (message.keywords != null && message.hasOwnProperty("keywords")) { - if (!Array.isArray(message.keywords)) - return "keywords: array expected"; - for (var i = 0; i < message.keywords.length; ++i) - if (!$util.isString(message.keywords[i])) - return "keywords: string[] expected"; - } - if (message.count != null && message.hasOwnProperty("count")) - if (!$util.isInteger(message.count)) - return "count: integer expected"; - if (message.deleted != null && message.hasOwnProperty("deleted")) - if (typeof message.deleted !== "boolean") - return "deleted: boolean expected"; - return null; - }; - - /** - * Creates a QuickReplyAction message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.QuickReplyAction - * @static - * @param {Object.} object Plain object - * @returns {proto.QuickReplyAction} QuickReplyAction - */ - QuickReplyAction.fromObject = function fromObject(object) { - if (object instanceof $root.proto.QuickReplyAction) - return object; - var message = new $root.proto.QuickReplyAction(); - if (object.shortcut != null) - message.shortcut = String(object.shortcut); - if (object.message != null) - message.message = String(object.message); - if (object.keywords) { - if (!Array.isArray(object.keywords)) - throw TypeError(".proto.QuickReplyAction.keywords: array expected"); - message.keywords = []; - for (var i = 0; i < object.keywords.length; ++i) - message.keywords[i] = String(object.keywords[i]); - } - if (object.count != null) - message.count = object.count | 0; - if (object.deleted != null) - message.deleted = Boolean(object.deleted); - return message; - }; - - /** - * Creates a plain object from a QuickReplyAction message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.QuickReplyAction - * @static - * @param {proto.QuickReplyAction} message QuickReplyAction - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - QuickReplyAction.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.keywords = []; - if (options.defaults) { - object.shortcut = ""; - object.message = ""; - object.count = 0; - object.deleted = false; - } - if (message.shortcut != null && message.hasOwnProperty("shortcut")) - object.shortcut = message.shortcut; - if (message.message != null && message.hasOwnProperty("message")) - object.message = message.message; - if (message.keywords && message.keywords.length) { - object.keywords = []; - for (var j = 0; j < message.keywords.length; ++j) - object.keywords[j] = message.keywords[j]; - } - if (message.count != null && message.hasOwnProperty("count")) - object.count = message.count; - if (message.deleted != null && message.hasOwnProperty("deleted")) - object.deleted = message.deleted; - return object; - }; - - /** - * Converts this QuickReplyAction to JSON. - * @function toJSON - * @memberof proto.QuickReplyAction - * @instance - * @returns {Object.} JSON object - */ - QuickReplyAction.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return QuickReplyAction; - })(); - - proto.LabelAssociationAction = (function() { - - /** - * Properties of a LabelAssociationAction. - * @memberof proto - * @interface ILabelAssociationAction - * @property {boolean|null} [labeled] LabelAssociationAction labeled - */ - - /** - * Constructs a new LabelAssociationAction. - * @memberof proto - * @classdesc Represents a LabelAssociationAction. - * @implements ILabelAssociationAction - * @constructor - * @param {proto.ILabelAssociationAction=} [properties] Properties to set - */ - function LabelAssociationAction(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * LabelAssociationAction labeled. - * @member {boolean} labeled - * @memberof proto.LabelAssociationAction - * @instance - */ - LabelAssociationAction.prototype.labeled = false; - - /** - * Creates a new LabelAssociationAction instance using the specified properties. - * @function create - * @memberof proto.LabelAssociationAction - * @static - * @param {proto.ILabelAssociationAction=} [properties] Properties to set - * @returns {proto.LabelAssociationAction} LabelAssociationAction instance - */ - LabelAssociationAction.create = function create(properties) { - return new LabelAssociationAction(properties); - }; - - /** - * Encodes the specified LabelAssociationAction message. Does not implicitly {@link proto.LabelAssociationAction.verify|verify} messages. - * @function encode - * @memberof proto.LabelAssociationAction - * @static - * @param {proto.ILabelAssociationAction} message LabelAssociationAction message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - LabelAssociationAction.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.labeled != null && Object.hasOwnProperty.call(message, "labeled")) - writer.uint32(/* id 1, wireType 0 =*/8).bool(message.labeled); - return writer; - }; - - /** - * Encodes the specified LabelAssociationAction message, length delimited. Does not implicitly {@link proto.LabelAssociationAction.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.LabelAssociationAction - * @static - * @param {proto.ILabelAssociationAction} message LabelAssociationAction message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - LabelAssociationAction.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a LabelAssociationAction message from the specified reader or buffer. - * @function decode - * @memberof proto.LabelAssociationAction - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.LabelAssociationAction} LabelAssociationAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - LabelAssociationAction.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.LabelAssociationAction(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.labeled = reader.bool(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a LabelAssociationAction message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.LabelAssociationAction - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.LabelAssociationAction} LabelAssociationAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - LabelAssociationAction.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a LabelAssociationAction message. - * @function verify - * @memberof proto.LabelAssociationAction - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - LabelAssociationAction.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.labeled != null && message.hasOwnProperty("labeled")) - if (typeof message.labeled !== "boolean") - return "labeled: boolean expected"; - return null; - }; - - /** - * Creates a LabelAssociationAction message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.LabelAssociationAction - * @static - * @param {Object.} object Plain object - * @returns {proto.LabelAssociationAction} LabelAssociationAction - */ - LabelAssociationAction.fromObject = function fromObject(object) { - if (object instanceof $root.proto.LabelAssociationAction) - return object; - var message = new $root.proto.LabelAssociationAction(); - if (object.labeled != null) - message.labeled = Boolean(object.labeled); - return message; - }; - - /** - * Creates a plain object from a LabelAssociationAction message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.LabelAssociationAction - * @static - * @param {proto.LabelAssociationAction} message LabelAssociationAction - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - LabelAssociationAction.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) - object.labeled = false; - if (message.labeled != null && message.hasOwnProperty("labeled")) - object.labeled = message.labeled; - return object; - }; - - /** - * Converts this LabelAssociationAction to JSON. - * @function toJSON - * @memberof proto.LabelAssociationAction - * @instance - * @returns {Object.} JSON object - */ - LabelAssociationAction.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return LabelAssociationAction; - })(); - - proto.LabelEditAction = (function() { - - /** - * Properties of a LabelEditAction. - * @memberof proto - * @interface ILabelEditAction - * @property {string|null} [name] LabelEditAction name - * @property {number|null} [color] LabelEditAction color - * @property {number|null} [predefinedId] LabelEditAction predefinedId - * @property {boolean|null} [deleted] LabelEditAction deleted - */ - - /** - * Constructs a new LabelEditAction. - * @memberof proto - * @classdesc Represents a LabelEditAction. - * @implements ILabelEditAction - * @constructor - * @param {proto.ILabelEditAction=} [properties] Properties to set - */ - function LabelEditAction(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * LabelEditAction name. - * @member {string} name - * @memberof proto.LabelEditAction - * @instance - */ - LabelEditAction.prototype.name = ""; - - /** - * LabelEditAction color. - * @member {number} color - * @memberof proto.LabelEditAction - * @instance - */ - LabelEditAction.prototype.color = 0; - - /** - * LabelEditAction predefinedId. - * @member {number} predefinedId - * @memberof proto.LabelEditAction - * @instance - */ - LabelEditAction.prototype.predefinedId = 0; - - /** - * LabelEditAction deleted. - * @member {boolean} deleted - * @memberof proto.LabelEditAction - * @instance - */ - LabelEditAction.prototype.deleted = false; - - /** - * Creates a new LabelEditAction instance using the specified properties. - * @function create - * @memberof proto.LabelEditAction - * @static - * @param {proto.ILabelEditAction=} [properties] Properties to set - * @returns {proto.LabelEditAction} LabelEditAction instance - */ - LabelEditAction.create = function create(properties) { - return new LabelEditAction(properties); - }; - - /** - * Encodes the specified LabelEditAction message. Does not implicitly {@link proto.LabelEditAction.verify|verify} messages. - * @function encode - * @memberof proto.LabelEditAction - * @static - * @param {proto.ILabelEditAction} message LabelEditAction message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - LabelEditAction.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.name != null && Object.hasOwnProperty.call(message, "name")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.name); - if (message.color != null && Object.hasOwnProperty.call(message, "color")) - writer.uint32(/* id 2, wireType 0 =*/16).int32(message.color); - if (message.predefinedId != null && Object.hasOwnProperty.call(message, "predefinedId")) - writer.uint32(/* id 3, wireType 0 =*/24).int32(message.predefinedId); - if (message.deleted != null && Object.hasOwnProperty.call(message, "deleted")) - writer.uint32(/* id 4, wireType 0 =*/32).bool(message.deleted); - return writer; - }; - - /** - * Encodes the specified LabelEditAction message, length delimited. Does not implicitly {@link proto.LabelEditAction.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.LabelEditAction - * @static - * @param {proto.ILabelEditAction} message LabelEditAction message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - LabelEditAction.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a LabelEditAction message from the specified reader or buffer. - * @function decode - * @memberof proto.LabelEditAction - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.LabelEditAction} LabelEditAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - LabelEditAction.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.LabelEditAction(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.name = reader.string(); - break; - case 2: - message.color = reader.int32(); - break; - case 3: - message.predefinedId = reader.int32(); - break; - case 4: - message.deleted = reader.bool(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a LabelEditAction message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.LabelEditAction - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.LabelEditAction} LabelEditAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - LabelEditAction.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a LabelEditAction message. - * @function verify - * @memberof proto.LabelEditAction - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - LabelEditAction.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.name != null && message.hasOwnProperty("name")) - if (!$util.isString(message.name)) - return "name: string expected"; - if (message.color != null && message.hasOwnProperty("color")) - if (!$util.isInteger(message.color)) - return "color: integer expected"; - if (message.predefinedId != null && message.hasOwnProperty("predefinedId")) - if (!$util.isInteger(message.predefinedId)) - return "predefinedId: integer expected"; - if (message.deleted != null && message.hasOwnProperty("deleted")) - if (typeof message.deleted !== "boolean") - return "deleted: boolean expected"; - return null; - }; - - /** - * Creates a LabelEditAction message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.LabelEditAction - * @static - * @param {Object.} object Plain object - * @returns {proto.LabelEditAction} LabelEditAction - */ - LabelEditAction.fromObject = function fromObject(object) { - if (object instanceof $root.proto.LabelEditAction) - return object; - var message = new $root.proto.LabelEditAction(); - if (object.name != null) - message.name = String(object.name); - if (object.color != null) - message.color = object.color | 0; - if (object.predefinedId != null) - message.predefinedId = object.predefinedId | 0; - if (object.deleted != null) - message.deleted = Boolean(object.deleted); - return message; - }; - - /** - * Creates a plain object from a LabelEditAction message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.LabelEditAction - * @static - * @param {proto.LabelEditAction} message LabelEditAction - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - LabelEditAction.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.name = ""; - object.color = 0; - object.predefinedId = 0; - object.deleted = false; - } - if (message.name != null && message.hasOwnProperty("name")) - object.name = message.name; - if (message.color != null && message.hasOwnProperty("color")) - object.color = message.color; - if (message.predefinedId != null && message.hasOwnProperty("predefinedId")) - object.predefinedId = message.predefinedId; - if (message.deleted != null && message.hasOwnProperty("deleted")) - object.deleted = message.deleted; - return object; - }; - - /** - * Converts this LabelEditAction to JSON. - * @function toJSON - * @memberof proto.LabelEditAction - * @instance - * @returns {Object.} JSON object - */ - LabelEditAction.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return LabelEditAction; - })(); - - proto.RecentStickerWeightsAction = (function() { - - /** - * Properties of a RecentStickerWeightsAction. - * @memberof proto - * @interface IRecentStickerWeightsAction - * @property {Array.|null} [weights] RecentStickerWeightsAction weights - */ - - /** - * Constructs a new RecentStickerWeightsAction. - * @memberof proto - * @classdesc Represents a RecentStickerWeightsAction. - * @implements IRecentStickerWeightsAction - * @constructor - * @param {proto.IRecentStickerWeightsAction=} [properties] Properties to set - */ - function RecentStickerWeightsAction(properties) { - this.weights = []; - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * RecentStickerWeightsAction weights. - * @member {Array.} weights - * @memberof proto.RecentStickerWeightsAction - * @instance - */ - RecentStickerWeightsAction.prototype.weights = $util.emptyArray; - - /** - * Creates a new RecentStickerWeightsAction instance using the specified properties. - * @function create - * @memberof proto.RecentStickerWeightsAction - * @static - * @param {proto.IRecentStickerWeightsAction=} [properties] Properties to set - * @returns {proto.RecentStickerWeightsAction} RecentStickerWeightsAction instance - */ - RecentStickerWeightsAction.create = function create(properties) { - return new RecentStickerWeightsAction(properties); - }; - - /** - * Encodes the specified RecentStickerWeightsAction message. Does not implicitly {@link proto.RecentStickerWeightsAction.verify|verify} messages. - * @function encode - * @memberof proto.RecentStickerWeightsAction - * @static - * @param {proto.IRecentStickerWeightsAction} message RecentStickerWeightsAction message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - RecentStickerWeightsAction.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.weights != null && message.weights.length) - for (var i = 0; i < message.weights.length; ++i) - $root.proto.RecentStickerWeight.encode(message.weights[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); - return writer; - }; - - /** - * Encodes the specified RecentStickerWeightsAction message, length delimited. Does not implicitly {@link proto.RecentStickerWeightsAction.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.RecentStickerWeightsAction - * @static - * @param {proto.IRecentStickerWeightsAction} message RecentStickerWeightsAction message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - RecentStickerWeightsAction.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a RecentStickerWeightsAction message from the specified reader or buffer. - * @function decode - * @memberof proto.RecentStickerWeightsAction - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.RecentStickerWeightsAction} RecentStickerWeightsAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - RecentStickerWeightsAction.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.RecentStickerWeightsAction(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - if (!(message.weights && message.weights.length)) - message.weights = []; - message.weights.push($root.proto.RecentStickerWeight.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a RecentStickerWeightsAction message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.RecentStickerWeightsAction - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.RecentStickerWeightsAction} RecentStickerWeightsAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - RecentStickerWeightsAction.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a RecentStickerWeightsAction message. - * @function verify - * @memberof proto.RecentStickerWeightsAction - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - RecentStickerWeightsAction.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.weights != null && message.hasOwnProperty("weights")) { - if (!Array.isArray(message.weights)) - return "weights: array expected"; - for (var i = 0; i < message.weights.length; ++i) { - var error = $root.proto.RecentStickerWeight.verify(message.weights[i]); - if (error) - return "weights." + error; - } - } - return null; - }; - - /** - * Creates a RecentStickerWeightsAction message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.RecentStickerWeightsAction - * @static - * @param {Object.} object Plain object - * @returns {proto.RecentStickerWeightsAction} RecentStickerWeightsAction - */ - RecentStickerWeightsAction.fromObject = function fromObject(object) { - if (object instanceof $root.proto.RecentStickerWeightsAction) - return object; - var message = new $root.proto.RecentStickerWeightsAction(); - if (object.weights) { - if (!Array.isArray(object.weights)) - throw TypeError(".proto.RecentStickerWeightsAction.weights: array expected"); - message.weights = []; - for (var i = 0; i < object.weights.length; ++i) { - if (typeof object.weights[i] !== "object") - throw TypeError(".proto.RecentStickerWeightsAction.weights: object expected"); - message.weights[i] = $root.proto.RecentStickerWeight.fromObject(object.weights[i]); - } - } - return message; - }; - - /** - * Creates a plain object from a RecentStickerWeightsAction message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.RecentStickerWeightsAction - * @static - * @param {proto.RecentStickerWeightsAction} message RecentStickerWeightsAction - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - RecentStickerWeightsAction.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.weights = []; - if (message.weights && message.weights.length) { - object.weights = []; - for (var j = 0; j < message.weights.length; ++j) - object.weights[j] = $root.proto.RecentStickerWeight.toObject(message.weights[j], options); - } - return object; - }; - - /** - * Converts this RecentStickerWeightsAction to JSON. - * @function toJSON - * @memberof proto.RecentStickerWeightsAction - * @instance - * @returns {Object.} JSON object - */ - RecentStickerWeightsAction.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return RecentStickerWeightsAction; - })(); - - proto.RecentStickerMetadata = (function() { - - /** - * Properties of a RecentStickerMetadata. - * @memberof proto - * @interface IRecentStickerMetadata - * @property {string|null} [directPath] RecentStickerMetadata directPath - * @property {string|null} [encFilehash] RecentStickerMetadata encFilehash - * @property {string|null} [mediaKey] RecentStickerMetadata mediaKey - * @property {string|null} [stanzaId] RecentStickerMetadata stanzaId - * @property {string|null} [chatJid] RecentStickerMetadata chatJid - * @property {string|null} [participant] RecentStickerMetadata participant - * @property {boolean|null} [isSentByMe] RecentStickerMetadata isSentByMe - */ - - /** - * Constructs a new RecentStickerMetadata. - * @memberof proto - * @classdesc Represents a RecentStickerMetadata. - * @implements IRecentStickerMetadata - * @constructor - * @param {proto.IRecentStickerMetadata=} [properties] Properties to set - */ - function RecentStickerMetadata(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * RecentStickerMetadata directPath. - * @member {string} directPath - * @memberof proto.RecentStickerMetadata - * @instance - */ - RecentStickerMetadata.prototype.directPath = ""; - - /** - * RecentStickerMetadata encFilehash. - * @member {string} encFilehash - * @memberof proto.RecentStickerMetadata - * @instance - */ - RecentStickerMetadata.prototype.encFilehash = ""; - - /** - * RecentStickerMetadata mediaKey. - * @member {string} mediaKey - * @memberof proto.RecentStickerMetadata - * @instance - */ - RecentStickerMetadata.prototype.mediaKey = ""; - - /** - * RecentStickerMetadata stanzaId. - * @member {string} stanzaId - * @memberof proto.RecentStickerMetadata - * @instance - */ - RecentStickerMetadata.prototype.stanzaId = ""; - - /** - * RecentStickerMetadata chatJid. - * @member {string} chatJid - * @memberof proto.RecentStickerMetadata - * @instance - */ - RecentStickerMetadata.prototype.chatJid = ""; - - /** - * RecentStickerMetadata participant. + * MessageKey participant. * @member {string} participant - * @memberof proto.RecentStickerMetadata + * @memberof proto.MessageKey * @instance */ - RecentStickerMetadata.prototype.participant = ""; + MessageKey.prototype.participant = ""; /** - * RecentStickerMetadata isSentByMe. - * @member {boolean} isSentByMe - * @memberof proto.RecentStickerMetadata - * @instance - */ - RecentStickerMetadata.prototype.isSentByMe = false; - - /** - * Creates a new RecentStickerMetadata instance using the specified properties. + * Creates a new MessageKey instance using the specified properties. * @function create - * @memberof proto.RecentStickerMetadata + * @memberof proto.MessageKey * @static - * @param {proto.IRecentStickerMetadata=} [properties] Properties to set - * @returns {proto.RecentStickerMetadata} RecentStickerMetadata instance + * @param {proto.IMessageKey=} [properties] Properties to set + * @returns {proto.MessageKey} MessageKey instance */ - RecentStickerMetadata.create = function create(properties) { - return new RecentStickerMetadata(properties); + MessageKey.create = function create(properties) { + return new MessageKey(properties); }; /** - * Encodes the specified RecentStickerMetadata message. Does not implicitly {@link proto.RecentStickerMetadata.verify|verify} messages. + * Encodes the specified MessageKey message. Does not implicitly {@link proto.MessageKey.verify|verify} messages. * @function encode - * @memberof proto.RecentStickerMetadata + * @memberof proto.MessageKey * @static - * @param {proto.IRecentStickerMetadata} message RecentStickerMetadata message or plain object to encode + * @param {proto.IMessageKey} message MessageKey message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - RecentStickerMetadata.encode = function encode(message, writer) { + MessageKey.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.directPath != null && Object.hasOwnProperty.call(message, "directPath")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.directPath); - if (message.encFilehash != null && Object.hasOwnProperty.call(message, "encFilehash")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.encFilehash); - if (message.mediaKey != null && Object.hasOwnProperty.call(message, "mediaKey")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.mediaKey); - if (message.stanzaId != null && Object.hasOwnProperty.call(message, "stanzaId")) - writer.uint32(/* id 4, wireType 2 =*/34).string(message.stanzaId); - if (message.chatJid != null && Object.hasOwnProperty.call(message, "chatJid")) - writer.uint32(/* id 5, wireType 2 =*/42).string(message.chatJid); + if (message.remoteJid != null && Object.hasOwnProperty.call(message, "remoteJid")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.remoteJid); + if (message.fromMe != null && Object.hasOwnProperty.call(message, "fromMe")) + writer.uint32(/* id 2, wireType 0 =*/16).bool(message.fromMe); + if (message.id != null && Object.hasOwnProperty.call(message, "id")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.id); if (message.participant != null && Object.hasOwnProperty.call(message, "participant")) - writer.uint32(/* id 6, wireType 2 =*/50).string(message.participant); - if (message.isSentByMe != null && Object.hasOwnProperty.call(message, "isSentByMe")) - writer.uint32(/* id 7, wireType 0 =*/56).bool(message.isSentByMe); + writer.uint32(/* id 4, wireType 2 =*/34).string(message.participant); return writer; }; /** - * Encodes the specified RecentStickerMetadata message, length delimited. Does not implicitly {@link proto.RecentStickerMetadata.verify|verify} messages. + * Encodes the specified MessageKey message, length delimited. Does not implicitly {@link proto.MessageKey.verify|verify} messages. * @function encodeDelimited - * @memberof proto.RecentStickerMetadata + * @memberof proto.MessageKey * @static - * @param {proto.IRecentStickerMetadata} message RecentStickerMetadata message or plain object to encode + * @param {proto.IMessageKey} message MessageKey message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - RecentStickerMetadata.encodeDelimited = function encodeDelimited(message, writer) { + MessageKey.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a RecentStickerMetadata message from the specified reader or buffer. + * Decodes a MessageKey message from the specified reader or buffer. * @function decode - * @memberof proto.RecentStickerMetadata + * @memberof proto.MessageKey * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {proto.RecentStickerMetadata} RecentStickerMetadata + * @returns {proto.MessageKey} MessageKey * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RecentStickerMetadata.decode = function decode(reader, length) { + MessageKey.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.RecentStickerMetadata(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.MessageKey(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.directPath = reader.string(); + message.remoteJid = reader.string(); break; case 2: - message.encFilehash = reader.string(); + message.fromMe = reader.bool(); break; case 3: - message.mediaKey = reader.string(); + message.id = reader.string(); break; case 4: - message.stanzaId = reader.string(); - break; - case 5: - message.chatJid = reader.string(); - break; - case 6: message.participant = reader.string(); break; - case 7: - message.isSentByMe = reader.bool(); - break; default: reader.skipType(tag & 7); break; @@ -8860,10444 +164,112 @@ $root.proto = (function() { }; /** - * Decodes a RecentStickerMetadata message from the specified reader or buffer, length delimited. + * Decodes a MessageKey message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof proto.RecentStickerMetadata + * @memberof proto.MessageKey * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.RecentStickerMetadata} RecentStickerMetadata + * @returns {proto.MessageKey} MessageKey * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - RecentStickerMetadata.decodeDelimited = function decodeDelimited(reader) { + MessageKey.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a RecentStickerMetadata message. + * Verifies a MessageKey message. * @function verify - * @memberof proto.RecentStickerMetadata + * @memberof proto.MessageKey * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - RecentStickerMetadata.verify = function verify(message) { + MessageKey.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.directPath != null && message.hasOwnProperty("directPath")) - if (!$util.isString(message.directPath)) - return "directPath: string expected"; - if (message.encFilehash != null && message.hasOwnProperty("encFilehash")) - if (!$util.isString(message.encFilehash)) - return "encFilehash: string expected"; - if (message.mediaKey != null && message.hasOwnProperty("mediaKey")) - if (!$util.isString(message.mediaKey)) - return "mediaKey: string expected"; - if (message.stanzaId != null && message.hasOwnProperty("stanzaId")) - if (!$util.isString(message.stanzaId)) - return "stanzaId: string expected"; - if (message.chatJid != null && message.hasOwnProperty("chatJid")) - if (!$util.isString(message.chatJid)) - return "chatJid: string expected"; + if (message.remoteJid != null && message.hasOwnProperty("remoteJid")) + if (!$util.isString(message.remoteJid)) + return "remoteJid: string expected"; + if (message.fromMe != null && message.hasOwnProperty("fromMe")) + if (typeof message.fromMe !== "boolean") + return "fromMe: boolean expected"; + if (message.id != null && message.hasOwnProperty("id")) + if (!$util.isString(message.id)) + return "id: string expected"; if (message.participant != null && message.hasOwnProperty("participant")) if (!$util.isString(message.participant)) return "participant: string expected"; - if (message.isSentByMe != null && message.hasOwnProperty("isSentByMe")) - if (typeof message.isSentByMe !== "boolean") - return "isSentByMe: boolean expected"; return null; }; /** - * Creates a RecentStickerMetadata message from a plain object. Also converts values to their respective internal types. + * Creates a MessageKey message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof proto.RecentStickerMetadata + * @memberof proto.MessageKey * @static * @param {Object.} object Plain object - * @returns {proto.RecentStickerMetadata} RecentStickerMetadata + * @returns {proto.MessageKey} MessageKey */ - RecentStickerMetadata.fromObject = function fromObject(object) { - if (object instanceof $root.proto.RecentStickerMetadata) + MessageKey.fromObject = function fromObject(object) { + if (object instanceof $root.proto.MessageKey) return object; - var message = new $root.proto.RecentStickerMetadata(); - if (object.directPath != null) - message.directPath = String(object.directPath); - if (object.encFilehash != null) - message.encFilehash = String(object.encFilehash); - if (object.mediaKey != null) - message.mediaKey = String(object.mediaKey); - if (object.stanzaId != null) - message.stanzaId = String(object.stanzaId); - if (object.chatJid != null) - message.chatJid = String(object.chatJid); + var message = new $root.proto.MessageKey(); + if (object.remoteJid != null) + message.remoteJid = String(object.remoteJid); + if (object.fromMe != null) + message.fromMe = Boolean(object.fromMe); + if (object.id != null) + message.id = String(object.id); if (object.participant != null) message.participant = String(object.participant); - if (object.isSentByMe != null) - message.isSentByMe = Boolean(object.isSentByMe); return message; }; /** - * Creates a plain object from a RecentStickerMetadata message. Also converts values to other types if specified. + * Creates a plain object from a MessageKey message. Also converts values to other types if specified. * @function toObject - * @memberof proto.RecentStickerMetadata + * @memberof proto.MessageKey * @static - * @param {proto.RecentStickerMetadata} message RecentStickerMetadata + * @param {proto.MessageKey} message MessageKey * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - RecentStickerMetadata.toObject = function toObject(message, options) { + MessageKey.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; if (options.defaults) { - object.directPath = ""; - object.encFilehash = ""; - object.mediaKey = ""; - object.stanzaId = ""; - object.chatJid = ""; + object.remoteJid = ""; + object.fromMe = false; + object.id = ""; object.participant = ""; - object.isSentByMe = false; } - if (message.directPath != null && message.hasOwnProperty("directPath")) - object.directPath = message.directPath; - if (message.encFilehash != null && message.hasOwnProperty("encFilehash")) - object.encFilehash = message.encFilehash; - if (message.mediaKey != null && message.hasOwnProperty("mediaKey")) - object.mediaKey = message.mediaKey; - if (message.stanzaId != null && message.hasOwnProperty("stanzaId")) - object.stanzaId = message.stanzaId; - if (message.chatJid != null && message.hasOwnProperty("chatJid")) - object.chatJid = message.chatJid; + if (message.remoteJid != null && message.hasOwnProperty("remoteJid")) + object.remoteJid = message.remoteJid; + if (message.fromMe != null && message.hasOwnProperty("fromMe")) + object.fromMe = message.fromMe; + if (message.id != null && message.hasOwnProperty("id")) + object.id = message.id; if (message.participant != null && message.hasOwnProperty("participant")) object.participant = message.participant; - if (message.isSentByMe != null && message.hasOwnProperty("isSentByMe")) - object.isSentByMe = message.isSentByMe; return object; }; /** - * Converts this RecentStickerMetadata to JSON. + * Converts this MessageKey to JSON. * @function toJSON - * @memberof proto.RecentStickerMetadata + * @memberof proto.MessageKey * @instance * @returns {Object.} JSON object */ - RecentStickerMetadata.prototype.toJSON = function toJSON() { + MessageKey.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return RecentStickerMetadata; - })(); - - proto.RecentEmojiWeightsAction = (function() { - - /** - * Properties of a RecentEmojiWeightsAction. - * @memberof proto - * @interface IRecentEmojiWeightsAction - * @property {Array.|null} [weights] RecentEmojiWeightsAction weights - */ - - /** - * Constructs a new RecentEmojiWeightsAction. - * @memberof proto - * @classdesc Represents a RecentEmojiWeightsAction. - * @implements IRecentEmojiWeightsAction - * @constructor - * @param {proto.IRecentEmojiWeightsAction=} [properties] Properties to set - */ - function RecentEmojiWeightsAction(properties) { - this.weights = []; - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * RecentEmojiWeightsAction weights. - * @member {Array.} weights - * @memberof proto.RecentEmojiWeightsAction - * @instance - */ - RecentEmojiWeightsAction.prototype.weights = $util.emptyArray; - - /** - * Creates a new RecentEmojiWeightsAction instance using the specified properties. - * @function create - * @memberof proto.RecentEmojiWeightsAction - * @static - * @param {proto.IRecentEmojiWeightsAction=} [properties] Properties to set - * @returns {proto.RecentEmojiWeightsAction} RecentEmojiWeightsAction instance - */ - RecentEmojiWeightsAction.create = function create(properties) { - return new RecentEmojiWeightsAction(properties); - }; - - /** - * Encodes the specified RecentEmojiWeightsAction message. Does not implicitly {@link proto.RecentEmojiWeightsAction.verify|verify} messages. - * @function encode - * @memberof proto.RecentEmojiWeightsAction - * @static - * @param {proto.IRecentEmojiWeightsAction} message RecentEmojiWeightsAction message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - RecentEmojiWeightsAction.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.weights != null && message.weights.length) - for (var i = 0; i < message.weights.length; ++i) - $root.proto.RecentEmojiWeight.encode(message.weights[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); - return writer; - }; - - /** - * Encodes the specified RecentEmojiWeightsAction message, length delimited. Does not implicitly {@link proto.RecentEmojiWeightsAction.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.RecentEmojiWeightsAction - * @static - * @param {proto.IRecentEmojiWeightsAction} message RecentEmojiWeightsAction message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - RecentEmojiWeightsAction.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a RecentEmojiWeightsAction message from the specified reader or buffer. - * @function decode - * @memberof proto.RecentEmojiWeightsAction - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.RecentEmojiWeightsAction} RecentEmojiWeightsAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - RecentEmojiWeightsAction.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.RecentEmojiWeightsAction(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - if (!(message.weights && message.weights.length)) - message.weights = []; - message.weights.push($root.proto.RecentEmojiWeight.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a RecentEmojiWeightsAction message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.RecentEmojiWeightsAction - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.RecentEmojiWeightsAction} RecentEmojiWeightsAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - RecentEmojiWeightsAction.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a RecentEmojiWeightsAction message. - * @function verify - * @memberof proto.RecentEmojiWeightsAction - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - RecentEmojiWeightsAction.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.weights != null && message.hasOwnProperty("weights")) { - if (!Array.isArray(message.weights)) - return "weights: array expected"; - for (var i = 0; i < message.weights.length; ++i) { - var error = $root.proto.RecentEmojiWeight.verify(message.weights[i]); - if (error) - return "weights." + error; - } - } - return null; - }; - - /** - * Creates a RecentEmojiWeightsAction message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.RecentEmojiWeightsAction - * @static - * @param {Object.} object Plain object - * @returns {proto.RecentEmojiWeightsAction} RecentEmojiWeightsAction - */ - RecentEmojiWeightsAction.fromObject = function fromObject(object) { - if (object instanceof $root.proto.RecentEmojiWeightsAction) - return object; - var message = new $root.proto.RecentEmojiWeightsAction(); - if (object.weights) { - if (!Array.isArray(object.weights)) - throw TypeError(".proto.RecentEmojiWeightsAction.weights: array expected"); - message.weights = []; - for (var i = 0; i < object.weights.length; ++i) { - if (typeof object.weights[i] !== "object") - throw TypeError(".proto.RecentEmojiWeightsAction.weights: object expected"); - message.weights[i] = $root.proto.RecentEmojiWeight.fromObject(object.weights[i]); - } - } - return message; - }; - - /** - * Creates a plain object from a RecentEmojiWeightsAction message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.RecentEmojiWeightsAction - * @static - * @param {proto.RecentEmojiWeightsAction} message RecentEmojiWeightsAction - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - RecentEmojiWeightsAction.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.weights = []; - if (message.weights && message.weights.length) { - object.weights = []; - for (var j = 0; j < message.weights.length; ++j) - object.weights[j] = $root.proto.RecentEmojiWeight.toObject(message.weights[j], options); - } - return object; - }; - - /** - * Converts this RecentEmojiWeightsAction to JSON. - * @function toJSON - * @memberof proto.RecentEmojiWeightsAction - * @instance - * @returns {Object.} JSON object - */ - RecentEmojiWeightsAction.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return RecentEmojiWeightsAction; - })(); - - proto.ArchiveChatAction = (function() { - - /** - * Properties of an ArchiveChatAction. - * @memberof proto - * @interface IArchiveChatAction - * @property {boolean|null} [archived] ArchiveChatAction archived - * @property {proto.ISyncActionMessageRange|null} [messageRange] ArchiveChatAction messageRange - */ - - /** - * Constructs a new ArchiveChatAction. - * @memberof proto - * @classdesc Represents an ArchiveChatAction. - * @implements IArchiveChatAction - * @constructor - * @param {proto.IArchiveChatAction=} [properties] Properties to set - */ - function ArchiveChatAction(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * ArchiveChatAction archived. - * @member {boolean} archived - * @memberof proto.ArchiveChatAction - * @instance - */ - ArchiveChatAction.prototype.archived = false; - - /** - * ArchiveChatAction messageRange. - * @member {proto.ISyncActionMessageRange|null|undefined} messageRange - * @memberof proto.ArchiveChatAction - * @instance - */ - ArchiveChatAction.prototype.messageRange = null; - - /** - * Creates a new ArchiveChatAction instance using the specified properties. - * @function create - * @memberof proto.ArchiveChatAction - * @static - * @param {proto.IArchiveChatAction=} [properties] Properties to set - * @returns {proto.ArchiveChatAction} ArchiveChatAction instance - */ - ArchiveChatAction.create = function create(properties) { - return new ArchiveChatAction(properties); - }; - - /** - * Encodes the specified ArchiveChatAction message. Does not implicitly {@link proto.ArchiveChatAction.verify|verify} messages. - * @function encode - * @memberof proto.ArchiveChatAction - * @static - * @param {proto.IArchiveChatAction} message ArchiveChatAction message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ArchiveChatAction.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.archived != null && Object.hasOwnProperty.call(message, "archived")) - writer.uint32(/* id 1, wireType 0 =*/8).bool(message.archived); - if (message.messageRange != null && Object.hasOwnProperty.call(message, "messageRange")) - $root.proto.SyncActionMessageRange.encode(message.messageRange, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - return writer; - }; - - /** - * Encodes the specified ArchiveChatAction message, length delimited. Does not implicitly {@link proto.ArchiveChatAction.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.ArchiveChatAction - * @static - * @param {proto.IArchiveChatAction} message ArchiveChatAction message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ArchiveChatAction.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes an ArchiveChatAction message from the specified reader or buffer. - * @function decode - * @memberof proto.ArchiveChatAction - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.ArchiveChatAction} ArchiveChatAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ArchiveChatAction.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.ArchiveChatAction(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.archived = reader.bool(); - break; - case 2: - message.messageRange = $root.proto.SyncActionMessageRange.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes an ArchiveChatAction message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.ArchiveChatAction - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.ArchiveChatAction} ArchiveChatAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ArchiveChatAction.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies an ArchiveChatAction message. - * @function verify - * @memberof proto.ArchiveChatAction - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - ArchiveChatAction.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.archived != null && message.hasOwnProperty("archived")) - if (typeof message.archived !== "boolean") - return "archived: boolean expected"; - if (message.messageRange != null && message.hasOwnProperty("messageRange")) { - var error = $root.proto.SyncActionMessageRange.verify(message.messageRange); - if (error) - return "messageRange." + error; - } - return null; - }; - - /** - * Creates an ArchiveChatAction message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.ArchiveChatAction - * @static - * @param {Object.} object Plain object - * @returns {proto.ArchiveChatAction} ArchiveChatAction - */ - ArchiveChatAction.fromObject = function fromObject(object) { - if (object instanceof $root.proto.ArchiveChatAction) - return object; - var message = new $root.proto.ArchiveChatAction(); - if (object.archived != null) - message.archived = Boolean(object.archived); - if (object.messageRange != null) { - if (typeof object.messageRange !== "object") - throw TypeError(".proto.ArchiveChatAction.messageRange: object expected"); - message.messageRange = $root.proto.SyncActionMessageRange.fromObject(object.messageRange); - } - return message; - }; - - /** - * Creates a plain object from an ArchiveChatAction message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.ArchiveChatAction - * @static - * @param {proto.ArchiveChatAction} message ArchiveChatAction - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ArchiveChatAction.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.archived = false; - object.messageRange = null; - } - if (message.archived != null && message.hasOwnProperty("archived")) - object.archived = message.archived; - if (message.messageRange != null && message.hasOwnProperty("messageRange")) - object.messageRange = $root.proto.SyncActionMessageRange.toObject(message.messageRange, options); - return object; - }; - - /** - * Converts this ArchiveChatAction to JSON. - * @function toJSON - * @memberof proto.ArchiveChatAction - * @instance - * @returns {Object.} JSON object - */ - ArchiveChatAction.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return ArchiveChatAction; - })(); - - proto.DeleteMessageForMeAction = (function() { - - /** - * Properties of a DeleteMessageForMeAction. - * @memberof proto - * @interface IDeleteMessageForMeAction - * @property {boolean|null} [deleteMedia] DeleteMessageForMeAction deleteMedia - * @property {number|Long|null} [messageTimestamp] DeleteMessageForMeAction messageTimestamp - */ - - /** - * Constructs a new DeleteMessageForMeAction. - * @memberof proto - * @classdesc Represents a DeleteMessageForMeAction. - * @implements IDeleteMessageForMeAction - * @constructor - * @param {proto.IDeleteMessageForMeAction=} [properties] Properties to set - */ - function DeleteMessageForMeAction(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * DeleteMessageForMeAction deleteMedia. - * @member {boolean} deleteMedia - * @memberof proto.DeleteMessageForMeAction - * @instance - */ - DeleteMessageForMeAction.prototype.deleteMedia = false; - - /** - * DeleteMessageForMeAction messageTimestamp. - * @member {number|Long} messageTimestamp - * @memberof proto.DeleteMessageForMeAction - * @instance - */ - DeleteMessageForMeAction.prototype.messageTimestamp = $util.Long ? $util.Long.fromBits(0,0,false) : 0; - - /** - * Creates a new DeleteMessageForMeAction instance using the specified properties. - * @function create - * @memberof proto.DeleteMessageForMeAction - * @static - * @param {proto.IDeleteMessageForMeAction=} [properties] Properties to set - * @returns {proto.DeleteMessageForMeAction} DeleteMessageForMeAction instance - */ - DeleteMessageForMeAction.create = function create(properties) { - return new DeleteMessageForMeAction(properties); - }; - - /** - * Encodes the specified DeleteMessageForMeAction message. Does not implicitly {@link proto.DeleteMessageForMeAction.verify|verify} messages. - * @function encode - * @memberof proto.DeleteMessageForMeAction - * @static - * @param {proto.IDeleteMessageForMeAction} message DeleteMessageForMeAction message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - DeleteMessageForMeAction.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.deleteMedia != null && Object.hasOwnProperty.call(message, "deleteMedia")) - writer.uint32(/* id 1, wireType 0 =*/8).bool(message.deleteMedia); - if (message.messageTimestamp != null && Object.hasOwnProperty.call(message, "messageTimestamp")) - writer.uint32(/* id 2, wireType 0 =*/16).int64(message.messageTimestamp); - return writer; - }; - - /** - * Encodes the specified DeleteMessageForMeAction message, length delimited. Does not implicitly {@link proto.DeleteMessageForMeAction.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.DeleteMessageForMeAction - * @static - * @param {proto.IDeleteMessageForMeAction} message DeleteMessageForMeAction message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - DeleteMessageForMeAction.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a DeleteMessageForMeAction message from the specified reader or buffer. - * @function decode - * @memberof proto.DeleteMessageForMeAction - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.DeleteMessageForMeAction} DeleteMessageForMeAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - DeleteMessageForMeAction.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.DeleteMessageForMeAction(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.deleteMedia = reader.bool(); - break; - case 2: - message.messageTimestamp = reader.int64(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a DeleteMessageForMeAction message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.DeleteMessageForMeAction - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.DeleteMessageForMeAction} DeleteMessageForMeAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - DeleteMessageForMeAction.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a DeleteMessageForMeAction message. - * @function verify - * @memberof proto.DeleteMessageForMeAction - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - DeleteMessageForMeAction.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.deleteMedia != null && message.hasOwnProperty("deleteMedia")) - if (typeof message.deleteMedia !== "boolean") - return "deleteMedia: boolean expected"; - if (message.messageTimestamp != null && message.hasOwnProperty("messageTimestamp")) - if (!$util.isInteger(message.messageTimestamp) && !(message.messageTimestamp && $util.isInteger(message.messageTimestamp.low) && $util.isInteger(message.messageTimestamp.high))) - return "messageTimestamp: integer|Long expected"; - return null; - }; - - /** - * Creates a DeleteMessageForMeAction message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.DeleteMessageForMeAction - * @static - * @param {Object.} object Plain object - * @returns {proto.DeleteMessageForMeAction} DeleteMessageForMeAction - */ - DeleteMessageForMeAction.fromObject = function fromObject(object) { - if (object instanceof $root.proto.DeleteMessageForMeAction) - return object; - var message = new $root.proto.DeleteMessageForMeAction(); - if (object.deleteMedia != null) - message.deleteMedia = Boolean(object.deleteMedia); - if (object.messageTimestamp != null) - if ($util.Long) - (message.messageTimestamp = $util.Long.fromValue(object.messageTimestamp)).unsigned = false; - else if (typeof object.messageTimestamp === "string") - message.messageTimestamp = parseInt(object.messageTimestamp, 10); - else if (typeof object.messageTimestamp === "number") - message.messageTimestamp = object.messageTimestamp; - else if (typeof object.messageTimestamp === "object") - message.messageTimestamp = new $util.LongBits(object.messageTimestamp.low >>> 0, object.messageTimestamp.high >>> 0).toNumber(); - return message; - }; - - /** - * Creates a plain object from a DeleteMessageForMeAction message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.DeleteMessageForMeAction - * @static - * @param {proto.DeleteMessageForMeAction} message DeleteMessageForMeAction - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - DeleteMessageForMeAction.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.deleteMedia = false; - if ($util.Long) { - var long = new $util.Long(0, 0, false); - object.messageTimestamp = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; - } else - object.messageTimestamp = options.longs === String ? "0" : 0; - } - if (message.deleteMedia != null && message.hasOwnProperty("deleteMedia")) - object.deleteMedia = message.deleteMedia; - if (message.messageTimestamp != null && message.hasOwnProperty("messageTimestamp")) - if (typeof message.messageTimestamp === "number") - object.messageTimestamp = options.longs === String ? String(message.messageTimestamp) : message.messageTimestamp; - else - object.messageTimestamp = options.longs === String ? $util.Long.prototype.toString.call(message.messageTimestamp) : options.longs === Number ? new $util.LongBits(message.messageTimestamp.low >>> 0, message.messageTimestamp.high >>> 0).toNumber() : message.messageTimestamp; - return object; - }; - - /** - * Converts this DeleteMessageForMeAction to JSON. - * @function toJSON - * @memberof proto.DeleteMessageForMeAction - * @instance - * @returns {Object.} JSON object - */ - DeleteMessageForMeAction.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return DeleteMessageForMeAction; - })(); - - proto.MarkChatAsReadAction = (function() { - - /** - * Properties of a MarkChatAsReadAction. - * @memberof proto - * @interface IMarkChatAsReadAction - * @property {boolean|null} [read] MarkChatAsReadAction read - * @property {proto.ISyncActionMessageRange|null} [messageRange] MarkChatAsReadAction messageRange - */ - - /** - * Constructs a new MarkChatAsReadAction. - * @memberof proto - * @classdesc Represents a MarkChatAsReadAction. - * @implements IMarkChatAsReadAction - * @constructor - * @param {proto.IMarkChatAsReadAction=} [properties] Properties to set - */ - function MarkChatAsReadAction(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * MarkChatAsReadAction read. - * @member {boolean} read - * @memberof proto.MarkChatAsReadAction - * @instance - */ - MarkChatAsReadAction.prototype.read = false; - - /** - * MarkChatAsReadAction messageRange. - * @member {proto.ISyncActionMessageRange|null|undefined} messageRange - * @memberof proto.MarkChatAsReadAction - * @instance - */ - MarkChatAsReadAction.prototype.messageRange = null; - - /** - * Creates a new MarkChatAsReadAction instance using the specified properties. - * @function create - * @memberof proto.MarkChatAsReadAction - * @static - * @param {proto.IMarkChatAsReadAction=} [properties] Properties to set - * @returns {proto.MarkChatAsReadAction} MarkChatAsReadAction instance - */ - MarkChatAsReadAction.create = function create(properties) { - return new MarkChatAsReadAction(properties); - }; - - /** - * Encodes the specified MarkChatAsReadAction message. Does not implicitly {@link proto.MarkChatAsReadAction.verify|verify} messages. - * @function encode - * @memberof proto.MarkChatAsReadAction - * @static - * @param {proto.IMarkChatAsReadAction} message MarkChatAsReadAction message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - MarkChatAsReadAction.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.read != null && Object.hasOwnProperty.call(message, "read")) - writer.uint32(/* id 1, wireType 0 =*/8).bool(message.read); - if (message.messageRange != null && Object.hasOwnProperty.call(message, "messageRange")) - $root.proto.SyncActionMessageRange.encode(message.messageRange, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - return writer; - }; - - /** - * Encodes the specified MarkChatAsReadAction message, length delimited. Does not implicitly {@link proto.MarkChatAsReadAction.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.MarkChatAsReadAction - * @static - * @param {proto.IMarkChatAsReadAction} message MarkChatAsReadAction message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - MarkChatAsReadAction.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a MarkChatAsReadAction message from the specified reader or buffer. - * @function decode - * @memberof proto.MarkChatAsReadAction - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.MarkChatAsReadAction} MarkChatAsReadAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - MarkChatAsReadAction.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.MarkChatAsReadAction(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.read = reader.bool(); - break; - case 2: - message.messageRange = $root.proto.SyncActionMessageRange.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a MarkChatAsReadAction message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.MarkChatAsReadAction - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.MarkChatAsReadAction} MarkChatAsReadAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - MarkChatAsReadAction.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a MarkChatAsReadAction message. - * @function verify - * @memberof proto.MarkChatAsReadAction - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - MarkChatAsReadAction.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.read != null && message.hasOwnProperty("read")) - if (typeof message.read !== "boolean") - return "read: boolean expected"; - if (message.messageRange != null && message.hasOwnProperty("messageRange")) { - var error = $root.proto.SyncActionMessageRange.verify(message.messageRange); - if (error) - return "messageRange." + error; - } - return null; - }; - - /** - * Creates a MarkChatAsReadAction message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.MarkChatAsReadAction - * @static - * @param {Object.} object Plain object - * @returns {proto.MarkChatAsReadAction} MarkChatAsReadAction - */ - MarkChatAsReadAction.fromObject = function fromObject(object) { - if (object instanceof $root.proto.MarkChatAsReadAction) - return object; - var message = new $root.proto.MarkChatAsReadAction(); - if (object.read != null) - message.read = Boolean(object.read); - if (object.messageRange != null) { - if (typeof object.messageRange !== "object") - throw TypeError(".proto.MarkChatAsReadAction.messageRange: object expected"); - message.messageRange = $root.proto.SyncActionMessageRange.fromObject(object.messageRange); - } - return message; - }; - - /** - * Creates a plain object from a MarkChatAsReadAction message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.MarkChatAsReadAction - * @static - * @param {proto.MarkChatAsReadAction} message MarkChatAsReadAction - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - MarkChatAsReadAction.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.read = false; - object.messageRange = null; - } - if (message.read != null && message.hasOwnProperty("read")) - object.read = message.read; - if (message.messageRange != null && message.hasOwnProperty("messageRange")) - object.messageRange = $root.proto.SyncActionMessageRange.toObject(message.messageRange, options); - return object; - }; - - /** - * Converts this MarkChatAsReadAction to JSON. - * @function toJSON - * @memberof proto.MarkChatAsReadAction - * @instance - * @returns {Object.} JSON object - */ - MarkChatAsReadAction.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return MarkChatAsReadAction; - })(); - - proto.ClearChatAction = (function() { - - /** - * Properties of a ClearChatAction. - * @memberof proto - * @interface IClearChatAction - * @property {proto.ISyncActionMessageRange|null} [messageRange] ClearChatAction messageRange - */ - - /** - * Constructs a new ClearChatAction. - * @memberof proto - * @classdesc Represents a ClearChatAction. - * @implements IClearChatAction - * @constructor - * @param {proto.IClearChatAction=} [properties] Properties to set - */ - function ClearChatAction(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * ClearChatAction messageRange. - * @member {proto.ISyncActionMessageRange|null|undefined} messageRange - * @memberof proto.ClearChatAction - * @instance - */ - ClearChatAction.prototype.messageRange = null; - - /** - * Creates a new ClearChatAction instance using the specified properties. - * @function create - * @memberof proto.ClearChatAction - * @static - * @param {proto.IClearChatAction=} [properties] Properties to set - * @returns {proto.ClearChatAction} ClearChatAction instance - */ - ClearChatAction.create = function create(properties) { - return new ClearChatAction(properties); - }; - - /** - * Encodes the specified ClearChatAction message. Does not implicitly {@link proto.ClearChatAction.verify|verify} messages. - * @function encode - * @memberof proto.ClearChatAction - * @static - * @param {proto.IClearChatAction} message ClearChatAction message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ClearChatAction.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.messageRange != null && Object.hasOwnProperty.call(message, "messageRange")) - $root.proto.SyncActionMessageRange.encode(message.messageRange, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); - return writer; - }; - - /** - * Encodes the specified ClearChatAction message, length delimited. Does not implicitly {@link proto.ClearChatAction.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.ClearChatAction - * @static - * @param {proto.IClearChatAction} message ClearChatAction message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ClearChatAction.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a ClearChatAction message from the specified reader or buffer. - * @function decode - * @memberof proto.ClearChatAction - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.ClearChatAction} ClearChatAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ClearChatAction.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.ClearChatAction(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.messageRange = $root.proto.SyncActionMessageRange.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a ClearChatAction message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.ClearChatAction - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.ClearChatAction} ClearChatAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ClearChatAction.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a ClearChatAction message. - * @function verify - * @memberof proto.ClearChatAction - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - ClearChatAction.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.messageRange != null && message.hasOwnProperty("messageRange")) { - var error = $root.proto.SyncActionMessageRange.verify(message.messageRange); - if (error) - return "messageRange." + error; - } - return null; - }; - - /** - * Creates a ClearChatAction message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.ClearChatAction - * @static - * @param {Object.} object Plain object - * @returns {proto.ClearChatAction} ClearChatAction - */ - ClearChatAction.fromObject = function fromObject(object) { - if (object instanceof $root.proto.ClearChatAction) - return object; - var message = new $root.proto.ClearChatAction(); - if (object.messageRange != null) { - if (typeof object.messageRange !== "object") - throw TypeError(".proto.ClearChatAction.messageRange: object expected"); - message.messageRange = $root.proto.SyncActionMessageRange.fromObject(object.messageRange); - } - return message; - }; - - /** - * Creates a plain object from a ClearChatAction message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.ClearChatAction - * @static - * @param {proto.ClearChatAction} message ClearChatAction - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ClearChatAction.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) - object.messageRange = null; - if (message.messageRange != null && message.hasOwnProperty("messageRange")) - object.messageRange = $root.proto.SyncActionMessageRange.toObject(message.messageRange, options); - return object; - }; - - /** - * Converts this ClearChatAction to JSON. - * @function toJSON - * @memberof proto.ClearChatAction - * @instance - * @returns {Object.} JSON object - */ - ClearChatAction.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return ClearChatAction; - })(); - - proto.DeleteChatAction = (function() { - - /** - * Properties of a DeleteChatAction. - * @memberof proto - * @interface IDeleteChatAction - * @property {proto.ISyncActionMessageRange|null} [messageRange] DeleteChatAction messageRange - */ - - /** - * Constructs a new DeleteChatAction. - * @memberof proto - * @classdesc Represents a DeleteChatAction. - * @implements IDeleteChatAction - * @constructor - * @param {proto.IDeleteChatAction=} [properties] Properties to set - */ - function DeleteChatAction(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * DeleteChatAction messageRange. - * @member {proto.ISyncActionMessageRange|null|undefined} messageRange - * @memberof proto.DeleteChatAction - * @instance - */ - DeleteChatAction.prototype.messageRange = null; - - /** - * Creates a new DeleteChatAction instance using the specified properties. - * @function create - * @memberof proto.DeleteChatAction - * @static - * @param {proto.IDeleteChatAction=} [properties] Properties to set - * @returns {proto.DeleteChatAction} DeleteChatAction instance - */ - DeleteChatAction.create = function create(properties) { - return new DeleteChatAction(properties); - }; - - /** - * Encodes the specified DeleteChatAction message. Does not implicitly {@link proto.DeleteChatAction.verify|verify} messages. - * @function encode - * @memberof proto.DeleteChatAction - * @static - * @param {proto.IDeleteChatAction} message DeleteChatAction message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - DeleteChatAction.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.messageRange != null && Object.hasOwnProperty.call(message, "messageRange")) - $root.proto.SyncActionMessageRange.encode(message.messageRange, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); - return writer; - }; - - /** - * Encodes the specified DeleteChatAction message, length delimited. Does not implicitly {@link proto.DeleteChatAction.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.DeleteChatAction - * @static - * @param {proto.IDeleteChatAction} message DeleteChatAction message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - DeleteChatAction.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a DeleteChatAction message from the specified reader or buffer. - * @function decode - * @memberof proto.DeleteChatAction - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.DeleteChatAction} DeleteChatAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - DeleteChatAction.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.DeleteChatAction(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.messageRange = $root.proto.SyncActionMessageRange.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a DeleteChatAction message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.DeleteChatAction - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.DeleteChatAction} DeleteChatAction - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - DeleteChatAction.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a DeleteChatAction message. - * @function verify - * @memberof proto.DeleteChatAction - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - DeleteChatAction.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.messageRange != null && message.hasOwnProperty("messageRange")) { - var error = $root.proto.SyncActionMessageRange.verify(message.messageRange); - if (error) - return "messageRange." + error; - } - return null; - }; - - /** - * Creates a DeleteChatAction message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.DeleteChatAction - * @static - * @param {Object.} object Plain object - * @returns {proto.DeleteChatAction} DeleteChatAction - */ - DeleteChatAction.fromObject = function fromObject(object) { - if (object instanceof $root.proto.DeleteChatAction) - return object; - var message = new $root.proto.DeleteChatAction(); - if (object.messageRange != null) { - if (typeof object.messageRange !== "object") - throw TypeError(".proto.DeleteChatAction.messageRange: object expected"); - message.messageRange = $root.proto.SyncActionMessageRange.fromObject(object.messageRange); - } - return message; - }; - - /** - * Creates a plain object from a DeleteChatAction message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.DeleteChatAction - * @static - * @param {proto.DeleteChatAction} message DeleteChatAction - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - DeleteChatAction.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) - object.messageRange = null; - if (message.messageRange != null && message.hasOwnProperty("messageRange")) - object.messageRange = $root.proto.SyncActionMessageRange.toObject(message.messageRange, options); - return object; - }; - - /** - * Converts this DeleteChatAction to JSON. - * @function toJSON - * @memberof proto.DeleteChatAction - * @instance - * @returns {Object.} JSON object - */ - DeleteChatAction.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return DeleteChatAction; - })(); - - proto.UnarchiveChatsSetting = (function() { - - /** - * Properties of an UnarchiveChatsSetting. - * @memberof proto - * @interface IUnarchiveChatsSetting - * @property {boolean|null} [unarchiveChats] UnarchiveChatsSetting unarchiveChats - */ - - /** - * Constructs a new UnarchiveChatsSetting. - * @memberof proto - * @classdesc Represents an UnarchiveChatsSetting. - * @implements IUnarchiveChatsSetting - * @constructor - * @param {proto.IUnarchiveChatsSetting=} [properties] Properties to set - */ - function UnarchiveChatsSetting(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * UnarchiveChatsSetting unarchiveChats. - * @member {boolean} unarchiveChats - * @memberof proto.UnarchiveChatsSetting - * @instance - */ - UnarchiveChatsSetting.prototype.unarchiveChats = false; - - /** - * Creates a new UnarchiveChatsSetting instance using the specified properties. - * @function create - * @memberof proto.UnarchiveChatsSetting - * @static - * @param {proto.IUnarchiveChatsSetting=} [properties] Properties to set - * @returns {proto.UnarchiveChatsSetting} UnarchiveChatsSetting instance - */ - UnarchiveChatsSetting.create = function create(properties) { - return new UnarchiveChatsSetting(properties); - }; - - /** - * Encodes the specified UnarchiveChatsSetting message. Does not implicitly {@link proto.UnarchiveChatsSetting.verify|verify} messages. - * @function encode - * @memberof proto.UnarchiveChatsSetting - * @static - * @param {proto.IUnarchiveChatsSetting} message UnarchiveChatsSetting message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - UnarchiveChatsSetting.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.unarchiveChats != null && Object.hasOwnProperty.call(message, "unarchiveChats")) - writer.uint32(/* id 1, wireType 0 =*/8).bool(message.unarchiveChats); - return writer; - }; - - /** - * Encodes the specified UnarchiveChatsSetting message, length delimited. Does not implicitly {@link proto.UnarchiveChatsSetting.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.UnarchiveChatsSetting - * @static - * @param {proto.IUnarchiveChatsSetting} message UnarchiveChatsSetting message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - UnarchiveChatsSetting.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes an UnarchiveChatsSetting message from the specified reader or buffer. - * @function decode - * @memberof proto.UnarchiveChatsSetting - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.UnarchiveChatsSetting} UnarchiveChatsSetting - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - UnarchiveChatsSetting.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.UnarchiveChatsSetting(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.unarchiveChats = reader.bool(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes an UnarchiveChatsSetting message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.UnarchiveChatsSetting - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.UnarchiveChatsSetting} UnarchiveChatsSetting - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - UnarchiveChatsSetting.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies an UnarchiveChatsSetting message. - * @function verify - * @memberof proto.UnarchiveChatsSetting - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - UnarchiveChatsSetting.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.unarchiveChats != null && message.hasOwnProperty("unarchiveChats")) - if (typeof message.unarchiveChats !== "boolean") - return "unarchiveChats: boolean expected"; - return null; - }; - - /** - * Creates an UnarchiveChatsSetting message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.UnarchiveChatsSetting - * @static - * @param {Object.} object Plain object - * @returns {proto.UnarchiveChatsSetting} UnarchiveChatsSetting - */ - UnarchiveChatsSetting.fromObject = function fromObject(object) { - if (object instanceof $root.proto.UnarchiveChatsSetting) - return object; - var message = new $root.proto.UnarchiveChatsSetting(); - if (object.unarchiveChats != null) - message.unarchiveChats = Boolean(object.unarchiveChats); - return message; - }; - - /** - * Creates a plain object from an UnarchiveChatsSetting message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.UnarchiveChatsSetting - * @static - * @param {proto.UnarchiveChatsSetting} message UnarchiveChatsSetting - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - UnarchiveChatsSetting.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) - object.unarchiveChats = false; - if (message.unarchiveChats != null && message.hasOwnProperty("unarchiveChats")) - object.unarchiveChats = message.unarchiveChats; - return object; - }; - - /** - * Converts this UnarchiveChatsSetting to JSON. - * @function toJSON - * @memberof proto.UnarchiveChatsSetting - * @instance - * @returns {Object.} JSON object - */ - UnarchiveChatsSetting.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return UnarchiveChatsSetting; - })(); - - proto.SyncActionMessageRange = (function() { - - /** - * Properties of a SyncActionMessageRange. - * @memberof proto - * @interface ISyncActionMessageRange - * @property {number|Long|null} [lastMessageTimestamp] SyncActionMessageRange lastMessageTimestamp - * @property {number|Long|null} [lastSystemMessageTimestamp] SyncActionMessageRange lastSystemMessageTimestamp - * @property {Array.|null} [messages] SyncActionMessageRange messages - */ - - /** - * Constructs a new SyncActionMessageRange. - * @memberof proto - * @classdesc Represents a SyncActionMessageRange. - * @implements ISyncActionMessageRange - * @constructor - * @param {proto.ISyncActionMessageRange=} [properties] Properties to set - */ - function SyncActionMessageRange(properties) { - this.messages = []; - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * SyncActionMessageRange lastMessageTimestamp. - * @member {number|Long} lastMessageTimestamp - * @memberof proto.SyncActionMessageRange - * @instance - */ - SyncActionMessageRange.prototype.lastMessageTimestamp = $util.Long ? $util.Long.fromBits(0,0,false) : 0; - - /** - * SyncActionMessageRange lastSystemMessageTimestamp. - * @member {number|Long} lastSystemMessageTimestamp - * @memberof proto.SyncActionMessageRange - * @instance - */ - SyncActionMessageRange.prototype.lastSystemMessageTimestamp = $util.Long ? $util.Long.fromBits(0,0,false) : 0; - - /** - * SyncActionMessageRange messages. - * @member {Array.} messages - * @memberof proto.SyncActionMessageRange - * @instance - */ - SyncActionMessageRange.prototype.messages = $util.emptyArray; - - /** - * Creates a new SyncActionMessageRange instance using the specified properties. - * @function create - * @memberof proto.SyncActionMessageRange - * @static - * @param {proto.ISyncActionMessageRange=} [properties] Properties to set - * @returns {proto.SyncActionMessageRange} SyncActionMessageRange instance - */ - SyncActionMessageRange.create = function create(properties) { - return new SyncActionMessageRange(properties); - }; - - /** - * Encodes the specified SyncActionMessageRange message. Does not implicitly {@link proto.SyncActionMessageRange.verify|verify} messages. - * @function encode - * @memberof proto.SyncActionMessageRange - * @static - * @param {proto.ISyncActionMessageRange} message SyncActionMessageRange message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - SyncActionMessageRange.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.lastMessageTimestamp != null && Object.hasOwnProperty.call(message, "lastMessageTimestamp")) - writer.uint32(/* id 1, wireType 0 =*/8).int64(message.lastMessageTimestamp); - if (message.lastSystemMessageTimestamp != null && Object.hasOwnProperty.call(message, "lastSystemMessageTimestamp")) - writer.uint32(/* id 2, wireType 0 =*/16).int64(message.lastSystemMessageTimestamp); - if (message.messages != null && message.messages.length) - for (var i = 0; i < message.messages.length; ++i) - $root.proto.SyncActionMessage.encode(message.messages[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); - return writer; - }; - - /** - * Encodes the specified SyncActionMessageRange message, length delimited. Does not implicitly {@link proto.SyncActionMessageRange.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.SyncActionMessageRange - * @static - * @param {proto.ISyncActionMessageRange} message SyncActionMessageRange message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - SyncActionMessageRange.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a SyncActionMessageRange message from the specified reader or buffer. - * @function decode - * @memberof proto.SyncActionMessageRange - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.SyncActionMessageRange} SyncActionMessageRange - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - SyncActionMessageRange.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.SyncActionMessageRange(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.lastMessageTimestamp = reader.int64(); - break; - case 2: - message.lastSystemMessageTimestamp = reader.int64(); - break; - case 3: - if (!(message.messages && message.messages.length)) - message.messages = []; - message.messages.push($root.proto.SyncActionMessage.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a SyncActionMessageRange message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.SyncActionMessageRange - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.SyncActionMessageRange} SyncActionMessageRange - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - SyncActionMessageRange.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a SyncActionMessageRange message. - * @function verify - * @memberof proto.SyncActionMessageRange - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - SyncActionMessageRange.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.lastMessageTimestamp != null && message.hasOwnProperty("lastMessageTimestamp")) - if (!$util.isInteger(message.lastMessageTimestamp) && !(message.lastMessageTimestamp && $util.isInteger(message.lastMessageTimestamp.low) && $util.isInteger(message.lastMessageTimestamp.high))) - return "lastMessageTimestamp: integer|Long expected"; - if (message.lastSystemMessageTimestamp != null && message.hasOwnProperty("lastSystemMessageTimestamp")) - if (!$util.isInteger(message.lastSystemMessageTimestamp) && !(message.lastSystemMessageTimestamp && $util.isInteger(message.lastSystemMessageTimestamp.low) && $util.isInteger(message.lastSystemMessageTimestamp.high))) - return "lastSystemMessageTimestamp: integer|Long expected"; - if (message.messages != null && message.hasOwnProperty("messages")) { - if (!Array.isArray(message.messages)) - return "messages: array expected"; - for (var i = 0; i < message.messages.length; ++i) { - var error = $root.proto.SyncActionMessage.verify(message.messages[i]); - if (error) - return "messages." + error; - } - } - return null; - }; - - /** - * Creates a SyncActionMessageRange message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.SyncActionMessageRange - * @static - * @param {Object.} object Plain object - * @returns {proto.SyncActionMessageRange} SyncActionMessageRange - */ - SyncActionMessageRange.fromObject = function fromObject(object) { - if (object instanceof $root.proto.SyncActionMessageRange) - return object; - var message = new $root.proto.SyncActionMessageRange(); - if (object.lastMessageTimestamp != null) - if ($util.Long) - (message.lastMessageTimestamp = $util.Long.fromValue(object.lastMessageTimestamp)).unsigned = false; - else if (typeof object.lastMessageTimestamp === "string") - message.lastMessageTimestamp = parseInt(object.lastMessageTimestamp, 10); - else if (typeof object.lastMessageTimestamp === "number") - message.lastMessageTimestamp = object.lastMessageTimestamp; - else if (typeof object.lastMessageTimestamp === "object") - message.lastMessageTimestamp = new $util.LongBits(object.lastMessageTimestamp.low >>> 0, object.lastMessageTimestamp.high >>> 0).toNumber(); - if (object.lastSystemMessageTimestamp != null) - if ($util.Long) - (message.lastSystemMessageTimestamp = $util.Long.fromValue(object.lastSystemMessageTimestamp)).unsigned = false; - else if (typeof object.lastSystemMessageTimestamp === "string") - message.lastSystemMessageTimestamp = parseInt(object.lastSystemMessageTimestamp, 10); - else if (typeof object.lastSystemMessageTimestamp === "number") - message.lastSystemMessageTimestamp = object.lastSystemMessageTimestamp; - else if (typeof object.lastSystemMessageTimestamp === "object") - message.lastSystemMessageTimestamp = new $util.LongBits(object.lastSystemMessageTimestamp.low >>> 0, object.lastSystemMessageTimestamp.high >>> 0).toNumber(); - if (object.messages) { - if (!Array.isArray(object.messages)) - throw TypeError(".proto.SyncActionMessageRange.messages: array expected"); - message.messages = []; - for (var i = 0; i < object.messages.length; ++i) { - if (typeof object.messages[i] !== "object") - throw TypeError(".proto.SyncActionMessageRange.messages: object expected"); - message.messages[i] = $root.proto.SyncActionMessage.fromObject(object.messages[i]); - } - } - return message; - }; - - /** - * Creates a plain object from a SyncActionMessageRange message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.SyncActionMessageRange - * @static - * @param {proto.SyncActionMessageRange} message SyncActionMessageRange - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - SyncActionMessageRange.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.messages = []; - if (options.defaults) { - if ($util.Long) { - var long = new $util.Long(0, 0, false); - object.lastMessageTimestamp = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; - } else - object.lastMessageTimestamp = options.longs === String ? "0" : 0; - if ($util.Long) { - var long = new $util.Long(0, 0, false); - object.lastSystemMessageTimestamp = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; - } else - object.lastSystemMessageTimestamp = options.longs === String ? "0" : 0; - } - if (message.lastMessageTimestamp != null && message.hasOwnProperty("lastMessageTimestamp")) - if (typeof message.lastMessageTimestamp === "number") - object.lastMessageTimestamp = options.longs === String ? String(message.lastMessageTimestamp) : message.lastMessageTimestamp; - else - object.lastMessageTimestamp = options.longs === String ? $util.Long.prototype.toString.call(message.lastMessageTimestamp) : options.longs === Number ? new $util.LongBits(message.lastMessageTimestamp.low >>> 0, message.lastMessageTimestamp.high >>> 0).toNumber() : message.lastMessageTimestamp; - if (message.lastSystemMessageTimestamp != null && message.hasOwnProperty("lastSystemMessageTimestamp")) - if (typeof message.lastSystemMessageTimestamp === "number") - object.lastSystemMessageTimestamp = options.longs === String ? String(message.lastSystemMessageTimestamp) : message.lastSystemMessageTimestamp; - else - object.lastSystemMessageTimestamp = options.longs === String ? $util.Long.prototype.toString.call(message.lastSystemMessageTimestamp) : options.longs === Number ? new $util.LongBits(message.lastSystemMessageTimestamp.low >>> 0, message.lastSystemMessageTimestamp.high >>> 0).toNumber() : message.lastSystemMessageTimestamp; - if (message.messages && message.messages.length) { - object.messages = []; - for (var j = 0; j < message.messages.length; ++j) - object.messages[j] = $root.proto.SyncActionMessage.toObject(message.messages[j], options); - } - return object; - }; - - /** - * Converts this SyncActionMessageRange to JSON. - * @function toJSON - * @memberof proto.SyncActionMessageRange - * @instance - * @returns {Object.} JSON object - */ - SyncActionMessageRange.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return SyncActionMessageRange; - })(); - - proto.SyncActionMessage = (function() { - - /** - * Properties of a SyncActionMessage. - * @memberof proto - * @interface ISyncActionMessage - * @property {proto.IMessageKey|null} [key] SyncActionMessage key - * @property {number|Long|null} [timestamp] SyncActionMessage timestamp - */ - - /** - * Constructs a new SyncActionMessage. - * @memberof proto - * @classdesc Represents a SyncActionMessage. - * @implements ISyncActionMessage - * @constructor - * @param {proto.ISyncActionMessage=} [properties] Properties to set - */ - function SyncActionMessage(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * SyncActionMessage key. - * @member {proto.IMessageKey|null|undefined} key - * @memberof proto.SyncActionMessage - * @instance - */ - SyncActionMessage.prototype.key = null; - - /** - * SyncActionMessage timestamp. - * @member {number|Long} timestamp - * @memberof proto.SyncActionMessage - * @instance - */ - SyncActionMessage.prototype.timestamp = $util.Long ? $util.Long.fromBits(0,0,false) : 0; - - /** - * Creates a new SyncActionMessage instance using the specified properties. - * @function create - * @memberof proto.SyncActionMessage - * @static - * @param {proto.ISyncActionMessage=} [properties] Properties to set - * @returns {proto.SyncActionMessage} SyncActionMessage instance - */ - SyncActionMessage.create = function create(properties) { - return new SyncActionMessage(properties); - }; - - /** - * Encodes the specified SyncActionMessage message. Does not implicitly {@link proto.SyncActionMessage.verify|verify} messages. - * @function encode - * @memberof proto.SyncActionMessage - * @static - * @param {proto.ISyncActionMessage} message SyncActionMessage message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - SyncActionMessage.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.key != null && Object.hasOwnProperty.call(message, "key")) - $root.proto.MessageKey.encode(message.key, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); - if (message.timestamp != null && Object.hasOwnProperty.call(message, "timestamp")) - writer.uint32(/* id 2, wireType 0 =*/16).int64(message.timestamp); - return writer; - }; - - /** - * Encodes the specified SyncActionMessage message, length delimited. Does not implicitly {@link proto.SyncActionMessage.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.SyncActionMessage - * @static - * @param {proto.ISyncActionMessage} message SyncActionMessage message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - SyncActionMessage.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a SyncActionMessage message from the specified reader or buffer. - * @function decode - * @memberof proto.SyncActionMessage - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.SyncActionMessage} SyncActionMessage - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - SyncActionMessage.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.SyncActionMessage(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.key = $root.proto.MessageKey.decode(reader, reader.uint32()); - break; - case 2: - message.timestamp = reader.int64(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a SyncActionMessage message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.SyncActionMessage - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.SyncActionMessage} SyncActionMessage - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - SyncActionMessage.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a SyncActionMessage message. - * @function verify - * @memberof proto.SyncActionMessage - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - SyncActionMessage.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.key != null && message.hasOwnProperty("key")) { - var error = $root.proto.MessageKey.verify(message.key); - if (error) - return "key." + error; - } - if (message.timestamp != null && message.hasOwnProperty("timestamp")) - if (!$util.isInteger(message.timestamp) && !(message.timestamp && $util.isInteger(message.timestamp.low) && $util.isInteger(message.timestamp.high))) - return "timestamp: integer|Long expected"; - return null; - }; - - /** - * Creates a SyncActionMessage message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.SyncActionMessage - * @static - * @param {Object.} object Plain object - * @returns {proto.SyncActionMessage} SyncActionMessage - */ - SyncActionMessage.fromObject = function fromObject(object) { - if (object instanceof $root.proto.SyncActionMessage) - return object; - var message = new $root.proto.SyncActionMessage(); - if (object.key != null) { - if (typeof object.key !== "object") - throw TypeError(".proto.SyncActionMessage.key: object expected"); - message.key = $root.proto.MessageKey.fromObject(object.key); - } - if (object.timestamp != null) - if ($util.Long) - (message.timestamp = $util.Long.fromValue(object.timestamp)).unsigned = false; - else if (typeof object.timestamp === "string") - message.timestamp = parseInt(object.timestamp, 10); - else if (typeof object.timestamp === "number") - message.timestamp = object.timestamp; - else if (typeof object.timestamp === "object") - message.timestamp = new $util.LongBits(object.timestamp.low >>> 0, object.timestamp.high >>> 0).toNumber(); - return message; - }; - - /** - * Creates a plain object from a SyncActionMessage message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.SyncActionMessage - * @static - * @param {proto.SyncActionMessage} message SyncActionMessage - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - SyncActionMessage.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.key = null; - if ($util.Long) { - var long = new $util.Long(0, 0, false); - object.timestamp = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; - } else - object.timestamp = options.longs === String ? "0" : 0; - } - if (message.key != null && message.hasOwnProperty("key")) - object.key = $root.proto.MessageKey.toObject(message.key, options); - if (message.timestamp != null && message.hasOwnProperty("timestamp")) - if (typeof message.timestamp === "number") - object.timestamp = options.longs === String ? String(message.timestamp) : message.timestamp; - else - object.timestamp = options.longs === String ? $util.Long.prototype.toString.call(message.timestamp) : options.longs === Number ? new $util.LongBits(message.timestamp.low >>> 0, message.timestamp.high >>> 0).toNumber() : message.timestamp; - return object; - }; - - /** - * Converts this SyncActionMessage to JSON. - * @function toJSON - * @memberof proto.SyncActionMessage - * @instance - * @returns {Object.} JSON object - */ - SyncActionMessage.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return SyncActionMessage; - })(); - - proto.KeyExpiration = (function() { - - /** - * Properties of a KeyExpiration. - * @memberof proto - * @interface IKeyExpiration - * @property {number|null} [expiredKeyEpoch] KeyExpiration expiredKeyEpoch - */ - - /** - * Constructs a new KeyExpiration. - * @memberof proto - * @classdesc Represents a KeyExpiration. - * @implements IKeyExpiration - * @constructor - * @param {proto.IKeyExpiration=} [properties] Properties to set - */ - function KeyExpiration(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * KeyExpiration expiredKeyEpoch. - * @member {number} expiredKeyEpoch - * @memberof proto.KeyExpiration - * @instance - */ - KeyExpiration.prototype.expiredKeyEpoch = 0; - - /** - * Creates a new KeyExpiration instance using the specified properties. - * @function create - * @memberof proto.KeyExpiration - * @static - * @param {proto.IKeyExpiration=} [properties] Properties to set - * @returns {proto.KeyExpiration} KeyExpiration instance - */ - KeyExpiration.create = function create(properties) { - return new KeyExpiration(properties); - }; - - /** - * Encodes the specified KeyExpiration message. Does not implicitly {@link proto.KeyExpiration.verify|verify} messages. - * @function encode - * @memberof proto.KeyExpiration - * @static - * @param {proto.IKeyExpiration} message KeyExpiration message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - KeyExpiration.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.expiredKeyEpoch != null && Object.hasOwnProperty.call(message, "expiredKeyEpoch")) - writer.uint32(/* id 1, wireType 0 =*/8).int32(message.expiredKeyEpoch); - return writer; - }; - - /** - * Encodes the specified KeyExpiration message, length delimited. Does not implicitly {@link proto.KeyExpiration.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.KeyExpiration - * @static - * @param {proto.IKeyExpiration} message KeyExpiration message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - KeyExpiration.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a KeyExpiration message from the specified reader or buffer. - * @function decode - * @memberof proto.KeyExpiration - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.KeyExpiration} KeyExpiration - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - KeyExpiration.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.KeyExpiration(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.expiredKeyEpoch = reader.int32(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a KeyExpiration message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.KeyExpiration - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.KeyExpiration} KeyExpiration - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - KeyExpiration.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a KeyExpiration message. - * @function verify - * @memberof proto.KeyExpiration - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - KeyExpiration.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.expiredKeyEpoch != null && message.hasOwnProperty("expiredKeyEpoch")) - if (!$util.isInteger(message.expiredKeyEpoch)) - return "expiredKeyEpoch: integer expected"; - return null; - }; - - /** - * Creates a KeyExpiration message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.KeyExpiration - * @static - * @param {Object.} object Plain object - * @returns {proto.KeyExpiration} KeyExpiration - */ - KeyExpiration.fromObject = function fromObject(object) { - if (object instanceof $root.proto.KeyExpiration) - return object; - var message = new $root.proto.KeyExpiration(); - if (object.expiredKeyEpoch != null) - message.expiredKeyEpoch = object.expiredKeyEpoch | 0; - return message; - }; - - /** - * Creates a plain object from a KeyExpiration message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.KeyExpiration - * @static - * @param {proto.KeyExpiration} message KeyExpiration - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - KeyExpiration.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) - object.expiredKeyEpoch = 0; - if (message.expiredKeyEpoch != null && message.hasOwnProperty("expiredKeyEpoch")) - object.expiredKeyEpoch = message.expiredKeyEpoch; - return object; - }; - - /** - * Converts this KeyExpiration to JSON. - * @function toJSON - * @memberof proto.KeyExpiration - * @instance - * @returns {Object.} JSON object - */ - KeyExpiration.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return KeyExpiration; - })(); - - proto.SyncActionValue = (function() { - - /** - * Properties of a SyncActionValue. - * @memberof proto - * @interface ISyncActionValue - * @property {number|Long|null} [timestamp] SyncActionValue timestamp - * @property {proto.IStarAction|null} [starAction] SyncActionValue starAction - * @property {proto.IContactAction|null} [contactAction] SyncActionValue contactAction - * @property {proto.IMuteAction|null} [muteAction] SyncActionValue muteAction - * @property {proto.IPinAction|null} [pinAction] SyncActionValue pinAction - * @property {proto.ISecurityNotificationSetting|null} [securityNotificationSetting] SyncActionValue securityNotificationSetting - * @property {proto.IPushNameSetting|null} [pushNameSetting] SyncActionValue pushNameSetting - * @property {proto.IQuickReplyAction|null} [quickReplyAction] SyncActionValue quickReplyAction - * @property {proto.IRecentStickerWeightsAction|null} [recentStickerWeightsAction] SyncActionValue recentStickerWeightsAction - * @property {proto.IRecentStickerMetadata|null} [recentStickerMetadata] SyncActionValue recentStickerMetadata - * @property {proto.IRecentEmojiWeightsAction|null} [recentEmojiWeightsAction] SyncActionValue recentEmojiWeightsAction - * @property {proto.ILabelEditAction|null} [labelEditAction] SyncActionValue labelEditAction - * @property {proto.ILabelAssociationAction|null} [labelAssociationAction] SyncActionValue labelAssociationAction - * @property {proto.ILocaleSetting|null} [localeSetting] SyncActionValue localeSetting - * @property {proto.IArchiveChatAction|null} [archiveChatAction] SyncActionValue archiveChatAction - * @property {proto.IDeleteMessageForMeAction|null} [deleteMessageForMeAction] SyncActionValue deleteMessageForMeAction - * @property {proto.IKeyExpiration|null} [keyExpiration] SyncActionValue keyExpiration - * @property {proto.IMarkChatAsReadAction|null} [markChatAsReadAction] SyncActionValue markChatAsReadAction - * @property {proto.IClearChatAction|null} [clearChatAction] SyncActionValue clearChatAction - * @property {proto.IDeleteChatAction|null} [deleteChatAction] SyncActionValue deleteChatAction - * @property {proto.IUnarchiveChatsSetting|null} [unarchiveChatsSetting] SyncActionValue unarchiveChatsSetting - */ - - /** - * Constructs a new SyncActionValue. - * @memberof proto - * @classdesc Represents a SyncActionValue. - * @implements ISyncActionValue - * @constructor - * @param {proto.ISyncActionValue=} [properties] Properties to set - */ - function SyncActionValue(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * SyncActionValue timestamp. - * @member {number|Long} timestamp - * @memberof proto.SyncActionValue - * @instance - */ - SyncActionValue.prototype.timestamp = $util.Long ? $util.Long.fromBits(0,0,false) : 0; - - /** - * SyncActionValue starAction. - * @member {proto.IStarAction|null|undefined} starAction - * @memberof proto.SyncActionValue - * @instance - */ - SyncActionValue.prototype.starAction = null; - - /** - * SyncActionValue contactAction. - * @member {proto.IContactAction|null|undefined} contactAction - * @memberof proto.SyncActionValue - * @instance - */ - SyncActionValue.prototype.contactAction = null; - - /** - * SyncActionValue muteAction. - * @member {proto.IMuteAction|null|undefined} muteAction - * @memberof proto.SyncActionValue - * @instance - */ - SyncActionValue.prototype.muteAction = null; - - /** - * SyncActionValue pinAction. - * @member {proto.IPinAction|null|undefined} pinAction - * @memberof proto.SyncActionValue - * @instance - */ - SyncActionValue.prototype.pinAction = null; - - /** - * SyncActionValue securityNotificationSetting. - * @member {proto.ISecurityNotificationSetting|null|undefined} securityNotificationSetting - * @memberof proto.SyncActionValue - * @instance - */ - SyncActionValue.prototype.securityNotificationSetting = null; - - /** - * SyncActionValue pushNameSetting. - * @member {proto.IPushNameSetting|null|undefined} pushNameSetting - * @memberof proto.SyncActionValue - * @instance - */ - SyncActionValue.prototype.pushNameSetting = null; - - /** - * SyncActionValue quickReplyAction. - * @member {proto.IQuickReplyAction|null|undefined} quickReplyAction - * @memberof proto.SyncActionValue - * @instance - */ - SyncActionValue.prototype.quickReplyAction = null; - - /** - * SyncActionValue recentStickerWeightsAction. - * @member {proto.IRecentStickerWeightsAction|null|undefined} recentStickerWeightsAction - * @memberof proto.SyncActionValue - * @instance - */ - SyncActionValue.prototype.recentStickerWeightsAction = null; - - /** - * SyncActionValue recentStickerMetadata. - * @member {proto.IRecentStickerMetadata|null|undefined} recentStickerMetadata - * @memberof proto.SyncActionValue - * @instance - */ - SyncActionValue.prototype.recentStickerMetadata = null; - - /** - * SyncActionValue recentEmojiWeightsAction. - * @member {proto.IRecentEmojiWeightsAction|null|undefined} recentEmojiWeightsAction - * @memberof proto.SyncActionValue - * @instance - */ - SyncActionValue.prototype.recentEmojiWeightsAction = null; - - /** - * SyncActionValue labelEditAction. - * @member {proto.ILabelEditAction|null|undefined} labelEditAction - * @memberof proto.SyncActionValue - * @instance - */ - SyncActionValue.prototype.labelEditAction = null; - - /** - * SyncActionValue labelAssociationAction. - * @member {proto.ILabelAssociationAction|null|undefined} labelAssociationAction - * @memberof proto.SyncActionValue - * @instance - */ - SyncActionValue.prototype.labelAssociationAction = null; - - /** - * SyncActionValue localeSetting. - * @member {proto.ILocaleSetting|null|undefined} localeSetting - * @memberof proto.SyncActionValue - * @instance - */ - SyncActionValue.prototype.localeSetting = null; - - /** - * SyncActionValue archiveChatAction. - * @member {proto.IArchiveChatAction|null|undefined} archiveChatAction - * @memberof proto.SyncActionValue - * @instance - */ - SyncActionValue.prototype.archiveChatAction = null; - - /** - * SyncActionValue deleteMessageForMeAction. - * @member {proto.IDeleteMessageForMeAction|null|undefined} deleteMessageForMeAction - * @memberof proto.SyncActionValue - * @instance - */ - SyncActionValue.prototype.deleteMessageForMeAction = null; - - /** - * SyncActionValue keyExpiration. - * @member {proto.IKeyExpiration|null|undefined} keyExpiration - * @memberof proto.SyncActionValue - * @instance - */ - SyncActionValue.prototype.keyExpiration = null; - - /** - * SyncActionValue markChatAsReadAction. - * @member {proto.IMarkChatAsReadAction|null|undefined} markChatAsReadAction - * @memberof proto.SyncActionValue - * @instance - */ - SyncActionValue.prototype.markChatAsReadAction = null; - - /** - * SyncActionValue clearChatAction. - * @member {proto.IClearChatAction|null|undefined} clearChatAction - * @memberof proto.SyncActionValue - * @instance - */ - SyncActionValue.prototype.clearChatAction = null; - - /** - * SyncActionValue deleteChatAction. - * @member {proto.IDeleteChatAction|null|undefined} deleteChatAction - * @memberof proto.SyncActionValue - * @instance - */ - SyncActionValue.prototype.deleteChatAction = null; - - /** - * SyncActionValue unarchiveChatsSetting. - * @member {proto.IUnarchiveChatsSetting|null|undefined} unarchiveChatsSetting - * @memberof proto.SyncActionValue - * @instance - */ - SyncActionValue.prototype.unarchiveChatsSetting = null; - - /** - * Creates a new SyncActionValue instance using the specified properties. - * @function create - * @memberof proto.SyncActionValue - * @static - * @param {proto.ISyncActionValue=} [properties] Properties to set - * @returns {proto.SyncActionValue} SyncActionValue instance - */ - SyncActionValue.create = function create(properties) { - return new SyncActionValue(properties); - }; - - /** - * Encodes the specified SyncActionValue message. Does not implicitly {@link proto.SyncActionValue.verify|verify} messages. - * @function encode - * @memberof proto.SyncActionValue - * @static - * @param {proto.ISyncActionValue} message SyncActionValue message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - SyncActionValue.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.timestamp != null && Object.hasOwnProperty.call(message, "timestamp")) - writer.uint32(/* id 1, wireType 0 =*/8).int64(message.timestamp); - if (message.starAction != null && Object.hasOwnProperty.call(message, "starAction")) - $root.proto.StarAction.encode(message.starAction, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - if (message.contactAction != null && Object.hasOwnProperty.call(message, "contactAction")) - $root.proto.ContactAction.encode(message.contactAction, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); - if (message.muteAction != null && Object.hasOwnProperty.call(message, "muteAction")) - $root.proto.MuteAction.encode(message.muteAction, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); - if (message.pinAction != null && Object.hasOwnProperty.call(message, "pinAction")) - $root.proto.PinAction.encode(message.pinAction, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); - if (message.securityNotificationSetting != null && Object.hasOwnProperty.call(message, "securityNotificationSetting")) - $root.proto.SecurityNotificationSetting.encode(message.securityNotificationSetting, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); - if (message.pushNameSetting != null && Object.hasOwnProperty.call(message, "pushNameSetting")) - $root.proto.PushNameSetting.encode(message.pushNameSetting, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim(); - if (message.quickReplyAction != null && Object.hasOwnProperty.call(message, "quickReplyAction")) - $root.proto.QuickReplyAction.encode(message.quickReplyAction, writer.uint32(/* id 8, wireType 2 =*/66).fork()).ldelim(); - if (message.recentStickerWeightsAction != null && Object.hasOwnProperty.call(message, "recentStickerWeightsAction")) - $root.proto.RecentStickerWeightsAction.encode(message.recentStickerWeightsAction, writer.uint32(/* id 9, wireType 2 =*/74).fork()).ldelim(); - if (message.recentStickerMetadata != null && Object.hasOwnProperty.call(message, "recentStickerMetadata")) - $root.proto.RecentStickerMetadata.encode(message.recentStickerMetadata, writer.uint32(/* id 10, wireType 2 =*/82).fork()).ldelim(); - if (message.recentEmojiWeightsAction != null && Object.hasOwnProperty.call(message, "recentEmojiWeightsAction")) - $root.proto.RecentEmojiWeightsAction.encode(message.recentEmojiWeightsAction, writer.uint32(/* id 11, wireType 2 =*/90).fork()).ldelim(); - if (message.labelEditAction != null && Object.hasOwnProperty.call(message, "labelEditAction")) - $root.proto.LabelEditAction.encode(message.labelEditAction, writer.uint32(/* id 14, wireType 2 =*/114).fork()).ldelim(); - if (message.labelAssociationAction != null && Object.hasOwnProperty.call(message, "labelAssociationAction")) - $root.proto.LabelAssociationAction.encode(message.labelAssociationAction, writer.uint32(/* id 15, wireType 2 =*/122).fork()).ldelim(); - if (message.localeSetting != null && Object.hasOwnProperty.call(message, "localeSetting")) - $root.proto.LocaleSetting.encode(message.localeSetting, writer.uint32(/* id 16, wireType 2 =*/130).fork()).ldelim(); - if (message.archiveChatAction != null && Object.hasOwnProperty.call(message, "archiveChatAction")) - $root.proto.ArchiveChatAction.encode(message.archiveChatAction, writer.uint32(/* id 17, wireType 2 =*/138).fork()).ldelim(); - if (message.deleteMessageForMeAction != null && Object.hasOwnProperty.call(message, "deleteMessageForMeAction")) - $root.proto.DeleteMessageForMeAction.encode(message.deleteMessageForMeAction, writer.uint32(/* id 18, wireType 2 =*/146).fork()).ldelim(); - if (message.keyExpiration != null && Object.hasOwnProperty.call(message, "keyExpiration")) - $root.proto.KeyExpiration.encode(message.keyExpiration, writer.uint32(/* id 19, wireType 2 =*/154).fork()).ldelim(); - if (message.markChatAsReadAction != null && Object.hasOwnProperty.call(message, "markChatAsReadAction")) - $root.proto.MarkChatAsReadAction.encode(message.markChatAsReadAction, writer.uint32(/* id 20, wireType 2 =*/162).fork()).ldelim(); - if (message.clearChatAction != null && Object.hasOwnProperty.call(message, "clearChatAction")) - $root.proto.ClearChatAction.encode(message.clearChatAction, writer.uint32(/* id 21, wireType 2 =*/170).fork()).ldelim(); - if (message.deleteChatAction != null && Object.hasOwnProperty.call(message, "deleteChatAction")) - $root.proto.DeleteChatAction.encode(message.deleteChatAction, writer.uint32(/* id 22, wireType 2 =*/178).fork()).ldelim(); - if (message.unarchiveChatsSetting != null && Object.hasOwnProperty.call(message, "unarchiveChatsSetting")) - $root.proto.UnarchiveChatsSetting.encode(message.unarchiveChatsSetting, writer.uint32(/* id 23, wireType 2 =*/186).fork()).ldelim(); - return writer; - }; - - /** - * Encodes the specified SyncActionValue message, length delimited. Does not implicitly {@link proto.SyncActionValue.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.SyncActionValue - * @static - * @param {proto.ISyncActionValue} message SyncActionValue message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - SyncActionValue.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a SyncActionValue message from the specified reader or buffer. - * @function decode - * @memberof proto.SyncActionValue - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.SyncActionValue} SyncActionValue - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - SyncActionValue.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.SyncActionValue(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.timestamp = reader.int64(); - break; - case 2: - message.starAction = $root.proto.StarAction.decode(reader, reader.uint32()); - break; - case 3: - message.contactAction = $root.proto.ContactAction.decode(reader, reader.uint32()); - break; - case 4: - message.muteAction = $root.proto.MuteAction.decode(reader, reader.uint32()); - break; - case 5: - message.pinAction = $root.proto.PinAction.decode(reader, reader.uint32()); - break; - case 6: - message.securityNotificationSetting = $root.proto.SecurityNotificationSetting.decode(reader, reader.uint32()); - break; - case 7: - message.pushNameSetting = $root.proto.PushNameSetting.decode(reader, reader.uint32()); - break; - case 8: - message.quickReplyAction = $root.proto.QuickReplyAction.decode(reader, reader.uint32()); - break; - case 9: - message.recentStickerWeightsAction = $root.proto.RecentStickerWeightsAction.decode(reader, reader.uint32()); - break; - case 10: - message.recentStickerMetadata = $root.proto.RecentStickerMetadata.decode(reader, reader.uint32()); - break; - case 11: - message.recentEmojiWeightsAction = $root.proto.RecentEmojiWeightsAction.decode(reader, reader.uint32()); - break; - case 14: - message.labelEditAction = $root.proto.LabelEditAction.decode(reader, reader.uint32()); - break; - case 15: - message.labelAssociationAction = $root.proto.LabelAssociationAction.decode(reader, reader.uint32()); - break; - case 16: - message.localeSetting = $root.proto.LocaleSetting.decode(reader, reader.uint32()); - break; - case 17: - message.archiveChatAction = $root.proto.ArchiveChatAction.decode(reader, reader.uint32()); - break; - case 18: - message.deleteMessageForMeAction = $root.proto.DeleteMessageForMeAction.decode(reader, reader.uint32()); - break; - case 19: - message.keyExpiration = $root.proto.KeyExpiration.decode(reader, reader.uint32()); - break; - case 20: - message.markChatAsReadAction = $root.proto.MarkChatAsReadAction.decode(reader, reader.uint32()); - break; - case 21: - message.clearChatAction = $root.proto.ClearChatAction.decode(reader, reader.uint32()); - break; - case 22: - message.deleteChatAction = $root.proto.DeleteChatAction.decode(reader, reader.uint32()); - break; - case 23: - message.unarchiveChatsSetting = $root.proto.UnarchiveChatsSetting.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a SyncActionValue message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.SyncActionValue - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.SyncActionValue} SyncActionValue - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - SyncActionValue.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a SyncActionValue message. - * @function verify - * @memberof proto.SyncActionValue - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - SyncActionValue.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.timestamp != null && message.hasOwnProperty("timestamp")) - if (!$util.isInteger(message.timestamp) && !(message.timestamp && $util.isInteger(message.timestamp.low) && $util.isInteger(message.timestamp.high))) - return "timestamp: integer|Long expected"; - if (message.starAction != null && message.hasOwnProperty("starAction")) { - var error = $root.proto.StarAction.verify(message.starAction); - if (error) - return "starAction." + error; - } - if (message.contactAction != null && message.hasOwnProperty("contactAction")) { - var error = $root.proto.ContactAction.verify(message.contactAction); - if (error) - return "contactAction." + error; - } - if (message.muteAction != null && message.hasOwnProperty("muteAction")) { - var error = $root.proto.MuteAction.verify(message.muteAction); - if (error) - return "muteAction." + error; - } - if (message.pinAction != null && message.hasOwnProperty("pinAction")) { - var error = $root.proto.PinAction.verify(message.pinAction); - if (error) - return "pinAction." + error; - } - if (message.securityNotificationSetting != null && message.hasOwnProperty("securityNotificationSetting")) { - var error = $root.proto.SecurityNotificationSetting.verify(message.securityNotificationSetting); - if (error) - return "securityNotificationSetting." + error; - } - if (message.pushNameSetting != null && message.hasOwnProperty("pushNameSetting")) { - var error = $root.proto.PushNameSetting.verify(message.pushNameSetting); - if (error) - return "pushNameSetting." + error; - } - if (message.quickReplyAction != null && message.hasOwnProperty("quickReplyAction")) { - var error = $root.proto.QuickReplyAction.verify(message.quickReplyAction); - if (error) - return "quickReplyAction." + error; - } - if (message.recentStickerWeightsAction != null && message.hasOwnProperty("recentStickerWeightsAction")) { - var error = $root.proto.RecentStickerWeightsAction.verify(message.recentStickerWeightsAction); - if (error) - return "recentStickerWeightsAction." + error; - } - if (message.recentStickerMetadata != null && message.hasOwnProperty("recentStickerMetadata")) { - var error = $root.proto.RecentStickerMetadata.verify(message.recentStickerMetadata); - if (error) - return "recentStickerMetadata." + error; - } - if (message.recentEmojiWeightsAction != null && message.hasOwnProperty("recentEmojiWeightsAction")) { - var error = $root.proto.RecentEmojiWeightsAction.verify(message.recentEmojiWeightsAction); - if (error) - return "recentEmojiWeightsAction." + error; - } - if (message.labelEditAction != null && message.hasOwnProperty("labelEditAction")) { - var error = $root.proto.LabelEditAction.verify(message.labelEditAction); - if (error) - return "labelEditAction." + error; - } - if (message.labelAssociationAction != null && message.hasOwnProperty("labelAssociationAction")) { - var error = $root.proto.LabelAssociationAction.verify(message.labelAssociationAction); - if (error) - return "labelAssociationAction." + error; - } - if (message.localeSetting != null && message.hasOwnProperty("localeSetting")) { - var error = $root.proto.LocaleSetting.verify(message.localeSetting); - if (error) - return "localeSetting." + error; - } - if (message.archiveChatAction != null && message.hasOwnProperty("archiveChatAction")) { - var error = $root.proto.ArchiveChatAction.verify(message.archiveChatAction); - if (error) - return "archiveChatAction." + error; - } - if (message.deleteMessageForMeAction != null && message.hasOwnProperty("deleteMessageForMeAction")) { - var error = $root.proto.DeleteMessageForMeAction.verify(message.deleteMessageForMeAction); - if (error) - return "deleteMessageForMeAction." + error; - } - if (message.keyExpiration != null && message.hasOwnProperty("keyExpiration")) { - var error = $root.proto.KeyExpiration.verify(message.keyExpiration); - if (error) - return "keyExpiration." + error; - } - if (message.markChatAsReadAction != null && message.hasOwnProperty("markChatAsReadAction")) { - var error = $root.proto.MarkChatAsReadAction.verify(message.markChatAsReadAction); - if (error) - return "markChatAsReadAction." + error; - } - if (message.clearChatAction != null && message.hasOwnProperty("clearChatAction")) { - var error = $root.proto.ClearChatAction.verify(message.clearChatAction); - if (error) - return "clearChatAction." + error; - } - if (message.deleteChatAction != null && message.hasOwnProperty("deleteChatAction")) { - var error = $root.proto.DeleteChatAction.verify(message.deleteChatAction); - if (error) - return "deleteChatAction." + error; - } - if (message.unarchiveChatsSetting != null && message.hasOwnProperty("unarchiveChatsSetting")) { - var error = $root.proto.UnarchiveChatsSetting.verify(message.unarchiveChatsSetting); - if (error) - return "unarchiveChatsSetting." + error; - } - return null; - }; - - /** - * Creates a SyncActionValue message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.SyncActionValue - * @static - * @param {Object.} object Plain object - * @returns {proto.SyncActionValue} SyncActionValue - */ - SyncActionValue.fromObject = function fromObject(object) { - if (object instanceof $root.proto.SyncActionValue) - return object; - var message = new $root.proto.SyncActionValue(); - if (object.timestamp != null) - if ($util.Long) - (message.timestamp = $util.Long.fromValue(object.timestamp)).unsigned = false; - else if (typeof object.timestamp === "string") - message.timestamp = parseInt(object.timestamp, 10); - else if (typeof object.timestamp === "number") - message.timestamp = object.timestamp; - else if (typeof object.timestamp === "object") - message.timestamp = new $util.LongBits(object.timestamp.low >>> 0, object.timestamp.high >>> 0).toNumber(); - if (object.starAction != null) { - if (typeof object.starAction !== "object") - throw TypeError(".proto.SyncActionValue.starAction: object expected"); - message.starAction = $root.proto.StarAction.fromObject(object.starAction); - } - if (object.contactAction != null) { - if (typeof object.contactAction !== "object") - throw TypeError(".proto.SyncActionValue.contactAction: object expected"); - message.contactAction = $root.proto.ContactAction.fromObject(object.contactAction); - } - if (object.muteAction != null) { - if (typeof object.muteAction !== "object") - throw TypeError(".proto.SyncActionValue.muteAction: object expected"); - message.muteAction = $root.proto.MuteAction.fromObject(object.muteAction); - } - if (object.pinAction != null) { - if (typeof object.pinAction !== "object") - throw TypeError(".proto.SyncActionValue.pinAction: object expected"); - message.pinAction = $root.proto.PinAction.fromObject(object.pinAction); - } - if (object.securityNotificationSetting != null) { - if (typeof object.securityNotificationSetting !== "object") - throw TypeError(".proto.SyncActionValue.securityNotificationSetting: object expected"); - message.securityNotificationSetting = $root.proto.SecurityNotificationSetting.fromObject(object.securityNotificationSetting); - } - if (object.pushNameSetting != null) { - if (typeof object.pushNameSetting !== "object") - throw TypeError(".proto.SyncActionValue.pushNameSetting: object expected"); - message.pushNameSetting = $root.proto.PushNameSetting.fromObject(object.pushNameSetting); - } - if (object.quickReplyAction != null) { - if (typeof object.quickReplyAction !== "object") - throw TypeError(".proto.SyncActionValue.quickReplyAction: object expected"); - message.quickReplyAction = $root.proto.QuickReplyAction.fromObject(object.quickReplyAction); - } - if (object.recentStickerWeightsAction != null) { - if (typeof object.recentStickerWeightsAction !== "object") - throw TypeError(".proto.SyncActionValue.recentStickerWeightsAction: object expected"); - message.recentStickerWeightsAction = $root.proto.RecentStickerWeightsAction.fromObject(object.recentStickerWeightsAction); - } - if (object.recentStickerMetadata != null) { - if (typeof object.recentStickerMetadata !== "object") - throw TypeError(".proto.SyncActionValue.recentStickerMetadata: object expected"); - message.recentStickerMetadata = $root.proto.RecentStickerMetadata.fromObject(object.recentStickerMetadata); - } - if (object.recentEmojiWeightsAction != null) { - if (typeof object.recentEmojiWeightsAction !== "object") - throw TypeError(".proto.SyncActionValue.recentEmojiWeightsAction: object expected"); - message.recentEmojiWeightsAction = $root.proto.RecentEmojiWeightsAction.fromObject(object.recentEmojiWeightsAction); - } - if (object.labelEditAction != null) { - if (typeof object.labelEditAction !== "object") - throw TypeError(".proto.SyncActionValue.labelEditAction: object expected"); - message.labelEditAction = $root.proto.LabelEditAction.fromObject(object.labelEditAction); - } - if (object.labelAssociationAction != null) { - if (typeof object.labelAssociationAction !== "object") - throw TypeError(".proto.SyncActionValue.labelAssociationAction: object expected"); - message.labelAssociationAction = $root.proto.LabelAssociationAction.fromObject(object.labelAssociationAction); - } - if (object.localeSetting != null) { - if (typeof object.localeSetting !== "object") - throw TypeError(".proto.SyncActionValue.localeSetting: object expected"); - message.localeSetting = $root.proto.LocaleSetting.fromObject(object.localeSetting); - } - if (object.archiveChatAction != null) { - if (typeof object.archiveChatAction !== "object") - throw TypeError(".proto.SyncActionValue.archiveChatAction: object expected"); - message.archiveChatAction = $root.proto.ArchiveChatAction.fromObject(object.archiveChatAction); - } - if (object.deleteMessageForMeAction != null) { - if (typeof object.deleteMessageForMeAction !== "object") - throw TypeError(".proto.SyncActionValue.deleteMessageForMeAction: object expected"); - message.deleteMessageForMeAction = $root.proto.DeleteMessageForMeAction.fromObject(object.deleteMessageForMeAction); - } - if (object.keyExpiration != null) { - if (typeof object.keyExpiration !== "object") - throw TypeError(".proto.SyncActionValue.keyExpiration: object expected"); - message.keyExpiration = $root.proto.KeyExpiration.fromObject(object.keyExpiration); - } - if (object.markChatAsReadAction != null) { - if (typeof object.markChatAsReadAction !== "object") - throw TypeError(".proto.SyncActionValue.markChatAsReadAction: object expected"); - message.markChatAsReadAction = $root.proto.MarkChatAsReadAction.fromObject(object.markChatAsReadAction); - } - if (object.clearChatAction != null) { - if (typeof object.clearChatAction !== "object") - throw TypeError(".proto.SyncActionValue.clearChatAction: object expected"); - message.clearChatAction = $root.proto.ClearChatAction.fromObject(object.clearChatAction); - } - if (object.deleteChatAction != null) { - if (typeof object.deleteChatAction !== "object") - throw TypeError(".proto.SyncActionValue.deleteChatAction: object expected"); - message.deleteChatAction = $root.proto.DeleteChatAction.fromObject(object.deleteChatAction); - } - if (object.unarchiveChatsSetting != null) { - if (typeof object.unarchiveChatsSetting !== "object") - throw TypeError(".proto.SyncActionValue.unarchiveChatsSetting: object expected"); - message.unarchiveChatsSetting = $root.proto.UnarchiveChatsSetting.fromObject(object.unarchiveChatsSetting); - } - return message; - }; - - /** - * Creates a plain object from a SyncActionValue message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.SyncActionValue - * @static - * @param {proto.SyncActionValue} message SyncActionValue - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - SyncActionValue.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - if ($util.Long) { - var long = new $util.Long(0, 0, false); - object.timestamp = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; - } else - object.timestamp = options.longs === String ? "0" : 0; - object.starAction = null; - object.contactAction = null; - object.muteAction = null; - object.pinAction = null; - object.securityNotificationSetting = null; - object.pushNameSetting = null; - object.quickReplyAction = null; - object.recentStickerWeightsAction = null; - object.recentStickerMetadata = null; - object.recentEmojiWeightsAction = null; - object.labelEditAction = null; - object.labelAssociationAction = null; - object.localeSetting = null; - object.archiveChatAction = null; - object.deleteMessageForMeAction = null; - object.keyExpiration = null; - object.markChatAsReadAction = null; - object.clearChatAction = null; - object.deleteChatAction = null; - object.unarchiveChatsSetting = null; - } - if (message.timestamp != null && message.hasOwnProperty("timestamp")) - if (typeof message.timestamp === "number") - object.timestamp = options.longs === String ? String(message.timestamp) : message.timestamp; - else - object.timestamp = options.longs === String ? $util.Long.prototype.toString.call(message.timestamp) : options.longs === Number ? new $util.LongBits(message.timestamp.low >>> 0, message.timestamp.high >>> 0).toNumber() : message.timestamp; - if (message.starAction != null && message.hasOwnProperty("starAction")) - object.starAction = $root.proto.StarAction.toObject(message.starAction, options); - if (message.contactAction != null && message.hasOwnProperty("contactAction")) - object.contactAction = $root.proto.ContactAction.toObject(message.contactAction, options); - if (message.muteAction != null && message.hasOwnProperty("muteAction")) - object.muteAction = $root.proto.MuteAction.toObject(message.muteAction, options); - if (message.pinAction != null && message.hasOwnProperty("pinAction")) - object.pinAction = $root.proto.PinAction.toObject(message.pinAction, options); - if (message.securityNotificationSetting != null && message.hasOwnProperty("securityNotificationSetting")) - object.securityNotificationSetting = $root.proto.SecurityNotificationSetting.toObject(message.securityNotificationSetting, options); - if (message.pushNameSetting != null && message.hasOwnProperty("pushNameSetting")) - object.pushNameSetting = $root.proto.PushNameSetting.toObject(message.pushNameSetting, options); - if (message.quickReplyAction != null && message.hasOwnProperty("quickReplyAction")) - object.quickReplyAction = $root.proto.QuickReplyAction.toObject(message.quickReplyAction, options); - if (message.recentStickerWeightsAction != null && message.hasOwnProperty("recentStickerWeightsAction")) - object.recentStickerWeightsAction = $root.proto.RecentStickerWeightsAction.toObject(message.recentStickerWeightsAction, options); - if (message.recentStickerMetadata != null && message.hasOwnProperty("recentStickerMetadata")) - object.recentStickerMetadata = $root.proto.RecentStickerMetadata.toObject(message.recentStickerMetadata, options); - if (message.recentEmojiWeightsAction != null && message.hasOwnProperty("recentEmojiWeightsAction")) - object.recentEmojiWeightsAction = $root.proto.RecentEmojiWeightsAction.toObject(message.recentEmojiWeightsAction, options); - if (message.labelEditAction != null && message.hasOwnProperty("labelEditAction")) - object.labelEditAction = $root.proto.LabelEditAction.toObject(message.labelEditAction, options); - if (message.labelAssociationAction != null && message.hasOwnProperty("labelAssociationAction")) - object.labelAssociationAction = $root.proto.LabelAssociationAction.toObject(message.labelAssociationAction, options); - if (message.localeSetting != null && message.hasOwnProperty("localeSetting")) - object.localeSetting = $root.proto.LocaleSetting.toObject(message.localeSetting, options); - if (message.archiveChatAction != null && message.hasOwnProperty("archiveChatAction")) - object.archiveChatAction = $root.proto.ArchiveChatAction.toObject(message.archiveChatAction, options); - if (message.deleteMessageForMeAction != null && message.hasOwnProperty("deleteMessageForMeAction")) - object.deleteMessageForMeAction = $root.proto.DeleteMessageForMeAction.toObject(message.deleteMessageForMeAction, options); - if (message.keyExpiration != null && message.hasOwnProperty("keyExpiration")) - object.keyExpiration = $root.proto.KeyExpiration.toObject(message.keyExpiration, options); - if (message.markChatAsReadAction != null && message.hasOwnProperty("markChatAsReadAction")) - object.markChatAsReadAction = $root.proto.MarkChatAsReadAction.toObject(message.markChatAsReadAction, options); - if (message.clearChatAction != null && message.hasOwnProperty("clearChatAction")) - object.clearChatAction = $root.proto.ClearChatAction.toObject(message.clearChatAction, options); - if (message.deleteChatAction != null && message.hasOwnProperty("deleteChatAction")) - object.deleteChatAction = $root.proto.DeleteChatAction.toObject(message.deleteChatAction, options); - if (message.unarchiveChatsSetting != null && message.hasOwnProperty("unarchiveChatsSetting")) - object.unarchiveChatsSetting = $root.proto.UnarchiveChatsSetting.toObject(message.unarchiveChatsSetting, options); - return object; - }; - - /** - * Converts this SyncActionValue to JSON. - * @function toJSON - * @memberof proto.SyncActionValue - * @instance - * @returns {Object.} JSON object - */ - SyncActionValue.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return SyncActionValue; - })(); - - proto.RecentEmojiWeight = (function() { - - /** - * Properties of a RecentEmojiWeight. - * @memberof proto - * @interface IRecentEmojiWeight - * @property {string|null} [emoji] RecentEmojiWeight emoji - * @property {number|null} [weight] RecentEmojiWeight weight - */ - - /** - * Constructs a new RecentEmojiWeight. - * @memberof proto - * @classdesc Represents a RecentEmojiWeight. - * @implements IRecentEmojiWeight - * @constructor - * @param {proto.IRecentEmojiWeight=} [properties] Properties to set - */ - function RecentEmojiWeight(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * RecentEmojiWeight emoji. - * @member {string} emoji - * @memberof proto.RecentEmojiWeight - * @instance - */ - RecentEmojiWeight.prototype.emoji = ""; - - /** - * RecentEmojiWeight weight. - * @member {number} weight - * @memberof proto.RecentEmojiWeight - * @instance - */ - RecentEmojiWeight.prototype.weight = 0; - - /** - * Creates a new RecentEmojiWeight instance using the specified properties. - * @function create - * @memberof proto.RecentEmojiWeight - * @static - * @param {proto.IRecentEmojiWeight=} [properties] Properties to set - * @returns {proto.RecentEmojiWeight} RecentEmojiWeight instance - */ - RecentEmojiWeight.create = function create(properties) { - return new RecentEmojiWeight(properties); - }; - - /** - * Encodes the specified RecentEmojiWeight message. Does not implicitly {@link proto.RecentEmojiWeight.verify|verify} messages. - * @function encode - * @memberof proto.RecentEmojiWeight - * @static - * @param {proto.IRecentEmojiWeight} message RecentEmojiWeight message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - RecentEmojiWeight.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.emoji != null && Object.hasOwnProperty.call(message, "emoji")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.emoji); - if (message.weight != null && Object.hasOwnProperty.call(message, "weight")) - writer.uint32(/* id 2, wireType 5 =*/21).float(message.weight); - return writer; - }; - - /** - * Encodes the specified RecentEmojiWeight message, length delimited. Does not implicitly {@link proto.RecentEmojiWeight.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.RecentEmojiWeight - * @static - * @param {proto.IRecentEmojiWeight} message RecentEmojiWeight message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - RecentEmojiWeight.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a RecentEmojiWeight message from the specified reader or buffer. - * @function decode - * @memberof proto.RecentEmojiWeight - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.RecentEmojiWeight} RecentEmojiWeight - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - RecentEmojiWeight.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.RecentEmojiWeight(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.emoji = reader.string(); - break; - case 2: - message.weight = reader.float(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a RecentEmojiWeight message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.RecentEmojiWeight - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.RecentEmojiWeight} RecentEmojiWeight - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - RecentEmojiWeight.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a RecentEmojiWeight message. - * @function verify - * @memberof proto.RecentEmojiWeight - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - RecentEmojiWeight.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.emoji != null && message.hasOwnProperty("emoji")) - if (!$util.isString(message.emoji)) - return "emoji: string expected"; - if (message.weight != null && message.hasOwnProperty("weight")) - if (typeof message.weight !== "number") - return "weight: number expected"; - return null; - }; - - /** - * Creates a RecentEmojiWeight message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.RecentEmojiWeight - * @static - * @param {Object.} object Plain object - * @returns {proto.RecentEmojiWeight} RecentEmojiWeight - */ - RecentEmojiWeight.fromObject = function fromObject(object) { - if (object instanceof $root.proto.RecentEmojiWeight) - return object; - var message = new $root.proto.RecentEmojiWeight(); - if (object.emoji != null) - message.emoji = String(object.emoji); - if (object.weight != null) - message.weight = Number(object.weight); - return message; - }; - - /** - * Creates a plain object from a RecentEmojiWeight message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.RecentEmojiWeight - * @static - * @param {proto.RecentEmojiWeight} message RecentEmojiWeight - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - RecentEmojiWeight.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.emoji = ""; - object.weight = 0; - } - if (message.emoji != null && message.hasOwnProperty("emoji")) - object.emoji = message.emoji; - if (message.weight != null && message.hasOwnProperty("weight")) - object.weight = options.json && !isFinite(message.weight) ? String(message.weight) : message.weight; - return object; - }; - - /** - * Converts this RecentEmojiWeight to JSON. - * @function toJSON - * @memberof proto.RecentEmojiWeight - * @instance - * @returns {Object.} JSON object - */ - RecentEmojiWeight.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return RecentEmojiWeight; - })(); - - proto.RecentStickerWeight = (function() { - - /** - * Properties of a RecentStickerWeight. - * @memberof proto - * @interface IRecentStickerWeight - * @property {string|null} [filehash] RecentStickerWeight filehash - * @property {number|null} [weight] RecentStickerWeight weight - */ - - /** - * Constructs a new RecentStickerWeight. - * @memberof proto - * @classdesc Represents a RecentStickerWeight. - * @implements IRecentStickerWeight - * @constructor - * @param {proto.IRecentStickerWeight=} [properties] Properties to set - */ - function RecentStickerWeight(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * RecentStickerWeight filehash. - * @member {string} filehash - * @memberof proto.RecentStickerWeight - * @instance - */ - RecentStickerWeight.prototype.filehash = ""; - - /** - * RecentStickerWeight weight. - * @member {number} weight - * @memberof proto.RecentStickerWeight - * @instance - */ - RecentStickerWeight.prototype.weight = 0; - - /** - * Creates a new RecentStickerWeight instance using the specified properties. - * @function create - * @memberof proto.RecentStickerWeight - * @static - * @param {proto.IRecentStickerWeight=} [properties] Properties to set - * @returns {proto.RecentStickerWeight} RecentStickerWeight instance - */ - RecentStickerWeight.create = function create(properties) { - return new RecentStickerWeight(properties); - }; - - /** - * Encodes the specified RecentStickerWeight message. Does not implicitly {@link proto.RecentStickerWeight.verify|verify} messages. - * @function encode - * @memberof proto.RecentStickerWeight - * @static - * @param {proto.IRecentStickerWeight} message RecentStickerWeight message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - RecentStickerWeight.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.filehash != null && Object.hasOwnProperty.call(message, "filehash")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.filehash); - if (message.weight != null && Object.hasOwnProperty.call(message, "weight")) - writer.uint32(/* id 2, wireType 5 =*/21).float(message.weight); - return writer; - }; - - /** - * Encodes the specified RecentStickerWeight message, length delimited. Does not implicitly {@link proto.RecentStickerWeight.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.RecentStickerWeight - * @static - * @param {proto.IRecentStickerWeight} message RecentStickerWeight message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - RecentStickerWeight.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a RecentStickerWeight message from the specified reader or buffer. - * @function decode - * @memberof proto.RecentStickerWeight - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.RecentStickerWeight} RecentStickerWeight - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - RecentStickerWeight.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.RecentStickerWeight(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.filehash = reader.string(); - break; - case 2: - message.weight = reader.float(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a RecentStickerWeight message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.RecentStickerWeight - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.RecentStickerWeight} RecentStickerWeight - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - RecentStickerWeight.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a RecentStickerWeight message. - * @function verify - * @memberof proto.RecentStickerWeight - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - RecentStickerWeight.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.filehash != null && message.hasOwnProperty("filehash")) - if (!$util.isString(message.filehash)) - return "filehash: string expected"; - if (message.weight != null && message.hasOwnProperty("weight")) - if (typeof message.weight !== "number") - return "weight: number expected"; - return null; - }; - - /** - * Creates a RecentStickerWeight message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.RecentStickerWeight - * @static - * @param {Object.} object Plain object - * @returns {proto.RecentStickerWeight} RecentStickerWeight - */ - RecentStickerWeight.fromObject = function fromObject(object) { - if (object instanceof $root.proto.RecentStickerWeight) - return object; - var message = new $root.proto.RecentStickerWeight(); - if (object.filehash != null) - message.filehash = String(object.filehash); - if (object.weight != null) - message.weight = Number(object.weight); - return message; - }; - - /** - * Creates a plain object from a RecentStickerWeight message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.RecentStickerWeight - * @static - * @param {proto.RecentStickerWeight} message RecentStickerWeight - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - RecentStickerWeight.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.filehash = ""; - object.weight = 0; - } - if (message.filehash != null && message.hasOwnProperty("filehash")) - object.filehash = message.filehash; - if (message.weight != null && message.hasOwnProperty("weight")) - object.weight = options.json && !isFinite(message.weight) ? String(message.weight) : message.weight; - return object; - }; - - /** - * Converts this RecentStickerWeight to JSON. - * @function toJSON - * @memberof proto.RecentStickerWeight - * @instance - * @returns {Object.} JSON object - */ - RecentStickerWeight.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return RecentStickerWeight; - })(); - - proto.SyncdPatch = (function() { - - /** - * Properties of a SyncdPatch. - * @memberof proto - * @interface ISyncdPatch - * @property {proto.ISyncdVersion|null} [version] SyncdPatch version - * @property {Array.|null} [mutations] SyncdPatch mutations - * @property {proto.IExternalBlobReference|null} [externalMutations] SyncdPatch externalMutations - * @property {Uint8Array|null} [snapshotMac] SyncdPatch snapshotMac - * @property {Uint8Array|null} [patchMac] SyncdPatch patchMac - * @property {proto.IKeyId|null} [keyId] SyncdPatch keyId - * @property {proto.IExitCode|null} [exitCode] SyncdPatch exitCode - * @property {number|null} [deviceIndex] SyncdPatch deviceIndex - */ - - /** - * Constructs a new SyncdPatch. - * @memberof proto - * @classdesc Represents a SyncdPatch. - * @implements ISyncdPatch - * @constructor - * @param {proto.ISyncdPatch=} [properties] Properties to set - */ - function SyncdPatch(properties) { - this.mutations = []; - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * SyncdPatch version. - * @member {proto.ISyncdVersion|null|undefined} version - * @memberof proto.SyncdPatch - * @instance - */ - SyncdPatch.prototype.version = null; - - /** - * SyncdPatch mutations. - * @member {Array.} mutations - * @memberof proto.SyncdPatch - * @instance - */ - SyncdPatch.prototype.mutations = $util.emptyArray; - - /** - * SyncdPatch externalMutations. - * @member {proto.IExternalBlobReference|null|undefined} externalMutations - * @memberof proto.SyncdPatch - * @instance - */ - SyncdPatch.prototype.externalMutations = null; - - /** - * SyncdPatch snapshotMac. - * @member {Uint8Array} snapshotMac - * @memberof proto.SyncdPatch - * @instance - */ - SyncdPatch.prototype.snapshotMac = $util.newBuffer([]); - - /** - * SyncdPatch patchMac. - * @member {Uint8Array} patchMac - * @memberof proto.SyncdPatch - * @instance - */ - SyncdPatch.prototype.patchMac = $util.newBuffer([]); - - /** - * SyncdPatch keyId. - * @member {proto.IKeyId|null|undefined} keyId - * @memberof proto.SyncdPatch - * @instance - */ - SyncdPatch.prototype.keyId = null; - - /** - * SyncdPatch exitCode. - * @member {proto.IExitCode|null|undefined} exitCode - * @memberof proto.SyncdPatch - * @instance - */ - SyncdPatch.prototype.exitCode = null; - - /** - * SyncdPatch deviceIndex. - * @member {number} deviceIndex - * @memberof proto.SyncdPatch - * @instance - */ - SyncdPatch.prototype.deviceIndex = 0; - - /** - * Creates a new SyncdPatch instance using the specified properties. - * @function create - * @memberof proto.SyncdPatch - * @static - * @param {proto.ISyncdPatch=} [properties] Properties to set - * @returns {proto.SyncdPatch} SyncdPatch instance - */ - SyncdPatch.create = function create(properties) { - return new SyncdPatch(properties); - }; - - /** - * Encodes the specified SyncdPatch message. Does not implicitly {@link proto.SyncdPatch.verify|verify} messages. - * @function encode - * @memberof proto.SyncdPatch - * @static - * @param {proto.ISyncdPatch} message SyncdPatch message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - SyncdPatch.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.version != null && Object.hasOwnProperty.call(message, "version")) - $root.proto.SyncdVersion.encode(message.version, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); - if (message.mutations != null && message.mutations.length) - for (var i = 0; i < message.mutations.length; ++i) - $root.proto.SyncdMutation.encode(message.mutations[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - if (message.externalMutations != null && Object.hasOwnProperty.call(message, "externalMutations")) - $root.proto.ExternalBlobReference.encode(message.externalMutations, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); - if (message.snapshotMac != null && Object.hasOwnProperty.call(message, "snapshotMac")) - writer.uint32(/* id 4, wireType 2 =*/34).bytes(message.snapshotMac); - if (message.patchMac != null && Object.hasOwnProperty.call(message, "patchMac")) - writer.uint32(/* id 5, wireType 2 =*/42).bytes(message.patchMac); - if (message.keyId != null && Object.hasOwnProperty.call(message, "keyId")) - $root.proto.KeyId.encode(message.keyId, writer.uint32(/* id 6, wireType 2 =*/50).fork()).ldelim(); - if (message.exitCode != null && Object.hasOwnProperty.call(message, "exitCode")) - $root.proto.ExitCode.encode(message.exitCode, writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim(); - if (message.deviceIndex != null && Object.hasOwnProperty.call(message, "deviceIndex")) - writer.uint32(/* id 8, wireType 0 =*/64).uint32(message.deviceIndex); - return writer; - }; - - /** - * Encodes the specified SyncdPatch message, length delimited. Does not implicitly {@link proto.SyncdPatch.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.SyncdPatch - * @static - * @param {proto.ISyncdPatch} message SyncdPatch message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - SyncdPatch.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a SyncdPatch message from the specified reader or buffer. - * @function decode - * @memberof proto.SyncdPatch - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.SyncdPatch} SyncdPatch - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - SyncdPatch.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.SyncdPatch(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.version = $root.proto.SyncdVersion.decode(reader, reader.uint32()); - break; - case 2: - if (!(message.mutations && message.mutations.length)) - message.mutations = []; - message.mutations.push($root.proto.SyncdMutation.decode(reader, reader.uint32())); - break; - case 3: - message.externalMutations = $root.proto.ExternalBlobReference.decode(reader, reader.uint32()); - break; - case 4: - message.snapshotMac = reader.bytes(); - break; - case 5: - message.patchMac = reader.bytes(); - break; - case 6: - message.keyId = $root.proto.KeyId.decode(reader, reader.uint32()); - break; - case 7: - message.exitCode = $root.proto.ExitCode.decode(reader, reader.uint32()); - break; - case 8: - message.deviceIndex = reader.uint32(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a SyncdPatch message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.SyncdPatch - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.SyncdPatch} SyncdPatch - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - SyncdPatch.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a SyncdPatch message. - * @function verify - * @memberof proto.SyncdPatch - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - SyncdPatch.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.version != null && message.hasOwnProperty("version")) { - var error = $root.proto.SyncdVersion.verify(message.version); - if (error) - return "version." + error; - } - if (message.mutations != null && message.hasOwnProperty("mutations")) { - if (!Array.isArray(message.mutations)) - return "mutations: array expected"; - for (var i = 0; i < message.mutations.length; ++i) { - var error = $root.proto.SyncdMutation.verify(message.mutations[i]); - if (error) - return "mutations." + error; - } - } - if (message.externalMutations != null && message.hasOwnProperty("externalMutations")) { - var error = $root.proto.ExternalBlobReference.verify(message.externalMutations); - if (error) - return "externalMutations." + error; - } - if (message.snapshotMac != null && message.hasOwnProperty("snapshotMac")) - if (!(message.snapshotMac && typeof message.snapshotMac.length === "number" || $util.isString(message.snapshotMac))) - return "snapshotMac: buffer expected"; - if (message.patchMac != null && message.hasOwnProperty("patchMac")) - if (!(message.patchMac && typeof message.patchMac.length === "number" || $util.isString(message.patchMac))) - return "patchMac: buffer expected"; - if (message.keyId != null && message.hasOwnProperty("keyId")) { - var error = $root.proto.KeyId.verify(message.keyId); - if (error) - return "keyId." + error; - } - if (message.exitCode != null && message.hasOwnProperty("exitCode")) { - var error = $root.proto.ExitCode.verify(message.exitCode); - if (error) - return "exitCode." + error; - } - if (message.deviceIndex != null && message.hasOwnProperty("deviceIndex")) - if (!$util.isInteger(message.deviceIndex)) - return "deviceIndex: integer expected"; - return null; - }; - - /** - * Creates a SyncdPatch message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.SyncdPatch - * @static - * @param {Object.} object Plain object - * @returns {proto.SyncdPatch} SyncdPatch - */ - SyncdPatch.fromObject = function fromObject(object) { - if (object instanceof $root.proto.SyncdPatch) - return object; - var message = new $root.proto.SyncdPatch(); - if (object.version != null) { - if (typeof object.version !== "object") - throw TypeError(".proto.SyncdPatch.version: object expected"); - message.version = $root.proto.SyncdVersion.fromObject(object.version); - } - if (object.mutations) { - if (!Array.isArray(object.mutations)) - throw TypeError(".proto.SyncdPatch.mutations: array expected"); - message.mutations = []; - for (var i = 0; i < object.mutations.length; ++i) { - if (typeof object.mutations[i] !== "object") - throw TypeError(".proto.SyncdPatch.mutations: object expected"); - message.mutations[i] = $root.proto.SyncdMutation.fromObject(object.mutations[i]); - } - } - if (object.externalMutations != null) { - if (typeof object.externalMutations !== "object") - throw TypeError(".proto.SyncdPatch.externalMutations: object expected"); - message.externalMutations = $root.proto.ExternalBlobReference.fromObject(object.externalMutations); - } - if (object.snapshotMac != null) - if (typeof object.snapshotMac === "string") - $util.base64.decode(object.snapshotMac, message.snapshotMac = $util.newBuffer($util.base64.length(object.snapshotMac)), 0); - else if (object.snapshotMac.length) - message.snapshotMac = object.snapshotMac; - if (object.patchMac != null) - if (typeof object.patchMac === "string") - $util.base64.decode(object.patchMac, message.patchMac = $util.newBuffer($util.base64.length(object.patchMac)), 0); - else if (object.patchMac.length) - message.patchMac = object.patchMac; - if (object.keyId != null) { - if (typeof object.keyId !== "object") - throw TypeError(".proto.SyncdPatch.keyId: object expected"); - message.keyId = $root.proto.KeyId.fromObject(object.keyId); - } - if (object.exitCode != null) { - if (typeof object.exitCode !== "object") - throw TypeError(".proto.SyncdPatch.exitCode: object expected"); - message.exitCode = $root.proto.ExitCode.fromObject(object.exitCode); - } - if (object.deviceIndex != null) - message.deviceIndex = object.deviceIndex >>> 0; - return message; - }; - - /** - * Creates a plain object from a SyncdPatch message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.SyncdPatch - * @static - * @param {proto.SyncdPatch} message SyncdPatch - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - SyncdPatch.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.mutations = []; - if (options.defaults) { - object.version = null; - object.externalMutations = null; - if (options.bytes === String) - object.snapshotMac = ""; - else { - object.snapshotMac = []; - if (options.bytes !== Array) - object.snapshotMac = $util.newBuffer(object.snapshotMac); - } - if (options.bytes === String) - object.patchMac = ""; - else { - object.patchMac = []; - if (options.bytes !== Array) - object.patchMac = $util.newBuffer(object.patchMac); - } - object.keyId = null; - object.exitCode = null; - object.deviceIndex = 0; - } - if (message.version != null && message.hasOwnProperty("version")) - object.version = $root.proto.SyncdVersion.toObject(message.version, options); - if (message.mutations && message.mutations.length) { - object.mutations = []; - for (var j = 0; j < message.mutations.length; ++j) - object.mutations[j] = $root.proto.SyncdMutation.toObject(message.mutations[j], options); - } - if (message.externalMutations != null && message.hasOwnProperty("externalMutations")) - object.externalMutations = $root.proto.ExternalBlobReference.toObject(message.externalMutations, options); - if (message.snapshotMac != null && message.hasOwnProperty("snapshotMac")) - object.snapshotMac = options.bytes === String ? $util.base64.encode(message.snapshotMac, 0, message.snapshotMac.length) : options.bytes === Array ? Array.prototype.slice.call(message.snapshotMac) : message.snapshotMac; - if (message.patchMac != null && message.hasOwnProperty("patchMac")) - object.patchMac = options.bytes === String ? $util.base64.encode(message.patchMac, 0, message.patchMac.length) : options.bytes === Array ? Array.prototype.slice.call(message.patchMac) : message.patchMac; - if (message.keyId != null && message.hasOwnProperty("keyId")) - object.keyId = $root.proto.KeyId.toObject(message.keyId, options); - if (message.exitCode != null && message.hasOwnProperty("exitCode")) - object.exitCode = $root.proto.ExitCode.toObject(message.exitCode, options); - if (message.deviceIndex != null && message.hasOwnProperty("deviceIndex")) - object.deviceIndex = message.deviceIndex; - return object; - }; - - /** - * Converts this SyncdPatch to JSON. - * @function toJSON - * @memberof proto.SyncdPatch - * @instance - * @returns {Object.} JSON object - */ - SyncdPatch.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return SyncdPatch; - })(); - - proto.SyncdMutation = (function() { - - /** - * Properties of a SyncdMutation. - * @memberof proto - * @interface ISyncdMutation - * @property {proto.SyncdMutation.SyncdMutationSyncdOperation|null} [operation] SyncdMutation operation - * @property {proto.ISyncdRecord|null} [record] SyncdMutation record - */ - - /** - * Constructs a new SyncdMutation. - * @memberof proto - * @classdesc Represents a SyncdMutation. - * @implements ISyncdMutation - * @constructor - * @param {proto.ISyncdMutation=} [properties] Properties to set - */ - function SyncdMutation(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * SyncdMutation operation. - * @member {proto.SyncdMutation.SyncdMutationSyncdOperation} operation - * @memberof proto.SyncdMutation - * @instance - */ - SyncdMutation.prototype.operation = 0; - - /** - * SyncdMutation record. - * @member {proto.ISyncdRecord|null|undefined} record - * @memberof proto.SyncdMutation - * @instance - */ - SyncdMutation.prototype.record = null; - - /** - * Creates a new SyncdMutation instance using the specified properties. - * @function create - * @memberof proto.SyncdMutation - * @static - * @param {proto.ISyncdMutation=} [properties] Properties to set - * @returns {proto.SyncdMutation} SyncdMutation instance - */ - SyncdMutation.create = function create(properties) { - return new SyncdMutation(properties); - }; - - /** - * Encodes the specified SyncdMutation message. Does not implicitly {@link proto.SyncdMutation.verify|verify} messages. - * @function encode - * @memberof proto.SyncdMutation - * @static - * @param {proto.ISyncdMutation} message SyncdMutation message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - SyncdMutation.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.operation != null && Object.hasOwnProperty.call(message, "operation")) - writer.uint32(/* id 1, wireType 0 =*/8).int32(message.operation); - if (message.record != null && Object.hasOwnProperty.call(message, "record")) - $root.proto.SyncdRecord.encode(message.record, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - return writer; - }; - - /** - * Encodes the specified SyncdMutation message, length delimited. Does not implicitly {@link proto.SyncdMutation.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.SyncdMutation - * @static - * @param {proto.ISyncdMutation} message SyncdMutation message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - SyncdMutation.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a SyncdMutation message from the specified reader or buffer. - * @function decode - * @memberof proto.SyncdMutation - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.SyncdMutation} SyncdMutation - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - SyncdMutation.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.SyncdMutation(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.operation = reader.int32(); - break; - case 2: - message.record = $root.proto.SyncdRecord.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a SyncdMutation message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.SyncdMutation - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.SyncdMutation} SyncdMutation - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - SyncdMutation.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a SyncdMutation message. - * @function verify - * @memberof proto.SyncdMutation - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - SyncdMutation.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.operation != null && message.hasOwnProperty("operation")) - switch (message.operation) { - default: - return "operation: enum value expected"; - case 0: - case 1: - break; - } - if (message.record != null && message.hasOwnProperty("record")) { - var error = $root.proto.SyncdRecord.verify(message.record); - if (error) - return "record." + error; - } - return null; - }; - - /** - * Creates a SyncdMutation message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.SyncdMutation - * @static - * @param {Object.} object Plain object - * @returns {proto.SyncdMutation} SyncdMutation - */ - SyncdMutation.fromObject = function fromObject(object) { - if (object instanceof $root.proto.SyncdMutation) - return object; - var message = new $root.proto.SyncdMutation(); - switch (object.operation) { - case "SET": - case 0: - message.operation = 0; - break; - case "REMOVE": - case 1: - message.operation = 1; - break; - } - if (object.record != null) { - if (typeof object.record !== "object") - throw TypeError(".proto.SyncdMutation.record: object expected"); - message.record = $root.proto.SyncdRecord.fromObject(object.record); - } - return message; - }; - - /** - * Creates a plain object from a SyncdMutation message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.SyncdMutation - * @static - * @param {proto.SyncdMutation} message SyncdMutation - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - SyncdMutation.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.operation = options.enums === String ? "SET" : 0; - object.record = null; - } - if (message.operation != null && message.hasOwnProperty("operation")) - object.operation = options.enums === String ? $root.proto.SyncdMutation.SyncdMutationSyncdOperation[message.operation] : message.operation; - if (message.record != null && message.hasOwnProperty("record")) - object.record = $root.proto.SyncdRecord.toObject(message.record, options); - return object; - }; - - /** - * Converts this SyncdMutation to JSON. - * @function toJSON - * @memberof proto.SyncdMutation - * @instance - * @returns {Object.} JSON object - */ - SyncdMutation.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - /** - * SyncdMutationSyncdOperation enum. - * @name proto.SyncdMutation.SyncdMutationSyncdOperation - * @enum {number} - * @property {number} SET=0 SET value - * @property {number} REMOVE=1 REMOVE value - */ - SyncdMutation.SyncdMutationSyncdOperation = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "SET"] = 0; - values[valuesById[1] = "REMOVE"] = 1; - return values; - })(); - - return SyncdMutation; - })(); - - proto.SyncdMutations = (function() { - - /** - * Properties of a SyncdMutations. - * @memberof proto - * @interface ISyncdMutations - * @property {Array.|null} [mutations] SyncdMutations mutations - */ - - /** - * Constructs a new SyncdMutations. - * @memberof proto - * @classdesc Represents a SyncdMutations. - * @implements ISyncdMutations - * @constructor - * @param {proto.ISyncdMutations=} [properties] Properties to set - */ - function SyncdMutations(properties) { - this.mutations = []; - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * SyncdMutations mutations. - * @member {Array.} mutations - * @memberof proto.SyncdMutations - * @instance - */ - SyncdMutations.prototype.mutations = $util.emptyArray; - - /** - * Creates a new SyncdMutations instance using the specified properties. - * @function create - * @memberof proto.SyncdMutations - * @static - * @param {proto.ISyncdMutations=} [properties] Properties to set - * @returns {proto.SyncdMutations} SyncdMutations instance - */ - SyncdMutations.create = function create(properties) { - return new SyncdMutations(properties); - }; - - /** - * Encodes the specified SyncdMutations message. Does not implicitly {@link proto.SyncdMutations.verify|verify} messages. - * @function encode - * @memberof proto.SyncdMutations - * @static - * @param {proto.ISyncdMutations} message SyncdMutations message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - SyncdMutations.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.mutations != null && message.mutations.length) - for (var i = 0; i < message.mutations.length; ++i) - $root.proto.SyncdMutation.encode(message.mutations[i], writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); - return writer; - }; - - /** - * Encodes the specified SyncdMutations message, length delimited. Does not implicitly {@link proto.SyncdMutations.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.SyncdMutations - * @static - * @param {proto.ISyncdMutations} message SyncdMutations message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - SyncdMutations.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a SyncdMutations message from the specified reader or buffer. - * @function decode - * @memberof proto.SyncdMutations - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.SyncdMutations} SyncdMutations - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - SyncdMutations.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.SyncdMutations(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - if (!(message.mutations && message.mutations.length)) - message.mutations = []; - message.mutations.push($root.proto.SyncdMutation.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a SyncdMutations message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.SyncdMutations - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.SyncdMutations} SyncdMutations - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - SyncdMutations.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a SyncdMutations message. - * @function verify - * @memberof proto.SyncdMutations - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - SyncdMutations.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.mutations != null && message.hasOwnProperty("mutations")) { - if (!Array.isArray(message.mutations)) - return "mutations: array expected"; - for (var i = 0; i < message.mutations.length; ++i) { - var error = $root.proto.SyncdMutation.verify(message.mutations[i]); - if (error) - return "mutations." + error; - } - } - return null; - }; - - /** - * Creates a SyncdMutations message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.SyncdMutations - * @static - * @param {Object.} object Plain object - * @returns {proto.SyncdMutations} SyncdMutations - */ - SyncdMutations.fromObject = function fromObject(object) { - if (object instanceof $root.proto.SyncdMutations) - return object; - var message = new $root.proto.SyncdMutations(); - if (object.mutations) { - if (!Array.isArray(object.mutations)) - throw TypeError(".proto.SyncdMutations.mutations: array expected"); - message.mutations = []; - for (var i = 0; i < object.mutations.length; ++i) { - if (typeof object.mutations[i] !== "object") - throw TypeError(".proto.SyncdMutations.mutations: object expected"); - message.mutations[i] = $root.proto.SyncdMutation.fromObject(object.mutations[i]); - } - } - return message; - }; - - /** - * Creates a plain object from a SyncdMutations message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.SyncdMutations - * @static - * @param {proto.SyncdMutations} message SyncdMutations - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - SyncdMutations.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.mutations = []; - if (message.mutations && message.mutations.length) { - object.mutations = []; - for (var j = 0; j < message.mutations.length; ++j) - object.mutations[j] = $root.proto.SyncdMutation.toObject(message.mutations[j], options); - } - return object; - }; - - /** - * Converts this SyncdMutations to JSON. - * @function toJSON - * @memberof proto.SyncdMutations - * @instance - * @returns {Object.} JSON object - */ - SyncdMutations.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return SyncdMutations; - })(); - - proto.SyncdSnapshot = (function() { - - /** - * Properties of a SyncdSnapshot. - * @memberof proto - * @interface ISyncdSnapshot - * @property {proto.ISyncdVersion|null} [version] SyncdSnapshot version - * @property {Array.|null} [records] SyncdSnapshot records - * @property {Uint8Array|null} [mac] SyncdSnapshot mac - * @property {proto.IKeyId|null} [keyId] SyncdSnapshot keyId - */ - - /** - * Constructs a new SyncdSnapshot. - * @memberof proto - * @classdesc Represents a SyncdSnapshot. - * @implements ISyncdSnapshot - * @constructor - * @param {proto.ISyncdSnapshot=} [properties] Properties to set - */ - function SyncdSnapshot(properties) { - this.records = []; - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * SyncdSnapshot version. - * @member {proto.ISyncdVersion|null|undefined} version - * @memberof proto.SyncdSnapshot - * @instance - */ - SyncdSnapshot.prototype.version = null; - - /** - * SyncdSnapshot records. - * @member {Array.} records - * @memberof proto.SyncdSnapshot - * @instance - */ - SyncdSnapshot.prototype.records = $util.emptyArray; - - /** - * SyncdSnapshot mac. - * @member {Uint8Array} mac - * @memberof proto.SyncdSnapshot - * @instance - */ - SyncdSnapshot.prototype.mac = $util.newBuffer([]); - - /** - * SyncdSnapshot keyId. - * @member {proto.IKeyId|null|undefined} keyId - * @memberof proto.SyncdSnapshot - * @instance - */ - SyncdSnapshot.prototype.keyId = null; - - /** - * Creates a new SyncdSnapshot instance using the specified properties. - * @function create - * @memberof proto.SyncdSnapshot - * @static - * @param {proto.ISyncdSnapshot=} [properties] Properties to set - * @returns {proto.SyncdSnapshot} SyncdSnapshot instance - */ - SyncdSnapshot.create = function create(properties) { - return new SyncdSnapshot(properties); - }; - - /** - * Encodes the specified SyncdSnapshot message. Does not implicitly {@link proto.SyncdSnapshot.verify|verify} messages. - * @function encode - * @memberof proto.SyncdSnapshot - * @static - * @param {proto.ISyncdSnapshot} message SyncdSnapshot message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - SyncdSnapshot.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.version != null && Object.hasOwnProperty.call(message, "version")) - $root.proto.SyncdVersion.encode(message.version, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); - if (message.records != null && message.records.length) - for (var i = 0; i < message.records.length; ++i) - $root.proto.SyncdRecord.encode(message.records[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - if (message.mac != null && Object.hasOwnProperty.call(message, "mac")) - writer.uint32(/* id 3, wireType 2 =*/26).bytes(message.mac); - if (message.keyId != null && Object.hasOwnProperty.call(message, "keyId")) - $root.proto.KeyId.encode(message.keyId, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); - return writer; - }; - - /** - * Encodes the specified SyncdSnapshot message, length delimited. Does not implicitly {@link proto.SyncdSnapshot.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.SyncdSnapshot - * @static - * @param {proto.ISyncdSnapshot} message SyncdSnapshot message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - SyncdSnapshot.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a SyncdSnapshot message from the specified reader or buffer. - * @function decode - * @memberof proto.SyncdSnapshot - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.SyncdSnapshot} SyncdSnapshot - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - SyncdSnapshot.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.SyncdSnapshot(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.version = $root.proto.SyncdVersion.decode(reader, reader.uint32()); - break; - case 2: - if (!(message.records && message.records.length)) - message.records = []; - message.records.push($root.proto.SyncdRecord.decode(reader, reader.uint32())); - break; - case 3: - message.mac = reader.bytes(); - break; - case 4: - message.keyId = $root.proto.KeyId.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a SyncdSnapshot message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.SyncdSnapshot - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.SyncdSnapshot} SyncdSnapshot - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - SyncdSnapshot.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a SyncdSnapshot message. - * @function verify - * @memberof proto.SyncdSnapshot - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - SyncdSnapshot.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.version != null && message.hasOwnProperty("version")) { - var error = $root.proto.SyncdVersion.verify(message.version); - if (error) - return "version." + error; - } - if (message.records != null && message.hasOwnProperty("records")) { - if (!Array.isArray(message.records)) - return "records: array expected"; - for (var i = 0; i < message.records.length; ++i) { - var error = $root.proto.SyncdRecord.verify(message.records[i]); - if (error) - return "records." + error; - } - } - if (message.mac != null && message.hasOwnProperty("mac")) - if (!(message.mac && typeof message.mac.length === "number" || $util.isString(message.mac))) - return "mac: buffer expected"; - if (message.keyId != null && message.hasOwnProperty("keyId")) { - var error = $root.proto.KeyId.verify(message.keyId); - if (error) - return "keyId." + error; - } - return null; - }; - - /** - * Creates a SyncdSnapshot message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.SyncdSnapshot - * @static - * @param {Object.} object Plain object - * @returns {proto.SyncdSnapshot} SyncdSnapshot - */ - SyncdSnapshot.fromObject = function fromObject(object) { - if (object instanceof $root.proto.SyncdSnapshot) - return object; - var message = new $root.proto.SyncdSnapshot(); - if (object.version != null) { - if (typeof object.version !== "object") - throw TypeError(".proto.SyncdSnapshot.version: object expected"); - message.version = $root.proto.SyncdVersion.fromObject(object.version); - } - if (object.records) { - if (!Array.isArray(object.records)) - throw TypeError(".proto.SyncdSnapshot.records: array expected"); - message.records = []; - for (var i = 0; i < object.records.length; ++i) { - if (typeof object.records[i] !== "object") - throw TypeError(".proto.SyncdSnapshot.records: object expected"); - message.records[i] = $root.proto.SyncdRecord.fromObject(object.records[i]); - } - } - if (object.mac != null) - if (typeof object.mac === "string") - $util.base64.decode(object.mac, message.mac = $util.newBuffer($util.base64.length(object.mac)), 0); - else if (object.mac.length) - message.mac = object.mac; - if (object.keyId != null) { - if (typeof object.keyId !== "object") - throw TypeError(".proto.SyncdSnapshot.keyId: object expected"); - message.keyId = $root.proto.KeyId.fromObject(object.keyId); - } - return message; - }; - - /** - * Creates a plain object from a SyncdSnapshot message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.SyncdSnapshot - * @static - * @param {proto.SyncdSnapshot} message SyncdSnapshot - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - SyncdSnapshot.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.records = []; - if (options.defaults) { - object.version = null; - if (options.bytes === String) - object.mac = ""; - else { - object.mac = []; - if (options.bytes !== Array) - object.mac = $util.newBuffer(object.mac); - } - object.keyId = null; - } - if (message.version != null && message.hasOwnProperty("version")) - object.version = $root.proto.SyncdVersion.toObject(message.version, options); - if (message.records && message.records.length) { - object.records = []; - for (var j = 0; j < message.records.length; ++j) - object.records[j] = $root.proto.SyncdRecord.toObject(message.records[j], options); - } - if (message.mac != null && message.hasOwnProperty("mac")) - object.mac = options.bytes === String ? $util.base64.encode(message.mac, 0, message.mac.length) : options.bytes === Array ? Array.prototype.slice.call(message.mac) : message.mac; - if (message.keyId != null && message.hasOwnProperty("keyId")) - object.keyId = $root.proto.KeyId.toObject(message.keyId, options); - return object; - }; - - /** - * Converts this SyncdSnapshot to JSON. - * @function toJSON - * @memberof proto.SyncdSnapshot - * @instance - * @returns {Object.} JSON object - */ - SyncdSnapshot.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return SyncdSnapshot; - })(); - - proto.ExternalBlobReference = (function() { - - /** - * Properties of an ExternalBlobReference. - * @memberof proto - * @interface IExternalBlobReference - * @property {Uint8Array|null} [mediaKey] ExternalBlobReference mediaKey - * @property {string|null} [directPath] ExternalBlobReference directPath - * @property {string|null} [handle] ExternalBlobReference handle - * @property {number|Long|null} [fileSizeBytes] ExternalBlobReference fileSizeBytes - * @property {Uint8Array|null} [fileSha256] ExternalBlobReference fileSha256 - * @property {Uint8Array|null} [fileEncSha256] ExternalBlobReference fileEncSha256 - */ - - /** - * Constructs a new ExternalBlobReference. - * @memberof proto - * @classdesc Represents an ExternalBlobReference. - * @implements IExternalBlobReference - * @constructor - * @param {proto.IExternalBlobReference=} [properties] Properties to set - */ - function ExternalBlobReference(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * ExternalBlobReference mediaKey. - * @member {Uint8Array} mediaKey - * @memberof proto.ExternalBlobReference - * @instance - */ - ExternalBlobReference.prototype.mediaKey = $util.newBuffer([]); - - /** - * ExternalBlobReference directPath. - * @member {string} directPath - * @memberof proto.ExternalBlobReference - * @instance - */ - ExternalBlobReference.prototype.directPath = ""; - - /** - * ExternalBlobReference handle. - * @member {string} handle - * @memberof proto.ExternalBlobReference - * @instance - */ - ExternalBlobReference.prototype.handle = ""; - - /** - * ExternalBlobReference fileSizeBytes. - * @member {number|Long} fileSizeBytes - * @memberof proto.ExternalBlobReference - * @instance - */ - ExternalBlobReference.prototype.fileSizeBytes = $util.Long ? $util.Long.fromBits(0,0,true) : 0; - - /** - * ExternalBlobReference fileSha256. - * @member {Uint8Array} fileSha256 - * @memberof proto.ExternalBlobReference - * @instance - */ - ExternalBlobReference.prototype.fileSha256 = $util.newBuffer([]); - - /** - * ExternalBlobReference fileEncSha256. - * @member {Uint8Array} fileEncSha256 - * @memberof proto.ExternalBlobReference - * @instance - */ - ExternalBlobReference.prototype.fileEncSha256 = $util.newBuffer([]); - - /** - * Creates a new ExternalBlobReference instance using the specified properties. - * @function create - * @memberof proto.ExternalBlobReference - * @static - * @param {proto.IExternalBlobReference=} [properties] Properties to set - * @returns {proto.ExternalBlobReference} ExternalBlobReference instance - */ - ExternalBlobReference.create = function create(properties) { - return new ExternalBlobReference(properties); - }; - - /** - * Encodes the specified ExternalBlobReference message. Does not implicitly {@link proto.ExternalBlobReference.verify|verify} messages. - * @function encode - * @memberof proto.ExternalBlobReference - * @static - * @param {proto.IExternalBlobReference} message ExternalBlobReference message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ExternalBlobReference.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.mediaKey != null && Object.hasOwnProperty.call(message, "mediaKey")) - writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.mediaKey); - if (message.directPath != null && Object.hasOwnProperty.call(message, "directPath")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.directPath); - if (message.handle != null && Object.hasOwnProperty.call(message, "handle")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.handle); - if (message.fileSizeBytes != null && Object.hasOwnProperty.call(message, "fileSizeBytes")) - writer.uint32(/* id 4, wireType 0 =*/32).uint64(message.fileSizeBytes); - if (message.fileSha256 != null && Object.hasOwnProperty.call(message, "fileSha256")) - writer.uint32(/* id 5, wireType 2 =*/42).bytes(message.fileSha256); - if (message.fileEncSha256 != null && Object.hasOwnProperty.call(message, "fileEncSha256")) - writer.uint32(/* id 6, wireType 2 =*/50).bytes(message.fileEncSha256); - return writer; - }; - - /** - * Encodes the specified ExternalBlobReference message, length delimited. Does not implicitly {@link proto.ExternalBlobReference.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.ExternalBlobReference - * @static - * @param {proto.IExternalBlobReference} message ExternalBlobReference message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ExternalBlobReference.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes an ExternalBlobReference message from the specified reader or buffer. - * @function decode - * @memberof proto.ExternalBlobReference - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.ExternalBlobReference} ExternalBlobReference - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ExternalBlobReference.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.ExternalBlobReference(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.mediaKey = reader.bytes(); - break; - case 2: - message.directPath = reader.string(); - break; - case 3: - message.handle = reader.string(); - break; - case 4: - message.fileSizeBytes = reader.uint64(); - break; - case 5: - message.fileSha256 = reader.bytes(); - break; - case 6: - message.fileEncSha256 = reader.bytes(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes an ExternalBlobReference message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.ExternalBlobReference - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.ExternalBlobReference} ExternalBlobReference - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ExternalBlobReference.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies an ExternalBlobReference message. - * @function verify - * @memberof proto.ExternalBlobReference - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - ExternalBlobReference.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.mediaKey != null && message.hasOwnProperty("mediaKey")) - if (!(message.mediaKey && typeof message.mediaKey.length === "number" || $util.isString(message.mediaKey))) - return "mediaKey: buffer expected"; - if (message.directPath != null && message.hasOwnProperty("directPath")) - if (!$util.isString(message.directPath)) - return "directPath: string expected"; - if (message.handle != null && message.hasOwnProperty("handle")) - if (!$util.isString(message.handle)) - return "handle: string expected"; - if (message.fileSizeBytes != null && message.hasOwnProperty("fileSizeBytes")) - if (!$util.isInteger(message.fileSizeBytes) && !(message.fileSizeBytes && $util.isInteger(message.fileSizeBytes.low) && $util.isInteger(message.fileSizeBytes.high))) - return "fileSizeBytes: integer|Long expected"; - if (message.fileSha256 != null && message.hasOwnProperty("fileSha256")) - if (!(message.fileSha256 && typeof message.fileSha256.length === "number" || $util.isString(message.fileSha256))) - return "fileSha256: buffer expected"; - if (message.fileEncSha256 != null && message.hasOwnProperty("fileEncSha256")) - if (!(message.fileEncSha256 && typeof message.fileEncSha256.length === "number" || $util.isString(message.fileEncSha256))) - return "fileEncSha256: buffer expected"; - return null; - }; - - /** - * Creates an ExternalBlobReference message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.ExternalBlobReference - * @static - * @param {Object.} object Plain object - * @returns {proto.ExternalBlobReference} ExternalBlobReference - */ - ExternalBlobReference.fromObject = function fromObject(object) { - if (object instanceof $root.proto.ExternalBlobReference) - return object; - var message = new $root.proto.ExternalBlobReference(); - if (object.mediaKey != null) - if (typeof object.mediaKey === "string") - $util.base64.decode(object.mediaKey, message.mediaKey = $util.newBuffer($util.base64.length(object.mediaKey)), 0); - else if (object.mediaKey.length) - message.mediaKey = object.mediaKey; - if (object.directPath != null) - message.directPath = String(object.directPath); - if (object.handle != null) - message.handle = String(object.handle); - if (object.fileSizeBytes != null) - if ($util.Long) - (message.fileSizeBytes = $util.Long.fromValue(object.fileSizeBytes)).unsigned = true; - else if (typeof object.fileSizeBytes === "string") - message.fileSizeBytes = parseInt(object.fileSizeBytes, 10); - else if (typeof object.fileSizeBytes === "number") - message.fileSizeBytes = object.fileSizeBytes; - else if (typeof object.fileSizeBytes === "object") - message.fileSizeBytes = new $util.LongBits(object.fileSizeBytes.low >>> 0, object.fileSizeBytes.high >>> 0).toNumber(true); - if (object.fileSha256 != null) - if (typeof object.fileSha256 === "string") - $util.base64.decode(object.fileSha256, message.fileSha256 = $util.newBuffer($util.base64.length(object.fileSha256)), 0); - else if (object.fileSha256.length) - message.fileSha256 = object.fileSha256; - if (object.fileEncSha256 != null) - if (typeof object.fileEncSha256 === "string") - $util.base64.decode(object.fileEncSha256, message.fileEncSha256 = $util.newBuffer($util.base64.length(object.fileEncSha256)), 0); - else if (object.fileEncSha256.length) - message.fileEncSha256 = object.fileEncSha256; - return message; - }; - - /** - * Creates a plain object from an ExternalBlobReference message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.ExternalBlobReference - * @static - * @param {proto.ExternalBlobReference} message ExternalBlobReference - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ExternalBlobReference.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - if (options.bytes === String) - object.mediaKey = ""; - else { - object.mediaKey = []; - if (options.bytes !== Array) - object.mediaKey = $util.newBuffer(object.mediaKey); - } - object.directPath = ""; - object.handle = ""; - if ($util.Long) { - var long = new $util.Long(0, 0, true); - object.fileSizeBytes = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; - } else - object.fileSizeBytes = options.longs === String ? "0" : 0; - if (options.bytes === String) - object.fileSha256 = ""; - else { - object.fileSha256 = []; - if (options.bytes !== Array) - object.fileSha256 = $util.newBuffer(object.fileSha256); - } - if (options.bytes === String) - object.fileEncSha256 = ""; - else { - object.fileEncSha256 = []; - if (options.bytes !== Array) - object.fileEncSha256 = $util.newBuffer(object.fileEncSha256); - } - } - if (message.mediaKey != null && message.hasOwnProperty("mediaKey")) - object.mediaKey = options.bytes === String ? $util.base64.encode(message.mediaKey, 0, message.mediaKey.length) : options.bytes === Array ? Array.prototype.slice.call(message.mediaKey) : message.mediaKey; - if (message.directPath != null && message.hasOwnProperty("directPath")) - object.directPath = message.directPath; - if (message.handle != null && message.hasOwnProperty("handle")) - object.handle = message.handle; - if (message.fileSizeBytes != null && message.hasOwnProperty("fileSizeBytes")) - if (typeof message.fileSizeBytes === "number") - object.fileSizeBytes = options.longs === String ? String(message.fileSizeBytes) : message.fileSizeBytes; - else - object.fileSizeBytes = options.longs === String ? $util.Long.prototype.toString.call(message.fileSizeBytes) : options.longs === Number ? new $util.LongBits(message.fileSizeBytes.low >>> 0, message.fileSizeBytes.high >>> 0).toNumber(true) : message.fileSizeBytes; - if (message.fileSha256 != null && message.hasOwnProperty("fileSha256")) - object.fileSha256 = options.bytes === String ? $util.base64.encode(message.fileSha256, 0, message.fileSha256.length) : options.bytes === Array ? Array.prototype.slice.call(message.fileSha256) : message.fileSha256; - if (message.fileEncSha256 != null && message.hasOwnProperty("fileEncSha256")) - object.fileEncSha256 = options.bytes === String ? $util.base64.encode(message.fileEncSha256, 0, message.fileEncSha256.length) : options.bytes === Array ? Array.prototype.slice.call(message.fileEncSha256) : message.fileEncSha256; - return object; - }; - - /** - * Converts this ExternalBlobReference to JSON. - * @function toJSON - * @memberof proto.ExternalBlobReference - * @instance - * @returns {Object.} JSON object - */ - ExternalBlobReference.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return ExternalBlobReference; - })(); - - proto.SyncdRecord = (function() { - - /** - * Properties of a SyncdRecord. - * @memberof proto - * @interface ISyncdRecord - * @property {proto.ISyncdIndex|null} [index] SyncdRecord index - * @property {proto.ISyncdValue|null} [value] SyncdRecord value - * @property {proto.IKeyId|null} [keyId] SyncdRecord keyId - */ - - /** - * Constructs a new SyncdRecord. - * @memberof proto - * @classdesc Represents a SyncdRecord. - * @implements ISyncdRecord - * @constructor - * @param {proto.ISyncdRecord=} [properties] Properties to set - */ - function SyncdRecord(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * SyncdRecord index. - * @member {proto.ISyncdIndex|null|undefined} index - * @memberof proto.SyncdRecord - * @instance - */ - SyncdRecord.prototype.index = null; - - /** - * SyncdRecord value. - * @member {proto.ISyncdValue|null|undefined} value - * @memberof proto.SyncdRecord - * @instance - */ - SyncdRecord.prototype.value = null; - - /** - * SyncdRecord keyId. - * @member {proto.IKeyId|null|undefined} keyId - * @memberof proto.SyncdRecord - * @instance - */ - SyncdRecord.prototype.keyId = null; - - /** - * Creates a new SyncdRecord instance using the specified properties. - * @function create - * @memberof proto.SyncdRecord - * @static - * @param {proto.ISyncdRecord=} [properties] Properties to set - * @returns {proto.SyncdRecord} SyncdRecord instance - */ - SyncdRecord.create = function create(properties) { - return new SyncdRecord(properties); - }; - - /** - * Encodes the specified SyncdRecord message. Does not implicitly {@link proto.SyncdRecord.verify|verify} messages. - * @function encode - * @memberof proto.SyncdRecord - * @static - * @param {proto.ISyncdRecord} message SyncdRecord message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - SyncdRecord.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.index != null && Object.hasOwnProperty.call(message, "index")) - $root.proto.SyncdIndex.encode(message.index, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); - if (message.value != null && Object.hasOwnProperty.call(message, "value")) - $root.proto.SyncdValue.encode(message.value, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - if (message.keyId != null && Object.hasOwnProperty.call(message, "keyId")) - $root.proto.KeyId.encode(message.keyId, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); - return writer; - }; - - /** - * Encodes the specified SyncdRecord message, length delimited. Does not implicitly {@link proto.SyncdRecord.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.SyncdRecord - * @static - * @param {proto.ISyncdRecord} message SyncdRecord message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - SyncdRecord.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a SyncdRecord message from the specified reader or buffer. - * @function decode - * @memberof proto.SyncdRecord - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.SyncdRecord} SyncdRecord - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - SyncdRecord.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.SyncdRecord(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.index = $root.proto.SyncdIndex.decode(reader, reader.uint32()); - break; - case 2: - message.value = $root.proto.SyncdValue.decode(reader, reader.uint32()); - break; - case 3: - message.keyId = $root.proto.KeyId.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a SyncdRecord message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.SyncdRecord - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.SyncdRecord} SyncdRecord - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - SyncdRecord.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a SyncdRecord message. - * @function verify - * @memberof proto.SyncdRecord - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - SyncdRecord.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.index != null && message.hasOwnProperty("index")) { - var error = $root.proto.SyncdIndex.verify(message.index); - if (error) - return "index." + error; - } - if (message.value != null && message.hasOwnProperty("value")) { - var error = $root.proto.SyncdValue.verify(message.value); - if (error) - return "value." + error; - } - if (message.keyId != null && message.hasOwnProperty("keyId")) { - var error = $root.proto.KeyId.verify(message.keyId); - if (error) - return "keyId." + error; - } - return null; - }; - - /** - * Creates a SyncdRecord message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.SyncdRecord - * @static - * @param {Object.} object Plain object - * @returns {proto.SyncdRecord} SyncdRecord - */ - SyncdRecord.fromObject = function fromObject(object) { - if (object instanceof $root.proto.SyncdRecord) - return object; - var message = new $root.proto.SyncdRecord(); - if (object.index != null) { - if (typeof object.index !== "object") - throw TypeError(".proto.SyncdRecord.index: object expected"); - message.index = $root.proto.SyncdIndex.fromObject(object.index); - } - if (object.value != null) { - if (typeof object.value !== "object") - throw TypeError(".proto.SyncdRecord.value: object expected"); - message.value = $root.proto.SyncdValue.fromObject(object.value); - } - if (object.keyId != null) { - if (typeof object.keyId !== "object") - throw TypeError(".proto.SyncdRecord.keyId: object expected"); - message.keyId = $root.proto.KeyId.fromObject(object.keyId); - } - return message; - }; - - /** - * Creates a plain object from a SyncdRecord message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.SyncdRecord - * @static - * @param {proto.SyncdRecord} message SyncdRecord - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - SyncdRecord.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.index = null; - object.value = null; - object.keyId = null; - } - if (message.index != null && message.hasOwnProperty("index")) - object.index = $root.proto.SyncdIndex.toObject(message.index, options); - if (message.value != null && message.hasOwnProperty("value")) - object.value = $root.proto.SyncdValue.toObject(message.value, options); - if (message.keyId != null && message.hasOwnProperty("keyId")) - object.keyId = $root.proto.KeyId.toObject(message.keyId, options); - return object; - }; - - /** - * Converts this SyncdRecord to JSON. - * @function toJSON - * @memberof proto.SyncdRecord - * @instance - * @returns {Object.} JSON object - */ - SyncdRecord.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return SyncdRecord; - })(); - - proto.KeyId = (function() { - - /** - * Properties of a KeyId. - * @memberof proto - * @interface IKeyId - * @property {Uint8Array|null} [id] KeyId id - */ - - /** - * Constructs a new KeyId. - * @memberof proto - * @classdesc Represents a KeyId. - * @implements IKeyId - * @constructor - * @param {proto.IKeyId=} [properties] Properties to set - */ - function KeyId(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * KeyId id. - * @member {Uint8Array} id - * @memberof proto.KeyId - * @instance - */ - KeyId.prototype.id = $util.newBuffer([]); - - /** - * Creates a new KeyId instance using the specified properties. - * @function create - * @memberof proto.KeyId - * @static - * @param {proto.IKeyId=} [properties] Properties to set - * @returns {proto.KeyId} KeyId instance - */ - KeyId.create = function create(properties) { - return new KeyId(properties); - }; - - /** - * Encodes the specified KeyId message. Does not implicitly {@link proto.KeyId.verify|verify} messages. - * @function encode - * @memberof proto.KeyId - * @static - * @param {proto.IKeyId} message KeyId message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - KeyId.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.id != null && Object.hasOwnProperty.call(message, "id")) - writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.id); - return writer; - }; - - /** - * Encodes the specified KeyId message, length delimited. Does not implicitly {@link proto.KeyId.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.KeyId - * @static - * @param {proto.IKeyId} message KeyId message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - KeyId.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a KeyId message from the specified reader or buffer. - * @function decode - * @memberof proto.KeyId - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.KeyId} KeyId - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - KeyId.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.KeyId(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.id = reader.bytes(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a KeyId message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.KeyId - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.KeyId} KeyId - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - KeyId.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a KeyId message. - * @function verify - * @memberof proto.KeyId - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - KeyId.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.id != null && message.hasOwnProperty("id")) - if (!(message.id && typeof message.id.length === "number" || $util.isString(message.id))) - return "id: buffer expected"; - return null; - }; - - /** - * Creates a KeyId message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.KeyId - * @static - * @param {Object.} object Plain object - * @returns {proto.KeyId} KeyId - */ - KeyId.fromObject = function fromObject(object) { - if (object instanceof $root.proto.KeyId) - return object; - var message = new $root.proto.KeyId(); - if (object.id != null) - if (typeof object.id === "string") - $util.base64.decode(object.id, message.id = $util.newBuffer($util.base64.length(object.id)), 0); - else if (object.id.length) - message.id = object.id; - return message; - }; - - /** - * Creates a plain object from a KeyId message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.KeyId - * @static - * @param {proto.KeyId} message KeyId - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - KeyId.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) - if (options.bytes === String) - object.id = ""; - else { - object.id = []; - if (options.bytes !== Array) - object.id = $util.newBuffer(object.id); - } - if (message.id != null && message.hasOwnProperty("id")) - object.id = options.bytes === String ? $util.base64.encode(message.id, 0, message.id.length) : options.bytes === Array ? Array.prototype.slice.call(message.id) : message.id; - return object; - }; - - /** - * Converts this KeyId to JSON. - * @function toJSON - * @memberof proto.KeyId - * @instance - * @returns {Object.} JSON object - */ - KeyId.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return KeyId; - })(); - - proto.SyncdValue = (function() { - - /** - * Properties of a SyncdValue. - * @memberof proto - * @interface ISyncdValue - * @property {Uint8Array|null} [blob] SyncdValue blob - */ - - /** - * Constructs a new SyncdValue. - * @memberof proto - * @classdesc Represents a SyncdValue. - * @implements ISyncdValue - * @constructor - * @param {proto.ISyncdValue=} [properties] Properties to set - */ - function SyncdValue(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * SyncdValue blob. - * @member {Uint8Array} blob - * @memberof proto.SyncdValue - * @instance - */ - SyncdValue.prototype.blob = $util.newBuffer([]); - - /** - * Creates a new SyncdValue instance using the specified properties. - * @function create - * @memberof proto.SyncdValue - * @static - * @param {proto.ISyncdValue=} [properties] Properties to set - * @returns {proto.SyncdValue} SyncdValue instance - */ - SyncdValue.create = function create(properties) { - return new SyncdValue(properties); - }; - - /** - * Encodes the specified SyncdValue message. Does not implicitly {@link proto.SyncdValue.verify|verify} messages. - * @function encode - * @memberof proto.SyncdValue - * @static - * @param {proto.ISyncdValue} message SyncdValue message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - SyncdValue.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.blob != null && Object.hasOwnProperty.call(message, "blob")) - writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.blob); - return writer; - }; - - /** - * Encodes the specified SyncdValue message, length delimited. Does not implicitly {@link proto.SyncdValue.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.SyncdValue - * @static - * @param {proto.ISyncdValue} message SyncdValue message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - SyncdValue.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a SyncdValue message from the specified reader or buffer. - * @function decode - * @memberof proto.SyncdValue - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.SyncdValue} SyncdValue - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - SyncdValue.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.SyncdValue(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.blob = reader.bytes(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a SyncdValue message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.SyncdValue - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.SyncdValue} SyncdValue - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - SyncdValue.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a SyncdValue message. - * @function verify - * @memberof proto.SyncdValue - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - SyncdValue.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.blob != null && message.hasOwnProperty("blob")) - if (!(message.blob && typeof message.blob.length === "number" || $util.isString(message.blob))) - return "blob: buffer expected"; - return null; - }; - - /** - * Creates a SyncdValue message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.SyncdValue - * @static - * @param {Object.} object Plain object - * @returns {proto.SyncdValue} SyncdValue - */ - SyncdValue.fromObject = function fromObject(object) { - if (object instanceof $root.proto.SyncdValue) - return object; - var message = new $root.proto.SyncdValue(); - if (object.blob != null) - if (typeof object.blob === "string") - $util.base64.decode(object.blob, message.blob = $util.newBuffer($util.base64.length(object.blob)), 0); - else if (object.blob.length) - message.blob = object.blob; - return message; - }; - - /** - * Creates a plain object from a SyncdValue message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.SyncdValue - * @static - * @param {proto.SyncdValue} message SyncdValue - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - SyncdValue.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) - if (options.bytes === String) - object.blob = ""; - else { - object.blob = []; - if (options.bytes !== Array) - object.blob = $util.newBuffer(object.blob); - } - if (message.blob != null && message.hasOwnProperty("blob")) - object.blob = options.bytes === String ? $util.base64.encode(message.blob, 0, message.blob.length) : options.bytes === Array ? Array.prototype.slice.call(message.blob) : message.blob; - return object; - }; - - /** - * Converts this SyncdValue to JSON. - * @function toJSON - * @memberof proto.SyncdValue - * @instance - * @returns {Object.} JSON object - */ - SyncdValue.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return SyncdValue; - })(); - - proto.SyncdIndex = (function() { - - /** - * Properties of a SyncdIndex. - * @memberof proto - * @interface ISyncdIndex - * @property {Uint8Array|null} [blob] SyncdIndex blob - */ - - /** - * Constructs a new SyncdIndex. - * @memberof proto - * @classdesc Represents a SyncdIndex. - * @implements ISyncdIndex - * @constructor - * @param {proto.ISyncdIndex=} [properties] Properties to set - */ - function SyncdIndex(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * SyncdIndex blob. - * @member {Uint8Array} blob - * @memberof proto.SyncdIndex - * @instance - */ - SyncdIndex.prototype.blob = $util.newBuffer([]); - - /** - * Creates a new SyncdIndex instance using the specified properties. - * @function create - * @memberof proto.SyncdIndex - * @static - * @param {proto.ISyncdIndex=} [properties] Properties to set - * @returns {proto.SyncdIndex} SyncdIndex instance - */ - SyncdIndex.create = function create(properties) { - return new SyncdIndex(properties); - }; - - /** - * Encodes the specified SyncdIndex message. Does not implicitly {@link proto.SyncdIndex.verify|verify} messages. - * @function encode - * @memberof proto.SyncdIndex - * @static - * @param {proto.ISyncdIndex} message SyncdIndex message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - SyncdIndex.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.blob != null && Object.hasOwnProperty.call(message, "blob")) - writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.blob); - return writer; - }; - - /** - * Encodes the specified SyncdIndex message, length delimited. Does not implicitly {@link proto.SyncdIndex.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.SyncdIndex - * @static - * @param {proto.ISyncdIndex} message SyncdIndex message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - SyncdIndex.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a SyncdIndex message from the specified reader or buffer. - * @function decode - * @memberof proto.SyncdIndex - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.SyncdIndex} SyncdIndex - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - SyncdIndex.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.SyncdIndex(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.blob = reader.bytes(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a SyncdIndex message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.SyncdIndex - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.SyncdIndex} SyncdIndex - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - SyncdIndex.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a SyncdIndex message. - * @function verify - * @memberof proto.SyncdIndex - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - SyncdIndex.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.blob != null && message.hasOwnProperty("blob")) - if (!(message.blob && typeof message.blob.length === "number" || $util.isString(message.blob))) - return "blob: buffer expected"; - return null; - }; - - /** - * Creates a SyncdIndex message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.SyncdIndex - * @static - * @param {Object.} object Plain object - * @returns {proto.SyncdIndex} SyncdIndex - */ - SyncdIndex.fromObject = function fromObject(object) { - if (object instanceof $root.proto.SyncdIndex) - return object; - var message = new $root.proto.SyncdIndex(); - if (object.blob != null) - if (typeof object.blob === "string") - $util.base64.decode(object.blob, message.blob = $util.newBuffer($util.base64.length(object.blob)), 0); - else if (object.blob.length) - message.blob = object.blob; - return message; - }; - - /** - * Creates a plain object from a SyncdIndex message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.SyncdIndex - * @static - * @param {proto.SyncdIndex} message SyncdIndex - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - SyncdIndex.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) - if (options.bytes === String) - object.blob = ""; - else { - object.blob = []; - if (options.bytes !== Array) - object.blob = $util.newBuffer(object.blob); - } - if (message.blob != null && message.hasOwnProperty("blob")) - object.blob = options.bytes === String ? $util.base64.encode(message.blob, 0, message.blob.length) : options.bytes === Array ? Array.prototype.slice.call(message.blob) : message.blob; - return object; - }; - - /** - * Converts this SyncdIndex to JSON. - * @function toJSON - * @memberof proto.SyncdIndex - * @instance - * @returns {Object.} JSON object - */ - SyncdIndex.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return SyncdIndex; - })(); - - proto.ExitCode = (function() { - - /** - * Properties of an ExitCode. - * @memberof proto - * @interface IExitCode - * @property {number|Long|null} [code] ExitCode code - * @property {string|null} [text] ExitCode text - */ - - /** - * Constructs a new ExitCode. - * @memberof proto - * @classdesc Represents an ExitCode. - * @implements IExitCode - * @constructor - * @param {proto.IExitCode=} [properties] Properties to set - */ - function ExitCode(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * ExitCode code. - * @member {number|Long} code - * @memberof proto.ExitCode - * @instance - */ - ExitCode.prototype.code = $util.Long ? $util.Long.fromBits(0,0,true) : 0; - - /** - * ExitCode text. - * @member {string} text - * @memberof proto.ExitCode - * @instance - */ - ExitCode.prototype.text = ""; - - /** - * Creates a new ExitCode instance using the specified properties. - * @function create - * @memberof proto.ExitCode - * @static - * @param {proto.IExitCode=} [properties] Properties to set - * @returns {proto.ExitCode} ExitCode instance - */ - ExitCode.create = function create(properties) { - return new ExitCode(properties); - }; - - /** - * Encodes the specified ExitCode message. Does not implicitly {@link proto.ExitCode.verify|verify} messages. - * @function encode - * @memberof proto.ExitCode - * @static - * @param {proto.IExitCode} message ExitCode message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ExitCode.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.code != null && Object.hasOwnProperty.call(message, "code")) - writer.uint32(/* id 1, wireType 0 =*/8).uint64(message.code); - if (message.text != null && Object.hasOwnProperty.call(message, "text")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.text); - return writer; - }; - - /** - * Encodes the specified ExitCode message, length delimited. Does not implicitly {@link proto.ExitCode.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.ExitCode - * @static - * @param {proto.IExitCode} message ExitCode message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ExitCode.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes an ExitCode message from the specified reader or buffer. - * @function decode - * @memberof proto.ExitCode - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.ExitCode} ExitCode - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ExitCode.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.ExitCode(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.code = reader.uint64(); - break; - case 2: - message.text = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes an ExitCode message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.ExitCode - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.ExitCode} ExitCode - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ExitCode.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies an ExitCode message. - * @function verify - * @memberof proto.ExitCode - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - ExitCode.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.code != null && message.hasOwnProperty("code")) - if (!$util.isInteger(message.code) && !(message.code && $util.isInteger(message.code.low) && $util.isInteger(message.code.high))) - return "code: integer|Long expected"; - if (message.text != null && message.hasOwnProperty("text")) - if (!$util.isString(message.text)) - return "text: string expected"; - return null; - }; - - /** - * Creates an ExitCode message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.ExitCode - * @static - * @param {Object.} object Plain object - * @returns {proto.ExitCode} ExitCode - */ - ExitCode.fromObject = function fromObject(object) { - if (object instanceof $root.proto.ExitCode) - return object; - var message = new $root.proto.ExitCode(); - if (object.code != null) - if ($util.Long) - (message.code = $util.Long.fromValue(object.code)).unsigned = true; - else if (typeof object.code === "string") - message.code = parseInt(object.code, 10); - else if (typeof object.code === "number") - message.code = object.code; - else if (typeof object.code === "object") - message.code = new $util.LongBits(object.code.low >>> 0, object.code.high >>> 0).toNumber(true); - if (object.text != null) - message.text = String(object.text); - return message; - }; - - /** - * Creates a plain object from an ExitCode message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.ExitCode - * @static - * @param {proto.ExitCode} message ExitCode - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ExitCode.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - if ($util.Long) { - var long = new $util.Long(0, 0, true); - object.code = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; - } else - object.code = options.longs === String ? "0" : 0; - object.text = ""; - } - if (message.code != null && message.hasOwnProperty("code")) - if (typeof message.code === "number") - object.code = options.longs === String ? String(message.code) : message.code; - else - object.code = options.longs === String ? $util.Long.prototype.toString.call(message.code) : options.longs === Number ? new $util.LongBits(message.code.low >>> 0, message.code.high >>> 0).toNumber(true) : message.code; - if (message.text != null && message.hasOwnProperty("text")) - object.text = message.text; - return object; - }; - - /** - * Converts this ExitCode to JSON. - * @function toJSON - * @memberof proto.ExitCode - * @instance - * @returns {Object.} JSON object - */ - ExitCode.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return ExitCode; - })(); - - proto.SyncdVersion = (function() { - - /** - * Properties of a SyncdVersion. - * @memberof proto - * @interface ISyncdVersion - * @property {number|Long|null} [version] SyncdVersion version - */ - - /** - * Constructs a new SyncdVersion. - * @memberof proto - * @classdesc Represents a SyncdVersion. - * @implements ISyncdVersion - * @constructor - * @param {proto.ISyncdVersion=} [properties] Properties to set - */ - function SyncdVersion(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * SyncdVersion version. - * @member {number|Long} version - * @memberof proto.SyncdVersion - * @instance - */ - SyncdVersion.prototype.version = $util.Long ? $util.Long.fromBits(0,0,true) : 0; - - /** - * Creates a new SyncdVersion instance using the specified properties. - * @function create - * @memberof proto.SyncdVersion - * @static - * @param {proto.ISyncdVersion=} [properties] Properties to set - * @returns {proto.SyncdVersion} SyncdVersion instance - */ - SyncdVersion.create = function create(properties) { - return new SyncdVersion(properties); - }; - - /** - * Encodes the specified SyncdVersion message. Does not implicitly {@link proto.SyncdVersion.verify|verify} messages. - * @function encode - * @memberof proto.SyncdVersion - * @static - * @param {proto.ISyncdVersion} message SyncdVersion message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - SyncdVersion.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.version != null && Object.hasOwnProperty.call(message, "version")) - writer.uint32(/* id 1, wireType 0 =*/8).uint64(message.version); - return writer; - }; - - /** - * Encodes the specified SyncdVersion message, length delimited. Does not implicitly {@link proto.SyncdVersion.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.SyncdVersion - * @static - * @param {proto.ISyncdVersion} message SyncdVersion message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - SyncdVersion.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a SyncdVersion message from the specified reader or buffer. - * @function decode - * @memberof proto.SyncdVersion - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.SyncdVersion} SyncdVersion - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - SyncdVersion.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.SyncdVersion(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.version = reader.uint64(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a SyncdVersion message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.SyncdVersion - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.SyncdVersion} SyncdVersion - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - SyncdVersion.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a SyncdVersion message. - * @function verify - * @memberof proto.SyncdVersion - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - SyncdVersion.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.version != null && message.hasOwnProperty("version")) - if (!$util.isInteger(message.version) && !(message.version && $util.isInteger(message.version.low) && $util.isInteger(message.version.high))) - return "version: integer|Long expected"; - return null; - }; - - /** - * Creates a SyncdVersion message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.SyncdVersion - * @static - * @param {Object.} object Plain object - * @returns {proto.SyncdVersion} SyncdVersion - */ - SyncdVersion.fromObject = function fromObject(object) { - if (object instanceof $root.proto.SyncdVersion) - return object; - var message = new $root.proto.SyncdVersion(); - if (object.version != null) - if ($util.Long) - (message.version = $util.Long.fromValue(object.version)).unsigned = true; - else if (typeof object.version === "string") - message.version = parseInt(object.version, 10); - else if (typeof object.version === "number") - message.version = object.version; - else if (typeof object.version === "object") - message.version = new $util.LongBits(object.version.low >>> 0, object.version.high >>> 0).toNumber(true); - return message; - }; - - /** - * Creates a plain object from a SyncdVersion message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.SyncdVersion - * @static - * @param {proto.SyncdVersion} message SyncdVersion - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - SyncdVersion.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) - if ($util.Long) { - var long = new $util.Long(0, 0, true); - object.version = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; - } else - object.version = options.longs === String ? "0" : 0; - if (message.version != null && message.hasOwnProperty("version")) - if (typeof message.version === "number") - object.version = options.longs === String ? String(message.version) : message.version; - else - object.version = options.longs === String ? $util.Long.prototype.toString.call(message.version) : options.longs === Number ? new $util.LongBits(message.version.low >>> 0, message.version.high >>> 0).toNumber(true) : message.version; - return object; - }; - - /** - * Converts this SyncdVersion to JSON. - * @function toJSON - * @memberof proto.SyncdVersion - * @instance - * @returns {Object.} JSON object - */ - SyncdVersion.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return SyncdVersion; - })(); - - proto.ServerErrorReceipt = (function() { - - /** - * Properties of a ServerErrorReceipt. - * @memberof proto - * @interface IServerErrorReceipt - * @property {string|null} [stanzaId] ServerErrorReceipt stanzaId - */ - - /** - * Constructs a new ServerErrorReceipt. - * @memberof proto - * @classdesc Represents a ServerErrorReceipt. - * @implements IServerErrorReceipt - * @constructor - * @param {proto.IServerErrorReceipt=} [properties] Properties to set - */ - function ServerErrorReceipt(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * ServerErrorReceipt stanzaId. - * @member {string} stanzaId - * @memberof proto.ServerErrorReceipt - * @instance - */ - ServerErrorReceipt.prototype.stanzaId = ""; - - /** - * Creates a new ServerErrorReceipt instance using the specified properties. - * @function create - * @memberof proto.ServerErrorReceipt - * @static - * @param {proto.IServerErrorReceipt=} [properties] Properties to set - * @returns {proto.ServerErrorReceipt} ServerErrorReceipt instance - */ - ServerErrorReceipt.create = function create(properties) { - return new ServerErrorReceipt(properties); - }; - - /** - * Encodes the specified ServerErrorReceipt message. Does not implicitly {@link proto.ServerErrorReceipt.verify|verify} messages. - * @function encode - * @memberof proto.ServerErrorReceipt - * @static - * @param {proto.IServerErrorReceipt} message ServerErrorReceipt message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ServerErrorReceipt.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.stanzaId != null && Object.hasOwnProperty.call(message, "stanzaId")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.stanzaId); - return writer; - }; - - /** - * Encodes the specified ServerErrorReceipt message, length delimited. Does not implicitly {@link proto.ServerErrorReceipt.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.ServerErrorReceipt - * @static - * @param {proto.IServerErrorReceipt} message ServerErrorReceipt message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ServerErrorReceipt.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a ServerErrorReceipt message from the specified reader or buffer. - * @function decode - * @memberof proto.ServerErrorReceipt - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.ServerErrorReceipt} ServerErrorReceipt - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ServerErrorReceipt.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.ServerErrorReceipt(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.stanzaId = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a ServerErrorReceipt message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.ServerErrorReceipt - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.ServerErrorReceipt} ServerErrorReceipt - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ServerErrorReceipt.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a ServerErrorReceipt message. - * @function verify - * @memberof proto.ServerErrorReceipt - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - ServerErrorReceipt.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.stanzaId != null && message.hasOwnProperty("stanzaId")) - if (!$util.isString(message.stanzaId)) - return "stanzaId: string expected"; - return null; - }; - - /** - * Creates a ServerErrorReceipt message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.ServerErrorReceipt - * @static - * @param {Object.} object Plain object - * @returns {proto.ServerErrorReceipt} ServerErrorReceipt - */ - ServerErrorReceipt.fromObject = function fromObject(object) { - if (object instanceof $root.proto.ServerErrorReceipt) - return object; - var message = new $root.proto.ServerErrorReceipt(); - if (object.stanzaId != null) - message.stanzaId = String(object.stanzaId); - return message; - }; - - /** - * Creates a plain object from a ServerErrorReceipt message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.ServerErrorReceipt - * @static - * @param {proto.ServerErrorReceipt} message ServerErrorReceipt - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ServerErrorReceipt.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) - object.stanzaId = ""; - if (message.stanzaId != null && message.hasOwnProperty("stanzaId")) - object.stanzaId = message.stanzaId; - return object; - }; - - /** - * Converts this ServerErrorReceipt to JSON. - * @function toJSON - * @memberof proto.ServerErrorReceipt - * @instance - * @returns {Object.} JSON object - */ - ServerErrorReceipt.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return ServerErrorReceipt; - })(); - - proto.MediaRetryNotification = (function() { - - /** - * Properties of a MediaRetryNotification. - * @memberof proto - * @interface IMediaRetryNotification - * @property {string|null} [stanzaId] MediaRetryNotification stanzaId - * @property {string|null} [directPath] MediaRetryNotification directPath - * @property {proto.MediaRetryNotification.MediaRetryNotificationResultType|null} [result] MediaRetryNotification result - */ - - /** - * Constructs a new MediaRetryNotification. - * @memberof proto - * @classdesc Represents a MediaRetryNotification. - * @implements IMediaRetryNotification - * @constructor - * @param {proto.IMediaRetryNotification=} [properties] Properties to set - */ - function MediaRetryNotification(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * MediaRetryNotification stanzaId. - * @member {string} stanzaId - * @memberof proto.MediaRetryNotification - * @instance - */ - MediaRetryNotification.prototype.stanzaId = ""; - - /** - * MediaRetryNotification directPath. - * @member {string} directPath - * @memberof proto.MediaRetryNotification - * @instance - */ - MediaRetryNotification.prototype.directPath = ""; - - /** - * MediaRetryNotification result. - * @member {proto.MediaRetryNotification.MediaRetryNotificationResultType} result - * @memberof proto.MediaRetryNotification - * @instance - */ - MediaRetryNotification.prototype.result = 0; - - /** - * Creates a new MediaRetryNotification instance using the specified properties. - * @function create - * @memberof proto.MediaRetryNotification - * @static - * @param {proto.IMediaRetryNotification=} [properties] Properties to set - * @returns {proto.MediaRetryNotification} MediaRetryNotification instance - */ - MediaRetryNotification.create = function create(properties) { - return new MediaRetryNotification(properties); - }; - - /** - * Encodes the specified MediaRetryNotification message. Does not implicitly {@link proto.MediaRetryNotification.verify|verify} messages. - * @function encode - * @memberof proto.MediaRetryNotification - * @static - * @param {proto.IMediaRetryNotification} message MediaRetryNotification message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - MediaRetryNotification.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.stanzaId != null && Object.hasOwnProperty.call(message, "stanzaId")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.stanzaId); - if (message.directPath != null && Object.hasOwnProperty.call(message, "directPath")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.directPath); - if (message.result != null && Object.hasOwnProperty.call(message, "result")) - writer.uint32(/* id 3, wireType 0 =*/24).int32(message.result); - return writer; - }; - - /** - * Encodes the specified MediaRetryNotification message, length delimited. Does not implicitly {@link proto.MediaRetryNotification.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.MediaRetryNotification - * @static - * @param {proto.IMediaRetryNotification} message MediaRetryNotification message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - MediaRetryNotification.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a MediaRetryNotification message from the specified reader or buffer. - * @function decode - * @memberof proto.MediaRetryNotification - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.MediaRetryNotification} MediaRetryNotification - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - MediaRetryNotification.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.MediaRetryNotification(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.stanzaId = reader.string(); - break; - case 2: - message.directPath = reader.string(); - break; - case 3: - message.result = reader.int32(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a MediaRetryNotification message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.MediaRetryNotification - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.MediaRetryNotification} MediaRetryNotification - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - MediaRetryNotification.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a MediaRetryNotification message. - * @function verify - * @memberof proto.MediaRetryNotification - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - MediaRetryNotification.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.stanzaId != null && message.hasOwnProperty("stanzaId")) - if (!$util.isString(message.stanzaId)) - return "stanzaId: string expected"; - if (message.directPath != null && message.hasOwnProperty("directPath")) - if (!$util.isString(message.directPath)) - return "directPath: string expected"; - if (message.result != null && message.hasOwnProperty("result")) - switch (message.result) { - default: - return "result: enum value expected"; - case 0: - case 1: - case 2: - case 3: - break; - } - return null; - }; - - /** - * Creates a MediaRetryNotification message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.MediaRetryNotification - * @static - * @param {Object.} object Plain object - * @returns {proto.MediaRetryNotification} MediaRetryNotification - */ - MediaRetryNotification.fromObject = function fromObject(object) { - if (object instanceof $root.proto.MediaRetryNotification) - return object; - var message = new $root.proto.MediaRetryNotification(); - if (object.stanzaId != null) - message.stanzaId = String(object.stanzaId); - if (object.directPath != null) - message.directPath = String(object.directPath); - switch (object.result) { - case "GENERAL_ERROR": - case 0: - message.result = 0; - break; - case "SUCCESS": - case 1: - message.result = 1; - break; - case "NOT_FOUND": - case 2: - message.result = 2; - break; - case "DECRYPTION_ERROR": - case 3: - message.result = 3; - break; - } - return message; - }; - - /** - * Creates a plain object from a MediaRetryNotification message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.MediaRetryNotification - * @static - * @param {proto.MediaRetryNotification} message MediaRetryNotification - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - MediaRetryNotification.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.stanzaId = ""; - object.directPath = ""; - object.result = options.enums === String ? "GENERAL_ERROR" : 0; - } - if (message.stanzaId != null && message.hasOwnProperty("stanzaId")) - object.stanzaId = message.stanzaId; - if (message.directPath != null && message.hasOwnProperty("directPath")) - object.directPath = message.directPath; - if (message.result != null && message.hasOwnProperty("result")) - object.result = options.enums === String ? $root.proto.MediaRetryNotification.MediaRetryNotificationResultType[message.result] : message.result; - return object; - }; - - /** - * Converts this MediaRetryNotification to JSON. - * @function toJSON - * @memberof proto.MediaRetryNotification - * @instance - * @returns {Object.} JSON object - */ - MediaRetryNotification.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - /** - * MediaRetryNotificationResultType enum. - * @name proto.MediaRetryNotification.MediaRetryNotificationResultType - * @enum {number} - * @property {number} GENERAL_ERROR=0 GENERAL_ERROR value - * @property {number} SUCCESS=1 SUCCESS value - * @property {number} NOT_FOUND=2 NOT_FOUND value - * @property {number} DECRYPTION_ERROR=3 DECRYPTION_ERROR value - */ - MediaRetryNotification.MediaRetryNotificationResultType = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "GENERAL_ERROR"] = 0; - values[valuesById[1] = "SUCCESS"] = 1; - values[valuesById[2] = "NOT_FOUND"] = 2; - values[valuesById[3] = "DECRYPTION_ERROR"] = 3; - return values; - })(); - - return MediaRetryNotification; - })(); - - proto.MsgOpaqueData = (function() { - - /** - * Properties of a MsgOpaqueData. - * @memberof proto - * @interface IMsgOpaqueData - * @property {string|null} [body] MsgOpaqueData body - * @property {string|null} [caption] MsgOpaqueData caption - * @property {string|null} [clientUrl] MsgOpaqueData clientUrl - * @property {number|null} [lng] MsgOpaqueData lng - * @property {number|null} [lat] MsgOpaqueData lat - * @property {number|null} [paymentAmount1000] MsgOpaqueData paymentAmount1000 - * @property {string|null} [paymentNoteMsgBody] MsgOpaqueData paymentNoteMsgBody - * @property {string|null} [canonicalUrl] MsgOpaqueData canonicalUrl - * @property {string|null} [matchedText] MsgOpaqueData matchedText - * @property {string|null} [title] MsgOpaqueData title - * @property {string|null} [description] MsgOpaqueData description - */ - - /** - * Constructs a new MsgOpaqueData. - * @memberof proto - * @classdesc Represents a MsgOpaqueData. - * @implements IMsgOpaqueData - * @constructor - * @param {proto.IMsgOpaqueData=} [properties] Properties to set - */ - function MsgOpaqueData(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * MsgOpaqueData body. - * @member {string} body - * @memberof proto.MsgOpaqueData - * @instance - */ - MsgOpaqueData.prototype.body = ""; - - /** - * MsgOpaqueData caption. - * @member {string} caption - * @memberof proto.MsgOpaqueData - * @instance - */ - MsgOpaqueData.prototype.caption = ""; - - /** - * MsgOpaqueData clientUrl. - * @member {string} clientUrl - * @memberof proto.MsgOpaqueData - * @instance - */ - MsgOpaqueData.prototype.clientUrl = ""; - - /** - * MsgOpaqueData lng. - * @member {number} lng - * @memberof proto.MsgOpaqueData - * @instance - */ - MsgOpaqueData.prototype.lng = 0; - - /** - * MsgOpaqueData lat. - * @member {number} lat - * @memberof proto.MsgOpaqueData - * @instance - */ - MsgOpaqueData.prototype.lat = 0; - - /** - * MsgOpaqueData paymentAmount1000. - * @member {number} paymentAmount1000 - * @memberof proto.MsgOpaqueData - * @instance - */ - MsgOpaqueData.prototype.paymentAmount1000 = 0; - - /** - * MsgOpaqueData paymentNoteMsgBody. - * @member {string} paymentNoteMsgBody - * @memberof proto.MsgOpaqueData - * @instance - */ - MsgOpaqueData.prototype.paymentNoteMsgBody = ""; - - /** - * MsgOpaqueData canonicalUrl. - * @member {string} canonicalUrl - * @memberof proto.MsgOpaqueData - * @instance - */ - MsgOpaqueData.prototype.canonicalUrl = ""; - - /** - * MsgOpaqueData matchedText. - * @member {string} matchedText - * @memberof proto.MsgOpaqueData - * @instance - */ - MsgOpaqueData.prototype.matchedText = ""; - - /** - * MsgOpaqueData title. - * @member {string} title - * @memberof proto.MsgOpaqueData - * @instance - */ - MsgOpaqueData.prototype.title = ""; - - /** - * MsgOpaqueData description. - * @member {string} description - * @memberof proto.MsgOpaqueData - * @instance - */ - MsgOpaqueData.prototype.description = ""; - - /** - * Creates a new MsgOpaqueData instance using the specified properties. - * @function create - * @memberof proto.MsgOpaqueData - * @static - * @param {proto.IMsgOpaqueData=} [properties] Properties to set - * @returns {proto.MsgOpaqueData} MsgOpaqueData instance - */ - MsgOpaqueData.create = function create(properties) { - return new MsgOpaqueData(properties); - }; - - /** - * Encodes the specified MsgOpaqueData message. Does not implicitly {@link proto.MsgOpaqueData.verify|verify} messages. - * @function encode - * @memberof proto.MsgOpaqueData - * @static - * @param {proto.IMsgOpaqueData} message MsgOpaqueData message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - MsgOpaqueData.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.body != null && Object.hasOwnProperty.call(message, "body")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.body); - if (message.caption != null && Object.hasOwnProperty.call(message, "caption")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.caption); - if (message.clientUrl != null && Object.hasOwnProperty.call(message, "clientUrl")) - writer.uint32(/* id 4, wireType 2 =*/34).string(message.clientUrl); - if (message.lng != null && Object.hasOwnProperty.call(message, "lng")) - writer.uint32(/* id 5, wireType 1 =*/41).double(message.lng); - if (message.lat != null && Object.hasOwnProperty.call(message, "lat")) - writer.uint32(/* id 7, wireType 1 =*/57).double(message.lat); - if (message.paymentAmount1000 != null && Object.hasOwnProperty.call(message, "paymentAmount1000")) - writer.uint32(/* id 8, wireType 0 =*/64).int32(message.paymentAmount1000); - if (message.paymentNoteMsgBody != null && Object.hasOwnProperty.call(message, "paymentNoteMsgBody")) - writer.uint32(/* id 9, wireType 2 =*/74).string(message.paymentNoteMsgBody); - if (message.canonicalUrl != null && Object.hasOwnProperty.call(message, "canonicalUrl")) - writer.uint32(/* id 10, wireType 2 =*/82).string(message.canonicalUrl); - if (message.matchedText != null && Object.hasOwnProperty.call(message, "matchedText")) - writer.uint32(/* id 11, wireType 2 =*/90).string(message.matchedText); - if (message.title != null && Object.hasOwnProperty.call(message, "title")) - writer.uint32(/* id 12, wireType 2 =*/98).string(message.title); - if (message.description != null && Object.hasOwnProperty.call(message, "description")) - writer.uint32(/* id 13, wireType 2 =*/106).string(message.description); - return writer; - }; - - /** - * Encodes the specified MsgOpaqueData message, length delimited. Does not implicitly {@link proto.MsgOpaqueData.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.MsgOpaqueData - * @static - * @param {proto.IMsgOpaqueData} message MsgOpaqueData message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - MsgOpaqueData.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a MsgOpaqueData message from the specified reader or buffer. - * @function decode - * @memberof proto.MsgOpaqueData - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.MsgOpaqueData} MsgOpaqueData - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - MsgOpaqueData.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.MsgOpaqueData(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.body = reader.string(); - break; - case 3: - message.caption = reader.string(); - break; - case 4: - message.clientUrl = reader.string(); - break; - case 5: - message.lng = reader.double(); - break; - case 7: - message.lat = reader.double(); - break; - case 8: - message.paymentAmount1000 = reader.int32(); - break; - case 9: - message.paymentNoteMsgBody = reader.string(); - break; - case 10: - message.canonicalUrl = reader.string(); - break; - case 11: - message.matchedText = reader.string(); - break; - case 12: - message.title = reader.string(); - break; - case 13: - message.description = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a MsgOpaqueData message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.MsgOpaqueData - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.MsgOpaqueData} MsgOpaqueData - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - MsgOpaqueData.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a MsgOpaqueData message. - * @function verify - * @memberof proto.MsgOpaqueData - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - MsgOpaqueData.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.body != null && message.hasOwnProperty("body")) - if (!$util.isString(message.body)) - return "body: string expected"; - if (message.caption != null && message.hasOwnProperty("caption")) - if (!$util.isString(message.caption)) - return "caption: string expected"; - if (message.clientUrl != null && message.hasOwnProperty("clientUrl")) - if (!$util.isString(message.clientUrl)) - return "clientUrl: string expected"; - if (message.lng != null && message.hasOwnProperty("lng")) - if (typeof message.lng !== "number") - return "lng: number expected"; - if (message.lat != null && message.hasOwnProperty("lat")) - if (typeof message.lat !== "number") - return "lat: number expected"; - if (message.paymentAmount1000 != null && message.hasOwnProperty("paymentAmount1000")) - if (!$util.isInteger(message.paymentAmount1000)) - return "paymentAmount1000: integer expected"; - if (message.paymentNoteMsgBody != null && message.hasOwnProperty("paymentNoteMsgBody")) - if (!$util.isString(message.paymentNoteMsgBody)) - return "paymentNoteMsgBody: string expected"; - if (message.canonicalUrl != null && message.hasOwnProperty("canonicalUrl")) - if (!$util.isString(message.canonicalUrl)) - return "canonicalUrl: string expected"; - if (message.matchedText != null && message.hasOwnProperty("matchedText")) - if (!$util.isString(message.matchedText)) - return "matchedText: string expected"; - if (message.title != null && message.hasOwnProperty("title")) - if (!$util.isString(message.title)) - return "title: string expected"; - if (message.description != null && message.hasOwnProperty("description")) - if (!$util.isString(message.description)) - return "description: string expected"; - return null; - }; - - /** - * Creates a MsgOpaqueData message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.MsgOpaqueData - * @static - * @param {Object.} object Plain object - * @returns {proto.MsgOpaqueData} MsgOpaqueData - */ - MsgOpaqueData.fromObject = function fromObject(object) { - if (object instanceof $root.proto.MsgOpaqueData) - return object; - var message = new $root.proto.MsgOpaqueData(); - if (object.body != null) - message.body = String(object.body); - if (object.caption != null) - message.caption = String(object.caption); - if (object.clientUrl != null) - message.clientUrl = String(object.clientUrl); - if (object.lng != null) - message.lng = Number(object.lng); - if (object.lat != null) - message.lat = Number(object.lat); - if (object.paymentAmount1000 != null) - message.paymentAmount1000 = object.paymentAmount1000 | 0; - if (object.paymentNoteMsgBody != null) - message.paymentNoteMsgBody = String(object.paymentNoteMsgBody); - if (object.canonicalUrl != null) - message.canonicalUrl = String(object.canonicalUrl); - if (object.matchedText != null) - message.matchedText = String(object.matchedText); - if (object.title != null) - message.title = String(object.title); - if (object.description != null) - message.description = String(object.description); - return message; - }; - - /** - * Creates a plain object from a MsgOpaqueData message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.MsgOpaqueData - * @static - * @param {proto.MsgOpaqueData} message MsgOpaqueData - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - MsgOpaqueData.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.body = ""; - object.caption = ""; - object.clientUrl = ""; - object.lng = 0; - object.lat = 0; - object.paymentAmount1000 = 0; - object.paymentNoteMsgBody = ""; - object.canonicalUrl = ""; - object.matchedText = ""; - object.title = ""; - object.description = ""; - } - if (message.body != null && message.hasOwnProperty("body")) - object.body = message.body; - if (message.caption != null && message.hasOwnProperty("caption")) - object.caption = message.caption; - if (message.clientUrl != null && message.hasOwnProperty("clientUrl")) - object.clientUrl = message.clientUrl; - if (message.lng != null && message.hasOwnProperty("lng")) - object.lng = options.json && !isFinite(message.lng) ? String(message.lng) : message.lng; - if (message.lat != null && message.hasOwnProperty("lat")) - object.lat = options.json && !isFinite(message.lat) ? String(message.lat) : message.lat; - if (message.paymentAmount1000 != null && message.hasOwnProperty("paymentAmount1000")) - object.paymentAmount1000 = message.paymentAmount1000; - if (message.paymentNoteMsgBody != null && message.hasOwnProperty("paymentNoteMsgBody")) - object.paymentNoteMsgBody = message.paymentNoteMsgBody; - if (message.canonicalUrl != null && message.hasOwnProperty("canonicalUrl")) - object.canonicalUrl = message.canonicalUrl; - if (message.matchedText != null && message.hasOwnProperty("matchedText")) - object.matchedText = message.matchedText; - if (message.title != null && message.hasOwnProperty("title")) - object.title = message.title; - if (message.description != null && message.hasOwnProperty("description")) - object.description = message.description; - return object; - }; - - /** - * Converts this MsgOpaqueData to JSON. - * @function toJSON - * @memberof proto.MsgOpaqueData - * @instance - * @returns {Object.} JSON object - */ - MsgOpaqueData.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return MsgOpaqueData; - })(); - - proto.MsgRowOpaqueData = (function() { - - /** - * Properties of a MsgRowOpaqueData. - * @memberof proto - * @interface IMsgRowOpaqueData - * @property {proto.IMsgOpaqueData|null} [currentMsg] MsgRowOpaqueData currentMsg - * @property {proto.IMsgOpaqueData|null} [quotedMsg] MsgRowOpaqueData quotedMsg - */ - - /** - * Constructs a new MsgRowOpaqueData. - * @memberof proto - * @classdesc Represents a MsgRowOpaqueData. - * @implements IMsgRowOpaqueData - * @constructor - * @param {proto.IMsgRowOpaqueData=} [properties] Properties to set - */ - function MsgRowOpaqueData(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * MsgRowOpaqueData currentMsg. - * @member {proto.IMsgOpaqueData|null|undefined} currentMsg - * @memberof proto.MsgRowOpaqueData - * @instance - */ - MsgRowOpaqueData.prototype.currentMsg = null; - - /** - * MsgRowOpaqueData quotedMsg. - * @member {proto.IMsgOpaqueData|null|undefined} quotedMsg - * @memberof proto.MsgRowOpaqueData - * @instance - */ - MsgRowOpaqueData.prototype.quotedMsg = null; - - /** - * Creates a new MsgRowOpaqueData instance using the specified properties. - * @function create - * @memberof proto.MsgRowOpaqueData - * @static - * @param {proto.IMsgRowOpaqueData=} [properties] Properties to set - * @returns {proto.MsgRowOpaqueData} MsgRowOpaqueData instance - */ - MsgRowOpaqueData.create = function create(properties) { - return new MsgRowOpaqueData(properties); - }; - - /** - * Encodes the specified MsgRowOpaqueData message. Does not implicitly {@link proto.MsgRowOpaqueData.verify|verify} messages. - * @function encode - * @memberof proto.MsgRowOpaqueData - * @static - * @param {proto.IMsgRowOpaqueData} message MsgRowOpaqueData message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - MsgRowOpaqueData.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.currentMsg != null && Object.hasOwnProperty.call(message, "currentMsg")) - $root.proto.MsgOpaqueData.encode(message.currentMsg, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); - if (message.quotedMsg != null && Object.hasOwnProperty.call(message, "quotedMsg")) - $root.proto.MsgOpaqueData.encode(message.quotedMsg, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - return writer; - }; - - /** - * Encodes the specified MsgRowOpaqueData message, length delimited. Does not implicitly {@link proto.MsgRowOpaqueData.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.MsgRowOpaqueData - * @static - * @param {proto.IMsgRowOpaqueData} message MsgRowOpaqueData message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - MsgRowOpaqueData.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a MsgRowOpaqueData message from the specified reader or buffer. - * @function decode - * @memberof proto.MsgRowOpaqueData - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.MsgRowOpaqueData} MsgRowOpaqueData - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - MsgRowOpaqueData.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.MsgRowOpaqueData(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.currentMsg = $root.proto.MsgOpaqueData.decode(reader, reader.uint32()); - break; - case 2: - message.quotedMsg = $root.proto.MsgOpaqueData.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a MsgRowOpaqueData message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.MsgRowOpaqueData - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.MsgRowOpaqueData} MsgRowOpaqueData - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - MsgRowOpaqueData.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a MsgRowOpaqueData message. - * @function verify - * @memberof proto.MsgRowOpaqueData - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - MsgRowOpaqueData.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.currentMsg != null && message.hasOwnProperty("currentMsg")) { - var error = $root.proto.MsgOpaqueData.verify(message.currentMsg); - if (error) - return "currentMsg." + error; - } - if (message.quotedMsg != null && message.hasOwnProperty("quotedMsg")) { - var error = $root.proto.MsgOpaqueData.verify(message.quotedMsg); - if (error) - return "quotedMsg." + error; - } - return null; - }; - - /** - * Creates a MsgRowOpaqueData message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.MsgRowOpaqueData - * @static - * @param {Object.} object Plain object - * @returns {proto.MsgRowOpaqueData} MsgRowOpaqueData - */ - MsgRowOpaqueData.fromObject = function fromObject(object) { - if (object instanceof $root.proto.MsgRowOpaqueData) - return object; - var message = new $root.proto.MsgRowOpaqueData(); - if (object.currentMsg != null) { - if (typeof object.currentMsg !== "object") - throw TypeError(".proto.MsgRowOpaqueData.currentMsg: object expected"); - message.currentMsg = $root.proto.MsgOpaqueData.fromObject(object.currentMsg); - } - if (object.quotedMsg != null) { - if (typeof object.quotedMsg !== "object") - throw TypeError(".proto.MsgRowOpaqueData.quotedMsg: object expected"); - message.quotedMsg = $root.proto.MsgOpaqueData.fromObject(object.quotedMsg); - } - return message; - }; - - /** - * Creates a plain object from a MsgRowOpaqueData message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.MsgRowOpaqueData - * @static - * @param {proto.MsgRowOpaqueData} message MsgRowOpaqueData - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - MsgRowOpaqueData.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.currentMsg = null; - object.quotedMsg = null; - } - if (message.currentMsg != null && message.hasOwnProperty("currentMsg")) - object.currentMsg = $root.proto.MsgOpaqueData.toObject(message.currentMsg, options); - if (message.quotedMsg != null && message.hasOwnProperty("quotedMsg")) - object.quotedMsg = $root.proto.MsgOpaqueData.toObject(message.quotedMsg, options); - return object; - }; - - /** - * Converts this MsgRowOpaqueData to JSON. - * @function toJSON - * @memberof proto.MsgRowOpaqueData - * @instance - * @returns {Object.} JSON object - */ - MsgRowOpaqueData.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return MsgRowOpaqueData; - })(); - - proto.Pushname = (function() { - - /** - * Properties of a Pushname. - * @memberof proto - * @interface IPushname - * @property {string|null} [id] Pushname id - * @property {string|null} [pushname] Pushname pushname - */ - - /** - * Constructs a new Pushname. - * @memberof proto - * @classdesc Represents a Pushname. - * @implements IPushname - * @constructor - * @param {proto.IPushname=} [properties] Properties to set - */ - function Pushname(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * Pushname id. - * @member {string} id - * @memberof proto.Pushname - * @instance - */ - Pushname.prototype.id = ""; - - /** - * Pushname pushname. - * @member {string} pushname - * @memberof proto.Pushname - * @instance - */ - Pushname.prototype.pushname = ""; - - /** - * Creates a new Pushname instance using the specified properties. - * @function create - * @memberof proto.Pushname - * @static - * @param {proto.IPushname=} [properties] Properties to set - * @returns {proto.Pushname} Pushname instance - */ - Pushname.create = function create(properties) { - return new Pushname(properties); - }; - - /** - * Encodes the specified Pushname message. Does not implicitly {@link proto.Pushname.verify|verify} messages. - * @function encode - * @memberof proto.Pushname - * @static - * @param {proto.IPushname} message Pushname message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - Pushname.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.id != null && Object.hasOwnProperty.call(message, "id")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.id); - if (message.pushname != null && Object.hasOwnProperty.call(message, "pushname")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.pushname); - return writer; - }; - - /** - * Encodes the specified Pushname message, length delimited. Does not implicitly {@link proto.Pushname.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.Pushname - * @static - * @param {proto.IPushname} message Pushname message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - Pushname.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a Pushname message from the specified reader or buffer. - * @function decode - * @memberof proto.Pushname - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.Pushname} Pushname - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - Pushname.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.Pushname(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.id = reader.string(); - break; - case 2: - message.pushname = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a Pushname message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.Pushname - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.Pushname} Pushname - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - Pushname.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a Pushname message. - * @function verify - * @memberof proto.Pushname - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - Pushname.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.id != null && message.hasOwnProperty("id")) - if (!$util.isString(message.id)) - return "id: string expected"; - if (message.pushname != null && message.hasOwnProperty("pushname")) - if (!$util.isString(message.pushname)) - return "pushname: string expected"; - return null; - }; - - /** - * Creates a Pushname message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.Pushname - * @static - * @param {Object.} object Plain object - * @returns {proto.Pushname} Pushname - */ - Pushname.fromObject = function fromObject(object) { - if (object instanceof $root.proto.Pushname) - return object; - var message = new $root.proto.Pushname(); - if (object.id != null) - message.id = String(object.id); - if (object.pushname != null) - message.pushname = String(object.pushname); - return message; - }; - - /** - * Creates a plain object from a Pushname message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.Pushname - * @static - * @param {proto.Pushname} message Pushname - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - Pushname.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.id = ""; - object.pushname = ""; - } - if (message.id != null && message.hasOwnProperty("id")) - object.id = message.id; - if (message.pushname != null && message.hasOwnProperty("pushname")) - object.pushname = message.pushname; - return object; - }; - - /** - * Converts this Pushname to JSON. - * @function toJSON - * @memberof proto.Pushname - * @instance - * @returns {Object.} JSON object - */ - Pushname.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return Pushname; - })(); - - proto.HistorySyncMsg = (function() { - - /** - * Properties of a HistorySyncMsg. - * @memberof proto - * @interface IHistorySyncMsg - * @property {proto.IWebMessageInfo|null} [message] HistorySyncMsg message - * @property {number|Long|null} [msgOrderId] HistorySyncMsg msgOrderId - */ - - /** - * Constructs a new HistorySyncMsg. - * @memberof proto - * @classdesc Represents a HistorySyncMsg. - * @implements IHistorySyncMsg - * @constructor - * @param {proto.IHistorySyncMsg=} [properties] Properties to set - */ - function HistorySyncMsg(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * HistorySyncMsg message. - * @member {proto.IWebMessageInfo|null|undefined} message - * @memberof proto.HistorySyncMsg - * @instance - */ - HistorySyncMsg.prototype.message = null; - - /** - * HistorySyncMsg msgOrderId. - * @member {number|Long} msgOrderId - * @memberof proto.HistorySyncMsg - * @instance - */ - HistorySyncMsg.prototype.msgOrderId = $util.Long ? $util.Long.fromBits(0,0,true) : 0; - - /** - * Creates a new HistorySyncMsg instance using the specified properties. - * @function create - * @memberof proto.HistorySyncMsg - * @static - * @param {proto.IHistorySyncMsg=} [properties] Properties to set - * @returns {proto.HistorySyncMsg} HistorySyncMsg instance - */ - HistorySyncMsg.create = function create(properties) { - return new HistorySyncMsg(properties); - }; - - /** - * Encodes the specified HistorySyncMsg message. Does not implicitly {@link proto.HistorySyncMsg.verify|verify} messages. - * @function encode - * @memberof proto.HistorySyncMsg - * @static - * @param {proto.IHistorySyncMsg} message HistorySyncMsg message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - HistorySyncMsg.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.message != null && Object.hasOwnProperty.call(message, "message")) - $root.proto.WebMessageInfo.encode(message.message, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); - if (message.msgOrderId != null && Object.hasOwnProperty.call(message, "msgOrderId")) - writer.uint32(/* id 2, wireType 0 =*/16).uint64(message.msgOrderId); - return writer; - }; - - /** - * Encodes the specified HistorySyncMsg message, length delimited. Does not implicitly {@link proto.HistorySyncMsg.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.HistorySyncMsg - * @static - * @param {proto.IHistorySyncMsg} message HistorySyncMsg message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - HistorySyncMsg.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a HistorySyncMsg message from the specified reader or buffer. - * @function decode - * @memberof proto.HistorySyncMsg - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.HistorySyncMsg} HistorySyncMsg - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - HistorySyncMsg.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.HistorySyncMsg(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.message = $root.proto.WebMessageInfo.decode(reader, reader.uint32()); - break; - case 2: - message.msgOrderId = reader.uint64(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a HistorySyncMsg message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.HistorySyncMsg - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.HistorySyncMsg} HistorySyncMsg - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - HistorySyncMsg.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a HistorySyncMsg message. - * @function verify - * @memberof proto.HistorySyncMsg - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - HistorySyncMsg.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.message != null && message.hasOwnProperty("message")) { - var error = $root.proto.WebMessageInfo.verify(message.message); - if (error) - return "message." + error; - } - if (message.msgOrderId != null && message.hasOwnProperty("msgOrderId")) - if (!$util.isInteger(message.msgOrderId) && !(message.msgOrderId && $util.isInteger(message.msgOrderId.low) && $util.isInteger(message.msgOrderId.high))) - return "msgOrderId: integer|Long expected"; - return null; - }; - - /** - * Creates a HistorySyncMsg message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.HistorySyncMsg - * @static - * @param {Object.} object Plain object - * @returns {proto.HistorySyncMsg} HistorySyncMsg - */ - HistorySyncMsg.fromObject = function fromObject(object) { - if (object instanceof $root.proto.HistorySyncMsg) - return object; - var message = new $root.proto.HistorySyncMsg(); - if (object.message != null) { - if (typeof object.message !== "object") - throw TypeError(".proto.HistorySyncMsg.message: object expected"); - message.message = $root.proto.WebMessageInfo.fromObject(object.message); - } - if (object.msgOrderId != null) - if ($util.Long) - (message.msgOrderId = $util.Long.fromValue(object.msgOrderId)).unsigned = true; - else if (typeof object.msgOrderId === "string") - message.msgOrderId = parseInt(object.msgOrderId, 10); - else if (typeof object.msgOrderId === "number") - message.msgOrderId = object.msgOrderId; - else if (typeof object.msgOrderId === "object") - message.msgOrderId = new $util.LongBits(object.msgOrderId.low >>> 0, object.msgOrderId.high >>> 0).toNumber(true); - return message; - }; - - /** - * Creates a plain object from a HistorySyncMsg message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.HistorySyncMsg - * @static - * @param {proto.HistorySyncMsg} message HistorySyncMsg - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - HistorySyncMsg.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.message = null; - if ($util.Long) { - var long = new $util.Long(0, 0, true); - object.msgOrderId = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; - } else - object.msgOrderId = options.longs === String ? "0" : 0; - } - if (message.message != null && message.hasOwnProperty("message")) - object.message = $root.proto.WebMessageInfo.toObject(message.message, options); - if (message.msgOrderId != null && message.hasOwnProperty("msgOrderId")) - if (typeof message.msgOrderId === "number") - object.msgOrderId = options.longs === String ? String(message.msgOrderId) : message.msgOrderId; - else - object.msgOrderId = options.longs === String ? $util.Long.prototype.toString.call(message.msgOrderId) : options.longs === Number ? new $util.LongBits(message.msgOrderId.low >>> 0, message.msgOrderId.high >>> 0).toNumber(true) : message.msgOrderId; - return object; - }; - - /** - * Converts this HistorySyncMsg to JSON. - * @function toJSON - * @memberof proto.HistorySyncMsg - * @instance - * @returns {Object.} JSON object - */ - HistorySyncMsg.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return HistorySyncMsg; - })(); - - proto.Conversation = (function() { - - /** - * Properties of a Conversation. - * @memberof proto - * @interface IConversation - * @property {string} id Conversation id - * @property {Array.|null} [messages] Conversation messages - * @property {string|null} [newJid] Conversation newJid - * @property {string|null} [oldJid] Conversation oldJid - * @property {number|Long|null} [lastMsgTimestamp] Conversation lastMsgTimestamp - * @property {number|null} [unreadCount] Conversation unreadCount - * @property {boolean|null} [readOnly] Conversation readOnly - * @property {boolean|null} [endOfHistoryTransfer] Conversation endOfHistoryTransfer - * @property {number|null} [ephemeralExpiration] Conversation ephemeralExpiration - * @property {number|Long|null} [ephemeralSettingTimestamp] Conversation ephemeralSettingTimestamp - * @property {proto.Conversation.ConversationEndOfHistoryTransferType|null} [endOfHistoryTransferType] Conversation endOfHistoryTransferType - * @property {number|Long|null} [conversationTimestamp] Conversation conversationTimestamp - * @property {string|null} [name] Conversation name - * @property {string|null} [pHash] Conversation pHash - * @property {boolean|null} [notSpam] Conversation notSpam - */ - - /** - * Constructs a new Conversation. - * @memberof proto - * @classdesc Represents a Conversation. - * @implements IConversation - * @constructor - * @param {proto.IConversation=} [properties] Properties to set - */ - function Conversation(properties) { - this.messages = []; - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * Conversation id. - * @member {string} id - * @memberof proto.Conversation - * @instance - */ - Conversation.prototype.id = ""; - - /** - * Conversation messages. - * @member {Array.} messages - * @memberof proto.Conversation - * @instance - */ - Conversation.prototype.messages = $util.emptyArray; - - /** - * Conversation newJid. - * @member {string} newJid - * @memberof proto.Conversation - * @instance - */ - Conversation.prototype.newJid = ""; - - /** - * Conversation oldJid. - * @member {string} oldJid - * @memberof proto.Conversation - * @instance - */ - Conversation.prototype.oldJid = ""; - - /** - * Conversation lastMsgTimestamp. - * @member {number|Long} lastMsgTimestamp - * @memberof proto.Conversation - * @instance - */ - Conversation.prototype.lastMsgTimestamp = $util.Long ? $util.Long.fromBits(0,0,true) : 0; - - /** - * Conversation unreadCount. - * @member {number} unreadCount - * @memberof proto.Conversation - * @instance - */ - Conversation.prototype.unreadCount = 0; - - /** - * Conversation readOnly. - * @member {boolean} readOnly - * @memberof proto.Conversation - * @instance - */ - Conversation.prototype.readOnly = false; - - /** - * Conversation endOfHistoryTransfer. - * @member {boolean} endOfHistoryTransfer - * @memberof proto.Conversation - * @instance - */ - Conversation.prototype.endOfHistoryTransfer = false; - - /** - * Conversation ephemeralExpiration. - * @member {number} ephemeralExpiration - * @memberof proto.Conversation - * @instance - */ - Conversation.prototype.ephemeralExpiration = 0; - - /** - * Conversation ephemeralSettingTimestamp. - * @member {number|Long} ephemeralSettingTimestamp - * @memberof proto.Conversation - * @instance - */ - Conversation.prototype.ephemeralSettingTimestamp = $util.Long ? $util.Long.fromBits(0,0,false) : 0; - - /** - * Conversation endOfHistoryTransferType. - * @member {proto.Conversation.ConversationEndOfHistoryTransferType} endOfHistoryTransferType - * @memberof proto.Conversation - * @instance - */ - Conversation.prototype.endOfHistoryTransferType = 0; - - /** - * Conversation conversationTimestamp. - * @member {number|Long} conversationTimestamp - * @memberof proto.Conversation - * @instance - */ - Conversation.prototype.conversationTimestamp = $util.Long ? $util.Long.fromBits(0,0,true) : 0; - - /** - * Conversation name. - * @member {string} name - * @memberof proto.Conversation - * @instance - */ - Conversation.prototype.name = ""; - - /** - * Conversation pHash. - * @member {string} pHash - * @memberof proto.Conversation - * @instance - */ - Conversation.prototype.pHash = ""; - - /** - * Conversation notSpam. - * @member {boolean} notSpam - * @memberof proto.Conversation - * @instance - */ - Conversation.prototype.notSpam = false; - - /** - * Creates a new Conversation instance using the specified properties. - * @function create - * @memberof proto.Conversation - * @static - * @param {proto.IConversation=} [properties] Properties to set - * @returns {proto.Conversation} Conversation instance - */ - Conversation.create = function create(properties) { - return new Conversation(properties); - }; - - /** - * Encodes the specified Conversation message. Does not implicitly {@link proto.Conversation.verify|verify} messages. - * @function encode - * @memberof proto.Conversation - * @static - * @param {proto.IConversation} message Conversation message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - Conversation.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - writer.uint32(/* id 1, wireType 2 =*/10).string(message.id); - if (message.messages != null && message.messages.length) - for (var i = 0; i < message.messages.length; ++i) - $root.proto.HistorySyncMsg.encode(message.messages[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - if (message.newJid != null && Object.hasOwnProperty.call(message, "newJid")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.newJid); - if (message.oldJid != null && Object.hasOwnProperty.call(message, "oldJid")) - writer.uint32(/* id 4, wireType 2 =*/34).string(message.oldJid); - if (message.lastMsgTimestamp != null && Object.hasOwnProperty.call(message, "lastMsgTimestamp")) - writer.uint32(/* id 5, wireType 0 =*/40).uint64(message.lastMsgTimestamp); - if (message.unreadCount != null && Object.hasOwnProperty.call(message, "unreadCount")) - writer.uint32(/* id 6, wireType 0 =*/48).uint32(message.unreadCount); - if (message.readOnly != null && Object.hasOwnProperty.call(message, "readOnly")) - writer.uint32(/* id 7, wireType 0 =*/56).bool(message.readOnly); - if (message.endOfHistoryTransfer != null && Object.hasOwnProperty.call(message, "endOfHistoryTransfer")) - writer.uint32(/* id 8, wireType 0 =*/64).bool(message.endOfHistoryTransfer); - if (message.ephemeralExpiration != null && Object.hasOwnProperty.call(message, "ephemeralExpiration")) - writer.uint32(/* id 9, wireType 0 =*/72).uint32(message.ephemeralExpiration); - if (message.ephemeralSettingTimestamp != null && Object.hasOwnProperty.call(message, "ephemeralSettingTimestamp")) - writer.uint32(/* id 10, wireType 0 =*/80).int64(message.ephemeralSettingTimestamp); - if (message.endOfHistoryTransferType != null && Object.hasOwnProperty.call(message, "endOfHistoryTransferType")) - writer.uint32(/* id 11, wireType 0 =*/88).int32(message.endOfHistoryTransferType); - if (message.conversationTimestamp != null && Object.hasOwnProperty.call(message, "conversationTimestamp")) - writer.uint32(/* id 12, wireType 0 =*/96).uint64(message.conversationTimestamp); - if (message.name != null && Object.hasOwnProperty.call(message, "name")) - writer.uint32(/* id 13, wireType 2 =*/106).string(message.name); - if (message.pHash != null && Object.hasOwnProperty.call(message, "pHash")) - writer.uint32(/* id 14, wireType 2 =*/114).string(message.pHash); - if (message.notSpam != null && Object.hasOwnProperty.call(message, "notSpam")) - writer.uint32(/* id 15, wireType 0 =*/120).bool(message.notSpam); - return writer; - }; - - /** - * Encodes the specified Conversation message, length delimited. Does not implicitly {@link proto.Conversation.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.Conversation - * @static - * @param {proto.IConversation} message Conversation message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - Conversation.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a Conversation message from the specified reader or buffer. - * @function decode - * @memberof proto.Conversation - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.Conversation} Conversation - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - Conversation.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.Conversation(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.id = reader.string(); - break; - case 2: - if (!(message.messages && message.messages.length)) - message.messages = []; - message.messages.push($root.proto.HistorySyncMsg.decode(reader, reader.uint32())); - break; - case 3: - message.newJid = reader.string(); - break; - case 4: - message.oldJid = reader.string(); - break; - case 5: - message.lastMsgTimestamp = reader.uint64(); - break; - case 6: - message.unreadCount = reader.uint32(); - break; - case 7: - message.readOnly = reader.bool(); - break; - case 8: - message.endOfHistoryTransfer = reader.bool(); - break; - case 9: - message.ephemeralExpiration = reader.uint32(); - break; - case 10: - message.ephemeralSettingTimestamp = reader.int64(); - break; - case 11: - message.endOfHistoryTransferType = reader.int32(); - break; - case 12: - message.conversationTimestamp = reader.uint64(); - break; - case 13: - message.name = reader.string(); - break; - case 14: - message.pHash = reader.string(); - break; - case 15: - message.notSpam = reader.bool(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - if (!message.hasOwnProperty("id")) - throw $util.ProtocolError("missing required 'id'", { instance: message }); - return message; - }; - - /** - * Decodes a Conversation message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.Conversation - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.Conversation} Conversation - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - Conversation.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a Conversation message. - * @function verify - * @memberof proto.Conversation - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - Conversation.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (!$util.isString(message.id)) - return "id: string expected"; - if (message.messages != null && message.hasOwnProperty("messages")) { - if (!Array.isArray(message.messages)) - return "messages: array expected"; - for (var i = 0; i < message.messages.length; ++i) { - var error = $root.proto.HistorySyncMsg.verify(message.messages[i]); - if (error) - return "messages." + error; - } - } - if (message.newJid != null && message.hasOwnProperty("newJid")) - if (!$util.isString(message.newJid)) - return "newJid: string expected"; - if (message.oldJid != null && message.hasOwnProperty("oldJid")) - if (!$util.isString(message.oldJid)) - return "oldJid: string expected"; - if (message.lastMsgTimestamp != null && message.hasOwnProperty("lastMsgTimestamp")) - if (!$util.isInteger(message.lastMsgTimestamp) && !(message.lastMsgTimestamp && $util.isInteger(message.lastMsgTimestamp.low) && $util.isInteger(message.lastMsgTimestamp.high))) - return "lastMsgTimestamp: integer|Long expected"; - if (message.unreadCount != null && message.hasOwnProperty("unreadCount")) - if (!$util.isInteger(message.unreadCount)) - return "unreadCount: integer expected"; - if (message.readOnly != null && message.hasOwnProperty("readOnly")) - if (typeof message.readOnly !== "boolean") - return "readOnly: boolean expected"; - if (message.endOfHistoryTransfer != null && message.hasOwnProperty("endOfHistoryTransfer")) - if (typeof message.endOfHistoryTransfer !== "boolean") - return "endOfHistoryTransfer: boolean expected"; - if (message.ephemeralExpiration != null && message.hasOwnProperty("ephemeralExpiration")) - if (!$util.isInteger(message.ephemeralExpiration)) - return "ephemeralExpiration: integer expected"; - if (message.ephemeralSettingTimestamp != null && message.hasOwnProperty("ephemeralSettingTimestamp")) - if (!$util.isInteger(message.ephemeralSettingTimestamp) && !(message.ephemeralSettingTimestamp && $util.isInteger(message.ephemeralSettingTimestamp.low) && $util.isInteger(message.ephemeralSettingTimestamp.high))) - return "ephemeralSettingTimestamp: integer|Long expected"; - if (message.endOfHistoryTransferType != null && message.hasOwnProperty("endOfHistoryTransferType")) - switch (message.endOfHistoryTransferType) { - default: - return "endOfHistoryTransferType: enum value expected"; - case 0: - case 1: - break; - } - if (message.conversationTimestamp != null && message.hasOwnProperty("conversationTimestamp")) - if (!$util.isInteger(message.conversationTimestamp) && !(message.conversationTimestamp && $util.isInteger(message.conversationTimestamp.low) && $util.isInteger(message.conversationTimestamp.high))) - return "conversationTimestamp: integer|Long expected"; - if (message.name != null && message.hasOwnProperty("name")) - if (!$util.isString(message.name)) - return "name: string expected"; - if (message.pHash != null && message.hasOwnProperty("pHash")) - if (!$util.isString(message.pHash)) - return "pHash: string expected"; - if (message.notSpam != null && message.hasOwnProperty("notSpam")) - if (typeof message.notSpam !== "boolean") - return "notSpam: boolean expected"; - return null; - }; - - /** - * Creates a Conversation message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.Conversation - * @static - * @param {Object.} object Plain object - * @returns {proto.Conversation} Conversation - */ - Conversation.fromObject = function fromObject(object) { - if (object instanceof $root.proto.Conversation) - return object; - var message = new $root.proto.Conversation(); - if (object.id != null) - message.id = String(object.id); - if (object.messages) { - if (!Array.isArray(object.messages)) - throw TypeError(".proto.Conversation.messages: array expected"); - message.messages = []; - for (var i = 0; i < object.messages.length; ++i) { - if (typeof object.messages[i] !== "object") - throw TypeError(".proto.Conversation.messages: object expected"); - message.messages[i] = $root.proto.HistorySyncMsg.fromObject(object.messages[i]); - } - } - if (object.newJid != null) - message.newJid = String(object.newJid); - if (object.oldJid != null) - message.oldJid = String(object.oldJid); - if (object.lastMsgTimestamp != null) - if ($util.Long) - (message.lastMsgTimestamp = $util.Long.fromValue(object.lastMsgTimestamp)).unsigned = true; - else if (typeof object.lastMsgTimestamp === "string") - message.lastMsgTimestamp = parseInt(object.lastMsgTimestamp, 10); - else if (typeof object.lastMsgTimestamp === "number") - message.lastMsgTimestamp = object.lastMsgTimestamp; - else if (typeof object.lastMsgTimestamp === "object") - message.lastMsgTimestamp = new $util.LongBits(object.lastMsgTimestamp.low >>> 0, object.lastMsgTimestamp.high >>> 0).toNumber(true); - if (object.unreadCount != null) - message.unreadCount = object.unreadCount >>> 0; - if (object.readOnly != null) - message.readOnly = Boolean(object.readOnly); - if (object.endOfHistoryTransfer != null) - message.endOfHistoryTransfer = Boolean(object.endOfHistoryTransfer); - if (object.ephemeralExpiration != null) - message.ephemeralExpiration = object.ephemeralExpiration >>> 0; - if (object.ephemeralSettingTimestamp != null) - if ($util.Long) - (message.ephemeralSettingTimestamp = $util.Long.fromValue(object.ephemeralSettingTimestamp)).unsigned = false; - else if (typeof object.ephemeralSettingTimestamp === "string") - message.ephemeralSettingTimestamp = parseInt(object.ephemeralSettingTimestamp, 10); - else if (typeof object.ephemeralSettingTimestamp === "number") - message.ephemeralSettingTimestamp = object.ephemeralSettingTimestamp; - else if (typeof object.ephemeralSettingTimestamp === "object") - message.ephemeralSettingTimestamp = new $util.LongBits(object.ephemeralSettingTimestamp.low >>> 0, object.ephemeralSettingTimestamp.high >>> 0).toNumber(); - switch (object.endOfHistoryTransferType) { - case "COMPLETE_BUT_MORE_MESSAGES_REMAIN_ON_PRIMARY": - case 0: - message.endOfHistoryTransferType = 0; - break; - case "COMPLETE_AND_NO_MORE_MESSAGE_REMAIN_ON_PRIMARY": - case 1: - message.endOfHistoryTransferType = 1; - break; - } - if (object.conversationTimestamp != null) - if ($util.Long) - (message.conversationTimestamp = $util.Long.fromValue(object.conversationTimestamp)).unsigned = true; - else if (typeof object.conversationTimestamp === "string") - message.conversationTimestamp = parseInt(object.conversationTimestamp, 10); - else if (typeof object.conversationTimestamp === "number") - message.conversationTimestamp = object.conversationTimestamp; - else if (typeof object.conversationTimestamp === "object") - message.conversationTimestamp = new $util.LongBits(object.conversationTimestamp.low >>> 0, object.conversationTimestamp.high >>> 0).toNumber(true); - if (object.name != null) - message.name = String(object.name); - if (object.pHash != null) - message.pHash = String(object.pHash); - if (object.notSpam != null) - message.notSpam = Boolean(object.notSpam); - return message; - }; - - /** - * Creates a plain object from a Conversation message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.Conversation - * @static - * @param {proto.Conversation} message Conversation - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - Conversation.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.messages = []; - if (options.defaults) { - object.id = ""; - object.newJid = ""; - object.oldJid = ""; - if ($util.Long) { - var long = new $util.Long(0, 0, true); - object.lastMsgTimestamp = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; - } else - object.lastMsgTimestamp = options.longs === String ? "0" : 0; - object.unreadCount = 0; - object.readOnly = false; - object.endOfHistoryTransfer = false; - object.ephemeralExpiration = 0; - if ($util.Long) { - var long = new $util.Long(0, 0, false); - object.ephemeralSettingTimestamp = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; - } else - object.ephemeralSettingTimestamp = options.longs === String ? "0" : 0; - object.endOfHistoryTransferType = options.enums === String ? "COMPLETE_BUT_MORE_MESSAGES_REMAIN_ON_PRIMARY" : 0; - if ($util.Long) { - var long = new $util.Long(0, 0, true); - object.conversationTimestamp = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; - } else - object.conversationTimestamp = options.longs === String ? "0" : 0; - object.name = ""; - object.pHash = ""; - object.notSpam = false; - } - if (message.id != null && message.hasOwnProperty("id")) - object.id = message.id; - if (message.messages && message.messages.length) { - object.messages = []; - for (var j = 0; j < message.messages.length; ++j) - object.messages[j] = $root.proto.HistorySyncMsg.toObject(message.messages[j], options); - } - if (message.newJid != null && message.hasOwnProperty("newJid")) - object.newJid = message.newJid; - if (message.oldJid != null && message.hasOwnProperty("oldJid")) - object.oldJid = message.oldJid; - if (message.lastMsgTimestamp != null && message.hasOwnProperty("lastMsgTimestamp")) - if (typeof message.lastMsgTimestamp === "number") - object.lastMsgTimestamp = options.longs === String ? String(message.lastMsgTimestamp) : message.lastMsgTimestamp; - else - object.lastMsgTimestamp = options.longs === String ? $util.Long.prototype.toString.call(message.lastMsgTimestamp) : options.longs === Number ? new $util.LongBits(message.lastMsgTimestamp.low >>> 0, message.lastMsgTimestamp.high >>> 0).toNumber(true) : message.lastMsgTimestamp; - if (message.unreadCount != null && message.hasOwnProperty("unreadCount")) - object.unreadCount = message.unreadCount; - if (message.readOnly != null && message.hasOwnProperty("readOnly")) - object.readOnly = message.readOnly; - if (message.endOfHistoryTransfer != null && message.hasOwnProperty("endOfHistoryTransfer")) - object.endOfHistoryTransfer = message.endOfHistoryTransfer; - if (message.ephemeralExpiration != null && message.hasOwnProperty("ephemeralExpiration")) - object.ephemeralExpiration = message.ephemeralExpiration; - if (message.ephemeralSettingTimestamp != null && message.hasOwnProperty("ephemeralSettingTimestamp")) - if (typeof message.ephemeralSettingTimestamp === "number") - object.ephemeralSettingTimestamp = options.longs === String ? String(message.ephemeralSettingTimestamp) : message.ephemeralSettingTimestamp; - else - object.ephemeralSettingTimestamp = options.longs === String ? $util.Long.prototype.toString.call(message.ephemeralSettingTimestamp) : options.longs === Number ? new $util.LongBits(message.ephemeralSettingTimestamp.low >>> 0, message.ephemeralSettingTimestamp.high >>> 0).toNumber() : message.ephemeralSettingTimestamp; - if (message.endOfHistoryTransferType != null && message.hasOwnProperty("endOfHistoryTransferType")) - object.endOfHistoryTransferType = options.enums === String ? $root.proto.Conversation.ConversationEndOfHistoryTransferType[message.endOfHistoryTransferType] : message.endOfHistoryTransferType; - if (message.conversationTimestamp != null && message.hasOwnProperty("conversationTimestamp")) - if (typeof message.conversationTimestamp === "number") - object.conversationTimestamp = options.longs === String ? String(message.conversationTimestamp) : message.conversationTimestamp; - else - object.conversationTimestamp = options.longs === String ? $util.Long.prototype.toString.call(message.conversationTimestamp) : options.longs === Number ? new $util.LongBits(message.conversationTimestamp.low >>> 0, message.conversationTimestamp.high >>> 0).toNumber(true) : message.conversationTimestamp; - if (message.name != null && message.hasOwnProperty("name")) - object.name = message.name; - if (message.pHash != null && message.hasOwnProperty("pHash")) - object.pHash = message.pHash; - if (message.notSpam != null && message.hasOwnProperty("notSpam")) - object.notSpam = message.notSpam; - return object; - }; - - /** - * Converts this Conversation to JSON. - * @function toJSON - * @memberof proto.Conversation - * @instance - * @returns {Object.} JSON object - */ - Conversation.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - /** - * ConversationEndOfHistoryTransferType enum. - * @name proto.Conversation.ConversationEndOfHistoryTransferType - * @enum {number} - * @property {number} COMPLETE_BUT_MORE_MESSAGES_REMAIN_ON_PRIMARY=0 COMPLETE_BUT_MORE_MESSAGES_REMAIN_ON_PRIMARY value - * @property {number} COMPLETE_AND_NO_MORE_MESSAGE_REMAIN_ON_PRIMARY=1 COMPLETE_AND_NO_MORE_MESSAGE_REMAIN_ON_PRIMARY value - */ - Conversation.ConversationEndOfHistoryTransferType = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "COMPLETE_BUT_MORE_MESSAGES_REMAIN_ON_PRIMARY"] = 0; - values[valuesById[1] = "COMPLETE_AND_NO_MORE_MESSAGE_REMAIN_ON_PRIMARY"] = 1; - return values; - })(); - - return Conversation; - })(); - - proto.HistorySync = (function() { - - /** - * Properties of a HistorySync. - * @memberof proto - * @interface IHistorySync - * @property {proto.HistorySync.HistorySyncHistorySyncType} syncType HistorySync syncType - * @property {Array.|null} [conversations] HistorySync conversations - * @property {Array.|null} [statusV3Messages] HistorySync statusV3Messages - * @property {number|null} [chunkOrder] HistorySync chunkOrder - * @property {number|null} [progress] HistorySync progress - * @property {Array.|null} [pushnames] HistorySync pushnames - */ - - /** - * Constructs a new HistorySync. - * @memberof proto - * @classdesc Represents a HistorySync. - * @implements IHistorySync - * @constructor - * @param {proto.IHistorySync=} [properties] Properties to set - */ - function HistorySync(properties) { - this.conversations = []; - this.statusV3Messages = []; - this.pushnames = []; - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * HistorySync syncType. - * @member {proto.HistorySync.HistorySyncHistorySyncType} syncType - * @memberof proto.HistorySync - * @instance - */ - HistorySync.prototype.syncType = 0; - - /** - * HistorySync conversations. - * @member {Array.} conversations - * @memberof proto.HistorySync - * @instance - */ - HistorySync.prototype.conversations = $util.emptyArray; - - /** - * HistorySync statusV3Messages. - * @member {Array.} statusV3Messages - * @memberof proto.HistorySync - * @instance - */ - HistorySync.prototype.statusV3Messages = $util.emptyArray; - - /** - * HistorySync chunkOrder. - * @member {number} chunkOrder - * @memberof proto.HistorySync - * @instance - */ - HistorySync.prototype.chunkOrder = 0; - - /** - * HistorySync progress. - * @member {number} progress - * @memberof proto.HistorySync - * @instance - */ - HistorySync.prototype.progress = 0; - - /** - * HistorySync pushnames. - * @member {Array.} pushnames - * @memberof proto.HistorySync - * @instance - */ - HistorySync.prototype.pushnames = $util.emptyArray; - - /** - * Creates a new HistorySync instance using the specified properties. - * @function create - * @memberof proto.HistorySync - * @static - * @param {proto.IHistorySync=} [properties] Properties to set - * @returns {proto.HistorySync} HistorySync instance - */ - HistorySync.create = function create(properties) { - return new HistorySync(properties); - }; - - /** - * Encodes the specified HistorySync message. Does not implicitly {@link proto.HistorySync.verify|verify} messages. - * @function encode - * @memberof proto.HistorySync - * @static - * @param {proto.IHistorySync} message HistorySync message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - HistorySync.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - writer.uint32(/* id 1, wireType 0 =*/8).int32(message.syncType); - if (message.conversations != null && message.conversations.length) - for (var i = 0; i < message.conversations.length; ++i) - $root.proto.Conversation.encode(message.conversations[i], writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - if (message.statusV3Messages != null && message.statusV3Messages.length) - for (var i = 0; i < message.statusV3Messages.length; ++i) - $root.proto.WebMessageInfo.encode(message.statusV3Messages[i], writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); - if (message.chunkOrder != null && Object.hasOwnProperty.call(message, "chunkOrder")) - writer.uint32(/* id 5, wireType 0 =*/40).uint32(message.chunkOrder); - if (message.progress != null && Object.hasOwnProperty.call(message, "progress")) - writer.uint32(/* id 6, wireType 0 =*/48).uint32(message.progress); - if (message.pushnames != null && message.pushnames.length) - for (var i = 0; i < message.pushnames.length; ++i) - $root.proto.Pushname.encode(message.pushnames[i], writer.uint32(/* id 7, wireType 2 =*/58).fork()).ldelim(); - return writer; - }; - - /** - * Encodes the specified HistorySync message, length delimited. Does not implicitly {@link proto.HistorySync.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.HistorySync - * @static - * @param {proto.IHistorySync} message HistorySync message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - HistorySync.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a HistorySync message from the specified reader or buffer. - * @function decode - * @memberof proto.HistorySync - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.HistorySync} HistorySync - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - HistorySync.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.HistorySync(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.syncType = reader.int32(); - break; - case 2: - if (!(message.conversations && message.conversations.length)) - message.conversations = []; - message.conversations.push($root.proto.Conversation.decode(reader, reader.uint32())); - break; - case 3: - if (!(message.statusV3Messages && message.statusV3Messages.length)) - message.statusV3Messages = []; - message.statusV3Messages.push($root.proto.WebMessageInfo.decode(reader, reader.uint32())); - break; - case 5: - message.chunkOrder = reader.uint32(); - break; - case 6: - message.progress = reader.uint32(); - break; - case 7: - if (!(message.pushnames && message.pushnames.length)) - message.pushnames = []; - message.pushnames.push($root.proto.Pushname.decode(reader, reader.uint32())); - break; - default: - reader.skipType(tag & 7); - break; - } - } - if (!message.hasOwnProperty("syncType")) - throw $util.ProtocolError("missing required 'syncType'", { instance: message }); - return message; - }; - - /** - * Decodes a HistorySync message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.HistorySync - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.HistorySync} HistorySync - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - HistorySync.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a HistorySync message. - * @function verify - * @memberof proto.HistorySync - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - HistorySync.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - switch (message.syncType) { - default: - return "syncType: enum value expected"; - case 0: - case 1: - case 2: - case 3: - case 4: - break; - } - if (message.conversations != null && message.hasOwnProperty("conversations")) { - if (!Array.isArray(message.conversations)) - return "conversations: array expected"; - for (var i = 0; i < message.conversations.length; ++i) { - var error = $root.proto.Conversation.verify(message.conversations[i]); - if (error) - return "conversations." + error; - } - } - if (message.statusV3Messages != null && message.hasOwnProperty("statusV3Messages")) { - if (!Array.isArray(message.statusV3Messages)) - return "statusV3Messages: array expected"; - for (var i = 0; i < message.statusV3Messages.length; ++i) { - var error = $root.proto.WebMessageInfo.verify(message.statusV3Messages[i]); - if (error) - return "statusV3Messages." + error; - } - } - if (message.chunkOrder != null && message.hasOwnProperty("chunkOrder")) - if (!$util.isInteger(message.chunkOrder)) - return "chunkOrder: integer expected"; - if (message.progress != null && message.hasOwnProperty("progress")) - if (!$util.isInteger(message.progress)) - return "progress: integer expected"; - if (message.pushnames != null && message.hasOwnProperty("pushnames")) { - if (!Array.isArray(message.pushnames)) - return "pushnames: array expected"; - for (var i = 0; i < message.pushnames.length; ++i) { - var error = $root.proto.Pushname.verify(message.pushnames[i]); - if (error) - return "pushnames." + error; - } - } - return null; - }; - - /** - * Creates a HistorySync message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.HistorySync - * @static - * @param {Object.} object Plain object - * @returns {proto.HistorySync} HistorySync - */ - HistorySync.fromObject = function fromObject(object) { - if (object instanceof $root.proto.HistorySync) - return object; - var message = new $root.proto.HistorySync(); - switch (object.syncType) { - case "INITIAL_BOOTSTRAP": - case 0: - message.syncType = 0; - break; - case "INITIAL_STATUS_V3": - case 1: - message.syncType = 1; - break; - case "FULL": - case 2: - message.syncType = 2; - break; - case "RECENT": - case 3: - message.syncType = 3; - break; - case "PUSH_NAME": - case 4: - message.syncType = 4; - break; - } - if (object.conversations) { - if (!Array.isArray(object.conversations)) - throw TypeError(".proto.HistorySync.conversations: array expected"); - message.conversations = []; - for (var i = 0; i < object.conversations.length; ++i) { - if (typeof object.conversations[i] !== "object") - throw TypeError(".proto.HistorySync.conversations: object expected"); - message.conversations[i] = $root.proto.Conversation.fromObject(object.conversations[i]); - } - } - if (object.statusV3Messages) { - if (!Array.isArray(object.statusV3Messages)) - throw TypeError(".proto.HistorySync.statusV3Messages: array expected"); - message.statusV3Messages = []; - for (var i = 0; i < object.statusV3Messages.length; ++i) { - if (typeof object.statusV3Messages[i] !== "object") - throw TypeError(".proto.HistorySync.statusV3Messages: object expected"); - message.statusV3Messages[i] = $root.proto.WebMessageInfo.fromObject(object.statusV3Messages[i]); - } - } - if (object.chunkOrder != null) - message.chunkOrder = object.chunkOrder >>> 0; - if (object.progress != null) - message.progress = object.progress >>> 0; - if (object.pushnames) { - if (!Array.isArray(object.pushnames)) - throw TypeError(".proto.HistorySync.pushnames: array expected"); - message.pushnames = []; - for (var i = 0; i < object.pushnames.length; ++i) { - if (typeof object.pushnames[i] !== "object") - throw TypeError(".proto.HistorySync.pushnames: object expected"); - message.pushnames[i] = $root.proto.Pushname.fromObject(object.pushnames[i]); - } - } - return message; - }; - - /** - * Creates a plain object from a HistorySync message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.HistorySync - * @static - * @param {proto.HistorySync} message HistorySync - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - HistorySync.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) { - object.conversations = []; - object.statusV3Messages = []; - object.pushnames = []; - } - if (options.defaults) { - object.syncType = options.enums === String ? "INITIAL_BOOTSTRAP" : 0; - object.chunkOrder = 0; - object.progress = 0; - } - if (message.syncType != null && message.hasOwnProperty("syncType")) - object.syncType = options.enums === String ? $root.proto.HistorySync.HistorySyncHistorySyncType[message.syncType] : message.syncType; - if (message.conversations && message.conversations.length) { - object.conversations = []; - for (var j = 0; j < message.conversations.length; ++j) - object.conversations[j] = $root.proto.Conversation.toObject(message.conversations[j], options); - } - if (message.statusV3Messages && message.statusV3Messages.length) { - object.statusV3Messages = []; - for (var j = 0; j < message.statusV3Messages.length; ++j) - object.statusV3Messages[j] = $root.proto.WebMessageInfo.toObject(message.statusV3Messages[j], options); - } - if (message.chunkOrder != null && message.hasOwnProperty("chunkOrder")) - object.chunkOrder = message.chunkOrder; - if (message.progress != null && message.hasOwnProperty("progress")) - object.progress = message.progress; - if (message.pushnames && message.pushnames.length) { - object.pushnames = []; - for (var j = 0; j < message.pushnames.length; ++j) - object.pushnames[j] = $root.proto.Pushname.toObject(message.pushnames[j], options); - } - return object; - }; - - /** - * Converts this HistorySync to JSON. - * @function toJSON - * @memberof proto.HistorySync - * @instance - * @returns {Object.} JSON object - */ - HistorySync.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - /** - * HistorySyncHistorySyncType enum. - * @name proto.HistorySync.HistorySyncHistorySyncType - * @enum {number} - * @property {number} INITIAL_BOOTSTRAP=0 INITIAL_BOOTSTRAP value - * @property {number} INITIAL_STATUS_V3=1 INITIAL_STATUS_V3 value - * @property {number} FULL=2 FULL value - * @property {number} RECENT=3 RECENT value - * @property {number} PUSH_NAME=4 PUSH_NAME value - */ - HistorySync.HistorySyncHistorySyncType = (function() { - var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "INITIAL_BOOTSTRAP"] = 0; - values[valuesById[1] = "INITIAL_STATUS_V3"] = 1; - values[valuesById[2] = "FULL"] = 2; - values[valuesById[3] = "RECENT"] = 3; - values[valuesById[4] = "PUSH_NAME"] = 4; - return values; - })(); - - return HistorySync; - })(); - - proto.EphemeralSetting = (function() { - - /** - * Properties of an EphemeralSetting. - * @memberof proto - * @interface IEphemeralSetting - * @property {number|null} [duration] EphemeralSetting duration - * @property {number|Long|null} [timestamp] EphemeralSetting timestamp - */ - - /** - * Constructs a new EphemeralSetting. - * @memberof proto - * @classdesc Represents an EphemeralSetting. - * @implements IEphemeralSetting - * @constructor - * @param {proto.IEphemeralSetting=} [properties] Properties to set - */ - function EphemeralSetting(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * EphemeralSetting duration. - * @member {number} duration - * @memberof proto.EphemeralSetting - * @instance - */ - EphemeralSetting.prototype.duration = 0; - - /** - * EphemeralSetting timestamp. - * @member {number|Long} timestamp - * @memberof proto.EphemeralSetting - * @instance - */ - EphemeralSetting.prototype.timestamp = $util.Long ? $util.Long.fromBits(0,0,false) : 0; - - /** - * Creates a new EphemeralSetting instance using the specified properties. - * @function create - * @memberof proto.EphemeralSetting - * @static - * @param {proto.IEphemeralSetting=} [properties] Properties to set - * @returns {proto.EphemeralSetting} EphemeralSetting instance - */ - EphemeralSetting.create = function create(properties) { - return new EphemeralSetting(properties); - }; - - /** - * Encodes the specified EphemeralSetting message. Does not implicitly {@link proto.EphemeralSetting.verify|verify} messages. - * @function encode - * @memberof proto.EphemeralSetting - * @static - * @param {proto.IEphemeralSetting} message EphemeralSetting message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - EphemeralSetting.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.duration != null && Object.hasOwnProperty.call(message, "duration")) - writer.uint32(/* id 1, wireType 5 =*/13).sfixed32(message.duration); - if (message.timestamp != null && Object.hasOwnProperty.call(message, "timestamp")) - writer.uint32(/* id 2, wireType 1 =*/17).sfixed64(message.timestamp); - return writer; - }; - - /** - * Encodes the specified EphemeralSetting message, length delimited. Does not implicitly {@link proto.EphemeralSetting.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.EphemeralSetting - * @static - * @param {proto.IEphemeralSetting} message EphemeralSetting message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - EphemeralSetting.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes an EphemeralSetting message from the specified reader or buffer. - * @function decode - * @memberof proto.EphemeralSetting - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.EphemeralSetting} EphemeralSetting - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - EphemeralSetting.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.EphemeralSetting(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.duration = reader.sfixed32(); - break; - case 2: - message.timestamp = reader.sfixed64(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes an EphemeralSetting message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.EphemeralSetting - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.EphemeralSetting} EphemeralSetting - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - EphemeralSetting.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies an EphemeralSetting message. - * @function verify - * @memberof proto.EphemeralSetting - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - EphemeralSetting.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.duration != null && message.hasOwnProperty("duration")) - if (!$util.isInteger(message.duration)) - return "duration: integer expected"; - if (message.timestamp != null && message.hasOwnProperty("timestamp")) - if (!$util.isInteger(message.timestamp) && !(message.timestamp && $util.isInteger(message.timestamp.low) && $util.isInteger(message.timestamp.high))) - return "timestamp: integer|Long expected"; - return null; - }; - - /** - * Creates an EphemeralSetting message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.EphemeralSetting - * @static - * @param {Object.} object Plain object - * @returns {proto.EphemeralSetting} EphemeralSetting - */ - EphemeralSetting.fromObject = function fromObject(object) { - if (object instanceof $root.proto.EphemeralSetting) - return object; - var message = new $root.proto.EphemeralSetting(); - if (object.duration != null) - message.duration = object.duration | 0; - if (object.timestamp != null) - if ($util.Long) - (message.timestamp = $util.Long.fromValue(object.timestamp)).unsigned = false; - else if (typeof object.timestamp === "string") - message.timestamp = parseInt(object.timestamp, 10); - else if (typeof object.timestamp === "number") - message.timestamp = object.timestamp; - else if (typeof object.timestamp === "object") - message.timestamp = new $util.LongBits(object.timestamp.low >>> 0, object.timestamp.high >>> 0).toNumber(); - return message; - }; - - /** - * Creates a plain object from an EphemeralSetting message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.EphemeralSetting - * @static - * @param {proto.EphemeralSetting} message EphemeralSetting - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - EphemeralSetting.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.duration = 0; - if ($util.Long) { - var long = new $util.Long(0, 0, false); - object.timestamp = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; - } else - object.timestamp = options.longs === String ? "0" : 0; - } - if (message.duration != null && message.hasOwnProperty("duration")) - object.duration = message.duration; - if (message.timestamp != null && message.hasOwnProperty("timestamp")) - if (typeof message.timestamp === "number") - object.timestamp = options.longs === String ? String(message.timestamp) : message.timestamp; - else - object.timestamp = options.longs === String ? $util.Long.prototype.toString.call(message.timestamp) : options.longs === Number ? new $util.LongBits(message.timestamp.low >>> 0, message.timestamp.high >>> 0).toNumber() : message.timestamp; - return object; - }; - - /** - * Converts this EphemeralSetting to JSON. - * @function toJSON - * @memberof proto.EphemeralSetting - * @instance - * @returns {Object.} JSON object - */ - EphemeralSetting.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return EphemeralSetting; - })(); - - proto.PaymentBackground = (function() { - - /** - * Properties of a PaymentBackground. - * @memberof proto - * @interface IPaymentBackground - * @property {string|null} [id] PaymentBackground id - * @property {string|null} [fileLength] PaymentBackground fileLength - * @property {number|null} [width] PaymentBackground width - * @property {number|null} [height] PaymentBackground height - * @property {string|null} [mimetype] PaymentBackground mimetype - * @property {number|null} [placeholderArgb] PaymentBackground placeholderArgb - * @property {number|null} [textArgb] PaymentBackground textArgb - * @property {number|null} [subtextArgb] PaymentBackground subtextArgb - */ - - /** - * Constructs a new PaymentBackground. - * @memberof proto - * @classdesc Represents a PaymentBackground. - * @implements IPaymentBackground - * @constructor - * @param {proto.IPaymentBackground=} [properties] Properties to set - */ - function PaymentBackground(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * PaymentBackground id. - * @member {string} id - * @memberof proto.PaymentBackground - * @instance - */ - PaymentBackground.prototype.id = ""; - - /** - * PaymentBackground fileLength. - * @member {string} fileLength - * @memberof proto.PaymentBackground - * @instance - */ - PaymentBackground.prototype.fileLength = ""; - - /** - * PaymentBackground width. - * @member {number} width - * @memberof proto.PaymentBackground - * @instance - */ - PaymentBackground.prototype.width = 0; - - /** - * PaymentBackground height. - * @member {number} height - * @memberof proto.PaymentBackground - * @instance - */ - PaymentBackground.prototype.height = 0; - - /** - * PaymentBackground mimetype. - * @member {string} mimetype - * @memberof proto.PaymentBackground - * @instance - */ - PaymentBackground.prototype.mimetype = ""; - - /** - * PaymentBackground placeholderArgb. - * @member {number} placeholderArgb - * @memberof proto.PaymentBackground - * @instance - */ - PaymentBackground.prototype.placeholderArgb = 0; - - /** - * PaymentBackground textArgb. - * @member {number} textArgb - * @memberof proto.PaymentBackground - * @instance - */ - PaymentBackground.prototype.textArgb = 0; - - /** - * PaymentBackground subtextArgb. - * @member {number} subtextArgb - * @memberof proto.PaymentBackground - * @instance - */ - PaymentBackground.prototype.subtextArgb = 0; - - /** - * Creates a new PaymentBackground instance using the specified properties. - * @function create - * @memberof proto.PaymentBackground - * @static - * @param {proto.IPaymentBackground=} [properties] Properties to set - * @returns {proto.PaymentBackground} PaymentBackground instance - */ - PaymentBackground.create = function create(properties) { - return new PaymentBackground(properties); - }; - - /** - * Encodes the specified PaymentBackground message. Does not implicitly {@link proto.PaymentBackground.verify|verify} messages. - * @function encode - * @memberof proto.PaymentBackground - * @static - * @param {proto.IPaymentBackground} message PaymentBackground message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - PaymentBackground.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.id != null && Object.hasOwnProperty.call(message, "id")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.id); - if (message.fileLength != null && Object.hasOwnProperty.call(message, "fileLength")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.fileLength); - if (message.width != null && Object.hasOwnProperty.call(message, "width")) - writer.uint32(/* id 3, wireType 0 =*/24).uint32(message.width); - if (message.height != null && Object.hasOwnProperty.call(message, "height")) - writer.uint32(/* id 4, wireType 0 =*/32).uint32(message.height); - if (message.mimetype != null && Object.hasOwnProperty.call(message, "mimetype")) - writer.uint32(/* id 5, wireType 2 =*/42).string(message.mimetype); - if (message.placeholderArgb != null && Object.hasOwnProperty.call(message, "placeholderArgb")) - writer.uint32(/* id 6, wireType 5 =*/53).fixed32(message.placeholderArgb); - if (message.textArgb != null && Object.hasOwnProperty.call(message, "textArgb")) - writer.uint32(/* id 7, wireType 5 =*/61).fixed32(message.textArgb); - if (message.subtextArgb != null && Object.hasOwnProperty.call(message, "subtextArgb")) - writer.uint32(/* id 8, wireType 5 =*/69).fixed32(message.subtextArgb); - return writer; - }; - - /** - * Encodes the specified PaymentBackground message, length delimited. Does not implicitly {@link proto.PaymentBackground.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.PaymentBackground - * @static - * @param {proto.IPaymentBackground} message PaymentBackground message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - PaymentBackground.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a PaymentBackground message from the specified reader or buffer. - * @function decode - * @memberof proto.PaymentBackground - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.PaymentBackground} PaymentBackground - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - PaymentBackground.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.PaymentBackground(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.id = reader.string(); - break; - case 2: - message.fileLength = reader.string(); - break; - case 3: - message.width = reader.uint32(); - break; - case 4: - message.height = reader.uint32(); - break; - case 5: - message.mimetype = reader.string(); - break; - case 6: - message.placeholderArgb = reader.fixed32(); - break; - case 7: - message.textArgb = reader.fixed32(); - break; - case 8: - message.subtextArgb = reader.fixed32(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a PaymentBackground message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.PaymentBackground - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.PaymentBackground} PaymentBackground - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - PaymentBackground.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a PaymentBackground message. - * @function verify - * @memberof proto.PaymentBackground - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - PaymentBackground.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.id != null && message.hasOwnProperty("id")) - if (!$util.isString(message.id)) - return "id: string expected"; - if (message.fileLength != null && message.hasOwnProperty("fileLength")) - if (!$util.isString(message.fileLength)) - return "fileLength: string expected"; - if (message.width != null && message.hasOwnProperty("width")) - if (!$util.isInteger(message.width)) - return "width: integer expected"; - if (message.height != null && message.hasOwnProperty("height")) - if (!$util.isInteger(message.height)) - return "height: integer expected"; - if (message.mimetype != null && message.hasOwnProperty("mimetype")) - if (!$util.isString(message.mimetype)) - return "mimetype: string expected"; - if (message.placeholderArgb != null && message.hasOwnProperty("placeholderArgb")) - if (!$util.isInteger(message.placeholderArgb)) - return "placeholderArgb: integer expected"; - if (message.textArgb != null && message.hasOwnProperty("textArgb")) - if (!$util.isInteger(message.textArgb)) - return "textArgb: integer expected"; - if (message.subtextArgb != null && message.hasOwnProperty("subtextArgb")) - if (!$util.isInteger(message.subtextArgb)) - return "subtextArgb: integer expected"; - return null; - }; - - /** - * Creates a PaymentBackground message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.PaymentBackground - * @static - * @param {Object.} object Plain object - * @returns {proto.PaymentBackground} PaymentBackground - */ - PaymentBackground.fromObject = function fromObject(object) { - if (object instanceof $root.proto.PaymentBackground) - return object; - var message = new $root.proto.PaymentBackground(); - if (object.id != null) - message.id = String(object.id); - if (object.fileLength != null) - message.fileLength = String(object.fileLength); - if (object.width != null) - message.width = object.width >>> 0; - if (object.height != null) - message.height = object.height >>> 0; - if (object.mimetype != null) - message.mimetype = String(object.mimetype); - if (object.placeholderArgb != null) - message.placeholderArgb = object.placeholderArgb >>> 0; - if (object.textArgb != null) - message.textArgb = object.textArgb >>> 0; - if (object.subtextArgb != null) - message.subtextArgb = object.subtextArgb >>> 0; - return message; - }; - - /** - * Creates a plain object from a PaymentBackground message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.PaymentBackground - * @static - * @param {proto.PaymentBackground} message PaymentBackground - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - PaymentBackground.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.id = ""; - object.fileLength = ""; - object.width = 0; - object.height = 0; - object.mimetype = ""; - object.placeholderArgb = 0; - object.textArgb = 0; - object.subtextArgb = 0; - } - if (message.id != null && message.hasOwnProperty("id")) - object.id = message.id; - if (message.fileLength != null && message.hasOwnProperty("fileLength")) - object.fileLength = message.fileLength; - if (message.width != null && message.hasOwnProperty("width")) - object.width = message.width; - if (message.height != null && message.hasOwnProperty("height")) - object.height = message.height; - if (message.mimetype != null && message.hasOwnProperty("mimetype")) - object.mimetype = message.mimetype; - if (message.placeholderArgb != null && message.hasOwnProperty("placeholderArgb")) - object.placeholderArgb = message.placeholderArgb; - if (message.textArgb != null && message.hasOwnProperty("textArgb")) - object.textArgb = message.textArgb; - if (message.subtextArgb != null && message.hasOwnProperty("subtextArgb")) - object.subtextArgb = message.subtextArgb; - return object; - }; - - /** - * Converts this PaymentBackground to JSON. - * @function toJSON - * @memberof proto.PaymentBackground - * @instance - * @returns {Object.} JSON object - */ - PaymentBackground.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return PaymentBackground; - })(); - - proto.Money = (function() { - - /** - * Properties of a Money. - * @memberof proto - * @interface IMoney - * @property {number|Long|null} [value] Money value - * @property {number|null} [offset] Money offset - * @property {string|null} [currencyCode] Money currencyCode - */ - - /** - * Constructs a new Money. - * @memberof proto - * @classdesc Represents a Money. - * @implements IMoney - * @constructor - * @param {proto.IMoney=} [properties] Properties to set - */ - function Money(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * Money value. - * @member {number|Long} value - * @memberof proto.Money - * @instance - */ - Money.prototype.value = $util.Long ? $util.Long.fromBits(0,0,false) : 0; - - /** - * Money offset. - * @member {number} offset - * @memberof proto.Money - * @instance - */ - Money.prototype.offset = 0; - - /** - * Money currencyCode. - * @member {string} currencyCode - * @memberof proto.Money - * @instance - */ - Money.prototype.currencyCode = ""; - - /** - * Creates a new Money instance using the specified properties. - * @function create - * @memberof proto.Money - * @static - * @param {proto.IMoney=} [properties] Properties to set - * @returns {proto.Money} Money instance - */ - Money.create = function create(properties) { - return new Money(properties); - }; - - /** - * Encodes the specified Money message. Does not implicitly {@link proto.Money.verify|verify} messages. - * @function encode - * @memberof proto.Money - * @static - * @param {proto.IMoney} message Money message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - Money.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.value != null && Object.hasOwnProperty.call(message, "value")) - writer.uint32(/* id 1, wireType 0 =*/8).int64(message.value); - if (message.offset != null && Object.hasOwnProperty.call(message, "offset")) - writer.uint32(/* id 2, wireType 0 =*/16).uint32(message.offset); - if (message.currencyCode != null && Object.hasOwnProperty.call(message, "currencyCode")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.currencyCode); - return writer; - }; - - /** - * Encodes the specified Money message, length delimited. Does not implicitly {@link proto.Money.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.Money - * @static - * @param {proto.IMoney} message Money message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - Money.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a Money message from the specified reader or buffer. - * @function decode - * @memberof proto.Money - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.Money} Money - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - Money.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.Money(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.value = reader.int64(); - break; - case 2: - message.offset = reader.uint32(); - break; - case 3: - message.currencyCode = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a Money message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.Money - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.Money} Money - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - Money.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a Money message. - * @function verify - * @memberof proto.Money - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - Money.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.value != null && message.hasOwnProperty("value")) - if (!$util.isInteger(message.value) && !(message.value && $util.isInteger(message.value.low) && $util.isInteger(message.value.high))) - return "value: integer|Long expected"; - if (message.offset != null && message.hasOwnProperty("offset")) - if (!$util.isInteger(message.offset)) - return "offset: integer expected"; - if (message.currencyCode != null && message.hasOwnProperty("currencyCode")) - if (!$util.isString(message.currencyCode)) - return "currencyCode: string expected"; - return null; - }; - - /** - * Creates a Money message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.Money - * @static - * @param {Object.} object Plain object - * @returns {proto.Money} Money - */ - Money.fromObject = function fromObject(object) { - if (object instanceof $root.proto.Money) - return object; - var message = new $root.proto.Money(); - if (object.value != null) - if ($util.Long) - (message.value = $util.Long.fromValue(object.value)).unsigned = false; - else if (typeof object.value === "string") - message.value = parseInt(object.value, 10); - else if (typeof object.value === "number") - message.value = object.value; - else if (typeof object.value === "object") - message.value = new $util.LongBits(object.value.low >>> 0, object.value.high >>> 0).toNumber(); - if (object.offset != null) - message.offset = object.offset >>> 0; - if (object.currencyCode != null) - message.currencyCode = String(object.currencyCode); - return message; - }; - - /** - * Creates a plain object from a Money message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.Money - * @static - * @param {proto.Money} message Money - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - Money.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - if ($util.Long) { - var long = new $util.Long(0, 0, false); - object.value = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; - } else - object.value = options.longs === String ? "0" : 0; - object.offset = 0; - object.currencyCode = ""; - } - if (message.value != null && message.hasOwnProperty("value")) - if (typeof message.value === "number") - object.value = options.longs === String ? String(message.value) : message.value; - else - object.value = options.longs === String ? $util.Long.prototype.toString.call(message.value) : options.longs === Number ? new $util.LongBits(message.value.low >>> 0, message.value.high >>> 0).toNumber() : message.value; - if (message.offset != null && message.hasOwnProperty("offset")) - object.offset = message.offset; - if (message.currencyCode != null && message.hasOwnProperty("currencyCode")) - object.currencyCode = message.currencyCode; - return object; - }; - - /** - * Converts this Money to JSON. - * @function toJSON - * @memberof proto.Money - * @instance - * @returns {Object.} JSON object - */ - Money.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return Money; - })(); - - proto.HydratedQuickReplyButton = (function() { - - /** - * Properties of a HydratedQuickReplyButton. - * @memberof proto - * @interface IHydratedQuickReplyButton - * @property {string|null} [displayText] HydratedQuickReplyButton displayText - * @property {string|null} [id] HydratedQuickReplyButton id - */ - - /** - * Constructs a new HydratedQuickReplyButton. - * @memberof proto - * @classdesc Represents a HydratedQuickReplyButton. - * @implements IHydratedQuickReplyButton - * @constructor - * @param {proto.IHydratedQuickReplyButton=} [properties] Properties to set - */ - function HydratedQuickReplyButton(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * HydratedQuickReplyButton displayText. - * @member {string} displayText - * @memberof proto.HydratedQuickReplyButton - * @instance - */ - HydratedQuickReplyButton.prototype.displayText = ""; - - /** - * HydratedQuickReplyButton id. - * @member {string} id - * @memberof proto.HydratedQuickReplyButton - * @instance - */ - HydratedQuickReplyButton.prototype.id = ""; - - /** - * Creates a new HydratedQuickReplyButton instance using the specified properties. - * @function create - * @memberof proto.HydratedQuickReplyButton - * @static - * @param {proto.IHydratedQuickReplyButton=} [properties] Properties to set - * @returns {proto.HydratedQuickReplyButton} HydratedQuickReplyButton instance - */ - HydratedQuickReplyButton.create = function create(properties) { - return new HydratedQuickReplyButton(properties); - }; - - /** - * Encodes the specified HydratedQuickReplyButton message. Does not implicitly {@link proto.HydratedQuickReplyButton.verify|verify} messages. - * @function encode - * @memberof proto.HydratedQuickReplyButton - * @static - * @param {proto.IHydratedQuickReplyButton} message HydratedQuickReplyButton message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - HydratedQuickReplyButton.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.displayText != null && Object.hasOwnProperty.call(message, "displayText")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.displayText); - if (message.id != null && Object.hasOwnProperty.call(message, "id")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.id); - return writer; - }; - - /** - * Encodes the specified HydratedQuickReplyButton message, length delimited. Does not implicitly {@link proto.HydratedQuickReplyButton.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.HydratedQuickReplyButton - * @static - * @param {proto.IHydratedQuickReplyButton} message HydratedQuickReplyButton message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - HydratedQuickReplyButton.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a HydratedQuickReplyButton message from the specified reader or buffer. - * @function decode - * @memberof proto.HydratedQuickReplyButton - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.HydratedQuickReplyButton} HydratedQuickReplyButton - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - HydratedQuickReplyButton.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.HydratedQuickReplyButton(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.displayText = reader.string(); - break; - case 2: - message.id = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a HydratedQuickReplyButton message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.HydratedQuickReplyButton - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.HydratedQuickReplyButton} HydratedQuickReplyButton - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - HydratedQuickReplyButton.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a HydratedQuickReplyButton message. - * @function verify - * @memberof proto.HydratedQuickReplyButton - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - HydratedQuickReplyButton.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.displayText != null && message.hasOwnProperty("displayText")) - if (!$util.isString(message.displayText)) - return "displayText: string expected"; - if (message.id != null && message.hasOwnProperty("id")) - if (!$util.isString(message.id)) - return "id: string expected"; - return null; - }; - - /** - * Creates a HydratedQuickReplyButton message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.HydratedQuickReplyButton - * @static - * @param {Object.} object Plain object - * @returns {proto.HydratedQuickReplyButton} HydratedQuickReplyButton - */ - HydratedQuickReplyButton.fromObject = function fromObject(object) { - if (object instanceof $root.proto.HydratedQuickReplyButton) - return object; - var message = new $root.proto.HydratedQuickReplyButton(); - if (object.displayText != null) - message.displayText = String(object.displayText); - if (object.id != null) - message.id = String(object.id); - return message; - }; - - /** - * Creates a plain object from a HydratedQuickReplyButton message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.HydratedQuickReplyButton - * @static - * @param {proto.HydratedQuickReplyButton} message HydratedQuickReplyButton - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - HydratedQuickReplyButton.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.displayText = ""; - object.id = ""; - } - if (message.displayText != null && message.hasOwnProperty("displayText")) - object.displayText = message.displayText; - if (message.id != null && message.hasOwnProperty("id")) - object.id = message.id; - return object; - }; - - /** - * Converts this HydratedQuickReplyButton to JSON. - * @function toJSON - * @memberof proto.HydratedQuickReplyButton - * @instance - * @returns {Object.} JSON object - */ - HydratedQuickReplyButton.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return HydratedQuickReplyButton; - })(); - - proto.HydratedURLButton = (function() { - - /** - * Properties of a HydratedURLButton. - * @memberof proto - * @interface IHydratedURLButton - * @property {string|null} [displayText] HydratedURLButton displayText - * @property {string|null} [url] HydratedURLButton url - */ - - /** - * Constructs a new HydratedURLButton. - * @memberof proto - * @classdesc Represents a HydratedURLButton. - * @implements IHydratedURLButton - * @constructor - * @param {proto.IHydratedURLButton=} [properties] Properties to set - */ - function HydratedURLButton(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * HydratedURLButton displayText. - * @member {string} displayText - * @memberof proto.HydratedURLButton - * @instance - */ - HydratedURLButton.prototype.displayText = ""; - - /** - * HydratedURLButton url. - * @member {string} url - * @memberof proto.HydratedURLButton - * @instance - */ - HydratedURLButton.prototype.url = ""; - - /** - * Creates a new HydratedURLButton instance using the specified properties. - * @function create - * @memberof proto.HydratedURLButton - * @static - * @param {proto.IHydratedURLButton=} [properties] Properties to set - * @returns {proto.HydratedURLButton} HydratedURLButton instance - */ - HydratedURLButton.create = function create(properties) { - return new HydratedURLButton(properties); - }; - - /** - * Encodes the specified HydratedURLButton message. Does not implicitly {@link proto.HydratedURLButton.verify|verify} messages. - * @function encode - * @memberof proto.HydratedURLButton - * @static - * @param {proto.IHydratedURLButton} message HydratedURLButton message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - HydratedURLButton.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.displayText != null && Object.hasOwnProperty.call(message, "displayText")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.displayText); - if (message.url != null && Object.hasOwnProperty.call(message, "url")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.url); - return writer; - }; - - /** - * Encodes the specified HydratedURLButton message, length delimited. Does not implicitly {@link proto.HydratedURLButton.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.HydratedURLButton - * @static - * @param {proto.IHydratedURLButton} message HydratedURLButton message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - HydratedURLButton.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a HydratedURLButton message from the specified reader or buffer. - * @function decode - * @memberof proto.HydratedURLButton - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.HydratedURLButton} HydratedURLButton - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - HydratedURLButton.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.HydratedURLButton(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.displayText = reader.string(); - break; - case 2: - message.url = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a HydratedURLButton message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.HydratedURLButton - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.HydratedURLButton} HydratedURLButton - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - HydratedURLButton.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a HydratedURLButton message. - * @function verify - * @memberof proto.HydratedURLButton - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - HydratedURLButton.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.displayText != null && message.hasOwnProperty("displayText")) - if (!$util.isString(message.displayText)) - return "displayText: string expected"; - if (message.url != null && message.hasOwnProperty("url")) - if (!$util.isString(message.url)) - return "url: string expected"; - return null; - }; - - /** - * Creates a HydratedURLButton message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.HydratedURLButton - * @static - * @param {Object.} object Plain object - * @returns {proto.HydratedURLButton} HydratedURLButton - */ - HydratedURLButton.fromObject = function fromObject(object) { - if (object instanceof $root.proto.HydratedURLButton) - return object; - var message = new $root.proto.HydratedURLButton(); - if (object.displayText != null) - message.displayText = String(object.displayText); - if (object.url != null) - message.url = String(object.url); - return message; - }; - - /** - * Creates a plain object from a HydratedURLButton message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.HydratedURLButton - * @static - * @param {proto.HydratedURLButton} message HydratedURLButton - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - HydratedURLButton.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.displayText = ""; - object.url = ""; - } - if (message.displayText != null && message.hasOwnProperty("displayText")) - object.displayText = message.displayText; - if (message.url != null && message.hasOwnProperty("url")) - object.url = message.url; - return object; - }; - - /** - * Converts this HydratedURLButton to JSON. - * @function toJSON - * @memberof proto.HydratedURLButton - * @instance - * @returns {Object.} JSON object - */ - HydratedURLButton.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return HydratedURLButton; - })(); - - proto.HydratedCallButton = (function() { - - /** - * Properties of a HydratedCallButton. - * @memberof proto - * @interface IHydratedCallButton - * @property {string|null} [displayText] HydratedCallButton displayText - * @property {string|null} [phoneNumber] HydratedCallButton phoneNumber - */ - - /** - * Constructs a new HydratedCallButton. - * @memberof proto - * @classdesc Represents a HydratedCallButton. - * @implements IHydratedCallButton - * @constructor - * @param {proto.IHydratedCallButton=} [properties] Properties to set - */ - function HydratedCallButton(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * HydratedCallButton displayText. - * @member {string} displayText - * @memberof proto.HydratedCallButton - * @instance - */ - HydratedCallButton.prototype.displayText = ""; - - /** - * HydratedCallButton phoneNumber. - * @member {string} phoneNumber - * @memberof proto.HydratedCallButton - * @instance - */ - HydratedCallButton.prototype.phoneNumber = ""; - - /** - * Creates a new HydratedCallButton instance using the specified properties. - * @function create - * @memberof proto.HydratedCallButton - * @static - * @param {proto.IHydratedCallButton=} [properties] Properties to set - * @returns {proto.HydratedCallButton} HydratedCallButton instance - */ - HydratedCallButton.create = function create(properties) { - return new HydratedCallButton(properties); - }; - - /** - * Encodes the specified HydratedCallButton message. Does not implicitly {@link proto.HydratedCallButton.verify|verify} messages. - * @function encode - * @memberof proto.HydratedCallButton - * @static - * @param {proto.IHydratedCallButton} message HydratedCallButton message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - HydratedCallButton.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.displayText != null && Object.hasOwnProperty.call(message, "displayText")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.displayText); - if (message.phoneNumber != null && Object.hasOwnProperty.call(message, "phoneNumber")) - writer.uint32(/* id 2, wireType 2 =*/18).string(message.phoneNumber); - return writer; - }; - - /** - * Encodes the specified HydratedCallButton message, length delimited. Does not implicitly {@link proto.HydratedCallButton.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.HydratedCallButton - * @static - * @param {proto.IHydratedCallButton} message HydratedCallButton message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - HydratedCallButton.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a HydratedCallButton message from the specified reader or buffer. - * @function decode - * @memberof proto.HydratedCallButton - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.HydratedCallButton} HydratedCallButton - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - HydratedCallButton.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.HydratedCallButton(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.displayText = reader.string(); - break; - case 2: - message.phoneNumber = reader.string(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a HydratedCallButton message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.HydratedCallButton - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.HydratedCallButton} HydratedCallButton - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - HydratedCallButton.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a HydratedCallButton message. - * @function verify - * @memberof proto.HydratedCallButton - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - HydratedCallButton.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.displayText != null && message.hasOwnProperty("displayText")) - if (!$util.isString(message.displayText)) - return "displayText: string expected"; - if (message.phoneNumber != null && message.hasOwnProperty("phoneNumber")) - if (!$util.isString(message.phoneNumber)) - return "phoneNumber: string expected"; - return null; - }; - - /** - * Creates a HydratedCallButton message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.HydratedCallButton - * @static - * @param {Object.} object Plain object - * @returns {proto.HydratedCallButton} HydratedCallButton - */ - HydratedCallButton.fromObject = function fromObject(object) { - if (object instanceof $root.proto.HydratedCallButton) - return object; - var message = new $root.proto.HydratedCallButton(); - if (object.displayText != null) - message.displayText = String(object.displayText); - if (object.phoneNumber != null) - message.phoneNumber = String(object.phoneNumber); - return message; - }; - - /** - * Creates a plain object from a HydratedCallButton message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.HydratedCallButton - * @static - * @param {proto.HydratedCallButton} message HydratedCallButton - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - HydratedCallButton.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.displayText = ""; - object.phoneNumber = ""; - } - if (message.displayText != null && message.hasOwnProperty("displayText")) - object.displayText = message.displayText; - if (message.phoneNumber != null && message.hasOwnProperty("phoneNumber")) - object.phoneNumber = message.phoneNumber; - return object; - }; - - /** - * Converts this HydratedCallButton to JSON. - * @function toJSON - * @memberof proto.HydratedCallButton - * @instance - * @returns {Object.} JSON object - */ - HydratedCallButton.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return HydratedCallButton; - })(); - - proto.HydratedTemplateButton = (function() { - - /** - * Properties of a HydratedTemplateButton. - * @memberof proto - * @interface IHydratedTemplateButton - * @property {number|null} [index] HydratedTemplateButton index - * @property {proto.IHydratedQuickReplyButton|null} [quickReplyButton] HydratedTemplateButton quickReplyButton - * @property {proto.IHydratedURLButton|null} [urlButton] HydratedTemplateButton urlButton - * @property {proto.IHydratedCallButton|null} [callButton] HydratedTemplateButton callButton - */ - - /** - * Constructs a new HydratedTemplateButton. - * @memberof proto - * @classdesc Represents a HydratedTemplateButton. - * @implements IHydratedTemplateButton - * @constructor - * @param {proto.IHydratedTemplateButton=} [properties] Properties to set - */ - function HydratedTemplateButton(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * HydratedTemplateButton index. - * @member {number} index - * @memberof proto.HydratedTemplateButton - * @instance - */ - HydratedTemplateButton.prototype.index = 0; - - /** - * HydratedTemplateButton quickReplyButton. - * @member {proto.IHydratedQuickReplyButton|null|undefined} quickReplyButton - * @memberof proto.HydratedTemplateButton - * @instance - */ - HydratedTemplateButton.prototype.quickReplyButton = null; - - /** - * HydratedTemplateButton urlButton. - * @member {proto.IHydratedURLButton|null|undefined} urlButton - * @memberof proto.HydratedTemplateButton - * @instance - */ - HydratedTemplateButton.prototype.urlButton = null; - - /** - * HydratedTemplateButton callButton. - * @member {proto.IHydratedCallButton|null|undefined} callButton - * @memberof proto.HydratedTemplateButton - * @instance - */ - HydratedTemplateButton.prototype.callButton = null; - - // OneOf field names bound to virtual getters and setters - var $oneOfFields; - - /** - * HydratedTemplateButton hydratedButton. - * @member {"quickReplyButton"|"urlButton"|"callButton"|undefined} hydratedButton - * @memberof proto.HydratedTemplateButton - * @instance - */ - Object.defineProperty(HydratedTemplateButton.prototype, "hydratedButton", { - get: $util.oneOfGetter($oneOfFields = ["quickReplyButton", "urlButton", "callButton"]), - set: $util.oneOfSetter($oneOfFields) - }); - - /** - * Creates a new HydratedTemplateButton instance using the specified properties. - * @function create - * @memberof proto.HydratedTemplateButton - * @static - * @param {proto.IHydratedTemplateButton=} [properties] Properties to set - * @returns {proto.HydratedTemplateButton} HydratedTemplateButton instance - */ - HydratedTemplateButton.create = function create(properties) { - return new HydratedTemplateButton(properties); - }; - - /** - * Encodes the specified HydratedTemplateButton message. Does not implicitly {@link proto.HydratedTemplateButton.verify|verify} messages. - * @function encode - * @memberof proto.HydratedTemplateButton - * @static - * @param {proto.IHydratedTemplateButton} message HydratedTemplateButton message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - HydratedTemplateButton.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.quickReplyButton != null && Object.hasOwnProperty.call(message, "quickReplyButton")) - $root.proto.HydratedQuickReplyButton.encode(message.quickReplyButton, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); - if (message.urlButton != null && Object.hasOwnProperty.call(message, "urlButton")) - $root.proto.HydratedURLButton.encode(message.urlButton, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - if (message.callButton != null && Object.hasOwnProperty.call(message, "callButton")) - $root.proto.HydratedCallButton.encode(message.callButton, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); - if (message.index != null && Object.hasOwnProperty.call(message, "index")) - writer.uint32(/* id 4, wireType 0 =*/32).uint32(message.index); - return writer; - }; - - /** - * Encodes the specified HydratedTemplateButton message, length delimited. Does not implicitly {@link proto.HydratedTemplateButton.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.HydratedTemplateButton - * @static - * @param {proto.IHydratedTemplateButton} message HydratedTemplateButton message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - HydratedTemplateButton.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a HydratedTemplateButton message from the specified reader or buffer. - * @function decode - * @memberof proto.HydratedTemplateButton - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.HydratedTemplateButton} HydratedTemplateButton - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - HydratedTemplateButton.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.HydratedTemplateButton(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 4: - message.index = reader.uint32(); - break; - case 1: - message.quickReplyButton = $root.proto.HydratedQuickReplyButton.decode(reader, reader.uint32()); - break; - case 2: - message.urlButton = $root.proto.HydratedURLButton.decode(reader, reader.uint32()); - break; - case 3: - message.callButton = $root.proto.HydratedCallButton.decode(reader, reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a HydratedTemplateButton message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.HydratedTemplateButton - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.HydratedTemplateButton} HydratedTemplateButton - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - HydratedTemplateButton.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a HydratedTemplateButton message. - * @function verify - * @memberof proto.HydratedTemplateButton - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - HydratedTemplateButton.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - var properties = {}; - if (message.index != null && message.hasOwnProperty("index")) - if (!$util.isInteger(message.index)) - return "index: integer expected"; - if (message.quickReplyButton != null && message.hasOwnProperty("quickReplyButton")) { - properties.hydratedButton = 1; - { - var error = $root.proto.HydratedQuickReplyButton.verify(message.quickReplyButton); - if (error) - return "quickReplyButton." + error; - } - } - if (message.urlButton != null && message.hasOwnProperty("urlButton")) { - if (properties.hydratedButton === 1) - return "hydratedButton: multiple values"; - properties.hydratedButton = 1; - { - var error = $root.proto.HydratedURLButton.verify(message.urlButton); - if (error) - return "urlButton." + error; - } - } - if (message.callButton != null && message.hasOwnProperty("callButton")) { - if (properties.hydratedButton === 1) - return "hydratedButton: multiple values"; - properties.hydratedButton = 1; - { - var error = $root.proto.HydratedCallButton.verify(message.callButton); - if (error) - return "callButton." + error; - } - } - return null; - }; - - /** - * Creates a HydratedTemplateButton message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.HydratedTemplateButton - * @static - * @param {Object.} object Plain object - * @returns {proto.HydratedTemplateButton} HydratedTemplateButton - */ - HydratedTemplateButton.fromObject = function fromObject(object) { - if (object instanceof $root.proto.HydratedTemplateButton) - return object; - var message = new $root.proto.HydratedTemplateButton(); - if (object.index != null) - message.index = object.index >>> 0; - if (object.quickReplyButton != null) { - if (typeof object.quickReplyButton !== "object") - throw TypeError(".proto.HydratedTemplateButton.quickReplyButton: object expected"); - message.quickReplyButton = $root.proto.HydratedQuickReplyButton.fromObject(object.quickReplyButton); - } - if (object.urlButton != null) { - if (typeof object.urlButton !== "object") - throw TypeError(".proto.HydratedTemplateButton.urlButton: object expected"); - message.urlButton = $root.proto.HydratedURLButton.fromObject(object.urlButton); - } - if (object.callButton != null) { - if (typeof object.callButton !== "object") - throw TypeError(".proto.HydratedTemplateButton.callButton: object expected"); - message.callButton = $root.proto.HydratedCallButton.fromObject(object.callButton); - } - return message; - }; - - /** - * Creates a plain object from a HydratedTemplateButton message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.HydratedTemplateButton - * @static - * @param {proto.HydratedTemplateButton} message HydratedTemplateButton - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - HydratedTemplateButton.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) - object.index = 0; - if (message.quickReplyButton != null && message.hasOwnProperty("quickReplyButton")) { - object.quickReplyButton = $root.proto.HydratedQuickReplyButton.toObject(message.quickReplyButton, options); - if (options.oneofs) - object.hydratedButton = "quickReplyButton"; - } - if (message.urlButton != null && message.hasOwnProperty("urlButton")) { - object.urlButton = $root.proto.HydratedURLButton.toObject(message.urlButton, options); - if (options.oneofs) - object.hydratedButton = "urlButton"; - } - if (message.callButton != null && message.hasOwnProperty("callButton")) { - object.callButton = $root.proto.HydratedCallButton.toObject(message.callButton, options); - if (options.oneofs) - object.hydratedButton = "callButton"; - } - if (message.index != null && message.hasOwnProperty("index")) - object.index = message.index; - return object; - }; - - /** - * Converts this HydratedTemplateButton to JSON. - * @function toJSON - * @memberof proto.HydratedTemplateButton - * @instance - * @returns {Object.} JSON object - */ - HydratedTemplateButton.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return HydratedTemplateButton; + return MessageKey; })(); proto.QuickReplyButton = (function() { @@ -22336,6 +3308,7 @@ $root.proto = (function() { * @property {string|null} [entryPointConversionSource] ContextInfo entryPointConversionSource * @property {string|null} [entryPointConversionApp] ContextInfo entryPointConversionApp * @property {number|null} [entryPointConversionDelaySeconds] ContextInfo entryPointConversionDelaySeconds + * @property {proto.IDisappearingMode|null} [disappearingMode] ContextInfo disappearingMode */ /** @@ -22506,6 +3479,14 @@ $root.proto = (function() { */ ContextInfo.prototype.entryPointConversionDelaySeconds = 0; + /** + * ContextInfo disappearingMode. + * @member {proto.IDisappearingMode|null|undefined} disappearingMode + * @memberof proto.ContextInfo + * @instance + */ + ContextInfo.prototype.disappearingMode = null; + /** * Creates a new ContextInfo instance using the specified properties. * @function create @@ -22569,6 +3550,8 @@ $root.proto = (function() { writer.uint32(/* id 30, wireType 2 =*/242).string(message.entryPointConversionApp); if (message.entryPointConversionDelaySeconds != null && Object.hasOwnProperty.call(message, "entryPointConversionDelaySeconds")) writer.uint32(/* id 31, wireType 0 =*/248).uint32(message.entryPointConversionDelaySeconds); + if (message.disappearingMode != null && Object.hasOwnProperty.call(message, "disappearingMode")) + $root.proto.DisappearingMode.encode(message.disappearingMode, writer.uint32(/* id 32, wireType 2 =*/258).fork()).ldelim(); return writer; }; @@ -22662,6 +3645,9 @@ $root.proto = (function() { case 31: message.entryPointConversionDelaySeconds = reader.uint32(); break; + case 32: + message.disappearingMode = $root.proto.DisappearingMode.decode(reader, reader.uint32()); + break; default: reader.skipType(tag & 7); break; @@ -22766,6 +3752,11 @@ $root.proto = (function() { if (message.entryPointConversionDelaySeconds != null && message.hasOwnProperty("entryPointConversionDelaySeconds")) if (!$util.isInteger(message.entryPointConversionDelaySeconds)) return "entryPointConversionDelaySeconds: integer expected"; + if (message.disappearingMode != null && message.hasOwnProperty("disappearingMode")) { + var error = $root.proto.DisappearingMode.verify(message.disappearingMode); + if (error) + return "disappearingMode." + error; + } return null; }; @@ -22849,6 +3840,11 @@ $root.proto = (function() { message.entryPointConversionApp = String(object.entryPointConversionApp); if (object.entryPointConversionDelaySeconds != null) message.entryPointConversionDelaySeconds = object.entryPointConversionDelaySeconds >>> 0; + if (object.disappearingMode != null) { + if (typeof object.disappearingMode !== "object") + throw TypeError(".proto.ContextInfo.disappearingMode: object expected"); + message.disappearingMode = $root.proto.DisappearingMode.fromObject(object.disappearingMode); + } return message; }; @@ -22902,6 +3898,7 @@ $root.proto = (function() { object.entryPointConversionSource = ""; object.entryPointConversionApp = ""; object.entryPointConversionDelaySeconds = 0; + object.disappearingMode = null; } if (message.stanzaId != null && message.hasOwnProperty("stanzaId")) object.stanzaId = message.stanzaId; @@ -22947,6 +3944,8 @@ $root.proto = (function() { object.entryPointConversionApp = message.entryPointConversionApp; if (message.entryPointConversionDelaySeconds != null && message.hasOwnProperty("entryPointConversionDelaySeconds")) object.entryPointConversionDelaySeconds = message.entryPointConversionDelaySeconds; + if (message.disappearingMode != null && message.hasOwnProperty("disappearingMode")) + object.disappearingMode = $root.proto.DisappearingMode.toObject(message.disappearingMode, options); return object; }; @@ -23214,6 +4213,7 @@ $root.proto = (function() { * @property {string|null} [thumbnailDirectPath] ImageMessage thumbnailDirectPath * @property {Uint8Array|null} [thumbnailSha256] ImageMessage thumbnailSha256 * @property {Uint8Array|null} [thumbnailEncSha256] ImageMessage thumbnailEncSha256 + * @property {string|null} [staticUrl] ImageMessage staticUrl */ /** @@ -23433,6 +4433,14 @@ $root.proto = (function() { */ ImageMessage.prototype.thumbnailEncSha256 = $util.newBuffer([]); + /** + * ImageMessage staticUrl. + * @member {string} staticUrl + * @memberof proto.ImageMessage + * @instance + */ + ImageMessage.prototype.staticUrl = ""; + /** * Creates a new ImageMessage instance using the specified properties. * @function create @@ -23509,6 +4517,8 @@ $root.proto = (function() { writer.uint32(/* id 27, wireType 2 =*/218).bytes(message.thumbnailSha256); if (message.thumbnailEncSha256 != null && Object.hasOwnProperty.call(message, "thumbnailEncSha256")) writer.uint32(/* id 28, wireType 2 =*/226).bytes(message.thumbnailEncSha256); + if (message.staticUrl != null && Object.hasOwnProperty.call(message, "staticUrl")) + writer.uint32(/* id 29, wireType 2 =*/234).string(message.staticUrl); return writer; }; @@ -23627,6 +4637,9 @@ $root.proto = (function() { case 28: message.thumbnailEncSha256 = reader.bytes(); break; + case 29: + message.staticUrl = reader.string(); + break; default: reader.skipType(tag & 7); break; @@ -23749,6 +4762,9 @@ $root.proto = (function() { if (message.thumbnailEncSha256 != null && message.hasOwnProperty("thumbnailEncSha256")) if (!(message.thumbnailEncSha256 && typeof message.thumbnailEncSha256.length === "number" || $util.isString(message.thumbnailEncSha256))) return "thumbnailEncSha256: buffer expected"; + if (message.staticUrl != null && message.hasOwnProperty("staticUrl")) + if (!$util.isString(message.staticUrl)) + return "staticUrl: string expected"; return null; }; @@ -23874,6 +4890,8 @@ $root.proto = (function() { $util.base64.decode(object.thumbnailEncSha256, message.thumbnailEncSha256 = $util.newBuffer($util.base64.length(object.thumbnailEncSha256)), 0); else if (object.thumbnailEncSha256.length) message.thumbnailEncSha256 = object.thumbnailEncSha256; + if (object.staticUrl != null) + message.staticUrl = String(object.staticUrl); return message; }; @@ -23986,6 +5004,7 @@ $root.proto = (function() { if (options.bytes !== Array) object.thumbnailEncSha256 = $util.newBuffer(object.thumbnailEncSha256); } + object.staticUrl = ""; } if (message.url != null && message.hasOwnProperty("url")) object.url = message.url; @@ -24049,6 +5068,8 @@ $root.proto = (function() { object.thumbnailSha256 = options.bytes === String ? $util.base64.encode(message.thumbnailSha256, 0, message.thumbnailSha256.length) : options.bytes === Array ? Array.prototype.slice.call(message.thumbnailSha256) : message.thumbnailSha256; if (message.thumbnailEncSha256 != null && message.hasOwnProperty("thumbnailEncSha256")) object.thumbnailEncSha256 = options.bytes === String ? $util.base64.encode(message.thumbnailEncSha256, 0, message.thumbnailEncSha256.length) : options.bytes === Array ? Array.prototype.slice.call(message.thumbnailEncSha256) : message.thumbnailEncSha256; + if (message.staticUrl != null && message.hasOwnProperty("staticUrl")) + object.staticUrl = message.staticUrl; return object; }; @@ -27129,6 +8150,7 @@ $root.proto = (function() { * @property {string|null} [thumbnailDirectPath] VideoMessage thumbnailDirectPath * @property {Uint8Array|null} [thumbnailSha256] VideoMessage thumbnailSha256 * @property {Uint8Array|null} [thumbnailEncSha256] VideoMessage thumbnailEncSha256 + * @property {string|null} [staticUrl] VideoMessage staticUrl */ /** @@ -27323,6 +8345,14 @@ $root.proto = (function() { */ VideoMessage.prototype.thumbnailEncSha256 = $util.newBuffer([]); + /** + * VideoMessage staticUrl. + * @member {string} staticUrl + * @memberof proto.VideoMessage + * @instance + */ + VideoMessage.prototype.staticUrl = ""; + /** * Creates a new VideoMessage instance using the specified properties. * @function create @@ -27392,6 +8422,8 @@ $root.proto = (function() { writer.uint32(/* id 22, wireType 2 =*/178).bytes(message.thumbnailSha256); if (message.thumbnailEncSha256 != null && Object.hasOwnProperty.call(message, "thumbnailEncSha256")) writer.uint32(/* id 23, wireType 2 =*/186).bytes(message.thumbnailEncSha256); + if (message.staticUrl != null && Object.hasOwnProperty.call(message, "staticUrl")) + writer.uint32(/* id 24, wireType 2 =*/194).string(message.staticUrl); return writer; }; @@ -27494,6 +8526,9 @@ $root.proto = (function() { case 23: message.thumbnailEncSha256 = reader.bytes(); break; + case 24: + message.staticUrl = reader.string(); + break; default: reader.skipType(tag & 7); break; @@ -27609,6 +8644,9 @@ $root.proto = (function() { if (message.thumbnailEncSha256 != null && message.hasOwnProperty("thumbnailEncSha256")) if (!(message.thumbnailEncSha256 && typeof message.thumbnailEncSha256.length === "number" || $util.isString(message.thumbnailEncSha256))) return "thumbnailEncSha256: buffer expected"; + if (message.staticUrl != null && message.hasOwnProperty("staticUrl")) + if (!$util.isString(message.staticUrl)) + return "staticUrl: string expected"; return null; }; @@ -27726,6 +8764,8 @@ $root.proto = (function() { $util.base64.decode(object.thumbnailEncSha256, message.thumbnailEncSha256 = $util.newBuffer($util.base64.length(object.thumbnailEncSha256)), 0); else if (object.thumbnailEncSha256.length) message.thumbnailEncSha256 = object.thumbnailEncSha256; + if (object.staticUrl != null) + message.staticUrl = String(object.staticUrl); return message; }; @@ -27816,6 +8856,7 @@ $root.proto = (function() { if (options.bytes !== Array) object.thumbnailEncSha256 = $util.newBuffer(object.thumbnailEncSha256); } + object.staticUrl = ""; } if (message.url != null && message.hasOwnProperty("url")) object.url = message.url; @@ -27870,6 +8911,8 @@ $root.proto = (function() { object.thumbnailSha256 = options.bytes === String ? $util.base64.encode(message.thumbnailSha256, 0, message.thumbnailSha256.length) : options.bytes === Array ? Array.prototype.slice.call(message.thumbnailSha256) : message.thumbnailSha256; if (message.thumbnailEncSha256 != null && message.hasOwnProperty("thumbnailEncSha256")) object.thumbnailEncSha256 = options.bytes === String ? $util.base64.encode(message.thumbnailEncSha256, 0, message.thumbnailEncSha256.length) : options.bytes === Array ? Array.prototype.slice.call(message.thumbnailEncSha256) : message.thumbnailEncSha256; + if (message.staticUrl != null && message.hasOwnProperty("staticUrl")) + object.staticUrl = message.staticUrl; return object; }; @@ -28400,6 +9443,7 @@ $root.proto = (function() { * @property {proto.IAppStateSyncKeyRequest|null} [appStateSyncKeyRequest] ProtocolMessage appStateSyncKeyRequest * @property {proto.IInitialSecurityNotificationSettingSync|null} [initialSecurityNotificationSettingSync] ProtocolMessage initialSecurityNotificationSettingSync * @property {proto.IAppStateFatalExceptionNotification|null} [appStateFatalExceptionNotification] ProtocolMessage appStateFatalExceptionNotification + * @property {proto.IDisappearingMode|null} [disappearingMode] ProtocolMessage disappearingMode */ /** @@ -28489,6 +9533,14 @@ $root.proto = (function() { */ ProtocolMessage.prototype.appStateFatalExceptionNotification = null; + /** + * ProtocolMessage disappearingMode. + * @member {proto.IDisappearingMode|null|undefined} disappearingMode + * @memberof proto.ProtocolMessage + * @instance + */ + ProtocolMessage.prototype.disappearingMode = null; + /** * Creates a new ProtocolMessage instance using the specified properties. * @function create @@ -28531,6 +9583,8 @@ $root.proto = (function() { $root.proto.InitialSecurityNotificationSettingSync.encode(message.initialSecurityNotificationSettingSync, writer.uint32(/* id 9, wireType 2 =*/74).fork()).ldelim(); if (message.appStateFatalExceptionNotification != null && Object.hasOwnProperty.call(message, "appStateFatalExceptionNotification")) $root.proto.AppStateFatalExceptionNotification.encode(message.appStateFatalExceptionNotification, writer.uint32(/* id 10, wireType 2 =*/82).fork()).ldelim(); + if (message.disappearingMode != null && Object.hasOwnProperty.call(message, "disappearingMode")) + $root.proto.DisappearingMode.encode(message.disappearingMode, writer.uint32(/* id 11, wireType 2 =*/90).fork()).ldelim(); return writer; }; @@ -28592,6 +9646,9 @@ $root.proto = (function() { case 10: message.appStateFatalExceptionNotification = $root.proto.AppStateFatalExceptionNotification.decode(reader, reader.uint32()); break; + case 11: + message.disappearingMode = $root.proto.DisappearingMode.decode(reader, reader.uint32()); + break; default: reader.skipType(tag & 7); break; @@ -28678,6 +9735,11 @@ $root.proto = (function() { if (error) return "appStateFatalExceptionNotification." + error; } + if (message.disappearingMode != null && message.hasOwnProperty("disappearingMode")) { + var error = $root.proto.DisappearingMode.verify(message.disappearingMode); + if (error) + return "disappearingMode." + error; + } return null; }; @@ -28772,6 +9834,11 @@ $root.proto = (function() { throw TypeError(".proto.ProtocolMessage.appStateFatalExceptionNotification: object expected"); message.appStateFatalExceptionNotification = $root.proto.AppStateFatalExceptionNotification.fromObject(object.appStateFatalExceptionNotification); } + if (object.disappearingMode != null) { + if (typeof object.disappearingMode !== "object") + throw TypeError(".proto.ProtocolMessage.disappearingMode: object expected"); + message.disappearingMode = $root.proto.DisappearingMode.fromObject(object.disappearingMode); + } return message; }; @@ -28802,6 +9869,7 @@ $root.proto = (function() { object.appStateSyncKeyRequest = null; object.initialSecurityNotificationSettingSync = null; object.appStateFatalExceptionNotification = null; + object.disappearingMode = null; } if (message.key != null && message.hasOwnProperty("key")) object.key = $root.proto.MessageKey.toObject(message.key, options); @@ -28824,6 +9892,8 @@ $root.proto = (function() { object.initialSecurityNotificationSettingSync = $root.proto.InitialSecurityNotificationSettingSync.toObject(message.initialSecurityNotificationSettingSync, options); if (message.appStateFatalExceptionNotification != null && message.hasOwnProperty("appStateFatalExceptionNotification")) object.appStateFatalExceptionNotification = $root.proto.AppStateFatalExceptionNotification.toObject(message.appStateFatalExceptionNotification, options); + if (message.disappearingMode != null && message.hasOwnProperty("disappearingMode")) + object.disappearingMode = $root.proto.DisappearingMode.toObject(message.disappearingMode, options); return object; }; @@ -40509,6 +21579,1594 @@ $root.proto = (function() { return ListResponseMessage; })(); + proto.Header = (function() { + + /** + * Properties of a Header. + * @memberof proto + * @interface IHeader + * @property {string|null} [title] Header title + * @property {string|null} [subtitle] Header subtitle + * @property {proto.IDocumentMessage|null} [documentMessage] Header documentMessage + * @property {proto.IImageMessage|null} [imageMessage] Header imageMessage + */ + + /** + * Constructs a new Header. + * @memberof proto + * @classdesc Represents a Header. + * @implements IHeader + * @constructor + * @param {proto.IHeader=} [properties] Properties to set + */ + function Header(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * Header title. + * @member {string} title + * @memberof proto.Header + * @instance + */ + Header.prototype.title = ""; + + /** + * Header subtitle. + * @member {string} subtitle + * @memberof proto.Header + * @instance + */ + Header.prototype.subtitle = ""; + + /** + * Header documentMessage. + * @member {proto.IDocumentMessage|null|undefined} documentMessage + * @memberof proto.Header + * @instance + */ + Header.prototype.documentMessage = null; + + /** + * Header imageMessage. + * @member {proto.IImageMessage|null|undefined} imageMessage + * @memberof proto.Header + * @instance + */ + Header.prototype.imageMessage = null; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * Header media. + * @member {"documentMessage"|"imageMessage"|undefined} media + * @memberof proto.Header + * @instance + */ + Object.defineProperty(Header.prototype, "media", { + get: $util.oneOfGetter($oneOfFields = ["documentMessage", "imageMessage"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * Creates a new Header instance using the specified properties. + * @function create + * @memberof proto.Header + * @static + * @param {proto.IHeader=} [properties] Properties to set + * @returns {proto.Header} Header instance + */ + Header.create = function create(properties) { + return new Header(properties); + }; + + /** + * Encodes the specified Header message. Does not implicitly {@link proto.Header.verify|verify} messages. + * @function encode + * @memberof proto.Header + * @static + * @param {proto.IHeader} message Header message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Header.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.title != null && Object.hasOwnProperty.call(message, "title")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.title); + if (message.subtitle != null && Object.hasOwnProperty.call(message, "subtitle")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.subtitle); + if (message.documentMessage != null && Object.hasOwnProperty.call(message, "documentMessage")) + $root.proto.DocumentMessage.encode(message.documentMessage, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.imageMessage != null && Object.hasOwnProperty.call(message, "imageMessage")) + $root.proto.ImageMessage.encode(message.imageMessage, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified Header message, length delimited. Does not implicitly {@link proto.Header.verify|verify} messages. + * @function encodeDelimited + * @memberof proto.Header + * @static + * @param {proto.IHeader} message Header message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Header.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a Header message from the specified reader or buffer. + * @function decode + * @memberof proto.Header + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {proto.Header} Header + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Header.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.Header(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.title = reader.string(); + break; + case 2: + message.subtitle = reader.string(); + break; + case 3: + message.documentMessage = $root.proto.DocumentMessage.decode(reader, reader.uint32()); + break; + case 4: + message.imageMessage = $root.proto.ImageMessage.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a Header message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof proto.Header + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {proto.Header} Header + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Header.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a Header message. + * @function verify + * @memberof proto.Header + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Header.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties = {}; + if (message.title != null && message.hasOwnProperty("title")) + if (!$util.isString(message.title)) + return "title: string expected"; + if (message.subtitle != null && message.hasOwnProperty("subtitle")) + if (!$util.isString(message.subtitle)) + return "subtitle: string expected"; + if (message.documentMessage != null && message.hasOwnProperty("documentMessage")) { + properties.media = 1; + { + var error = $root.proto.DocumentMessage.verify(message.documentMessage); + if (error) + return "documentMessage." + error; + } + } + if (message.imageMessage != null && message.hasOwnProperty("imageMessage")) { + if (properties.media === 1) + return "media: multiple values"; + properties.media = 1; + { + var error = $root.proto.ImageMessage.verify(message.imageMessage); + if (error) + return "imageMessage." + error; + } + } + return null; + }; + + /** + * Creates a Header message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof proto.Header + * @static + * @param {Object.} object Plain object + * @returns {proto.Header} Header + */ + Header.fromObject = function fromObject(object) { + if (object instanceof $root.proto.Header) + return object; + var message = new $root.proto.Header(); + if (object.title != null) + message.title = String(object.title); + if (object.subtitle != null) + message.subtitle = String(object.subtitle); + if (object.documentMessage != null) { + if (typeof object.documentMessage !== "object") + throw TypeError(".proto.Header.documentMessage: object expected"); + message.documentMessage = $root.proto.DocumentMessage.fromObject(object.documentMessage); + } + if (object.imageMessage != null) { + if (typeof object.imageMessage !== "object") + throw TypeError(".proto.Header.imageMessage: object expected"); + message.imageMessage = $root.proto.ImageMessage.fromObject(object.imageMessage); + } + return message; + }; + + /** + * Creates a plain object from a Header message. Also converts values to other types if specified. + * @function toObject + * @memberof proto.Header + * @static + * @param {proto.Header} message Header + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Header.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.title = ""; + object.subtitle = ""; + } + if (message.title != null && message.hasOwnProperty("title")) + object.title = message.title; + if (message.subtitle != null && message.hasOwnProperty("subtitle")) + object.subtitle = message.subtitle; + if (message.documentMessage != null && message.hasOwnProperty("documentMessage")) { + object.documentMessage = $root.proto.DocumentMessage.toObject(message.documentMessage, options); + if (options.oneofs) + object.media = "documentMessage"; + } + if (message.imageMessage != null && message.hasOwnProperty("imageMessage")) { + object.imageMessage = $root.proto.ImageMessage.toObject(message.imageMessage, options); + if (options.oneofs) + object.media = "imageMessage"; + } + return object; + }; + + /** + * Converts this Header to JSON. + * @function toJSON + * @memberof proto.Header + * @instance + * @returns {Object.} JSON object + */ + Header.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return Header; + })(); + + proto.Body = (function() { + + /** + * Properties of a Body. + * @memberof proto + * @interface IBody + * @property {string|null} [text] Body text + */ + + /** + * Constructs a new Body. + * @memberof proto + * @classdesc Represents a Body. + * @implements IBody + * @constructor + * @param {proto.IBody=} [properties] Properties to set + */ + function Body(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * Body text. + * @member {string} text + * @memberof proto.Body + * @instance + */ + Body.prototype.text = ""; + + /** + * Creates a new Body instance using the specified properties. + * @function create + * @memberof proto.Body + * @static + * @param {proto.IBody=} [properties] Properties to set + * @returns {proto.Body} Body instance + */ + Body.create = function create(properties) { + return new Body(properties); + }; + + /** + * Encodes the specified Body message. Does not implicitly {@link proto.Body.verify|verify} messages. + * @function encode + * @memberof proto.Body + * @static + * @param {proto.IBody} message Body message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Body.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.text != null && Object.hasOwnProperty.call(message, "text")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.text); + return writer; + }; + + /** + * Encodes the specified Body message, length delimited. Does not implicitly {@link proto.Body.verify|verify} messages. + * @function encodeDelimited + * @memberof proto.Body + * @static + * @param {proto.IBody} message Body message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Body.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a Body message from the specified reader or buffer. + * @function decode + * @memberof proto.Body + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {proto.Body} Body + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Body.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.Body(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.text = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a Body message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof proto.Body + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {proto.Body} Body + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Body.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a Body message. + * @function verify + * @memberof proto.Body + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Body.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.text != null && message.hasOwnProperty("text")) + if (!$util.isString(message.text)) + return "text: string expected"; + return null; + }; + + /** + * Creates a Body message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof proto.Body + * @static + * @param {Object.} object Plain object + * @returns {proto.Body} Body + */ + Body.fromObject = function fromObject(object) { + if (object instanceof $root.proto.Body) + return object; + var message = new $root.proto.Body(); + if (object.text != null) + message.text = String(object.text); + return message; + }; + + /** + * Creates a plain object from a Body message. Also converts values to other types if specified. + * @function toObject + * @memberof proto.Body + * @static + * @param {proto.Body} message Body + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Body.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.text = ""; + if (message.text != null && message.hasOwnProperty("text")) + object.text = message.text; + return object; + }; + + /** + * Converts this Body to JSON. + * @function toJSON + * @memberof proto.Body + * @instance + * @returns {Object.} JSON object + */ + Body.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return Body; + })(); + + proto.Footer = (function() { + + /** + * Properties of a Footer. + * @memberof proto + * @interface IFooter + * @property {string|null} [text] Footer text + */ + + /** + * Constructs a new Footer. + * @memberof proto + * @classdesc Represents a Footer. + * @implements IFooter + * @constructor + * @param {proto.IFooter=} [properties] Properties to set + */ + function Footer(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * Footer text. + * @member {string} text + * @memberof proto.Footer + * @instance + */ + Footer.prototype.text = ""; + + /** + * Creates a new Footer instance using the specified properties. + * @function create + * @memberof proto.Footer + * @static + * @param {proto.IFooter=} [properties] Properties to set + * @returns {proto.Footer} Footer instance + */ + Footer.create = function create(properties) { + return new Footer(properties); + }; + + /** + * Encodes the specified Footer message. Does not implicitly {@link proto.Footer.verify|verify} messages. + * @function encode + * @memberof proto.Footer + * @static + * @param {proto.IFooter} message Footer message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Footer.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.text != null && Object.hasOwnProperty.call(message, "text")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.text); + return writer; + }; + + /** + * Encodes the specified Footer message, length delimited. Does not implicitly {@link proto.Footer.verify|verify} messages. + * @function encodeDelimited + * @memberof proto.Footer + * @static + * @param {proto.IFooter} message Footer message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Footer.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a Footer message from the specified reader or buffer. + * @function decode + * @memberof proto.Footer + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {proto.Footer} Footer + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Footer.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.Footer(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.text = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a Footer message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof proto.Footer + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {proto.Footer} Footer + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Footer.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a Footer message. + * @function verify + * @memberof proto.Footer + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Footer.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.text != null && message.hasOwnProperty("text")) + if (!$util.isString(message.text)) + return "text: string expected"; + return null; + }; + + /** + * Creates a Footer message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof proto.Footer + * @static + * @param {Object.} object Plain object + * @returns {proto.Footer} Footer + */ + Footer.fromObject = function fromObject(object) { + if (object instanceof $root.proto.Footer) + return object; + var message = new $root.proto.Footer(); + if (object.text != null) + message.text = String(object.text); + return message; + }; + + /** + * Creates a plain object from a Footer message. Also converts values to other types if specified. + * @function toObject + * @memberof proto.Footer + * @static + * @param {proto.Footer} message Footer + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Footer.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.text = ""; + if (message.text != null && message.hasOwnProperty("text")) + object.text = message.text; + return object; + }; + + /** + * Converts this Footer to JSON. + * @function toJSON + * @memberof proto.Footer + * @instance + * @returns {Object.} JSON object + */ + Footer.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return Footer; + })(); + + proto.ShopsMessage = (function() { + + /** + * Properties of a ShopsMessage. + * @memberof proto + * @interface IShopsMessage + * @property {string|null} [id] ShopsMessage id + * @property {proto.ShopsMessage.ShopsMessageSurface|null} [surface] ShopsMessage surface + * @property {proto.ShopsMessage.ShopsMessageType|null} [type] ShopsMessage type + * @property {number|null} [messageVersion] ShopsMessage messageVersion + */ + + /** + * Constructs a new ShopsMessage. + * @memberof proto + * @classdesc Represents a ShopsMessage. + * @implements IShopsMessage + * @constructor + * @param {proto.IShopsMessage=} [properties] Properties to set + */ + function ShopsMessage(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * ShopsMessage id. + * @member {string} id + * @memberof proto.ShopsMessage + * @instance + */ + ShopsMessage.prototype.id = ""; + + /** + * ShopsMessage surface. + * @member {proto.ShopsMessage.ShopsMessageSurface} surface + * @memberof proto.ShopsMessage + * @instance + */ + ShopsMessage.prototype.surface = 0; + + /** + * ShopsMessage type. + * @member {proto.ShopsMessage.ShopsMessageType} type + * @memberof proto.ShopsMessage + * @instance + */ + ShopsMessage.prototype.type = 0; + + /** + * ShopsMessage messageVersion. + * @member {number} messageVersion + * @memberof proto.ShopsMessage + * @instance + */ + ShopsMessage.prototype.messageVersion = 0; + + /** + * Creates a new ShopsMessage instance using the specified properties. + * @function create + * @memberof proto.ShopsMessage + * @static + * @param {proto.IShopsMessage=} [properties] Properties to set + * @returns {proto.ShopsMessage} ShopsMessage instance + */ + ShopsMessage.create = function create(properties) { + return new ShopsMessage(properties); + }; + + /** + * Encodes the specified ShopsMessage message. Does not implicitly {@link proto.ShopsMessage.verify|verify} messages. + * @function encode + * @memberof proto.ShopsMessage + * @static + * @param {proto.IShopsMessage} message ShopsMessage message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ShopsMessage.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.id != null && Object.hasOwnProperty.call(message, "id")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.id); + if (message.surface != null && Object.hasOwnProperty.call(message, "surface")) + writer.uint32(/* id 2, wireType 0 =*/16).int32(message.surface); + if (message.type != null && Object.hasOwnProperty.call(message, "type")) + writer.uint32(/* id 3, wireType 0 =*/24).int32(message.type); + if (message.messageVersion != null && Object.hasOwnProperty.call(message, "messageVersion")) + writer.uint32(/* id 4, wireType 0 =*/32).int32(message.messageVersion); + return writer; + }; + + /** + * Encodes the specified ShopsMessage message, length delimited. Does not implicitly {@link proto.ShopsMessage.verify|verify} messages. + * @function encodeDelimited + * @memberof proto.ShopsMessage + * @static + * @param {proto.IShopsMessage} message ShopsMessage message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + ShopsMessage.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a ShopsMessage message from the specified reader or buffer. + * @function decode + * @memberof proto.ShopsMessage + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {proto.ShopsMessage} ShopsMessage + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ShopsMessage.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.ShopsMessage(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.id = reader.string(); + break; + case 2: + message.surface = reader.int32(); + break; + case 3: + message.type = reader.int32(); + break; + case 4: + message.messageVersion = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a ShopsMessage message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof proto.ShopsMessage + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {proto.ShopsMessage} ShopsMessage + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + ShopsMessage.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a ShopsMessage message. + * @function verify + * @memberof proto.ShopsMessage + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + ShopsMessage.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.id != null && message.hasOwnProperty("id")) + if (!$util.isString(message.id)) + return "id: string expected"; + if (message.surface != null && message.hasOwnProperty("surface")) + switch (message.surface) { + default: + return "surface: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.type != null && message.hasOwnProperty("type")) + switch (message.type) { + default: + return "type: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } + if (message.messageVersion != null && message.hasOwnProperty("messageVersion")) + if (!$util.isInteger(message.messageVersion)) + return "messageVersion: integer expected"; + return null; + }; + + /** + * Creates a ShopsMessage message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof proto.ShopsMessage + * @static + * @param {Object.} object Plain object + * @returns {proto.ShopsMessage} ShopsMessage + */ + ShopsMessage.fromObject = function fromObject(object) { + if (object instanceof $root.proto.ShopsMessage) + return object; + var message = new $root.proto.ShopsMessage(); + if (object.id != null) + message.id = String(object.id); + switch (object.surface) { + case "UNKNOWN_SURFACE": + case 0: + message.surface = 0; + break; + case "FB": + case 1: + message.surface = 1; + break; + case "IG": + case 2: + message.surface = 2; + break; + case "WA": + case 3: + message.surface = 3; + break; + } + switch (object.type) { + case "UNKNOWN_TYPE": + case 0: + message.type = 0; + break; + case "PRODUCT": + case 1: + message.type = 1; + break; + case "STOREFRONT": + case 2: + message.type = 2; + break; + case "COLLECTION": + case 3: + message.type = 3; + break; + } + if (object.messageVersion != null) + message.messageVersion = object.messageVersion | 0; + return message; + }; + + /** + * Creates a plain object from a ShopsMessage message. Also converts values to other types if specified. + * @function toObject + * @memberof proto.ShopsMessage + * @static + * @param {proto.ShopsMessage} message ShopsMessage + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + ShopsMessage.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.id = ""; + object.surface = options.enums === String ? "UNKNOWN_SURFACE" : 0; + object.type = options.enums === String ? "UNKNOWN_TYPE" : 0; + object.messageVersion = 0; + } + if (message.id != null && message.hasOwnProperty("id")) + object.id = message.id; + if (message.surface != null && message.hasOwnProperty("surface")) + object.surface = options.enums === String ? $root.proto.ShopsMessage.ShopsMessageSurface[message.surface] : message.surface; + if (message.type != null && message.hasOwnProperty("type")) + object.type = options.enums === String ? $root.proto.ShopsMessage.ShopsMessageType[message.type] : message.type; + if (message.messageVersion != null && message.hasOwnProperty("messageVersion")) + object.messageVersion = message.messageVersion; + return object; + }; + + /** + * Converts this ShopsMessage to JSON. + * @function toJSON + * @memberof proto.ShopsMessage + * @instance + * @returns {Object.} JSON object + */ + ShopsMessage.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + /** + * ShopsMessageSurface enum. + * @name proto.ShopsMessage.ShopsMessageSurface + * @enum {number} + * @property {number} UNKNOWN_SURFACE=0 UNKNOWN_SURFACE value + * @property {number} FB=1 FB value + * @property {number} IG=2 IG value + * @property {number} WA=3 WA value + */ + ShopsMessage.ShopsMessageSurface = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "UNKNOWN_SURFACE"] = 0; + values[valuesById[1] = "FB"] = 1; + values[valuesById[2] = "IG"] = 2; + values[valuesById[3] = "WA"] = 3; + return values; + })(); + + /** + * ShopsMessageType enum. + * @name proto.ShopsMessage.ShopsMessageType + * @enum {number} + * @property {number} UNKNOWN_TYPE=0 UNKNOWN_TYPE value + * @property {number} PRODUCT=1 PRODUCT value + * @property {number} STOREFRONT=2 STOREFRONT value + * @property {number} COLLECTION=3 COLLECTION value + */ + ShopsMessage.ShopsMessageType = (function() { + var valuesById = {}, values = Object.create(valuesById); + values[valuesById[0] = "UNKNOWN_TYPE"] = 0; + values[valuesById[1] = "PRODUCT"] = 1; + values[valuesById[2] = "STOREFRONT"] = 2; + values[valuesById[3] = "COLLECTION"] = 3; + return values; + })(); + + return ShopsMessage; + })(); + + proto.CollectionMessage = (function() { + + /** + * Properties of a CollectionMessage. + * @memberof proto + * @interface ICollectionMessage + * @property {string|null} [bizJid] CollectionMessage bizJid + * @property {string|null} [id] CollectionMessage id + * @property {number|null} [messageVersion] CollectionMessage messageVersion + */ + + /** + * Constructs a new CollectionMessage. + * @memberof proto + * @classdesc Represents a CollectionMessage. + * @implements ICollectionMessage + * @constructor + * @param {proto.ICollectionMessage=} [properties] Properties to set + */ + function CollectionMessage(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * CollectionMessage bizJid. + * @member {string} bizJid + * @memberof proto.CollectionMessage + * @instance + */ + CollectionMessage.prototype.bizJid = ""; + + /** + * CollectionMessage id. + * @member {string} id + * @memberof proto.CollectionMessage + * @instance + */ + CollectionMessage.prototype.id = ""; + + /** + * CollectionMessage messageVersion. + * @member {number} messageVersion + * @memberof proto.CollectionMessage + * @instance + */ + CollectionMessage.prototype.messageVersion = 0; + + /** + * Creates a new CollectionMessage instance using the specified properties. + * @function create + * @memberof proto.CollectionMessage + * @static + * @param {proto.ICollectionMessage=} [properties] Properties to set + * @returns {proto.CollectionMessage} CollectionMessage instance + */ + CollectionMessage.create = function create(properties) { + return new CollectionMessage(properties); + }; + + /** + * Encodes the specified CollectionMessage message. Does not implicitly {@link proto.CollectionMessage.verify|verify} messages. + * @function encode + * @memberof proto.CollectionMessage + * @static + * @param {proto.ICollectionMessage} message CollectionMessage message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CollectionMessage.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.bizJid != null && Object.hasOwnProperty.call(message, "bizJid")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.bizJid); + if (message.id != null && Object.hasOwnProperty.call(message, "id")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.id); + if (message.messageVersion != null && Object.hasOwnProperty.call(message, "messageVersion")) + writer.uint32(/* id 3, wireType 0 =*/24).int32(message.messageVersion); + return writer; + }; + + /** + * Encodes the specified CollectionMessage message, length delimited. Does not implicitly {@link proto.CollectionMessage.verify|verify} messages. + * @function encodeDelimited + * @memberof proto.CollectionMessage + * @static + * @param {proto.ICollectionMessage} message CollectionMessage message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + CollectionMessage.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a CollectionMessage message from the specified reader or buffer. + * @function decode + * @memberof proto.CollectionMessage + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {proto.CollectionMessage} CollectionMessage + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CollectionMessage.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.CollectionMessage(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.bizJid = reader.string(); + break; + case 2: + message.id = reader.string(); + break; + case 3: + message.messageVersion = reader.int32(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a CollectionMessage message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof proto.CollectionMessage + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {proto.CollectionMessage} CollectionMessage + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + CollectionMessage.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a CollectionMessage message. + * @function verify + * @memberof proto.CollectionMessage + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + CollectionMessage.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.bizJid != null && message.hasOwnProperty("bizJid")) + if (!$util.isString(message.bizJid)) + return "bizJid: string expected"; + if (message.id != null && message.hasOwnProperty("id")) + if (!$util.isString(message.id)) + return "id: string expected"; + if (message.messageVersion != null && message.hasOwnProperty("messageVersion")) + if (!$util.isInteger(message.messageVersion)) + return "messageVersion: integer expected"; + return null; + }; + + /** + * Creates a CollectionMessage message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof proto.CollectionMessage + * @static + * @param {Object.} object Plain object + * @returns {proto.CollectionMessage} CollectionMessage + */ + CollectionMessage.fromObject = function fromObject(object) { + if (object instanceof $root.proto.CollectionMessage) + return object; + var message = new $root.proto.CollectionMessage(); + if (object.bizJid != null) + message.bizJid = String(object.bizJid); + if (object.id != null) + message.id = String(object.id); + if (object.messageVersion != null) + message.messageVersion = object.messageVersion | 0; + return message; + }; + + /** + * Creates a plain object from a CollectionMessage message. Also converts values to other types if specified. + * @function toObject + * @memberof proto.CollectionMessage + * @static + * @param {proto.CollectionMessage} message CollectionMessage + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + CollectionMessage.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.bizJid = ""; + object.id = ""; + object.messageVersion = 0; + } + if (message.bizJid != null && message.hasOwnProperty("bizJid")) + object.bizJid = message.bizJid; + if (message.id != null && message.hasOwnProperty("id")) + object.id = message.id; + if (message.messageVersion != null && message.hasOwnProperty("messageVersion")) + object.messageVersion = message.messageVersion; + return object; + }; + + /** + * Converts this CollectionMessage to JSON. + * @function toJSON + * @memberof proto.CollectionMessage + * @instance + * @returns {Object.} JSON object + */ + CollectionMessage.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return CollectionMessage; + })(); + + proto.InteractiveMessage = (function() { + + /** + * Properties of an InteractiveMessage. + * @memberof proto + * @interface IInteractiveMessage + * @property {proto.IHeader|null} [header] InteractiveMessage header + * @property {proto.IBody|null} [body] InteractiveMessage body + * @property {proto.IFooter|null} [footer] InteractiveMessage footer + * @property {proto.IContextInfo|null} [contextInfo] InteractiveMessage contextInfo + * @property {proto.IShopsMessage|null} [shopsMessage] InteractiveMessage shopsMessage + * @property {proto.ICollectionMessage|null} [collectionMessage] InteractiveMessage collectionMessage + */ + + /** + * Constructs a new InteractiveMessage. + * @memberof proto + * @classdesc Represents an InteractiveMessage. + * @implements IInteractiveMessage + * @constructor + * @param {proto.IInteractiveMessage=} [properties] Properties to set + */ + function InteractiveMessage(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * InteractiveMessage header. + * @member {proto.IHeader|null|undefined} header + * @memberof proto.InteractiveMessage + * @instance + */ + InteractiveMessage.prototype.header = null; + + /** + * InteractiveMessage body. + * @member {proto.IBody|null|undefined} body + * @memberof proto.InteractiveMessage + * @instance + */ + InteractiveMessage.prototype.body = null; + + /** + * InteractiveMessage footer. + * @member {proto.IFooter|null|undefined} footer + * @memberof proto.InteractiveMessage + * @instance + */ + InteractiveMessage.prototype.footer = null; + + /** + * InteractiveMessage contextInfo. + * @member {proto.IContextInfo|null|undefined} contextInfo + * @memberof proto.InteractiveMessage + * @instance + */ + InteractiveMessage.prototype.contextInfo = null; + + /** + * InteractiveMessage shopsMessage. + * @member {proto.IShopsMessage|null|undefined} shopsMessage + * @memberof proto.InteractiveMessage + * @instance + */ + InteractiveMessage.prototype.shopsMessage = null; + + /** + * InteractiveMessage collectionMessage. + * @member {proto.ICollectionMessage|null|undefined} collectionMessage + * @memberof proto.InteractiveMessage + * @instance + */ + InteractiveMessage.prototype.collectionMessage = null; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * InteractiveMessage interactiveMessage. + * @member {"shopsMessage"|"collectionMessage"|undefined} interactiveMessage + * @memberof proto.InteractiveMessage + * @instance + */ + Object.defineProperty(InteractiveMessage.prototype, "interactiveMessage", { + get: $util.oneOfGetter($oneOfFields = ["shopsMessage", "collectionMessage"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * Creates a new InteractiveMessage instance using the specified properties. + * @function create + * @memberof proto.InteractiveMessage + * @static + * @param {proto.IInteractiveMessage=} [properties] Properties to set + * @returns {proto.InteractiveMessage} InteractiveMessage instance + */ + InteractiveMessage.create = function create(properties) { + return new InteractiveMessage(properties); + }; + + /** + * Encodes the specified InteractiveMessage message. Does not implicitly {@link proto.InteractiveMessage.verify|verify} messages. + * @function encode + * @memberof proto.InteractiveMessage + * @static + * @param {proto.IInteractiveMessage} message InteractiveMessage message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + InteractiveMessage.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.header != null && Object.hasOwnProperty.call(message, "header")) + $root.proto.Header.encode(message.header, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.body != null && Object.hasOwnProperty.call(message, "body")) + $root.proto.Body.encode(message.body, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.footer != null && Object.hasOwnProperty.call(message, "footer")) + $root.proto.Footer.encode(message.footer, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.shopsMessage != null && Object.hasOwnProperty.call(message, "shopsMessage")) + $root.proto.ShopsMessage.encode(message.shopsMessage, writer.uint32(/* id 4, wireType 2 =*/34).fork()).ldelim(); + if (message.collectionMessage != null && Object.hasOwnProperty.call(message, "collectionMessage")) + $root.proto.CollectionMessage.encode(message.collectionMessage, writer.uint32(/* id 5, wireType 2 =*/42).fork()).ldelim(); + if (message.contextInfo != null && Object.hasOwnProperty.call(message, "contextInfo")) + $root.proto.ContextInfo.encode(message.contextInfo, writer.uint32(/* id 15, wireType 2 =*/122).fork()).ldelim(); + return writer; + }; + + /** + * Encodes the specified InteractiveMessage message, length delimited. Does not implicitly {@link proto.InteractiveMessage.verify|verify} messages. + * @function encodeDelimited + * @memberof proto.InteractiveMessage + * @static + * @param {proto.IInteractiveMessage} message InteractiveMessage message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + InteractiveMessage.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes an InteractiveMessage message from the specified reader or buffer. + * @function decode + * @memberof proto.InteractiveMessage + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {proto.InteractiveMessage} InteractiveMessage + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + InteractiveMessage.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.InteractiveMessage(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.header = $root.proto.Header.decode(reader, reader.uint32()); + break; + case 2: + message.body = $root.proto.Body.decode(reader, reader.uint32()); + break; + case 3: + message.footer = $root.proto.Footer.decode(reader, reader.uint32()); + break; + case 15: + message.contextInfo = $root.proto.ContextInfo.decode(reader, reader.uint32()); + break; + case 4: + message.shopsMessage = $root.proto.ShopsMessage.decode(reader, reader.uint32()); + break; + case 5: + message.collectionMessage = $root.proto.CollectionMessage.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes an InteractiveMessage message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof proto.InteractiveMessage + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {proto.InteractiveMessage} InteractiveMessage + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + InteractiveMessage.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies an InteractiveMessage message. + * @function verify + * @memberof proto.InteractiveMessage + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + InteractiveMessage.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties = {}; + if (message.header != null && message.hasOwnProperty("header")) { + var error = $root.proto.Header.verify(message.header); + if (error) + return "header." + error; + } + if (message.body != null && message.hasOwnProperty("body")) { + var error = $root.proto.Body.verify(message.body); + if (error) + return "body." + error; + } + if (message.footer != null && message.hasOwnProperty("footer")) { + var error = $root.proto.Footer.verify(message.footer); + if (error) + return "footer." + error; + } + if (message.contextInfo != null && message.hasOwnProperty("contextInfo")) { + var error = $root.proto.ContextInfo.verify(message.contextInfo); + if (error) + return "contextInfo." + error; + } + if (message.shopsMessage != null && message.hasOwnProperty("shopsMessage")) { + properties.interactiveMessage = 1; + { + var error = $root.proto.ShopsMessage.verify(message.shopsMessage); + if (error) + return "shopsMessage." + error; + } + } + if (message.collectionMessage != null && message.hasOwnProperty("collectionMessage")) { + if (properties.interactiveMessage === 1) + return "interactiveMessage: multiple values"; + properties.interactiveMessage = 1; + { + var error = $root.proto.CollectionMessage.verify(message.collectionMessage); + if (error) + return "collectionMessage." + error; + } + } + return null; + }; + + /** + * Creates an InteractiveMessage message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof proto.InteractiveMessage + * @static + * @param {Object.} object Plain object + * @returns {proto.InteractiveMessage} InteractiveMessage + */ + InteractiveMessage.fromObject = function fromObject(object) { + if (object instanceof $root.proto.InteractiveMessage) + return object; + var message = new $root.proto.InteractiveMessage(); + if (object.header != null) { + if (typeof object.header !== "object") + throw TypeError(".proto.InteractiveMessage.header: object expected"); + message.header = $root.proto.Header.fromObject(object.header); + } + if (object.body != null) { + if (typeof object.body !== "object") + throw TypeError(".proto.InteractiveMessage.body: object expected"); + message.body = $root.proto.Body.fromObject(object.body); + } + if (object.footer != null) { + if (typeof object.footer !== "object") + throw TypeError(".proto.InteractiveMessage.footer: object expected"); + message.footer = $root.proto.Footer.fromObject(object.footer); + } + if (object.contextInfo != null) { + if (typeof object.contextInfo !== "object") + throw TypeError(".proto.InteractiveMessage.contextInfo: object expected"); + message.contextInfo = $root.proto.ContextInfo.fromObject(object.contextInfo); + } + if (object.shopsMessage != null) { + if (typeof object.shopsMessage !== "object") + throw TypeError(".proto.InteractiveMessage.shopsMessage: object expected"); + message.shopsMessage = $root.proto.ShopsMessage.fromObject(object.shopsMessage); + } + if (object.collectionMessage != null) { + if (typeof object.collectionMessage !== "object") + throw TypeError(".proto.InteractiveMessage.collectionMessage: object expected"); + message.collectionMessage = $root.proto.CollectionMessage.fromObject(object.collectionMessage); + } + return message; + }; + + /** + * Creates a plain object from an InteractiveMessage message. Also converts values to other types if specified. + * @function toObject + * @memberof proto.InteractiveMessage + * @static + * @param {proto.InteractiveMessage} message InteractiveMessage + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + InteractiveMessage.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.header = null; + object.body = null; + object.footer = null; + object.contextInfo = null; + } + if (message.header != null && message.hasOwnProperty("header")) + object.header = $root.proto.Header.toObject(message.header, options); + if (message.body != null && message.hasOwnProperty("body")) + object.body = $root.proto.Body.toObject(message.body, options); + if (message.footer != null && message.hasOwnProperty("footer")) + object.footer = $root.proto.Footer.toObject(message.footer, options); + if (message.shopsMessage != null && message.hasOwnProperty("shopsMessage")) { + object.shopsMessage = $root.proto.ShopsMessage.toObject(message.shopsMessage, options); + if (options.oneofs) + object.interactiveMessage = "shopsMessage"; + } + if (message.collectionMessage != null && message.hasOwnProperty("collectionMessage")) { + object.collectionMessage = $root.proto.CollectionMessage.toObject(message.collectionMessage, options); + if (options.oneofs) + object.interactiveMessage = "collectionMessage"; + } + if (message.contextInfo != null && message.hasOwnProperty("contextInfo")) + object.contextInfo = $root.proto.ContextInfo.toObject(message.contextInfo, options); + return object; + }; + + /** + * Converts this InteractiveMessage to JSON. + * @function toJSON + * @memberof proto.InteractiveMessage + * @instance + * @returns {Object.} JSON object + */ + InteractiveMessage.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return InteractiveMessage; + })(); + proto.GroupInviteMessage = (function() { /** @@ -42870,6 +25528,7 @@ $root.proto = (function() { * @property {proto.IButtonsMessage|null} [buttonsMessage] Message buttonsMessage * @property {proto.IButtonsResponseMessage|null} [buttonsResponseMessage] Message buttonsResponseMessage * @property {proto.IPaymentInviteMessage|null} [paymentInviteMessage] Message paymentInviteMessage + * @property {proto.IInteractiveMessage|null} [interactiveMessage] Message interactiveMessage */ /** @@ -43175,6 +25834,14 @@ $root.proto = (function() { */ Message.prototype.paymentInviteMessage = null; + /** + * Message interactiveMessage. + * @member {proto.IInteractiveMessage|null|undefined} interactiveMessage + * @memberof proto.Message + * @instance + */ + Message.prototype.interactiveMessage = null; + /** * Creates a new Message instance using the specified properties. * @function create @@ -43271,6 +25938,8 @@ $root.proto = (function() { $root.proto.ButtonsResponseMessage.encode(message.buttonsResponseMessage, writer.uint32(/* id 43, wireType 2 =*/346).fork()).ldelim(); if (message.paymentInviteMessage != null && Object.hasOwnProperty.call(message, "paymentInviteMessage")) $root.proto.PaymentInviteMessage.encode(message.paymentInviteMessage, writer.uint32(/* id 44, wireType 2 =*/354).fork()).ldelim(); + if (message.interactiveMessage != null && Object.hasOwnProperty.call(message, "interactiveMessage")) + $root.proto.InteractiveMessage.encode(message.interactiveMessage, writer.uint32(/* id 45, wireType 2 =*/362).fork()).ldelim(); return writer; }; @@ -43413,6 +26082,9 @@ $root.proto = (function() { case 44: message.paymentInviteMessage = $root.proto.PaymentInviteMessage.decode(reader, reader.uint32()); break; + case 45: + message.interactiveMessage = $root.proto.InteractiveMessage.decode(reader, reader.uint32()); + break; default: reader.skipType(tag & 7); break; @@ -43626,6 +26298,11 @@ $root.proto = (function() { if (error) return "paymentInviteMessage." + error; } + if (message.interactiveMessage != null && message.hasOwnProperty("interactiveMessage")) { + var error = $root.proto.InteractiveMessage.verify(message.interactiveMessage); + if (error) + return "interactiveMessage." + error; + } return null; }; @@ -43818,6 +26495,11 @@ $root.proto = (function() { throw TypeError(".proto.Message.paymentInviteMessage: object expected"); message.paymentInviteMessage = $root.proto.PaymentInviteMessage.fromObject(object.paymentInviteMessage); } + if (object.interactiveMessage != null) { + if (typeof object.interactiveMessage !== "object") + throw TypeError(".proto.Message.interactiveMessage: object expected"); + message.interactiveMessage = $root.proto.InteractiveMessage.fromObject(object.interactiveMessage); + } return message; }; @@ -43871,6 +26553,7 @@ $root.proto = (function() { object.buttonsMessage = null; object.buttonsResponseMessage = null; object.paymentInviteMessage = null; + object.interactiveMessage = null; } if (message.conversation != null && message.hasOwnProperty("conversation")) object.conversation = message.conversation; @@ -43944,6 +26627,8 @@ $root.proto = (function() { object.buttonsResponseMessage = $root.proto.ButtonsResponseMessage.toObject(message.buttonsResponseMessage, options); if (message.paymentInviteMessage != null && message.hasOwnProperty("paymentInviteMessage")) object.paymentInviteMessage = $root.proto.PaymentInviteMessage.toObject(message.paymentInviteMessage, options); + if (message.interactiveMessage != null && message.hasOwnProperty("interactiveMessage")) + object.interactiveMessage = $root.proto.InteractiveMessage.toObject(message.interactiveMessage, options); return object; }; @@ -43961,27 +26646,24 @@ $root.proto = (function() { return Message; })(); - proto.CompanionProps = (function() { + proto.DisappearingMode = (function() { /** - * Properties of a CompanionProps. + * Properties of a DisappearingMode. * @memberof proto - * @interface ICompanionProps - * @property {string|null} [os] CompanionProps os - * @property {proto.IAppVersion|null} [version] CompanionProps version - * @property {proto.CompanionProps.CompanionPropsPlatformType|null} [platformType] CompanionProps platformType - * @property {boolean|null} [requireFullSync] CompanionProps requireFullSync + * @interface IDisappearingMode + * @property {proto.DisappearingMode.DisappearingModeInitiator|null} [initiator] DisappearingMode initiator */ /** - * Constructs a new CompanionProps. + * Constructs a new DisappearingMode. * @memberof proto - * @classdesc Represents a CompanionProps. - * @implements ICompanionProps + * @classdesc Represents a DisappearingMode. + * @implements IDisappearingMode * @constructor - * @param {proto.ICompanionProps=} [properties] Properties to set + * @param {proto.IDisappearingMode=} [properties] Properties to set */ - function CompanionProps(properties) { + function DisappearingMode(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -43989,114 +26671,75 @@ $root.proto = (function() { } /** - * CompanionProps os. - * @member {string} os - * @memberof proto.CompanionProps + * DisappearingMode initiator. + * @member {proto.DisappearingMode.DisappearingModeInitiator} initiator + * @memberof proto.DisappearingMode * @instance */ - CompanionProps.prototype.os = ""; + DisappearingMode.prototype.initiator = 0; /** - * CompanionProps version. - * @member {proto.IAppVersion|null|undefined} version - * @memberof proto.CompanionProps - * @instance - */ - CompanionProps.prototype.version = null; - - /** - * CompanionProps platformType. - * @member {proto.CompanionProps.CompanionPropsPlatformType} platformType - * @memberof proto.CompanionProps - * @instance - */ - CompanionProps.prototype.platformType = 0; - - /** - * CompanionProps requireFullSync. - * @member {boolean} requireFullSync - * @memberof proto.CompanionProps - * @instance - */ - CompanionProps.prototype.requireFullSync = false; - - /** - * Creates a new CompanionProps instance using the specified properties. + * Creates a new DisappearingMode instance using the specified properties. * @function create - * @memberof proto.CompanionProps + * @memberof proto.DisappearingMode * @static - * @param {proto.ICompanionProps=} [properties] Properties to set - * @returns {proto.CompanionProps} CompanionProps instance + * @param {proto.IDisappearingMode=} [properties] Properties to set + * @returns {proto.DisappearingMode} DisappearingMode instance */ - CompanionProps.create = function create(properties) { - return new CompanionProps(properties); + DisappearingMode.create = function create(properties) { + return new DisappearingMode(properties); }; /** - * Encodes the specified CompanionProps message. Does not implicitly {@link proto.CompanionProps.verify|verify} messages. + * Encodes the specified DisappearingMode message. Does not implicitly {@link proto.DisappearingMode.verify|verify} messages. * @function encode - * @memberof proto.CompanionProps + * @memberof proto.DisappearingMode * @static - * @param {proto.ICompanionProps} message CompanionProps message or plain object to encode + * @param {proto.IDisappearingMode} message DisappearingMode message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - CompanionProps.encode = function encode(message, writer) { + DisappearingMode.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.os != null && Object.hasOwnProperty.call(message, "os")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.os); - if (message.version != null && Object.hasOwnProperty.call(message, "version")) - $root.proto.AppVersion.encode(message.version, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); - if (message.platformType != null && Object.hasOwnProperty.call(message, "platformType")) - writer.uint32(/* id 3, wireType 0 =*/24).int32(message.platformType); - if (message.requireFullSync != null && Object.hasOwnProperty.call(message, "requireFullSync")) - writer.uint32(/* id 4, wireType 0 =*/32).bool(message.requireFullSync); + if (message.initiator != null && Object.hasOwnProperty.call(message, "initiator")) + writer.uint32(/* id 1, wireType 0 =*/8).int32(message.initiator); return writer; }; /** - * Encodes the specified CompanionProps message, length delimited. Does not implicitly {@link proto.CompanionProps.verify|verify} messages. + * Encodes the specified DisappearingMode message, length delimited. Does not implicitly {@link proto.DisappearingMode.verify|verify} messages. * @function encodeDelimited - * @memberof proto.CompanionProps + * @memberof proto.DisappearingMode * @static - * @param {proto.ICompanionProps} message CompanionProps message or plain object to encode + * @param {proto.IDisappearingMode} message DisappearingMode message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - CompanionProps.encodeDelimited = function encodeDelimited(message, writer) { + DisappearingMode.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a CompanionProps message from the specified reader or buffer. + * Decodes a DisappearingMode message from the specified reader or buffer. * @function decode - * @memberof proto.CompanionProps + * @memberof proto.DisappearingMode * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {proto.CompanionProps} CompanionProps + * @returns {proto.DisappearingMode} DisappearingMode * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CompanionProps.decode = function decode(reader, length) { + DisappearingMode.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.CompanionProps(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.DisappearingMode(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.os = reader.string(); - break; - case 2: - message.version = $root.proto.AppVersion.decode(reader, reader.uint32()); - break; - case 3: - message.platformType = reader.int32(); - break; - case 4: - message.requireFullSync = reader.bool(); + message.initiator = reader.int32(); break; default: reader.skipType(tag & 7); @@ -44107,242 +26750,148 @@ $root.proto = (function() { }; /** - * Decodes a CompanionProps message from the specified reader or buffer, length delimited. + * Decodes a DisappearingMode message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof proto.CompanionProps + * @memberof proto.DisappearingMode * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.CompanionProps} CompanionProps + * @returns {proto.DisappearingMode} DisappearingMode * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - CompanionProps.decodeDelimited = function decodeDelimited(reader) { + DisappearingMode.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a CompanionProps message. + * Verifies a DisappearingMode message. * @function verify - * @memberof proto.CompanionProps + * @memberof proto.DisappearingMode * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - CompanionProps.verify = function verify(message) { + DisappearingMode.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.os != null && message.hasOwnProperty("os")) - if (!$util.isString(message.os)) - return "os: string expected"; - if (message.version != null && message.hasOwnProperty("version")) { - var error = $root.proto.AppVersion.verify(message.version); - if (error) - return "version." + error; - } - if (message.platformType != null && message.hasOwnProperty("platformType")) - switch (message.platformType) { + if (message.initiator != null && message.hasOwnProperty("initiator")) + switch (message.initiator) { default: - return "platformType: enum value expected"; + return "initiator: enum value expected"; case 0: case 1: case 2: - case 3: - case 4: - case 5: - case 6: - case 7: - case 8: - case 9: - case 10: - case 11: - case 12: break; } - if (message.requireFullSync != null && message.hasOwnProperty("requireFullSync")) - if (typeof message.requireFullSync !== "boolean") - return "requireFullSync: boolean expected"; return null; }; /** - * Creates a CompanionProps message from a plain object. Also converts values to their respective internal types. + * Creates a DisappearingMode message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof proto.CompanionProps + * @memberof proto.DisappearingMode * @static * @param {Object.} object Plain object - * @returns {proto.CompanionProps} CompanionProps + * @returns {proto.DisappearingMode} DisappearingMode */ - CompanionProps.fromObject = function fromObject(object) { - if (object instanceof $root.proto.CompanionProps) + DisappearingMode.fromObject = function fromObject(object) { + if (object instanceof $root.proto.DisappearingMode) return object; - var message = new $root.proto.CompanionProps(); - if (object.os != null) - message.os = String(object.os); - if (object.version != null) { - if (typeof object.version !== "object") - throw TypeError(".proto.CompanionProps.version: object expected"); - message.version = $root.proto.AppVersion.fromObject(object.version); - } - switch (object.platformType) { - case "UNKNOWN": + var message = new $root.proto.DisappearingMode(); + switch (object.initiator) { + case "CHANGED_IN_CHAT": case 0: - message.platformType = 0; + message.initiator = 0; break; - case "CHROME": + case "INITIATED_BY_ME": case 1: - message.platformType = 1; + message.initiator = 1; break; - case "FIREFOX": + case "INITIATED_BY_OTHER": case 2: - message.platformType = 2; - break; - case "IE": - case 3: - message.platformType = 3; - break; - case "OPERA": - case 4: - message.platformType = 4; - break; - case "SAFARI": - case 5: - message.platformType = 5; - break; - case "EDGE": - case 6: - message.platformType = 6; - break; - case "DESKTOP": - case 7: - message.platformType = 7; - break; - case "IPAD": - case 8: - message.platformType = 8; - break; - case "ANDROID_TABLET": - case 9: - message.platformType = 9; - break; - case "OHANA": - case 10: - message.platformType = 10; - break; - case "ALOHA": - case 11: - message.platformType = 11; - break; - case "CATALINA": - case 12: - message.platformType = 12; + message.initiator = 2; break; } - if (object.requireFullSync != null) - message.requireFullSync = Boolean(object.requireFullSync); return message; }; /** - * Creates a plain object from a CompanionProps message. Also converts values to other types if specified. + * Creates a plain object from a DisappearingMode message. Also converts values to other types if specified. * @function toObject - * @memberof proto.CompanionProps + * @memberof proto.DisappearingMode * @static - * @param {proto.CompanionProps} message CompanionProps + * @param {proto.DisappearingMode} message DisappearingMode * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - CompanionProps.toObject = function toObject(message, options) { + DisappearingMode.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; - if (options.defaults) { - object.os = ""; - object.version = null; - object.platformType = options.enums === String ? "UNKNOWN" : 0; - object.requireFullSync = false; - } - if (message.os != null && message.hasOwnProperty("os")) - object.os = message.os; - if (message.version != null && message.hasOwnProperty("version")) - object.version = $root.proto.AppVersion.toObject(message.version, options); - if (message.platformType != null && message.hasOwnProperty("platformType")) - object.platformType = options.enums === String ? $root.proto.CompanionProps.CompanionPropsPlatformType[message.platformType] : message.platformType; - if (message.requireFullSync != null && message.hasOwnProperty("requireFullSync")) - object.requireFullSync = message.requireFullSync; + if (options.defaults) + object.initiator = options.enums === String ? "CHANGED_IN_CHAT" : 0; + if (message.initiator != null && message.hasOwnProperty("initiator")) + object.initiator = options.enums === String ? $root.proto.DisappearingMode.DisappearingModeInitiator[message.initiator] : message.initiator; return object; }; /** - * Converts this CompanionProps to JSON. + * Converts this DisappearingMode to JSON. * @function toJSON - * @memberof proto.CompanionProps + * @memberof proto.DisappearingMode * @instance * @returns {Object.} JSON object */ - CompanionProps.prototype.toJSON = function toJSON() { + DisappearingMode.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; /** - * CompanionPropsPlatformType enum. - * @name proto.CompanionProps.CompanionPropsPlatformType + * DisappearingModeInitiator enum. + * @name proto.DisappearingMode.DisappearingModeInitiator * @enum {number} - * @property {number} UNKNOWN=0 UNKNOWN value - * @property {number} CHROME=1 CHROME value - * @property {number} FIREFOX=2 FIREFOX value - * @property {number} IE=3 IE value - * @property {number} OPERA=4 OPERA value - * @property {number} SAFARI=5 SAFARI value - * @property {number} EDGE=6 EDGE value - * @property {number} DESKTOP=7 DESKTOP value - * @property {number} IPAD=8 IPAD value - * @property {number} ANDROID_TABLET=9 ANDROID_TABLET value - * @property {number} OHANA=10 OHANA value - * @property {number} ALOHA=11 ALOHA value - * @property {number} CATALINA=12 CATALINA value + * @property {number} CHANGED_IN_CHAT=0 CHANGED_IN_CHAT value + * @property {number} INITIATED_BY_ME=1 INITIATED_BY_ME value + * @property {number} INITIATED_BY_OTHER=2 INITIATED_BY_OTHER value */ - CompanionProps.CompanionPropsPlatformType = (function() { + DisappearingMode.DisappearingModeInitiator = (function() { var valuesById = {}, values = Object.create(valuesById); - values[valuesById[0] = "UNKNOWN"] = 0; - values[valuesById[1] = "CHROME"] = 1; - values[valuesById[2] = "FIREFOX"] = 2; - values[valuesById[3] = "IE"] = 3; - values[valuesById[4] = "OPERA"] = 4; - values[valuesById[5] = "SAFARI"] = 5; - values[valuesById[6] = "EDGE"] = 6; - values[valuesById[7] = "DESKTOP"] = 7; - values[valuesById[8] = "IPAD"] = 8; - values[valuesById[9] = "ANDROID_TABLET"] = 9; - values[valuesById[10] = "OHANA"] = 10; - values[valuesById[11] = "ALOHA"] = 11; - values[valuesById[12] = "CATALINA"] = 12; + values[valuesById[0] = "CHANGED_IN_CHAT"] = 0; + values[valuesById[1] = "INITIATED_BY_ME"] = 1; + values[valuesById[2] = "INITIATED_BY_OTHER"] = 2; return values; })(); - return CompanionProps; + return DisappearingMode; })(); - proto.ADVSignedDeviceIdentityHMAC = (function() { + proto.PaymentBackground = (function() { /** - * Properties of a ADVSignedDeviceIdentityHMAC. + * Properties of a PaymentBackground. * @memberof proto - * @interface IADVSignedDeviceIdentityHMAC - * @property {Uint8Array|null} [details] ADVSignedDeviceIdentityHMAC details - * @property {Uint8Array|null} [hmac] ADVSignedDeviceIdentityHMAC hmac + * @interface IPaymentBackground + * @property {string|null} [id] PaymentBackground id + * @property {number|Long|null} [fileLength] PaymentBackground fileLength + * @property {number|null} [width] PaymentBackground width + * @property {number|null} [height] PaymentBackground height + * @property {string|null} [mimetype] PaymentBackground mimetype + * @property {number|null} [placeholderArgb] PaymentBackground placeholderArgb + * @property {number|null} [textArgb] PaymentBackground textArgb + * @property {number|null} [subtextArgb] PaymentBackground subtextArgb */ /** - * Constructs a new ADVSignedDeviceIdentityHMAC. + * Constructs a new PaymentBackground. * @memberof proto - * @classdesc Represents a ADVSignedDeviceIdentityHMAC. - * @implements IADVSignedDeviceIdentityHMAC + * @classdesc Represents a PaymentBackground. + * @implements IPaymentBackground * @constructor - * @param {proto.IADVSignedDeviceIdentityHMAC=} [properties] Properties to set + * @param {proto.IPaymentBackground=} [properties] Properties to set */ - function ADVSignedDeviceIdentityHMAC(properties) { + function PaymentBackground(properties) { if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -44350,1401 +26899,166 @@ $root.proto = (function() { } /** - * ADVSignedDeviceIdentityHMAC details. - * @member {Uint8Array} details - * @memberof proto.ADVSignedDeviceIdentityHMAC - * @instance - */ - ADVSignedDeviceIdentityHMAC.prototype.details = $util.newBuffer([]); - - /** - * ADVSignedDeviceIdentityHMAC hmac. - * @member {Uint8Array} hmac - * @memberof proto.ADVSignedDeviceIdentityHMAC - * @instance - */ - ADVSignedDeviceIdentityHMAC.prototype.hmac = $util.newBuffer([]); - - /** - * Creates a new ADVSignedDeviceIdentityHMAC instance using the specified properties. - * @function create - * @memberof proto.ADVSignedDeviceIdentityHMAC - * @static - * @param {proto.IADVSignedDeviceIdentityHMAC=} [properties] Properties to set - * @returns {proto.ADVSignedDeviceIdentityHMAC} ADVSignedDeviceIdentityHMAC instance - */ - ADVSignedDeviceIdentityHMAC.create = function create(properties) { - return new ADVSignedDeviceIdentityHMAC(properties); - }; - - /** - * Encodes the specified ADVSignedDeviceIdentityHMAC message. Does not implicitly {@link proto.ADVSignedDeviceIdentityHMAC.verify|verify} messages. - * @function encode - * @memberof proto.ADVSignedDeviceIdentityHMAC - * @static - * @param {proto.IADVSignedDeviceIdentityHMAC} message ADVSignedDeviceIdentityHMAC message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ADVSignedDeviceIdentityHMAC.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.details != null && Object.hasOwnProperty.call(message, "details")) - writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.details); - if (message.hmac != null && Object.hasOwnProperty.call(message, "hmac")) - writer.uint32(/* id 2, wireType 2 =*/18).bytes(message.hmac); - return writer; - }; - - /** - * Encodes the specified ADVSignedDeviceIdentityHMAC message, length delimited. Does not implicitly {@link proto.ADVSignedDeviceIdentityHMAC.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.ADVSignedDeviceIdentityHMAC - * @static - * @param {proto.IADVSignedDeviceIdentityHMAC} message ADVSignedDeviceIdentityHMAC message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ADVSignedDeviceIdentityHMAC.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a ADVSignedDeviceIdentityHMAC message from the specified reader or buffer. - * @function decode - * @memberof proto.ADVSignedDeviceIdentityHMAC - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.ADVSignedDeviceIdentityHMAC} ADVSignedDeviceIdentityHMAC - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ADVSignedDeviceIdentityHMAC.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.ADVSignedDeviceIdentityHMAC(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.details = reader.bytes(); - break; - case 2: - message.hmac = reader.bytes(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a ADVSignedDeviceIdentityHMAC message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.ADVSignedDeviceIdentityHMAC - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.ADVSignedDeviceIdentityHMAC} ADVSignedDeviceIdentityHMAC - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ADVSignedDeviceIdentityHMAC.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a ADVSignedDeviceIdentityHMAC message. - * @function verify - * @memberof proto.ADVSignedDeviceIdentityHMAC - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - ADVSignedDeviceIdentityHMAC.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.details != null && message.hasOwnProperty("details")) - if (!(message.details && typeof message.details.length === "number" || $util.isString(message.details))) - return "details: buffer expected"; - if (message.hmac != null && message.hasOwnProperty("hmac")) - if (!(message.hmac && typeof message.hmac.length === "number" || $util.isString(message.hmac))) - return "hmac: buffer expected"; - return null; - }; - - /** - * Creates a ADVSignedDeviceIdentityHMAC message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.ADVSignedDeviceIdentityHMAC - * @static - * @param {Object.} object Plain object - * @returns {proto.ADVSignedDeviceIdentityHMAC} ADVSignedDeviceIdentityHMAC - */ - ADVSignedDeviceIdentityHMAC.fromObject = function fromObject(object) { - if (object instanceof $root.proto.ADVSignedDeviceIdentityHMAC) - return object; - var message = new $root.proto.ADVSignedDeviceIdentityHMAC(); - if (object.details != null) - if (typeof object.details === "string") - $util.base64.decode(object.details, message.details = $util.newBuffer($util.base64.length(object.details)), 0); - else if (object.details.length) - message.details = object.details; - if (object.hmac != null) - if (typeof object.hmac === "string") - $util.base64.decode(object.hmac, message.hmac = $util.newBuffer($util.base64.length(object.hmac)), 0); - else if (object.hmac.length) - message.hmac = object.hmac; - return message; - }; - - /** - * Creates a plain object from a ADVSignedDeviceIdentityHMAC message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.ADVSignedDeviceIdentityHMAC - * @static - * @param {proto.ADVSignedDeviceIdentityHMAC} message ADVSignedDeviceIdentityHMAC - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ADVSignedDeviceIdentityHMAC.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - if (options.bytes === String) - object.details = ""; - else { - object.details = []; - if (options.bytes !== Array) - object.details = $util.newBuffer(object.details); - } - if (options.bytes === String) - object.hmac = ""; - else { - object.hmac = []; - if (options.bytes !== Array) - object.hmac = $util.newBuffer(object.hmac); - } - } - if (message.details != null && message.hasOwnProperty("details")) - object.details = options.bytes === String ? $util.base64.encode(message.details, 0, message.details.length) : options.bytes === Array ? Array.prototype.slice.call(message.details) : message.details; - if (message.hmac != null && message.hasOwnProperty("hmac")) - object.hmac = options.bytes === String ? $util.base64.encode(message.hmac, 0, message.hmac.length) : options.bytes === Array ? Array.prototype.slice.call(message.hmac) : message.hmac; - return object; - }; - - /** - * Converts this ADVSignedDeviceIdentityHMAC to JSON. - * @function toJSON - * @memberof proto.ADVSignedDeviceIdentityHMAC - * @instance - * @returns {Object.} JSON object - */ - ADVSignedDeviceIdentityHMAC.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return ADVSignedDeviceIdentityHMAC; - })(); - - proto.ADVSignedDeviceIdentity = (function() { - - /** - * Properties of a ADVSignedDeviceIdentity. - * @memberof proto - * @interface IADVSignedDeviceIdentity - * @property {Uint8Array|null} [details] ADVSignedDeviceIdentity details - * @property {Uint8Array|null} [accountSignatureKey] ADVSignedDeviceIdentity accountSignatureKey - * @property {Uint8Array|null} [accountSignature] ADVSignedDeviceIdentity accountSignature - * @property {Uint8Array|null} [deviceSignature] ADVSignedDeviceIdentity deviceSignature - */ - - /** - * Constructs a new ADVSignedDeviceIdentity. - * @memberof proto - * @classdesc Represents a ADVSignedDeviceIdentity. - * @implements IADVSignedDeviceIdentity - * @constructor - * @param {proto.IADVSignedDeviceIdentity=} [properties] Properties to set - */ - function ADVSignedDeviceIdentity(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * ADVSignedDeviceIdentity details. - * @member {Uint8Array} details - * @memberof proto.ADVSignedDeviceIdentity - * @instance - */ - ADVSignedDeviceIdentity.prototype.details = $util.newBuffer([]); - - /** - * ADVSignedDeviceIdentity accountSignatureKey. - * @member {Uint8Array} accountSignatureKey - * @memberof proto.ADVSignedDeviceIdentity - * @instance - */ - ADVSignedDeviceIdentity.prototype.accountSignatureKey = $util.newBuffer([]); - - /** - * ADVSignedDeviceIdentity accountSignature. - * @member {Uint8Array} accountSignature - * @memberof proto.ADVSignedDeviceIdentity - * @instance - */ - ADVSignedDeviceIdentity.prototype.accountSignature = $util.newBuffer([]); - - /** - * ADVSignedDeviceIdentity deviceSignature. - * @member {Uint8Array} deviceSignature - * @memberof proto.ADVSignedDeviceIdentity - * @instance - */ - ADVSignedDeviceIdentity.prototype.deviceSignature = $util.newBuffer([]); - - /** - * Creates a new ADVSignedDeviceIdentity instance using the specified properties. - * @function create - * @memberof proto.ADVSignedDeviceIdentity - * @static - * @param {proto.IADVSignedDeviceIdentity=} [properties] Properties to set - * @returns {proto.ADVSignedDeviceIdentity} ADVSignedDeviceIdentity instance - */ - ADVSignedDeviceIdentity.create = function create(properties) { - return new ADVSignedDeviceIdentity(properties); - }; - - /** - * Encodes the specified ADVSignedDeviceIdentity message. Does not implicitly {@link proto.ADVSignedDeviceIdentity.verify|verify} messages. - * @function encode - * @memberof proto.ADVSignedDeviceIdentity - * @static - * @param {proto.IADVSignedDeviceIdentity} message ADVSignedDeviceIdentity message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ADVSignedDeviceIdentity.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.details != null && Object.hasOwnProperty.call(message, "details")) - writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.details); - if (message.accountSignatureKey != null && Object.hasOwnProperty.call(message, "accountSignatureKey")) - writer.uint32(/* id 2, wireType 2 =*/18).bytes(message.accountSignatureKey); - if (message.accountSignature != null && Object.hasOwnProperty.call(message, "accountSignature")) - writer.uint32(/* id 3, wireType 2 =*/26).bytes(message.accountSignature); - if (message.deviceSignature != null && Object.hasOwnProperty.call(message, "deviceSignature")) - writer.uint32(/* id 4, wireType 2 =*/34).bytes(message.deviceSignature); - return writer; - }; - - /** - * Encodes the specified ADVSignedDeviceIdentity message, length delimited. Does not implicitly {@link proto.ADVSignedDeviceIdentity.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.ADVSignedDeviceIdentity - * @static - * @param {proto.IADVSignedDeviceIdentity} message ADVSignedDeviceIdentity message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ADVSignedDeviceIdentity.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a ADVSignedDeviceIdentity message from the specified reader or buffer. - * @function decode - * @memberof proto.ADVSignedDeviceIdentity - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.ADVSignedDeviceIdentity} ADVSignedDeviceIdentity - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ADVSignedDeviceIdentity.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.ADVSignedDeviceIdentity(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.details = reader.bytes(); - break; - case 2: - message.accountSignatureKey = reader.bytes(); - break; - case 3: - message.accountSignature = reader.bytes(); - break; - case 4: - message.deviceSignature = reader.bytes(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a ADVSignedDeviceIdentity message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.ADVSignedDeviceIdentity - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.ADVSignedDeviceIdentity} ADVSignedDeviceIdentity - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ADVSignedDeviceIdentity.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a ADVSignedDeviceIdentity message. - * @function verify - * @memberof proto.ADVSignedDeviceIdentity - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - ADVSignedDeviceIdentity.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.details != null && message.hasOwnProperty("details")) - if (!(message.details && typeof message.details.length === "number" || $util.isString(message.details))) - return "details: buffer expected"; - if (message.accountSignatureKey != null && message.hasOwnProperty("accountSignatureKey")) - if (!(message.accountSignatureKey && typeof message.accountSignatureKey.length === "number" || $util.isString(message.accountSignatureKey))) - return "accountSignatureKey: buffer expected"; - if (message.accountSignature != null && message.hasOwnProperty("accountSignature")) - if (!(message.accountSignature && typeof message.accountSignature.length === "number" || $util.isString(message.accountSignature))) - return "accountSignature: buffer expected"; - if (message.deviceSignature != null && message.hasOwnProperty("deviceSignature")) - if (!(message.deviceSignature && typeof message.deviceSignature.length === "number" || $util.isString(message.deviceSignature))) - return "deviceSignature: buffer expected"; - return null; - }; - - /** - * Creates a ADVSignedDeviceIdentity message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.ADVSignedDeviceIdentity - * @static - * @param {Object.} object Plain object - * @returns {proto.ADVSignedDeviceIdentity} ADVSignedDeviceIdentity - */ - ADVSignedDeviceIdentity.fromObject = function fromObject(object) { - if (object instanceof $root.proto.ADVSignedDeviceIdentity) - return object; - var message = new $root.proto.ADVSignedDeviceIdentity(); - if (object.details != null) - if (typeof object.details === "string") - $util.base64.decode(object.details, message.details = $util.newBuffer($util.base64.length(object.details)), 0); - else if (object.details.length) - message.details = object.details; - if (object.accountSignatureKey != null) - if (typeof object.accountSignatureKey === "string") - $util.base64.decode(object.accountSignatureKey, message.accountSignatureKey = $util.newBuffer($util.base64.length(object.accountSignatureKey)), 0); - else if (object.accountSignatureKey.length) - message.accountSignatureKey = object.accountSignatureKey; - if (object.accountSignature != null) - if (typeof object.accountSignature === "string") - $util.base64.decode(object.accountSignature, message.accountSignature = $util.newBuffer($util.base64.length(object.accountSignature)), 0); - else if (object.accountSignature.length) - message.accountSignature = object.accountSignature; - if (object.deviceSignature != null) - if (typeof object.deviceSignature === "string") - $util.base64.decode(object.deviceSignature, message.deviceSignature = $util.newBuffer($util.base64.length(object.deviceSignature)), 0); - else if (object.deviceSignature.length) - message.deviceSignature = object.deviceSignature; - return message; - }; - - /** - * Creates a plain object from a ADVSignedDeviceIdentity message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.ADVSignedDeviceIdentity - * @static - * @param {proto.ADVSignedDeviceIdentity} message ADVSignedDeviceIdentity - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ADVSignedDeviceIdentity.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - if (options.bytes === String) - object.details = ""; - else { - object.details = []; - if (options.bytes !== Array) - object.details = $util.newBuffer(object.details); - } - if (options.bytes === String) - object.accountSignatureKey = ""; - else { - object.accountSignatureKey = []; - if (options.bytes !== Array) - object.accountSignatureKey = $util.newBuffer(object.accountSignatureKey); - } - if (options.bytes === String) - object.accountSignature = ""; - else { - object.accountSignature = []; - if (options.bytes !== Array) - object.accountSignature = $util.newBuffer(object.accountSignature); - } - if (options.bytes === String) - object.deviceSignature = ""; - else { - object.deviceSignature = []; - if (options.bytes !== Array) - object.deviceSignature = $util.newBuffer(object.deviceSignature); - } - } - if (message.details != null && message.hasOwnProperty("details")) - object.details = options.bytes === String ? $util.base64.encode(message.details, 0, message.details.length) : options.bytes === Array ? Array.prototype.slice.call(message.details) : message.details; - if (message.accountSignatureKey != null && message.hasOwnProperty("accountSignatureKey")) - object.accountSignatureKey = options.bytes === String ? $util.base64.encode(message.accountSignatureKey, 0, message.accountSignatureKey.length) : options.bytes === Array ? Array.prototype.slice.call(message.accountSignatureKey) : message.accountSignatureKey; - if (message.accountSignature != null && message.hasOwnProperty("accountSignature")) - object.accountSignature = options.bytes === String ? $util.base64.encode(message.accountSignature, 0, message.accountSignature.length) : options.bytes === Array ? Array.prototype.slice.call(message.accountSignature) : message.accountSignature; - if (message.deviceSignature != null && message.hasOwnProperty("deviceSignature")) - object.deviceSignature = options.bytes === String ? $util.base64.encode(message.deviceSignature, 0, message.deviceSignature.length) : options.bytes === Array ? Array.prototype.slice.call(message.deviceSignature) : message.deviceSignature; - return object; - }; - - /** - * Converts this ADVSignedDeviceIdentity to JSON. - * @function toJSON - * @memberof proto.ADVSignedDeviceIdentity - * @instance - * @returns {Object.} JSON object - */ - ADVSignedDeviceIdentity.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return ADVSignedDeviceIdentity; - })(); - - proto.ADVDeviceIdentity = (function() { - - /** - * Properties of a ADVDeviceIdentity. - * @memberof proto - * @interface IADVDeviceIdentity - * @property {number|null} [rawId] ADVDeviceIdentity rawId - * @property {number|Long|null} [timestamp] ADVDeviceIdentity timestamp - * @property {number|null} [keyIndex] ADVDeviceIdentity keyIndex - */ - - /** - * Constructs a new ADVDeviceIdentity. - * @memberof proto - * @classdesc Represents a ADVDeviceIdentity. - * @implements IADVDeviceIdentity - * @constructor - * @param {proto.IADVDeviceIdentity=} [properties] Properties to set - */ - function ADVDeviceIdentity(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * ADVDeviceIdentity rawId. - * @member {number} rawId - * @memberof proto.ADVDeviceIdentity - * @instance - */ - ADVDeviceIdentity.prototype.rawId = 0; - - /** - * ADVDeviceIdentity timestamp. - * @member {number|Long} timestamp - * @memberof proto.ADVDeviceIdentity - * @instance - */ - ADVDeviceIdentity.prototype.timestamp = $util.Long ? $util.Long.fromBits(0,0,true) : 0; - - /** - * ADVDeviceIdentity keyIndex. - * @member {number} keyIndex - * @memberof proto.ADVDeviceIdentity - * @instance - */ - ADVDeviceIdentity.prototype.keyIndex = 0; - - /** - * Creates a new ADVDeviceIdentity instance using the specified properties. - * @function create - * @memberof proto.ADVDeviceIdentity - * @static - * @param {proto.IADVDeviceIdentity=} [properties] Properties to set - * @returns {proto.ADVDeviceIdentity} ADVDeviceIdentity instance - */ - ADVDeviceIdentity.create = function create(properties) { - return new ADVDeviceIdentity(properties); - }; - - /** - * Encodes the specified ADVDeviceIdentity message. Does not implicitly {@link proto.ADVDeviceIdentity.verify|verify} messages. - * @function encode - * @memberof proto.ADVDeviceIdentity - * @static - * @param {proto.IADVDeviceIdentity} message ADVDeviceIdentity message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ADVDeviceIdentity.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.rawId != null && Object.hasOwnProperty.call(message, "rawId")) - writer.uint32(/* id 1, wireType 0 =*/8).uint32(message.rawId); - if (message.timestamp != null && Object.hasOwnProperty.call(message, "timestamp")) - writer.uint32(/* id 2, wireType 0 =*/16).uint64(message.timestamp); - if (message.keyIndex != null && Object.hasOwnProperty.call(message, "keyIndex")) - writer.uint32(/* id 3, wireType 0 =*/24).uint32(message.keyIndex); - return writer; - }; - - /** - * Encodes the specified ADVDeviceIdentity message, length delimited. Does not implicitly {@link proto.ADVDeviceIdentity.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.ADVDeviceIdentity - * @static - * @param {proto.IADVDeviceIdentity} message ADVDeviceIdentity message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ADVDeviceIdentity.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a ADVDeviceIdentity message from the specified reader or buffer. - * @function decode - * @memberof proto.ADVDeviceIdentity - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.ADVDeviceIdentity} ADVDeviceIdentity - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ADVDeviceIdentity.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.ADVDeviceIdentity(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.rawId = reader.uint32(); - break; - case 2: - message.timestamp = reader.uint64(); - break; - case 3: - message.keyIndex = reader.uint32(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a ADVDeviceIdentity message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.ADVDeviceIdentity - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.ADVDeviceIdentity} ADVDeviceIdentity - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ADVDeviceIdentity.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a ADVDeviceIdentity message. - * @function verify - * @memberof proto.ADVDeviceIdentity - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - ADVDeviceIdentity.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.rawId != null && message.hasOwnProperty("rawId")) - if (!$util.isInteger(message.rawId)) - return "rawId: integer expected"; - if (message.timestamp != null && message.hasOwnProperty("timestamp")) - if (!$util.isInteger(message.timestamp) && !(message.timestamp && $util.isInteger(message.timestamp.low) && $util.isInteger(message.timestamp.high))) - return "timestamp: integer|Long expected"; - if (message.keyIndex != null && message.hasOwnProperty("keyIndex")) - if (!$util.isInteger(message.keyIndex)) - return "keyIndex: integer expected"; - return null; - }; - - /** - * Creates a ADVDeviceIdentity message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.ADVDeviceIdentity - * @static - * @param {Object.} object Plain object - * @returns {proto.ADVDeviceIdentity} ADVDeviceIdentity - */ - ADVDeviceIdentity.fromObject = function fromObject(object) { - if (object instanceof $root.proto.ADVDeviceIdentity) - return object; - var message = new $root.proto.ADVDeviceIdentity(); - if (object.rawId != null) - message.rawId = object.rawId >>> 0; - if (object.timestamp != null) - if ($util.Long) - (message.timestamp = $util.Long.fromValue(object.timestamp)).unsigned = true; - else if (typeof object.timestamp === "string") - message.timestamp = parseInt(object.timestamp, 10); - else if (typeof object.timestamp === "number") - message.timestamp = object.timestamp; - else if (typeof object.timestamp === "object") - message.timestamp = new $util.LongBits(object.timestamp.low >>> 0, object.timestamp.high >>> 0).toNumber(true); - if (object.keyIndex != null) - message.keyIndex = object.keyIndex >>> 0; - return message; - }; - - /** - * Creates a plain object from a ADVDeviceIdentity message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.ADVDeviceIdentity - * @static - * @param {proto.ADVDeviceIdentity} message ADVDeviceIdentity - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ADVDeviceIdentity.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - object.rawId = 0; - if ($util.Long) { - var long = new $util.Long(0, 0, true); - object.timestamp = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; - } else - object.timestamp = options.longs === String ? "0" : 0; - object.keyIndex = 0; - } - if (message.rawId != null && message.hasOwnProperty("rawId")) - object.rawId = message.rawId; - if (message.timestamp != null && message.hasOwnProperty("timestamp")) - if (typeof message.timestamp === "number") - object.timestamp = options.longs === String ? String(message.timestamp) : message.timestamp; - else - object.timestamp = options.longs === String ? $util.Long.prototype.toString.call(message.timestamp) : options.longs === Number ? new $util.LongBits(message.timestamp.low >>> 0, message.timestamp.high >>> 0).toNumber(true) : message.timestamp; - if (message.keyIndex != null && message.hasOwnProperty("keyIndex")) - object.keyIndex = message.keyIndex; - return object; - }; - - /** - * Converts this ADVDeviceIdentity to JSON. - * @function toJSON - * @memberof proto.ADVDeviceIdentity - * @instance - * @returns {Object.} JSON object - */ - ADVDeviceIdentity.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return ADVDeviceIdentity; - })(); - - proto.ADVSignedKeyIndexList = (function() { - - /** - * Properties of a ADVSignedKeyIndexList. - * @memberof proto - * @interface IADVSignedKeyIndexList - * @property {Uint8Array|null} [details] ADVSignedKeyIndexList details - * @property {Uint8Array|null} [accountSignature] ADVSignedKeyIndexList accountSignature - */ - - /** - * Constructs a new ADVSignedKeyIndexList. - * @memberof proto - * @classdesc Represents a ADVSignedKeyIndexList. - * @implements IADVSignedKeyIndexList - * @constructor - * @param {proto.IADVSignedKeyIndexList=} [properties] Properties to set - */ - function ADVSignedKeyIndexList(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * ADVSignedKeyIndexList details. - * @member {Uint8Array} details - * @memberof proto.ADVSignedKeyIndexList - * @instance - */ - ADVSignedKeyIndexList.prototype.details = $util.newBuffer([]); - - /** - * ADVSignedKeyIndexList accountSignature. - * @member {Uint8Array} accountSignature - * @memberof proto.ADVSignedKeyIndexList - * @instance - */ - ADVSignedKeyIndexList.prototype.accountSignature = $util.newBuffer([]); - - /** - * Creates a new ADVSignedKeyIndexList instance using the specified properties. - * @function create - * @memberof proto.ADVSignedKeyIndexList - * @static - * @param {proto.IADVSignedKeyIndexList=} [properties] Properties to set - * @returns {proto.ADVSignedKeyIndexList} ADVSignedKeyIndexList instance - */ - ADVSignedKeyIndexList.create = function create(properties) { - return new ADVSignedKeyIndexList(properties); - }; - - /** - * Encodes the specified ADVSignedKeyIndexList message. Does not implicitly {@link proto.ADVSignedKeyIndexList.verify|verify} messages. - * @function encode - * @memberof proto.ADVSignedKeyIndexList - * @static - * @param {proto.IADVSignedKeyIndexList} message ADVSignedKeyIndexList message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ADVSignedKeyIndexList.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.details != null && Object.hasOwnProperty.call(message, "details")) - writer.uint32(/* id 1, wireType 2 =*/10).bytes(message.details); - if (message.accountSignature != null && Object.hasOwnProperty.call(message, "accountSignature")) - writer.uint32(/* id 2, wireType 2 =*/18).bytes(message.accountSignature); - return writer; - }; - - /** - * Encodes the specified ADVSignedKeyIndexList message, length delimited. Does not implicitly {@link proto.ADVSignedKeyIndexList.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.ADVSignedKeyIndexList - * @static - * @param {proto.IADVSignedKeyIndexList} message ADVSignedKeyIndexList message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ADVSignedKeyIndexList.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a ADVSignedKeyIndexList message from the specified reader or buffer. - * @function decode - * @memberof proto.ADVSignedKeyIndexList - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.ADVSignedKeyIndexList} ADVSignedKeyIndexList - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ADVSignedKeyIndexList.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.ADVSignedKeyIndexList(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.details = reader.bytes(); - break; - case 2: - message.accountSignature = reader.bytes(); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a ADVSignedKeyIndexList message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.ADVSignedKeyIndexList - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.ADVSignedKeyIndexList} ADVSignedKeyIndexList - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ADVSignedKeyIndexList.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a ADVSignedKeyIndexList message. - * @function verify - * @memberof proto.ADVSignedKeyIndexList - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - ADVSignedKeyIndexList.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.details != null && message.hasOwnProperty("details")) - if (!(message.details && typeof message.details.length === "number" || $util.isString(message.details))) - return "details: buffer expected"; - if (message.accountSignature != null && message.hasOwnProperty("accountSignature")) - if (!(message.accountSignature && typeof message.accountSignature.length === "number" || $util.isString(message.accountSignature))) - return "accountSignature: buffer expected"; - return null; - }; - - /** - * Creates a ADVSignedKeyIndexList message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.ADVSignedKeyIndexList - * @static - * @param {Object.} object Plain object - * @returns {proto.ADVSignedKeyIndexList} ADVSignedKeyIndexList - */ - ADVSignedKeyIndexList.fromObject = function fromObject(object) { - if (object instanceof $root.proto.ADVSignedKeyIndexList) - return object; - var message = new $root.proto.ADVSignedKeyIndexList(); - if (object.details != null) - if (typeof object.details === "string") - $util.base64.decode(object.details, message.details = $util.newBuffer($util.base64.length(object.details)), 0); - else if (object.details.length) - message.details = object.details; - if (object.accountSignature != null) - if (typeof object.accountSignature === "string") - $util.base64.decode(object.accountSignature, message.accountSignature = $util.newBuffer($util.base64.length(object.accountSignature)), 0); - else if (object.accountSignature.length) - message.accountSignature = object.accountSignature; - return message; - }; - - /** - * Creates a plain object from a ADVSignedKeyIndexList message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.ADVSignedKeyIndexList - * @static - * @param {proto.ADVSignedKeyIndexList} message ADVSignedKeyIndexList - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ADVSignedKeyIndexList.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.defaults) { - if (options.bytes === String) - object.details = ""; - else { - object.details = []; - if (options.bytes !== Array) - object.details = $util.newBuffer(object.details); - } - if (options.bytes === String) - object.accountSignature = ""; - else { - object.accountSignature = []; - if (options.bytes !== Array) - object.accountSignature = $util.newBuffer(object.accountSignature); - } - } - if (message.details != null && message.hasOwnProperty("details")) - object.details = options.bytes === String ? $util.base64.encode(message.details, 0, message.details.length) : options.bytes === Array ? Array.prototype.slice.call(message.details) : message.details; - if (message.accountSignature != null && message.hasOwnProperty("accountSignature")) - object.accountSignature = options.bytes === String ? $util.base64.encode(message.accountSignature, 0, message.accountSignature.length) : options.bytes === Array ? Array.prototype.slice.call(message.accountSignature) : message.accountSignature; - return object; - }; - - /** - * Converts this ADVSignedKeyIndexList to JSON. - * @function toJSON - * @memberof proto.ADVSignedKeyIndexList - * @instance - * @returns {Object.} JSON object - */ - ADVSignedKeyIndexList.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return ADVSignedKeyIndexList; - })(); - - proto.ADVKeyIndexList = (function() { - - /** - * Properties of a ADVKeyIndexList. - * @memberof proto - * @interface IADVKeyIndexList - * @property {number|null} [rawId] ADVKeyIndexList rawId - * @property {number|Long|null} [timestamp] ADVKeyIndexList timestamp - * @property {number|null} [currentIndex] ADVKeyIndexList currentIndex - * @property {Array.|null} [validIndexes] ADVKeyIndexList validIndexes - */ - - /** - * Constructs a new ADVKeyIndexList. - * @memberof proto - * @classdesc Represents a ADVKeyIndexList. - * @implements IADVKeyIndexList - * @constructor - * @param {proto.IADVKeyIndexList=} [properties] Properties to set - */ - function ADVKeyIndexList(properties) { - this.validIndexes = []; - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * ADVKeyIndexList rawId. - * @member {number} rawId - * @memberof proto.ADVKeyIndexList - * @instance - */ - ADVKeyIndexList.prototype.rawId = 0; - - /** - * ADVKeyIndexList timestamp. - * @member {number|Long} timestamp - * @memberof proto.ADVKeyIndexList - * @instance - */ - ADVKeyIndexList.prototype.timestamp = $util.Long ? $util.Long.fromBits(0,0,true) : 0; - - /** - * ADVKeyIndexList currentIndex. - * @member {number} currentIndex - * @memberof proto.ADVKeyIndexList - * @instance - */ - ADVKeyIndexList.prototype.currentIndex = 0; - - /** - * ADVKeyIndexList validIndexes. - * @member {Array.} validIndexes - * @memberof proto.ADVKeyIndexList - * @instance - */ - ADVKeyIndexList.prototype.validIndexes = $util.emptyArray; - - /** - * Creates a new ADVKeyIndexList instance using the specified properties. - * @function create - * @memberof proto.ADVKeyIndexList - * @static - * @param {proto.IADVKeyIndexList=} [properties] Properties to set - * @returns {proto.ADVKeyIndexList} ADVKeyIndexList instance - */ - ADVKeyIndexList.create = function create(properties) { - return new ADVKeyIndexList(properties); - }; - - /** - * Encodes the specified ADVKeyIndexList message. Does not implicitly {@link proto.ADVKeyIndexList.verify|verify} messages. - * @function encode - * @memberof proto.ADVKeyIndexList - * @static - * @param {proto.IADVKeyIndexList} message ADVKeyIndexList message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ADVKeyIndexList.encode = function encode(message, writer) { - if (!writer) - writer = $Writer.create(); - if (message.rawId != null && Object.hasOwnProperty.call(message, "rawId")) - writer.uint32(/* id 1, wireType 0 =*/8).uint32(message.rawId); - if (message.timestamp != null && Object.hasOwnProperty.call(message, "timestamp")) - writer.uint32(/* id 2, wireType 0 =*/16).uint64(message.timestamp); - if (message.currentIndex != null && Object.hasOwnProperty.call(message, "currentIndex")) - writer.uint32(/* id 3, wireType 0 =*/24).uint32(message.currentIndex); - if (message.validIndexes != null && message.validIndexes.length) { - writer.uint32(/* id 4, wireType 2 =*/34).fork(); - for (var i = 0; i < message.validIndexes.length; ++i) - writer.uint32(message.validIndexes[i]); - writer.ldelim(); - } - return writer; - }; - - /** - * Encodes the specified ADVKeyIndexList message, length delimited. Does not implicitly {@link proto.ADVKeyIndexList.verify|verify} messages. - * @function encodeDelimited - * @memberof proto.ADVKeyIndexList - * @static - * @param {proto.IADVKeyIndexList} message ADVKeyIndexList message or plain object to encode - * @param {$protobuf.Writer} [writer] Writer to encode to - * @returns {$protobuf.Writer} Writer - */ - ADVKeyIndexList.encodeDelimited = function encodeDelimited(message, writer) { - return this.encode(message, writer).ldelim(); - }; - - /** - * Decodes a ADVKeyIndexList message from the specified reader or buffer. - * @function decode - * @memberof proto.ADVKeyIndexList - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @param {number} [length] Message length if known beforehand - * @returns {proto.ADVKeyIndexList} ADVKeyIndexList - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ADVKeyIndexList.decode = function decode(reader, length) { - if (!(reader instanceof $Reader)) - reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.ADVKeyIndexList(); - while (reader.pos < end) { - var tag = reader.uint32(); - switch (tag >>> 3) { - case 1: - message.rawId = reader.uint32(); - break; - case 2: - message.timestamp = reader.uint64(); - break; - case 3: - message.currentIndex = reader.uint32(); - break; - case 4: - if (!(message.validIndexes && message.validIndexes.length)) - message.validIndexes = []; - if ((tag & 7) === 2) { - var end2 = reader.uint32() + reader.pos; - while (reader.pos < end2) - message.validIndexes.push(reader.uint32()); - } else - message.validIndexes.push(reader.uint32()); - break; - default: - reader.skipType(tag & 7); - break; - } - } - return message; - }; - - /** - * Decodes a ADVKeyIndexList message from the specified reader or buffer, length delimited. - * @function decodeDelimited - * @memberof proto.ADVKeyIndexList - * @static - * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.ADVKeyIndexList} ADVKeyIndexList - * @throws {Error} If the payload is not a reader or valid buffer - * @throws {$protobuf.util.ProtocolError} If required fields are missing - */ - ADVKeyIndexList.decodeDelimited = function decodeDelimited(reader) { - if (!(reader instanceof $Reader)) - reader = new $Reader(reader); - return this.decode(reader, reader.uint32()); - }; - - /** - * Verifies a ADVKeyIndexList message. - * @function verify - * @memberof proto.ADVKeyIndexList - * @static - * @param {Object.} message Plain object to verify - * @returns {string|null} `null` if valid, otherwise the reason why it is not - */ - ADVKeyIndexList.verify = function verify(message) { - if (typeof message !== "object" || message === null) - return "object expected"; - if (message.rawId != null && message.hasOwnProperty("rawId")) - if (!$util.isInteger(message.rawId)) - return "rawId: integer expected"; - if (message.timestamp != null && message.hasOwnProperty("timestamp")) - if (!$util.isInteger(message.timestamp) && !(message.timestamp && $util.isInteger(message.timestamp.low) && $util.isInteger(message.timestamp.high))) - return "timestamp: integer|Long expected"; - if (message.currentIndex != null && message.hasOwnProperty("currentIndex")) - if (!$util.isInteger(message.currentIndex)) - return "currentIndex: integer expected"; - if (message.validIndexes != null && message.hasOwnProperty("validIndexes")) { - if (!Array.isArray(message.validIndexes)) - return "validIndexes: array expected"; - for (var i = 0; i < message.validIndexes.length; ++i) - if (!$util.isInteger(message.validIndexes[i])) - return "validIndexes: integer[] expected"; - } - return null; - }; - - /** - * Creates a ADVKeyIndexList message from a plain object. Also converts values to their respective internal types. - * @function fromObject - * @memberof proto.ADVKeyIndexList - * @static - * @param {Object.} object Plain object - * @returns {proto.ADVKeyIndexList} ADVKeyIndexList - */ - ADVKeyIndexList.fromObject = function fromObject(object) { - if (object instanceof $root.proto.ADVKeyIndexList) - return object; - var message = new $root.proto.ADVKeyIndexList(); - if (object.rawId != null) - message.rawId = object.rawId >>> 0; - if (object.timestamp != null) - if ($util.Long) - (message.timestamp = $util.Long.fromValue(object.timestamp)).unsigned = true; - else if (typeof object.timestamp === "string") - message.timestamp = parseInt(object.timestamp, 10); - else if (typeof object.timestamp === "number") - message.timestamp = object.timestamp; - else if (typeof object.timestamp === "object") - message.timestamp = new $util.LongBits(object.timestamp.low >>> 0, object.timestamp.high >>> 0).toNumber(true); - if (object.currentIndex != null) - message.currentIndex = object.currentIndex >>> 0; - if (object.validIndexes) { - if (!Array.isArray(object.validIndexes)) - throw TypeError(".proto.ADVKeyIndexList.validIndexes: array expected"); - message.validIndexes = []; - for (var i = 0; i < object.validIndexes.length; ++i) - message.validIndexes[i] = object.validIndexes[i] >>> 0; - } - return message; - }; - - /** - * Creates a plain object from a ADVKeyIndexList message. Also converts values to other types if specified. - * @function toObject - * @memberof proto.ADVKeyIndexList - * @static - * @param {proto.ADVKeyIndexList} message ADVKeyIndexList - * @param {$protobuf.IConversionOptions} [options] Conversion options - * @returns {Object.} Plain object - */ - ADVKeyIndexList.toObject = function toObject(message, options) { - if (!options) - options = {}; - var object = {}; - if (options.arrays || options.defaults) - object.validIndexes = []; - if (options.defaults) { - object.rawId = 0; - if ($util.Long) { - var long = new $util.Long(0, 0, true); - object.timestamp = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; - } else - object.timestamp = options.longs === String ? "0" : 0; - object.currentIndex = 0; - } - if (message.rawId != null && message.hasOwnProperty("rawId")) - object.rawId = message.rawId; - if (message.timestamp != null && message.hasOwnProperty("timestamp")) - if (typeof message.timestamp === "number") - object.timestamp = options.longs === String ? String(message.timestamp) : message.timestamp; - else - object.timestamp = options.longs === String ? $util.Long.prototype.toString.call(message.timestamp) : options.longs === Number ? new $util.LongBits(message.timestamp.low >>> 0, message.timestamp.high >>> 0).toNumber(true) : message.timestamp; - if (message.currentIndex != null && message.hasOwnProperty("currentIndex")) - object.currentIndex = message.currentIndex; - if (message.validIndexes && message.validIndexes.length) { - object.validIndexes = []; - for (var j = 0; j < message.validIndexes.length; ++j) - object.validIndexes[j] = message.validIndexes[j]; - } - return object; - }; - - /** - * Converts this ADVKeyIndexList to JSON. - * @function toJSON - * @memberof proto.ADVKeyIndexList - * @instance - * @returns {Object.} JSON object - */ - ADVKeyIndexList.prototype.toJSON = function toJSON() { - return this.constructor.toObject(this, $protobuf.util.toJSONOptions); - }; - - return ADVKeyIndexList; - })(); - - proto.MessageKey = (function() { - - /** - * Properties of a MessageKey. - * @memberof proto - * @interface IMessageKey - * @property {string|null} [remoteJid] MessageKey remoteJid - * @property {boolean|null} [fromMe] MessageKey fromMe - * @property {string|null} [id] MessageKey id - * @property {string|null} [participant] MessageKey participant - */ - - /** - * Constructs a new MessageKey. - * @memberof proto - * @classdesc Represents a MessageKey. - * @implements IMessageKey - * @constructor - * @param {proto.IMessageKey=} [properties] Properties to set - */ - function MessageKey(properties) { - if (properties) - for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) - if (properties[keys[i]] != null) - this[keys[i]] = properties[keys[i]]; - } - - /** - * MessageKey remoteJid. - * @member {string} remoteJid - * @memberof proto.MessageKey - * @instance - */ - MessageKey.prototype.remoteJid = ""; - - /** - * MessageKey fromMe. - * @member {boolean} fromMe - * @memberof proto.MessageKey - * @instance - */ - MessageKey.prototype.fromMe = false; - - /** - * MessageKey id. + * PaymentBackground id. * @member {string} id - * @memberof proto.MessageKey + * @memberof proto.PaymentBackground * @instance */ - MessageKey.prototype.id = ""; + PaymentBackground.prototype.id = ""; /** - * MessageKey participant. - * @member {string} participant - * @memberof proto.MessageKey + * PaymentBackground fileLength. + * @member {number|Long} fileLength + * @memberof proto.PaymentBackground * @instance */ - MessageKey.prototype.participant = ""; + PaymentBackground.prototype.fileLength = $util.Long ? $util.Long.fromBits(0,0,true) : 0; /** - * Creates a new MessageKey instance using the specified properties. + * PaymentBackground width. + * @member {number} width + * @memberof proto.PaymentBackground + * @instance + */ + PaymentBackground.prototype.width = 0; + + /** + * PaymentBackground height. + * @member {number} height + * @memberof proto.PaymentBackground + * @instance + */ + PaymentBackground.prototype.height = 0; + + /** + * PaymentBackground mimetype. + * @member {string} mimetype + * @memberof proto.PaymentBackground + * @instance + */ + PaymentBackground.prototype.mimetype = ""; + + /** + * PaymentBackground placeholderArgb. + * @member {number} placeholderArgb + * @memberof proto.PaymentBackground + * @instance + */ + PaymentBackground.prototype.placeholderArgb = 0; + + /** + * PaymentBackground textArgb. + * @member {number} textArgb + * @memberof proto.PaymentBackground + * @instance + */ + PaymentBackground.prototype.textArgb = 0; + + /** + * PaymentBackground subtextArgb. + * @member {number} subtextArgb + * @memberof proto.PaymentBackground + * @instance + */ + PaymentBackground.prototype.subtextArgb = 0; + + /** + * Creates a new PaymentBackground instance using the specified properties. * @function create - * @memberof proto.MessageKey + * @memberof proto.PaymentBackground * @static - * @param {proto.IMessageKey=} [properties] Properties to set - * @returns {proto.MessageKey} MessageKey instance + * @param {proto.IPaymentBackground=} [properties] Properties to set + * @returns {proto.PaymentBackground} PaymentBackground instance */ - MessageKey.create = function create(properties) { - return new MessageKey(properties); + PaymentBackground.create = function create(properties) { + return new PaymentBackground(properties); }; /** - * Encodes the specified MessageKey message. Does not implicitly {@link proto.MessageKey.verify|verify} messages. + * Encodes the specified PaymentBackground message. Does not implicitly {@link proto.PaymentBackground.verify|verify} messages. * @function encode - * @memberof proto.MessageKey + * @memberof proto.PaymentBackground * @static - * @param {proto.IMessageKey} message MessageKey message or plain object to encode + * @param {proto.IPaymentBackground} message PaymentBackground message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - MessageKey.encode = function encode(message, writer) { + PaymentBackground.encode = function encode(message, writer) { if (!writer) writer = $Writer.create(); - if (message.remoteJid != null && Object.hasOwnProperty.call(message, "remoteJid")) - writer.uint32(/* id 1, wireType 2 =*/10).string(message.remoteJid); - if (message.fromMe != null && Object.hasOwnProperty.call(message, "fromMe")) - writer.uint32(/* id 2, wireType 0 =*/16).bool(message.fromMe); if (message.id != null && Object.hasOwnProperty.call(message, "id")) - writer.uint32(/* id 3, wireType 2 =*/26).string(message.id); - if (message.participant != null && Object.hasOwnProperty.call(message, "participant")) - writer.uint32(/* id 4, wireType 2 =*/34).string(message.participant); + writer.uint32(/* id 1, wireType 2 =*/10).string(message.id); + if (message.fileLength != null && Object.hasOwnProperty.call(message, "fileLength")) + writer.uint32(/* id 2, wireType 0 =*/16).uint64(message.fileLength); + if (message.width != null && Object.hasOwnProperty.call(message, "width")) + writer.uint32(/* id 3, wireType 0 =*/24).uint32(message.width); + if (message.height != null && Object.hasOwnProperty.call(message, "height")) + writer.uint32(/* id 4, wireType 0 =*/32).uint32(message.height); + if (message.mimetype != null && Object.hasOwnProperty.call(message, "mimetype")) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.mimetype); + if (message.placeholderArgb != null && Object.hasOwnProperty.call(message, "placeholderArgb")) + writer.uint32(/* id 6, wireType 5 =*/53).fixed32(message.placeholderArgb); + if (message.textArgb != null && Object.hasOwnProperty.call(message, "textArgb")) + writer.uint32(/* id 7, wireType 5 =*/61).fixed32(message.textArgb); + if (message.subtextArgb != null && Object.hasOwnProperty.call(message, "subtextArgb")) + writer.uint32(/* id 8, wireType 5 =*/69).fixed32(message.subtextArgb); return writer; }; /** - * Encodes the specified MessageKey message, length delimited. Does not implicitly {@link proto.MessageKey.verify|verify} messages. + * Encodes the specified PaymentBackground message, length delimited. Does not implicitly {@link proto.PaymentBackground.verify|verify} messages. * @function encodeDelimited - * @memberof proto.MessageKey + * @memberof proto.PaymentBackground * @static - * @param {proto.IMessageKey} message MessageKey message or plain object to encode + * @param {proto.IPaymentBackground} message PaymentBackground message or plain object to encode * @param {$protobuf.Writer} [writer] Writer to encode to * @returns {$protobuf.Writer} Writer */ - MessageKey.encodeDelimited = function encodeDelimited(message, writer) { + PaymentBackground.encodeDelimited = function encodeDelimited(message, writer) { return this.encode(message, writer).ldelim(); }; /** - * Decodes a MessageKey message from the specified reader or buffer. + * Decodes a PaymentBackground message from the specified reader or buffer. * @function decode - * @memberof proto.MessageKey + * @memberof proto.PaymentBackground * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from * @param {number} [length] Message length if known beforehand - * @returns {proto.MessageKey} MessageKey + * @returns {proto.PaymentBackground} PaymentBackground * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MessageKey.decode = function decode(reader, length) { + PaymentBackground.decode = function decode(reader, length) { if (!(reader instanceof $Reader)) reader = $Reader.create(reader); - var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.MessageKey(); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.PaymentBackground(); while (reader.pos < end) { var tag = reader.uint32(); switch (tag >>> 3) { case 1: - message.remoteJid = reader.string(); - break; - case 2: - message.fromMe = reader.bool(); - break; - case 3: message.id = reader.string(); break; + case 2: + message.fileLength = reader.uint64(); + break; + case 3: + message.width = reader.uint32(); + break; case 4: - message.participant = reader.string(); + message.height = reader.uint32(); + break; + case 5: + message.mimetype = reader.string(); + break; + case 6: + message.placeholderArgb = reader.fixed32(); + break; + case 7: + message.textArgb = reader.fixed32(); + break; + case 8: + message.subtextArgb = reader.fixed32(); break; default: reader.skipType(tag & 7); @@ -45755,112 +27069,1710 @@ $root.proto = (function() { }; /** - * Decodes a MessageKey message from the specified reader or buffer, length delimited. + * Decodes a PaymentBackground message from the specified reader or buffer, length delimited. * @function decodeDelimited - * @memberof proto.MessageKey + * @memberof proto.PaymentBackground * @static * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from - * @returns {proto.MessageKey} MessageKey + * @returns {proto.PaymentBackground} PaymentBackground * @throws {Error} If the payload is not a reader or valid buffer * @throws {$protobuf.util.ProtocolError} If required fields are missing */ - MessageKey.decodeDelimited = function decodeDelimited(reader) { + PaymentBackground.decodeDelimited = function decodeDelimited(reader) { if (!(reader instanceof $Reader)) reader = new $Reader(reader); return this.decode(reader, reader.uint32()); }; /** - * Verifies a MessageKey message. + * Verifies a PaymentBackground message. * @function verify - * @memberof proto.MessageKey + * @memberof proto.PaymentBackground * @static * @param {Object.} message Plain object to verify * @returns {string|null} `null` if valid, otherwise the reason why it is not */ - MessageKey.verify = function verify(message) { + PaymentBackground.verify = function verify(message) { if (typeof message !== "object" || message === null) return "object expected"; - if (message.remoteJid != null && message.hasOwnProperty("remoteJid")) - if (!$util.isString(message.remoteJid)) - return "remoteJid: string expected"; - if (message.fromMe != null && message.hasOwnProperty("fromMe")) - if (typeof message.fromMe !== "boolean") - return "fromMe: boolean expected"; if (message.id != null && message.hasOwnProperty("id")) if (!$util.isString(message.id)) return "id: string expected"; - if (message.participant != null && message.hasOwnProperty("participant")) - if (!$util.isString(message.participant)) - return "participant: string expected"; + if (message.fileLength != null && message.hasOwnProperty("fileLength")) + if (!$util.isInteger(message.fileLength) && !(message.fileLength && $util.isInteger(message.fileLength.low) && $util.isInteger(message.fileLength.high))) + return "fileLength: integer|Long expected"; + if (message.width != null && message.hasOwnProperty("width")) + if (!$util.isInteger(message.width)) + return "width: integer expected"; + if (message.height != null && message.hasOwnProperty("height")) + if (!$util.isInteger(message.height)) + return "height: integer expected"; + if (message.mimetype != null && message.hasOwnProperty("mimetype")) + if (!$util.isString(message.mimetype)) + return "mimetype: string expected"; + if (message.placeholderArgb != null && message.hasOwnProperty("placeholderArgb")) + if (!$util.isInteger(message.placeholderArgb)) + return "placeholderArgb: integer expected"; + if (message.textArgb != null && message.hasOwnProperty("textArgb")) + if (!$util.isInteger(message.textArgb)) + return "textArgb: integer expected"; + if (message.subtextArgb != null && message.hasOwnProperty("subtextArgb")) + if (!$util.isInteger(message.subtextArgb)) + return "subtextArgb: integer expected"; return null; }; /** - * Creates a MessageKey message from a plain object. Also converts values to their respective internal types. + * Creates a PaymentBackground message from a plain object. Also converts values to their respective internal types. * @function fromObject - * @memberof proto.MessageKey + * @memberof proto.PaymentBackground * @static * @param {Object.} object Plain object - * @returns {proto.MessageKey} MessageKey + * @returns {proto.PaymentBackground} PaymentBackground */ - MessageKey.fromObject = function fromObject(object) { - if (object instanceof $root.proto.MessageKey) + PaymentBackground.fromObject = function fromObject(object) { + if (object instanceof $root.proto.PaymentBackground) return object; - var message = new $root.proto.MessageKey(); - if (object.remoteJid != null) - message.remoteJid = String(object.remoteJid); - if (object.fromMe != null) - message.fromMe = Boolean(object.fromMe); + var message = new $root.proto.PaymentBackground(); if (object.id != null) message.id = String(object.id); - if (object.participant != null) - message.participant = String(object.participant); + if (object.fileLength != null) + if ($util.Long) + (message.fileLength = $util.Long.fromValue(object.fileLength)).unsigned = true; + else if (typeof object.fileLength === "string") + message.fileLength = parseInt(object.fileLength, 10); + else if (typeof object.fileLength === "number") + message.fileLength = object.fileLength; + else if (typeof object.fileLength === "object") + message.fileLength = new $util.LongBits(object.fileLength.low >>> 0, object.fileLength.high >>> 0).toNumber(true); + if (object.width != null) + message.width = object.width >>> 0; + if (object.height != null) + message.height = object.height >>> 0; + if (object.mimetype != null) + message.mimetype = String(object.mimetype); + if (object.placeholderArgb != null) + message.placeholderArgb = object.placeholderArgb >>> 0; + if (object.textArgb != null) + message.textArgb = object.textArgb >>> 0; + if (object.subtextArgb != null) + message.subtextArgb = object.subtextArgb >>> 0; return message; }; /** - * Creates a plain object from a MessageKey message. Also converts values to other types if specified. + * Creates a plain object from a PaymentBackground message. Also converts values to other types if specified. * @function toObject - * @memberof proto.MessageKey + * @memberof proto.PaymentBackground * @static - * @param {proto.MessageKey} message MessageKey + * @param {proto.PaymentBackground} message PaymentBackground * @param {$protobuf.IConversionOptions} [options] Conversion options * @returns {Object.} Plain object */ - MessageKey.toObject = function toObject(message, options) { + PaymentBackground.toObject = function toObject(message, options) { if (!options) options = {}; var object = {}; if (options.defaults) { - object.remoteJid = ""; - object.fromMe = false; object.id = ""; - object.participant = ""; + if ($util.Long) { + var long = new $util.Long(0, 0, true); + object.fileLength = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; + } else + object.fileLength = options.longs === String ? "0" : 0; + object.width = 0; + object.height = 0; + object.mimetype = ""; + object.placeholderArgb = 0; + object.textArgb = 0; + object.subtextArgb = 0; } - if (message.remoteJid != null && message.hasOwnProperty("remoteJid")) - object.remoteJid = message.remoteJid; - if (message.fromMe != null && message.hasOwnProperty("fromMe")) - object.fromMe = message.fromMe; if (message.id != null && message.hasOwnProperty("id")) object.id = message.id; - if (message.participant != null && message.hasOwnProperty("participant")) - object.participant = message.participant; + if (message.fileLength != null && message.hasOwnProperty("fileLength")) + if (typeof message.fileLength === "number") + object.fileLength = options.longs === String ? String(message.fileLength) : message.fileLength; + else + object.fileLength = options.longs === String ? $util.Long.prototype.toString.call(message.fileLength) : options.longs === Number ? new $util.LongBits(message.fileLength.low >>> 0, message.fileLength.high >>> 0).toNumber(true) : message.fileLength; + if (message.width != null && message.hasOwnProperty("width")) + object.width = message.width; + if (message.height != null && message.hasOwnProperty("height")) + object.height = message.height; + if (message.mimetype != null && message.hasOwnProperty("mimetype")) + object.mimetype = message.mimetype; + if (message.placeholderArgb != null && message.hasOwnProperty("placeholderArgb")) + object.placeholderArgb = message.placeholderArgb; + if (message.textArgb != null && message.hasOwnProperty("textArgb")) + object.textArgb = message.textArgb; + if (message.subtextArgb != null && message.hasOwnProperty("subtextArgb")) + object.subtextArgb = message.subtextArgb; return object; }; /** - * Converts this MessageKey to JSON. + * Converts this PaymentBackground to JSON. * @function toJSON - * @memberof proto.MessageKey + * @memberof proto.PaymentBackground * @instance * @returns {Object.} JSON object */ - MessageKey.prototype.toJSON = function toJSON() { + PaymentBackground.prototype.toJSON = function toJSON() { return this.constructor.toObject(this, $protobuf.util.toJSONOptions); }; - return MessageKey; + return PaymentBackground; + })(); + + proto.Money = (function() { + + /** + * Properties of a Money. + * @memberof proto + * @interface IMoney + * @property {number|Long|null} [value] Money value + * @property {number|null} [offset] Money offset + * @property {string|null} [currencyCode] Money currencyCode + */ + + /** + * Constructs a new Money. + * @memberof proto + * @classdesc Represents a Money. + * @implements IMoney + * @constructor + * @param {proto.IMoney=} [properties] Properties to set + */ + function Money(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * Money value. + * @member {number|Long} value + * @memberof proto.Money + * @instance + */ + Money.prototype.value = $util.Long ? $util.Long.fromBits(0,0,false) : 0; + + /** + * Money offset. + * @member {number} offset + * @memberof proto.Money + * @instance + */ + Money.prototype.offset = 0; + + /** + * Money currencyCode. + * @member {string} currencyCode + * @memberof proto.Money + * @instance + */ + Money.prototype.currencyCode = ""; + + /** + * Creates a new Money instance using the specified properties. + * @function create + * @memberof proto.Money + * @static + * @param {proto.IMoney=} [properties] Properties to set + * @returns {proto.Money} Money instance + */ + Money.create = function create(properties) { + return new Money(properties); + }; + + /** + * Encodes the specified Money message. Does not implicitly {@link proto.Money.verify|verify} messages. + * @function encode + * @memberof proto.Money + * @static + * @param {proto.IMoney} message Money message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Money.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.value != null && Object.hasOwnProperty.call(message, "value")) + writer.uint32(/* id 1, wireType 0 =*/8).int64(message.value); + if (message.offset != null && Object.hasOwnProperty.call(message, "offset")) + writer.uint32(/* id 2, wireType 0 =*/16).uint32(message.offset); + if (message.currencyCode != null && Object.hasOwnProperty.call(message, "currencyCode")) + writer.uint32(/* id 3, wireType 2 =*/26).string(message.currencyCode); + return writer; + }; + + /** + * Encodes the specified Money message, length delimited. Does not implicitly {@link proto.Money.verify|verify} messages. + * @function encodeDelimited + * @memberof proto.Money + * @static + * @param {proto.IMoney} message Money message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + Money.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a Money message from the specified reader or buffer. + * @function decode + * @memberof proto.Money + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {proto.Money} Money + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Money.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.Money(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.value = reader.int64(); + break; + case 2: + message.offset = reader.uint32(); + break; + case 3: + message.currencyCode = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a Money message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof proto.Money + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {proto.Money} Money + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + Money.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a Money message. + * @function verify + * @memberof proto.Money + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + Money.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.value != null && message.hasOwnProperty("value")) + if (!$util.isInteger(message.value) && !(message.value && $util.isInteger(message.value.low) && $util.isInteger(message.value.high))) + return "value: integer|Long expected"; + if (message.offset != null && message.hasOwnProperty("offset")) + if (!$util.isInteger(message.offset)) + return "offset: integer expected"; + if (message.currencyCode != null && message.hasOwnProperty("currencyCode")) + if (!$util.isString(message.currencyCode)) + return "currencyCode: string expected"; + return null; + }; + + /** + * Creates a Money message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof proto.Money + * @static + * @param {Object.} object Plain object + * @returns {proto.Money} Money + */ + Money.fromObject = function fromObject(object) { + if (object instanceof $root.proto.Money) + return object; + var message = new $root.proto.Money(); + if (object.value != null) + if ($util.Long) + (message.value = $util.Long.fromValue(object.value)).unsigned = false; + else if (typeof object.value === "string") + message.value = parseInt(object.value, 10); + else if (typeof object.value === "number") + message.value = object.value; + else if (typeof object.value === "object") + message.value = new $util.LongBits(object.value.low >>> 0, object.value.high >>> 0).toNumber(); + if (object.offset != null) + message.offset = object.offset >>> 0; + if (object.currencyCode != null) + message.currencyCode = String(object.currencyCode); + return message; + }; + + /** + * Creates a plain object from a Money message. Also converts values to other types if specified. + * @function toObject + * @memberof proto.Money + * @static + * @param {proto.Money} message Money + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + Money.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.value = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; + } else + object.value = options.longs === String ? "0" : 0; + object.offset = 0; + object.currencyCode = ""; + } + if (message.value != null && message.hasOwnProperty("value")) + if (typeof message.value === "number") + object.value = options.longs === String ? String(message.value) : message.value; + else + object.value = options.longs === String ? $util.Long.prototype.toString.call(message.value) : options.longs === Number ? new $util.LongBits(message.value.low >>> 0, message.value.high >>> 0).toNumber() : message.value; + if (message.offset != null && message.hasOwnProperty("offset")) + object.offset = message.offset; + if (message.currencyCode != null && message.hasOwnProperty("currencyCode")) + object.currencyCode = message.currencyCode; + return object; + }; + + /** + * Converts this Money to JSON. + * @function toJSON + * @memberof proto.Money + * @instance + * @returns {Object.} JSON object + */ + Money.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return Money; + })(); + + proto.HydratedQuickReplyButton = (function() { + + /** + * Properties of a HydratedQuickReplyButton. + * @memberof proto + * @interface IHydratedQuickReplyButton + * @property {string|null} [displayText] HydratedQuickReplyButton displayText + * @property {string|null} [id] HydratedQuickReplyButton id + */ + + /** + * Constructs a new HydratedQuickReplyButton. + * @memberof proto + * @classdesc Represents a HydratedQuickReplyButton. + * @implements IHydratedQuickReplyButton + * @constructor + * @param {proto.IHydratedQuickReplyButton=} [properties] Properties to set + */ + function HydratedQuickReplyButton(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * HydratedQuickReplyButton displayText. + * @member {string} displayText + * @memberof proto.HydratedQuickReplyButton + * @instance + */ + HydratedQuickReplyButton.prototype.displayText = ""; + + /** + * HydratedQuickReplyButton id. + * @member {string} id + * @memberof proto.HydratedQuickReplyButton + * @instance + */ + HydratedQuickReplyButton.prototype.id = ""; + + /** + * Creates a new HydratedQuickReplyButton instance using the specified properties. + * @function create + * @memberof proto.HydratedQuickReplyButton + * @static + * @param {proto.IHydratedQuickReplyButton=} [properties] Properties to set + * @returns {proto.HydratedQuickReplyButton} HydratedQuickReplyButton instance + */ + HydratedQuickReplyButton.create = function create(properties) { + return new HydratedQuickReplyButton(properties); + }; + + /** + * Encodes the specified HydratedQuickReplyButton message. Does not implicitly {@link proto.HydratedQuickReplyButton.verify|verify} messages. + * @function encode + * @memberof proto.HydratedQuickReplyButton + * @static + * @param {proto.IHydratedQuickReplyButton} message HydratedQuickReplyButton message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HydratedQuickReplyButton.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.displayText != null && Object.hasOwnProperty.call(message, "displayText")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.displayText); + if (message.id != null && Object.hasOwnProperty.call(message, "id")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.id); + return writer; + }; + + /** + * Encodes the specified HydratedQuickReplyButton message, length delimited. Does not implicitly {@link proto.HydratedQuickReplyButton.verify|verify} messages. + * @function encodeDelimited + * @memberof proto.HydratedQuickReplyButton + * @static + * @param {proto.IHydratedQuickReplyButton} message HydratedQuickReplyButton message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HydratedQuickReplyButton.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a HydratedQuickReplyButton message from the specified reader or buffer. + * @function decode + * @memberof proto.HydratedQuickReplyButton + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {proto.HydratedQuickReplyButton} HydratedQuickReplyButton + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HydratedQuickReplyButton.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.HydratedQuickReplyButton(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.displayText = reader.string(); + break; + case 2: + message.id = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a HydratedQuickReplyButton message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof proto.HydratedQuickReplyButton + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {proto.HydratedQuickReplyButton} HydratedQuickReplyButton + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HydratedQuickReplyButton.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a HydratedQuickReplyButton message. + * @function verify + * @memberof proto.HydratedQuickReplyButton + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + HydratedQuickReplyButton.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.displayText != null && message.hasOwnProperty("displayText")) + if (!$util.isString(message.displayText)) + return "displayText: string expected"; + if (message.id != null && message.hasOwnProperty("id")) + if (!$util.isString(message.id)) + return "id: string expected"; + return null; + }; + + /** + * Creates a HydratedQuickReplyButton message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof proto.HydratedQuickReplyButton + * @static + * @param {Object.} object Plain object + * @returns {proto.HydratedQuickReplyButton} HydratedQuickReplyButton + */ + HydratedQuickReplyButton.fromObject = function fromObject(object) { + if (object instanceof $root.proto.HydratedQuickReplyButton) + return object; + var message = new $root.proto.HydratedQuickReplyButton(); + if (object.displayText != null) + message.displayText = String(object.displayText); + if (object.id != null) + message.id = String(object.id); + return message; + }; + + /** + * Creates a plain object from a HydratedQuickReplyButton message. Also converts values to other types if specified. + * @function toObject + * @memberof proto.HydratedQuickReplyButton + * @static + * @param {proto.HydratedQuickReplyButton} message HydratedQuickReplyButton + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + HydratedQuickReplyButton.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.displayText = ""; + object.id = ""; + } + if (message.displayText != null && message.hasOwnProperty("displayText")) + object.displayText = message.displayText; + if (message.id != null && message.hasOwnProperty("id")) + object.id = message.id; + return object; + }; + + /** + * Converts this HydratedQuickReplyButton to JSON. + * @function toJSON + * @memberof proto.HydratedQuickReplyButton + * @instance + * @returns {Object.} JSON object + */ + HydratedQuickReplyButton.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return HydratedQuickReplyButton; + })(); + + proto.HydratedURLButton = (function() { + + /** + * Properties of a HydratedURLButton. + * @memberof proto + * @interface IHydratedURLButton + * @property {string|null} [displayText] HydratedURLButton displayText + * @property {string|null} [url] HydratedURLButton url + */ + + /** + * Constructs a new HydratedURLButton. + * @memberof proto + * @classdesc Represents a HydratedURLButton. + * @implements IHydratedURLButton + * @constructor + * @param {proto.IHydratedURLButton=} [properties] Properties to set + */ + function HydratedURLButton(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * HydratedURLButton displayText. + * @member {string} displayText + * @memberof proto.HydratedURLButton + * @instance + */ + HydratedURLButton.prototype.displayText = ""; + + /** + * HydratedURLButton url. + * @member {string} url + * @memberof proto.HydratedURLButton + * @instance + */ + HydratedURLButton.prototype.url = ""; + + /** + * Creates a new HydratedURLButton instance using the specified properties. + * @function create + * @memberof proto.HydratedURLButton + * @static + * @param {proto.IHydratedURLButton=} [properties] Properties to set + * @returns {proto.HydratedURLButton} HydratedURLButton instance + */ + HydratedURLButton.create = function create(properties) { + return new HydratedURLButton(properties); + }; + + /** + * Encodes the specified HydratedURLButton message. Does not implicitly {@link proto.HydratedURLButton.verify|verify} messages. + * @function encode + * @memberof proto.HydratedURLButton + * @static + * @param {proto.IHydratedURLButton} message HydratedURLButton message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HydratedURLButton.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.displayText != null && Object.hasOwnProperty.call(message, "displayText")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.displayText); + if (message.url != null && Object.hasOwnProperty.call(message, "url")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.url); + return writer; + }; + + /** + * Encodes the specified HydratedURLButton message, length delimited. Does not implicitly {@link proto.HydratedURLButton.verify|verify} messages. + * @function encodeDelimited + * @memberof proto.HydratedURLButton + * @static + * @param {proto.IHydratedURLButton} message HydratedURLButton message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HydratedURLButton.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a HydratedURLButton message from the specified reader or buffer. + * @function decode + * @memberof proto.HydratedURLButton + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {proto.HydratedURLButton} HydratedURLButton + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HydratedURLButton.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.HydratedURLButton(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.displayText = reader.string(); + break; + case 2: + message.url = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a HydratedURLButton message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof proto.HydratedURLButton + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {proto.HydratedURLButton} HydratedURLButton + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HydratedURLButton.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a HydratedURLButton message. + * @function verify + * @memberof proto.HydratedURLButton + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + HydratedURLButton.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.displayText != null && message.hasOwnProperty("displayText")) + if (!$util.isString(message.displayText)) + return "displayText: string expected"; + if (message.url != null && message.hasOwnProperty("url")) + if (!$util.isString(message.url)) + return "url: string expected"; + return null; + }; + + /** + * Creates a HydratedURLButton message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof proto.HydratedURLButton + * @static + * @param {Object.} object Plain object + * @returns {proto.HydratedURLButton} HydratedURLButton + */ + HydratedURLButton.fromObject = function fromObject(object) { + if (object instanceof $root.proto.HydratedURLButton) + return object; + var message = new $root.proto.HydratedURLButton(); + if (object.displayText != null) + message.displayText = String(object.displayText); + if (object.url != null) + message.url = String(object.url); + return message; + }; + + /** + * Creates a plain object from a HydratedURLButton message. Also converts values to other types if specified. + * @function toObject + * @memberof proto.HydratedURLButton + * @static + * @param {proto.HydratedURLButton} message HydratedURLButton + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + HydratedURLButton.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.displayText = ""; + object.url = ""; + } + if (message.displayText != null && message.hasOwnProperty("displayText")) + object.displayText = message.displayText; + if (message.url != null && message.hasOwnProperty("url")) + object.url = message.url; + return object; + }; + + /** + * Converts this HydratedURLButton to JSON. + * @function toJSON + * @memberof proto.HydratedURLButton + * @instance + * @returns {Object.} JSON object + */ + HydratedURLButton.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return HydratedURLButton; + })(); + + proto.HydratedCallButton = (function() { + + /** + * Properties of a HydratedCallButton. + * @memberof proto + * @interface IHydratedCallButton + * @property {string|null} [displayText] HydratedCallButton displayText + * @property {string|null} [phoneNumber] HydratedCallButton phoneNumber + */ + + /** + * Constructs a new HydratedCallButton. + * @memberof proto + * @classdesc Represents a HydratedCallButton. + * @implements IHydratedCallButton + * @constructor + * @param {proto.IHydratedCallButton=} [properties] Properties to set + */ + function HydratedCallButton(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * HydratedCallButton displayText. + * @member {string} displayText + * @memberof proto.HydratedCallButton + * @instance + */ + HydratedCallButton.prototype.displayText = ""; + + /** + * HydratedCallButton phoneNumber. + * @member {string} phoneNumber + * @memberof proto.HydratedCallButton + * @instance + */ + HydratedCallButton.prototype.phoneNumber = ""; + + /** + * Creates a new HydratedCallButton instance using the specified properties. + * @function create + * @memberof proto.HydratedCallButton + * @static + * @param {proto.IHydratedCallButton=} [properties] Properties to set + * @returns {proto.HydratedCallButton} HydratedCallButton instance + */ + HydratedCallButton.create = function create(properties) { + return new HydratedCallButton(properties); + }; + + /** + * Encodes the specified HydratedCallButton message. Does not implicitly {@link proto.HydratedCallButton.verify|verify} messages. + * @function encode + * @memberof proto.HydratedCallButton + * @static + * @param {proto.IHydratedCallButton} message HydratedCallButton message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HydratedCallButton.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.displayText != null && Object.hasOwnProperty.call(message, "displayText")) + writer.uint32(/* id 1, wireType 2 =*/10).string(message.displayText); + if (message.phoneNumber != null && Object.hasOwnProperty.call(message, "phoneNumber")) + writer.uint32(/* id 2, wireType 2 =*/18).string(message.phoneNumber); + return writer; + }; + + /** + * Encodes the specified HydratedCallButton message, length delimited. Does not implicitly {@link proto.HydratedCallButton.verify|verify} messages. + * @function encodeDelimited + * @memberof proto.HydratedCallButton + * @static + * @param {proto.IHydratedCallButton} message HydratedCallButton message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HydratedCallButton.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a HydratedCallButton message from the specified reader or buffer. + * @function decode + * @memberof proto.HydratedCallButton + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {proto.HydratedCallButton} HydratedCallButton + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HydratedCallButton.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.HydratedCallButton(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.displayText = reader.string(); + break; + case 2: + message.phoneNumber = reader.string(); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a HydratedCallButton message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof proto.HydratedCallButton + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {proto.HydratedCallButton} HydratedCallButton + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HydratedCallButton.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a HydratedCallButton message. + * @function verify + * @memberof proto.HydratedCallButton + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + HydratedCallButton.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (message.displayText != null && message.hasOwnProperty("displayText")) + if (!$util.isString(message.displayText)) + return "displayText: string expected"; + if (message.phoneNumber != null && message.hasOwnProperty("phoneNumber")) + if (!$util.isString(message.phoneNumber)) + return "phoneNumber: string expected"; + return null; + }; + + /** + * Creates a HydratedCallButton message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof proto.HydratedCallButton + * @static + * @param {Object.} object Plain object + * @returns {proto.HydratedCallButton} HydratedCallButton + */ + HydratedCallButton.fromObject = function fromObject(object) { + if (object instanceof $root.proto.HydratedCallButton) + return object; + var message = new $root.proto.HydratedCallButton(); + if (object.displayText != null) + message.displayText = String(object.displayText); + if (object.phoneNumber != null) + message.phoneNumber = String(object.phoneNumber); + return message; + }; + + /** + * Creates a plain object from a HydratedCallButton message. Also converts values to other types if specified. + * @function toObject + * @memberof proto.HydratedCallButton + * @static + * @param {proto.HydratedCallButton} message HydratedCallButton + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + HydratedCallButton.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) { + object.displayText = ""; + object.phoneNumber = ""; + } + if (message.displayText != null && message.hasOwnProperty("displayText")) + object.displayText = message.displayText; + if (message.phoneNumber != null && message.hasOwnProperty("phoneNumber")) + object.phoneNumber = message.phoneNumber; + return object; + }; + + /** + * Converts this HydratedCallButton to JSON. + * @function toJSON + * @memberof proto.HydratedCallButton + * @instance + * @returns {Object.} JSON object + */ + HydratedCallButton.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return HydratedCallButton; + })(); + + proto.HydratedTemplateButton = (function() { + + /** + * Properties of a HydratedTemplateButton. + * @memberof proto + * @interface IHydratedTemplateButton + * @property {number|null} [index] HydratedTemplateButton index + * @property {proto.IHydratedQuickReplyButton|null} [quickReplyButton] HydratedTemplateButton quickReplyButton + * @property {proto.IHydratedURLButton|null} [urlButton] HydratedTemplateButton urlButton + * @property {proto.IHydratedCallButton|null} [callButton] HydratedTemplateButton callButton + */ + + /** + * Constructs a new HydratedTemplateButton. + * @memberof proto + * @classdesc Represents a HydratedTemplateButton. + * @implements IHydratedTemplateButton + * @constructor + * @param {proto.IHydratedTemplateButton=} [properties] Properties to set + */ + function HydratedTemplateButton(properties) { + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * HydratedTemplateButton index. + * @member {number} index + * @memberof proto.HydratedTemplateButton + * @instance + */ + HydratedTemplateButton.prototype.index = 0; + + /** + * HydratedTemplateButton quickReplyButton. + * @member {proto.IHydratedQuickReplyButton|null|undefined} quickReplyButton + * @memberof proto.HydratedTemplateButton + * @instance + */ + HydratedTemplateButton.prototype.quickReplyButton = null; + + /** + * HydratedTemplateButton urlButton. + * @member {proto.IHydratedURLButton|null|undefined} urlButton + * @memberof proto.HydratedTemplateButton + * @instance + */ + HydratedTemplateButton.prototype.urlButton = null; + + /** + * HydratedTemplateButton callButton. + * @member {proto.IHydratedCallButton|null|undefined} callButton + * @memberof proto.HydratedTemplateButton + * @instance + */ + HydratedTemplateButton.prototype.callButton = null; + + // OneOf field names bound to virtual getters and setters + var $oneOfFields; + + /** + * HydratedTemplateButton hydratedButton. + * @member {"quickReplyButton"|"urlButton"|"callButton"|undefined} hydratedButton + * @memberof proto.HydratedTemplateButton + * @instance + */ + Object.defineProperty(HydratedTemplateButton.prototype, "hydratedButton", { + get: $util.oneOfGetter($oneOfFields = ["quickReplyButton", "urlButton", "callButton"]), + set: $util.oneOfSetter($oneOfFields) + }); + + /** + * Creates a new HydratedTemplateButton instance using the specified properties. + * @function create + * @memberof proto.HydratedTemplateButton + * @static + * @param {proto.IHydratedTemplateButton=} [properties] Properties to set + * @returns {proto.HydratedTemplateButton} HydratedTemplateButton instance + */ + HydratedTemplateButton.create = function create(properties) { + return new HydratedTemplateButton(properties); + }; + + /** + * Encodes the specified HydratedTemplateButton message. Does not implicitly {@link proto.HydratedTemplateButton.verify|verify} messages. + * @function encode + * @memberof proto.HydratedTemplateButton + * @static + * @param {proto.IHydratedTemplateButton} message HydratedTemplateButton message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HydratedTemplateButton.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + if (message.quickReplyButton != null && Object.hasOwnProperty.call(message, "quickReplyButton")) + $root.proto.HydratedQuickReplyButton.encode(message.quickReplyButton, writer.uint32(/* id 1, wireType 2 =*/10).fork()).ldelim(); + if (message.urlButton != null && Object.hasOwnProperty.call(message, "urlButton")) + $root.proto.HydratedURLButton.encode(message.urlButton, writer.uint32(/* id 2, wireType 2 =*/18).fork()).ldelim(); + if (message.callButton != null && Object.hasOwnProperty.call(message, "callButton")) + $root.proto.HydratedCallButton.encode(message.callButton, writer.uint32(/* id 3, wireType 2 =*/26).fork()).ldelim(); + if (message.index != null && Object.hasOwnProperty.call(message, "index")) + writer.uint32(/* id 4, wireType 0 =*/32).uint32(message.index); + return writer; + }; + + /** + * Encodes the specified HydratedTemplateButton message, length delimited. Does not implicitly {@link proto.HydratedTemplateButton.verify|verify} messages. + * @function encodeDelimited + * @memberof proto.HydratedTemplateButton + * @static + * @param {proto.IHydratedTemplateButton} message HydratedTemplateButton message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + HydratedTemplateButton.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a HydratedTemplateButton message from the specified reader or buffer. + * @function decode + * @memberof proto.HydratedTemplateButton + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {proto.HydratedTemplateButton} HydratedTemplateButton + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HydratedTemplateButton.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.HydratedTemplateButton(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 4: + message.index = reader.uint32(); + break; + case 1: + message.quickReplyButton = $root.proto.HydratedQuickReplyButton.decode(reader, reader.uint32()); + break; + case 2: + message.urlButton = $root.proto.HydratedURLButton.decode(reader, reader.uint32()); + break; + case 3: + message.callButton = $root.proto.HydratedCallButton.decode(reader, reader.uint32()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + return message; + }; + + /** + * Decodes a HydratedTemplateButton message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof proto.HydratedTemplateButton + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {proto.HydratedTemplateButton} HydratedTemplateButton + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + HydratedTemplateButton.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a HydratedTemplateButton message. + * @function verify + * @memberof proto.HydratedTemplateButton + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + HydratedTemplateButton.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + var properties = {}; + if (message.index != null && message.hasOwnProperty("index")) + if (!$util.isInteger(message.index)) + return "index: integer expected"; + if (message.quickReplyButton != null && message.hasOwnProperty("quickReplyButton")) { + properties.hydratedButton = 1; + { + var error = $root.proto.HydratedQuickReplyButton.verify(message.quickReplyButton); + if (error) + return "quickReplyButton." + error; + } + } + if (message.urlButton != null && message.hasOwnProperty("urlButton")) { + if (properties.hydratedButton === 1) + return "hydratedButton: multiple values"; + properties.hydratedButton = 1; + { + var error = $root.proto.HydratedURLButton.verify(message.urlButton); + if (error) + return "urlButton." + error; + } + } + if (message.callButton != null && message.hasOwnProperty("callButton")) { + if (properties.hydratedButton === 1) + return "hydratedButton: multiple values"; + properties.hydratedButton = 1; + { + var error = $root.proto.HydratedCallButton.verify(message.callButton); + if (error) + return "callButton." + error; + } + } + return null; + }; + + /** + * Creates a HydratedTemplateButton message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof proto.HydratedTemplateButton + * @static + * @param {Object.} object Plain object + * @returns {proto.HydratedTemplateButton} HydratedTemplateButton + */ + HydratedTemplateButton.fromObject = function fromObject(object) { + if (object instanceof $root.proto.HydratedTemplateButton) + return object; + var message = new $root.proto.HydratedTemplateButton(); + if (object.index != null) + message.index = object.index >>> 0; + if (object.quickReplyButton != null) { + if (typeof object.quickReplyButton !== "object") + throw TypeError(".proto.HydratedTemplateButton.quickReplyButton: object expected"); + message.quickReplyButton = $root.proto.HydratedQuickReplyButton.fromObject(object.quickReplyButton); + } + if (object.urlButton != null) { + if (typeof object.urlButton !== "object") + throw TypeError(".proto.HydratedTemplateButton.urlButton: object expected"); + message.urlButton = $root.proto.HydratedURLButton.fromObject(object.urlButton); + } + if (object.callButton != null) { + if (typeof object.callButton !== "object") + throw TypeError(".proto.HydratedTemplateButton.callButton: object expected"); + message.callButton = $root.proto.HydratedCallButton.fromObject(object.callButton); + } + return message; + }; + + /** + * Creates a plain object from a HydratedTemplateButton message. Also converts values to other types if specified. + * @function toObject + * @memberof proto.HydratedTemplateButton + * @static + * @param {proto.HydratedTemplateButton} message HydratedTemplateButton + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + HydratedTemplateButton.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.defaults) + object.index = 0; + if (message.quickReplyButton != null && message.hasOwnProperty("quickReplyButton")) { + object.quickReplyButton = $root.proto.HydratedQuickReplyButton.toObject(message.quickReplyButton, options); + if (options.oneofs) + object.hydratedButton = "quickReplyButton"; + } + if (message.urlButton != null && message.hasOwnProperty("urlButton")) { + object.urlButton = $root.proto.HydratedURLButton.toObject(message.urlButton, options); + if (options.oneofs) + object.hydratedButton = "urlButton"; + } + if (message.callButton != null && message.hasOwnProperty("callButton")) { + object.callButton = $root.proto.HydratedCallButton.toObject(message.callButton, options); + if (options.oneofs) + object.hydratedButton = "callButton"; + } + if (message.index != null && message.hasOwnProperty("index")) + object.index = message.index; + return object; + }; + + /** + * Converts this HydratedTemplateButton to JSON. + * @function toJSON + * @memberof proto.HydratedTemplateButton + * @instance + * @returns {Object.} JSON object + */ + HydratedTemplateButton.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return HydratedTemplateButton; + })(); + + proto.UserReceipt = (function() { + + /** + * Properties of a UserReceipt. + * @memberof proto + * @interface IUserReceipt + * @property {string} userJid UserReceipt userJid + * @property {number|Long|null} [receiptTimestamp] UserReceipt receiptTimestamp + * @property {number|Long|null} [readTimestamp] UserReceipt readTimestamp + * @property {number|Long|null} [playedTimestamp] UserReceipt playedTimestamp + * @property {Array.|null} [pendingDeviceJid] UserReceipt pendingDeviceJid + * @property {Array.|null} [deliveredDeviceJid] UserReceipt deliveredDeviceJid + */ + + /** + * Constructs a new UserReceipt. + * @memberof proto + * @classdesc Represents a UserReceipt. + * @implements IUserReceipt + * @constructor + * @param {proto.IUserReceipt=} [properties] Properties to set + */ + function UserReceipt(properties) { + this.pendingDeviceJid = []; + this.deliveredDeviceJid = []; + if (properties) + for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) + if (properties[keys[i]] != null) + this[keys[i]] = properties[keys[i]]; + } + + /** + * UserReceipt userJid. + * @member {string} userJid + * @memberof proto.UserReceipt + * @instance + */ + UserReceipt.prototype.userJid = ""; + + /** + * UserReceipt receiptTimestamp. + * @member {number|Long} receiptTimestamp + * @memberof proto.UserReceipt + * @instance + */ + UserReceipt.prototype.receiptTimestamp = $util.Long ? $util.Long.fromBits(0,0,false) : 0; + + /** + * UserReceipt readTimestamp. + * @member {number|Long} readTimestamp + * @memberof proto.UserReceipt + * @instance + */ + UserReceipt.prototype.readTimestamp = $util.Long ? $util.Long.fromBits(0,0,false) : 0; + + /** + * UserReceipt playedTimestamp. + * @member {number|Long} playedTimestamp + * @memberof proto.UserReceipt + * @instance + */ + UserReceipt.prototype.playedTimestamp = $util.Long ? $util.Long.fromBits(0,0,false) : 0; + + /** + * UserReceipt pendingDeviceJid. + * @member {Array.} pendingDeviceJid + * @memberof proto.UserReceipt + * @instance + */ + UserReceipt.prototype.pendingDeviceJid = $util.emptyArray; + + /** + * UserReceipt deliveredDeviceJid. + * @member {Array.} deliveredDeviceJid + * @memberof proto.UserReceipt + * @instance + */ + UserReceipt.prototype.deliveredDeviceJid = $util.emptyArray; + + /** + * Creates a new UserReceipt instance using the specified properties. + * @function create + * @memberof proto.UserReceipt + * @static + * @param {proto.IUserReceipt=} [properties] Properties to set + * @returns {proto.UserReceipt} UserReceipt instance + */ + UserReceipt.create = function create(properties) { + return new UserReceipt(properties); + }; + + /** + * Encodes the specified UserReceipt message. Does not implicitly {@link proto.UserReceipt.verify|verify} messages. + * @function encode + * @memberof proto.UserReceipt + * @static + * @param {proto.IUserReceipt} message UserReceipt message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UserReceipt.encode = function encode(message, writer) { + if (!writer) + writer = $Writer.create(); + writer.uint32(/* id 1, wireType 2 =*/10).string(message.userJid); + if (message.receiptTimestamp != null && Object.hasOwnProperty.call(message, "receiptTimestamp")) + writer.uint32(/* id 2, wireType 0 =*/16).int64(message.receiptTimestamp); + if (message.readTimestamp != null && Object.hasOwnProperty.call(message, "readTimestamp")) + writer.uint32(/* id 3, wireType 0 =*/24).int64(message.readTimestamp); + if (message.playedTimestamp != null && Object.hasOwnProperty.call(message, "playedTimestamp")) + writer.uint32(/* id 4, wireType 0 =*/32).int64(message.playedTimestamp); + if (message.pendingDeviceJid != null && message.pendingDeviceJid.length) + for (var i = 0; i < message.pendingDeviceJid.length; ++i) + writer.uint32(/* id 5, wireType 2 =*/42).string(message.pendingDeviceJid[i]); + if (message.deliveredDeviceJid != null && message.deliveredDeviceJid.length) + for (var i = 0; i < message.deliveredDeviceJid.length; ++i) + writer.uint32(/* id 6, wireType 2 =*/50).string(message.deliveredDeviceJid[i]); + return writer; + }; + + /** + * Encodes the specified UserReceipt message, length delimited. Does not implicitly {@link proto.UserReceipt.verify|verify} messages. + * @function encodeDelimited + * @memberof proto.UserReceipt + * @static + * @param {proto.IUserReceipt} message UserReceipt message or plain object to encode + * @param {$protobuf.Writer} [writer] Writer to encode to + * @returns {$protobuf.Writer} Writer + */ + UserReceipt.encodeDelimited = function encodeDelimited(message, writer) { + return this.encode(message, writer).ldelim(); + }; + + /** + * Decodes a UserReceipt message from the specified reader or buffer. + * @function decode + * @memberof proto.UserReceipt + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @param {number} [length] Message length if known beforehand + * @returns {proto.UserReceipt} UserReceipt + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UserReceipt.decode = function decode(reader, length) { + if (!(reader instanceof $Reader)) + reader = $Reader.create(reader); + var end = length === undefined ? reader.len : reader.pos + length, message = new $root.proto.UserReceipt(); + while (reader.pos < end) { + var tag = reader.uint32(); + switch (tag >>> 3) { + case 1: + message.userJid = reader.string(); + break; + case 2: + message.receiptTimestamp = reader.int64(); + break; + case 3: + message.readTimestamp = reader.int64(); + break; + case 4: + message.playedTimestamp = reader.int64(); + break; + case 5: + if (!(message.pendingDeviceJid && message.pendingDeviceJid.length)) + message.pendingDeviceJid = []; + message.pendingDeviceJid.push(reader.string()); + break; + case 6: + if (!(message.deliveredDeviceJid && message.deliveredDeviceJid.length)) + message.deliveredDeviceJid = []; + message.deliveredDeviceJid.push(reader.string()); + break; + default: + reader.skipType(tag & 7); + break; + } + } + if (!message.hasOwnProperty("userJid")) + throw $util.ProtocolError("missing required 'userJid'", { instance: message }); + return message; + }; + + /** + * Decodes a UserReceipt message from the specified reader or buffer, length delimited. + * @function decodeDelimited + * @memberof proto.UserReceipt + * @static + * @param {$protobuf.Reader|Uint8Array} reader Reader or buffer to decode from + * @returns {proto.UserReceipt} UserReceipt + * @throws {Error} If the payload is not a reader or valid buffer + * @throws {$protobuf.util.ProtocolError} If required fields are missing + */ + UserReceipt.decodeDelimited = function decodeDelimited(reader) { + if (!(reader instanceof $Reader)) + reader = new $Reader(reader); + return this.decode(reader, reader.uint32()); + }; + + /** + * Verifies a UserReceipt message. + * @function verify + * @memberof proto.UserReceipt + * @static + * @param {Object.} message Plain object to verify + * @returns {string|null} `null` if valid, otherwise the reason why it is not + */ + UserReceipt.verify = function verify(message) { + if (typeof message !== "object" || message === null) + return "object expected"; + if (!$util.isString(message.userJid)) + return "userJid: string expected"; + if (message.receiptTimestamp != null && message.hasOwnProperty("receiptTimestamp")) + if (!$util.isInteger(message.receiptTimestamp) && !(message.receiptTimestamp && $util.isInteger(message.receiptTimestamp.low) && $util.isInteger(message.receiptTimestamp.high))) + return "receiptTimestamp: integer|Long expected"; + if (message.readTimestamp != null && message.hasOwnProperty("readTimestamp")) + if (!$util.isInteger(message.readTimestamp) && !(message.readTimestamp && $util.isInteger(message.readTimestamp.low) && $util.isInteger(message.readTimestamp.high))) + return "readTimestamp: integer|Long expected"; + if (message.playedTimestamp != null && message.hasOwnProperty("playedTimestamp")) + if (!$util.isInteger(message.playedTimestamp) && !(message.playedTimestamp && $util.isInteger(message.playedTimestamp.low) && $util.isInteger(message.playedTimestamp.high))) + return "playedTimestamp: integer|Long expected"; + if (message.pendingDeviceJid != null && message.hasOwnProperty("pendingDeviceJid")) { + if (!Array.isArray(message.pendingDeviceJid)) + return "pendingDeviceJid: array expected"; + for (var i = 0; i < message.pendingDeviceJid.length; ++i) + if (!$util.isString(message.pendingDeviceJid[i])) + return "pendingDeviceJid: string[] expected"; + } + if (message.deliveredDeviceJid != null && message.hasOwnProperty("deliveredDeviceJid")) { + if (!Array.isArray(message.deliveredDeviceJid)) + return "deliveredDeviceJid: array expected"; + for (var i = 0; i < message.deliveredDeviceJid.length; ++i) + if (!$util.isString(message.deliveredDeviceJid[i])) + return "deliveredDeviceJid: string[] expected"; + } + return null; + }; + + /** + * Creates a UserReceipt message from a plain object. Also converts values to their respective internal types. + * @function fromObject + * @memberof proto.UserReceipt + * @static + * @param {Object.} object Plain object + * @returns {proto.UserReceipt} UserReceipt + */ + UserReceipt.fromObject = function fromObject(object) { + if (object instanceof $root.proto.UserReceipt) + return object; + var message = new $root.proto.UserReceipt(); + if (object.userJid != null) + message.userJid = String(object.userJid); + if (object.receiptTimestamp != null) + if ($util.Long) + (message.receiptTimestamp = $util.Long.fromValue(object.receiptTimestamp)).unsigned = false; + else if (typeof object.receiptTimestamp === "string") + message.receiptTimestamp = parseInt(object.receiptTimestamp, 10); + else if (typeof object.receiptTimestamp === "number") + message.receiptTimestamp = object.receiptTimestamp; + else if (typeof object.receiptTimestamp === "object") + message.receiptTimestamp = new $util.LongBits(object.receiptTimestamp.low >>> 0, object.receiptTimestamp.high >>> 0).toNumber(); + if (object.readTimestamp != null) + if ($util.Long) + (message.readTimestamp = $util.Long.fromValue(object.readTimestamp)).unsigned = false; + else if (typeof object.readTimestamp === "string") + message.readTimestamp = parseInt(object.readTimestamp, 10); + else if (typeof object.readTimestamp === "number") + message.readTimestamp = object.readTimestamp; + else if (typeof object.readTimestamp === "object") + message.readTimestamp = new $util.LongBits(object.readTimestamp.low >>> 0, object.readTimestamp.high >>> 0).toNumber(); + if (object.playedTimestamp != null) + if ($util.Long) + (message.playedTimestamp = $util.Long.fromValue(object.playedTimestamp)).unsigned = false; + else if (typeof object.playedTimestamp === "string") + message.playedTimestamp = parseInt(object.playedTimestamp, 10); + else if (typeof object.playedTimestamp === "number") + message.playedTimestamp = object.playedTimestamp; + else if (typeof object.playedTimestamp === "object") + message.playedTimestamp = new $util.LongBits(object.playedTimestamp.low >>> 0, object.playedTimestamp.high >>> 0).toNumber(); + if (object.pendingDeviceJid) { + if (!Array.isArray(object.pendingDeviceJid)) + throw TypeError(".proto.UserReceipt.pendingDeviceJid: array expected"); + message.pendingDeviceJid = []; + for (var i = 0; i < object.pendingDeviceJid.length; ++i) + message.pendingDeviceJid[i] = String(object.pendingDeviceJid[i]); + } + if (object.deliveredDeviceJid) { + if (!Array.isArray(object.deliveredDeviceJid)) + throw TypeError(".proto.UserReceipt.deliveredDeviceJid: array expected"); + message.deliveredDeviceJid = []; + for (var i = 0; i < object.deliveredDeviceJid.length; ++i) + message.deliveredDeviceJid[i] = String(object.deliveredDeviceJid[i]); + } + return message; + }; + + /** + * Creates a plain object from a UserReceipt message. Also converts values to other types if specified. + * @function toObject + * @memberof proto.UserReceipt + * @static + * @param {proto.UserReceipt} message UserReceipt + * @param {$protobuf.IConversionOptions} [options] Conversion options + * @returns {Object.} Plain object + */ + UserReceipt.toObject = function toObject(message, options) { + if (!options) + options = {}; + var object = {}; + if (options.arrays || options.defaults) { + object.pendingDeviceJid = []; + object.deliveredDeviceJid = []; + } + if (options.defaults) { + object.userJid = ""; + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.receiptTimestamp = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; + } else + object.receiptTimestamp = options.longs === String ? "0" : 0; + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.readTimestamp = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; + } else + object.readTimestamp = options.longs === String ? "0" : 0; + if ($util.Long) { + var long = new $util.Long(0, 0, false); + object.playedTimestamp = options.longs === String ? long.toString() : options.longs === Number ? long.toNumber() : long; + } else + object.playedTimestamp = options.longs === String ? "0" : 0; + } + if (message.userJid != null && message.hasOwnProperty("userJid")) + object.userJid = message.userJid; + if (message.receiptTimestamp != null && message.hasOwnProperty("receiptTimestamp")) + if (typeof message.receiptTimestamp === "number") + object.receiptTimestamp = options.longs === String ? String(message.receiptTimestamp) : message.receiptTimestamp; + else + object.receiptTimestamp = options.longs === String ? $util.Long.prototype.toString.call(message.receiptTimestamp) : options.longs === Number ? new $util.LongBits(message.receiptTimestamp.low >>> 0, message.receiptTimestamp.high >>> 0).toNumber() : message.receiptTimestamp; + if (message.readTimestamp != null && message.hasOwnProperty("readTimestamp")) + if (typeof message.readTimestamp === "number") + object.readTimestamp = options.longs === String ? String(message.readTimestamp) : message.readTimestamp; + else + object.readTimestamp = options.longs === String ? $util.Long.prototype.toString.call(message.readTimestamp) : options.longs === Number ? new $util.LongBits(message.readTimestamp.low >>> 0, message.readTimestamp.high >>> 0).toNumber() : message.readTimestamp; + if (message.playedTimestamp != null && message.hasOwnProperty("playedTimestamp")) + if (typeof message.playedTimestamp === "number") + object.playedTimestamp = options.longs === String ? String(message.playedTimestamp) : message.playedTimestamp; + else + object.playedTimestamp = options.longs === String ? $util.Long.prototype.toString.call(message.playedTimestamp) : options.longs === Number ? new $util.LongBits(message.playedTimestamp.low >>> 0, message.playedTimestamp.high >>> 0).toNumber() : message.playedTimestamp; + if (message.pendingDeviceJid && message.pendingDeviceJid.length) { + object.pendingDeviceJid = []; + for (var j = 0; j < message.pendingDeviceJid.length; ++j) + object.pendingDeviceJid[j] = message.pendingDeviceJid[j]; + } + if (message.deliveredDeviceJid && message.deliveredDeviceJid.length) { + object.deliveredDeviceJid = []; + for (var j = 0; j < message.deliveredDeviceJid.length; ++j) + object.deliveredDeviceJid[j] = message.deliveredDeviceJid[j]; + } + return object; + }; + + /** + * Converts this UserReceipt to JSON. + * @function toJSON + * @memberof proto.UserReceipt + * @instance + * @returns {Object.} JSON object + */ + UserReceipt.prototype.toJSON = function toJSON() { + return this.constructor.toObject(this, $protobuf.util.toJSONOptions); + }; + + return UserReceipt; })(); proto.PhotoChange = (function() { @@ -46348,6 +29260,7 @@ $root.proto = (function() { * @property {proto.WebFeatures.WebFeaturesFlag|null} [ephemeralAllowGroupMembers] WebFeatures ephemeralAllowGroupMembers * @property {proto.WebFeatures.WebFeaturesFlag|null} [ephemeral24HDuration] WebFeatures ephemeral24HDuration * @property {proto.WebFeatures.WebFeaturesFlag|null} [mdForceUpgrade] WebFeatures mdForceUpgrade + * @property {proto.WebFeatures.WebFeaturesFlag|null} [disappearingMode] WebFeatures disappearingMode */ /** @@ -46701,6 +29614,14 @@ $root.proto = (function() { */ WebFeatures.prototype.mdForceUpgrade = 0; + /** + * WebFeatures disappearingMode. + * @member {proto.WebFeatures.WebFeaturesFlag} disappearingMode + * @memberof proto.WebFeatures + * @instance + */ + WebFeatures.prototype.disappearingMode = 0; + /** * Creates a new WebFeatures instance using the specified properties. * @function create @@ -46809,6 +29730,8 @@ $root.proto = (function() { writer.uint32(/* id 45, wireType 0 =*/360).int32(message.ephemeral24HDuration); if (message.mdForceUpgrade != null && Object.hasOwnProperty.call(message, "mdForceUpgrade")) writer.uint32(/* id 46, wireType 0 =*/368).int32(message.mdForceUpgrade); + if (message.disappearingMode != null && Object.hasOwnProperty.call(message, "disappearingMode")) + writer.uint32(/* id 47, wireType 0 =*/376).int32(message.disappearingMode); return writer; }; @@ -46969,6 +29892,9 @@ $root.proto = (function() { case 46: message.mdForceUpgrade = reader.int32(); break; + case 47: + message.disappearingMode = reader.int32(); + break; default: reader.skipType(tag & 7); break; @@ -47424,6 +30350,16 @@ $root.proto = (function() { case 3: break; } + if (message.disappearingMode != null && message.hasOwnProperty("disappearingMode")) + switch (message.disappearingMode) { + default: + return "disappearingMode: enum value expected"; + case 0: + case 1: + case 2: + case 3: + break; + } return null; }; @@ -48195,6 +31131,24 @@ $root.proto = (function() { message.mdForceUpgrade = 3; break; } + switch (object.disappearingMode) { + case "NOT_STARTED": + case 0: + message.disappearingMode = 0; + break; + case "FORCE_UPGRADE": + case 1: + message.disappearingMode = 1; + break; + case "DEVELOPMENT": + case 2: + message.disappearingMode = 2; + break; + case "PRODUCTION": + case 3: + message.disappearingMode = 3; + break; + } return message; }; @@ -48254,6 +31208,7 @@ $root.proto = (function() { object.ephemeralAllowGroupMembers = options.enums === String ? "NOT_STARTED" : 0; object.ephemeral24HDuration = options.enums === String ? "NOT_STARTED" : 0; object.mdForceUpgrade = options.enums === String ? "NOT_STARTED" : 0; + object.disappearingMode = options.enums === String ? "NOT_STARTED" : 0; } if (message.labelsDisplay != null && message.hasOwnProperty("labelsDisplay")) object.labelsDisplay = options.enums === String ? $root.proto.WebFeatures.WebFeaturesFlag[message.labelsDisplay] : message.labelsDisplay; @@ -48339,6 +31294,8 @@ $root.proto = (function() { object.ephemeral24HDuration = options.enums === String ? $root.proto.WebFeatures.WebFeaturesFlag[message.ephemeral24HDuration] : message.ephemeral24HDuration; if (message.mdForceUpgrade != null && message.hasOwnProperty("mdForceUpgrade")) object.mdForceUpgrade = options.enums === String ? $root.proto.WebFeatures.WebFeaturesFlag[message.mdForceUpgrade] : message.mdForceUpgrade; + if (message.disappearingMode != null && message.hasOwnProperty("disappearingMode")) + object.disappearingMode = options.enums === String ? $root.proto.WebFeatures.WebFeaturesFlag[message.disappearingMode] : message.disappearingMode; return object; }; @@ -49827,6 +32784,7 @@ $root.proto = (function() { * @property {string|null} [verifiedBizName] WebMessageInfo verifiedBizName * @property {proto.IMediaData|null} [mediaData] WebMessageInfo mediaData * @property {proto.IPhotoChange|null} [photoChange] WebMessageInfo photoChange + * @property {Array.|null} [userReceipt] WebMessageInfo userReceipt */ /** @@ -49840,6 +32798,7 @@ $root.proto = (function() { function WebMessageInfo(properties) { this.messageStubParameters = []; this.labels = []; + this.userReceipt = []; if (properties) for (var keys = Object.keys(properties), i = 0; i < keys.length; ++i) if (properties[keys[i]] != null) @@ -50086,6 +33045,14 @@ $root.proto = (function() { */ WebMessageInfo.prototype.photoChange = null; + /** + * WebMessageInfo userReceipt. + * @member {Array.} userReceipt + * @memberof proto.WebMessageInfo + * @instance + */ + WebMessageInfo.prototype.userReceipt = $util.emptyArray; + /** * Creates a new WebMessageInfo instance using the specified properties. * @function create @@ -50171,6 +33138,9 @@ $root.proto = (function() { $root.proto.MediaData.encode(message.mediaData, writer.uint32(/* id 38, wireType 2 =*/306).fork()).ldelim(); if (message.photoChange != null && Object.hasOwnProperty.call(message, "photoChange")) $root.proto.PhotoChange.encode(message.photoChange, writer.uint32(/* id 39, wireType 2 =*/314).fork()).ldelim(); + if (message.userReceipt != null && message.userReceipt.length) + for (var i = 0; i < message.userReceipt.length; ++i) + $root.proto.UserReceipt.encode(message.userReceipt[i], writer.uint32(/* id 40, wireType 2 =*/322).fork()).ldelim(); return writer; }; @@ -50299,6 +33269,11 @@ $root.proto = (function() { case 39: message.photoChange = $root.proto.PhotoChange.decode(reader, reader.uint32()); break; + case 40: + if (!(message.userReceipt && message.userReceipt.length)) + message.userReceipt = []; + message.userReceipt.push($root.proto.UserReceipt.decode(reader, reader.uint32())); + break; default: reader.skipType(tag & 7); break; @@ -50525,6 +33500,7 @@ $root.proto = (function() { case 127: case 128: case 129: + case 130: break; } if (message.clearMedia != null && message.hasOwnProperty("clearMedia")) @@ -50597,6 +33573,15 @@ $root.proto = (function() { if (error) return "photoChange." + error; } + if (message.userReceipt != null && message.hasOwnProperty("userReceipt")) { + if (!Array.isArray(message.userReceipt)) + return "userReceipt: array expected"; + for (var i = 0; i < message.userReceipt.length; ++i) { + var error = $root.proto.UserReceipt.verify(message.userReceipt[i]); + if (error) + return "userReceipt." + error; + } + } return null; }; @@ -51208,6 +34193,10 @@ $root.proto = (function() { case 129: message.messageStubType = 129; break; + case "DISAPPEARING_MODE": + case 130: + message.messageStubType = 130; + break; } if (object.clearMedia != null) message.clearMedia = Boolean(object.clearMedia); @@ -51287,6 +34276,16 @@ $root.proto = (function() { throw TypeError(".proto.WebMessageInfo.photoChange: object expected"); message.photoChange = $root.proto.PhotoChange.fromObject(object.photoChange); } + if (object.userReceipt) { + if (!Array.isArray(object.userReceipt)) + throw TypeError(".proto.WebMessageInfo.userReceipt: array expected"); + message.userReceipt = []; + for (var i = 0; i < object.userReceipt.length; ++i) { + if (typeof object.userReceipt[i] !== "object") + throw TypeError(".proto.WebMessageInfo.userReceipt: object expected"); + message.userReceipt[i] = $root.proto.UserReceipt.fromObject(object.userReceipt[i]); + } + } return message; }; @@ -51306,6 +34305,7 @@ $root.proto = (function() { if (options.arrays || options.defaults) { object.messageStubParameters = []; object.labels = []; + object.userReceipt = []; } if (options.defaults) { object.key = null; @@ -51430,6 +34430,11 @@ $root.proto = (function() { object.mediaData = $root.proto.MediaData.toObject(message.mediaData, options); if (message.photoChange != null && message.hasOwnProperty("photoChange")) object.photoChange = $root.proto.PhotoChange.toObject(message.photoChange, options); + if (message.userReceipt && message.userReceipt.length) { + object.userReceipt = []; + for (var j = 0; j < message.userReceipt.length; ++j) + object.userReceipt[j] = $root.proto.UserReceipt.toObject(message.userReceipt[j], options); + } return object; }; @@ -51600,6 +34605,7 @@ $root.proto = (function() { * @property {number} BIZ_PRIVACY_MODE_INIT_BSP=127 BIZ_PRIVACY_MODE_INIT_BSP value * @property {number} BIZ_PRIVACY_MODE_TO_FB=128 BIZ_PRIVACY_MODE_TO_FB value * @property {number} BIZ_PRIVACY_MODE_TO_BSP=129 BIZ_PRIVACY_MODE_TO_BSP value + * @property {number} DISAPPEARING_MODE=130 DISAPPEARING_MODE value */ WebMessageInfo.WebMessageInfoStubType = (function() { var valuesById = {}, values = Object.create(valuesById); @@ -51733,6 +34739,7 @@ $root.proto = (function() { values[valuesById[127] = "BIZ_PRIVACY_MODE_INIT_BSP"] = 127; values[valuesById[128] = "BIZ_PRIVACY_MODE_TO_FB"] = 128; values[valuesById[129] = "BIZ_PRIVACY_MODE_TO_BSP"] = 129; + values[valuesById[130] = "DISAPPEARING_MODE"] = 130; return values; })(); @@ -51760,4 +34767,4 @@ $root.proto = (function() { return proto; })(); -module.exports = $root; \ No newline at end of file +module.exports = $root; diff --git a/package.json b/package.json index b62abca..1a277fd 100644 --- a/package.json +++ b/package.json @@ -23,7 +23,7 @@ "build:docs": "typedoc", "build:tsc": "tsc", "example": "node --inspect -r ts-node/register Example/example.ts", - "gen-protobuf": "bash src/Binary/GenerateStatics.sh", + "gen-protobuf": "bash src/BinaryNode/GenerateStatics.sh", "browser-decode": "yarn ts-node src/BrowserMessageDecoding.ts" }, "author": "Adhiraj Singh", diff --git a/src/BinaryNode/GenerateStatics.sh b/src/BinaryNode/GenerateStatics.sh index 3c8c85b..295f6bb 100644 --- a/src/BinaryNode/GenerateStatics.sh +++ b/src/BinaryNode/GenerateStatics.sh @@ -1,4 +1,4 @@ -yarn pbjs -t static-module -w commonjs -o ./WAMessage/WAMessage.js ./src/Binary/WAMessage.proto; -yarn pbts -o ./WAMessage/WAMessage.d.ts ./WAMessage/WAMessage.js; +yarn pbjs -t static-module -w commonjs -o ./WAMessage/index.js ./src/BinaryNode/WAMessage.proto; +yarn pbts -o ./WAMessage/index.d.ts ./WAMessage/index.js; #protoc --plugin=./node_modules/.bin/protoc-gen-ts_proto --ts_proto_opt=env=node,useOptionals=true,forceLong=long --ts_proto_out=. ./src/Binary/WAMessage.proto; \ No newline at end of file diff --git a/src/BinaryNode/WAMessage.proto b/src/BinaryNode/WAMessage.proto index e5313bd..98cd6ec 100644 --- a/src/BinaryNode/WAMessage.proto +++ b/src/BinaryNode/WAMessage.proto @@ -1,6 +1,914 @@ syntax = "proto2"; package proto; +message MessageKey { + optional string remoteJid = 1; + optional bool fromMe = 2; + optional string id = 3; + optional string participant = 4; +} + +message QuickReplyButton { + optional HighlyStructuredMessage displayText = 1; + optional string id = 2; +} + +message URLButton { + optional HighlyStructuredMessage displayText = 1; + optional HighlyStructuredMessage url = 2; +} + +message CallButton { + optional HighlyStructuredMessage displayText = 1; + optional HighlyStructuredMessage phoneNumber = 2; +} + +message TemplateButton { + optional uint32 index = 4; + oneof button { + QuickReplyButton quickReplyButton = 1; + URLButton urlButton = 2; + CallButton callButton = 3; + } +} + +message Location { + optional double degreesLatitude = 1; + optional double degreesLongitude = 2; + optional string name = 3; +} + +message Point { + optional int32 xDeprecated = 1; + optional int32 yDeprecated = 2; + optional double x = 3; + optional double y = 4; +} + +message InteractiveAnnotation { + repeated Point polygonVertices = 1; + oneof action { + Location location = 2; + } +} + +message DeviceListMetadata { + optional bytes senderKeyHash = 1; + optional uint64 senderTimestamp = 2; + repeated uint32 senderKeyIndexes = 3 [packed=true]; + optional bytes recipientKeyHash = 8; + optional uint64 recipientTimestamp = 9; + repeated uint32 recipientKeyIndexes = 10 [packed=true]; +} + +message MessageContextInfo { + optional DeviceListMetadata deviceListMetadata = 1; + optional int32 deviceListMetadataVersion = 2; +} + +message AdReplyInfo { + optional string advertiserName = 1; + enum AdReplyInfoMediaType { + NONE = 0; + IMAGE = 1; + VIDEO = 2; + } + optional AdReplyInfoMediaType mediaType = 2; + optional bytes jpegThumbnail = 16; + optional string caption = 17; +} + +message ExternalAdReplyInfo { + optional string title = 1; + optional string body = 2; + enum ExternalAdReplyInfoMediaType { + NONE = 0; + IMAGE = 1; + VIDEO = 2; + } + optional ExternalAdReplyInfoMediaType mediaType = 3; + optional string thumbnailUrl = 4; + optional string mediaUrl = 5; + optional bytes thumbnail = 6; + optional string sourceType = 7; + optional string sourceId = 8; + optional string sourceUrl = 9; +} + +message ContextInfo { + optional string stanzaId = 1; + optional string participant = 2; + optional Message quotedMessage = 3; + optional string remoteJid = 4; + repeated string mentionedJid = 15; + optional string conversionSource = 18; + optional bytes conversionData = 19; + optional uint32 conversionDelaySeconds = 20; + optional uint32 forwardingScore = 21; + optional bool isForwarded = 22; + optional AdReplyInfo quotedAd = 23; + optional MessageKey placeholderKey = 24; + optional uint32 expiration = 25; + optional int64 ephemeralSettingTimestamp = 26; + optional bytes ephemeralSharedSecret = 27; + optional ExternalAdReplyInfo externalAdReply = 28; + optional string entryPointConversionSource = 29; + optional string entryPointConversionApp = 30; + optional uint32 entryPointConversionDelaySeconds = 31; + optional DisappearingMode disappearingMode = 32; +} + +message SenderKeyDistributionMessage { + optional string groupId = 1; + optional bytes axolotlSenderKeyDistributionMessage = 2; +} + +message ImageMessage { + optional string url = 1; + optional string mimetype = 2; + optional string caption = 3; + optional bytes fileSha256 = 4; + optional uint64 fileLength = 5; + optional uint32 height = 6; + optional uint32 width = 7; + optional bytes mediaKey = 8; + optional bytes fileEncSha256 = 9; + repeated InteractiveAnnotation interactiveAnnotations = 10; + optional string directPath = 11; + optional int64 mediaKeyTimestamp = 12; + optional bytes jpegThumbnail = 16; + optional ContextInfo contextInfo = 17; + optional bytes firstScanSidecar = 18; + optional uint32 firstScanLength = 19; + optional uint32 experimentGroupId = 20; + optional bytes scansSidecar = 21; + repeated uint32 scanLengths = 22; + optional bytes midQualityFileSha256 = 23; + optional bytes midQualityFileEncSha256 = 24; + optional bool viewOnce = 25; + optional string thumbnailDirectPath = 26; + optional bytes thumbnailSha256 = 27; + optional bytes thumbnailEncSha256 = 28; + optional string staticUrl = 29; +} + +message InvoiceMessage { + optional string note = 1; + optional string token = 2; + enum InvoiceMessageAttachmentType { + IMAGE = 0; + PDF = 1; + } + optional InvoiceMessageAttachmentType attachmentType = 3; + optional string attachmentMimetype = 4; + optional bytes attachmentMediaKey = 5; + optional int64 attachmentMediaKeyTimestamp = 6; + optional bytes attachmentFileSha256 = 7; + optional bytes attachmentFileEncSha256 = 8; + optional string attachmentDirectPath = 9; + optional bytes attachmentJpegThumbnail = 10; +} + +message ContactMessage { + optional string displayName = 1; + optional string vcard = 16; + optional ContextInfo contextInfo = 17; +} + +message LocationMessage { + optional double degreesLatitude = 1; + optional double degreesLongitude = 2; + optional string name = 3; + optional string address = 4; + optional string url = 5; + optional bool isLive = 6; + optional uint32 accuracyInMeters = 7; + optional float speedInMps = 8; + optional uint32 degreesClockwiseFromMagneticNorth = 9; + optional string comment = 11; + optional bytes jpegThumbnail = 16; + optional ContextInfo contextInfo = 17; +} + +message ExtendedTextMessage { + optional string text = 1; + optional string matchedText = 2; + optional string canonicalUrl = 4; + optional string description = 5; + optional string title = 6; + optional fixed32 textArgb = 7; + optional fixed32 backgroundArgb = 8; + enum ExtendedTextMessageFontType { + SANS_SERIF = 0; + SERIF = 1; + NORICAN_REGULAR = 2; + BRYNDAN_WRITE = 3; + BEBASNEUE_REGULAR = 4; + OSWALD_HEAVY = 5; + } + optional ExtendedTextMessageFontType font = 9; + enum ExtendedTextMessagePreviewType { + NONE = 0; + VIDEO = 1; + } + optional ExtendedTextMessagePreviewType previewType = 10; + optional bytes jpegThumbnail = 16; + optional ContextInfo contextInfo = 17; + optional bool doNotPlayInline = 18; + optional string thumbnailDirectPath = 19; + optional bytes thumbnailSha256 = 20; + optional bytes thumbnailEncSha256 = 21; + optional bytes mediaKey = 22; + optional int64 mediaKeyTimestamp = 23; + optional uint32 thumbnailHeight = 24; + optional uint32 thumbnailWidth = 25; +} + +message DocumentMessage { + optional string url = 1; + optional string mimetype = 2; + optional string title = 3; + optional bytes fileSha256 = 4; + optional uint64 fileLength = 5; + optional uint32 pageCount = 6; + optional bytes mediaKey = 7; + optional string fileName = 8; + optional bytes fileEncSha256 = 9; + optional string directPath = 10; + optional int64 mediaKeyTimestamp = 11; + optional bool contactVcard = 12; + optional string thumbnailDirectPath = 13; + optional bytes thumbnailSha256 = 14; + optional bytes thumbnailEncSha256 = 15; + optional bytes jpegThumbnail = 16; + optional ContextInfo contextInfo = 17; + optional uint32 thumbnailHeight = 18; + optional uint32 thumbnailWidth = 19; +} + +message AudioMessage { + optional string url = 1; + optional string mimetype = 2; + optional bytes fileSha256 = 3; + optional uint64 fileLength = 4; + optional uint32 seconds = 5; + optional bool ptt = 6; + optional bytes mediaKey = 7; + optional bytes fileEncSha256 = 8; + optional string directPath = 9; + optional int64 mediaKeyTimestamp = 10; + optional ContextInfo contextInfo = 17; + optional bytes streamingSidecar = 18; +} + +message VideoMessage { + optional string url = 1; + optional string mimetype = 2; + optional bytes fileSha256 = 3; + optional uint64 fileLength = 4; + optional uint32 seconds = 5; + optional bytes mediaKey = 6; + optional string caption = 7; + optional bool gifPlayback = 8; + optional uint32 height = 9; + optional uint32 width = 10; + optional bytes fileEncSha256 = 11; + repeated InteractiveAnnotation interactiveAnnotations = 12; + optional string directPath = 13; + optional int64 mediaKeyTimestamp = 14; + optional bytes jpegThumbnail = 16; + optional ContextInfo contextInfo = 17; + optional bytes streamingSidecar = 18; + enum VideoMessageAttribution { + NONE = 0; + GIPHY = 1; + TENOR = 2; + } + optional VideoMessageAttribution gifAttribution = 19; + optional bool viewOnce = 20; + optional string thumbnailDirectPath = 21; + optional bytes thumbnailSha256 = 22; + optional bytes thumbnailEncSha256 = 23; + optional string staticUrl = 24; +} + +message Call { + optional bytes callKey = 1; + optional string conversionSource = 2; + optional bytes conversionData = 3; + optional uint32 conversionDelaySeconds = 4; +} + +message Chat { + optional string displayName = 1; + optional string id = 2; +} + +message ProtocolMessage { + optional MessageKey key = 1; + enum ProtocolMessageType { + REVOKE = 0; + EPHEMERAL_SETTING = 3; + EPHEMERAL_SYNC_RESPONSE = 4; + HISTORY_SYNC_NOTIFICATION = 5; + APP_STATE_SYNC_KEY_SHARE = 6; + APP_STATE_SYNC_KEY_REQUEST = 7; + MSG_FANOUT_BACKFILL_REQUEST = 8; + INITIAL_SECURITY_NOTIFICATION_SETTING_SYNC = 9; + APP_STATE_FATAL_EXCEPTION_NOTIFICATION = 10; + } + optional ProtocolMessageType type = 2; + optional uint32 ephemeralExpiration = 4; + optional int64 ephemeralSettingTimestamp = 5; + optional HistorySyncNotification historySyncNotification = 6; + optional AppStateSyncKeyShare appStateSyncKeyShare = 7; + optional AppStateSyncKeyRequest appStateSyncKeyRequest = 8; + optional InitialSecurityNotificationSettingSync initialSecurityNotificationSettingSync = 9; + optional AppStateFatalExceptionNotification appStateFatalExceptionNotification = 10; + optional DisappearingMode disappearingMode = 11; +} + +message HistorySyncNotification { + optional bytes fileSha256 = 1; + optional uint64 fileLength = 2; + optional bytes mediaKey = 3; + optional bytes fileEncSha256 = 4; + optional string directPath = 5; + enum HistorySyncNotificationHistorySyncType { + INITIAL_BOOTSTRAP = 0; + INITIAL_STATUS_V3 = 1; + FULL = 2; + RECENT = 3; + PUSH_NAME = 4; + } + optional HistorySyncNotificationHistorySyncType syncType = 6; + optional uint32 chunkOrder = 7; + optional string originalMessageId = 8; +} + +message AppStateSyncKey { + optional AppStateSyncKeyId keyId = 1; + optional AppStateSyncKeyData keyData = 2; +} + +message AppStateSyncKeyId { + optional bytes keyId = 1; +} + +message AppStateSyncKeyFingerprint { + optional uint32 rawId = 1; + optional uint32 currentIndex = 2; + repeated uint32 deviceIndexes = 3 [packed=true]; +} + +message AppStateSyncKeyData { + optional bytes keyData = 1; + optional AppStateSyncKeyFingerprint fingerprint = 2; + optional int64 timestamp = 3; +} + +message AppStateSyncKeyShare { + repeated AppStateSyncKey keys = 1; +} + +message AppStateSyncKeyRequest { + repeated AppStateSyncKeyId keyIds = 1; +} + +message AppStateFatalExceptionNotification { + repeated string collectionNames = 1; + optional int64 timestamp = 2; +} + +message InitialSecurityNotificationSettingSync { + optional bool securityNotificationEnabled = 1; +} + +message ContactsArrayMessage { + optional string displayName = 1; + repeated ContactMessage contacts = 2; + optional ContextInfo contextInfo = 17; +} + +message HSMCurrency { + optional string currencyCode = 1; + optional int64 amount1000 = 2; +} + +message HSMDateTimeComponent { + enum HSMDateTimeComponentDayOfWeekType { + MONDAY = 1; + TUESDAY = 2; + WEDNESDAY = 3; + THURSDAY = 4; + FRIDAY = 5; + SATURDAY = 6; + SUNDAY = 7; + } + optional HSMDateTimeComponentDayOfWeekType dayOfWeek = 1; + optional uint32 year = 2; + optional uint32 month = 3; + optional uint32 dayOfMonth = 4; + optional uint32 hour = 5; + optional uint32 minute = 6; + enum HSMDateTimeComponentCalendarType { + GREGORIAN = 1; + SOLAR_HIJRI = 2; + } + optional HSMDateTimeComponentCalendarType calendar = 7; +} + +message HSMDateTimeUnixEpoch { + optional int64 timestamp = 1; +} + +message HSMDateTime { + oneof datetimeOneof { + HSMDateTimeComponent component = 1; + HSMDateTimeUnixEpoch unixEpoch = 2; + } +} + +message HSMLocalizableParameter { + optional string default = 1; + oneof paramOneof { + HSMCurrency currency = 2; + HSMDateTime dateTime = 3; + } +} + +message HighlyStructuredMessage { + optional string namespace = 1; + optional string elementName = 2; + repeated string params = 3; + optional string fallbackLg = 4; + optional string fallbackLc = 5; + repeated HSMLocalizableParameter localizableParams = 6; + optional string deterministicLg = 7; + optional string deterministicLc = 8; + optional TemplateMessage hydratedHsm = 9; +} + +message SendPaymentMessage { + optional Message noteMessage = 2; + optional MessageKey requestMessageKey = 3; + optional PaymentBackground background = 4; +} + +message RequestPaymentMessage { + optional Message noteMessage = 4; + optional string currencyCodeIso4217 = 1; + optional uint64 amount1000 = 2; + optional string requestFrom = 3; + optional int64 expiryTimestamp = 5; + optional Money amount = 6; + optional PaymentBackground background = 7; +} + +message DeclinePaymentRequestMessage { + optional MessageKey key = 1; +} + +message CancelPaymentRequestMessage { + optional MessageKey key = 1; +} + +message PaymentInviteMessage { + enum PaymentInviteMessageServiceType { + UNKNOWN = 0; + FBPAY = 1; + NOVI = 2; + UPI = 3; + } + optional PaymentInviteMessageServiceType serviceType = 1; + optional int64 expiryTimestamp = 2; +} + +message LiveLocationMessage { + optional double degreesLatitude = 1; + optional double degreesLongitude = 2; + optional uint32 accuracyInMeters = 3; + optional float speedInMps = 4; + optional uint32 degreesClockwiseFromMagneticNorth = 5; + optional string caption = 6; + optional int64 sequenceNumber = 7; + optional uint32 timeOffset = 8; + optional bytes jpegThumbnail = 16; + optional ContextInfo contextInfo = 17; +} + +message StickerMessage { + optional string url = 1; + optional bytes fileSha256 = 2; + optional bytes fileEncSha256 = 3; + optional bytes mediaKey = 4; + optional string mimetype = 5; + optional uint32 height = 6; + optional uint32 width = 7; + optional string directPath = 8; + optional uint64 fileLength = 9; + optional int64 mediaKeyTimestamp = 10; + optional uint32 firstFrameLength = 11; + optional bytes firstFrameSidecar = 12; + optional bool isAnimated = 13; + optional bytes pngThumbnail = 16; + optional ContextInfo contextInfo = 17; +} + +message FourRowTemplate { + optional HighlyStructuredMessage content = 6; + optional HighlyStructuredMessage footer = 7; + repeated TemplateButton buttons = 8; + oneof title { + DocumentMessage documentMessage = 1; + HighlyStructuredMessage highlyStructuredMessage = 2; + ImageMessage imageMessage = 3; + VideoMessage videoMessage = 4; + LocationMessage locationMessage = 5; + } +} + +message HydratedFourRowTemplate { + optional string hydratedContentText = 6; + optional string hydratedFooterText = 7; + repeated HydratedTemplateButton hydratedButtons = 8; + optional string templateId = 9; + oneof title { + DocumentMessage documentMessage = 1; + string hydratedTitleText = 2; + ImageMessage imageMessage = 3; + VideoMessage videoMessage = 4; + LocationMessage locationMessage = 5; + } +} + +message TemplateMessage { + optional ContextInfo contextInfo = 3; + optional HydratedFourRowTemplate hydratedTemplate = 4; + oneof format { + FourRowTemplate fourRowTemplate = 1; + HydratedFourRowTemplate hydratedFourRowTemplate = 2; + } +} + +message TemplateButtonReplyMessage { + optional string selectedId = 1; + optional string selectedDisplayText = 2; + optional ContextInfo contextInfo = 3; + optional uint32 selectedIndex = 4; +} + +message CatalogSnapshot { + optional ImageMessage catalogImage = 1; + optional string title = 2; + optional string description = 3; +} + +message ProductSnapshot { + optional ImageMessage productImage = 1; + optional string productId = 2; + optional string title = 3; + optional string description = 4; + optional string currencyCode = 5; + optional int64 priceAmount1000 = 6; + optional string retailerId = 7; + optional string url = 8; + optional uint32 productImageCount = 9; + optional string firstImageId = 11; + optional int64 salePriceAmount1000 = 12; +} + +message ProductMessage { + optional ProductSnapshot product = 1; + optional string businessOwnerJid = 2; + optional CatalogSnapshot catalog = 4; + optional ContextInfo contextInfo = 17; +} + +message OrderMessage { + optional string orderId = 1; + optional bytes thumbnail = 2; + optional int32 itemCount = 3; + enum OrderMessageOrderStatus { + INQUIRY = 1; + } + optional OrderMessageOrderStatus status = 4; + enum OrderMessageOrderSurface { + CATALOG = 1; + } + optional OrderMessageOrderSurface surface = 5; + optional string message = 6; + optional string orderTitle = 7; + optional string sellerJid = 8; + optional string token = 9; + optional int64 totalAmount1000 = 10; + optional string totalCurrencyCode = 11; + optional ContextInfo contextInfo = 17; +} + +message Row { + optional string title = 1; + optional string description = 2; + optional string rowId = 3; +} + +message Section { + optional string title = 1; + repeated Row rows = 2; +} + +message Product { + optional string productId = 1; +} + +message ProductSection { + optional string title = 1; + repeated Product products = 2; +} + +message ProductListHeaderImage { + optional string productId = 1; + optional bytes jpegThumbnail = 2; +} + +message ProductListInfo { + repeated ProductSection productSections = 1; + optional ProductListHeaderImage headerImage = 2; + optional string businessOwnerJid = 3; +} + +message ListMessage { + optional string title = 1; + optional string description = 2; + optional string buttonText = 3; + enum ListMessageListType { + UNKNOWN = 0; + SINGLE_SELECT = 1; + PRODUCT_LIST = 2; + } + optional ListMessageListType listType = 4; + repeated Section sections = 5; + optional ProductListInfo productListInfo = 6; + optional string footerText = 7; + optional ContextInfo contextInfo = 8; +} + +message SingleSelectReply { + optional string selectedRowId = 1; +} + +message ListResponseMessage { + optional string title = 1; + enum ListResponseMessageListType { + UNKNOWN = 0; + SINGLE_SELECT = 1; + } + optional ListResponseMessageListType listType = 2; + optional SingleSelectReply singleSelectReply = 3; + optional ContextInfo contextInfo = 4; + optional string description = 5; +} + +message Header { + optional string title = 1; + optional string subtitle = 2; + oneof media { + DocumentMessage documentMessage = 3; + ImageMessage imageMessage = 4; + } +} + +message Body { + optional string text = 1; +} + +message Footer { + optional string text = 1; +} + +message ShopsMessage { + optional string id = 1; + enum ShopsMessageSurface { + UNKNOWN_SURFACE = 0; + FB = 1; + IG = 2; + WA = 3; + } + optional ShopsMessageSurface surface = 2; + enum ShopsMessageType { + UNKNOWN_TYPE = 0; + PRODUCT = 1; + STOREFRONT = 2; + COLLECTION = 3; + } + optional ShopsMessageType type = 3; + optional int32 messageVersion = 4; +} + +message CollectionMessage { + optional string bizJid = 1; + optional string id = 2; + optional int32 messageVersion = 3; +} + +message InteractiveMessage { + optional Header header = 1; + optional Body body = 2; + optional Footer footer = 3; + optional ContextInfo contextInfo = 15; + oneof interactiveMessage { + ShopsMessage shopsMessage = 4; + CollectionMessage collectionMessage = 5; + } +} + +message GroupInviteMessage { + optional string groupJid = 1; + optional string inviteCode = 2; + optional int64 inviteExpiration = 3; + optional string groupName = 4; + optional bytes jpegThumbnail = 5; + optional string caption = 6; + optional ContextInfo contextInfo = 7; +} + +message DeviceSentMessage { + optional string destinationJid = 1; + optional Message message = 2; + optional string phash = 3; +} + +message FutureProofMessage { + optional Message message = 1; +} + +message ButtonText { + optional string displayText = 1; +} + +message NativeFlowInfo { + optional string name = 1; + optional string paramsJson = 2; +} + +message Button { + optional string buttonId = 1; + optional ButtonText buttonText = 2; + enum ButtonType { + UNKNOWN = 0; + RESPONSE = 1; + NATIVE_FLOW = 2; + } + optional ButtonType type = 3; + optional NativeFlowInfo nativeFlowInfo = 4; +} + +message ButtonsMessage { + optional string contentText = 6; + optional string footerText = 7; + optional ContextInfo contextInfo = 8; + repeated Button buttons = 9; + enum ButtonsMessageHeaderType { + UNKNOWN = 0; + EMPTY = 1; + TEXT = 2; + DOCUMENT = 3; + IMAGE = 4; + VIDEO = 5; + LOCATION = 6; + } + optional ButtonsMessageHeaderType headerType = 10; + oneof header { + string text = 1; + DocumentMessage documentMessage = 2; + ImageMessage imageMessage = 3; + VideoMessage videoMessage = 4; + LocationMessage locationMessage = 5; + } +} + +message ButtonsResponseMessage { + optional string selectedButtonId = 1; + optional ContextInfo contextInfo = 3; + enum ButtonsResponseMessageType { + UNKNOWN = 0; + DISPLAY_TEXT = 1; + } + optional ButtonsResponseMessageType type = 4; + oneof response { + string selectedDisplayText = 2; + } +} + +message Message { + optional string conversation = 1; + optional SenderKeyDistributionMessage senderKeyDistributionMessage = 2; + optional ImageMessage imageMessage = 3; + optional ContactMessage contactMessage = 4; + optional LocationMessage locationMessage = 5; + optional ExtendedTextMessage extendedTextMessage = 6; + optional DocumentMessage documentMessage = 7; + optional AudioMessage audioMessage = 8; + optional VideoMessage videoMessage = 9; + optional Call call = 10; + optional Chat chat = 11; + optional ProtocolMessage protocolMessage = 12; + optional ContactsArrayMessage contactsArrayMessage = 13; + optional HighlyStructuredMessage highlyStructuredMessage = 14; + optional SenderKeyDistributionMessage fastRatchetKeySenderKeyDistributionMessage = 15; + optional SendPaymentMessage sendPaymentMessage = 16; + optional LiveLocationMessage liveLocationMessage = 18; + optional RequestPaymentMessage requestPaymentMessage = 22; + optional DeclinePaymentRequestMessage declinePaymentRequestMessage = 23; + optional CancelPaymentRequestMessage cancelPaymentRequestMessage = 24; + optional TemplateMessage templateMessage = 25; + optional StickerMessage stickerMessage = 26; + optional GroupInviteMessage groupInviteMessage = 28; + optional TemplateButtonReplyMessage templateButtonReplyMessage = 29; + optional ProductMessage productMessage = 30; + optional DeviceSentMessage deviceSentMessage = 31; + optional MessageContextInfo messageContextInfo = 35; + optional ListMessage listMessage = 36; + optional FutureProofMessage viewOnceMessage = 37; + optional OrderMessage orderMessage = 38; + optional ListResponseMessage listResponseMessage = 39; + optional FutureProofMessage ephemeralMessage = 40; + optional InvoiceMessage invoiceMessage = 41; + optional ButtonsMessage buttonsMessage = 42; + optional ButtonsResponseMessage buttonsResponseMessage = 43; + optional PaymentInviteMessage paymentInviteMessage = 44; + optional InteractiveMessage interactiveMessage = 45; +} + +message DisappearingMode { + enum DisappearingModeInitiator { + CHANGED_IN_CHAT = 0; + INITIATED_BY_ME = 1; + INITIATED_BY_OTHER = 2; + } + optional DisappearingModeInitiator initiator = 1; +} + +message PaymentBackground { + optional string id = 1; + optional uint64 fileLength = 2; + optional uint32 width = 3; + optional uint32 height = 4; + optional string mimetype = 5; + optional fixed32 placeholderArgb = 6; + optional fixed32 textArgb = 7; + optional fixed32 subtextArgb = 8; +} + +message Money { + optional int64 value = 1; + optional uint32 offset = 2; + optional string currencyCode = 3; +} + +message HydratedQuickReplyButton { + optional string displayText = 1; + optional string id = 2; +} + +message HydratedURLButton { + optional string displayText = 1; + optional string url = 2; +} + +message HydratedCallButton { + optional string displayText = 1; + optional string phoneNumber = 2; +} + +message HydratedTemplateButton { + optional uint32 index = 4; + oneof hydratedButton { + HydratedQuickReplyButton quickReplyButton = 1; + HydratedURLButton urlButton = 2; + HydratedCallButton callButton = 3; + } +} + +message UserReceipt { + required string userJid = 1; + optional int64 receiptTimestamp = 2; + optional int64 readTimestamp = 3; + optional int64 playedTimestamp = 4; + repeated string pendingDeviceJid = 5; + repeated string deliveredDeviceJid = 6; +} + +message PhotoChange { + optional bytes oldPhoto = 1; + optional bytes newPhoto = 2; + optional uint32 newPhotoId = 3; +} + +message MediaData { + optional string localPath = 1; +} + message WebFeatures { enum WebFeaturesFlag { NOT_STARTED = 0; @@ -40,11 +948,17 @@ message WebFeatures { optional WebFeaturesFlag ephemeralMessages = 32; optional WebFeaturesFlag e2ENotificationSync = 33; optional WebFeaturesFlag recentStickersV2 = 34; - optional WebFeaturesFlag syncdRelease1 = 35; optional WebFeaturesFlag recentStickersV3 = 36; optional WebFeaturesFlag userNotice = 37; - optional WebFeaturesFlag syncdRelease11 = 38; optional WebFeaturesFlag support = 39; + optional WebFeaturesFlag groupUiiCleanup = 40; + optional WebFeaturesFlag groupDogfoodingInternalOnly = 41; + optional WebFeaturesFlag settingsSync = 42; + optional WebFeaturesFlag archiveV2 = 43; + optional WebFeaturesFlag ephemeralAllowGroupMembers = 44; + optional WebFeaturesFlag ephemeral24HDuration = 45; + optional WebFeaturesFlag mdForceUpgrade = 46; + optional WebFeaturesFlag disappearingMode = 47; } message NotificationMessageInfo { @@ -118,8 +1032,12 @@ message PaymentInfo { COLLECT_EXPIRED = 25; COLLECT_CANCELED = 26; COLLECT_CANCELLING = 27; + IN_REVIEW = 28; } optional PaymentInfoTxnStatus txnStatus = 10; + optional bool useNoviFiatFormat = 11; + optional Money primaryAmount = 12; + optional Money exchangeAmount = 13; } message WebMessageInfo { @@ -136,6 +1054,7 @@ message WebMessageInfo { } optional WebMessageInfoStatus status = 4; optional string participant = 5; + optional uint64 messageC2STimestamp = 6; optional bool ignore = 16; optional bool starred = 17; optional bool broadcast = 18; @@ -264,6 +1183,18 @@ message WebMessageInfo { BLUE_MSG_SELF_FB_UNVERIFIED_TO_BSP_PREMISE_VERIFIED = 116; BLUE_MSG_SELF_FB_VERIFIED_TO_BSP_PREMISE_UNVERIFIED = 117; E2E_IDENTITY_UNAVAILABLE = 118; + GROUP_CREATING = 119; + GROUP_CREATE_FAILED = 120; + GROUP_BOUNCED = 121; + BLOCK_CONTACT = 122; + EPHEMERAL_SETTING_NOT_APPLIED = 123; + SYNC_FAILED = 124; + SYNCING = 125; + BIZ_PRIVACY_MODE_INIT_FB = 126; + BIZ_PRIVACY_MODE_INIT_BSP = 127; + BIZ_PRIVACY_MODE_TO_FB = 128; + BIZ_PRIVACY_MODE_TO_BSP = 129; + DISAPPEARING_MODE = 130; } optional WebMessageInfoStubType messageStubType = 24; optional bool clearMedia = 25; @@ -285,651 +1216,7 @@ message WebMessageInfo { } optional WebMessageInfoBizPrivacyStatus bizPrivacyStatus = 36; optional string verifiedBizName = 37; + optional MediaData mediaData = 38; + optional PhotoChange photoChange = 39; + repeated UserReceipt userReceipt = 40; } - -message HydratedQuickReplyButton { - optional string displayText = 1; - optional string id = 2; -} - -message HydratedURLButton { - optional string displayText = 1; - optional string url = 2; -} - -message HydratedCallButton { - optional string displayText = 1; - optional string phoneNumber = 2; -} - -message HydratedTemplateButton { - optional uint32 index = 4; - oneof hydratedButton { - HydratedQuickReplyButton quickReplyButton = 1; - HydratedURLButton urlButton = 2; - HydratedCallButton callButton = 3; - } -} - -message QuickReplyButton { - optional HighlyStructuredMessage displayText = 1; - optional string id = 2; -} - -message URLButton { - optional HighlyStructuredMessage displayText = 1; - optional HighlyStructuredMessage url = 2; -} - -message CallButton { - optional HighlyStructuredMessage displayText = 1; - optional HighlyStructuredMessage phoneNumber = 2; -} - -message TemplateButton { - optional uint32 index = 4; - oneof button { - QuickReplyButton quickReplyButton = 1; - URLButton urlButton = 2; - CallButton callButton = 3; - } -} - -message Location { - optional double degreesLatitude = 1; - optional double degreesLongitude = 2; - optional string name = 3; -} - -message Point { - optional int32 xDeprecated = 1; - optional int32 yDeprecated = 2; - optional double x = 3; - optional double y = 4; -} - -message InteractiveAnnotation { - repeated Point polygonVertices = 1; - oneof action { - Location location = 2; - } -} -message AdReplyInfo { - optional string advertiserName = 1; - enum AdReplyInfoMediaType { - NONE = 0; - IMAGE = 1; - VIDEO = 2; - } - optional AdReplyInfoMediaType mediaType = 2; - optional bytes jpegThumbnail = 16; - optional string caption = 17; -} - -message ExternalAdReplyInfo { - optional string title = 1; - optional string body = 2; - enum ExternalAdReplyInfoMediaType { - NONE = 0; - IMAGE = 1; - VIDEO = 2; - } - optional ExternalAdReplyInfoMediaType mediaType = 3; - optional string thumbnailUrl = 4; - optional string mediaUrl = 5; - optional bytes thumbnail = 6; - optional string sourceType = 7; - optional string sourceId = 8; - optional string sourceUrl = 9; -} - -message ContextInfo { - optional string stanzaId = 1; - optional string participant = 2; - optional Message quotedMessage = 3; - optional string remoteJid = 4; - repeated string mentionedJid = 15; - optional string conversionSource = 18; - optional bytes conversionData = 19; - optional uint32 conversionDelaySeconds = 20; - optional uint32 forwardingScore = 21; - optional bool isForwarded = 22; - optional AdReplyInfo quotedAd = 23; - optional MessageKey placeholderKey = 24; - optional uint32 expiration = 25; - optional int64 ephemeralSettingTimestamp = 26; - optional bytes ephemeralSharedSecret = 27; - optional ExternalAdReplyInfo externalAdReply = 28; -} - -message SenderKeyDistributionMessage { - optional string groupId = 1; - optional bytes axolotlSenderKeyDistributionMessage = 2; -} - -message ImageMessage { - optional string url = 1; - optional string mimetype = 2; - optional string caption = 3; - optional bytes fileSha256 = 4; - optional uint64 fileLength = 5; - optional uint32 height = 6; - optional uint32 width = 7; - optional bytes mediaKey = 8; - optional bytes fileEncSha256 = 9; - repeated InteractiveAnnotation interactiveAnnotations = 10; - optional string directPath = 11; - optional int64 mediaKeyTimestamp = 12; - optional bytes jpegThumbnail = 16; - optional ContextInfo contextInfo = 17; - optional bytes firstScanSidecar = 18; - optional uint32 firstScanLength = 19; - optional uint32 experimentGroupId = 20; - optional bytes scansSidecar = 21; - repeated uint32 scanLengths = 22; - optional bytes midQualityFileSha256 = 23; - optional bytes midQualityFileEncSha256 = 24; - optional bool viewOnce = 25; -} - -message ContactMessage { - optional string displayName = 1; - optional string vcard = 16; - optional ContextInfo contextInfo = 17; -} - -message LocationMessage { - optional double degreesLatitude = 1; - optional double degreesLongitude = 2; - optional string name = 3; - optional string address = 4; - optional string url = 5; - optional bool isLive = 6; - optional uint32 accuracyInMeters = 7; - optional float speedInMps = 8; - optional uint32 degreesClockwiseFromMagneticNorth = 9; - optional string comment = 11; - optional bytes jpegThumbnail = 16; - optional ContextInfo contextInfo = 17; -} - -message ExtendedTextMessage { - optional string text = 1; - optional string matchedText = 2; - optional string canonicalUrl = 4; - optional string description = 5; - optional string title = 6; - optional fixed32 textArgb = 7; - optional fixed32 backgroundArgb = 8; - enum ExtendedTextMessageFontType { - SANS_SERIF = 0; - SERIF = 1; - NORICAN_REGULAR = 2; - BRYNDAN_WRITE = 3; - BEBASNEUE_REGULAR = 4; - OSWALD_HEAVY = 5; - } - optional ExtendedTextMessageFontType font = 9; - enum ExtendedTextMessagePreviewType { - NONE = 0; - VIDEO = 1; - } - optional ExtendedTextMessagePreviewType previewType = 10; - optional bytes jpegThumbnail = 16; - optional ContextInfo contextInfo = 17; - optional bool doNotPlayInline = 18; -} - -message DocumentMessage { - optional string url = 1; - optional string mimetype = 2; - optional string title = 3; - optional bytes fileSha256 = 4; - optional uint64 fileLength = 5; - optional uint32 pageCount = 6; - optional bytes mediaKey = 7; - optional string fileName = 8; - optional bytes fileEncSha256 = 9; - optional string directPath = 10; - optional int64 mediaKeyTimestamp = 11; - optional bool contactVcard = 12; - optional string thumbnailDirectPath = 13; - optional bytes thumbnailSha256 = 14; - optional bytes thumbnailEncSha256 = 15; - optional bytes jpegThumbnail = 16; - optional ContextInfo contextInfo = 17; - optional uint32 thumbnailHeight = 18; - optional uint32 thumbnailWidth = 19; -} - -message AudioMessage { - optional string url = 1; - optional string mimetype = 2; - optional bytes fileSha256 = 3; - optional uint64 fileLength = 4; - optional uint32 seconds = 5; - optional bool ptt = 6; - optional bytes mediaKey = 7; - optional bytes fileEncSha256 = 8; - optional string directPath = 9; - optional int64 mediaKeyTimestamp = 10; - optional ContextInfo contextInfo = 17; - optional bytes streamingSidecar = 18; -} - -message VideoMessage { - optional string url = 1; - optional string mimetype = 2; - optional bytes fileSha256 = 3; - optional uint64 fileLength = 4; - optional uint32 seconds = 5; - optional bytes mediaKey = 6; - optional string caption = 7; - optional bool gifPlayback = 8; - optional uint32 height = 9; - optional uint32 width = 10; - optional bytes fileEncSha256 = 11; - repeated InteractiveAnnotation interactiveAnnotations = 12; - optional string directPath = 13; - optional int64 mediaKeyTimestamp = 14; - optional bytes jpegThumbnail = 16; - optional ContextInfo contextInfo = 17; - optional bytes streamingSidecar = 18; - enum VideoMessageAttribution { - NONE = 0; - GIPHY = 1; - TENOR = 2; - } - optional VideoMessageAttribution gifAttribution = 19; - optional bool viewOnce = 20; -} - -message Call { - optional bytes callKey = 1; -} - -message Chat { - optional string displayName = 1; - optional string id = 2; -} - -message ProtocolMessage { - optional MessageKey key = 1; - enum ProtocolMessageType { - REVOKE = 0; - EPHEMERAL_SETTING = 3; - EPHEMERAL_SYNC_RESPONSE = 4; - HISTORY_SYNC_NOTIFICATION = 5; - APP_STATE_SYNC_KEY_SHARE = 6; - APP_STATE_SYNC_KEY_REQUEST = 7; - MSG_FANOUT_BACKFILL_REQUEST = 8; - INITIAL_SECURITY_NOTIFICATION_SETTING_SYNC = 9; - } - optional ProtocolMessageType type = 2; - optional uint32 ephemeralExpiration = 4; - optional int64 ephemeralSettingTimestamp = 5; - optional HistorySyncNotification historySyncNotification = 6; - optional AppStateSyncKeyShare appStateSyncKeyShare = 7; - optional AppStateSyncKeyRequest appStateSyncKeyRequest = 8; - optional InitialSecurityNotificationSettingSync initialSecurityNotificationSettingSync = 9; -} - -message HistorySyncNotification { - optional bytes fileSha256 = 1; - optional uint64 fileLength = 2; - optional bytes mediaKey = 3; - optional bytes fileEncSha256 = 4; - optional string directPath = 5; - enum HistorySyncNotificationHistorySyncType { - INITIAL_BOOTSTRAP = 0; - INITIAL_STATUS_V3 = 1; - FULL = 2; - RECENT = 3; - } - optional HistorySyncNotificationHistorySyncType syncType = 6; - optional uint32 chunkOrder = 7; - optional string originalMessageId = 8; -} - -message AppStateSyncKey { - optional AppStateSyncKeyId keyId = 1; - optional AppStateSyncKeyData keyData = 2; -} - -message AppStateSyncKeyId { - optional bytes keyId = 1; -} - -message AppStateSyncKeyFingerprint { - optional uint32 rawId = 1; - optional uint32 currentIndex = 2; -} - -message AppStateSyncKeyData { - optional bytes keyData = 1; - optional AppStateSyncKeyFingerprint fingerprint = 2; - optional int64 timestamp = 3; -} - -message AppStateSyncKeyShare { - repeated AppStateSyncKey keys = 1; -} - -message AppStateSyncKeyRequest { - repeated AppStateSyncKeyId keyIds = 1; -} - -message InitialSecurityNotificationSettingSync { - optional bool securityNotificationEnabled = 1; -} - -message ContactsArrayMessage { - optional string displayName = 1; - repeated ContactMessage contacts = 2; - optional ContextInfo contextInfo = 17; -} - -message HSMCurrency { - optional string currencyCode = 1; - optional int64 amount1000 = 2; -} - -message HSMDateTimeComponent { - enum HSMDateTimeComponentDayOfWeekType { - MONDAY = 1; - TUESDAY = 2; - WEDNESDAY = 3; - THURSDAY = 4; - FRIDAY = 5; - SATURDAY = 6; - SUNDAY = 7; - } - optional HSMDateTimeComponentDayOfWeekType dayOfWeek = 1; - optional uint32 year = 2; - optional uint32 month = 3; - optional uint32 dayOfMonth = 4; - optional uint32 hour = 5; - optional uint32 minute = 6; - enum HSMDateTimeComponentCalendarType { - GREGORIAN = 1; - SOLAR_HIJRI = 2; - } - optional HSMDateTimeComponentCalendarType calendar = 7; -} - -message HSMDateTimeUnixEpoch { - optional int64 timestamp = 1; -} - -message HSMDateTime { - oneof datetimeOneof { - HSMDateTimeComponent component = 1; - HSMDateTimeUnixEpoch unixEpoch = 2; - } -} - -message HSMLocalizableParameter { - optional string default = 1; - oneof paramOneof { - HSMCurrency currency = 2; - HSMDateTime dateTime = 3; - } -} - -message HighlyStructuredMessage { - optional string namespace = 1; - optional string elementName = 2; - repeated string params = 3; - optional string fallbackLg = 4; - optional string fallbackLc = 5; - repeated HSMLocalizableParameter localizableParams = 6; - optional string deterministicLg = 7; - optional string deterministicLc = 8; - optional TemplateMessage hydratedHsm = 9; -} - -message SendPaymentMessage { - optional Message noteMessage = 2; - optional MessageKey requestMessageKey = 3; -} - -message RequestPaymentMessage { - optional Message noteMessage = 4; - optional string currencyCodeIso4217 = 1; - optional uint64 amount1000 = 2; - optional string requestFrom = 3; - optional int64 expiryTimestamp = 5; -} - -message DeclinePaymentRequestMessage { - optional MessageKey key = 1; -} - -message CancelPaymentRequestMessage { - optional MessageKey key = 1; -} - -message LiveLocationMessage { - optional double degreesLatitude = 1; - optional double degreesLongitude = 2; - optional uint32 accuracyInMeters = 3; - optional float speedInMps = 4; - optional uint32 degreesClockwiseFromMagneticNorth = 5; - optional string caption = 6; - optional int64 sequenceNumber = 7; - optional uint32 timeOffset = 8; - optional bytes jpegThumbnail = 16; - optional ContextInfo contextInfo = 17; -} - -message StickerMessage { - optional string url = 1; - optional bytes fileSha256 = 2; - optional bytes fileEncSha256 = 3; - optional bytes mediaKey = 4; - optional string mimetype = 5; - optional uint32 height = 6; - optional uint32 width = 7; - optional string directPath = 8; - optional uint64 fileLength = 9; - optional int64 mediaKeyTimestamp = 10; - optional uint32 firstFrameLength = 11; - optional bytes firstFrameSidecar = 12; - optional bool isAnimated = 13; - optional bytes pngThumbnail = 16; - optional ContextInfo contextInfo = 17; -} - -message FourRowTemplate { - optional HighlyStructuredMessage content = 6; - optional HighlyStructuredMessage footer = 7; - repeated TemplateButton buttons = 8; - oneof title { - DocumentMessage documentMessage = 1; - HighlyStructuredMessage highlyStructuredMessage = 2; - ImageMessage imageMessage = 3; - VideoMessage videoMessage = 4; - LocationMessage locationMessage = 5; - } -} - -message HydratedFourRowTemplate { - optional string hydratedContentText = 6; - optional string hydratedFooterText = 7; - repeated HydratedTemplateButton hydratedButtons = 8; - optional string templateId = 9; - oneof title { - DocumentMessage documentMessage = 1; - string hydratedTitleText = 2; - ImageMessage imageMessage = 3; - VideoMessage videoMessage = 4; - LocationMessage locationMessage = 5; - } -} - -message TemplateMessage { - optional ContextInfo contextInfo = 3; - optional HydratedFourRowTemplate hydratedTemplate = 4; - oneof format { - FourRowTemplate fourRowTemplate = 1; - HydratedFourRowTemplate hydratedFourRowTemplate = 2; - } -} - -message TemplateButtonReplyMessage { - optional string selectedId = 1; - optional string selectedDisplayText = 2; - optional ContextInfo contextInfo = 3; - optional uint32 selectedIndex = 4; -} - -message CatalogSnapshot { - optional ImageMessage catalogImage = 1; - optional string title = 2; - optional string description = 3; -} - -message ProductSnapshot { - optional ImageMessage productImage = 1; - optional string productId = 2; - optional string title = 3; - optional string description = 4; - optional string currencyCode = 5; - optional int64 priceAmount1000 = 6; - optional string retailerId = 7; - optional string url = 8; - optional uint32 productImageCount = 9; - optional string firstImageId = 11; -} - -message ProductMessage { - optional ProductSnapshot product = 1; - optional string businessOwnerJid = 2; - optional CatalogSnapshot catalog = 4; - optional ContextInfo contextInfo = 17; -} - -message OrderMessage { - optional string orderId = 1; - optional bytes thumbnail = 2; - optional int32 itemCount = 3; - enum OrderMessageOrderStatus { - INQUIRY = 1; - } - optional OrderMessageOrderStatus status = 4; - enum OrderMessageOrderSurface { - CATALOG = 1; - } - optional OrderMessageOrderSurface surface = 5; - optional string message = 6; - optional string orderTitle = 7; - optional string sellerJid = 8; - optional string token = 9; - optional ContextInfo contextInfo = 17; -} - -message Row { - optional string title = 1; - optional string description = 2; - optional string rowId = 3; -} - -message Section { - optional string title = 1; - repeated Row rows = 2; -} - -message ListMessage { - optional string title = 1; - optional string description = 2; - optional string buttonText = 3; - enum ListMessageListType { - UNKNOWN = 0; - SINGLE_SELECT = 1; - } - optional ListMessageListType listType = 4; - repeated Section sections = 5; -} - -message SingleSelectReply { - optional string selectedRowId = 1; -} - -message ListResponseMessage { - optional string selectedDisplayText = 1; - enum ListResponseMessageListType { - UNKNOWN = 0; - SINGLE_SELECT = 1; - } - optional ListResponseMessageListType listType = 2; - optional SingleSelectReply singleSelectReply = 3; - optional ContextInfo contextInfo = 4; -} - -message GroupInviteMessage { - optional string groupJid = 1; - optional string inviteCode = 2; - optional int64 inviteExpiration = 3; - optional string groupName = 4; - optional bytes jpegThumbnail = 5; - optional string caption = 6; - optional ContextInfo contextInfo = 7; -} - -message EphemeralSetting { - optional string chatJid = 1; - optional uint32 ephemeralExpiration = 2; - optional int64 ephemeralSettingTimestamp = 3; -} - -message DeviceSentMessage { - optional string destinationJid = 1; - optional Message message = 2; - optional string phash = 3; - repeated EphemeralSetting broadcastEphemeralSettings = 4; -} - -message FutureProofMessage { - optional Message message = 1; -} - -message Message { - optional string conversation = 1; - optional SenderKeyDistributionMessage senderKeyDistributionMessage = 2; - optional ImageMessage imageMessage = 3; - optional ContactMessage contactMessage = 4; - optional LocationMessage locationMessage = 5; - optional ExtendedTextMessage extendedTextMessage = 6; - optional DocumentMessage documentMessage = 7; - optional AudioMessage audioMessage = 8; - optional VideoMessage videoMessage = 9; - optional Call call = 10; - optional Chat chat = 11; - optional ProtocolMessage protocolMessage = 12; - optional ContactsArrayMessage contactsArrayMessage = 13; - optional HighlyStructuredMessage highlyStructuredMessage = 14; - optional SenderKeyDistributionMessage fastRatchetKeySenderKeyDistributionMessage = 15; - optional SendPaymentMessage sendPaymentMessage = 16; - optional LiveLocationMessage liveLocationMessage = 18; - optional RequestPaymentMessage requestPaymentMessage = 22; - optional DeclinePaymentRequestMessage declinePaymentRequestMessage = 23; - optional CancelPaymentRequestMessage cancelPaymentRequestMessage = 24; - optional TemplateMessage templateMessage = 25; - optional StickerMessage stickerMessage = 26; - optional GroupInviteMessage groupInviteMessage = 28; - optional TemplateButtonReplyMessage templateButtonReplyMessage = 29; - optional ProductMessage productMessage = 30; - optional DeviceSentMessage deviceSentMessage = 31; - optional ListMessage listMessage = 36; - optional FutureProofMessage viewOnceMessage = 37; - optional OrderMessage orderMessage = 38; - optional ListResponseMessage listResponseMessage = 39; - optional FutureProofMessage ephemeralMessage = 40; -} - -message MessageKey { - optional string remoteJid = 1; - optional bool fromMe = 2; - optional string id = 3; - optional string participant = 4; -} \ No newline at end of file diff --git a/src/BinaryNode/decode.ts b/src/BinaryNode/decode.ts index bed96f1..7f26239 100644 --- a/src/BinaryNode/decode.ts +++ b/src/BinaryNode/decode.ts @@ -1,4 +1,4 @@ -import { proto } from '../../WAMessage/WAMessage' +import { proto } from '../../WAMessage' import { BinaryNode, DoubleByteTokens, SingleByteTokens, Tags } from './types' function decode(buffer: Buffer, makeNode: () => T, indexRef: { index: number }) { diff --git a/src/BinaryNode/encode.ts b/src/BinaryNode/encode.ts index db29abf..4499236 100644 --- a/src/BinaryNode/encode.ts +++ b/src/BinaryNode/encode.ts @@ -1,4 +1,4 @@ -import { proto } from "../../WAMessage/WAMessage"; +import { proto } from "../../WAMessage"; import { BinaryNode, SingleByteTokens, Tags } from "./types"; const encode = ({ header, attributes, data }: BinaryNode, buffer: number[] = []) => { diff --git a/src/BinaryNode/types.ts b/src/BinaryNode/types.ts index 9139342..8e5e56a 100644 --- a/src/BinaryNode/types.ts +++ b/src/BinaryNode/types.ts @@ -1,4 +1,4 @@ -import { proto } from "../../WAMessage/WAMessage" +import { proto } from "../../WAMessage" export type Attributes = { [key: string]: string } export type BinaryNodeData = BinaryNode[] | string | Buffer | proto.IWebMessageInfo | undefined diff --git a/src/Connection/messages.ts b/src/Connection/messages.ts index 09112d7..2fcf818 100644 --- a/src/Connection/messages.ts +++ b/src/Connection/messages.ts @@ -5,7 +5,6 @@ import { Chat, Presence, WAMessageCursor, SocketConfig, WAMessage, WAMessageKey, import { isGroupID, toNumber, whatsappID, generateWAMessage, decryptMediaMessageBuffer } from "../Utils"; import makeChatsSocket from "./chats"; import { WA_DEFAULT_EPHEMERAL } from "../Defaults"; -import { Attributes } from "../BinaryNode/types"; const STATUS_MAP = { read: WAMessageStatus.READ, @@ -19,8 +18,7 @@ const makeMessagesSocket = (config: SocketConfig) => { const { ev, socketEvents, - query, - sendMessage, + query, generateMessageTag, currentEpoch, setQuery, diff --git a/src/Tests/Tests.Media.ts b/src/Tests/Tests.Media.ts index 34426ad..6960438 100644 --- a/src/Tests/Tests.Media.ts +++ b/src/Tests/Tests.Media.ts @@ -1,7 +1,7 @@ import { deepStrictEqual, strictEqual } from 'assert' import { createWriteStream } from 'fs' import { readFile } from 'fs/promises' -import { proto } from '../../WAMessage/WAMessage' +import { proto } from '../../WAMessage' import { MessageType } from '../WAConnection' import { aesEncrypWithIV, decryptMediaMessageBuffer, encryptedStream, getMediaKeys, getStream, hmacSign, sha256 } from '../WAConnection/Utils' import { WAConnectionTest } from './Common' diff --git a/src/Types/Message.ts b/src/Types/Message.ts index 01df8a3..51c038a 100644 --- a/src/Types/Message.ts +++ b/src/Types/Message.ts @@ -1,7 +1,7 @@ import type { Agent } from "https" import type { Logger } from "pino" import type { URL } from "url" -import { proto } from '../../WAMessage/WAMessage' +import { proto } from '../../WAMessage' // export the WAMessage Prototypes export { proto as WAMessageProto } diff --git a/src/Types/index.ts b/src/Types/index.ts index d074864..0a32093 100644 --- a/src/Types/index.ts +++ b/src/Types/index.ts @@ -17,7 +17,7 @@ import { ConnectionState } from './Store' import { GroupMetadata, ParticipantAction } from './GroupMetadata' import { MessageInfo, MessageInfoUpdate, MessageUpdateType, WAMessage, WAMessageKey, WAMessageUpdate } from './Message' -import { proto } from '../../WAMessage/WAMessage' +import { proto } from '../../WAMessage' /** used for binary messages */ export enum WAMetric { diff --git a/src/index.ts b/src/index.ts index 331f02b..1c46348 100644 --- a/src/index.ts +++ b/src/index.ts @@ -1,6 +1,6 @@ import makeConnection from './Connection' -export * from '../WAMessage/WAMessage' +export * from '../WAMessage' export * from './Utils' export * from './Types' export * from './Store'