@vendasta/conversation 0.74.0 → 0.75.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/esm2022/lib/_internal/interfaces/api.interface.mjs +1 -1
- package/esm2022/lib/_internal/interfaces/widget.interface.mjs +1 -1
- package/esm2022/lib/_internal/objects/api.mjs +25 -1
- package/esm2022/lib/_internal/objects/widget.mjs +9 -1
- package/fesm2022/vendasta-conversation.mjs +32 -0
- package/fesm2022/vendasta-conversation.mjs.map +1 -1
- package/lib/_internal/interfaces/api.interface.d.ts +6 -0
- package/lib/_internal/interfaces/widget.interface.d.ts +2 -0
- package/lib/_internal/objects/api.d.ts +6 -0
- package/lib/_internal/objects/widget.d.ts +2 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vendasta-conversation.mjs","sources":["../../../conversation_sdk/src/lib/_internal/enums/common.enum.ts","../../../conversation_sdk/src/lib/_internal/enums/conversation.enum.ts","../../../conversation_sdk/src/lib/_internal/enums/message.enum.ts","../../../conversation_sdk/src/lib/_internal/enums/participant.enum.ts","../../../conversation_sdk/src/lib/_internal/enums/conversation-view.enum.ts","../../../conversation_sdk/src/lib/_internal/enums/widget.enum.ts","../../../conversation_sdk/src/lib/_internal/enums/evaluation.enum.ts","../../../conversation_sdk/src/lib/_internal/enums/api.enum.ts","../../../conversation_sdk/src/lib/_internal/enums/index.ts","../../../conversation_sdk/src/lib/_internal/objects/common.ts","../../../conversation_sdk/src/lib/_internal/objects/conversation.ts","../../../conversation_sdk/src/lib/_internal/objects/message.ts","../../../conversation_sdk/src/lib/_internal/objects/participant.ts","../../../conversation_sdk/src/lib/_internal/objects/annotations.ts","../../../conversation_sdk/src/lib/_internal/objects/configuration.ts","../../../conversation_sdk/src/lib/_internal/objects/conversation-view.ts","../../../conversation_sdk/src/lib/_internal/objects/widget.ts","../../../conversation_sdk/src/lib/_internal/objects/field-mask.ts","../../../conversation_sdk/src/lib/_internal/objects/message-template.ts","../../../conversation_sdk/src/lib/_internal/objects/aisystemmessage.ts","../../../conversation_sdk/src/lib/_internal/objects/event.ts","../../../conversation_sdk/src/lib/_internal/objects/api.ts","../../../conversation_sdk/src/lib/_internal/objects/index.ts","../../../conversation_sdk/src/lib/_generated/host.service.ts","../../../conversation_sdk/src/lib/_internal/ai-system-message.api.service.ts","../../../conversation_sdk/src/lib/_internal/conversation.api.service.ts","../../../conversation_sdk/src/lib/_internal/email.api.service.ts","../../../conversation_sdk/src/lib/_internal/inbox.api.service.ts","../../../conversation_sdk/src/lib/_internal/index.ts","../../../conversation_sdk/src/vendasta-conversation.ts"],"sourcesContent":["// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\n\nexport enum GlobalParticipantType {\n GLOBAL_PARTICIPANT_TYPE_UNDEFINED = 0,\n GLOBAL_PARTICIPANT_TYPE_CUSTOMER = 1,\n GLOBAL_PARTICIPANT_TYPE_IAM_USER = 2,\n GLOBAL_PARTICIPANT_TYPE_ACCOUNT_GROUP = 3,\n GLOBAL_PARTICIPANT_TYPE_PARTNER = 4,\n GLOBAL_PARTICIPANT_TYPE_IAM_TEMPORARY_SUBJECT = 5,\n GLOBAL_PARTICIPANT_TYPE_DIGITAL_AGENT = 6,\n GLOBAL_PARTICIPANT_TYPE_VENDOR = 7,\n GLOBAL_PARTICIPANT_TYPE_OPENAI_BOT = 8,\n GLOBAL_PARTICIPANT_TYPE_ANONYMOUS = 9,\n GLOBAL_PARTICIPANT_TYPE_GROUP = 10,\n}\n\nexport enum SortDirection {\n SORT_DIRECTION_DESCENDING = 0,\n SORT_DIRECTION_ASCENDING = 1,\n}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\n\nexport enum ConversationChannel {\n CONVERSATION_CHANNEL_UNDEFINED = 0,\n CONVERSATION_CHANNEL_INTERNAL = 1,\n CONVERSATION_CHANNEL_SMS = 2,\n CONVERSATION_CHANNEL_FACEBOOK = 3,\n CONVERSATION_CHANNEL_GOOGLE_MESSAGES = 4,\n CONVERSATION_CHANNEL_OPENAI = 5,\n CONVERSATION_CHANNEL_EMAIL = 6,\n CONVERSATION_CHANNEL_GOOGLE_BUSINESS_COMMUNICATIONS = 7,\n CONVERSATION_CHANNEL_WEB_CHAT = 8,\n CONVERSATION_CHANNEL_INSTAGRAM = 9,\n}\n\nexport enum PlatformLocation {\n PLATFORM_LOCATION_UNDEFINED = 0,\n PLATFORM_LOCATION_BUSINESS_APP = 1,\n PLATFORM_LOCATION_PARTNER_CENTER = 2,\n PLATFORM_LOCATION_VENDOR_CENTER = 3,\n PLATFORM_LOCATION_TASK_MANAGER = 4,\n PLATFORM_LOCATION_PROPOSAL_BUILDER = 5,\n PLATFORM_LOCATION_SALES_CENTER = 6,\n}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\n\nexport enum MessageStatus {\n MESSAGE_STATUS_NOT_READ = 0,\n MESSAGE_STATUS_READ = 1,\n MESSAGE_STATUS_SENT = 2,\n MESSAGE_STATUS_DELIVERED = 3,\n MESSAGE_STATUS_FAILED = 4,\n MESSAGE_STATUS_UNDELIVERED = 5,\n MESSAGE_STATUS_SENDING = 6,\n}\n\nexport enum MessageType {\n MESSAGE_TYPE_MESSAGE = 0,\n MESSAGE_TYPE_MEDIA = 1,\n MESSAGE_TYPE_SYSTEM = 2,\n MESSAGE_TYPE_FORM_SUBMISSION = 3,\n MESSAGE_TYPE_BOOKING_AVAILABILITY = 4,\n}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\n\nexport enum ParticipantType {\n PARTICIPANT_TYPE_UNDEFINED = 0,\n PARTICIPANT_TYPE_CUSTOMER = 1,\n PARTICIPANT_TYPE_IAM_USER = 2,\n PARTICIPANT_TYPE_ACCOUNT_GROUP = 3,\n PARTICIPANT_TYPE_PARTNER = 4,\n PARTICIPANT_TYPE_IAM_TEMPORARY_SUBJECT = 5,\n PARTICIPANT_TYPE_DIGITAL_AGENT = 6,\n PARTICIPANT_TYPE_VENDOR = 7,\n PARTICIPANT_TYPE_OPENAI_BOT = 8,\n PARTICIPANT_TYPE_ANONYMOUS = 9,\n PARTICIPANT_TYPE_GROUP = 10,\n}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\n\nexport enum ViewType {\n VIEW_TYPE_UNDEFINED = 0,\n VIEW_TYPE_FOLLOWING = 1,\n}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\n\nexport enum WidgetPosition {\n WIDGET_POSITION_UNSPECIFIED = 0,\n WIDGET_POSITION_RIGHT = 1,\n WIDGET_POSITION_LEFT = 2,\n}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\n\nexport enum EvaluationSentiment {\n EVALUATION_SENTIMENT_UNDEFINED = 0,\n EVALUATION_SENTIMENT_POSITIVE = 1,\n EVALUATION_SENTIMENT_NEGATIVE = 2,\n}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\n\nexport enum GetMessageTemplateRequestHydrationOptionsHydrationEntityEntityType {\n ENTITY_TYPE_UNDEFINED = 0,\n ENTITY_TYPE_PARTNER = 1,\n ENTITY_TYPE_ACCOUNT_GROUP = 2,\n ENTITY_TYPE_CONTACT = 3,\n}\n\nexport enum MetadataIdentifier {\n METADATA_IDENTIFIER_UNDEFINED = 0,\n METADATA_IDENTIFIER_RECIPIENT = 1,\n METADATA_IDENTIFIER_SENDER = 2,\n METADATA_IDENTIFIER_CONVERSATION = 3,\n}\n\nexport enum SetLastSeenRequestStatus {\n SET_LAST_SEEN_REQUEST_STATUS_READ = 0,\n SET_LAST_SEEN_REQUEST_STATUS_UNREAD = 1,\n}\n\nexport enum Status {\n ERROR = 0,\n WARNING = 1,\n INFO = 2,\n}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums Index.\n// *********************************\nexport {\n GlobalParticipantType,\n SortDirection,\n} from './common.enum';\nexport {\n ConversationChannel,\n PlatformLocation,\n} from './conversation.enum';\nexport {\n MessageStatus,\n MessageType,\n} from './message.enum';\nexport {\n ParticipantType,\n} from './participant.enum';\nexport {\n ViewType,\n} from './conversation-view.enum';\nexport {\n WidgetPosition,\n} from './widget.enum';\nexport {\n EvaluationSentiment,\n} from './evaluation.enum';\nexport {\n GetMessageTemplateRequestHydrationOptionsHydrationEntityEntityType,\n MetadataIdentifier,\n SetLastSeenRequestStatus,\n Status,\n} from './api.enum';\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects.\n// *********************************\nimport * as i from '../interfaces';\n\nimport * as e from '../enums';\n\nexport function enumStringToValue<E>(enumRef: any, value: string): E {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\n\nexport class NamespaceDetail implements i.NamespaceDetailInterface {\n participantType: e.GlobalParticipantType;\n internalParticipantId: string;\n\n static fromProto(proto: any): NamespaceDetail {\n let m = new NamespaceDetail();\n m = Object.assign(m, proto);\n if (proto.participantType) {m.participantType = enumStringToValue<e.GlobalParticipantType>(e.GlobalParticipantType, proto.participantType);}\n return m;\n }\n\n constructor(kwargs?: i.NamespaceDetailInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participantType !== 'undefined') {toReturn['participantType'] = this.participantType;}\n if (typeof this.internalParticipantId !== 'undefined') {toReturn['internalParticipantId'] = this.internalParticipantId;}\n return toReturn;\n }\n}\n\nexport class SubjectParticipant implements i.SubjectParticipantInterface {\n participantType: e.GlobalParticipantType;\n internalParticipantId: string;\n\n static fromProto(proto: any): SubjectParticipant {\n let m = new SubjectParticipant();\n m = Object.assign(m, proto);\n if (proto.participantType) {m.participantType = enumStringToValue<e.GlobalParticipantType>(e.GlobalParticipantType, proto.participantType);}\n return m;\n }\n\n constructor(kwargs?: i.SubjectParticipantInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participantType !== 'undefined') {toReturn['participantType'] = this.participantType;}\n if (typeof this.internalParticipantId !== 'undefined') {toReturn['internalParticipantId'] = this.internalParticipantId;}\n return toReturn;\n }\n}\n\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects.\n// *********************************\nimport * as i from '../interfaces';\nimport { SubjectParticipant } from './common';\nimport * as e from '../enums';\n\nexport function enumStringToValue<E>(enumRef: any, value: string): E {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\n\nexport class Conversation implements i.ConversationInterface {\n conversationId: string;\n channel: e.ConversationChannel;\n externalConversationId: string;\n created: Date;\n updated: Date;\n deleted: Date;\n participantIds: string[];\n latestMsgSentTime: Date;\n originLocation: e.PlatformLocation;\n originLocationExternalId: string;\n lastSeenByParticipant: LastSeenByParticipant[];\n conversationViewIds: string[];\n subjectParticipantsKey: string;\n subjectParticipants: SubjectParticipant[];\n isOpen: boolean;\n\n static fromProto(proto: any): Conversation {\n let m = new Conversation();\n m = Object.assign(m, proto);\n if (proto.channel) {m.channel = enumStringToValue<e.ConversationChannel>(e.ConversationChannel, proto.channel);}\n if (proto.created) {m.created = new Date(proto.created);}\n if (proto.updated) {m.updated = new Date(proto.updated);}\n if (proto.deleted) {m.deleted = new Date(proto.deleted);}\n if (proto.latestMsgSentTime) {m.latestMsgSentTime = new Date(proto.latestMsgSentTime);}\n if (proto.originLocation) {m.originLocation = enumStringToValue<e.PlatformLocation>(e.PlatformLocation, proto.originLocation);}\n if (proto.lastSeenByParticipant) {m.lastSeenByParticipant = proto.lastSeenByParticipant.map(LastSeenByParticipant.fromProto);}\n if (proto.subjectParticipants) {m.subjectParticipants = proto.subjectParticipants.map(SubjectParticipant.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.ConversationInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n if (typeof this.channel !== 'undefined') {toReturn['channel'] = this.channel;}\n if (typeof this.externalConversationId !== 'undefined') {toReturn['externalConversationId'] = this.externalConversationId;}\n if (typeof this.created !== 'undefined' && this.created !== null) {toReturn['created'] = 'toApiJson' in this.created ? (this.created as any).toApiJson() : this.created;}\n if (typeof this.updated !== 'undefined' && this.updated !== null) {toReturn['updated'] = 'toApiJson' in this.updated ? (this.updated as any).toApiJson() : this.updated;}\n if (typeof this.deleted !== 'undefined' && this.deleted !== null) {toReturn['deleted'] = 'toApiJson' in this.deleted ? (this.deleted as any).toApiJson() : this.deleted;}\n if (typeof this.participantIds !== 'undefined') {toReturn['participantIds'] = this.participantIds;}\n if (typeof this.latestMsgSentTime !== 'undefined' && this.latestMsgSentTime !== null) {toReturn['latestMsgSentTime'] = 'toApiJson' in this.latestMsgSentTime ? (this.latestMsgSentTime as any).toApiJson() : this.latestMsgSentTime;}\n if (typeof this.originLocation !== 'undefined') {toReturn['originLocation'] = this.originLocation;}\n if (typeof this.originLocationExternalId !== 'undefined') {toReturn['originLocationExternalId'] = this.originLocationExternalId;}\n if (typeof this.lastSeenByParticipant !== 'undefined' && this.lastSeenByParticipant !== null) {toReturn['lastSeenByParticipant'] = 'toApiJson' in this.lastSeenByParticipant ? (this.lastSeenByParticipant as any).toApiJson() : this.lastSeenByParticipant;}\n if (typeof this.conversationViewIds !== 'undefined') {toReturn['conversationViewIds'] = this.conversationViewIds;}\n if (typeof this.subjectParticipantsKey !== 'undefined') {toReturn['subjectParticipantsKey'] = this.subjectParticipantsKey;}\n if (typeof this.subjectParticipants !== 'undefined' && this.subjectParticipants !== null) {toReturn['subjectParticipants'] = 'toApiJson' in this.subjectParticipants ? (this.subjectParticipants as any).toApiJson() : this.subjectParticipants;}\n if (typeof this.isOpen !== 'undefined') {toReturn['isOpen'] = this.isOpen;}\n return toReturn;\n }\n}\n\nexport class ConversationKey implements i.ConversationKeyInterface {\n subjectParticipants: SubjectParticipant[];\n channel: e.ConversationChannel;\n originLocationExternalId: string;\n\n static fromProto(proto: any): ConversationKey {\n let m = new ConversationKey();\n m = Object.assign(m, proto);\n if (proto.subjectParticipants) {m.subjectParticipants = proto.subjectParticipants.map(SubjectParticipant.fromProto);}\n if (proto.channel) {m.channel = enumStringToValue<e.ConversationChannel>(e.ConversationChannel, proto.channel);}\n return m;\n }\n\n constructor(kwargs?: i.ConversationKeyInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.subjectParticipants !== 'undefined' && this.subjectParticipants !== null) {toReturn['subjectParticipants'] = 'toApiJson' in this.subjectParticipants ? (this.subjectParticipants as any).toApiJson() : this.subjectParticipants;}\n if (typeof this.channel !== 'undefined') {toReturn['channel'] = this.channel;}\n if (typeof this.originLocationExternalId !== 'undefined') {toReturn['originLocationExternalId'] = this.originLocationExternalId;}\n return toReturn;\n }\n}\n\nexport class LastSeenByParticipant implements i.LastSeenByParticipantInterface {\n participantId: string;\n lastSeenTime: Date;\n\n static fromProto(proto: any): LastSeenByParticipant {\n let m = new LastSeenByParticipant();\n m = Object.assign(m, proto);\n if (proto.lastSeenTime) {m.lastSeenTime = new Date(proto.lastSeenTime);}\n return m;\n }\n\n constructor(kwargs?: i.LastSeenByParticipantInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participantId !== 'undefined') {toReturn['participantId'] = this.participantId;}\n if (typeof this.lastSeenTime !== 'undefined' && this.lastSeenTime !== null) {toReturn['lastSeenTime'] = 'toApiJson' in this.lastSeenTime ? (this.lastSeenTime as any).toApiJson() : this.lastSeenTime;}\n return toReturn;\n }\n}\n\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects.\n// *********************************\nimport * as i from '../interfaces';\n\nimport * as e from '../enums';\n\nexport function enumStringToValue<E>(enumRef: any, value: string): E {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\n\nexport class KeyValuePair implements i.KeyValuePairInterface {\n key: string;\n value: string;\n\n static fromProto(proto: any): KeyValuePair {\n let m = new KeyValuePair();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.KeyValuePairInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.key !== 'undefined') {toReturn['key'] = this.key;}\n if (typeof this.value !== 'undefined') {toReturn['value'] = this.value;}\n return toReturn;\n }\n}\n\nexport class Message implements i.MessageInterface {\n messageId: string;\n externalMessageId: string;\n conversationId: string;\n participantId: string;\n type: e.MessageType;\n body: string;\n error: string;\n created: Date;\n updated: Date;\n deleted: Date;\n media: string[];\n sendStatus: SendStatus;\n channel: e.ConversationChannel;\n metadata: KeyValuePair[];\n originalContent: string;\n\n static fromProto(proto: any): Message {\n let m = new Message();\n m = Object.assign(m, proto);\n if (proto.type) {m.type = enumStringToValue<e.MessageType>(e.MessageType, proto.type);}\n if (proto.created) {m.created = new Date(proto.created);}\n if (proto.updated) {m.updated = new Date(proto.updated);}\n if (proto.deleted) {m.deleted = new Date(proto.deleted);}\n if (proto.sendStatus) {m.sendStatus = SendStatus.fromProto(proto.sendStatus);}\n if (proto.channel) {m.channel = enumStringToValue<e.ConversationChannel>(e.ConversationChannel, proto.channel);}\n if (proto.metadata) {m.metadata = proto.metadata.map(KeyValuePair.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.MessageInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.messageId !== 'undefined') {toReturn['messageId'] = this.messageId;}\n if (typeof this.externalMessageId !== 'undefined') {toReturn['externalMessageId'] = this.externalMessageId;}\n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n if (typeof this.participantId !== 'undefined') {toReturn['participantId'] = this.participantId;}\n if (typeof this.type !== 'undefined') {toReturn['type'] = this.type;}\n if (typeof this.body !== 'undefined') {toReturn['body'] = this.body;}\n if (typeof this.error !== 'undefined') {toReturn['error'] = this.error;}\n if (typeof this.created !== 'undefined' && this.created !== null) {toReturn['created'] = 'toApiJson' in this.created ? (this.created as any).toApiJson() : this.created;}\n if (typeof this.updated !== 'undefined' && this.updated !== null) {toReturn['updated'] = 'toApiJson' in this.updated ? (this.updated as any).toApiJson() : this.updated;}\n if (typeof this.deleted !== 'undefined' && this.deleted !== null) {toReturn['deleted'] = 'toApiJson' in this.deleted ? (this.deleted as any).toApiJson() : this.deleted;}\n if (typeof this.media !== 'undefined') {toReturn['media'] = this.media;}\n if (typeof this.sendStatus !== 'undefined' && this.sendStatus !== null) {toReturn['sendStatus'] = 'toApiJson' in this.sendStatus ? (this.sendStatus as any).toApiJson() : this.sendStatus;}\n if (typeof this.channel !== 'undefined') {toReturn['channel'] = this.channel;}\n if (typeof this.metadata !== 'undefined' && this.metadata !== null) {toReturn['metadata'] = 'toApiJson' in this.metadata ? (this.metadata as any).toApiJson() : this.metadata;}\n if (typeof this.originalContent !== 'undefined') {toReturn['originalContent'] = this.originalContent;}\n return toReturn;\n }\n}\n\nexport class ParticipantMessageStatus implements i.ParticipantMessageStatusInterface {\n participantId: string;\n messageId: string;\n status: e.MessageStatus;\n updated: Date;\n\n static fromProto(proto: any): ParticipantMessageStatus {\n let m = new ParticipantMessageStatus();\n m = Object.assign(m, proto);\n if (proto.status) {m.status = enumStringToValue<e.MessageStatus>(e.MessageStatus, proto.status);}\n if (proto.updated) {m.updated = new Date(proto.updated);}\n return m;\n }\n\n constructor(kwargs?: i.ParticipantMessageStatusInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participantId !== 'undefined') {toReturn['participantId'] = this.participantId;}\n if (typeof this.messageId !== 'undefined') {toReturn['messageId'] = this.messageId;}\n if (typeof this.status !== 'undefined') {toReturn['status'] = this.status;}\n if (typeof this.updated !== 'undefined' && this.updated !== null) {toReturn['updated'] = 'toApiJson' in this.updated ? (this.updated as any).toApiJson() : this.updated;}\n return toReturn;\n }\n}\n\nexport class SendStatus implements i.SendStatusInterface {\n status: e.MessageStatus;\n reason: string;\n created: Date;\n\n static fromProto(proto: any): SendStatus {\n let m = new SendStatus();\n m = Object.assign(m, proto);\n if (proto.status) {m.status = enumStringToValue<e.MessageStatus>(e.MessageStatus, proto.status);}\n if (proto.created) {m.created = new Date(proto.created);}\n return m;\n }\n\n constructor(kwargs?: i.SendStatusInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.status !== 'undefined') {toReturn['status'] = this.status;}\n if (typeof this.reason !== 'undefined') {toReturn['reason'] = this.reason;}\n if (typeof this.created !== 'undefined' && this.created !== null) {toReturn['created'] = 'toApiJson' in this.created ? (this.created as any).toApiJson() : this.created;}\n return toReturn;\n }\n}\n\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects.\n// *********************************\nimport * as i from '../interfaces';\nimport { NamespaceDetail } from './common';\nimport * as e from '../enums';\n\nexport function enumStringToValue<E>(enumRef: any, value: string): E {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\n\nexport class Address implements i.AddressInterface {\n firstLineAddress: string;\n secondLineAddress: string;\n city: string;\n state: string;\n country: string;\n zipCode: string;\n\n static fromProto(proto: any): Address {\n let m = new Address();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.AddressInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.firstLineAddress !== 'undefined') {toReturn['firstLineAddress'] = this.firstLineAddress;}\n if (typeof this.secondLineAddress !== 'undefined') {toReturn['secondLineAddress'] = this.secondLineAddress;}\n if (typeof this.city !== 'undefined') {toReturn['city'] = this.city;}\n if (typeof this.state !== 'undefined') {toReturn['state'] = this.state;}\n if (typeof this.country !== 'undefined') {toReturn['country'] = this.country;}\n if (typeof this.zipCode !== 'undefined') {toReturn['zipCode'] = this.zipCode;}\n return toReturn;\n }\n}\n\nexport class Participant implements i.ParticipantInterface {\n participantId: string;\n internalParticipantId: string;\n partnerId: string;\n accountGroupId: string;\n location: e.PlatformLocation;\n channel: e.ConversationChannel;\n externalParticipantId: string;\n name: string;\n created: Date;\n updated: Date;\n deleted: Date;\n participantType: e.ParticipantType;\n email: string;\n phoneNumber: string;\n address: Address;\n isSubjectParticipant: boolean;\n isParticipantInternalInfoDeleted: boolean;\n profileImageUrl: string;\n namespaceHierarchy: NamespaceDetail[];\n\n static fromProto(proto: any): Participant {\n let m = new Participant();\n m = Object.assign(m, proto);\n if (proto.location) {m.location = enumStringToValue<e.PlatformLocation>(e.PlatformLocation, proto.location);}\n if (proto.channel) {m.channel = enumStringToValue<e.ConversationChannel>(e.ConversationChannel, proto.channel);}\n if (proto.created) {m.created = new Date(proto.created);}\n if (proto.updated) {m.updated = new Date(proto.updated);}\n if (proto.deleted) {m.deleted = new Date(proto.deleted);}\n if (proto.participantType) {m.participantType = enumStringToValue<e.ParticipantType>(e.ParticipantType, proto.participantType);}\n if (proto.address) {m.address = Address.fromProto(proto.address);}\n if (proto.namespaceHierarchy) {m.namespaceHierarchy = proto.namespaceHierarchy.map(NamespaceDetail.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.ParticipantInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participantId !== 'undefined') {toReturn['participantId'] = this.participantId;}\n if (typeof this.internalParticipantId !== 'undefined') {toReturn['internalParticipantId'] = this.internalParticipantId;}\n if (typeof this.partnerId !== 'undefined') {toReturn['partnerId'] = this.partnerId;}\n if (typeof this.accountGroupId !== 'undefined') {toReturn['accountGroupId'] = this.accountGroupId;}\n if (typeof this.location !== 'undefined') {toReturn['location'] = this.location;}\n if (typeof this.channel !== 'undefined') {toReturn['channel'] = this.channel;}\n if (typeof this.externalParticipantId !== 'undefined') {toReturn['externalParticipantId'] = this.externalParticipantId;}\n if (typeof this.name !== 'undefined') {toReturn['name'] = this.name;}\n if (typeof this.created !== 'undefined' && this.created !== null) {toReturn['created'] = 'toApiJson' in this.created ? (this.created as any).toApiJson() : this.created;}\n if (typeof this.updated !== 'undefined' && this.updated !== null) {toReturn['updated'] = 'toApiJson' in this.updated ? (this.updated as any).toApiJson() : this.updated;}\n if (typeof this.deleted !== 'undefined' && this.deleted !== null) {toReturn['deleted'] = 'toApiJson' in this.deleted ? (this.deleted as any).toApiJson() : this.deleted;}\n if (typeof this.participantType !== 'undefined') {toReturn['participantType'] = this.participantType;}\n if (typeof this.email !== 'undefined') {toReturn['email'] = this.email;}\n if (typeof this.phoneNumber !== 'undefined') {toReturn['phoneNumber'] = this.phoneNumber;}\n if (typeof this.address !== 'undefined' && this.address !== null) {toReturn['address'] = 'toApiJson' in this.address ? (this.address as any).toApiJson() : this.address;}\n if (typeof this.isSubjectParticipant !== 'undefined') {toReturn['isSubjectParticipant'] = this.isSubjectParticipant;}\n if (typeof this.isParticipantInternalInfoDeleted !== 'undefined') {toReturn['isParticipantInternalInfoDeleted'] = this.isParticipantInternalInfoDeleted;}\n if (typeof this.profileImageUrl !== 'undefined') {toReturn['profileImageUrl'] = this.profileImageUrl;}\n if (typeof this.namespaceHierarchy !== 'undefined' && this.namespaceHierarchy !== null) {toReturn['namespaceHierarchy'] = 'toApiJson' in this.namespaceHierarchy ? (this.namespaceHierarchy as any).toApiJson() : this.namespaceHierarchy;}\n return toReturn;\n }\n}\n\nexport class ParticipantKey implements i.ParticipantKeyInterface {\n internalParticipantId: string;\n partnerId: string;\n accountGroupId: string;\n location: e.PlatformLocation;\n channels: e.ConversationChannel[];\n participantType: e.GlobalParticipantType;\n namespaceHierarchy: NamespaceDetail[];\n\n static fromProto(proto: any): ParticipantKey {\n let m = new ParticipantKey();\n m = Object.assign(m, proto);\n if (proto.location) {m.location = enumStringToValue<e.PlatformLocation>(e.PlatformLocation, proto.location);}\n if (proto.channels) {m.channels = proto.channels.map((v: string) => enumStringToValue<e.ConversationChannel>(e.ConversationChannel, v));}\n if (proto.participantType) {m.participantType = enumStringToValue<e.GlobalParticipantType>(e.GlobalParticipantType, proto.participantType);}\n if (proto.namespaceHierarchy) {m.namespaceHierarchy = proto.namespaceHierarchy.map(NamespaceDetail.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.ParticipantKeyInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.internalParticipantId !== 'undefined') {toReturn['internalParticipantId'] = this.internalParticipantId;}\n if (typeof this.partnerId !== 'undefined') {toReturn['partnerId'] = this.partnerId;}\n if (typeof this.accountGroupId !== 'undefined') {toReturn['accountGroupId'] = this.accountGroupId;}\n if (typeof this.location !== 'undefined') {toReturn['location'] = this.location;}\n if (typeof this.channels !== 'undefined') {toReturn['channels'] = this.channels;}\n if (typeof this.participantType !== 'undefined') {toReturn['participantType'] = this.participantType;}\n if (typeof this.namespaceHierarchy !== 'undefined' && this.namespaceHierarchy !== null) {toReturn['namespaceHierarchy'] = 'toApiJson' in this.namespaceHierarchy ? (this.namespaceHierarchy as any).toApiJson() : this.namespaceHierarchy;}\n return toReturn;\n }\n}\n\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects.\n// *********************************\nimport * as i from '../interfaces';\n\nimport * as e from '../enums';\n\nexport function enumStringToValue<E>(enumRef: any, value: string): E {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\n\nexport class Access implements i.AccessInterface {\n scope: string[];\n public: boolean;\n\n static fromProto(proto: any): Access {\n let m = new Access();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.AccessInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.scope !== 'undefined') {toReturn['scope'] = this.scope;}\n if (typeof this.public !== 'undefined') {toReturn['public'] = this.public;}\n return toReturn;\n }\n}\n\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects.\n// *********************************\nimport * as i from '../interfaces';\nimport { SubjectParticipant } from './common';\nimport * as e from '../enums';\n\nexport function enumStringToValue<E>(enumRef: any, value: string): E {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\n\nexport class Configuration implements i.ConfigurationInterface {\n subjectParticipant: SubjectParticipant;\n createdAt: Date;\n updatedAt: Date;\n availabilityMessage: string;\n showAvailabilityMessage: boolean;\n googleBusinessMessagesEnabled: boolean;\n smsEnabled: boolean;\n inboxProEnabled: boolean;\n webChatEnabled: boolean;\n facebookMessengerEnabled: boolean;\n multiLocationEnabled: boolean;\n instagramMessagingEnabled: boolean;\n\n static fromProto(proto: any): Configuration {\n let m = new Configuration();\n m = Object.assign(m, proto);\n if (proto.subjectParticipant) {m.subjectParticipant = SubjectParticipant.fromProto(proto.subjectParticipant);}\n if (proto.createdAt) {m.createdAt = new Date(proto.createdAt);}\n if (proto.updatedAt) {m.updatedAt = new Date(proto.updatedAt);}\n return m;\n }\n\n constructor(kwargs?: i.ConfigurationInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.subjectParticipant !== 'undefined' && this.subjectParticipant !== null) {toReturn['subjectParticipant'] = 'toApiJson' in this.subjectParticipant ? (this.subjectParticipant as any).toApiJson() : this.subjectParticipant;}\n if (typeof this.createdAt !== 'undefined' && this.createdAt !== null) {toReturn['createdAt'] = 'toApiJson' in this.createdAt ? (this.createdAt as any).toApiJson() : this.createdAt;}\n if (typeof this.updatedAt !== 'undefined' && this.updatedAt !== null) {toReturn['updatedAt'] = 'toApiJson' in this.updatedAt ? (this.updatedAt as any).toApiJson() : this.updatedAt;}\n if (typeof this.availabilityMessage !== 'undefined') {toReturn['availabilityMessage'] = this.availabilityMessage;}\n if (typeof this.showAvailabilityMessage !== 'undefined') {toReturn['showAvailabilityMessage'] = this.showAvailabilityMessage;}\n if (typeof this.googleBusinessMessagesEnabled !== 'undefined') {toReturn['googleBusinessMessagesEnabled'] = this.googleBusinessMessagesEnabled;}\n if (typeof this.smsEnabled !== 'undefined') {toReturn['smsEnabled'] = this.smsEnabled;}\n if (typeof this.inboxProEnabled !== 'undefined') {toReturn['inboxProEnabled'] = this.inboxProEnabled;}\n if (typeof this.webChatEnabled !== 'undefined') {toReturn['webChatEnabled'] = this.webChatEnabled;}\n if (typeof this.facebookMessengerEnabled !== 'undefined') {toReturn['facebookMessengerEnabled'] = this.facebookMessengerEnabled;}\n if (typeof this.multiLocationEnabled !== 'undefined') {toReturn['multiLocationEnabled'] = this.multiLocationEnabled;}\n if (typeof this.instagramMessagingEnabled !== 'undefined') {toReturn['instagramMessagingEnabled'] = this.instagramMessagingEnabled;}\n return toReturn;\n }\n}\n\nexport class ProductFeature implements i.ProductFeatureInterface {\n googleBusinessMessagesEnabled: boolean;\n smsEnabled: boolean;\n multiLocationEnabled: boolean;\n webChatEnabled: boolean;\n facebookMessengerEnabled: boolean;\n instagramMessagingEnabled: boolean;\n\n static fromProto(proto: any): ProductFeature {\n let m = new ProductFeature();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.ProductFeatureInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.googleBusinessMessagesEnabled !== 'undefined') {toReturn['googleBusinessMessagesEnabled'] = this.googleBusinessMessagesEnabled;}\n if (typeof this.smsEnabled !== 'undefined') {toReturn['smsEnabled'] = this.smsEnabled;}\n if (typeof this.multiLocationEnabled !== 'undefined') {toReturn['multiLocationEnabled'] = this.multiLocationEnabled;}\n if (typeof this.webChatEnabled !== 'undefined') {toReturn['webChatEnabled'] = this.webChatEnabled;}\n if (typeof this.facebookMessengerEnabled !== 'undefined') {toReturn['facebookMessengerEnabled'] = this.facebookMessengerEnabled;}\n if (typeof this.instagramMessagingEnabled !== 'undefined') {toReturn['instagramMessagingEnabled'] = this.instagramMessagingEnabled;}\n return toReturn;\n }\n}\n\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects.\n// *********************************\nimport * as i from '../interfaces';\n\nimport * as e from '../enums';\n\nexport function enumStringToValue<E>(enumRef: any, value: string): E {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\n\nexport class View implements i.ViewInterface {\n viewId: string;\n created: Date;\n\n static fromProto(proto: any): View {\n let m = new View();\n m = Object.assign(m, proto);\n if (proto.created) {m.created = new Date(proto.created);}\n return m;\n }\n\n constructor(kwargs?: i.ViewInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.viewId !== 'undefined') {toReturn['viewId'] = this.viewId;}\n if (typeof this.created !== 'undefined' && this.created !== null) {toReturn['created'] = 'toApiJson' in this.created ? (this.created as any).toApiJson() : this.created;}\n return toReturn;\n }\n}\n\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects.\n// *********************************\nimport * as i from '../interfaces';\n\nimport * as e from '../enums';\n\nexport function enumStringToValue<E>(enumRef: any, value: string): E {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\n\nexport class DataSources implements i.DataSourcesInterface {\n businessProfile: boolean;\n businessWebsite: boolean;\n\n static fromProto(proto: any): DataSources {\n let m = new DataSources();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.DataSourcesInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.businessProfile !== 'undefined') {toReturn['businessProfile'] = this.businessProfile;}\n if (typeof this.businessWebsite !== 'undefined') {toReturn['businessWebsite'] = this.businessWebsite;}\n return toReturn;\n }\n}\n\nexport class Widget implements i.WidgetInterface {\n widgetId: string;\n name: string;\n namespace: string;\n color: string;\n allowedUrls: string[];\n position: e.WidgetPosition;\n created: Date;\n updated: Date;\n isEnabled: boolean;\n welcomeMessage: string;\n textColor: string;\n accentColor: string;\n accentTextColor: string;\n skipContactCapture: boolean;\n additionalPromptInstructions: string;\n\n static fromProto(proto: any): Widget {\n let m = new Widget();\n m = Object.assign(m, proto);\n if (proto.position) {m.position = enumStringToValue<e.WidgetPosition>(e.WidgetPosition, proto.position);}\n if (proto.created) {m.created = new Date(proto.created);}\n if (proto.updated) {m.updated = new Date(proto.updated);}\n return m;\n }\n\n constructor(kwargs?: i.WidgetInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.widgetId !== 'undefined') {toReturn['widgetId'] = this.widgetId;}\n if (typeof this.name !== 'undefined') {toReturn['name'] = this.name;}\n if (typeof this.namespace !== 'undefined') {toReturn['namespace'] = this.namespace;}\n if (typeof this.color !== 'undefined') {toReturn['color'] = this.color;}\n if (typeof this.allowedUrls !== 'undefined') {toReturn['allowedUrls'] = this.allowedUrls;}\n if (typeof this.position !== 'undefined') {toReturn['position'] = this.position;}\n if (typeof this.created !== 'undefined' && this.created !== null) {toReturn['created'] = 'toApiJson' in this.created ? (this.created as any).toApiJson() : this.created;}\n if (typeof this.updated !== 'undefined' && this.updated !== null) {toReturn['updated'] = 'toApiJson' in this.updated ? (this.updated as any).toApiJson() : this.updated;}\n if (typeof this.isEnabled !== 'undefined') {toReturn['isEnabled'] = this.isEnabled;}\n if (typeof this.welcomeMessage !== 'undefined') {toReturn['welcomeMessage'] = this.welcomeMessage;}\n if (typeof this.textColor !== 'undefined') {toReturn['textColor'] = this.textColor;}\n if (typeof this.accentColor !== 'undefined') {toReturn['accentColor'] = this.accentColor;}\n if (typeof this.accentTextColor !== 'undefined') {toReturn['accentTextColor'] = this.accentTextColor;}\n if (typeof this.skipContactCapture !== 'undefined') {toReturn['skipContactCapture'] = this.skipContactCapture;}\n if (typeof this.additionalPromptInstructions !== 'undefined') {toReturn['additionalPromptInstructions'] = this.additionalPromptInstructions;}\n return toReturn;\n }\n}\n\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects.\n// *********************************\nimport * as i from '../interfaces';\n\nimport * as e from '../enums';\n\nexport function enumStringToValue<E>(enumRef: any, value: string): E {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\n\nexport class FieldMask implements i.FieldMaskInterface {\n paths: string[];\n\n static fromProto(proto: any): FieldMask {\n let m = new FieldMask();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.FieldMaskInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.paths !== 'undefined') {toReturn['paths'] = this.paths;}\n return toReturn;\n }\n}\n\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects.\n// *********************************\nimport * as i from '../interfaces';\n\nimport * as e from '../enums';\n\nexport function enumStringToValue<E>(enumRef: any, value: string): E {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\n\nexport class MessageTemplate implements i.MessageTemplateInterface {\n templateId: string;\n name: string;\n content: string;\n created: Date;\n\n static fromProto(proto: any): MessageTemplate {\n let m = new MessageTemplate();\n m = Object.assign(m, proto);\n if (proto.created) {m.created = new Date(proto.created);}\n return m;\n }\n\n constructor(kwargs?: i.MessageTemplateInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.templateId !== 'undefined') {toReturn['templateId'] = this.templateId;}\n if (typeof this.name !== 'undefined') {toReturn['name'] = this.name;}\n if (typeof this.content !== 'undefined') {toReturn['content'] = this.content;}\n if (typeof this.created !== 'undefined' && this.created !== null) {toReturn['created'] = 'toApiJson' in this.created ? (this.created as any).toApiJson() : this.created;}\n return toReturn;\n }\n}\n\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects.\n// *********************************\nimport * as i from '../interfaces';\n\nimport * as e from '../enums';\n\nexport function enumStringToValue<E>(enumRef: any, value: string): E {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\n\nexport class AISystemMessage implements i.AISystemMessageInterface {\n systemMessageId: string;\n systemMessageBody: string;\n iamUserId: string;\n updated: Date;\n\n static fromProto(proto: any): AISystemMessage {\n let m = new AISystemMessage();\n m = Object.assign(m, proto);\n if (proto.updated) {m.updated = new Date(proto.updated);}\n return m;\n }\n\n constructor(kwargs?: i.AISystemMessageInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.systemMessageId !== 'undefined') {toReturn['systemMessageId'] = this.systemMessageId;}\n if (typeof this.systemMessageBody !== 'undefined') {toReturn['systemMessageBody'] = this.systemMessageBody;}\n if (typeof this.iamUserId !== 'undefined') {toReturn['iamUserId'] = this.iamUserId;}\n if (typeof this.updated !== 'undefined' && this.updated !== null) {toReturn['updated'] = 'toApiJson' in this.updated ? (this.updated as any).toApiJson() : this.updated;}\n return toReturn;\n }\n}\n\nexport class GetAISystemMessageRequest implements i.GetAISystemMessageRequestInterface {\n systemMessageId: string;\n\n static fromProto(proto: any): GetAISystemMessageRequest {\n let m = new GetAISystemMessageRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetAISystemMessageRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.systemMessageId !== 'undefined') {toReturn['systemMessageId'] = this.systemMessageId;}\n return toReturn;\n }\n}\n\nexport class GetAISystemMessageResponse implements i.GetAISystemMessageResponseInterface {\n systemMessage: AISystemMessage;\n\n static fromProto(proto: any): GetAISystemMessageResponse {\n let m = new GetAISystemMessageResponse();\n m = Object.assign(m, proto);\n if (proto.systemMessage) {m.systemMessage = AISystemMessage.fromProto(proto.systemMessage);}\n return m;\n }\n\n constructor(kwargs?: i.GetAISystemMessageResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.systemMessage !== 'undefined' && this.systemMessage !== null) {toReturn['systemMessage'] = 'toApiJson' in this.systemMessage ? (this.systemMessage as any).toApiJson() : this.systemMessage;}\n return toReturn;\n }\n}\n\nexport class ListAISystemMessagesRequest implements i.ListAISystemMessagesRequestInterface {\n cursor: string;\n pageSize: number;\n\n static fromProto(proto: any): ListAISystemMessagesRequest {\n let m = new ListAISystemMessagesRequest();\n m = Object.assign(m, proto);\n if (proto.pageSize) {m.pageSize = parseInt(proto.pageSize, 10);}\n return m;\n }\n\n constructor(kwargs?: i.ListAISystemMessagesRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.cursor !== 'undefined') {toReturn['cursor'] = this.cursor;}\n if (typeof this.pageSize !== 'undefined') {toReturn['pageSize'] = this.pageSize;}\n return toReturn;\n }\n}\n\nexport class ListAISystemMessagesResponse implements i.ListAISystemMessagesResponseInterface {\n aiSystemMessages: AISystemMessage[];\n nextCursor: string;\n hasMore: boolean;\n\n static fromProto(proto: any): ListAISystemMessagesResponse {\n let m = new ListAISystemMessagesResponse();\n m = Object.assign(m, proto);\n if (proto.aiSystemMessages) {m.aiSystemMessages = proto.aiSystemMessages.map(AISystemMessage.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.ListAISystemMessagesResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.aiSystemMessages !== 'undefined' && this.aiSystemMessages !== null) {toReturn['aiSystemMessages'] = 'toApiJson' in this.aiSystemMessages ? (this.aiSystemMessages as any).toApiJson() : this.aiSystemMessages;}\n if (typeof this.nextCursor !== 'undefined') {toReturn['nextCursor'] = this.nextCursor;}\n if (typeof this.hasMore !== 'undefined') {toReturn['hasMore'] = this.hasMore;}\n return toReturn;\n }\n}\n\nexport class UpsertAISystemMessageRequest implements i.UpsertAISystemMessageRequestInterface {\n systemMessage: AISystemMessage;\n\n static fromProto(proto: any): UpsertAISystemMessageRequest {\n let m = new UpsertAISystemMessageRequest();\n m = Object.assign(m, proto);\n if (proto.systemMessage) {m.systemMessage = AISystemMessage.fromProto(proto.systemMessage);}\n return m;\n }\n\n constructor(kwargs?: i.UpsertAISystemMessageRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.systemMessage !== 'undefined' && this.systemMessage !== null) {toReturn['systemMessage'] = 'toApiJson' in this.systemMessage ? (this.systemMessage as any).toApiJson() : this.systemMessage;}\n return toReturn;\n }\n}\n\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects.\n// *********************************\nimport * as i from '../interfaces';\n\nimport * as e from '../enums';\n\nexport function enumStringToValue<E>(enumRef: any, value: string): E {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\n\nexport class Event implements i.EventInterface {\n conversationId: string;\n eventId: string;\n happenedAt: Date;\n labelKey: string;\n initiatorId: string;\n created: Date;\n updated: Date;\n deleted: Date;\n message: string;\n\n static fromProto(proto: any): Event {\n let m = new Event();\n m = Object.assign(m, proto);\n if (proto.happenedAt) {m.happenedAt = new Date(proto.happenedAt);}\n if (proto.created) {m.created = new Date(proto.created);}\n if (proto.updated) {m.updated = new Date(proto.updated);}\n if (proto.deleted) {m.deleted = new Date(proto.deleted);}\n return m;\n }\n\n constructor(kwargs?: i.EventInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n if (typeof this.eventId !== 'undefined') {toReturn['eventId'] = this.eventId;}\n if (typeof this.happenedAt !== 'undefined' && this.happenedAt !== null) {toReturn['happenedAt'] = 'toApiJson' in this.happenedAt ? (this.happenedAt as any).toApiJson() : this.happenedAt;}\n if (typeof this.labelKey !== 'undefined') {toReturn['labelKey'] = this.labelKey;}\n if (typeof this.initiatorId !== 'undefined') {toReturn['initiatorId'] = this.initiatorId;}\n if (typeof this.created !== 'undefined' && this.created !== null) {toReturn['created'] = 'toApiJson' in this.created ? (this.created as any).toApiJson() : this.created;}\n if (typeof this.updated !== 'undefined' && this.updated !== null) {toReturn['updated'] = 'toApiJson' in this.updated ? (this.updated as any).toApiJson() : this.updated;}\n if (typeof this.deleted !== 'undefined' && this.deleted !== null) {toReturn['deleted'] = 'toApiJson' in this.deleted ? (this.deleted as any).toApiJson() : this.deleted;}\n if (typeof this.message !== 'undefined') {toReturn['message'] = this.message;}\n return toReturn;\n }\n}\n\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects.\n// *********************************\nimport * as i from '../interfaces';\nimport { Configuration, ProductFeature } from './configuration';\nimport { Conversation, ConversationKey } from './conversation';\nimport { DataSources, Widget } from './widget';\nimport { Event } from './event';\nimport { FieldMask } from './field-mask';\nimport { Message } from './message';\nimport { MessageTemplate } from './message-template';\nimport { Participant, ParticipantKey } from './participant';\nimport { SubjectParticipant } from './common';\nimport { View } from './conversation-view';\nimport * as e from '../enums';\n\nexport function enumStringToValue<E>(enumRef: any, value: string): E {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\n\nexport class AddConversationToConversationViewRequest implements i.AddConversationToConversationViewRequestInterface {\n viewId: string;\n conversationId: string;\n participantId: string;\n\n static fromProto(proto: any): AddConversationToConversationViewRequest {\n let m = new AddConversationToConversationViewRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.AddConversationToConversationViewRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.viewId !== 'undefined') {toReturn['viewId'] = this.viewId;}\n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n if (typeof this.participantId !== 'undefined') {toReturn['participantId'] = this.participantId;}\n return toReturn;\n }\n}\n\nexport class AddMultiParticipantsRequest implements i.AddMultiParticipantsRequestInterface {\n conversationId: string;\n participants: Participant[];\n\n static fromProto(proto: any): AddMultiParticipantsRequest {\n let m = new AddMultiParticipantsRequest();\n m = Object.assign(m, proto);\n if (proto.participants) {m.participants = proto.participants.map(Participant.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.AddMultiParticipantsRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n if (typeof this.participants !== 'undefined' && this.participants !== null) {toReturn['participants'] = 'toApiJson' in this.participants ? (this.participants as any).toApiJson() : this.participants;}\n return toReturn;\n }\n}\n\nexport class AddMultiParticipantsResponse implements i.AddMultiParticipantsResponseInterface {\n participants: Participant[];\n\n static fromProto(proto: any): AddMultiParticipantsResponse {\n let m = new AddMultiParticipantsResponse();\n m = Object.assign(m, proto);\n if (proto.participants) {m.participants = proto.participants.map(Participant.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.AddMultiParticipantsResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participants !== 'undefined' && this.participants !== null) {toReturn['participants'] = 'toApiJson' in this.participants ? (this.participants as any).toApiJson() : this.participants;}\n return toReturn;\n }\n}\n\nexport class CapturedLead implements i.CapturedLeadInterface {\n name: string;\n email: string;\n phone: string;\n contactId: string;\n\n static fromProto(proto: any): CapturedLead {\n let m = new CapturedLead();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.CapturedLeadInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.name !== 'undefined') {toReturn['name'] = this.name;}\n if (typeof this.email !== 'undefined') {toReturn['email'] = this.email;}\n if (typeof this.phone !== 'undefined') {toReturn['phone'] = this.phone;}\n if (typeof this.contactId !== 'undefined') {toReturn['contactId'] = this.contactId;}\n return toReturn;\n }\n}\n\nexport class ChannelAvailability implements i.ChannelAvailabilityInterface {\n channel: e.ConversationChannel;\n isAvailable: boolean;\n statuses: ChannelStatus[];\n\n static fromProto(proto: any): ChannelAvailability {\n let m = new ChannelAvailability();\n m = Object.assign(m, proto);\n if (proto.channel) {m.channel = enumStringToValue<e.ConversationChannel>(e.ConversationChannel, proto.channel);}\n if (proto.statuses) {m.statuses = proto.statuses.map(ChannelStatus.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.ChannelAvailabilityInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.channel !== 'undefined') {toReturn['channel'] = this.channel;}\n if (typeof this.isAvailable !== 'undefined') {toReturn['isAvailable'] = this.isAvailable;}\n if (typeof this.statuses !== 'undefined' && this.statuses !== null) {toReturn['statuses'] = 'toApiJson' in this.statuses ? (this.statuses as any).toApiJson() : this.statuses;}\n return toReturn;\n }\n}\n\nexport class ChannelStatus implements i.ChannelStatusInterface {\n status: e.Status;\n i18nKey: string;\n\n static fromProto(proto: any): ChannelStatus {\n let m = new ChannelStatus();\n m = Object.assign(m, proto);\n if (proto.status) {m.status = enumStringToValue<e.Status>(e.Status, proto.status);}\n return m;\n }\n\n constructor(kwargs?: i.ChannelStatusInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.status !== 'undefined') {toReturn['status'] = this.status;}\n if (typeof this.i18nKey !== 'undefined') {toReturn['i18nKey'] = this.i18nKey;}\n return toReturn;\n }\n}\n\nexport class ConversationMessageCount implements i.ConversationMessageCountInterface {\n conversationId: string;\n count: number;\n\n static fromProto(proto: any): ConversationMessageCount {\n let m = new ConversationMessageCount();\n m = Object.assign(m, proto);\n if (proto.count) {m.count = parseInt(proto.count, 10);}\n return m;\n }\n\n constructor(kwargs?: i.ConversationMessageCountInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n if (typeof this.count !== 'undefined') {toReturn['count'] = this.count;}\n return toReturn;\n }\n}\n\nexport class LookupConversationsResponseConversations implements i.LookupConversationsResponseConversationsInterface {\n conversation: Conversation;\n participants: Participant[];\n\n static fromProto(proto: any): LookupConversationsResponseConversations {\n let m = new LookupConversationsResponseConversations();\n m = Object.assign(m, proto);\n if (proto.conversation) {m.conversation = Conversation.fromProto(proto.conversation);}\n if (proto.participants) {m.participants = proto.participants.map(Participant.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.LookupConversationsResponseConversationsInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversation !== 'undefined' && this.conversation !== null) {toReturn['conversation'] = 'toApiJson' in this.conversation ? (this.conversation as any).toApiJson() : this.conversation;}\n if (typeof this.participants !== 'undefined' && this.participants !== null) {toReturn['participants'] = 'toApiJson' in this.participants ? (this.participants as any).toApiJson() : this.participants;}\n return toReturn;\n }\n}\n\nexport class GetMultiConversationMessageCountResponseCountsEntry implements i.GetMultiConversationMessageCountResponseCountsEntryInterface {\n key: string;\n value: number;\n\n static fromProto(proto: any): GetMultiConversationMessageCountResponseCountsEntry {\n let m = new GetMultiConversationMessageCountResponseCountsEntry();\n m = Object.assign(m, proto);\n if (proto.value) {m.value = parseInt(proto.value, 10);}\n return m;\n }\n\n constructor(kwargs?: i.GetMultiConversationMessageCountResponseCountsEntryInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.key !== 'undefined') {toReturn['key'] = this.key;}\n if (typeof this.value !== 'undefined') {toReturn['value'] = this.value;}\n return toReturn;\n }\n}\n\nexport class CreateConversationRequest implements i.CreateConversationRequestInterface {\n participants: Participant[];\n channel: e.ConversationChannel;\n externalConversationId: string;\n created: Date;\n updated: Date;\n originLocation: e.PlatformLocation;\n originLocationExternalId: string;\n\n static fromProto(proto: any): CreateConversationRequest {\n let m = new CreateConversationRequest();\n m = Object.assign(m, proto);\n if (proto.participants) {m.participants = proto.participants.map(Participant.fromProto);}\n if (proto.channel) {m.channel = enumStringToValue<e.ConversationChannel>(e.ConversationChannel, proto.channel);}\n if (proto.created) {m.created = new Date(proto.created);}\n if (proto.updated) {m.updated = new Date(proto.updated);}\n if (proto.originLocation) {m.originLocation = enumStringToValue<e.PlatformLocation>(e.PlatformLocation, proto.originLocation);}\n return m;\n }\n\n constructor(kwargs?: i.CreateConversationRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participants !== 'undefined' && this.participants !== null) {toReturn['participants'] = 'toApiJson' in this.participants ? (this.participants as any).toApiJson() : this.participants;}\n if (typeof this.channel !== 'undefined') {toReturn['channel'] = this.channel;}\n if (typeof this.externalConversationId !== 'undefined') {toReturn['externalConversationId'] = this.externalConversationId;}\n if (typeof this.created !== 'undefined' && this.created !== null) {toReturn['created'] = 'toApiJson' in this.created ? (this.created as any).toApiJson() : this.created;}\n if (typeof this.updated !== 'undefined' && this.updated !== null) {toReturn['updated'] = 'toApiJson' in this.updated ? (this.updated as any).toApiJson() : this.updated;}\n if (typeof this.originLocation !== 'undefined') {toReturn['originLocation'] = this.originLocation;}\n if (typeof this.originLocationExternalId !== 'undefined') {toReturn['originLocationExternalId'] = this.originLocationExternalId;}\n return toReturn;\n }\n}\n\nexport class CreateConversationResponse implements i.CreateConversationResponseInterface {\n conversation: Conversation;\n participants: Participant[];\n\n static fromProto(proto: any): CreateConversationResponse {\n let m = new CreateConversationResponse();\n m = Object.assign(m, proto);\n if (proto.conversation) {m.conversation = Conversation.fromProto(proto.conversation);}\n if (proto.participants) {m.participants = proto.participants.map(Participant.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.CreateConversationResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversation !== 'undefined' && this.conversation !== null) {toReturn['conversation'] = 'toApiJson' in this.conversation ? (this.conversation as any).toApiJson() : this.conversation;}\n if (typeof this.participants !== 'undefined' && this.participants !== null) {toReturn['participants'] = 'toApiJson' in this.participants ? (this.participants as any).toApiJson() : this.participants;}\n return toReturn;\n }\n}\n\nexport class CreateMessageTemplateRequest implements i.CreateMessageTemplateRequestInterface {\n template: MessageTemplate;\n subjectParticipant: SubjectParticipant;\n\n static fromProto(proto: any): CreateMessageTemplateRequest {\n let m = new CreateMessageTemplateRequest();\n m = Object.assign(m, proto);\n if (proto.template) {m.template = MessageTemplate.fromProto(proto.template);}\n if (proto.subjectParticipant) {m.subjectParticipant = SubjectParticipant.fromProto(proto.subjectParticipant);}\n return m;\n }\n\n constructor(kwargs?: i.CreateMessageTemplateRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.template !== 'undefined' && this.template !== null) {toReturn['template'] = 'toApiJson' in this.template ? (this.template as any).toApiJson() : this.template;}\n if (typeof this.subjectParticipant !== 'undefined' && this.subjectParticipant !== null) {toReturn['subjectParticipant'] = 'toApiJson' in this.subjectParticipant ? (this.subjectParticipant as any).toApiJson() : this.subjectParticipant;}\n return toReturn;\n }\n}\n\nexport class CreateMessageTemplateResponse implements i.CreateMessageTemplateResponseInterface {\n template: MessageTemplate;\n\n static fromProto(proto: any): CreateMessageTemplateResponse {\n let m = new CreateMessageTemplateResponse();\n m = Object.assign(m, proto);\n if (proto.template) {m.template = MessageTemplate.fromProto(proto.template);}\n return m;\n }\n\n constructor(kwargs?: i.CreateMessageTemplateResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.template !== 'undefined' && this.template !== null) {toReturn['template'] = 'toApiJson' in this.template ? (this.template as any).toApiJson() : this.template;}\n return toReturn;\n }\n}\n\nexport class CreateMultiMessagesRequest implements i.CreateMultiMessagesRequestInterface {\n messages: Message[];\n lastSeen: Date;\n\n static fromProto(proto: any): CreateMultiMessagesRequest {\n let m = new CreateMultiMessagesRequest();\n m = Object.assign(m, proto);\n if (proto.messages) {m.messages = proto.messages.map(Message.fromProto);}\n if (proto.lastSeen) {m.lastSeen = new Date(proto.lastSeen);}\n return m;\n }\n\n constructor(kwargs?: i.CreateMultiMessagesRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.messages !== 'undefined' && this.messages !== null) {toReturn['messages'] = 'toApiJson' in this.messages ? (this.messages as any).toApiJson() : this.messages;}\n if (typeof this.lastSeen !== 'undefined' && this.lastSeen !== null) {toReturn['lastSeen'] = 'toApiJson' in this.lastSeen ? (this.lastSeen as any).toApiJson() : this.lastSeen;}\n return toReturn;\n }\n}\n\nexport class CreateWidgetConversationRequest implements i.CreateWidgetConversationRequestInterface {\n widgetId: string;\n chatSourceUrl: string;\n\n static fromProto(proto: any): CreateWidgetConversationRequest {\n let m = new CreateWidgetConversationRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.CreateWidgetConversationRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.widgetId !== 'undefined') {toReturn['widgetId'] = this.widgetId;}\n if (typeof this.chatSourceUrl !== 'undefined') {toReturn['chatSourceUrl'] = this.chatSourceUrl;}\n return toReturn;\n }\n}\n\nexport class CreateWidgetConversationResponse implements i.CreateWidgetConversationResponseInterface {\n widgetParticipantToken: string;\n conversation: Conversation;\n\n static fromProto(proto: any): CreateWidgetConversationResponse {\n let m = new CreateWidgetConversationResponse();\n m = Object.assign(m, proto);\n if (proto.conversation) {m.conversation = Conversation.fromProto(proto.conversation);}\n return m;\n }\n\n constructor(kwargs?: i.CreateWidgetConversationResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.widgetParticipantToken !== 'undefined') {toReturn['widgetParticipantToken'] = this.widgetParticipantToken;}\n if (typeof this.conversation !== 'undefined' && this.conversation !== null) {toReturn['conversation'] = 'toApiJson' in this.conversation ? (this.conversation as any).toApiJson() : this.conversation;}\n return toReturn;\n }\n}\n\nexport class CreateWidgetRequest implements i.CreateWidgetRequestInterface {\n name: string;\n namespace: string;\n color: string;\n allowedUrls: string[];\n welcomeMessage: string;\n dataSources: DataSources;\n textColor: string;\n accentColor: string;\n accentTextColor: string;\n skipContactCapture: boolean;\n additionalPromptInstructions: string;\n\n static fromProto(proto: any): CreateWidgetRequest {\n let m = new CreateWidgetRequest();\n m = Object.assign(m, proto);\n if (proto.dataSources) {m.dataSources = DataSources.fromProto(proto.dataSources);}\n return m;\n }\n\n constructor(kwargs?: i.CreateWidgetRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.name !== 'undefined') {toReturn['name'] = this.name;}\n if (typeof this.namespace !== 'undefined') {toReturn['namespace'] = this.namespace;}\n if (typeof this.color !== 'undefined') {toReturn['color'] = this.color;}\n if (typeof this.allowedUrls !== 'undefined') {toReturn['allowedUrls'] = this.allowedUrls;}\n if (typeof this.welcomeMessage !== 'undefined') {toReturn['welcomeMessage'] = this.welcomeMessage;}\n if (typeof this.dataSources !== 'undefined' && this.dataSources !== null) {toReturn['dataSources'] = 'toApiJson' in this.dataSources ? (this.dataSources as any).toApiJson() : this.dataSources;}\n if (typeof this.textColor !== 'undefined') {toReturn['textColor'] = this.textColor;}\n if (typeof this.accentColor !== 'undefined') {toReturn['accentColor'] = this.accentColor;}\n if (typeof this.accentTextColor !== 'undefined') {toReturn['accentTextColor'] = this.accentTextColor;}\n if (typeof this.skipContactCapture !== 'undefined') {toReturn['skipContactCapture'] = this.skipContactCapture;}\n if (typeof this.additionalPromptInstructions !== 'undefined') {toReturn['additionalPromptInstructions'] = this.additionalPromptInstructions;}\n return toReturn;\n }\n}\n\nexport class CreateWidgetResponse implements i.CreateWidgetResponseInterface {\n widget: Widget;\n\n static fromProto(proto: any): CreateWidgetResponse {\n let m = new CreateWidgetResponse();\n m = Object.assign(m, proto);\n if (proto.widget) {m.widget = Widget.fromProto(proto.widget);}\n return m;\n }\n\n constructor(kwargs?: i.CreateWidgetResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.widget !== 'undefined' && this.widget !== null) {toReturn['widget'] = 'toApiJson' in this.widget ? (this.widget as any).toApiJson() : this.widget;}\n return toReturn;\n }\n}\n\nexport class MetadataDataEntry implements i.MetadataDataEntryInterface {\n key: string;\n value: string;\n\n static fromProto(proto: any): MetadataDataEntry {\n let m = new MetadataDataEntry();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.MetadataDataEntryInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.key !== 'undefined') {toReturn['key'] = this.key;}\n if (typeof this.value !== 'undefined') {toReturn['value'] = this.value;}\n return toReturn;\n }\n}\n\nexport class DeleteConversationRequest implements i.DeleteConversationRequestInterface {\n conversationId: string;\n\n static fromProto(proto: any): DeleteConversationRequest {\n let m = new DeleteConversationRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.DeleteConversationRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n return toReturn;\n }\n}\n\nexport class DeleteMessageRequest implements i.DeleteMessageRequestInterface {\n messageId: string;\n\n static fromProto(proto: any): DeleteMessageRequest {\n let m = new DeleteMessageRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.DeleteMessageRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.messageId !== 'undefined') {toReturn['messageId'] = this.messageId;}\n return toReturn;\n }\n}\n\nexport class DeleteMessageTemplateRequest implements i.DeleteMessageTemplateRequestInterface {\n templateId: string;\n\n static fromProto(proto: any): DeleteMessageTemplateRequest {\n let m = new DeleteMessageTemplateRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.DeleteMessageTemplateRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.templateId !== 'undefined') {toReturn['templateId'] = this.templateId;}\n return toReturn;\n }\n}\n\nexport class DeleteWidgetRequest implements i.DeleteWidgetRequestInterface {\n widgetId: string;\n\n static fromProto(proto: any): DeleteWidgetRequest {\n let m = new DeleteWidgetRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.DeleteWidgetRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.widgetId !== 'undefined') {toReturn['widgetId'] = this.widgetId;}\n return toReturn;\n }\n}\n\nexport class GetMultiConversationDetailsResponseDetailedConversation implements i.GetMultiConversationDetailsResponseDetailedConversationInterface {\n conversation: Conversation;\n latestMessage: Message;\n participants: Participant[];\n summary: string;\n\n static fromProto(proto: any): GetMultiConversationDetailsResponseDetailedConversation {\n let m = new GetMultiConversationDetailsResponseDetailedConversation();\n m = Object.assign(m, proto);\n if (proto.conversation) {m.conversation = Conversation.fromProto(proto.conversation);}\n if (proto.latestMessage) {m.latestMessage = Message.fromProto(proto.latestMessage);}\n if (proto.participants) {m.participants = proto.participants.map(Participant.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.GetMultiConversationDetailsResponseDetailedConversationInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversation !== 'undefined' && this.conversation !== null) {toReturn['conversation'] = 'toApiJson' in this.conversation ? (this.conversation as any).toApiJson() : this.conversation;}\n if (typeof this.latestMessage !== 'undefined' && this.latestMessage !== null) {toReturn['latestMessage'] = 'toApiJson' in this.latestMessage ? (this.latestMessage as any).toApiJson() : this.latestMessage;}\n if (typeof this.participants !== 'undefined' && this.participants !== null) {toReturn['participants'] = 'toApiJson' in this.participants ? (this.participants as any).toApiJson() : this.participants;}\n if (typeof this.summary !== 'undefined') {toReturn['summary'] = this.summary;}\n return toReturn;\n }\n}\n\nexport class SearchConversationsResponseDetailedConversation implements i.SearchConversationsResponseDetailedConversationInterface {\n conversation: Conversation;\n latestMessage: Message;\n participants: Participant[];\n\n static fromProto(proto: any): SearchConversationsResponseDetailedConversation {\n let m = new SearchConversationsResponseDetailedConversation();\n m = Object.assign(m, proto);\n if (proto.conversation) {m.conversation = Conversation.fromProto(proto.conversation);}\n if (proto.latestMessage) {m.latestMessage = Message.fromProto(proto.latestMessage);}\n if (proto.participants) {m.participants = proto.participants.map(Participant.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.SearchConversationsResponseDetailedConversationInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversation !== 'undefined' && this.conversation !== null) {toReturn['conversation'] = 'toApiJson' in this.conversation ? (this.conversation as any).toApiJson() : this.conversation;}\n if (typeof this.latestMessage !== 'undefined' && this.latestMessage !== null) {toReturn['latestMessage'] = 'toApiJson' in this.latestMessage ? (this.latestMessage as any).toApiJson() : this.latestMessage;}\n if (typeof this.participants !== 'undefined' && this.participants !== null) {toReturn['participants'] = 'toApiJson' in this.participants ? (this.participants as any).toApiJson() : this.participants;}\n return toReturn;\n }\n}\n\nexport class EvaluateResponseRequest implements i.EvaluateResponseRequestInterface {\n messageId: string;\n sentiment: e.EvaluationSentiment;\n comment: string;\n\n static fromProto(proto: any): EvaluateResponseRequest {\n let m = new EvaluateResponseRequest();\n m = Object.assign(m, proto);\n if (proto.sentiment) {m.sentiment = enumStringToValue<e.EvaluationSentiment>(e.EvaluationSentiment, proto.sentiment);}\n return m;\n }\n\n constructor(kwargs?: i.EvaluateResponseRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.messageId !== 'undefined') {toReturn['messageId'] = this.messageId;}\n if (typeof this.sentiment !== 'undefined') {toReturn['sentiment'] = this.sentiment;}\n if (typeof this.comment !== 'undefined') {toReturn['comment'] = this.comment;}\n return toReturn;\n }\n}\n\nexport class GetAvailableChannelsForConversationRequest implements i.GetAvailableChannelsForConversationRequestInterface {\n conversationId: string;\n\n static fromProto(proto: any): GetAvailableChannelsForConversationRequest {\n let m = new GetAvailableChannelsForConversationRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetAvailableChannelsForConversationRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n return toReturn;\n }\n}\n\nexport class GetAvailableChannelsForConversationResponse implements i.GetAvailableChannelsForConversationResponseInterface {\n channels: e.ConversationChannel[];\n preferredChannel: e.ConversationChannel;\n channelAvailabilities: ChannelAvailability[];\n\n static fromProto(proto: any): GetAvailableChannelsForConversationResponse {\n let m = new GetAvailableChannelsForConversationResponse();\n m = Object.assign(m, proto);\n if (proto.channels) {m.channels = proto.channels.map((v: string) => enumStringToValue<e.ConversationChannel>(e.ConversationChannel, v));}\n if (proto.preferredChannel) {m.preferredChannel = enumStringToValue<e.ConversationChannel>(e.ConversationChannel, proto.preferredChannel);}\n if (proto.channelAvailabilities) {m.channelAvailabilities = proto.channelAvailabilities.map(ChannelAvailability.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.GetAvailableChannelsForConversationResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.channels !== 'undefined') {toReturn['channels'] = this.channels;}\n if (typeof this.preferredChannel !== 'undefined') {toReturn['preferredChannel'] = this.preferredChannel;}\n if (typeof this.channelAvailabilities !== 'undefined' && this.channelAvailabilities !== null) {toReturn['channelAvailabilities'] = 'toApiJson' in this.channelAvailabilities ? (this.channelAvailabilities as any).toApiJson() : this.channelAvailabilities;}\n return toReturn;\n }\n}\n\nexport class GetConfigurationRequest implements i.GetConfigurationRequestInterface {\n subjectParticipant: SubjectParticipant;\n\n static fromProto(proto: any): GetConfigurationRequest {\n let m = new GetConfigurationRequest();\n m = Object.assign(m, proto);\n if (proto.subjectParticipant) {m.subjectParticipant = SubjectParticipant.fromProto(proto.subjectParticipant);}\n return m;\n }\n\n constructor(kwargs?: i.GetConfigurationRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.subjectParticipant !== 'undefined' && this.subjectParticipant !== null) {toReturn['subjectParticipant'] = 'toApiJson' in this.subjectParticipant ? (this.subjectParticipant as any).toApiJson() : this.subjectParticipant;}\n return toReturn;\n }\n}\n\nexport class GetConfigurationResponse implements i.GetConfigurationResponseInterface {\n configuration: Configuration;\n\n static fromProto(proto: any): GetConfigurationResponse {\n let m = new GetConfigurationResponse();\n m = Object.assign(m, proto);\n if (proto.configuration) {m.configuration = Configuration.fromProto(proto.configuration);}\n return m;\n }\n\n constructor(kwargs?: i.GetConfigurationResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.configuration !== 'undefined' && this.configuration !== null) {toReturn['configuration'] = 'toApiJson' in this.configuration ? (this.configuration as any).toApiJson() : this.configuration;}\n return toReturn;\n }\n}\n\nexport class GetConversationByKeyRequest implements i.GetConversationByKeyRequestInterface {\n conversationKey: ConversationKey;\n\n static fromProto(proto: any): GetConversationByKeyRequest {\n let m = new GetConversationByKeyRequest();\n m = Object.assign(m, proto);\n if (proto.conversationKey) {m.conversationKey = ConversationKey.fromProto(proto.conversationKey);}\n return m;\n }\n\n constructor(kwargs?: i.GetConversationByKeyRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversationKey !== 'undefined' && this.conversationKey !== null) {toReturn['conversationKey'] = 'toApiJson' in this.conversationKey ? (this.conversationKey as any).toApiJson() : this.conversationKey;}\n return toReturn;\n }\n}\n\nexport class GetConversationByKeyResponse implements i.GetConversationByKeyResponseInterface {\n conversation: Conversation;\n\n static fromProto(proto: any): GetConversationByKeyResponse {\n let m = new GetConversationByKeyResponse();\n m = Object.assign(m, proto);\n if (proto.conversation) {m.conversation = Conversation.fromProto(proto.conversation);}\n return m;\n }\n\n constructor(kwargs?: i.GetConversationByKeyResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversation !== 'undefined' && this.conversation !== null) {toReturn['conversation'] = 'toApiJson' in this.conversation ? (this.conversation as any).toApiJson() : this.conversation;}\n return toReturn;\n }\n}\n\nexport class GetConversationSummaryRequest implements i.GetConversationSummaryRequestInterface {\n conversationId: string;\n\n static fromProto(proto: any): GetConversationSummaryRequest {\n let m = new GetConversationSummaryRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetConversationSummaryRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n return toReturn;\n }\n}\n\nexport class GetConversationSummaryResponse implements i.GetConversationSummaryResponseInterface {\n summary: string;\n\n static fromProto(proto: any): GetConversationSummaryResponse {\n let m = new GetConversationSummaryResponse();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetConversationSummaryResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.summary !== 'undefined') {toReturn['summary'] = this.summary;}\n return toReturn;\n }\n}\n\nexport class GetConversationViewsRequest implements i.GetConversationViewsRequestInterface {\n participantId: string;\n\n static fromProto(proto: any): GetConversationViewsRequest {\n let m = new GetConversationViewsRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetConversationViewsRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participantId !== 'undefined') {toReturn['participantId'] = this.participantId;}\n return toReturn;\n }\n}\n\nexport class GetConversationViewsResponse implements i.GetConversationViewsResponseInterface {\n views: View[];\n\n static fromProto(proto: any): GetConversationViewsResponse {\n let m = new GetConversationViewsResponse();\n m = Object.assign(m, proto);\n if (proto.views) {m.views = proto.views.map(View.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.GetConversationViewsResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.views !== 'undefined' && this.views !== null) {toReturn['views'] = 'toApiJson' in this.views ? (this.views as any).toApiJson() : this.views;}\n return toReturn;\n }\n}\n\nexport class GetMessageOptions implements i.GetMessageOptionsInterface {\n includeOriginalContent: boolean;\n\n static fromProto(proto: any): GetMessageOptions {\n let m = new GetMessageOptions();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetMessageOptionsInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.includeOriginalContent !== 'undefined') {toReturn['includeOriginalContent'] = this.includeOriginalContent;}\n return toReturn;\n }\n}\n\nexport class GetMessageRequest implements i.GetMessageRequestInterface {\n messageId: string;\n options: GetMessageOptions;\n\n static fromProto(proto: any): GetMessageRequest {\n let m = new GetMessageRequest();\n m = Object.assign(m, proto);\n if (proto.options) {m.options = GetMessageOptions.fromProto(proto.options);}\n return m;\n }\n\n constructor(kwargs?: i.GetMessageRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.messageId !== 'undefined') {toReturn['messageId'] = this.messageId;}\n if (typeof this.options !== 'undefined' && this.options !== null) {toReturn['options'] = 'toApiJson' in this.options ? (this.options as any).toApiJson() : this.options;}\n return toReturn;\n }\n}\n\nexport class GetMessageTemplateRequest implements i.GetMessageTemplateRequestInterface {\n templateId: string;\n hydrationOptions: GetMessageTemplateRequestHydrationOptions;\n\n static fromProto(proto: any): GetMessageTemplateRequest {\n let m = new GetMessageTemplateRequest();\n m = Object.assign(m, proto);\n if (proto.hydrationOptions) {m.hydrationOptions = GetMessageTemplateRequestHydrationOptions.fromProto(proto.hydrationOptions);}\n return m;\n }\n\n constructor(kwargs?: i.GetMessageTemplateRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.templateId !== 'undefined') {toReturn['templateId'] = this.templateId;}\n if (typeof this.hydrationOptions !== 'undefined' && this.hydrationOptions !== null) {toReturn['hydrationOptions'] = 'toApiJson' in this.hydrationOptions ? (this.hydrationOptions as any).toApiJson() : this.hydrationOptions;}\n return toReturn;\n }\n}\n\nexport class GetMessageTemplateResponse implements i.GetMessageTemplateResponseInterface {\n template: MessageTemplate;\n hydrationInformation: GetMessageTemplateResponseHydrationInformation;\n\n static fromProto(proto: any): GetMessageTemplateResponse {\n let m = new GetMessageTemplateResponse();\n m = Object.assign(m, proto);\n if (proto.template) {m.template = MessageTemplate.fromProto(proto.template);}\n if (proto.hydrationInformation) {m.hydrationInformation = GetMessageTemplateResponseHydrationInformation.fromProto(proto.hydrationInformation);}\n return m;\n }\n\n constructor(kwargs?: i.GetMessageTemplateResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.template !== 'undefined' && this.template !== null) {toReturn['template'] = 'toApiJson' in this.template ? (this.template as any).toApiJson() : this.template;}\n if (typeof this.hydrationInformation !== 'undefined' && this.hydrationInformation !== null) {toReturn['hydrationInformation'] = 'toApiJson' in this.hydrationInformation ? (this.hydrationInformation as any).toApiJson() : this.hydrationInformation;}\n return toReturn;\n }\n}\n\nexport class GetMultiConfigurationRequest implements i.GetMultiConfigurationRequestInterface {\n subjectParticipants: SubjectParticipant[];\n\n static fromProto(proto: any): GetMultiConfigurationRequest {\n let m = new GetMultiConfigurationRequest();\n m = Object.assign(m, proto);\n if (proto.subjectParticipants) {m.subjectParticipants = proto.subjectParticipants.map(SubjectParticipant.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.GetMultiConfigurationRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.subjectParticipants !== 'undefined' && this.subjectParticipants !== null) {toReturn['subjectParticipants'] = 'toApiJson' in this.subjectParticipants ? (this.subjectParticipants as any).toApiJson() : this.subjectParticipants;}\n return toReturn;\n }\n}\n\nexport class GetMultiConfigurationResponse implements i.GetMultiConfigurationResponseInterface {\n configurations: Configuration[];\n\n static fromProto(proto: any): GetMultiConfigurationResponse {\n let m = new GetMultiConfigurationResponse();\n m = Object.assign(m, proto);\n if (proto.configurations) {m.configurations = proto.configurations.map(Configuration.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.GetMultiConfigurationResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.configurations !== 'undefined' && this.configurations !== null) {toReturn['configurations'] = 'toApiJson' in this.configurations ? (this.configurations as any).toApiJson() : this.configurations;}\n return toReturn;\n }\n}\n\nexport class GetMultiConversationDetailsRequest implements i.GetMultiConversationDetailsRequestInterface {\n conversationIds: string[];\n options: FieldMask;\n\n static fromProto(proto: any): GetMultiConversationDetailsRequest {\n let m = new GetMultiConversationDetailsRequest();\n m = Object.assign(m, proto);\n if (proto.options) {m.options = FieldMask.fromProto(proto.options);}\n return m;\n }\n\n constructor(kwargs?: i.GetMultiConversationDetailsRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversationIds !== 'undefined') {toReturn['conversationIds'] = this.conversationIds;}\n if (typeof this.options !== 'undefined' && this.options !== null) {toReturn['options'] = 'toApiJson' in this.options ? (this.options as any).toApiJson() : this.options;}\n return toReturn;\n }\n}\n\nexport class GetMultiConversationDetailsResponse implements i.GetMultiConversationDetailsResponseInterface {\n conversations: GetMultiConversationDetailsResponseDetailedConversation[];\n\n static fromProto(proto: any): GetMultiConversationDetailsResponse {\n let m = new GetMultiConversationDetailsResponse();\n m = Object.assign(m, proto);\n if (proto.conversations) {m.conversations = proto.conversations.map(GetMultiConversationDetailsResponseDetailedConversation.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.GetMultiConversationDetailsResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversations !== 'undefined' && this.conversations !== null) {toReturn['conversations'] = 'toApiJson' in this.conversations ? (this.conversations as any).toApiJson() : this.conversations;}\n return toReturn;\n }\n}\n\nexport class GetMultiConversationMessageCountRequest implements i.GetMultiConversationMessageCountRequestInterface {\n conversationIds: string[];\n\n static fromProto(proto: any): GetMultiConversationMessageCountRequest {\n let m = new GetMultiConversationMessageCountRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetMultiConversationMessageCountRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversationIds !== 'undefined') {toReturn['conversationIds'] = this.conversationIds;}\n return toReturn;\n }\n}\n\nexport class GetMultiConversationMessageCountResponse implements i.GetMultiConversationMessageCountResponseInterface {\n messageCounts: ConversationMessageCount[];\n counts: {[key: string]: number};\n\n static fromProto(proto: any): GetMultiConversationMessageCountResponse {\n let m = new GetMultiConversationMessageCountResponse();\n m = Object.assign(m, proto);\n if (proto.messageCounts) {m.messageCounts = proto.messageCounts.map(ConversationMessageCount.fromProto);}\n if (proto.counts) {m.counts = Object.keys(proto.counts).reduce<any>((obj, k) => { obj[k] = parseInt(proto.counts[k], 10); return obj; }, {});}\n return m;\n }\n\n constructor(kwargs?: i.GetMultiConversationMessageCountResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.messageCounts !== 'undefined' && this.messageCounts !== null) {toReturn['messageCounts'] = 'toApiJson' in this.messageCounts ? (this.messageCounts as any).toApiJson() : this.messageCounts;}\n if (typeof this.counts !== 'undefined' && this.counts !== null) {toReturn['counts'] = 'toApiJson' in this.counts ? (this.counts as any).toApiJson() : this.counts;}\n return toReturn;\n }\n}\n\nexport class GetMultiEventsRequest implements i.GetMultiEventsRequestInterface {\n eventIds: string[];\n conversationId: string;\n\n static fromProto(proto: any): GetMultiEventsRequest {\n let m = new GetMultiEventsRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetMultiEventsRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.eventIds !== 'undefined') {toReturn['eventIds'] = this.eventIds;}\n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n return toReturn;\n }\n}\n\nexport class GetMultiEventsResponse implements i.GetMultiEventsResponseInterface {\n events: Event[];\n\n static fromProto(proto: any): GetMultiEventsResponse {\n let m = new GetMultiEventsResponse();\n m = Object.assign(m, proto);\n if (proto.events) {m.events = proto.events.map(Event.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.GetMultiEventsResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.events !== 'undefined' && this.events !== null) {toReturn['events'] = 'toApiJson' in this.events ? (this.events as any).toApiJson() : this.events;}\n return toReturn;\n }\n}\n\nexport class GetMultiMessagesRequest implements i.GetMultiMessagesRequestInterface {\n messageIds: string[];\n conversationId: string;\n languageCode: string;\n\n static fromProto(proto: any): GetMultiMessagesRequest {\n let m = new GetMultiMessagesRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetMultiMessagesRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.messageIds !== 'undefined') {toReturn['messageIds'] = this.messageIds;}\n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n if (typeof this.languageCode !== 'undefined') {toReturn['languageCode'] = this.languageCode;}\n return toReturn;\n }\n}\n\nexport class GetMultiMessagesResponse implements i.GetMultiMessagesResponseInterface {\n messages: Message[];\n\n static fromProto(proto: any): GetMultiMessagesResponse {\n let m = new GetMultiMessagesResponse();\n m = Object.assign(m, proto);\n if (proto.messages) {m.messages = proto.messages.map(Message.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.GetMultiMessagesResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.messages !== 'undefined' && this.messages !== null) {toReturn['messages'] = 'toApiJson' in this.messages ? (this.messages as any).toApiJson() : this.messages;}\n return toReturn;\n }\n}\n\nexport class GetMultiParticipantsRequest implements i.GetMultiParticipantsRequestInterface {\n participantIds: string[];\n conversationId: string;\n\n static fromProto(proto: any): GetMultiParticipantsRequest {\n let m = new GetMultiParticipantsRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetMultiParticipantsRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participantIds !== 'undefined') {toReturn['participantIds'] = this.participantIds;}\n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n return toReturn;\n }\n}\n\nexport class GetMultiParticipantsResponse implements i.GetMultiParticipantsResponseInterface {\n participants: Participant[];\n\n static fromProto(proto: any): GetMultiParticipantsResponse {\n let m = new GetMultiParticipantsResponse();\n m = Object.assign(m, proto);\n if (proto.participants) {m.participants = proto.participants.map(Participant.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.GetMultiParticipantsResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participants !== 'undefined' && this.participants !== null) {toReturn['participants'] = 'toApiJson' in this.participants ? (this.participants as any).toApiJson() : this.participants;}\n return toReturn;\n }\n}\n\nexport class GetMultiWidgetMessagesRequest implements i.GetMultiWidgetMessagesRequestInterface {\n messageIds: string[];\n\n static fromProto(proto: any): GetMultiWidgetMessagesRequest {\n let m = new GetMultiWidgetMessagesRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetMultiWidgetMessagesRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.messageIds !== 'undefined') {toReturn['messageIds'] = this.messageIds;}\n return toReturn;\n }\n}\n\nexport class GetMultiWidgetMessagesResponse implements i.GetMultiWidgetMessagesResponseInterface {\n messages: Message[];\n\n static fromProto(proto: any): GetMultiWidgetMessagesResponse {\n let m = new GetMultiWidgetMessagesResponse();\n m = Object.assign(m, proto);\n if (proto.messages) {m.messages = proto.messages.map(Message.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.GetMultiWidgetMessagesResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.messages !== 'undefined' && this.messages !== null) {toReturn['messages'] = 'toApiJson' in this.messages ? (this.messages as any).toApiJson() : this.messages;}\n return toReturn;\n }\n}\n\nexport class GetOwnerEmailRequest implements i.GetOwnerEmailRequestInterface {\n subjectParticipant: SubjectParticipant;\n\n static fromProto(proto: any): GetOwnerEmailRequest {\n let m = new GetOwnerEmailRequest();\n m = Object.assign(m, proto);\n if (proto.subjectParticipant) {m.subjectParticipant = SubjectParticipant.fromProto(proto.subjectParticipant);}\n return m;\n }\n\n constructor(kwargs?: i.GetOwnerEmailRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.subjectParticipant !== 'undefined' && this.subjectParticipant !== null) {toReturn['subjectParticipant'] = 'toApiJson' in this.subjectParticipant ? (this.subjectParticipant as any).toApiJson() : this.subjectParticipant;}\n return toReturn;\n }\n}\n\nexport class GetOwnerEmailResponse implements i.GetOwnerEmailResponseInterface {\n forwardingEmail: string;\n\n static fromProto(proto: any): GetOwnerEmailResponse {\n let m = new GetOwnerEmailResponse();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetOwnerEmailResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.forwardingEmail !== 'undefined') {toReturn['forwardingEmail'] = this.forwardingEmail;}\n return toReturn;\n }\n}\n\nexport class GetParticipantsByKeyRequest implements i.GetParticipantsByKeyRequestInterface {\n participantKey: ParticipantKey;\n\n static fromProto(proto: any): GetParticipantsByKeyRequest {\n let m = new GetParticipantsByKeyRequest();\n m = Object.assign(m, proto);\n if (proto.participantKey) {m.participantKey = ParticipantKey.fromProto(proto.participantKey);}\n return m;\n }\n\n constructor(kwargs?: i.GetParticipantsByKeyRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participantKey !== 'undefined' && this.participantKey !== null) {toReturn['participantKey'] = 'toApiJson' in this.participantKey ? (this.participantKey as any).toApiJson() : this.participantKey;}\n return toReturn;\n }\n}\n\nexport class GetParticipantsByKeyResponse implements i.GetParticipantsByKeyResponseInterface {\n participants: Participant[];\n participant: Participant;\n\n static fromProto(proto: any): GetParticipantsByKeyResponse {\n let m = new GetParticipantsByKeyResponse();\n m = Object.assign(m, proto);\n if (proto.participants) {m.participants = proto.participants.map(Participant.fromProto);}\n if (proto.participant) {m.participant = Participant.fromProto(proto.participant);}\n return m;\n }\n\n constructor(kwargs?: i.GetParticipantsByKeyResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participants !== 'undefined' && this.participants !== null) {toReturn['participants'] = 'toApiJson' in this.participants ? (this.participants as any).toApiJson() : this.participants;}\n if (typeof this.participant !== 'undefined' && this.participant !== null) {toReturn['participant'] = 'toApiJson' in this.participant ? (this.participant as any).toApiJson() : this.participant;}\n return toReturn;\n }\n}\n\nexport class GetWidgetConfigRequest implements i.GetWidgetConfigRequestInterface {\n widgetId: string;\n\n static fromProto(proto: any): GetWidgetConfigRequest {\n let m = new GetWidgetConfigRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetWidgetConfigRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.widgetId !== 'undefined') {toReturn['widgetId'] = this.widgetId;}\n return toReturn;\n }\n}\n\nexport class GetWidgetConfigResponse implements i.GetWidgetConfigResponseInterface {\n name: string;\n color: string;\n isEnabled: boolean;\n welcomeMessage: string;\n textColor: string;\n accentColor: string;\n accentTextColor: string;\n skipContactCapture: boolean;\n widgetTopSpace: number;\n\n static fromProto(proto: any): GetWidgetConfigResponse {\n let m = new GetWidgetConfigResponse();\n m = Object.assign(m, proto);\n if (proto.widgetTopSpace) {m.widgetTopSpace = parseInt(proto.widgetTopSpace, 10);}\n return m;\n }\n\n constructor(kwargs?: i.GetWidgetConfigResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.name !== 'undefined') {toReturn['name'] = this.name;}\n if (typeof this.color !== 'undefined') {toReturn['color'] = this.color;}\n if (typeof this.isEnabled !== 'undefined') {toReturn['isEnabled'] = this.isEnabled;}\n if (typeof this.welcomeMessage !== 'undefined') {toReturn['welcomeMessage'] = this.welcomeMessage;}\n if (typeof this.textColor !== 'undefined') {toReturn['textColor'] = this.textColor;}\n if (typeof this.accentColor !== 'undefined') {toReturn['accentColor'] = this.accentColor;}\n if (typeof this.accentTextColor !== 'undefined') {toReturn['accentTextColor'] = this.accentTextColor;}\n if (typeof this.skipContactCapture !== 'undefined') {toReturn['skipContactCapture'] = this.skipContactCapture;}\n if (typeof this.widgetTopSpace !== 'undefined') {toReturn['widgetTopSpace'] = this.widgetTopSpace;}\n return toReturn;\n }\n}\n\nexport class GetWidgetConversationResponse implements i.GetWidgetConversationResponseInterface {\n conversation: Conversation;\n\n static fromProto(proto: any): GetWidgetConversationResponse {\n let m = new GetWidgetConversationResponse();\n m = Object.assign(m, proto);\n if (proto.conversation) {m.conversation = Conversation.fromProto(proto.conversation);}\n return m;\n }\n\n constructor(kwargs?: i.GetWidgetConversationResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversation !== 'undefined' && this.conversation !== null) {toReturn['conversation'] = 'toApiJson' in this.conversation ? (this.conversation as any).toApiJson() : this.conversation;}\n return toReturn;\n }\n}\n\nexport class GetWidgetRequest implements i.GetWidgetRequestInterface {\n widgetId: string;\n\n static fromProto(proto: any): GetWidgetRequest {\n let m = new GetWidgetRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetWidgetRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.widgetId !== 'undefined') {toReturn['widgetId'] = this.widgetId;}\n return toReturn;\n }\n}\n\nexport class GetWidgetResponse implements i.GetWidgetResponseInterface {\n widget: Widget;\n\n static fromProto(proto: any): GetWidgetResponse {\n let m = new GetWidgetResponse();\n m = Object.assign(m, proto);\n if (proto.widget) {m.widget = Widget.fromProto(proto.widget);}\n return m;\n }\n\n constructor(kwargs?: i.GetWidgetResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.widget !== 'undefined' && this.widget !== null) {toReturn['widget'] = 'toApiJson' in this.widget ? (this.widget as any).toApiJson() : this.widget;}\n return toReturn;\n }\n}\n\nexport class GetMessageTemplateRequestHydrationOptionsHydrationEntity implements i.GetMessageTemplateRequestHydrationOptionsHydrationEntityInterface {\n entityType: e.GetMessageTemplateRequestHydrationOptionsHydrationEntityEntityType;\n entityId: string;\n\n static fromProto(proto: any): GetMessageTemplateRequestHydrationOptionsHydrationEntity {\n let m = new GetMessageTemplateRequestHydrationOptionsHydrationEntity();\n m = Object.assign(m, proto);\n if (proto.entityType) {m.entityType = enumStringToValue<e.GetMessageTemplateRequestHydrationOptionsHydrationEntityEntityType>(e.GetMessageTemplateRequestHydrationOptionsHydrationEntityEntityType, proto.entityType);}\n return m;\n }\n\n constructor(kwargs?: i.GetMessageTemplateRequestHydrationOptionsHydrationEntityInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.entityType !== 'undefined') {toReturn['entityType'] = this.entityType;}\n if (typeof this.entityId !== 'undefined') {toReturn['entityId'] = this.entityId;}\n return toReturn;\n }\n}\n\nexport class GetMessageTemplateResponseHydrationInformation implements i.GetMessageTemplateResponseHydrationInformationInterface {\n allFieldsHydrated: boolean;\n\n static fromProto(proto: any): GetMessageTemplateResponseHydrationInformation {\n let m = new GetMessageTemplateResponseHydrationInformation();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetMessageTemplateResponseHydrationInformationInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.allFieldsHydrated !== 'undefined') {toReturn['allFieldsHydrated'] = this.allFieldsHydrated;}\n return toReturn;\n }\n}\n\nexport class GetMessageTemplateRequestHydrationOptions implements i.GetMessageTemplateRequestHydrationOptionsInterface {\n hydrationEntities: GetMessageTemplateRequestHydrationOptionsHydrationEntity[];\n\n static fromProto(proto: any): GetMessageTemplateRequestHydrationOptions {\n let m = new GetMessageTemplateRequestHydrationOptions();\n m = Object.assign(m, proto);\n if (proto.hydrationEntities) {m.hydrationEntities = proto.hydrationEntities.map(GetMessageTemplateRequestHydrationOptionsHydrationEntity.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.GetMessageTemplateRequestHydrationOptionsInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.hydrationEntities !== 'undefined' && this.hydrationEntities !== null) {toReturn['hydrationEntities'] = 'toApiJson' in this.hydrationEntities ? (this.hydrationEntities as any).toApiJson() : this.hydrationEntities;}\n return toReturn;\n }\n}\n\nexport class ListMessageTemplateRequest implements i.ListMessageTemplateRequestInterface {\n subjectParticipant: SubjectParticipant;\n pagingOptions: PagedRequestOptions;\n\n static fromProto(proto: any): ListMessageTemplateRequest {\n let m = new ListMessageTemplateRequest();\n m = Object.assign(m, proto);\n if (proto.subjectParticipant) {m.subjectParticipant = SubjectParticipant.fromProto(proto.subjectParticipant);}\n if (proto.pagingOptions) {m.pagingOptions = PagedRequestOptions.fromProto(proto.pagingOptions);}\n return m;\n }\n\n constructor(kwargs?: i.ListMessageTemplateRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.subjectParticipant !== 'undefined' && this.subjectParticipant !== null) {toReturn['subjectParticipant'] = 'toApiJson' in this.subjectParticipant ? (this.subjectParticipant as any).toApiJson() : this.subjectParticipant;}\n if (typeof this.pagingOptions !== 'undefined' && this.pagingOptions !== null) {toReturn['pagingOptions'] = 'toApiJson' in this.pagingOptions ? (this.pagingOptions as any).toApiJson() : this.pagingOptions;}\n return toReturn;\n }\n}\n\nexport class ListMessageTemplateResponse implements i.ListMessageTemplateResponseInterface {\n templates: MessageTemplate[];\n pagingMetadata: PagedResponseMetadata;\n\n static fromProto(proto: any): ListMessageTemplateResponse {\n let m = new ListMessageTemplateResponse();\n m = Object.assign(m, proto);\n if (proto.templates) {m.templates = proto.templates.map(MessageTemplate.fromProto);}\n if (proto.pagingMetadata) {m.pagingMetadata = PagedResponseMetadata.fromProto(proto.pagingMetadata);}\n return m;\n }\n\n constructor(kwargs?: i.ListMessageTemplateResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.templates !== 'undefined' && this.templates !== null) {toReturn['templates'] = 'toApiJson' in this.templates ? (this.templates as any).toApiJson() : this.templates;}\n if (typeof this.pagingMetadata !== 'undefined' && this.pagingMetadata !== null) {toReturn['pagingMetadata'] = 'toApiJson' in this.pagingMetadata ? (this.pagingMetadata as any).toApiJson() : this.pagingMetadata;}\n return toReturn;\n }\n}\n\nexport class ListMessagesRequestListMessagesFilters implements i.ListMessagesRequestListMessagesFiltersInterface {\n conversationId: string;\n\n static fromProto(proto: any): ListMessagesRequestListMessagesFilters {\n let m = new ListMessagesRequestListMessagesFilters();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.ListMessagesRequestListMessagesFiltersInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n return toReturn;\n }\n}\n\nexport class ListMessagesRequest implements i.ListMessagesRequestInterface {\n filters: ListMessagesRequestListMessagesFilters;\n pagingOptions: PagedRequestOptions;\n\n static fromProto(proto: any): ListMessagesRequest {\n let m = new ListMessagesRequest();\n m = Object.assign(m, proto);\n if (proto.filters) {m.filters = ListMessagesRequestListMessagesFilters.fromProto(proto.filters);}\n if (proto.pagingOptions) {m.pagingOptions = PagedRequestOptions.fromProto(proto.pagingOptions);}\n return m;\n }\n\n constructor(kwargs?: i.ListMessagesRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.filters !== 'undefined' && this.filters !== null) {toReturn['filters'] = 'toApiJson' in this.filters ? (this.filters as any).toApiJson() : this.filters;}\n if (typeof this.pagingOptions !== 'undefined' && this.pagingOptions !== null) {toReturn['pagingOptions'] = 'toApiJson' in this.pagingOptions ? (this.pagingOptions as any).toApiJson() : this.pagingOptions;}\n return toReturn;\n }\n}\n\nexport class ListMessagesResponse implements i.ListMessagesResponseInterface {\n messages: Message[];\n pagingMetadata: PagedResponseMetadata;\n\n static fromProto(proto: any): ListMessagesResponse {\n let m = new ListMessagesResponse();\n m = Object.assign(m, proto);\n if (proto.messages) {m.messages = proto.messages.map(Message.fromProto);}\n if (proto.pagingMetadata) {m.pagingMetadata = PagedResponseMetadata.fromProto(proto.pagingMetadata);}\n return m;\n }\n\n constructor(kwargs?: i.ListMessagesResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.messages !== 'undefined' && this.messages !== null) {toReturn['messages'] = 'toApiJson' in this.messages ? (this.messages as any).toApiJson() : this.messages;}\n if (typeof this.pagingMetadata !== 'undefined' && this.pagingMetadata !== null) {toReturn['pagingMetadata'] = 'toApiJson' in this.pagingMetadata ? (this.pagingMetadata as any).toApiJson() : this.pagingMetadata;}\n return toReturn;\n }\n}\n\nexport class ListWidgetsRequest implements i.ListWidgetsRequestInterface {\n namespace: string;\n pagingOptions: PagedRequestOptions;\n\n static fromProto(proto: any): ListWidgetsRequest {\n let m = new ListWidgetsRequest();\n m = Object.assign(m, proto);\n if (proto.pagingOptions) {m.pagingOptions = PagedRequestOptions.fromProto(proto.pagingOptions);}\n return m;\n }\n\n constructor(kwargs?: i.ListWidgetsRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.namespace !== 'undefined') {toReturn['namespace'] = this.namespace;}\n if (typeof this.pagingOptions !== 'undefined' && this.pagingOptions !== null) {toReturn['pagingOptions'] = 'toApiJson' in this.pagingOptions ? (this.pagingOptions as any).toApiJson() : this.pagingOptions;}\n return toReturn;\n }\n}\n\nexport class ListWidgetsResponse implements i.ListWidgetsResponseInterface {\n widgets: Widget[];\n pagingMetadata: PagedResponseMetadata;\n\n static fromProto(proto: any): ListWidgetsResponse {\n let m = new ListWidgetsResponse();\n m = Object.assign(m, proto);\n if (proto.widgets) {m.widgets = proto.widgets.map(Widget.fromProto);}\n if (proto.pagingMetadata) {m.pagingMetadata = PagedResponseMetadata.fromProto(proto.pagingMetadata);}\n return m;\n }\n\n constructor(kwargs?: i.ListWidgetsResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.widgets !== 'undefined' && this.widgets !== null) {toReturn['widgets'] = 'toApiJson' in this.widgets ? (this.widgets as any).toApiJson() : this.widgets;}\n if (typeof this.pagingMetadata !== 'undefined' && this.pagingMetadata !== null) {toReturn['pagingMetadata'] = 'toApiJson' in this.pagingMetadata ? (this.pagingMetadata as any).toApiJson() : this.pagingMetadata;}\n return toReturn;\n }\n}\n\nexport class LookupConversationsRequestLookupConversationsFilters implements i.LookupConversationsRequestLookupConversationsFiltersInterface {\n internalParticipantId: string[];\n location: e.PlatformLocation;\n channel: e.ConversationChannel;\n accountGroupId: string;\n externalConversationId: string;\n originLocation: e.PlatformLocation;\n originLocationExternalId: string;\n\n static fromProto(proto: any): LookupConversationsRequestLookupConversationsFilters {\n let m = new LookupConversationsRequestLookupConversationsFilters();\n m = Object.assign(m, proto);\n if (proto.location) {m.location = enumStringToValue<e.PlatformLocation>(e.PlatformLocation, proto.location);}\n if (proto.channel) {m.channel = enumStringToValue<e.ConversationChannel>(e.ConversationChannel, proto.channel);}\n if (proto.originLocation) {m.originLocation = enumStringToValue<e.PlatformLocation>(e.PlatformLocation, proto.originLocation);}\n return m;\n }\n\n constructor(kwargs?: i.LookupConversationsRequestLookupConversationsFiltersInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.internalParticipantId !== 'undefined') {toReturn['internalParticipantId'] = this.internalParticipantId;}\n if (typeof this.location !== 'undefined') {toReturn['location'] = this.location;}\n if (typeof this.channel !== 'undefined') {toReturn['channel'] = this.channel;}\n if (typeof this.accountGroupId !== 'undefined') {toReturn['accountGroupId'] = this.accountGroupId;}\n if (typeof this.externalConversationId !== 'undefined') {toReturn['externalConversationId'] = this.externalConversationId;}\n if (typeof this.originLocation !== 'undefined') {toReturn['originLocation'] = this.originLocation;}\n if (typeof this.originLocationExternalId !== 'undefined') {toReturn['originLocationExternalId'] = this.originLocationExternalId;}\n return toReturn;\n }\n}\n\nexport class LookupConversationsRequest implements i.LookupConversationsRequestInterface {\n filters: LookupConversationsRequestLookupConversationsFilters;\n pagingOptions: PagedRequestOptions;\n\n static fromProto(proto: any): LookupConversationsRequest {\n let m = new LookupConversationsRequest();\n m = Object.assign(m, proto);\n if (proto.filters) {m.filters = LookupConversationsRequestLookupConversationsFilters.fromProto(proto.filters);}\n if (proto.pagingOptions) {m.pagingOptions = PagedRequestOptions.fromProto(proto.pagingOptions);}\n return m;\n }\n\n constructor(kwargs?: i.LookupConversationsRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.filters !== 'undefined' && this.filters !== null) {toReturn['filters'] = 'toApiJson' in this.filters ? (this.filters as any).toApiJson() : this.filters;}\n if (typeof this.pagingOptions !== 'undefined' && this.pagingOptions !== null) {toReturn['pagingOptions'] = 'toApiJson' in this.pagingOptions ? (this.pagingOptions as any).toApiJson() : this.pagingOptions;}\n return toReturn;\n }\n}\n\nexport class LookupConversationsResponse implements i.LookupConversationsResponseInterface {\n conversations: LookupConversationsResponseConversations[];\n pagingMetadata: PagedResponseMetadata;\n\n static fromProto(proto: any): LookupConversationsResponse {\n let m = new LookupConversationsResponse();\n m = Object.assign(m, proto);\n if (proto.conversations) {m.conversations = proto.conversations.map(LookupConversationsResponseConversations.fromProto);}\n if (proto.pagingMetadata) {m.pagingMetadata = PagedResponseMetadata.fromProto(proto.pagingMetadata);}\n return m;\n }\n\n constructor(kwargs?: i.LookupConversationsResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversations !== 'undefined' && this.conversations !== null) {toReturn['conversations'] = 'toApiJson' in this.conversations ? (this.conversations as any).toApiJson() : this.conversations;}\n if (typeof this.pagingMetadata !== 'undefined' && this.pagingMetadata !== null) {toReturn['pagingMetadata'] = 'toApiJson' in this.pagingMetadata ? (this.pagingMetadata as any).toApiJson() : this.pagingMetadata;}\n return toReturn;\n }\n}\n\nexport class Media implements i.MediaInterface {\n mediaContentType: string;\n mediaLocationPath: string;\n mediaFileName: string;\n fileSize: number;\n\n static fromProto(proto: any): Media {\n let m = new Media();\n m = Object.assign(m, proto);\n if (proto.fileSize) {m.fileSize = parseInt(proto.fileSize, 10);}\n return m;\n }\n\n constructor(kwargs?: i.MediaInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.mediaContentType !== 'undefined') {toReturn['mediaContentType'] = this.mediaContentType;}\n if (typeof this.mediaLocationPath !== 'undefined') {toReturn['mediaLocationPath'] = this.mediaLocationPath;}\n if (typeof this.mediaFileName !== 'undefined') {toReturn['mediaFileName'] = this.mediaFileName;}\n if (typeof this.fileSize !== 'undefined') {toReturn['fileSize'] = this.fileSize;}\n return toReturn;\n }\n}\n\nexport class Metadata implements i.MetadataInterface {\n identifier: e.MetadataIdentifier;\n data: {[key: string]: string};\n\n static fromProto(proto: any): Metadata {\n let m = new Metadata();\n m = Object.assign(m, proto);\n if (proto.identifier) {m.identifier = enumStringToValue<e.MetadataIdentifier>(e.MetadataIdentifier, proto.identifier);}\n if (proto.data) {m.data = Object.keys(proto.data).reduce<any>((obj, k) => { obj[k] = proto.data[k]; return obj; }, {});}\n return m;\n }\n\n constructor(kwargs?: i.MetadataInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.identifier !== 'undefined') {toReturn['identifier'] = this.identifier;}\n if (typeof this.data !== 'undefined' && this.data !== null) {toReturn['data'] = 'toApiJson' in this.data ? (this.data as any).toApiJson() : this.data;}\n return toReturn;\n }\n}\n\nexport class ReceiveMessageRequestMetadataEntry implements i.ReceiveMessageRequestMetadataEntryInterface {\n key: string;\n value: string;\n\n static fromProto(proto: any): ReceiveMessageRequestMetadataEntry {\n let m = new ReceiveMessageRequestMetadataEntry();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.ReceiveMessageRequestMetadataEntryInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.key !== 'undefined') {toReturn['key'] = this.key;}\n if (typeof this.value !== 'undefined') {toReturn['value'] = this.value;}\n return toReturn;\n }\n}\n\nexport class NewInboxLeadCapturedRequest implements i.NewInboxLeadCapturedRequestInterface {\n namespace: string;\n parentNamespace: string;\n conversationId: string;\n conversationSummary: string;\n capturedLead: CapturedLead;\n source: string;\n capturedAt: Date;\n message: string;\n initiatorId: string;\n\n static fromProto(proto: any): NewInboxLeadCapturedRequest {\n let m = new NewInboxLeadCapturedRequest();\n m = Object.assign(m, proto);\n if (proto.capturedLead) {m.capturedLead = CapturedLead.fromProto(proto.capturedLead);}\n if (proto.capturedAt) {m.capturedAt = new Date(proto.capturedAt);}\n return m;\n }\n\n constructor(kwargs?: i.NewInboxLeadCapturedRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.namespace !== 'undefined') {toReturn['namespace'] = this.namespace;}\n if (typeof this.parentNamespace !== 'undefined') {toReturn['parentNamespace'] = this.parentNamespace;}\n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n if (typeof this.conversationSummary !== 'undefined') {toReturn['conversationSummary'] = this.conversationSummary;}\n if (typeof this.capturedLead !== 'undefined' && this.capturedLead !== null) {toReturn['capturedLead'] = 'toApiJson' in this.capturedLead ? (this.capturedLead as any).toApiJson() : this.capturedLead;}\n if (typeof this.source !== 'undefined') {toReturn['source'] = this.source;}\n if (typeof this.capturedAt !== 'undefined' && this.capturedAt !== null) {toReturn['capturedAt'] = 'toApiJson' in this.capturedAt ? (this.capturedAt as any).toApiJson() : this.capturedAt;}\n if (typeof this.message !== 'undefined') {toReturn['message'] = this.message;}\n if (typeof this.initiatorId !== 'undefined') {toReturn['initiatorId'] = this.initiatorId;}\n return toReturn;\n }\n}\n\nexport class NewInboxLeadCapturedResponse implements i.NewInboxLeadCapturedResponseInterface {\n\n static fromProto(proto: any): NewInboxLeadCapturedResponse {\n let m = new NewInboxLeadCapturedResponse();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.NewInboxLeadCapturedResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n return toReturn;\n }\n}\n\nexport class PagedRequestOptions implements i.PagedRequestOptionsInterface {\n cursor: string;\n pageSize: number;\n\n static fromProto(proto: any): PagedRequestOptions {\n let m = new PagedRequestOptions();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.PagedRequestOptionsInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.cursor !== 'undefined') {toReturn['cursor'] = this.cursor;}\n if (typeof this.pageSize !== 'undefined') {toReturn['pageSize'] = this.pageSize;}\n return toReturn;\n }\n}\n\nexport class PagedResponseMetadata implements i.PagedResponseMetadataInterface {\n nextCursor: string;\n hasMore: boolean;\n totalResults: number;\n\n static fromProto(proto: any): PagedResponseMetadata {\n let m = new PagedResponseMetadata();\n m = Object.assign(m, proto);\n if (proto.totalResults) {m.totalResults = parseInt(proto.totalResults, 10);}\n return m;\n }\n\n constructor(kwargs?: i.PagedResponseMetadataInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.nextCursor !== 'undefined') {toReturn['nextCursor'] = this.nextCursor;}\n if (typeof this.hasMore !== 'undefined') {toReturn['hasMore'] = this.hasMore;}\n if (typeof this.totalResults !== 'undefined') {toReturn['totalResults'] = this.totalResults;}\n return toReturn;\n }\n}\n\nexport class ReceiveMessageRequest implements i.ReceiveMessageRequestInterface {\n senderId: string;\n recipientId: string;\n conversationId: string;\n messageId: string;\n body: string;\n channel: e.ConversationChannel;\n type: e.MessageType;\n location: e.PlatformLocation;\n partnerId: string;\n accountGroupId: string;\n metadata: {[key: string]: string};\n media: string[];\n\n static fromProto(proto: any): ReceiveMessageRequest {\n let m = new ReceiveMessageRequest();\n m = Object.assign(m, proto);\n if (proto.channel) {m.channel = enumStringToValue<e.ConversationChannel>(e.ConversationChannel, proto.channel);}\n if (proto.type) {m.type = enumStringToValue<e.MessageType>(e.MessageType, proto.type);}\n if (proto.location) {m.location = enumStringToValue<e.PlatformLocation>(e.PlatformLocation, proto.location);}\n if (proto.metadata) {m.metadata = Object.keys(proto.metadata).reduce<any>((obj, k) => { obj[k] = proto.metadata[k]; return obj; }, {});}\n return m;\n }\n\n constructor(kwargs?: i.ReceiveMessageRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.senderId !== 'undefined') {toReturn['senderId'] = this.senderId;}\n if (typeof this.recipientId !== 'undefined') {toReturn['recipientId'] = this.recipientId;}\n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n if (typeof this.messageId !== 'undefined') {toReturn['messageId'] = this.messageId;}\n if (typeof this.body !== 'undefined') {toReturn['body'] = this.body;}\n if (typeof this.channel !== 'undefined') {toReturn['channel'] = this.channel;}\n if (typeof this.type !== 'undefined') {toReturn['type'] = this.type;}\n if (typeof this.location !== 'undefined') {toReturn['location'] = this.location;}\n if (typeof this.partnerId !== 'undefined') {toReturn['partnerId'] = this.partnerId;}\n if (typeof this.accountGroupId !== 'undefined') {toReturn['accountGroupId'] = this.accountGroupId;}\n if (typeof this.metadata !== 'undefined' && this.metadata !== null) {toReturn['metadata'] = 'toApiJson' in this.metadata ? (this.metadata as any).toApiJson() : this.metadata;}\n if (typeof this.media !== 'undefined') {toReturn['media'] = this.media;}\n return toReturn;\n }\n}\n\nexport class RemoveConversationFromConversationViewRequest implements i.RemoveConversationFromConversationViewRequestInterface {\n viewId: string;\n conversationId: string;\n participantId: string;\n\n static fromProto(proto: any): RemoveConversationFromConversationViewRequest {\n let m = new RemoveConversationFromConversationViewRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.RemoveConversationFromConversationViewRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.viewId !== 'undefined') {toReturn['viewId'] = this.viewId;}\n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n if (typeof this.participantId !== 'undefined') {toReturn['participantId'] = this.participantId;}\n return toReturn;\n }\n}\n\nexport class SearchConversationsRequest implements i.SearchConversationsRequestInterface {\n partnerId: string;\n accountGroupId: string;\n location: e.PlatformLocation;\n searchTerm: string;\n pagingOptions: PagedRequestOptions;\n\n static fromProto(proto: any): SearchConversationsRequest {\n let m = new SearchConversationsRequest();\n m = Object.assign(m, proto);\n if (proto.location) {m.location = enumStringToValue<e.PlatformLocation>(e.PlatformLocation, proto.location);}\n if (proto.pagingOptions) {m.pagingOptions = PagedRequestOptions.fromProto(proto.pagingOptions);}\n return m;\n }\n\n constructor(kwargs?: i.SearchConversationsRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.partnerId !== 'undefined') {toReturn['partnerId'] = this.partnerId;}\n if (typeof this.accountGroupId !== 'undefined') {toReturn['accountGroupId'] = this.accountGroupId;}\n if (typeof this.location !== 'undefined') {toReturn['location'] = this.location;}\n if (typeof this.searchTerm !== 'undefined') {toReturn['searchTerm'] = this.searchTerm;}\n if (typeof this.pagingOptions !== 'undefined' && this.pagingOptions !== null) {toReturn['pagingOptions'] = 'toApiJson' in this.pagingOptions ? (this.pagingOptions as any).toApiJson() : this.pagingOptions;}\n return toReturn;\n }\n}\n\nexport class SearchConversationsResponse implements i.SearchConversationsResponseInterface {\n conversations: SearchConversationsResponseDetailedConversation[];\n pagingMetadata: PagedResponseMetadata;\n\n static fromProto(proto: any): SearchConversationsResponse {\n let m = new SearchConversationsResponse();\n m = Object.assign(m, proto);\n if (proto.conversations) {m.conversations = proto.conversations.map(SearchConversationsResponseDetailedConversation.fromProto);}\n if (proto.pagingMetadata) {m.pagingMetadata = PagedResponseMetadata.fromProto(proto.pagingMetadata);}\n return m;\n }\n\n constructor(kwargs?: i.SearchConversationsResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversations !== 'undefined' && this.conversations !== null) {toReturn['conversations'] = 'toApiJson' in this.conversations ? (this.conversations as any).toApiJson() : this.conversations;}\n if (typeof this.pagingMetadata !== 'undefined' && this.pagingMetadata !== null) {toReturn['pagingMetadata'] = 'toApiJson' in this.pagingMetadata ? (this.pagingMetadata as any).toApiJson() : this.pagingMetadata;}\n return toReturn;\n }\n}\n\nexport class SendMessageRequest implements i.SendMessageRequestInterface {\n sender: Participant;\n recipient: Participant;\n conversationId: string;\n type: e.MessageType;\n body: string;\n metadata: Metadata[];\n originLocation: e.PlatformLocation;\n media: Media[];\n channel: e.ConversationChannel;\n\n static fromProto(proto: any): SendMessageRequest {\n let m = new SendMessageRequest();\n m = Object.assign(m, proto);\n if (proto.sender) {m.sender = Participant.fromProto(proto.sender);}\n if (proto.recipient) {m.recipient = Participant.fromProto(proto.recipient);}\n if (proto.type) {m.type = enumStringToValue<e.MessageType>(e.MessageType, proto.type);}\n if (proto.metadata) {m.metadata = proto.metadata.map(Metadata.fromProto);}\n if (proto.originLocation) {m.originLocation = enumStringToValue<e.PlatformLocation>(e.PlatformLocation, proto.originLocation);}\n if (proto.media) {m.media = proto.media.map(Media.fromProto);}\n if (proto.channel) {m.channel = enumStringToValue<e.ConversationChannel>(e.ConversationChannel, proto.channel);}\n return m;\n }\n\n constructor(kwargs?: i.SendMessageRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.sender !== 'undefined' && this.sender !== null) {toReturn['sender'] = 'toApiJson' in this.sender ? (this.sender as any).toApiJson() : this.sender;}\n if (typeof this.recipient !== 'undefined' && this.recipient !== null) {toReturn['recipient'] = 'toApiJson' in this.recipient ? (this.recipient as any).toApiJson() : this.recipient;}\n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n if (typeof this.type !== 'undefined') {toReturn['type'] = this.type;}\n if (typeof this.body !== 'undefined') {toReturn['body'] = this.body;}\n if (typeof this.metadata !== 'undefined' && this.metadata !== null) {toReturn['metadata'] = 'toApiJson' in this.metadata ? (this.metadata as any).toApiJson() : this.metadata;}\n if (typeof this.originLocation !== 'undefined') {toReturn['originLocation'] = this.originLocation;}\n if (typeof this.media !== 'undefined' && this.media !== null) {toReturn['media'] = 'toApiJson' in this.media ? (this.media as any).toApiJson() : this.media;}\n if (typeof this.channel !== 'undefined') {toReturn['channel'] = this.channel;}\n return toReturn;\n }\n}\n\nexport class SendMessageResponse implements i.SendMessageResponseInterface {\n workflowId: string;\n messageId: string;\n\n static fromProto(proto: any): SendMessageResponse {\n let m = new SendMessageResponse();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.SendMessageResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.workflowId !== 'undefined') {toReturn['workflowId'] = this.workflowId;}\n if (typeof this.messageId !== 'undefined') {toReturn['messageId'] = this.messageId;}\n return toReturn;\n }\n}\n\nexport class SendWidgetMessageRequest implements i.SendWidgetMessageRequestInterface {\n type: e.MessageType;\n body: string;\n metadata: Metadata[];\n location: e.PlatformLocation;\n\n static fromProto(proto: any): SendWidgetMessageRequest {\n let m = new SendWidgetMessageRequest();\n m = Object.assign(m, proto);\n if (proto.type) {m.type = enumStringToValue<e.MessageType>(e.MessageType, proto.type);}\n if (proto.metadata) {m.metadata = proto.metadata.map(Metadata.fromProto);}\n if (proto.location) {m.location = enumStringToValue<e.PlatformLocation>(e.PlatformLocation, proto.location);}\n return m;\n }\n\n constructor(kwargs?: i.SendWidgetMessageRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.type !== 'undefined') {toReturn['type'] = this.type;}\n if (typeof this.body !== 'undefined') {toReturn['body'] = this.body;}\n if (typeof this.metadata !== 'undefined' && this.metadata !== null) {toReturn['metadata'] = 'toApiJson' in this.metadata ? (this.metadata as any).toApiJson() : this.metadata;}\n if (typeof this.location !== 'undefined') {toReturn['location'] = this.location;}\n return toReturn;\n }\n}\n\nexport class SendWidgetMessageResponse implements i.SendWidgetMessageResponseInterface {\n messageId: string;\n\n static fromProto(proto: any): SendWidgetMessageResponse {\n let m = new SendWidgetMessageResponse();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.SendWidgetMessageResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.messageId !== 'undefined') {toReturn['messageId'] = this.messageId;}\n return toReturn;\n }\n}\n\nexport class SetLastSeenRequest implements i.SetLastSeenRequestInterface {\n conversationId: string;\n participant: Participant;\n status: e.SetLastSeenRequestStatus;\n\n static fromProto(proto: any): SetLastSeenRequest {\n let m = new SetLastSeenRequest();\n m = Object.assign(m, proto);\n if (proto.participant) {m.participant = Participant.fromProto(proto.participant);}\n if (proto.status) {m.status = enumStringToValue<e.SetLastSeenRequestStatus>(e.SetLastSeenRequestStatus, proto.status);}\n return m;\n }\n\n constructor(kwargs?: i.SetLastSeenRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n if (typeof this.participant !== 'undefined' && this.participant !== null) {toReturn['participant'] = 'toApiJson' in this.participant ? (this.participant as any).toApiJson() : this.participant;}\n if (typeof this.status !== 'undefined') {toReturn['status'] = this.status;}\n return toReturn;\n }\n}\n\nexport class SetLastSeenResponse implements i.SetLastSeenResponseInterface {\n participant: Participant;\n\n static fromProto(proto: any): SetLastSeenResponse {\n let m = new SetLastSeenResponse();\n m = Object.assign(m, proto);\n if (proto.participant) {m.participant = Participant.fromProto(proto.participant);}\n return m;\n }\n\n constructor(kwargs?: i.SetLastSeenResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participant !== 'undefined' && this.participant !== null) {toReturn['participant'] = 'toApiJson' in this.participant ? (this.participant as any).toApiJson() : this.participant;}\n return toReturn;\n }\n}\n\nexport class UpdateConversationRequest implements i.UpdateConversationRequestInterface {\n conversation: Conversation;\n fieldMask: FieldMask;\n\n static fromProto(proto: any): UpdateConversationRequest {\n let m = new UpdateConversationRequest();\n m = Object.assign(m, proto);\n if (proto.conversation) {m.conversation = Conversation.fromProto(proto.conversation);}\n if (proto.fieldMask) {m.fieldMask = FieldMask.fromProto(proto.fieldMask);}\n return m;\n }\n\n constructor(kwargs?: i.UpdateConversationRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversation !== 'undefined' && this.conversation !== null) {toReturn['conversation'] = 'toApiJson' in this.conversation ? (this.conversation as any).toApiJson() : this.conversation;}\n if (typeof this.fieldMask !== 'undefined' && this.fieldMask !== null) {toReturn['fieldMask'] = 'toApiJson' in this.fieldMask ? (this.fieldMask as any).toApiJson() : this.fieldMask;}\n return toReturn;\n }\n}\n\nexport class UpdateConversationResponse implements i.UpdateConversationResponseInterface {\n conversation: Conversation;\n\n static fromProto(proto: any): UpdateConversationResponse {\n let m = new UpdateConversationResponse();\n m = Object.assign(m, proto);\n if (proto.conversation) {m.conversation = Conversation.fromProto(proto.conversation);}\n return m;\n }\n\n constructor(kwargs?: i.UpdateConversationResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversation !== 'undefined' && this.conversation !== null) {toReturn['conversation'] = 'toApiJson' in this.conversation ? (this.conversation as any).toApiJson() : this.conversation;}\n return toReturn;\n }\n}\n\nexport class UpdateMessageStatusRequest implements i.UpdateMessageStatusRequestInterface {\n messageId: string;\n participantId: string;\n status: e.MessageStatus;\n\n static fromProto(proto: any): UpdateMessageStatusRequest {\n let m = new UpdateMessageStatusRequest();\n m = Object.assign(m, proto);\n if (proto.status) {m.status = enumStringToValue<e.MessageStatus>(e.MessageStatus, proto.status);}\n return m;\n }\n\n constructor(kwargs?: i.UpdateMessageStatusRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.messageId !== 'undefined') {toReturn['messageId'] = this.messageId;}\n if (typeof this.participantId !== 'undefined') {toReturn['participantId'] = this.participantId;}\n if (typeof this.status !== 'undefined') {toReturn['status'] = this.status;}\n return toReturn;\n }\n}\n\nexport class UpdateMessageTemplateRequest implements i.UpdateMessageTemplateRequestInterface {\n template: MessageTemplate;\n fieldMask: FieldMask;\n\n static fromProto(proto: any): UpdateMessageTemplateRequest {\n let m = new UpdateMessageTemplateRequest();\n m = Object.assign(m, proto);\n if (proto.template) {m.template = MessageTemplate.fromProto(proto.template);}\n if (proto.fieldMask) {m.fieldMask = FieldMask.fromProto(proto.fieldMask);}\n return m;\n }\n\n constructor(kwargs?: i.UpdateMessageTemplateRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.template !== 'undefined' && this.template !== null) {toReturn['template'] = 'toApiJson' in this.template ? (this.template as any).toApiJson() : this.template;}\n if (typeof this.fieldMask !== 'undefined' && this.fieldMask !== null) {toReturn['fieldMask'] = 'toApiJson' in this.fieldMask ? (this.fieldMask as any).toApiJson() : this.fieldMask;}\n return toReturn;\n }\n}\n\nexport class UpdateMessageTemplateResponse implements i.UpdateMessageTemplateResponseInterface {\n template: MessageTemplate;\n\n static fromProto(proto: any): UpdateMessageTemplateResponse {\n let m = new UpdateMessageTemplateResponse();\n m = Object.assign(m, proto);\n if (proto.template) {m.template = MessageTemplate.fromProto(proto.template);}\n return m;\n }\n\n constructor(kwargs?: i.UpdateMessageTemplateResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.template !== 'undefined' && this.template !== null) {toReturn['template'] = 'toApiJson' in this.template ? (this.template as any).toApiJson() : this.template;}\n return toReturn;\n }\n}\n\nexport class UpdateWidgetRequest implements i.UpdateWidgetRequestInterface {\n widgetId: string;\n name: string;\n color: string;\n allowedUrls: string[];\n welcomeMessage: string;\n isEnabled: boolean;\n textColor: string;\n accentColor: string;\n accentTextColor: string;\n skipContactCapture: boolean;\n additionalPromptInstructions: string;\n fieldMask: FieldMask;\n\n static fromProto(proto: any): UpdateWidgetRequest {\n let m = new UpdateWidgetRequest();\n m = Object.assign(m, proto);\n if (proto.fieldMask) {m.fieldMask = FieldMask.fromProto(proto.fieldMask);}\n return m;\n }\n\n constructor(kwargs?: i.UpdateWidgetRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.widgetId !== 'undefined') {toReturn['widgetId'] = this.widgetId;}\n if (typeof this.name !== 'undefined') {toReturn['name'] = this.name;}\n if (typeof this.color !== 'undefined') {toReturn['color'] = this.color;}\n if (typeof this.allowedUrls !== 'undefined') {toReturn['allowedUrls'] = this.allowedUrls;}\n if (typeof this.welcomeMessage !== 'undefined') {toReturn['welcomeMessage'] = this.welcomeMessage;}\n if (typeof this.isEnabled !== 'undefined') {toReturn['isEnabled'] = this.isEnabled;}\n if (typeof this.textColor !== 'undefined') {toReturn['textColor'] = this.textColor;}\n if (typeof this.accentColor !== 'undefined') {toReturn['accentColor'] = this.accentColor;}\n if (typeof this.accentTextColor !== 'undefined') {toReturn['accentTextColor'] = this.accentTextColor;}\n if (typeof this.skipContactCapture !== 'undefined') {toReturn['skipContactCapture'] = this.skipContactCapture;}\n if (typeof this.additionalPromptInstructions !== 'undefined') {toReturn['additionalPromptInstructions'] = this.additionalPromptInstructions;}\n if (typeof this.fieldMask !== 'undefined' && this.fieldMask !== null) {toReturn['fieldMask'] = 'toApiJson' in this.fieldMask ? (this.fieldMask as any).toApiJson() : this.fieldMask;}\n return toReturn;\n }\n}\n\nexport class UpdateWidgetResponse implements i.UpdateWidgetResponseInterface {\n widget: Widget;\n\n static fromProto(proto: any): UpdateWidgetResponse {\n let m = new UpdateWidgetResponse();\n m = Object.assign(m, proto);\n if (proto.widget) {m.widget = Widget.fromProto(proto.widget);}\n return m;\n }\n\n constructor(kwargs?: i.UpdateWidgetResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.widget !== 'undefined' && this.widget !== null) {toReturn['widget'] = 'toApiJson' in this.widget ? (this.widget as any).toApiJson() : this.widget;}\n return toReturn;\n }\n}\n\nexport class UpsertConfigurationRequest implements i.UpsertConfigurationRequestInterface {\n configuration: Configuration;\n fieldMask: FieldMask;\n\n static fromProto(proto: any): UpsertConfigurationRequest {\n let m = new UpsertConfigurationRequest();\n m = Object.assign(m, proto);\n if (proto.configuration) {m.configuration = Configuration.fromProto(proto.configuration);}\n if (proto.fieldMask) {m.fieldMask = FieldMask.fromProto(proto.fieldMask);}\n return m;\n }\n\n constructor(kwargs?: i.UpsertConfigurationRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.configuration !== 'undefined' && this.configuration !== null) {toReturn['configuration'] = 'toApiJson' in this.configuration ? (this.configuration as any).toApiJson() : this.configuration;}\n if (typeof this.fieldMask !== 'undefined' && this.fieldMask !== null) {toReturn['fieldMask'] = 'toApiJson' in this.fieldMask ? (this.fieldMask as any).toApiJson() : this.fieldMask;}\n return toReturn;\n }\n}\n\nexport class UpsertConfigurationResponse implements i.UpsertConfigurationResponseInterface {\n configuration: Configuration;\n\n static fromProto(proto: any): UpsertConfigurationResponse {\n let m = new UpsertConfigurationResponse();\n m = Object.assign(m, proto);\n if (proto.configuration) {m.configuration = Configuration.fromProto(proto.configuration);}\n return m;\n }\n\n constructor(kwargs?: i.UpsertConfigurationResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.configuration !== 'undefined' && this.configuration !== null) {toReturn['configuration'] = 'toApiJson' in this.configuration ? (this.configuration as any).toApiJson() : this.configuration;}\n return toReturn;\n }\n}\n\nexport class UpsertProductFeatureRequest implements i.UpsertProductFeatureRequestInterface {\n productFeature: ProductFeature;\n fieldMask: FieldMask;\n subjectParticipant: SubjectParticipant;\n\n static fromProto(proto: any): UpsertProductFeatureRequest {\n let m = new UpsertProductFeatureRequest();\n m = Object.assign(m, proto);\n if (proto.productFeature) {m.productFeature = ProductFeature.fromProto(proto.productFeature);}\n if (proto.fieldMask) {m.fieldMask = FieldMask.fromProto(proto.fieldMask);}\n if (proto.subjectParticipant) {m.subjectParticipant = SubjectParticipant.fromProto(proto.subjectParticipant);}\n return m;\n }\n\n constructor(kwargs?: i.UpsertProductFeatureRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.productFeature !== 'undefined' && this.productFeature !== null) {toReturn['productFeature'] = 'toApiJson' in this.productFeature ? (this.productFeature as any).toApiJson() : this.productFeature;}\n if (typeof this.fieldMask !== 'undefined' && this.fieldMask !== null) {toReturn['fieldMask'] = 'toApiJson' in this.fieldMask ? (this.fieldMask as any).toApiJson() : this.fieldMask;}\n if (typeof this.subjectParticipant !== 'undefined' && this.subjectParticipant !== null) {toReturn['subjectParticipant'] = 'toApiJson' in this.subjectParticipant ? (this.subjectParticipant as any).toApiJson() : this.subjectParticipant;}\n return toReturn;\n }\n}\n\nexport class UpsertProductFeatureResponse implements i.UpsertProductFeatureResponseInterface {\n productFeature: ProductFeature;\n\n static fromProto(proto: any): UpsertProductFeatureResponse {\n let m = new UpsertProductFeatureResponse();\n m = Object.assign(m, proto);\n if (proto.productFeature) {m.productFeature = ProductFeature.fromProto(proto.productFeature);}\n return m;\n }\n\n constructor(kwargs?: i.UpsertProductFeatureResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.productFeature !== 'undefined' && this.productFeature !== null) {toReturn['productFeature'] = 'toApiJson' in this.productFeature ? (this.productFeature as any).toApiJson() : this.productFeature;}\n return toReturn;\n }\n}\n\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects Index.\n// *********************************\nexport {\n NamespaceDetail,\n SubjectParticipant,\n} from './common';\n\nexport {\n Conversation,\n ConversationKey,\n LastSeenByParticipant,\n} from './conversation';\n\nexport {\n KeyValuePair,\n Message,\n ParticipantMessageStatus,\n SendStatus,\n} from './message';\n\nexport {\n Address,\n Participant,\n ParticipantKey,\n} from './participant';\n\nexport {\n Access,\n} from './annotations';\n\nexport {\n Configuration,\n ProductFeature,\n} from './configuration';\n\nexport {\n View,\n} from './conversation-view';\n\nexport {\n DataSources,\n Widget,\n} from './widget';\n\nexport {\n FieldMask,\n} from './field-mask';\n\nexport {\n MessageTemplate,\n} from './message-template';\n\nexport {\n AISystemMessage,\n GetAISystemMessageRequest,\n GetAISystemMessageResponse,\n ListAISystemMessagesRequest,\n ListAISystemMessagesResponse,\n UpsertAISystemMessageRequest,\n} from './aisystemmessage';\n\nexport {\n Event,\n} from './event';\n\nexport {\n AddConversationToConversationViewRequest,\n AddMultiParticipantsRequest,\n AddMultiParticipantsResponse,\n CapturedLead,\n ChannelAvailability,\n ChannelStatus,\n ConversationMessageCount,\n LookupConversationsResponseConversations,\n GetMultiConversationMessageCountResponseCountsEntry,\n CreateConversationRequest,\n CreateConversationResponse,\n CreateMessageTemplateRequest,\n CreateMessageTemplateResponse,\n CreateMultiMessagesRequest,\n CreateWidgetConversationRequest,\n CreateWidgetConversationResponse,\n CreateWidgetRequest,\n CreateWidgetResponse,\n MetadataDataEntry,\n DeleteConversationRequest,\n DeleteMessageRequest,\n DeleteMessageTemplateRequest,\n DeleteWidgetRequest,\n GetMultiConversationDetailsResponseDetailedConversation,\n SearchConversationsResponseDetailedConversation,\n EvaluateResponseRequest,\n GetAvailableChannelsForConversationRequest,\n GetAvailableChannelsForConversationResponse,\n GetConfigurationRequest,\n GetConfigurationResponse,\n GetConversationByKeyRequest,\n GetConversationByKeyResponse,\n GetConversationSummaryRequest,\n GetConversationSummaryResponse,\n GetConversationViewsRequest,\n GetConversationViewsResponse,\n GetMessageOptions,\n GetMessageRequest,\n GetMessageTemplateRequest,\n GetMessageTemplateResponse,\n GetMultiConfigurationRequest,\n GetMultiConfigurationResponse,\n GetMultiConversationDetailsRequest,\n GetMultiConversationDetailsResponse,\n GetMultiConversationMessageCountRequest,\n GetMultiConversationMessageCountResponse,\n GetMultiEventsRequest,\n GetMultiEventsResponse,\n GetMultiMessagesRequest,\n GetMultiMessagesResponse,\n GetMultiParticipantsRequest,\n GetMultiParticipantsResponse,\n GetMultiWidgetMessagesRequest,\n GetMultiWidgetMessagesResponse,\n GetOwnerEmailRequest,\n GetOwnerEmailResponse,\n GetParticipantsByKeyRequest,\n GetParticipantsByKeyResponse,\n GetWidgetConfigRequest,\n GetWidgetConfigResponse,\n GetWidgetConversationResponse,\n GetWidgetRequest,\n GetWidgetResponse,\n GetMessageTemplateRequestHydrationOptionsHydrationEntity,\n GetMessageTemplateResponseHydrationInformation,\n GetMessageTemplateRequestHydrationOptions,\n ListMessageTemplateRequest,\n ListMessageTemplateResponse,\n ListMessagesRequestListMessagesFilters,\n ListMessagesRequest,\n ListMessagesResponse,\n ListWidgetsRequest,\n ListWidgetsResponse,\n LookupConversationsRequestLookupConversationsFilters,\n LookupConversationsRequest,\n LookupConversationsResponse,\n Media,\n Metadata,\n ReceiveMessageRequestMetadataEntry,\n NewInboxLeadCapturedRequest,\n NewInboxLeadCapturedResponse,\n PagedRequestOptions,\n PagedResponseMetadata,\n ReceiveMessageRequest,\n RemoveConversationFromConversationViewRequest,\n SearchConversationsRequest,\n SearchConversationsResponse,\n SendMessageRequest,\n SendMessageResponse,\n SendWidgetMessageRequest,\n SendWidgetMessageResponse,\n SetLastSeenRequest,\n SetLastSeenResponse,\n UpdateConversationRequest,\n UpdateConversationResponse,\n UpdateMessageStatusRequest,\n UpdateMessageTemplateRequest,\n UpdateMessageTemplateResponse,\n UpdateWidgetRequest,\n UpdateWidgetResponse,\n UpsertConfigurationRequest,\n UpsertConfigurationResponse,\n UpsertProductFeatureRequest,\n UpsertProductFeatureResponse,\n} from './api';\n\n","import { Injectable } from '@angular/core';\n\ndeclare const window: any;\nconst environment: string = (window ? window['environment'] : 'prod') ?? 'prod';\nconst hostMap: { [key: string]: string } = {\n 'local': 'conversation-api.vendasta-local.com',\n 'test': '',\n 'demo': 'conversation-demo.apigateway.co',\n 'prod': 'conversation-prod.apigateway.co',\n 'production': 'conversation-prod.apigateway.co',\n};\n\n@Injectable({providedIn: 'root'})\nexport class HostService {\n get host(): string {\n return hostMap[environment.toLowerCase()];\n }\n\n get hostWithScheme(): string {\n return 'https://' + this.host;\n }\n}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nimport {Injectable} from '@angular/core';\nimport {\n GetAISystemMessageRequest,\n GetAISystemMessageResponse,\n ListAISystemMessagesRequest,\n ListAISystemMessagesResponse,\n UpsertAISystemMessageRequest,\n} from './objects/';\nimport {\n GetAISystemMessageRequestInterface,\n GetAISystemMessageResponseInterface,\n ListAISystemMessagesRequestInterface,\n ListAISystemMessagesResponseInterface,\n UpsertAISystemMessageRequestInterface,\n} from './interfaces/';\nimport {HttpHeaders, HttpClient, HttpResponse} from '@angular/common/http';\nimport {inject} from '@angular/core';\nimport {HostService} from '../_generated/host.service';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n@Injectable({providedIn: 'root'})\nexport class AISystemMessageApiService {\n private readonly hostService = inject(HostService);\n private readonly http = inject(HttpClient);\n private _host = this.hostService.hostWithScheme;\n\n private apiOptions(): {headers: HttpHeaders, withCredentials: boolean} {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n\n upsertAiSystemMessage(r: UpsertAISystemMessageRequest | UpsertAISystemMessageRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<UpsertAISystemMessageRequest>r).toApiJson) ? (<UpsertAISystemMessageRequest>r) : new UpsertAISystemMessageRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.AISystemMessageService/UpsertAISystemMessage\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n getAiSystemMessage(r: GetAISystemMessageRequest | GetAISystemMessageRequestInterface): Observable<GetAISystemMessageResponse> {\n const request = ((<GetAISystemMessageRequest>r).toApiJson) ? (<GetAISystemMessageRequest>r) : new GetAISystemMessageRequest(r);\n return this.http.post<GetAISystemMessageResponseInterface>(this._host + \"/conversation.v1.AISystemMessageService/GetAISystemMessage\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetAISystemMessageResponse.fromProto(resp))\n );\n }\n listAiSystemMessages(r: ListAISystemMessagesRequest | ListAISystemMessagesRequestInterface): Observable<ListAISystemMessagesResponse> {\n const request = ((<ListAISystemMessagesRequest>r).toApiJson) ? (<ListAISystemMessagesRequest>r) : new ListAISystemMessagesRequest(r);\n return this.http.post<ListAISystemMessagesResponseInterface>(this._host + \"/conversation.v1.AISystemMessageService/ListAISystemMessages\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => ListAISystemMessagesResponse.fromProto(resp))\n );\n }\n \n}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nimport {Injectable} from '@angular/core';\nimport {\n AddConversationToConversationViewRequest,\n AddMultiParticipantsRequest,\n AddMultiParticipantsResponse,\n CreateConversationRequest,\n CreateConversationResponse,\n CreateMessageTemplateRequest,\n CreateMessageTemplateResponse,\n CreateMultiMessagesRequest,\n CreateWidgetConversationRequest,\n CreateWidgetConversationResponse,\n CreateWidgetRequest,\n CreateWidgetResponse,\n DeleteConversationRequest,\n DeleteMessageRequest,\n DeleteMessageTemplateRequest,\n DeleteWidgetRequest,\n EvaluateResponseRequest,\n GetAvailableChannelsForConversationRequest,\n GetAvailableChannelsForConversationResponse,\n GetConversationByKeyRequest,\n GetConversationByKeyResponse,\n GetConversationSummaryRequest,\n GetConversationSummaryResponse,\n GetConversationViewsRequest,\n GetConversationViewsResponse,\n GetMessageRequest,\n GetMessageTemplateRequest,\n GetMessageTemplateResponse,\n GetMultiConversationDetailsRequest,\n GetMultiConversationDetailsResponse,\n GetMultiConversationMessageCountRequest,\n GetMultiConversationMessageCountResponse,\n GetMultiEventsRequest,\n GetMultiEventsResponse,\n GetMultiMessagesRequest,\n GetMultiMessagesResponse,\n GetMultiParticipantsRequest,\n GetMultiParticipantsResponse,\n GetMultiWidgetMessagesRequest,\n GetMultiWidgetMessagesResponse,\n GetParticipantsByKeyRequest,\n GetParticipantsByKeyResponse,\n GetWidgetConfigRequest,\n GetWidgetConfigResponse,\n GetWidgetConversationResponse,\n GetWidgetRequest,\n GetWidgetResponse,\n ListMessageTemplateRequest,\n ListMessageTemplateResponse,\n ListMessagesRequest,\n ListMessagesResponse,\n ListWidgetsRequest,\n ListWidgetsResponse,\n LookupConversationsRequest,\n LookupConversationsResponse,\n Message,\n NewInboxLeadCapturedRequest,\n NewInboxLeadCapturedResponse,\n ReceiveMessageRequest,\n RemoveConversationFromConversationViewRequest,\n SearchConversationsRequest,\n SearchConversationsResponse,\n SendMessageRequest,\n SendMessageResponse,\n SendWidgetMessageRequest,\n SendWidgetMessageResponse,\n SetLastSeenRequest,\n SetLastSeenResponse,\n UpdateConversationRequest,\n UpdateConversationResponse,\n UpdateMessageStatusRequest,\n UpdateMessageTemplateRequest,\n UpdateMessageTemplateResponse,\n UpdateWidgetRequest,\n UpdateWidgetResponse,\n} from './objects/';\nimport {\n AddConversationToConversationViewRequestInterface,\n AddMultiParticipantsRequestInterface,\n AddMultiParticipantsResponseInterface,\n CreateConversationRequestInterface,\n CreateConversationResponseInterface,\n CreateMessageTemplateRequestInterface,\n CreateMessageTemplateResponseInterface,\n CreateMultiMessagesRequestInterface,\n CreateWidgetConversationRequestInterface,\n CreateWidgetConversationResponseInterface,\n CreateWidgetRequestInterface,\n CreateWidgetResponseInterface,\n DeleteConversationRequestInterface,\n DeleteMessageRequestInterface,\n DeleteMessageTemplateRequestInterface,\n DeleteWidgetRequestInterface,\n EvaluateResponseRequestInterface,\n GetAvailableChannelsForConversationRequestInterface,\n GetAvailableChannelsForConversationResponseInterface,\n GetConversationByKeyRequestInterface,\n GetConversationByKeyResponseInterface,\n GetConversationSummaryRequestInterface,\n GetConversationSummaryResponseInterface,\n GetConversationViewsRequestInterface,\n GetConversationViewsResponseInterface,\n GetMessageRequestInterface,\n GetMessageTemplateRequestInterface,\n GetMessageTemplateResponseInterface,\n GetMultiConversationDetailsRequestInterface,\n GetMultiConversationDetailsResponseInterface,\n GetMultiConversationMessageCountRequestInterface,\n GetMultiConversationMessageCountResponseInterface,\n GetMultiEventsRequestInterface,\n GetMultiEventsResponseInterface,\n GetMultiMessagesRequestInterface,\n GetMultiMessagesResponseInterface,\n GetMultiParticipantsRequestInterface,\n GetMultiParticipantsResponseInterface,\n GetMultiWidgetMessagesRequestInterface,\n GetMultiWidgetMessagesResponseInterface,\n GetParticipantsByKeyRequestInterface,\n GetParticipantsByKeyResponseInterface,\n GetWidgetConfigRequestInterface,\n GetWidgetConfigResponseInterface,\n GetWidgetConversationResponseInterface,\n GetWidgetRequestInterface,\n GetWidgetResponseInterface,\n ListMessageTemplateRequestInterface,\n ListMessageTemplateResponseInterface,\n ListMessagesRequestInterface,\n ListMessagesResponseInterface,\n ListWidgetsRequestInterface,\n ListWidgetsResponseInterface,\n LookupConversationsRequestInterface,\n LookupConversationsResponseInterface,\n MessageInterface,\n NewInboxLeadCapturedRequestInterface,\n NewInboxLeadCapturedResponseInterface,\n ReceiveMessageRequestInterface,\n RemoveConversationFromConversationViewRequestInterface,\n SearchConversationsRequestInterface,\n SearchConversationsResponseInterface,\n SendMessageRequestInterface,\n SendMessageResponseInterface,\n SendWidgetMessageRequestInterface,\n SendWidgetMessageResponseInterface,\n SetLastSeenRequestInterface,\n SetLastSeenResponseInterface,\n UpdateConversationRequestInterface,\n UpdateConversationResponseInterface,\n UpdateMessageStatusRequestInterface,\n UpdateMessageTemplateRequestInterface,\n UpdateMessageTemplateResponseInterface,\n UpdateWidgetRequestInterface,\n UpdateWidgetResponseInterface,\n} from './interfaces/';\nimport {HttpHeaders, HttpClient, HttpResponse} from '@angular/common/http';\nimport {inject} from '@angular/core';\nimport {HostService} from '../_generated/host.service';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n@Injectable({providedIn: 'root'})\nexport class ConversationApiService {\n private readonly hostService = inject(HostService);\n private readonly http = inject(HttpClient);\n private _host = this.hostService.hostWithScheme;\n\n private apiOptions(): {headers: HttpHeaders, withCredentials: boolean} {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n\n sendMessage(r: SendMessageRequest | SendMessageRequestInterface): Observable<SendMessageResponse> {\n const request = ((<SendMessageRequest>r).toApiJson) ? (<SendMessageRequest>r) : new SendMessageRequest(r);\n return this.http.post<SendMessageResponseInterface>(this._host + \"/conversation.v1.ConversationService/SendMessage\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => SendMessageResponse.fromProto(resp))\n );\n }\n getMessage(r: GetMessageRequest | GetMessageRequestInterface): Observable<Message> {\n const request = ((<GetMessageRequest>r).toApiJson) ? (<GetMessageRequest>r) : new GetMessageRequest(r);\n return this.http.post<MessageInterface>(this._host + \"/conversation.v1.ConversationService/GetMessage\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => Message.fromProto(resp))\n );\n }\n listMessages(r: ListMessagesRequest | ListMessagesRequestInterface): Observable<ListMessagesResponse> {\n const request = ((<ListMessagesRequest>r).toApiJson) ? (<ListMessagesRequest>r) : new ListMessagesRequest(r);\n return this.http.post<ListMessagesResponseInterface>(this._host + \"/conversation.v1.ConversationService/ListMessages\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => ListMessagesResponse.fromProto(resp))\n );\n }\n deleteMessage(r: DeleteMessageRequest | DeleteMessageRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<DeleteMessageRequest>r).toApiJson) ? (<DeleteMessageRequest>r) : new DeleteMessageRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.ConversationService/DeleteMessage\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n updateMessageStatus(r: UpdateMessageStatusRequest | UpdateMessageStatusRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<UpdateMessageStatusRequest>r).toApiJson) ? (<UpdateMessageStatusRequest>r) : new UpdateMessageStatusRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.ConversationService/UpdateMessageStatus\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n lookupConversations(r: LookupConversationsRequest | LookupConversationsRequestInterface): Observable<LookupConversationsResponse> {\n const request = ((<LookupConversationsRequest>r).toApiJson) ? (<LookupConversationsRequest>r) : new LookupConversationsRequest(r);\n return this.http.post<LookupConversationsResponseInterface>(this._host + \"/conversation.v1.ConversationService/LookupConversations\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => LookupConversationsResponse.fromProto(resp))\n );\n }\n getConversationByKey(r: GetConversationByKeyRequest | GetConversationByKeyRequestInterface): Observable<GetConversationByKeyResponse> {\n const request = ((<GetConversationByKeyRequest>r).toApiJson) ? (<GetConversationByKeyRequest>r) : new GetConversationByKeyRequest(r);\n return this.http.post<GetConversationByKeyResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetConversationByKey\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetConversationByKeyResponse.fromProto(resp))\n );\n }\n createConversation(r: CreateConversationRequest | CreateConversationRequestInterface): Observable<CreateConversationResponse> {\n const request = ((<CreateConversationRequest>r).toApiJson) ? (<CreateConversationRequest>r) : new CreateConversationRequest(r);\n return this.http.post<CreateConversationResponseInterface>(this._host + \"/conversation.v1.ConversationService/CreateConversation\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => CreateConversationResponse.fromProto(resp))\n );\n }\n updateConversation(r: UpdateConversationRequest | UpdateConversationRequestInterface): Observable<UpdateConversationResponse> {\n const request = ((<UpdateConversationRequest>r).toApiJson) ? (<UpdateConversationRequest>r) : new UpdateConversationRequest(r);\n return this.http.post<UpdateConversationResponseInterface>(this._host + \"/conversation.v1.ConversationService/UpdateConversation\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => UpdateConversationResponse.fromProto(resp))\n );\n }\n deleteConversation(r: DeleteConversationRequest | DeleteConversationRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<DeleteConversationRequest>r).toApiJson) ? (<DeleteConversationRequest>r) : new DeleteConversationRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.ConversationService/DeleteConversation\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n receiveMessage(r: ReceiveMessageRequest | ReceiveMessageRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<ReceiveMessageRequest>r).toApiJson) ? (<ReceiveMessageRequest>r) : new ReceiveMessageRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.ConversationService/ReceiveMessage\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n getMultiMessages(r: GetMultiMessagesRequest | GetMultiMessagesRequestInterface): Observable<GetMultiMessagesResponse> {\n const request = ((<GetMultiMessagesRequest>r).toApiJson) ? (<GetMultiMessagesRequest>r) : new GetMultiMessagesRequest(r);\n return this.http.post<GetMultiMessagesResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetMultiMessages\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMultiMessagesResponse.fromProto(resp))\n );\n }\n createMultiMessages(r: CreateMultiMessagesRequest | CreateMultiMessagesRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<CreateMultiMessagesRequest>r).toApiJson) ? (<CreateMultiMessagesRequest>r) : new CreateMultiMessagesRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.ConversationService/CreateMultiMessages\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n getMultiConversationDetails(r: GetMultiConversationDetailsRequest | GetMultiConversationDetailsRequestInterface): Observable<GetMultiConversationDetailsResponse> {\n const request = ((<GetMultiConversationDetailsRequest>r).toApiJson) ? (<GetMultiConversationDetailsRequest>r) : new GetMultiConversationDetailsRequest(r);\n return this.http.post<GetMultiConversationDetailsResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetMultiConversationDetails\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMultiConversationDetailsResponse.fromProto(resp))\n );\n }\n getMultiParticipants(r: GetMultiParticipantsRequest | GetMultiParticipantsRequestInterface): Observable<GetMultiParticipantsResponse> {\n const request = ((<GetMultiParticipantsRequest>r).toApiJson) ? (<GetMultiParticipantsRequest>r) : new GetMultiParticipantsRequest(r);\n return this.http.post<GetMultiParticipantsResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetMultiParticipants\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMultiParticipantsResponse.fromProto(resp))\n );\n }\n searchConversations(r: SearchConversationsRequest | SearchConversationsRequestInterface): Observable<SearchConversationsResponse> {\n const request = ((<SearchConversationsRequest>r).toApiJson) ? (<SearchConversationsRequest>r) : new SearchConversationsRequest(r);\n return this.http.post<SearchConversationsResponseInterface>(this._host + \"/conversation.v1.ConversationService/SearchConversations\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => SearchConversationsResponse.fromProto(resp))\n );\n }\n getMultiConversationMessageCount(r: GetMultiConversationMessageCountRequest | GetMultiConversationMessageCountRequestInterface): Observable<GetMultiConversationMessageCountResponse> {\n const request = ((<GetMultiConversationMessageCountRequest>r).toApiJson) ? (<GetMultiConversationMessageCountRequest>r) : new GetMultiConversationMessageCountRequest(r);\n return this.http.post<GetMultiConversationMessageCountResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetMultiConversationMessageCount\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMultiConversationMessageCountResponse.fromProto(resp))\n );\n }\n addMultiParticipants(r: AddMultiParticipantsRequest | AddMultiParticipantsRequestInterface): Observable<AddMultiParticipantsResponse> {\n const request = ((<AddMultiParticipantsRequest>r).toApiJson) ? (<AddMultiParticipantsRequest>r) : new AddMultiParticipantsRequest(r);\n return this.http.post<AddMultiParticipantsResponseInterface>(this._host + \"/conversation.v1.ConversationService/AddMultiParticipants\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => AddMultiParticipantsResponse.fromProto(resp))\n );\n }\n setLastSeen(r: SetLastSeenRequest | SetLastSeenRequestInterface): Observable<SetLastSeenResponse> {\n const request = ((<SetLastSeenRequest>r).toApiJson) ? (<SetLastSeenRequest>r) : new SetLastSeenRequest(r);\n return this.http.post<SetLastSeenResponseInterface>(this._host + \"/conversation.v1.ConversationService/SetLastSeen\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => SetLastSeenResponse.fromProto(resp))\n );\n }\n getParticipantsByKey(r: GetParticipantsByKeyRequest | GetParticipantsByKeyRequestInterface): Observable<GetParticipantsByKeyResponse> {\n const request = ((<GetParticipantsByKeyRequest>r).toApiJson) ? (<GetParticipantsByKeyRequest>r) : new GetParticipantsByKeyRequest(r);\n return this.http.post<GetParticipantsByKeyResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetParticipantsByKey\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetParticipantsByKeyResponse.fromProto(resp))\n );\n }\n getConversationViews(r: GetConversationViewsRequest | GetConversationViewsRequestInterface): Observable<GetConversationViewsResponse> {\n const request = ((<GetConversationViewsRequest>r).toApiJson) ? (<GetConversationViewsRequest>r) : new GetConversationViewsRequest(r);\n return this.http.post<GetConversationViewsResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetConversationViews\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetConversationViewsResponse.fromProto(resp))\n );\n }\n addConversationToConversationView(r: AddConversationToConversationViewRequest | AddConversationToConversationViewRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<AddConversationToConversationViewRequest>r).toApiJson) ? (<AddConversationToConversationViewRequest>r) : new AddConversationToConversationViewRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.ConversationService/AddConversationToConversationView\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n removeConversationFromConversationView(r: RemoveConversationFromConversationViewRequest | RemoveConversationFromConversationViewRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<RemoveConversationFromConversationViewRequest>r).toApiJson) ? (<RemoveConversationFromConversationViewRequest>r) : new RemoveConversationFromConversationViewRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.ConversationService/RemoveConversationFromConversationView\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n createWidgetConversation(r: CreateWidgetConversationRequest | CreateWidgetConversationRequestInterface): Observable<CreateWidgetConversationResponse> {\n const request = ((<CreateWidgetConversationRequest>r).toApiJson) ? (<CreateWidgetConversationRequest>r) : new CreateWidgetConversationRequest(r);\n return this.http.post<CreateWidgetConversationResponseInterface>(this._host + \"/conversation.v1.ConversationService/CreateWidgetConversation\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => CreateWidgetConversationResponse.fromProto(resp))\n );\n }\n getMultiWidgetMessages(r: GetMultiWidgetMessagesRequest | GetMultiWidgetMessagesRequestInterface): Observable<GetMultiWidgetMessagesResponse> {\n const request = ((<GetMultiWidgetMessagesRequest>r).toApiJson) ? (<GetMultiWidgetMessagesRequest>r) : new GetMultiWidgetMessagesRequest(r);\n return this.http.post<GetMultiWidgetMessagesResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetMultiWidgetMessages\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMultiWidgetMessagesResponse.fromProto(resp))\n );\n }\n sendWidgetMessage(r: SendWidgetMessageRequest | SendWidgetMessageRequestInterface): Observable<SendWidgetMessageResponse> {\n const request = ((<SendWidgetMessageRequest>r).toApiJson) ? (<SendWidgetMessageRequest>r) : new SendWidgetMessageRequest(r);\n return this.http.post<SendWidgetMessageResponseInterface>(this._host + \"/conversation.v1.ConversationService/SendWidgetMessage\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => SendWidgetMessageResponse.fromProto(resp))\n );\n }\n getWidgetConversation(): Observable<GetWidgetConversationResponse> {\n return this.http.post<GetWidgetConversationResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetWidgetConversation\", {}, this.apiOptions())\n .pipe(\n map(resp => GetWidgetConversationResponse.fromProto(resp))\n );\n }\n getAvailableChannelsForConversation(r: GetAvailableChannelsForConversationRequest | GetAvailableChannelsForConversationRequestInterface): Observable<GetAvailableChannelsForConversationResponse> {\n const request = ((<GetAvailableChannelsForConversationRequest>r).toApiJson) ? (<GetAvailableChannelsForConversationRequest>r) : new GetAvailableChannelsForConversationRequest(r);\n return this.http.post<GetAvailableChannelsForConversationResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetAvailableChannelsForConversation\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetAvailableChannelsForConversationResponse.fromProto(resp))\n );\n }\n evaluateResponse(r: EvaluateResponseRequest | EvaluateResponseRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<EvaluateResponseRequest>r).toApiJson) ? (<EvaluateResponseRequest>r) : new EvaluateResponseRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.ConversationService/EvaluateResponse\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n createWidget(r: CreateWidgetRequest | CreateWidgetRequestInterface): Observable<CreateWidgetResponse> {\n const request = ((<CreateWidgetRequest>r).toApiJson) ? (<CreateWidgetRequest>r) : new CreateWidgetRequest(r);\n return this.http.post<CreateWidgetResponseInterface>(this._host + \"/conversation.v1.ConversationService/CreateWidget\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => CreateWidgetResponse.fromProto(resp))\n );\n }\n getWidget(r: GetWidgetRequest | GetWidgetRequestInterface): Observable<GetWidgetResponse> {\n const request = ((<GetWidgetRequest>r).toApiJson) ? (<GetWidgetRequest>r) : new GetWidgetRequest(r);\n return this.http.post<GetWidgetResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetWidget\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetWidgetResponse.fromProto(resp))\n );\n }\n updateWidget(r: UpdateWidgetRequest | UpdateWidgetRequestInterface): Observable<UpdateWidgetResponse> {\n const request = ((<UpdateWidgetRequest>r).toApiJson) ? (<UpdateWidgetRequest>r) : new UpdateWidgetRequest(r);\n return this.http.post<UpdateWidgetResponseInterface>(this._host + \"/conversation.v1.ConversationService/UpdateWidget\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => UpdateWidgetResponse.fromProto(resp))\n );\n }\n deleteWidget(r: DeleteWidgetRequest | DeleteWidgetRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<DeleteWidgetRequest>r).toApiJson) ? (<DeleteWidgetRequest>r) : new DeleteWidgetRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.ConversationService/DeleteWidget\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n listWidgets(r: ListWidgetsRequest | ListWidgetsRequestInterface): Observable<ListWidgetsResponse> {\n const request = ((<ListWidgetsRequest>r).toApiJson) ? (<ListWidgetsRequest>r) : new ListWidgetsRequest(r);\n return this.http.post<ListWidgetsResponseInterface>(this._host + \"/conversation.v1.ConversationService/ListWidgets\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => ListWidgetsResponse.fromProto(resp))\n );\n }\n getWidgetConfig(r: GetWidgetConfigRequest | GetWidgetConfigRequestInterface): Observable<GetWidgetConfigResponse> {\n const request = ((<GetWidgetConfigRequest>r).toApiJson) ? (<GetWidgetConfigRequest>r) : new GetWidgetConfigRequest(r);\n return this.http.post<GetWidgetConfigResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetWidgetConfig\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetWidgetConfigResponse.fromProto(resp))\n );\n }\n listMessageTemplate(r: ListMessageTemplateRequest | ListMessageTemplateRequestInterface): Observable<ListMessageTemplateResponse> {\n const request = ((<ListMessageTemplateRequest>r).toApiJson) ? (<ListMessageTemplateRequest>r) : new ListMessageTemplateRequest(r);\n return this.http.post<ListMessageTemplateResponseInterface>(this._host + \"/conversation.v1.ConversationService/ListMessageTemplate\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => ListMessageTemplateResponse.fromProto(resp))\n );\n }\n deleteMessageTemplate(r: DeleteMessageTemplateRequest | DeleteMessageTemplateRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<DeleteMessageTemplateRequest>r).toApiJson) ? (<DeleteMessageTemplateRequest>r) : new DeleteMessageTemplateRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.ConversationService/DeleteMessageTemplate\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n createMessageTemplate(r: CreateMessageTemplateRequest | CreateMessageTemplateRequestInterface): Observable<CreateMessageTemplateResponse> {\n const request = ((<CreateMessageTemplateRequest>r).toApiJson) ? (<CreateMessageTemplateRequest>r) : new CreateMessageTemplateRequest(r);\n return this.http.post<CreateMessageTemplateResponseInterface>(this._host + \"/conversation.v1.ConversationService/CreateMessageTemplate\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => CreateMessageTemplateResponse.fromProto(resp))\n );\n }\n updateMessageTemplate(r: UpdateMessageTemplateRequest | UpdateMessageTemplateRequestInterface): Observable<UpdateMessageTemplateResponse> {\n const request = ((<UpdateMessageTemplateRequest>r).toApiJson) ? (<UpdateMessageTemplateRequest>r) : new UpdateMessageTemplateRequest(r);\n return this.http.post<UpdateMessageTemplateResponseInterface>(this._host + \"/conversation.v1.ConversationService/UpdateMessageTemplate\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => UpdateMessageTemplateResponse.fromProto(resp))\n );\n }\n getMessageTemplate(r: GetMessageTemplateRequest | GetMessageTemplateRequestInterface): Observable<GetMessageTemplateResponse> {\n const request = ((<GetMessageTemplateRequest>r).toApiJson) ? (<GetMessageTemplateRequest>r) : new GetMessageTemplateRequest(r);\n return this.http.post<GetMessageTemplateResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetMessageTemplate\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMessageTemplateResponse.fromProto(resp))\n );\n }\n getConversationSummary(r: GetConversationSummaryRequest | GetConversationSummaryRequestInterface): Observable<GetConversationSummaryResponse> {\n const request = ((<GetConversationSummaryRequest>r).toApiJson) ? (<GetConversationSummaryRequest>r) : new GetConversationSummaryRequest(r);\n return this.http.post<GetConversationSummaryResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetConversationSummary\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetConversationSummaryResponse.fromProto(resp))\n );\n }\n newInboxLeadCaptured(r: NewInboxLeadCapturedRequest | NewInboxLeadCapturedRequestInterface): Observable<NewInboxLeadCapturedResponse> {\n const request = ((<NewInboxLeadCapturedRequest>r).toApiJson) ? (<NewInboxLeadCapturedRequest>r) : new NewInboxLeadCapturedRequest(r);\n return this.http.post<NewInboxLeadCapturedResponseInterface>(this._host + \"/conversation.v1.ConversationService/NewInboxLeadCaptured\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => NewInboxLeadCapturedResponse.fromProto(resp))\n );\n }\n getMultiEvents(r: GetMultiEventsRequest | GetMultiEventsRequestInterface): Observable<GetMultiEventsResponse> {\n const request = ((<GetMultiEventsRequest>r).toApiJson) ? (<GetMultiEventsRequest>r) : new GetMultiEventsRequest(r);\n return this.http.post<GetMultiEventsResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetMultiEvents\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMultiEventsResponse.fromProto(resp))\n );\n }\n \n}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nimport {Injectable} from '@angular/core';\nimport {\n GetOwnerEmailRequest,\n GetOwnerEmailResponse,\n} from './objects/';\nimport {\n GetOwnerEmailRequestInterface,\n GetOwnerEmailResponseInterface,\n} from './interfaces/';\nimport {HttpHeaders, HttpClient, HttpResponse} from '@angular/common/http';\nimport {inject} from '@angular/core';\nimport {HostService} from '../_generated/host.service';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n@Injectable({providedIn: 'root'})\nexport class EmailApiService {\n private readonly hostService = inject(HostService);\n private readonly http = inject(HttpClient);\n private _host = this.hostService.hostWithScheme;\n\n private apiOptions(): {headers: HttpHeaders, withCredentials: boolean} {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n\n getOwnerEmail(r: GetOwnerEmailRequest | GetOwnerEmailRequestInterface): Observable<GetOwnerEmailResponse> {\n const request = ((<GetOwnerEmailRequest>r).toApiJson) ? (<GetOwnerEmailRequest>r) : new GetOwnerEmailRequest(r);\n return this.http.post<GetOwnerEmailResponseInterface>(this._host + \"/conversation.v1.EmailService/GetOwnerEmail\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetOwnerEmailResponse.fromProto(resp))\n );\n }\n \n}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nimport {Injectable} from '@angular/core';\nimport {\n GetConfigurationRequest,\n GetConfigurationResponse,\n GetMultiConfigurationRequest,\n GetMultiConfigurationResponse,\n UpsertConfigurationRequest,\n UpsertConfigurationResponse,\n UpsertProductFeatureRequest,\n UpsertProductFeatureResponse,\n} from './objects/';\nimport {\n GetConfigurationRequestInterface,\n GetConfigurationResponseInterface,\n GetMultiConfigurationRequestInterface,\n GetMultiConfigurationResponseInterface,\n UpsertConfigurationRequestInterface,\n UpsertConfigurationResponseInterface,\n UpsertProductFeatureRequestInterface,\n UpsertProductFeatureResponseInterface,\n} from './interfaces/';\nimport {HttpHeaders, HttpClient, HttpResponse} from '@angular/common/http';\nimport {inject} from '@angular/core';\nimport {HostService} from '../_generated/host.service';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n@Injectable({providedIn: 'root'})\nexport class InboxApiService {\n private readonly hostService = inject(HostService);\n private readonly http = inject(HttpClient);\n private _host = this.hostService.hostWithScheme;\n\n private apiOptions(): {headers: HttpHeaders, withCredentials: boolean} {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n\n getConfiguration(r: GetConfigurationRequest | GetConfigurationRequestInterface): Observable<GetConfigurationResponse> {\n const request = ((<GetConfigurationRequest>r).toApiJson) ? (<GetConfigurationRequest>r) : new GetConfigurationRequest(r);\n return this.http.post<GetConfigurationResponseInterface>(this._host + \"/conversation.v1.InboxService/GetConfiguration\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetConfigurationResponse.fromProto(resp))\n );\n }\n getMultiConfiguration(r: GetMultiConfigurationRequest | GetMultiConfigurationRequestInterface): Observable<GetMultiConfigurationResponse> {\n const request = ((<GetMultiConfigurationRequest>r).toApiJson) ? (<GetMultiConfigurationRequest>r) : new GetMultiConfigurationRequest(r);\n return this.http.post<GetMultiConfigurationResponseInterface>(this._host + \"/conversation.v1.InboxService/GetMultiConfiguration\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMultiConfigurationResponse.fromProto(resp))\n );\n }\n upsertConfiguration(r: UpsertConfigurationRequest | UpsertConfigurationRequestInterface): Observable<UpsertConfigurationResponse> {\n const request = ((<UpsertConfigurationRequest>r).toApiJson) ? (<UpsertConfigurationRequest>r) : new UpsertConfigurationRequest(r);\n return this.http.post<UpsertConfigurationResponseInterface>(this._host + \"/conversation.v1.InboxService/UpsertConfiguration\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => UpsertConfigurationResponse.fromProto(resp))\n );\n }\n upsertProductFeature(r: UpsertProductFeatureRequest | UpsertProductFeatureRequestInterface): Observable<UpsertProductFeatureResponse> {\n const request = ((<UpsertProductFeatureRequest>r).toApiJson) ? (<UpsertProductFeatureRequest>r) : new UpsertProductFeatureRequest(r);\n return this.http.post<UpsertProductFeatureResponseInterface>(this._host + \"/conversation.v1.InboxService/UpsertProductFeature\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => UpsertProductFeatureResponse.fromProto(resp))\n );\n }\n \n}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Index.\n// *********************************\n\nexport * from './enums';\nexport * from './objects';\nexport * from './interfaces';\nexport { AISystemMessageApiService } from './ai-system-message.api.service';\nexport { ConversationApiService } from './conversation.api.service';\nexport { EmailApiService } from './email.api.service';\nexport { InboxApiService } from './inbox.api.service';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["enumStringToValue","e.GlobalParticipantType","e.ConversationChannel","e.PlatformLocation","e.MessageType","e.MessageStatus","e.ParticipantType","e.WidgetPosition","e.Status","e.EvaluationSentiment","e.GetMessageTemplateRequestHydrationOptionsHydrationEntityEntityType","e.MetadataIdentifier","e.SetLastSeenRequestStatus"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"vendasta-conversation.mjs","sources":["../../../conversation_sdk/src/lib/_internal/enums/common.enum.ts","../../../conversation_sdk/src/lib/_internal/enums/conversation.enum.ts","../../../conversation_sdk/src/lib/_internal/enums/message.enum.ts","../../../conversation_sdk/src/lib/_internal/enums/participant.enum.ts","../../../conversation_sdk/src/lib/_internal/enums/conversation-view.enum.ts","../../../conversation_sdk/src/lib/_internal/enums/widget.enum.ts","../../../conversation_sdk/src/lib/_internal/enums/evaluation.enum.ts","../../../conversation_sdk/src/lib/_internal/enums/api.enum.ts","../../../conversation_sdk/src/lib/_internal/enums/index.ts","../../../conversation_sdk/src/lib/_internal/objects/common.ts","../../../conversation_sdk/src/lib/_internal/objects/conversation.ts","../../../conversation_sdk/src/lib/_internal/objects/message.ts","../../../conversation_sdk/src/lib/_internal/objects/participant.ts","../../../conversation_sdk/src/lib/_internal/objects/annotations.ts","../../../conversation_sdk/src/lib/_internal/objects/configuration.ts","../../../conversation_sdk/src/lib/_internal/objects/conversation-view.ts","../../../conversation_sdk/src/lib/_internal/objects/widget.ts","../../../conversation_sdk/src/lib/_internal/objects/field-mask.ts","../../../conversation_sdk/src/lib/_internal/objects/message-template.ts","../../../conversation_sdk/src/lib/_internal/objects/aisystemmessage.ts","../../../conversation_sdk/src/lib/_internal/objects/event.ts","../../../conversation_sdk/src/lib/_internal/objects/api.ts","../../../conversation_sdk/src/lib/_internal/objects/index.ts","../../../conversation_sdk/src/lib/_generated/host.service.ts","../../../conversation_sdk/src/lib/_internal/ai-system-message.api.service.ts","../../../conversation_sdk/src/lib/_internal/conversation.api.service.ts","../../../conversation_sdk/src/lib/_internal/email.api.service.ts","../../../conversation_sdk/src/lib/_internal/inbox.api.service.ts","../../../conversation_sdk/src/lib/_internal/index.ts","../../../conversation_sdk/src/vendasta-conversation.ts"],"sourcesContent":["// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\n\nexport enum GlobalParticipantType {\n GLOBAL_PARTICIPANT_TYPE_UNDEFINED = 0,\n GLOBAL_PARTICIPANT_TYPE_CUSTOMER = 1,\n GLOBAL_PARTICIPANT_TYPE_IAM_USER = 2,\n GLOBAL_PARTICIPANT_TYPE_ACCOUNT_GROUP = 3,\n GLOBAL_PARTICIPANT_TYPE_PARTNER = 4,\n GLOBAL_PARTICIPANT_TYPE_IAM_TEMPORARY_SUBJECT = 5,\n GLOBAL_PARTICIPANT_TYPE_DIGITAL_AGENT = 6,\n GLOBAL_PARTICIPANT_TYPE_VENDOR = 7,\n GLOBAL_PARTICIPANT_TYPE_OPENAI_BOT = 8,\n GLOBAL_PARTICIPANT_TYPE_ANONYMOUS = 9,\n GLOBAL_PARTICIPANT_TYPE_GROUP = 10,\n}\n\nexport enum SortDirection {\n SORT_DIRECTION_DESCENDING = 0,\n SORT_DIRECTION_ASCENDING = 1,\n}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\n\nexport enum ConversationChannel {\n CONVERSATION_CHANNEL_UNDEFINED = 0,\n CONVERSATION_CHANNEL_INTERNAL = 1,\n CONVERSATION_CHANNEL_SMS = 2,\n CONVERSATION_CHANNEL_FACEBOOK = 3,\n CONVERSATION_CHANNEL_GOOGLE_MESSAGES = 4,\n CONVERSATION_CHANNEL_OPENAI = 5,\n CONVERSATION_CHANNEL_EMAIL = 6,\n CONVERSATION_CHANNEL_GOOGLE_BUSINESS_COMMUNICATIONS = 7,\n CONVERSATION_CHANNEL_WEB_CHAT = 8,\n CONVERSATION_CHANNEL_INSTAGRAM = 9,\n}\n\nexport enum PlatformLocation {\n PLATFORM_LOCATION_UNDEFINED = 0,\n PLATFORM_LOCATION_BUSINESS_APP = 1,\n PLATFORM_LOCATION_PARTNER_CENTER = 2,\n PLATFORM_LOCATION_VENDOR_CENTER = 3,\n PLATFORM_LOCATION_TASK_MANAGER = 4,\n PLATFORM_LOCATION_PROPOSAL_BUILDER = 5,\n PLATFORM_LOCATION_SALES_CENTER = 6,\n}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\n\nexport enum MessageStatus {\n MESSAGE_STATUS_NOT_READ = 0,\n MESSAGE_STATUS_READ = 1,\n MESSAGE_STATUS_SENT = 2,\n MESSAGE_STATUS_DELIVERED = 3,\n MESSAGE_STATUS_FAILED = 4,\n MESSAGE_STATUS_UNDELIVERED = 5,\n MESSAGE_STATUS_SENDING = 6,\n}\n\nexport enum MessageType {\n MESSAGE_TYPE_MESSAGE = 0,\n MESSAGE_TYPE_MEDIA = 1,\n MESSAGE_TYPE_SYSTEM = 2,\n MESSAGE_TYPE_FORM_SUBMISSION = 3,\n MESSAGE_TYPE_BOOKING_AVAILABILITY = 4,\n}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\n\nexport enum ParticipantType {\n PARTICIPANT_TYPE_UNDEFINED = 0,\n PARTICIPANT_TYPE_CUSTOMER = 1,\n PARTICIPANT_TYPE_IAM_USER = 2,\n PARTICIPANT_TYPE_ACCOUNT_GROUP = 3,\n PARTICIPANT_TYPE_PARTNER = 4,\n PARTICIPANT_TYPE_IAM_TEMPORARY_SUBJECT = 5,\n PARTICIPANT_TYPE_DIGITAL_AGENT = 6,\n PARTICIPANT_TYPE_VENDOR = 7,\n PARTICIPANT_TYPE_OPENAI_BOT = 8,\n PARTICIPANT_TYPE_ANONYMOUS = 9,\n PARTICIPANT_TYPE_GROUP = 10,\n}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\n\nexport enum ViewType {\n VIEW_TYPE_UNDEFINED = 0,\n VIEW_TYPE_FOLLOWING = 1,\n}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\n\nexport enum WidgetPosition {\n WIDGET_POSITION_UNSPECIFIED = 0,\n WIDGET_POSITION_RIGHT = 1,\n WIDGET_POSITION_LEFT = 2,\n}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\n\nexport enum EvaluationSentiment {\n EVALUATION_SENTIMENT_UNDEFINED = 0,\n EVALUATION_SENTIMENT_POSITIVE = 1,\n EVALUATION_SENTIMENT_NEGATIVE = 2,\n}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\n// *********************************\n\nexport enum GetMessageTemplateRequestHydrationOptionsHydrationEntityEntityType {\n ENTITY_TYPE_UNDEFINED = 0,\n ENTITY_TYPE_PARTNER = 1,\n ENTITY_TYPE_ACCOUNT_GROUP = 2,\n ENTITY_TYPE_CONTACT = 3,\n}\n\nexport enum MetadataIdentifier {\n METADATA_IDENTIFIER_UNDEFINED = 0,\n METADATA_IDENTIFIER_RECIPIENT = 1,\n METADATA_IDENTIFIER_SENDER = 2,\n METADATA_IDENTIFIER_CONVERSATION = 3,\n}\n\nexport enum SetLastSeenRequestStatus {\n SET_LAST_SEEN_REQUEST_STATUS_READ = 0,\n SET_LAST_SEEN_REQUEST_STATUS_UNREAD = 1,\n}\n\nexport enum Status {\n ERROR = 0,\n WARNING = 1,\n INFO = 2,\n}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums Index.\n// *********************************\nexport {\n GlobalParticipantType,\n SortDirection,\n} from './common.enum';\nexport {\n ConversationChannel,\n PlatformLocation,\n} from './conversation.enum';\nexport {\n MessageStatus,\n MessageType,\n} from './message.enum';\nexport {\n ParticipantType,\n} from './participant.enum';\nexport {\n ViewType,\n} from './conversation-view.enum';\nexport {\n WidgetPosition,\n} from './widget.enum';\nexport {\n EvaluationSentiment,\n} from './evaluation.enum';\nexport {\n GetMessageTemplateRequestHydrationOptionsHydrationEntityEntityType,\n MetadataIdentifier,\n SetLastSeenRequestStatus,\n Status,\n} from './api.enum';\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects.\n// *********************************\nimport * as i from '../interfaces';\n\nimport * as e from '../enums';\n\nexport function enumStringToValue<E>(enumRef: any, value: string): E {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\n\nexport class NamespaceDetail implements i.NamespaceDetailInterface {\n participantType: e.GlobalParticipantType;\n internalParticipantId: string;\n\n static fromProto(proto: any): NamespaceDetail {\n let m = new NamespaceDetail();\n m = Object.assign(m, proto);\n if (proto.participantType) {m.participantType = enumStringToValue<e.GlobalParticipantType>(e.GlobalParticipantType, proto.participantType);}\n return m;\n }\n\n constructor(kwargs?: i.NamespaceDetailInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participantType !== 'undefined') {toReturn['participantType'] = this.participantType;}\n if (typeof this.internalParticipantId !== 'undefined') {toReturn['internalParticipantId'] = this.internalParticipantId;}\n return toReturn;\n }\n}\n\nexport class SubjectParticipant implements i.SubjectParticipantInterface {\n participantType: e.GlobalParticipantType;\n internalParticipantId: string;\n\n static fromProto(proto: any): SubjectParticipant {\n let m = new SubjectParticipant();\n m = Object.assign(m, proto);\n if (proto.participantType) {m.participantType = enumStringToValue<e.GlobalParticipantType>(e.GlobalParticipantType, proto.participantType);}\n return m;\n }\n\n constructor(kwargs?: i.SubjectParticipantInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participantType !== 'undefined') {toReturn['participantType'] = this.participantType;}\n if (typeof this.internalParticipantId !== 'undefined') {toReturn['internalParticipantId'] = this.internalParticipantId;}\n return toReturn;\n }\n}\n\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects.\n// *********************************\nimport * as i from '../interfaces';\nimport { SubjectParticipant } from './common';\nimport * as e from '../enums';\n\nexport function enumStringToValue<E>(enumRef: any, value: string): E {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\n\nexport class Conversation implements i.ConversationInterface {\n conversationId: string;\n channel: e.ConversationChannel;\n externalConversationId: string;\n created: Date;\n updated: Date;\n deleted: Date;\n participantIds: string[];\n latestMsgSentTime: Date;\n originLocation: e.PlatformLocation;\n originLocationExternalId: string;\n lastSeenByParticipant: LastSeenByParticipant[];\n conversationViewIds: string[];\n subjectParticipantsKey: string;\n subjectParticipants: SubjectParticipant[];\n isOpen: boolean;\n\n static fromProto(proto: any): Conversation {\n let m = new Conversation();\n m = Object.assign(m, proto);\n if (proto.channel) {m.channel = enumStringToValue<e.ConversationChannel>(e.ConversationChannel, proto.channel);}\n if (proto.created) {m.created = new Date(proto.created);}\n if (proto.updated) {m.updated = new Date(proto.updated);}\n if (proto.deleted) {m.deleted = new Date(proto.deleted);}\n if (proto.latestMsgSentTime) {m.latestMsgSentTime = new Date(proto.latestMsgSentTime);}\n if (proto.originLocation) {m.originLocation = enumStringToValue<e.PlatformLocation>(e.PlatformLocation, proto.originLocation);}\n if (proto.lastSeenByParticipant) {m.lastSeenByParticipant = proto.lastSeenByParticipant.map(LastSeenByParticipant.fromProto);}\n if (proto.subjectParticipants) {m.subjectParticipants = proto.subjectParticipants.map(SubjectParticipant.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.ConversationInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n if (typeof this.channel !== 'undefined') {toReturn['channel'] = this.channel;}\n if (typeof this.externalConversationId !== 'undefined') {toReturn['externalConversationId'] = this.externalConversationId;}\n if (typeof this.created !== 'undefined' && this.created !== null) {toReturn['created'] = 'toApiJson' in this.created ? (this.created as any).toApiJson() : this.created;}\n if (typeof this.updated !== 'undefined' && this.updated !== null) {toReturn['updated'] = 'toApiJson' in this.updated ? (this.updated as any).toApiJson() : this.updated;}\n if (typeof this.deleted !== 'undefined' && this.deleted !== null) {toReturn['deleted'] = 'toApiJson' in this.deleted ? (this.deleted as any).toApiJson() : this.deleted;}\n if (typeof this.participantIds !== 'undefined') {toReturn['participantIds'] = this.participantIds;}\n if (typeof this.latestMsgSentTime !== 'undefined' && this.latestMsgSentTime !== null) {toReturn['latestMsgSentTime'] = 'toApiJson' in this.latestMsgSentTime ? (this.latestMsgSentTime as any).toApiJson() : this.latestMsgSentTime;}\n if (typeof this.originLocation !== 'undefined') {toReturn['originLocation'] = this.originLocation;}\n if (typeof this.originLocationExternalId !== 'undefined') {toReturn['originLocationExternalId'] = this.originLocationExternalId;}\n if (typeof this.lastSeenByParticipant !== 'undefined' && this.lastSeenByParticipant !== null) {toReturn['lastSeenByParticipant'] = 'toApiJson' in this.lastSeenByParticipant ? (this.lastSeenByParticipant as any).toApiJson() : this.lastSeenByParticipant;}\n if (typeof this.conversationViewIds !== 'undefined') {toReturn['conversationViewIds'] = this.conversationViewIds;}\n if (typeof this.subjectParticipantsKey !== 'undefined') {toReturn['subjectParticipantsKey'] = this.subjectParticipantsKey;}\n if (typeof this.subjectParticipants !== 'undefined' && this.subjectParticipants !== null) {toReturn['subjectParticipants'] = 'toApiJson' in this.subjectParticipants ? (this.subjectParticipants as any).toApiJson() : this.subjectParticipants;}\n if (typeof this.isOpen !== 'undefined') {toReturn['isOpen'] = this.isOpen;}\n return toReturn;\n }\n}\n\nexport class ConversationKey implements i.ConversationKeyInterface {\n subjectParticipants: SubjectParticipant[];\n channel: e.ConversationChannel;\n originLocationExternalId: string;\n\n static fromProto(proto: any): ConversationKey {\n let m = new ConversationKey();\n m = Object.assign(m, proto);\n if (proto.subjectParticipants) {m.subjectParticipants = proto.subjectParticipants.map(SubjectParticipant.fromProto);}\n if (proto.channel) {m.channel = enumStringToValue<e.ConversationChannel>(e.ConversationChannel, proto.channel);}\n return m;\n }\n\n constructor(kwargs?: i.ConversationKeyInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.subjectParticipants !== 'undefined' && this.subjectParticipants !== null) {toReturn['subjectParticipants'] = 'toApiJson' in this.subjectParticipants ? (this.subjectParticipants as any).toApiJson() : this.subjectParticipants;}\n if (typeof this.channel !== 'undefined') {toReturn['channel'] = this.channel;}\n if (typeof this.originLocationExternalId !== 'undefined') {toReturn['originLocationExternalId'] = this.originLocationExternalId;}\n return toReturn;\n }\n}\n\nexport class LastSeenByParticipant implements i.LastSeenByParticipantInterface {\n participantId: string;\n lastSeenTime: Date;\n\n static fromProto(proto: any): LastSeenByParticipant {\n let m = new LastSeenByParticipant();\n m = Object.assign(m, proto);\n if (proto.lastSeenTime) {m.lastSeenTime = new Date(proto.lastSeenTime);}\n return m;\n }\n\n constructor(kwargs?: i.LastSeenByParticipantInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participantId !== 'undefined') {toReturn['participantId'] = this.participantId;}\n if (typeof this.lastSeenTime !== 'undefined' && this.lastSeenTime !== null) {toReturn['lastSeenTime'] = 'toApiJson' in this.lastSeenTime ? (this.lastSeenTime as any).toApiJson() : this.lastSeenTime;}\n return toReturn;\n }\n}\n\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects.\n// *********************************\nimport * as i from '../interfaces';\n\nimport * as e from '../enums';\n\nexport function enumStringToValue<E>(enumRef: any, value: string): E {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\n\nexport class KeyValuePair implements i.KeyValuePairInterface {\n key: string;\n value: string;\n\n static fromProto(proto: any): KeyValuePair {\n let m = new KeyValuePair();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.KeyValuePairInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.key !== 'undefined') {toReturn['key'] = this.key;}\n if (typeof this.value !== 'undefined') {toReturn['value'] = this.value;}\n return toReturn;\n }\n}\n\nexport class Message implements i.MessageInterface {\n messageId: string;\n externalMessageId: string;\n conversationId: string;\n participantId: string;\n type: e.MessageType;\n body: string;\n error: string;\n created: Date;\n updated: Date;\n deleted: Date;\n media: string[];\n sendStatus: SendStatus;\n channel: e.ConversationChannel;\n metadata: KeyValuePair[];\n originalContent: string;\n\n static fromProto(proto: any): Message {\n let m = new Message();\n m = Object.assign(m, proto);\n if (proto.type) {m.type = enumStringToValue<e.MessageType>(e.MessageType, proto.type);}\n if (proto.created) {m.created = new Date(proto.created);}\n if (proto.updated) {m.updated = new Date(proto.updated);}\n if (proto.deleted) {m.deleted = new Date(proto.deleted);}\n if (proto.sendStatus) {m.sendStatus = SendStatus.fromProto(proto.sendStatus);}\n if (proto.channel) {m.channel = enumStringToValue<e.ConversationChannel>(e.ConversationChannel, proto.channel);}\n if (proto.metadata) {m.metadata = proto.metadata.map(KeyValuePair.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.MessageInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.messageId !== 'undefined') {toReturn['messageId'] = this.messageId;}\n if (typeof this.externalMessageId !== 'undefined') {toReturn['externalMessageId'] = this.externalMessageId;}\n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n if (typeof this.participantId !== 'undefined') {toReturn['participantId'] = this.participantId;}\n if (typeof this.type !== 'undefined') {toReturn['type'] = this.type;}\n if (typeof this.body !== 'undefined') {toReturn['body'] = this.body;}\n if (typeof this.error !== 'undefined') {toReturn['error'] = this.error;}\n if (typeof this.created !== 'undefined' && this.created !== null) {toReturn['created'] = 'toApiJson' in this.created ? (this.created as any).toApiJson() : this.created;}\n if (typeof this.updated !== 'undefined' && this.updated !== null) {toReturn['updated'] = 'toApiJson' in this.updated ? (this.updated as any).toApiJson() : this.updated;}\n if (typeof this.deleted !== 'undefined' && this.deleted !== null) {toReturn['deleted'] = 'toApiJson' in this.deleted ? (this.deleted as any).toApiJson() : this.deleted;}\n if (typeof this.media !== 'undefined') {toReturn['media'] = this.media;}\n if (typeof this.sendStatus !== 'undefined' && this.sendStatus !== null) {toReturn['sendStatus'] = 'toApiJson' in this.sendStatus ? (this.sendStatus as any).toApiJson() : this.sendStatus;}\n if (typeof this.channel !== 'undefined') {toReturn['channel'] = this.channel;}\n if (typeof this.metadata !== 'undefined' && this.metadata !== null) {toReturn['metadata'] = 'toApiJson' in this.metadata ? (this.metadata as any).toApiJson() : this.metadata;}\n if (typeof this.originalContent !== 'undefined') {toReturn['originalContent'] = this.originalContent;}\n return toReturn;\n }\n}\n\nexport class ParticipantMessageStatus implements i.ParticipantMessageStatusInterface {\n participantId: string;\n messageId: string;\n status: e.MessageStatus;\n updated: Date;\n\n static fromProto(proto: any): ParticipantMessageStatus {\n let m = new ParticipantMessageStatus();\n m = Object.assign(m, proto);\n if (proto.status) {m.status = enumStringToValue<e.MessageStatus>(e.MessageStatus, proto.status);}\n if (proto.updated) {m.updated = new Date(proto.updated);}\n return m;\n }\n\n constructor(kwargs?: i.ParticipantMessageStatusInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participantId !== 'undefined') {toReturn['participantId'] = this.participantId;}\n if (typeof this.messageId !== 'undefined') {toReturn['messageId'] = this.messageId;}\n if (typeof this.status !== 'undefined') {toReturn['status'] = this.status;}\n if (typeof this.updated !== 'undefined' && this.updated !== null) {toReturn['updated'] = 'toApiJson' in this.updated ? (this.updated as any).toApiJson() : this.updated;}\n return toReturn;\n }\n}\n\nexport class SendStatus implements i.SendStatusInterface {\n status: e.MessageStatus;\n reason: string;\n created: Date;\n\n static fromProto(proto: any): SendStatus {\n let m = new SendStatus();\n m = Object.assign(m, proto);\n if (proto.status) {m.status = enumStringToValue<e.MessageStatus>(e.MessageStatus, proto.status);}\n if (proto.created) {m.created = new Date(proto.created);}\n return m;\n }\n\n constructor(kwargs?: i.SendStatusInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.status !== 'undefined') {toReturn['status'] = this.status;}\n if (typeof this.reason !== 'undefined') {toReturn['reason'] = this.reason;}\n if (typeof this.created !== 'undefined' && this.created !== null) {toReturn['created'] = 'toApiJson' in this.created ? (this.created as any).toApiJson() : this.created;}\n return toReturn;\n }\n}\n\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects.\n// *********************************\nimport * as i from '../interfaces';\nimport { NamespaceDetail } from './common';\nimport * as e from '../enums';\n\nexport function enumStringToValue<E>(enumRef: any, value: string): E {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\n\nexport class Address implements i.AddressInterface {\n firstLineAddress: string;\n secondLineAddress: string;\n city: string;\n state: string;\n country: string;\n zipCode: string;\n\n static fromProto(proto: any): Address {\n let m = new Address();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.AddressInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.firstLineAddress !== 'undefined') {toReturn['firstLineAddress'] = this.firstLineAddress;}\n if (typeof this.secondLineAddress !== 'undefined') {toReturn['secondLineAddress'] = this.secondLineAddress;}\n if (typeof this.city !== 'undefined') {toReturn['city'] = this.city;}\n if (typeof this.state !== 'undefined') {toReturn['state'] = this.state;}\n if (typeof this.country !== 'undefined') {toReturn['country'] = this.country;}\n if (typeof this.zipCode !== 'undefined') {toReturn['zipCode'] = this.zipCode;}\n return toReturn;\n }\n}\n\nexport class Participant implements i.ParticipantInterface {\n participantId: string;\n internalParticipantId: string;\n partnerId: string;\n accountGroupId: string;\n location: e.PlatformLocation;\n channel: e.ConversationChannel;\n externalParticipantId: string;\n name: string;\n created: Date;\n updated: Date;\n deleted: Date;\n participantType: e.ParticipantType;\n email: string;\n phoneNumber: string;\n address: Address;\n isSubjectParticipant: boolean;\n isParticipantInternalInfoDeleted: boolean;\n profileImageUrl: string;\n namespaceHierarchy: NamespaceDetail[];\n\n static fromProto(proto: any): Participant {\n let m = new Participant();\n m = Object.assign(m, proto);\n if (proto.location) {m.location = enumStringToValue<e.PlatformLocation>(e.PlatformLocation, proto.location);}\n if (proto.channel) {m.channel = enumStringToValue<e.ConversationChannel>(e.ConversationChannel, proto.channel);}\n if (proto.created) {m.created = new Date(proto.created);}\n if (proto.updated) {m.updated = new Date(proto.updated);}\n if (proto.deleted) {m.deleted = new Date(proto.deleted);}\n if (proto.participantType) {m.participantType = enumStringToValue<e.ParticipantType>(e.ParticipantType, proto.participantType);}\n if (proto.address) {m.address = Address.fromProto(proto.address);}\n if (proto.namespaceHierarchy) {m.namespaceHierarchy = proto.namespaceHierarchy.map(NamespaceDetail.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.ParticipantInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participantId !== 'undefined') {toReturn['participantId'] = this.participantId;}\n if (typeof this.internalParticipantId !== 'undefined') {toReturn['internalParticipantId'] = this.internalParticipantId;}\n if (typeof this.partnerId !== 'undefined') {toReturn['partnerId'] = this.partnerId;}\n if (typeof this.accountGroupId !== 'undefined') {toReturn['accountGroupId'] = this.accountGroupId;}\n if (typeof this.location !== 'undefined') {toReturn['location'] = this.location;}\n if (typeof this.channel !== 'undefined') {toReturn['channel'] = this.channel;}\n if (typeof this.externalParticipantId !== 'undefined') {toReturn['externalParticipantId'] = this.externalParticipantId;}\n if (typeof this.name !== 'undefined') {toReturn['name'] = this.name;}\n if (typeof this.created !== 'undefined' && this.created !== null) {toReturn['created'] = 'toApiJson' in this.created ? (this.created as any).toApiJson() : this.created;}\n if (typeof this.updated !== 'undefined' && this.updated !== null) {toReturn['updated'] = 'toApiJson' in this.updated ? (this.updated as any).toApiJson() : this.updated;}\n if (typeof this.deleted !== 'undefined' && this.deleted !== null) {toReturn['deleted'] = 'toApiJson' in this.deleted ? (this.deleted as any).toApiJson() : this.deleted;}\n if (typeof this.participantType !== 'undefined') {toReturn['participantType'] = this.participantType;}\n if (typeof this.email !== 'undefined') {toReturn['email'] = this.email;}\n if (typeof this.phoneNumber !== 'undefined') {toReturn['phoneNumber'] = this.phoneNumber;}\n if (typeof this.address !== 'undefined' && this.address !== null) {toReturn['address'] = 'toApiJson' in this.address ? (this.address as any).toApiJson() : this.address;}\n if (typeof this.isSubjectParticipant !== 'undefined') {toReturn['isSubjectParticipant'] = this.isSubjectParticipant;}\n if (typeof this.isParticipantInternalInfoDeleted !== 'undefined') {toReturn['isParticipantInternalInfoDeleted'] = this.isParticipantInternalInfoDeleted;}\n if (typeof this.profileImageUrl !== 'undefined') {toReturn['profileImageUrl'] = this.profileImageUrl;}\n if (typeof this.namespaceHierarchy !== 'undefined' && this.namespaceHierarchy !== null) {toReturn['namespaceHierarchy'] = 'toApiJson' in this.namespaceHierarchy ? (this.namespaceHierarchy as any).toApiJson() : this.namespaceHierarchy;}\n return toReturn;\n }\n}\n\nexport class ParticipantKey implements i.ParticipantKeyInterface {\n internalParticipantId: string;\n partnerId: string;\n accountGroupId: string;\n location: e.PlatformLocation;\n channels: e.ConversationChannel[];\n participantType: e.GlobalParticipantType;\n namespaceHierarchy: NamespaceDetail[];\n\n static fromProto(proto: any): ParticipantKey {\n let m = new ParticipantKey();\n m = Object.assign(m, proto);\n if (proto.location) {m.location = enumStringToValue<e.PlatformLocation>(e.PlatformLocation, proto.location);}\n if (proto.channels) {m.channels = proto.channels.map((v: string) => enumStringToValue<e.ConversationChannel>(e.ConversationChannel, v));}\n if (proto.participantType) {m.participantType = enumStringToValue<e.GlobalParticipantType>(e.GlobalParticipantType, proto.participantType);}\n if (proto.namespaceHierarchy) {m.namespaceHierarchy = proto.namespaceHierarchy.map(NamespaceDetail.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.ParticipantKeyInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.internalParticipantId !== 'undefined') {toReturn['internalParticipantId'] = this.internalParticipantId;}\n if (typeof this.partnerId !== 'undefined') {toReturn['partnerId'] = this.partnerId;}\n if (typeof this.accountGroupId !== 'undefined') {toReturn['accountGroupId'] = this.accountGroupId;}\n if (typeof this.location !== 'undefined') {toReturn['location'] = this.location;}\n if (typeof this.channels !== 'undefined') {toReturn['channels'] = this.channels;}\n if (typeof this.participantType !== 'undefined') {toReturn['participantType'] = this.participantType;}\n if (typeof this.namespaceHierarchy !== 'undefined' && this.namespaceHierarchy !== null) {toReturn['namespaceHierarchy'] = 'toApiJson' in this.namespaceHierarchy ? (this.namespaceHierarchy as any).toApiJson() : this.namespaceHierarchy;}\n return toReturn;\n }\n}\n\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects.\n// *********************************\nimport * as i from '../interfaces';\n\nimport * as e from '../enums';\n\nexport function enumStringToValue<E>(enumRef: any, value: string): E {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\n\nexport class Access implements i.AccessInterface {\n scope: string[];\n public: boolean;\n\n static fromProto(proto: any): Access {\n let m = new Access();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.AccessInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.scope !== 'undefined') {toReturn['scope'] = this.scope;}\n if (typeof this.public !== 'undefined') {toReturn['public'] = this.public;}\n return toReturn;\n }\n}\n\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects.\n// *********************************\nimport * as i from '../interfaces';\nimport { SubjectParticipant } from './common';\nimport * as e from '../enums';\n\nexport function enumStringToValue<E>(enumRef: any, value: string): E {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\n\nexport class Configuration implements i.ConfigurationInterface {\n subjectParticipant: SubjectParticipant;\n createdAt: Date;\n updatedAt: Date;\n availabilityMessage: string;\n showAvailabilityMessage: boolean;\n googleBusinessMessagesEnabled: boolean;\n smsEnabled: boolean;\n inboxProEnabled: boolean;\n webChatEnabled: boolean;\n facebookMessengerEnabled: boolean;\n multiLocationEnabled: boolean;\n instagramMessagingEnabled: boolean;\n\n static fromProto(proto: any): Configuration {\n let m = new Configuration();\n m = Object.assign(m, proto);\n if (proto.subjectParticipant) {m.subjectParticipant = SubjectParticipant.fromProto(proto.subjectParticipant);}\n if (proto.createdAt) {m.createdAt = new Date(proto.createdAt);}\n if (proto.updatedAt) {m.updatedAt = new Date(proto.updatedAt);}\n return m;\n }\n\n constructor(kwargs?: i.ConfigurationInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.subjectParticipant !== 'undefined' && this.subjectParticipant !== null) {toReturn['subjectParticipant'] = 'toApiJson' in this.subjectParticipant ? (this.subjectParticipant as any).toApiJson() : this.subjectParticipant;}\n if (typeof this.createdAt !== 'undefined' && this.createdAt !== null) {toReturn['createdAt'] = 'toApiJson' in this.createdAt ? (this.createdAt as any).toApiJson() : this.createdAt;}\n if (typeof this.updatedAt !== 'undefined' && this.updatedAt !== null) {toReturn['updatedAt'] = 'toApiJson' in this.updatedAt ? (this.updatedAt as any).toApiJson() : this.updatedAt;}\n if (typeof this.availabilityMessage !== 'undefined') {toReturn['availabilityMessage'] = this.availabilityMessage;}\n if (typeof this.showAvailabilityMessage !== 'undefined') {toReturn['showAvailabilityMessage'] = this.showAvailabilityMessage;}\n if (typeof this.googleBusinessMessagesEnabled !== 'undefined') {toReturn['googleBusinessMessagesEnabled'] = this.googleBusinessMessagesEnabled;}\n if (typeof this.smsEnabled !== 'undefined') {toReturn['smsEnabled'] = this.smsEnabled;}\n if (typeof this.inboxProEnabled !== 'undefined') {toReturn['inboxProEnabled'] = this.inboxProEnabled;}\n if (typeof this.webChatEnabled !== 'undefined') {toReturn['webChatEnabled'] = this.webChatEnabled;}\n if (typeof this.facebookMessengerEnabled !== 'undefined') {toReturn['facebookMessengerEnabled'] = this.facebookMessengerEnabled;}\n if (typeof this.multiLocationEnabled !== 'undefined') {toReturn['multiLocationEnabled'] = this.multiLocationEnabled;}\n if (typeof this.instagramMessagingEnabled !== 'undefined') {toReturn['instagramMessagingEnabled'] = this.instagramMessagingEnabled;}\n return toReturn;\n }\n}\n\nexport class ProductFeature implements i.ProductFeatureInterface {\n googleBusinessMessagesEnabled: boolean;\n smsEnabled: boolean;\n multiLocationEnabled: boolean;\n webChatEnabled: boolean;\n facebookMessengerEnabled: boolean;\n instagramMessagingEnabled: boolean;\n\n static fromProto(proto: any): ProductFeature {\n let m = new ProductFeature();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.ProductFeatureInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.googleBusinessMessagesEnabled !== 'undefined') {toReturn['googleBusinessMessagesEnabled'] = this.googleBusinessMessagesEnabled;}\n if (typeof this.smsEnabled !== 'undefined') {toReturn['smsEnabled'] = this.smsEnabled;}\n if (typeof this.multiLocationEnabled !== 'undefined') {toReturn['multiLocationEnabled'] = this.multiLocationEnabled;}\n if (typeof this.webChatEnabled !== 'undefined') {toReturn['webChatEnabled'] = this.webChatEnabled;}\n if (typeof this.facebookMessengerEnabled !== 'undefined') {toReturn['facebookMessengerEnabled'] = this.facebookMessengerEnabled;}\n if (typeof this.instagramMessagingEnabled !== 'undefined') {toReturn['instagramMessagingEnabled'] = this.instagramMessagingEnabled;}\n return toReturn;\n }\n}\n\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects.\n// *********************************\nimport * as i from '../interfaces';\n\nimport * as e from '../enums';\n\nexport function enumStringToValue<E>(enumRef: any, value: string): E {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\n\nexport class View implements i.ViewInterface {\n viewId: string;\n created: Date;\n\n static fromProto(proto: any): View {\n let m = new View();\n m = Object.assign(m, proto);\n if (proto.created) {m.created = new Date(proto.created);}\n return m;\n }\n\n constructor(kwargs?: i.ViewInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.viewId !== 'undefined') {toReturn['viewId'] = this.viewId;}\n if (typeof this.created !== 'undefined' && this.created !== null) {toReturn['created'] = 'toApiJson' in this.created ? (this.created as any).toApiJson() : this.created;}\n return toReturn;\n }\n}\n\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects.\n// *********************************\nimport * as i from '../interfaces';\n\nimport * as e from '../enums';\n\nexport function enumStringToValue<E>(enumRef: any, value: string): E {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\n\nexport class DataSources implements i.DataSourcesInterface {\n businessProfile: boolean;\n businessWebsite: boolean;\n\n static fromProto(proto: any): DataSources {\n let m = new DataSources();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.DataSourcesInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.businessProfile !== 'undefined') {toReturn['businessProfile'] = this.businessProfile;}\n if (typeof this.businessWebsite !== 'undefined') {toReturn['businessWebsite'] = this.businessWebsite;}\n return toReturn;\n }\n}\n\nexport class Widget implements i.WidgetInterface {\n widgetId: string;\n name: string;\n namespace: string;\n color: string;\n allowedUrls: string[];\n position: e.WidgetPosition;\n created: Date;\n updated: Date;\n isEnabled: boolean;\n welcomeMessage: string;\n textColor: string;\n accentColor: string;\n accentTextColor: string;\n skipContactCapture: boolean;\n additionalPromptInstructions: string;\n assistantName: string;\n assistantAvatarUrl: string;\n\n static fromProto(proto: any): Widget {\n let m = new Widget();\n m = Object.assign(m, proto);\n if (proto.position) {m.position = enumStringToValue<e.WidgetPosition>(e.WidgetPosition, proto.position);}\n if (proto.created) {m.created = new Date(proto.created);}\n if (proto.updated) {m.updated = new Date(proto.updated);}\n return m;\n }\n\n constructor(kwargs?: i.WidgetInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.widgetId !== 'undefined') {toReturn['widgetId'] = this.widgetId;}\n if (typeof this.name !== 'undefined') {toReturn['name'] = this.name;}\n if (typeof this.namespace !== 'undefined') {toReturn['namespace'] = this.namespace;}\n if (typeof this.color !== 'undefined') {toReturn['color'] = this.color;}\n if (typeof this.allowedUrls !== 'undefined') {toReturn['allowedUrls'] = this.allowedUrls;}\n if (typeof this.position !== 'undefined') {toReturn['position'] = this.position;}\n if (typeof this.created !== 'undefined' && this.created !== null) {toReturn['created'] = 'toApiJson' in this.created ? (this.created as any).toApiJson() : this.created;}\n if (typeof this.updated !== 'undefined' && this.updated !== null) {toReturn['updated'] = 'toApiJson' in this.updated ? (this.updated as any).toApiJson() : this.updated;}\n if (typeof this.isEnabled !== 'undefined') {toReturn['isEnabled'] = this.isEnabled;}\n if (typeof this.welcomeMessage !== 'undefined') {toReturn['welcomeMessage'] = this.welcomeMessage;}\n if (typeof this.textColor !== 'undefined') {toReturn['textColor'] = this.textColor;}\n if (typeof this.accentColor !== 'undefined') {toReturn['accentColor'] = this.accentColor;}\n if (typeof this.accentTextColor !== 'undefined') {toReturn['accentTextColor'] = this.accentTextColor;}\n if (typeof this.skipContactCapture !== 'undefined') {toReturn['skipContactCapture'] = this.skipContactCapture;}\n if (typeof this.additionalPromptInstructions !== 'undefined') {toReturn['additionalPromptInstructions'] = this.additionalPromptInstructions;}\n if (typeof this.assistantName !== 'undefined') {toReturn['assistantName'] = this.assistantName;}\n if (typeof this.assistantAvatarUrl !== 'undefined') {toReturn['assistantAvatarUrl'] = this.assistantAvatarUrl;}\n return toReturn;\n }\n}\n\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects.\n// *********************************\nimport * as i from '../interfaces';\n\nimport * as e from '../enums';\n\nexport function enumStringToValue<E>(enumRef: any, value: string): E {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\n\nexport class FieldMask implements i.FieldMaskInterface {\n paths: string[];\n\n static fromProto(proto: any): FieldMask {\n let m = new FieldMask();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.FieldMaskInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.paths !== 'undefined') {toReturn['paths'] = this.paths;}\n return toReturn;\n }\n}\n\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects.\n// *********************************\nimport * as i from '../interfaces';\n\nimport * as e from '../enums';\n\nexport function enumStringToValue<E>(enumRef: any, value: string): E {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\n\nexport class MessageTemplate implements i.MessageTemplateInterface {\n templateId: string;\n name: string;\n content: string;\n created: Date;\n\n static fromProto(proto: any): MessageTemplate {\n let m = new MessageTemplate();\n m = Object.assign(m, proto);\n if (proto.created) {m.created = new Date(proto.created);}\n return m;\n }\n\n constructor(kwargs?: i.MessageTemplateInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.templateId !== 'undefined') {toReturn['templateId'] = this.templateId;}\n if (typeof this.name !== 'undefined') {toReturn['name'] = this.name;}\n if (typeof this.content !== 'undefined') {toReturn['content'] = this.content;}\n if (typeof this.created !== 'undefined' && this.created !== null) {toReturn['created'] = 'toApiJson' in this.created ? (this.created as any).toApiJson() : this.created;}\n return toReturn;\n }\n}\n\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects.\n// *********************************\nimport * as i from '../interfaces';\n\nimport * as e from '../enums';\n\nexport function enumStringToValue<E>(enumRef: any, value: string): E {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\n\nexport class AISystemMessage implements i.AISystemMessageInterface {\n systemMessageId: string;\n systemMessageBody: string;\n iamUserId: string;\n updated: Date;\n\n static fromProto(proto: any): AISystemMessage {\n let m = new AISystemMessage();\n m = Object.assign(m, proto);\n if (proto.updated) {m.updated = new Date(proto.updated);}\n return m;\n }\n\n constructor(kwargs?: i.AISystemMessageInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.systemMessageId !== 'undefined') {toReturn['systemMessageId'] = this.systemMessageId;}\n if (typeof this.systemMessageBody !== 'undefined') {toReturn['systemMessageBody'] = this.systemMessageBody;}\n if (typeof this.iamUserId !== 'undefined') {toReturn['iamUserId'] = this.iamUserId;}\n if (typeof this.updated !== 'undefined' && this.updated !== null) {toReturn['updated'] = 'toApiJson' in this.updated ? (this.updated as any).toApiJson() : this.updated;}\n return toReturn;\n }\n}\n\nexport class GetAISystemMessageRequest implements i.GetAISystemMessageRequestInterface {\n systemMessageId: string;\n\n static fromProto(proto: any): GetAISystemMessageRequest {\n let m = new GetAISystemMessageRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetAISystemMessageRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.systemMessageId !== 'undefined') {toReturn['systemMessageId'] = this.systemMessageId;}\n return toReturn;\n }\n}\n\nexport class GetAISystemMessageResponse implements i.GetAISystemMessageResponseInterface {\n systemMessage: AISystemMessage;\n\n static fromProto(proto: any): GetAISystemMessageResponse {\n let m = new GetAISystemMessageResponse();\n m = Object.assign(m, proto);\n if (proto.systemMessage) {m.systemMessage = AISystemMessage.fromProto(proto.systemMessage);}\n return m;\n }\n\n constructor(kwargs?: i.GetAISystemMessageResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.systemMessage !== 'undefined' && this.systemMessage !== null) {toReturn['systemMessage'] = 'toApiJson' in this.systemMessage ? (this.systemMessage as any).toApiJson() : this.systemMessage;}\n return toReturn;\n }\n}\n\nexport class ListAISystemMessagesRequest implements i.ListAISystemMessagesRequestInterface {\n cursor: string;\n pageSize: number;\n\n static fromProto(proto: any): ListAISystemMessagesRequest {\n let m = new ListAISystemMessagesRequest();\n m = Object.assign(m, proto);\n if (proto.pageSize) {m.pageSize = parseInt(proto.pageSize, 10);}\n return m;\n }\n\n constructor(kwargs?: i.ListAISystemMessagesRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.cursor !== 'undefined') {toReturn['cursor'] = this.cursor;}\n if (typeof this.pageSize !== 'undefined') {toReturn['pageSize'] = this.pageSize;}\n return toReturn;\n }\n}\n\nexport class ListAISystemMessagesResponse implements i.ListAISystemMessagesResponseInterface {\n aiSystemMessages: AISystemMessage[];\n nextCursor: string;\n hasMore: boolean;\n\n static fromProto(proto: any): ListAISystemMessagesResponse {\n let m = new ListAISystemMessagesResponse();\n m = Object.assign(m, proto);\n if (proto.aiSystemMessages) {m.aiSystemMessages = proto.aiSystemMessages.map(AISystemMessage.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.ListAISystemMessagesResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.aiSystemMessages !== 'undefined' && this.aiSystemMessages !== null) {toReturn['aiSystemMessages'] = 'toApiJson' in this.aiSystemMessages ? (this.aiSystemMessages as any).toApiJson() : this.aiSystemMessages;}\n if (typeof this.nextCursor !== 'undefined') {toReturn['nextCursor'] = this.nextCursor;}\n if (typeof this.hasMore !== 'undefined') {toReturn['hasMore'] = this.hasMore;}\n return toReturn;\n }\n}\n\nexport class UpsertAISystemMessageRequest implements i.UpsertAISystemMessageRequestInterface {\n systemMessage: AISystemMessage;\n\n static fromProto(proto: any): UpsertAISystemMessageRequest {\n let m = new UpsertAISystemMessageRequest();\n m = Object.assign(m, proto);\n if (proto.systemMessage) {m.systemMessage = AISystemMessage.fromProto(proto.systemMessage);}\n return m;\n }\n\n constructor(kwargs?: i.UpsertAISystemMessageRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.systemMessage !== 'undefined' && this.systemMessage !== null) {toReturn['systemMessage'] = 'toApiJson' in this.systemMessage ? (this.systemMessage as any).toApiJson() : this.systemMessage;}\n return toReturn;\n }\n}\n\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects.\n// *********************************\nimport * as i from '../interfaces';\n\nimport * as e from '../enums';\n\nexport function enumStringToValue<E>(enumRef: any, value: string): E {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\n\nexport class Event implements i.EventInterface {\n conversationId: string;\n eventId: string;\n happenedAt: Date;\n labelKey: string;\n initiatorId: string;\n created: Date;\n updated: Date;\n deleted: Date;\n message: string;\n\n static fromProto(proto: any): Event {\n let m = new Event();\n m = Object.assign(m, proto);\n if (proto.happenedAt) {m.happenedAt = new Date(proto.happenedAt);}\n if (proto.created) {m.created = new Date(proto.created);}\n if (proto.updated) {m.updated = new Date(proto.updated);}\n if (proto.deleted) {m.deleted = new Date(proto.deleted);}\n return m;\n }\n\n constructor(kwargs?: i.EventInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n if (typeof this.eventId !== 'undefined') {toReturn['eventId'] = this.eventId;}\n if (typeof this.happenedAt !== 'undefined' && this.happenedAt !== null) {toReturn['happenedAt'] = 'toApiJson' in this.happenedAt ? (this.happenedAt as any).toApiJson() : this.happenedAt;}\n if (typeof this.labelKey !== 'undefined') {toReturn['labelKey'] = this.labelKey;}\n if (typeof this.initiatorId !== 'undefined') {toReturn['initiatorId'] = this.initiatorId;}\n if (typeof this.created !== 'undefined' && this.created !== null) {toReturn['created'] = 'toApiJson' in this.created ? (this.created as any).toApiJson() : this.created;}\n if (typeof this.updated !== 'undefined' && this.updated !== null) {toReturn['updated'] = 'toApiJson' in this.updated ? (this.updated as any).toApiJson() : this.updated;}\n if (typeof this.deleted !== 'undefined' && this.deleted !== null) {toReturn['deleted'] = 'toApiJson' in this.deleted ? (this.deleted as any).toApiJson() : this.deleted;}\n if (typeof this.message !== 'undefined') {toReturn['message'] = this.message;}\n return toReturn;\n }\n}\n\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects.\n// *********************************\nimport * as i from '../interfaces';\nimport { Configuration, ProductFeature } from './configuration';\nimport { Conversation, ConversationKey } from './conversation';\nimport { DataSources, Widget } from './widget';\nimport { Event } from './event';\nimport { FieldMask } from './field-mask';\nimport { Message } from './message';\nimport { MessageTemplate } from './message-template';\nimport { Participant, ParticipantKey } from './participant';\nimport { SubjectParticipant } from './common';\nimport { View } from './conversation-view';\nimport * as e from '../enums';\n\nexport function enumStringToValue<E>(enumRef: any, value: string): E {\n if (typeof value === 'number') {\n return value;\n }\n return enumRef[value];\n}\n\nexport class AddConversationToConversationViewRequest implements i.AddConversationToConversationViewRequestInterface {\n viewId: string;\n conversationId: string;\n participantId: string;\n\n static fromProto(proto: any): AddConversationToConversationViewRequest {\n let m = new AddConversationToConversationViewRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.AddConversationToConversationViewRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.viewId !== 'undefined') {toReturn['viewId'] = this.viewId;}\n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n if (typeof this.participantId !== 'undefined') {toReturn['participantId'] = this.participantId;}\n return toReturn;\n }\n}\n\nexport class AddMultiParticipantsRequest implements i.AddMultiParticipantsRequestInterface {\n conversationId: string;\n participants: Participant[];\n\n static fromProto(proto: any): AddMultiParticipantsRequest {\n let m = new AddMultiParticipantsRequest();\n m = Object.assign(m, proto);\n if (proto.participants) {m.participants = proto.participants.map(Participant.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.AddMultiParticipantsRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n if (typeof this.participants !== 'undefined' && this.participants !== null) {toReturn['participants'] = 'toApiJson' in this.participants ? (this.participants as any).toApiJson() : this.participants;}\n return toReturn;\n }\n}\n\nexport class AddMultiParticipantsResponse implements i.AddMultiParticipantsResponseInterface {\n participants: Participant[];\n\n static fromProto(proto: any): AddMultiParticipantsResponse {\n let m = new AddMultiParticipantsResponse();\n m = Object.assign(m, proto);\n if (proto.participants) {m.participants = proto.participants.map(Participant.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.AddMultiParticipantsResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participants !== 'undefined' && this.participants !== null) {toReturn['participants'] = 'toApiJson' in this.participants ? (this.participants as any).toApiJson() : this.participants;}\n return toReturn;\n }\n}\n\nexport class CapturedLead implements i.CapturedLeadInterface {\n name: string;\n email: string;\n phone: string;\n contactId: string;\n\n static fromProto(proto: any): CapturedLead {\n let m = new CapturedLead();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.CapturedLeadInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.name !== 'undefined') {toReturn['name'] = this.name;}\n if (typeof this.email !== 'undefined') {toReturn['email'] = this.email;}\n if (typeof this.phone !== 'undefined') {toReturn['phone'] = this.phone;}\n if (typeof this.contactId !== 'undefined') {toReturn['contactId'] = this.contactId;}\n return toReturn;\n }\n}\n\nexport class ChannelAvailability implements i.ChannelAvailabilityInterface {\n channel: e.ConversationChannel;\n isAvailable: boolean;\n statuses: ChannelStatus[];\n\n static fromProto(proto: any): ChannelAvailability {\n let m = new ChannelAvailability();\n m = Object.assign(m, proto);\n if (proto.channel) {m.channel = enumStringToValue<e.ConversationChannel>(e.ConversationChannel, proto.channel);}\n if (proto.statuses) {m.statuses = proto.statuses.map(ChannelStatus.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.ChannelAvailabilityInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.channel !== 'undefined') {toReturn['channel'] = this.channel;}\n if (typeof this.isAvailable !== 'undefined') {toReturn['isAvailable'] = this.isAvailable;}\n if (typeof this.statuses !== 'undefined' && this.statuses !== null) {toReturn['statuses'] = 'toApiJson' in this.statuses ? (this.statuses as any).toApiJson() : this.statuses;}\n return toReturn;\n }\n}\n\nexport class ChannelStatus implements i.ChannelStatusInterface {\n status: e.Status;\n i18nKey: string;\n\n static fromProto(proto: any): ChannelStatus {\n let m = new ChannelStatus();\n m = Object.assign(m, proto);\n if (proto.status) {m.status = enumStringToValue<e.Status>(e.Status, proto.status);}\n return m;\n }\n\n constructor(kwargs?: i.ChannelStatusInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.status !== 'undefined') {toReturn['status'] = this.status;}\n if (typeof this.i18nKey !== 'undefined') {toReturn['i18nKey'] = this.i18nKey;}\n return toReturn;\n }\n}\n\nexport class ConversationMessageCount implements i.ConversationMessageCountInterface {\n conversationId: string;\n count: number;\n\n static fromProto(proto: any): ConversationMessageCount {\n let m = new ConversationMessageCount();\n m = Object.assign(m, proto);\n if (proto.count) {m.count = parseInt(proto.count, 10);}\n return m;\n }\n\n constructor(kwargs?: i.ConversationMessageCountInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n if (typeof this.count !== 'undefined') {toReturn['count'] = this.count;}\n return toReturn;\n }\n}\n\nexport class LookupConversationsResponseConversations implements i.LookupConversationsResponseConversationsInterface {\n conversation: Conversation;\n participants: Participant[];\n\n static fromProto(proto: any): LookupConversationsResponseConversations {\n let m = new LookupConversationsResponseConversations();\n m = Object.assign(m, proto);\n if (proto.conversation) {m.conversation = Conversation.fromProto(proto.conversation);}\n if (proto.participants) {m.participants = proto.participants.map(Participant.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.LookupConversationsResponseConversationsInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversation !== 'undefined' && this.conversation !== null) {toReturn['conversation'] = 'toApiJson' in this.conversation ? (this.conversation as any).toApiJson() : this.conversation;}\n if (typeof this.participants !== 'undefined' && this.participants !== null) {toReturn['participants'] = 'toApiJson' in this.participants ? (this.participants as any).toApiJson() : this.participants;}\n return toReturn;\n }\n}\n\nexport class GetMultiConversationMessageCountResponseCountsEntry implements i.GetMultiConversationMessageCountResponseCountsEntryInterface {\n key: string;\n value: number;\n\n static fromProto(proto: any): GetMultiConversationMessageCountResponseCountsEntry {\n let m = new GetMultiConversationMessageCountResponseCountsEntry();\n m = Object.assign(m, proto);\n if (proto.value) {m.value = parseInt(proto.value, 10);}\n return m;\n }\n\n constructor(kwargs?: i.GetMultiConversationMessageCountResponseCountsEntryInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.key !== 'undefined') {toReturn['key'] = this.key;}\n if (typeof this.value !== 'undefined') {toReturn['value'] = this.value;}\n return toReturn;\n }\n}\n\nexport class CreateConversationRequest implements i.CreateConversationRequestInterface {\n participants: Participant[];\n channel: e.ConversationChannel;\n externalConversationId: string;\n created: Date;\n updated: Date;\n originLocation: e.PlatformLocation;\n originLocationExternalId: string;\n\n static fromProto(proto: any): CreateConversationRequest {\n let m = new CreateConversationRequest();\n m = Object.assign(m, proto);\n if (proto.participants) {m.participants = proto.participants.map(Participant.fromProto);}\n if (proto.channel) {m.channel = enumStringToValue<e.ConversationChannel>(e.ConversationChannel, proto.channel);}\n if (proto.created) {m.created = new Date(proto.created);}\n if (proto.updated) {m.updated = new Date(proto.updated);}\n if (proto.originLocation) {m.originLocation = enumStringToValue<e.PlatformLocation>(e.PlatformLocation, proto.originLocation);}\n return m;\n }\n\n constructor(kwargs?: i.CreateConversationRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participants !== 'undefined' && this.participants !== null) {toReturn['participants'] = 'toApiJson' in this.participants ? (this.participants as any).toApiJson() : this.participants;}\n if (typeof this.channel !== 'undefined') {toReturn['channel'] = this.channel;}\n if (typeof this.externalConversationId !== 'undefined') {toReturn['externalConversationId'] = this.externalConversationId;}\n if (typeof this.created !== 'undefined' && this.created !== null) {toReturn['created'] = 'toApiJson' in this.created ? (this.created as any).toApiJson() : this.created;}\n if (typeof this.updated !== 'undefined' && this.updated !== null) {toReturn['updated'] = 'toApiJson' in this.updated ? (this.updated as any).toApiJson() : this.updated;}\n if (typeof this.originLocation !== 'undefined') {toReturn['originLocation'] = this.originLocation;}\n if (typeof this.originLocationExternalId !== 'undefined') {toReturn['originLocationExternalId'] = this.originLocationExternalId;}\n return toReturn;\n }\n}\n\nexport class CreateConversationResponse implements i.CreateConversationResponseInterface {\n conversation: Conversation;\n participants: Participant[];\n\n static fromProto(proto: any): CreateConversationResponse {\n let m = new CreateConversationResponse();\n m = Object.assign(m, proto);\n if (proto.conversation) {m.conversation = Conversation.fromProto(proto.conversation);}\n if (proto.participants) {m.participants = proto.participants.map(Participant.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.CreateConversationResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversation !== 'undefined' && this.conversation !== null) {toReturn['conversation'] = 'toApiJson' in this.conversation ? (this.conversation as any).toApiJson() : this.conversation;}\n if (typeof this.participants !== 'undefined' && this.participants !== null) {toReturn['participants'] = 'toApiJson' in this.participants ? (this.participants as any).toApiJson() : this.participants;}\n return toReturn;\n }\n}\n\nexport class CreateMessageTemplateRequest implements i.CreateMessageTemplateRequestInterface {\n template: MessageTemplate;\n subjectParticipant: SubjectParticipant;\n\n static fromProto(proto: any): CreateMessageTemplateRequest {\n let m = new CreateMessageTemplateRequest();\n m = Object.assign(m, proto);\n if (proto.template) {m.template = MessageTemplate.fromProto(proto.template);}\n if (proto.subjectParticipant) {m.subjectParticipant = SubjectParticipant.fromProto(proto.subjectParticipant);}\n return m;\n }\n\n constructor(kwargs?: i.CreateMessageTemplateRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.template !== 'undefined' && this.template !== null) {toReturn['template'] = 'toApiJson' in this.template ? (this.template as any).toApiJson() : this.template;}\n if (typeof this.subjectParticipant !== 'undefined' && this.subjectParticipant !== null) {toReturn['subjectParticipant'] = 'toApiJson' in this.subjectParticipant ? (this.subjectParticipant as any).toApiJson() : this.subjectParticipant;}\n return toReturn;\n }\n}\n\nexport class CreateMessageTemplateResponse implements i.CreateMessageTemplateResponseInterface {\n template: MessageTemplate;\n\n static fromProto(proto: any): CreateMessageTemplateResponse {\n let m = new CreateMessageTemplateResponse();\n m = Object.assign(m, proto);\n if (proto.template) {m.template = MessageTemplate.fromProto(proto.template);}\n return m;\n }\n\n constructor(kwargs?: i.CreateMessageTemplateResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.template !== 'undefined' && this.template !== null) {toReturn['template'] = 'toApiJson' in this.template ? (this.template as any).toApiJson() : this.template;}\n return toReturn;\n }\n}\n\nexport class CreateMultiMessagesRequest implements i.CreateMultiMessagesRequestInterface {\n messages: Message[];\n lastSeen: Date;\n\n static fromProto(proto: any): CreateMultiMessagesRequest {\n let m = new CreateMultiMessagesRequest();\n m = Object.assign(m, proto);\n if (proto.messages) {m.messages = proto.messages.map(Message.fromProto);}\n if (proto.lastSeen) {m.lastSeen = new Date(proto.lastSeen);}\n return m;\n }\n\n constructor(kwargs?: i.CreateMultiMessagesRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.messages !== 'undefined' && this.messages !== null) {toReturn['messages'] = 'toApiJson' in this.messages ? (this.messages as any).toApiJson() : this.messages;}\n if (typeof this.lastSeen !== 'undefined' && this.lastSeen !== null) {toReturn['lastSeen'] = 'toApiJson' in this.lastSeen ? (this.lastSeen as any).toApiJson() : this.lastSeen;}\n return toReturn;\n }\n}\n\nexport class CreateWidgetConversationRequest implements i.CreateWidgetConversationRequestInterface {\n widgetId: string;\n chatSourceUrl: string;\n\n static fromProto(proto: any): CreateWidgetConversationRequest {\n let m = new CreateWidgetConversationRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.CreateWidgetConversationRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.widgetId !== 'undefined') {toReturn['widgetId'] = this.widgetId;}\n if (typeof this.chatSourceUrl !== 'undefined') {toReturn['chatSourceUrl'] = this.chatSourceUrl;}\n return toReturn;\n }\n}\n\nexport class CreateWidgetConversationResponse implements i.CreateWidgetConversationResponseInterface {\n widgetParticipantToken: string;\n conversation: Conversation;\n\n static fromProto(proto: any): CreateWidgetConversationResponse {\n let m = new CreateWidgetConversationResponse();\n m = Object.assign(m, proto);\n if (proto.conversation) {m.conversation = Conversation.fromProto(proto.conversation);}\n return m;\n }\n\n constructor(kwargs?: i.CreateWidgetConversationResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.widgetParticipantToken !== 'undefined') {toReturn['widgetParticipantToken'] = this.widgetParticipantToken;}\n if (typeof this.conversation !== 'undefined' && this.conversation !== null) {toReturn['conversation'] = 'toApiJson' in this.conversation ? (this.conversation as any).toApiJson() : this.conversation;}\n return toReturn;\n }\n}\n\nexport class CreateWidgetRequest implements i.CreateWidgetRequestInterface {\n name: string;\n namespace: string;\n color: string;\n allowedUrls: string[];\n welcomeMessage: string;\n dataSources: DataSources;\n textColor: string;\n accentColor: string;\n accentTextColor: string;\n skipContactCapture: boolean;\n additionalPromptInstructions: string;\n assistantName: string;\n assistantAvatarUrl: string;\n\n static fromProto(proto: any): CreateWidgetRequest {\n let m = new CreateWidgetRequest();\n m = Object.assign(m, proto);\n if (proto.dataSources) {m.dataSources = DataSources.fromProto(proto.dataSources);}\n return m;\n }\n\n constructor(kwargs?: i.CreateWidgetRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.name !== 'undefined') {toReturn['name'] = this.name;}\n if (typeof this.namespace !== 'undefined') {toReturn['namespace'] = this.namespace;}\n if (typeof this.color !== 'undefined') {toReturn['color'] = this.color;}\n if (typeof this.allowedUrls !== 'undefined') {toReturn['allowedUrls'] = this.allowedUrls;}\n if (typeof this.welcomeMessage !== 'undefined') {toReturn['welcomeMessage'] = this.welcomeMessage;}\n if (typeof this.dataSources !== 'undefined' && this.dataSources !== null) {toReturn['dataSources'] = 'toApiJson' in this.dataSources ? (this.dataSources as any).toApiJson() : this.dataSources;}\n if (typeof this.textColor !== 'undefined') {toReturn['textColor'] = this.textColor;}\n if (typeof this.accentColor !== 'undefined') {toReturn['accentColor'] = this.accentColor;}\n if (typeof this.accentTextColor !== 'undefined') {toReturn['accentTextColor'] = this.accentTextColor;}\n if (typeof this.skipContactCapture !== 'undefined') {toReturn['skipContactCapture'] = this.skipContactCapture;}\n if (typeof this.additionalPromptInstructions !== 'undefined') {toReturn['additionalPromptInstructions'] = this.additionalPromptInstructions;}\n if (typeof this.assistantName !== 'undefined') {toReturn['assistantName'] = this.assistantName;}\n if (typeof this.assistantAvatarUrl !== 'undefined') {toReturn['assistantAvatarUrl'] = this.assistantAvatarUrl;}\n return toReturn;\n }\n}\n\nexport class CreateWidgetResponse implements i.CreateWidgetResponseInterface {\n widget: Widget;\n\n static fromProto(proto: any): CreateWidgetResponse {\n let m = new CreateWidgetResponse();\n m = Object.assign(m, proto);\n if (proto.widget) {m.widget = Widget.fromProto(proto.widget);}\n return m;\n }\n\n constructor(kwargs?: i.CreateWidgetResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.widget !== 'undefined' && this.widget !== null) {toReturn['widget'] = 'toApiJson' in this.widget ? (this.widget as any).toApiJson() : this.widget;}\n return toReturn;\n }\n}\n\nexport class MetadataDataEntry implements i.MetadataDataEntryInterface {\n key: string;\n value: string;\n\n static fromProto(proto: any): MetadataDataEntry {\n let m = new MetadataDataEntry();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.MetadataDataEntryInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.key !== 'undefined') {toReturn['key'] = this.key;}\n if (typeof this.value !== 'undefined') {toReturn['value'] = this.value;}\n return toReturn;\n }\n}\n\nexport class DeleteConversationRequest implements i.DeleteConversationRequestInterface {\n conversationId: string;\n\n static fromProto(proto: any): DeleteConversationRequest {\n let m = new DeleteConversationRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.DeleteConversationRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n return toReturn;\n }\n}\n\nexport class DeleteMessageRequest implements i.DeleteMessageRequestInterface {\n messageId: string;\n\n static fromProto(proto: any): DeleteMessageRequest {\n let m = new DeleteMessageRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.DeleteMessageRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.messageId !== 'undefined') {toReturn['messageId'] = this.messageId;}\n return toReturn;\n }\n}\n\nexport class DeleteMessageTemplateRequest implements i.DeleteMessageTemplateRequestInterface {\n templateId: string;\n\n static fromProto(proto: any): DeleteMessageTemplateRequest {\n let m = new DeleteMessageTemplateRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.DeleteMessageTemplateRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.templateId !== 'undefined') {toReturn['templateId'] = this.templateId;}\n return toReturn;\n }\n}\n\nexport class DeleteWidgetRequest implements i.DeleteWidgetRequestInterface {\n widgetId: string;\n\n static fromProto(proto: any): DeleteWidgetRequest {\n let m = new DeleteWidgetRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.DeleteWidgetRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.widgetId !== 'undefined') {toReturn['widgetId'] = this.widgetId;}\n return toReturn;\n }\n}\n\nexport class GetMultiConversationDetailsResponseDetailedConversation implements i.GetMultiConversationDetailsResponseDetailedConversationInterface {\n conversation: Conversation;\n latestMessage: Message;\n participants: Participant[];\n summary: string;\n\n static fromProto(proto: any): GetMultiConversationDetailsResponseDetailedConversation {\n let m = new GetMultiConversationDetailsResponseDetailedConversation();\n m = Object.assign(m, proto);\n if (proto.conversation) {m.conversation = Conversation.fromProto(proto.conversation);}\n if (proto.latestMessage) {m.latestMessage = Message.fromProto(proto.latestMessage);}\n if (proto.participants) {m.participants = proto.participants.map(Participant.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.GetMultiConversationDetailsResponseDetailedConversationInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversation !== 'undefined' && this.conversation !== null) {toReturn['conversation'] = 'toApiJson' in this.conversation ? (this.conversation as any).toApiJson() : this.conversation;}\n if (typeof this.latestMessage !== 'undefined' && this.latestMessage !== null) {toReturn['latestMessage'] = 'toApiJson' in this.latestMessage ? (this.latestMessage as any).toApiJson() : this.latestMessage;}\n if (typeof this.participants !== 'undefined' && this.participants !== null) {toReturn['participants'] = 'toApiJson' in this.participants ? (this.participants as any).toApiJson() : this.participants;}\n if (typeof this.summary !== 'undefined') {toReturn['summary'] = this.summary;}\n return toReturn;\n }\n}\n\nexport class SearchConversationsResponseDetailedConversation implements i.SearchConversationsResponseDetailedConversationInterface {\n conversation: Conversation;\n latestMessage: Message;\n participants: Participant[];\n\n static fromProto(proto: any): SearchConversationsResponseDetailedConversation {\n let m = new SearchConversationsResponseDetailedConversation();\n m = Object.assign(m, proto);\n if (proto.conversation) {m.conversation = Conversation.fromProto(proto.conversation);}\n if (proto.latestMessage) {m.latestMessage = Message.fromProto(proto.latestMessage);}\n if (proto.participants) {m.participants = proto.participants.map(Participant.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.SearchConversationsResponseDetailedConversationInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversation !== 'undefined' && this.conversation !== null) {toReturn['conversation'] = 'toApiJson' in this.conversation ? (this.conversation as any).toApiJson() : this.conversation;}\n if (typeof this.latestMessage !== 'undefined' && this.latestMessage !== null) {toReturn['latestMessage'] = 'toApiJson' in this.latestMessage ? (this.latestMessage as any).toApiJson() : this.latestMessage;}\n if (typeof this.participants !== 'undefined' && this.participants !== null) {toReturn['participants'] = 'toApiJson' in this.participants ? (this.participants as any).toApiJson() : this.participants;}\n return toReturn;\n }\n}\n\nexport class EvaluateResponseRequest implements i.EvaluateResponseRequestInterface {\n messageId: string;\n sentiment: e.EvaluationSentiment;\n comment: string;\n\n static fromProto(proto: any): EvaluateResponseRequest {\n let m = new EvaluateResponseRequest();\n m = Object.assign(m, proto);\n if (proto.sentiment) {m.sentiment = enumStringToValue<e.EvaluationSentiment>(e.EvaluationSentiment, proto.sentiment);}\n return m;\n }\n\n constructor(kwargs?: i.EvaluateResponseRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.messageId !== 'undefined') {toReturn['messageId'] = this.messageId;}\n if (typeof this.sentiment !== 'undefined') {toReturn['sentiment'] = this.sentiment;}\n if (typeof this.comment !== 'undefined') {toReturn['comment'] = this.comment;}\n return toReturn;\n }\n}\n\nexport class GetAvailableChannelsForConversationRequest implements i.GetAvailableChannelsForConversationRequestInterface {\n conversationId: string;\n\n static fromProto(proto: any): GetAvailableChannelsForConversationRequest {\n let m = new GetAvailableChannelsForConversationRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetAvailableChannelsForConversationRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n return toReturn;\n }\n}\n\nexport class GetAvailableChannelsForConversationResponse implements i.GetAvailableChannelsForConversationResponseInterface {\n channels: e.ConversationChannel[];\n preferredChannel: e.ConversationChannel;\n channelAvailabilities: ChannelAvailability[];\n\n static fromProto(proto: any): GetAvailableChannelsForConversationResponse {\n let m = new GetAvailableChannelsForConversationResponse();\n m = Object.assign(m, proto);\n if (proto.channels) {m.channels = proto.channels.map((v: string) => enumStringToValue<e.ConversationChannel>(e.ConversationChannel, v));}\n if (proto.preferredChannel) {m.preferredChannel = enumStringToValue<e.ConversationChannel>(e.ConversationChannel, proto.preferredChannel);}\n if (proto.channelAvailabilities) {m.channelAvailabilities = proto.channelAvailabilities.map(ChannelAvailability.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.GetAvailableChannelsForConversationResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.channels !== 'undefined') {toReturn['channels'] = this.channels;}\n if (typeof this.preferredChannel !== 'undefined') {toReturn['preferredChannel'] = this.preferredChannel;}\n if (typeof this.channelAvailabilities !== 'undefined' && this.channelAvailabilities !== null) {toReturn['channelAvailabilities'] = 'toApiJson' in this.channelAvailabilities ? (this.channelAvailabilities as any).toApiJson() : this.channelAvailabilities;}\n return toReturn;\n }\n}\n\nexport class GetConfigurationRequest implements i.GetConfigurationRequestInterface {\n subjectParticipant: SubjectParticipant;\n\n static fromProto(proto: any): GetConfigurationRequest {\n let m = new GetConfigurationRequest();\n m = Object.assign(m, proto);\n if (proto.subjectParticipant) {m.subjectParticipant = SubjectParticipant.fromProto(proto.subjectParticipant);}\n return m;\n }\n\n constructor(kwargs?: i.GetConfigurationRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.subjectParticipant !== 'undefined' && this.subjectParticipant !== null) {toReturn['subjectParticipant'] = 'toApiJson' in this.subjectParticipant ? (this.subjectParticipant as any).toApiJson() : this.subjectParticipant;}\n return toReturn;\n }\n}\n\nexport class GetConfigurationResponse implements i.GetConfigurationResponseInterface {\n configuration: Configuration;\n\n static fromProto(proto: any): GetConfigurationResponse {\n let m = new GetConfigurationResponse();\n m = Object.assign(m, proto);\n if (proto.configuration) {m.configuration = Configuration.fromProto(proto.configuration);}\n return m;\n }\n\n constructor(kwargs?: i.GetConfigurationResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.configuration !== 'undefined' && this.configuration !== null) {toReturn['configuration'] = 'toApiJson' in this.configuration ? (this.configuration as any).toApiJson() : this.configuration;}\n return toReturn;\n }\n}\n\nexport class GetConversationByKeyRequest implements i.GetConversationByKeyRequestInterface {\n conversationKey: ConversationKey;\n\n static fromProto(proto: any): GetConversationByKeyRequest {\n let m = new GetConversationByKeyRequest();\n m = Object.assign(m, proto);\n if (proto.conversationKey) {m.conversationKey = ConversationKey.fromProto(proto.conversationKey);}\n return m;\n }\n\n constructor(kwargs?: i.GetConversationByKeyRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversationKey !== 'undefined' && this.conversationKey !== null) {toReturn['conversationKey'] = 'toApiJson' in this.conversationKey ? (this.conversationKey as any).toApiJson() : this.conversationKey;}\n return toReturn;\n }\n}\n\nexport class GetConversationByKeyResponse implements i.GetConversationByKeyResponseInterface {\n conversation: Conversation;\n\n static fromProto(proto: any): GetConversationByKeyResponse {\n let m = new GetConversationByKeyResponse();\n m = Object.assign(m, proto);\n if (proto.conversation) {m.conversation = Conversation.fromProto(proto.conversation);}\n return m;\n }\n\n constructor(kwargs?: i.GetConversationByKeyResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversation !== 'undefined' && this.conversation !== null) {toReturn['conversation'] = 'toApiJson' in this.conversation ? (this.conversation as any).toApiJson() : this.conversation;}\n return toReturn;\n }\n}\n\nexport class GetConversationSummaryRequest implements i.GetConversationSummaryRequestInterface {\n conversationId: string;\n\n static fromProto(proto: any): GetConversationSummaryRequest {\n let m = new GetConversationSummaryRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetConversationSummaryRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n return toReturn;\n }\n}\n\nexport class GetConversationSummaryResponse implements i.GetConversationSummaryResponseInterface {\n summary: string;\n\n static fromProto(proto: any): GetConversationSummaryResponse {\n let m = new GetConversationSummaryResponse();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetConversationSummaryResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.summary !== 'undefined') {toReturn['summary'] = this.summary;}\n return toReturn;\n }\n}\n\nexport class GetConversationViewsRequest implements i.GetConversationViewsRequestInterface {\n participantId: string;\n\n static fromProto(proto: any): GetConversationViewsRequest {\n let m = new GetConversationViewsRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetConversationViewsRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participantId !== 'undefined') {toReturn['participantId'] = this.participantId;}\n return toReturn;\n }\n}\n\nexport class GetConversationViewsResponse implements i.GetConversationViewsResponseInterface {\n views: View[];\n\n static fromProto(proto: any): GetConversationViewsResponse {\n let m = new GetConversationViewsResponse();\n m = Object.assign(m, proto);\n if (proto.views) {m.views = proto.views.map(View.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.GetConversationViewsResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.views !== 'undefined' && this.views !== null) {toReturn['views'] = 'toApiJson' in this.views ? (this.views as any).toApiJson() : this.views;}\n return toReturn;\n }\n}\n\nexport class GetMessageOptions implements i.GetMessageOptionsInterface {\n includeOriginalContent: boolean;\n\n static fromProto(proto: any): GetMessageOptions {\n let m = new GetMessageOptions();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetMessageOptionsInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.includeOriginalContent !== 'undefined') {toReturn['includeOriginalContent'] = this.includeOriginalContent;}\n return toReturn;\n }\n}\n\nexport class GetMessageRequest implements i.GetMessageRequestInterface {\n messageId: string;\n options: GetMessageOptions;\n\n static fromProto(proto: any): GetMessageRequest {\n let m = new GetMessageRequest();\n m = Object.assign(m, proto);\n if (proto.options) {m.options = GetMessageOptions.fromProto(proto.options);}\n return m;\n }\n\n constructor(kwargs?: i.GetMessageRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.messageId !== 'undefined') {toReturn['messageId'] = this.messageId;}\n if (typeof this.options !== 'undefined' && this.options !== null) {toReturn['options'] = 'toApiJson' in this.options ? (this.options as any).toApiJson() : this.options;}\n return toReturn;\n }\n}\n\nexport class GetMessageTemplateRequest implements i.GetMessageTemplateRequestInterface {\n templateId: string;\n hydrationOptions: GetMessageTemplateRequestHydrationOptions;\n\n static fromProto(proto: any): GetMessageTemplateRequest {\n let m = new GetMessageTemplateRequest();\n m = Object.assign(m, proto);\n if (proto.hydrationOptions) {m.hydrationOptions = GetMessageTemplateRequestHydrationOptions.fromProto(proto.hydrationOptions);}\n return m;\n }\n\n constructor(kwargs?: i.GetMessageTemplateRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.templateId !== 'undefined') {toReturn['templateId'] = this.templateId;}\n if (typeof this.hydrationOptions !== 'undefined' && this.hydrationOptions !== null) {toReturn['hydrationOptions'] = 'toApiJson' in this.hydrationOptions ? (this.hydrationOptions as any).toApiJson() : this.hydrationOptions;}\n return toReturn;\n }\n}\n\nexport class GetMessageTemplateResponse implements i.GetMessageTemplateResponseInterface {\n template: MessageTemplate;\n hydrationInformation: GetMessageTemplateResponseHydrationInformation;\n\n static fromProto(proto: any): GetMessageTemplateResponse {\n let m = new GetMessageTemplateResponse();\n m = Object.assign(m, proto);\n if (proto.template) {m.template = MessageTemplate.fromProto(proto.template);}\n if (proto.hydrationInformation) {m.hydrationInformation = GetMessageTemplateResponseHydrationInformation.fromProto(proto.hydrationInformation);}\n return m;\n }\n\n constructor(kwargs?: i.GetMessageTemplateResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.template !== 'undefined' && this.template !== null) {toReturn['template'] = 'toApiJson' in this.template ? (this.template as any).toApiJson() : this.template;}\n if (typeof this.hydrationInformation !== 'undefined' && this.hydrationInformation !== null) {toReturn['hydrationInformation'] = 'toApiJson' in this.hydrationInformation ? (this.hydrationInformation as any).toApiJson() : this.hydrationInformation;}\n return toReturn;\n }\n}\n\nexport class GetMultiConfigurationRequest implements i.GetMultiConfigurationRequestInterface {\n subjectParticipants: SubjectParticipant[];\n\n static fromProto(proto: any): GetMultiConfigurationRequest {\n let m = new GetMultiConfigurationRequest();\n m = Object.assign(m, proto);\n if (proto.subjectParticipants) {m.subjectParticipants = proto.subjectParticipants.map(SubjectParticipant.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.GetMultiConfigurationRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.subjectParticipants !== 'undefined' && this.subjectParticipants !== null) {toReturn['subjectParticipants'] = 'toApiJson' in this.subjectParticipants ? (this.subjectParticipants as any).toApiJson() : this.subjectParticipants;}\n return toReturn;\n }\n}\n\nexport class GetMultiConfigurationResponse implements i.GetMultiConfigurationResponseInterface {\n configurations: Configuration[];\n\n static fromProto(proto: any): GetMultiConfigurationResponse {\n let m = new GetMultiConfigurationResponse();\n m = Object.assign(m, proto);\n if (proto.configurations) {m.configurations = proto.configurations.map(Configuration.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.GetMultiConfigurationResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.configurations !== 'undefined' && this.configurations !== null) {toReturn['configurations'] = 'toApiJson' in this.configurations ? (this.configurations as any).toApiJson() : this.configurations;}\n return toReturn;\n }\n}\n\nexport class GetMultiConversationDetailsRequest implements i.GetMultiConversationDetailsRequestInterface {\n conversationIds: string[];\n options: FieldMask;\n\n static fromProto(proto: any): GetMultiConversationDetailsRequest {\n let m = new GetMultiConversationDetailsRequest();\n m = Object.assign(m, proto);\n if (proto.options) {m.options = FieldMask.fromProto(proto.options);}\n return m;\n }\n\n constructor(kwargs?: i.GetMultiConversationDetailsRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversationIds !== 'undefined') {toReturn['conversationIds'] = this.conversationIds;}\n if (typeof this.options !== 'undefined' && this.options !== null) {toReturn['options'] = 'toApiJson' in this.options ? (this.options as any).toApiJson() : this.options;}\n return toReturn;\n }\n}\n\nexport class GetMultiConversationDetailsResponse implements i.GetMultiConversationDetailsResponseInterface {\n conversations: GetMultiConversationDetailsResponseDetailedConversation[];\n\n static fromProto(proto: any): GetMultiConversationDetailsResponse {\n let m = new GetMultiConversationDetailsResponse();\n m = Object.assign(m, proto);\n if (proto.conversations) {m.conversations = proto.conversations.map(GetMultiConversationDetailsResponseDetailedConversation.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.GetMultiConversationDetailsResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversations !== 'undefined' && this.conversations !== null) {toReturn['conversations'] = 'toApiJson' in this.conversations ? (this.conversations as any).toApiJson() : this.conversations;}\n return toReturn;\n }\n}\n\nexport class GetMultiConversationMessageCountRequest implements i.GetMultiConversationMessageCountRequestInterface {\n conversationIds: string[];\n\n static fromProto(proto: any): GetMultiConversationMessageCountRequest {\n let m = new GetMultiConversationMessageCountRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetMultiConversationMessageCountRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversationIds !== 'undefined') {toReturn['conversationIds'] = this.conversationIds;}\n return toReturn;\n }\n}\n\nexport class GetMultiConversationMessageCountResponse implements i.GetMultiConversationMessageCountResponseInterface {\n messageCounts: ConversationMessageCount[];\n counts: {[key: string]: number};\n\n static fromProto(proto: any): GetMultiConversationMessageCountResponse {\n let m = new GetMultiConversationMessageCountResponse();\n m = Object.assign(m, proto);\n if (proto.messageCounts) {m.messageCounts = proto.messageCounts.map(ConversationMessageCount.fromProto);}\n if (proto.counts) {m.counts = Object.keys(proto.counts).reduce<any>((obj, k) => { obj[k] = parseInt(proto.counts[k], 10); return obj; }, {});}\n return m;\n }\n\n constructor(kwargs?: i.GetMultiConversationMessageCountResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.messageCounts !== 'undefined' && this.messageCounts !== null) {toReturn['messageCounts'] = 'toApiJson' in this.messageCounts ? (this.messageCounts as any).toApiJson() : this.messageCounts;}\n if (typeof this.counts !== 'undefined' && this.counts !== null) {toReturn['counts'] = 'toApiJson' in this.counts ? (this.counts as any).toApiJson() : this.counts;}\n return toReturn;\n }\n}\n\nexport class GetMultiEventsRequest implements i.GetMultiEventsRequestInterface {\n eventIds: string[];\n conversationId: string;\n\n static fromProto(proto: any): GetMultiEventsRequest {\n let m = new GetMultiEventsRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetMultiEventsRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.eventIds !== 'undefined') {toReturn['eventIds'] = this.eventIds;}\n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n return toReturn;\n }\n}\n\nexport class GetMultiEventsResponse implements i.GetMultiEventsResponseInterface {\n events: Event[];\n\n static fromProto(proto: any): GetMultiEventsResponse {\n let m = new GetMultiEventsResponse();\n m = Object.assign(m, proto);\n if (proto.events) {m.events = proto.events.map(Event.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.GetMultiEventsResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.events !== 'undefined' && this.events !== null) {toReturn['events'] = 'toApiJson' in this.events ? (this.events as any).toApiJson() : this.events;}\n return toReturn;\n }\n}\n\nexport class GetMultiMessagesRequest implements i.GetMultiMessagesRequestInterface {\n messageIds: string[];\n conversationId: string;\n languageCode: string;\n\n static fromProto(proto: any): GetMultiMessagesRequest {\n let m = new GetMultiMessagesRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetMultiMessagesRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.messageIds !== 'undefined') {toReturn['messageIds'] = this.messageIds;}\n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n if (typeof this.languageCode !== 'undefined') {toReturn['languageCode'] = this.languageCode;}\n return toReturn;\n }\n}\n\nexport class GetMultiMessagesResponse implements i.GetMultiMessagesResponseInterface {\n messages: Message[];\n\n static fromProto(proto: any): GetMultiMessagesResponse {\n let m = new GetMultiMessagesResponse();\n m = Object.assign(m, proto);\n if (proto.messages) {m.messages = proto.messages.map(Message.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.GetMultiMessagesResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.messages !== 'undefined' && this.messages !== null) {toReturn['messages'] = 'toApiJson' in this.messages ? (this.messages as any).toApiJson() : this.messages;}\n return toReturn;\n }\n}\n\nexport class GetMultiParticipantsRequest implements i.GetMultiParticipantsRequestInterface {\n participantIds: string[];\n conversationId: string;\n\n static fromProto(proto: any): GetMultiParticipantsRequest {\n let m = new GetMultiParticipantsRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetMultiParticipantsRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participantIds !== 'undefined') {toReturn['participantIds'] = this.participantIds;}\n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n return toReturn;\n }\n}\n\nexport class GetMultiParticipantsResponse implements i.GetMultiParticipantsResponseInterface {\n participants: Participant[];\n\n static fromProto(proto: any): GetMultiParticipantsResponse {\n let m = new GetMultiParticipantsResponse();\n m = Object.assign(m, proto);\n if (proto.participants) {m.participants = proto.participants.map(Participant.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.GetMultiParticipantsResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participants !== 'undefined' && this.participants !== null) {toReturn['participants'] = 'toApiJson' in this.participants ? (this.participants as any).toApiJson() : this.participants;}\n return toReturn;\n }\n}\n\nexport class GetMultiWidgetMessagesRequest implements i.GetMultiWidgetMessagesRequestInterface {\n messageIds: string[];\n\n static fromProto(proto: any): GetMultiWidgetMessagesRequest {\n let m = new GetMultiWidgetMessagesRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetMultiWidgetMessagesRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.messageIds !== 'undefined') {toReturn['messageIds'] = this.messageIds;}\n return toReturn;\n }\n}\n\nexport class GetMultiWidgetMessagesResponse implements i.GetMultiWidgetMessagesResponseInterface {\n messages: Message[];\n\n static fromProto(proto: any): GetMultiWidgetMessagesResponse {\n let m = new GetMultiWidgetMessagesResponse();\n m = Object.assign(m, proto);\n if (proto.messages) {m.messages = proto.messages.map(Message.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.GetMultiWidgetMessagesResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.messages !== 'undefined' && this.messages !== null) {toReturn['messages'] = 'toApiJson' in this.messages ? (this.messages as any).toApiJson() : this.messages;}\n return toReturn;\n }\n}\n\nexport class GetOwnerEmailRequest implements i.GetOwnerEmailRequestInterface {\n subjectParticipant: SubjectParticipant;\n\n static fromProto(proto: any): GetOwnerEmailRequest {\n let m = new GetOwnerEmailRequest();\n m = Object.assign(m, proto);\n if (proto.subjectParticipant) {m.subjectParticipant = SubjectParticipant.fromProto(proto.subjectParticipant);}\n return m;\n }\n\n constructor(kwargs?: i.GetOwnerEmailRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.subjectParticipant !== 'undefined' && this.subjectParticipant !== null) {toReturn['subjectParticipant'] = 'toApiJson' in this.subjectParticipant ? (this.subjectParticipant as any).toApiJson() : this.subjectParticipant;}\n return toReturn;\n }\n}\n\nexport class GetOwnerEmailResponse implements i.GetOwnerEmailResponseInterface {\n forwardingEmail: string;\n\n static fromProto(proto: any): GetOwnerEmailResponse {\n let m = new GetOwnerEmailResponse();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetOwnerEmailResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.forwardingEmail !== 'undefined') {toReturn['forwardingEmail'] = this.forwardingEmail;}\n return toReturn;\n }\n}\n\nexport class GetParticipantsByKeyRequest implements i.GetParticipantsByKeyRequestInterface {\n participantKey: ParticipantKey;\n\n static fromProto(proto: any): GetParticipantsByKeyRequest {\n let m = new GetParticipantsByKeyRequest();\n m = Object.assign(m, proto);\n if (proto.participantKey) {m.participantKey = ParticipantKey.fromProto(proto.participantKey);}\n return m;\n }\n\n constructor(kwargs?: i.GetParticipantsByKeyRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participantKey !== 'undefined' && this.participantKey !== null) {toReturn['participantKey'] = 'toApiJson' in this.participantKey ? (this.participantKey as any).toApiJson() : this.participantKey;}\n return toReturn;\n }\n}\n\nexport class GetParticipantsByKeyResponse implements i.GetParticipantsByKeyResponseInterface {\n participants: Participant[];\n participant: Participant;\n\n static fromProto(proto: any): GetParticipantsByKeyResponse {\n let m = new GetParticipantsByKeyResponse();\n m = Object.assign(m, proto);\n if (proto.participants) {m.participants = proto.participants.map(Participant.fromProto);}\n if (proto.participant) {m.participant = Participant.fromProto(proto.participant);}\n return m;\n }\n\n constructor(kwargs?: i.GetParticipantsByKeyResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participants !== 'undefined' && this.participants !== null) {toReturn['participants'] = 'toApiJson' in this.participants ? (this.participants as any).toApiJson() : this.participants;}\n if (typeof this.participant !== 'undefined' && this.participant !== null) {toReturn['participant'] = 'toApiJson' in this.participant ? (this.participant as any).toApiJson() : this.participant;}\n return toReturn;\n }\n}\n\nexport class GetWidgetConfigRequest implements i.GetWidgetConfigRequestInterface {\n widgetId: string;\n\n static fromProto(proto: any): GetWidgetConfigRequest {\n let m = new GetWidgetConfigRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetWidgetConfigRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.widgetId !== 'undefined') {toReturn['widgetId'] = this.widgetId;}\n return toReturn;\n }\n}\n\nexport class GetWidgetConfigResponse implements i.GetWidgetConfigResponseInterface {\n name: string;\n color: string;\n isEnabled: boolean;\n welcomeMessage: string;\n textColor: string;\n accentColor: string;\n accentTextColor: string;\n skipContactCapture: boolean;\n widgetTopSpace: number;\n assistantName: string;\n assistantAvatarUrl: string;\n\n static fromProto(proto: any): GetWidgetConfigResponse {\n let m = new GetWidgetConfigResponse();\n m = Object.assign(m, proto);\n if (proto.widgetTopSpace) {m.widgetTopSpace = parseInt(proto.widgetTopSpace, 10);}\n return m;\n }\n\n constructor(kwargs?: i.GetWidgetConfigResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.name !== 'undefined') {toReturn['name'] = this.name;}\n if (typeof this.color !== 'undefined') {toReturn['color'] = this.color;}\n if (typeof this.isEnabled !== 'undefined') {toReturn['isEnabled'] = this.isEnabled;}\n if (typeof this.welcomeMessage !== 'undefined') {toReturn['welcomeMessage'] = this.welcomeMessage;}\n if (typeof this.textColor !== 'undefined') {toReturn['textColor'] = this.textColor;}\n if (typeof this.accentColor !== 'undefined') {toReturn['accentColor'] = this.accentColor;}\n if (typeof this.accentTextColor !== 'undefined') {toReturn['accentTextColor'] = this.accentTextColor;}\n if (typeof this.skipContactCapture !== 'undefined') {toReturn['skipContactCapture'] = this.skipContactCapture;}\n if (typeof this.widgetTopSpace !== 'undefined') {toReturn['widgetTopSpace'] = this.widgetTopSpace;}\n if (typeof this.assistantName !== 'undefined') {toReturn['assistantName'] = this.assistantName;}\n if (typeof this.assistantAvatarUrl !== 'undefined') {toReturn['assistantAvatarUrl'] = this.assistantAvatarUrl;}\n return toReturn;\n }\n}\n\nexport class GetWidgetConversationResponse implements i.GetWidgetConversationResponseInterface {\n conversation: Conversation;\n\n static fromProto(proto: any): GetWidgetConversationResponse {\n let m = new GetWidgetConversationResponse();\n m = Object.assign(m, proto);\n if (proto.conversation) {m.conversation = Conversation.fromProto(proto.conversation);}\n return m;\n }\n\n constructor(kwargs?: i.GetWidgetConversationResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversation !== 'undefined' && this.conversation !== null) {toReturn['conversation'] = 'toApiJson' in this.conversation ? (this.conversation as any).toApiJson() : this.conversation;}\n return toReturn;\n }\n}\n\nexport class GetWidgetRequest implements i.GetWidgetRequestInterface {\n widgetId: string;\n\n static fromProto(proto: any): GetWidgetRequest {\n let m = new GetWidgetRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetWidgetRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.widgetId !== 'undefined') {toReturn['widgetId'] = this.widgetId;}\n return toReturn;\n }\n}\n\nexport class GetWidgetResponse implements i.GetWidgetResponseInterface {\n widget: Widget;\n\n static fromProto(proto: any): GetWidgetResponse {\n let m = new GetWidgetResponse();\n m = Object.assign(m, proto);\n if (proto.widget) {m.widget = Widget.fromProto(proto.widget);}\n return m;\n }\n\n constructor(kwargs?: i.GetWidgetResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.widget !== 'undefined' && this.widget !== null) {toReturn['widget'] = 'toApiJson' in this.widget ? (this.widget as any).toApiJson() : this.widget;}\n return toReturn;\n }\n}\n\nexport class GetMessageTemplateRequestHydrationOptionsHydrationEntity implements i.GetMessageTemplateRequestHydrationOptionsHydrationEntityInterface {\n entityType: e.GetMessageTemplateRequestHydrationOptionsHydrationEntityEntityType;\n entityId: string;\n\n static fromProto(proto: any): GetMessageTemplateRequestHydrationOptionsHydrationEntity {\n let m = new GetMessageTemplateRequestHydrationOptionsHydrationEntity();\n m = Object.assign(m, proto);\n if (proto.entityType) {m.entityType = enumStringToValue<e.GetMessageTemplateRequestHydrationOptionsHydrationEntityEntityType>(e.GetMessageTemplateRequestHydrationOptionsHydrationEntityEntityType, proto.entityType);}\n return m;\n }\n\n constructor(kwargs?: i.GetMessageTemplateRequestHydrationOptionsHydrationEntityInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.entityType !== 'undefined') {toReturn['entityType'] = this.entityType;}\n if (typeof this.entityId !== 'undefined') {toReturn['entityId'] = this.entityId;}\n return toReturn;\n }\n}\n\nexport class GetMessageTemplateResponseHydrationInformation implements i.GetMessageTemplateResponseHydrationInformationInterface {\n allFieldsHydrated: boolean;\n\n static fromProto(proto: any): GetMessageTemplateResponseHydrationInformation {\n let m = new GetMessageTemplateResponseHydrationInformation();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetMessageTemplateResponseHydrationInformationInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.allFieldsHydrated !== 'undefined') {toReturn['allFieldsHydrated'] = this.allFieldsHydrated;}\n return toReturn;\n }\n}\n\nexport class GetMessageTemplateRequestHydrationOptions implements i.GetMessageTemplateRequestHydrationOptionsInterface {\n hydrationEntities: GetMessageTemplateRequestHydrationOptionsHydrationEntity[];\n\n static fromProto(proto: any): GetMessageTemplateRequestHydrationOptions {\n let m = new GetMessageTemplateRequestHydrationOptions();\n m = Object.assign(m, proto);\n if (proto.hydrationEntities) {m.hydrationEntities = proto.hydrationEntities.map(GetMessageTemplateRequestHydrationOptionsHydrationEntity.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.GetMessageTemplateRequestHydrationOptionsInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.hydrationEntities !== 'undefined' && this.hydrationEntities !== null) {toReturn['hydrationEntities'] = 'toApiJson' in this.hydrationEntities ? (this.hydrationEntities as any).toApiJson() : this.hydrationEntities;}\n return toReturn;\n }\n}\n\nexport class ListMessageTemplateRequest implements i.ListMessageTemplateRequestInterface {\n subjectParticipant: SubjectParticipant;\n pagingOptions: PagedRequestOptions;\n\n static fromProto(proto: any): ListMessageTemplateRequest {\n let m = new ListMessageTemplateRequest();\n m = Object.assign(m, proto);\n if (proto.subjectParticipant) {m.subjectParticipant = SubjectParticipant.fromProto(proto.subjectParticipant);}\n if (proto.pagingOptions) {m.pagingOptions = PagedRequestOptions.fromProto(proto.pagingOptions);}\n return m;\n }\n\n constructor(kwargs?: i.ListMessageTemplateRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.subjectParticipant !== 'undefined' && this.subjectParticipant !== null) {toReturn['subjectParticipant'] = 'toApiJson' in this.subjectParticipant ? (this.subjectParticipant as any).toApiJson() : this.subjectParticipant;}\n if (typeof this.pagingOptions !== 'undefined' && this.pagingOptions !== null) {toReturn['pagingOptions'] = 'toApiJson' in this.pagingOptions ? (this.pagingOptions as any).toApiJson() : this.pagingOptions;}\n return toReturn;\n }\n}\n\nexport class ListMessageTemplateResponse implements i.ListMessageTemplateResponseInterface {\n templates: MessageTemplate[];\n pagingMetadata: PagedResponseMetadata;\n\n static fromProto(proto: any): ListMessageTemplateResponse {\n let m = new ListMessageTemplateResponse();\n m = Object.assign(m, proto);\n if (proto.templates) {m.templates = proto.templates.map(MessageTemplate.fromProto);}\n if (proto.pagingMetadata) {m.pagingMetadata = PagedResponseMetadata.fromProto(proto.pagingMetadata);}\n return m;\n }\n\n constructor(kwargs?: i.ListMessageTemplateResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.templates !== 'undefined' && this.templates !== null) {toReturn['templates'] = 'toApiJson' in this.templates ? (this.templates as any).toApiJson() : this.templates;}\n if (typeof this.pagingMetadata !== 'undefined' && this.pagingMetadata !== null) {toReturn['pagingMetadata'] = 'toApiJson' in this.pagingMetadata ? (this.pagingMetadata as any).toApiJson() : this.pagingMetadata;}\n return toReturn;\n }\n}\n\nexport class ListMessagesRequestListMessagesFilters implements i.ListMessagesRequestListMessagesFiltersInterface {\n conversationId: string;\n\n static fromProto(proto: any): ListMessagesRequestListMessagesFilters {\n let m = new ListMessagesRequestListMessagesFilters();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.ListMessagesRequestListMessagesFiltersInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n return toReturn;\n }\n}\n\nexport class ListMessagesRequest implements i.ListMessagesRequestInterface {\n filters: ListMessagesRequestListMessagesFilters;\n pagingOptions: PagedRequestOptions;\n\n static fromProto(proto: any): ListMessagesRequest {\n let m = new ListMessagesRequest();\n m = Object.assign(m, proto);\n if (proto.filters) {m.filters = ListMessagesRequestListMessagesFilters.fromProto(proto.filters);}\n if (proto.pagingOptions) {m.pagingOptions = PagedRequestOptions.fromProto(proto.pagingOptions);}\n return m;\n }\n\n constructor(kwargs?: i.ListMessagesRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.filters !== 'undefined' && this.filters !== null) {toReturn['filters'] = 'toApiJson' in this.filters ? (this.filters as any).toApiJson() : this.filters;}\n if (typeof this.pagingOptions !== 'undefined' && this.pagingOptions !== null) {toReturn['pagingOptions'] = 'toApiJson' in this.pagingOptions ? (this.pagingOptions as any).toApiJson() : this.pagingOptions;}\n return toReturn;\n }\n}\n\nexport class ListMessagesResponse implements i.ListMessagesResponseInterface {\n messages: Message[];\n pagingMetadata: PagedResponseMetadata;\n\n static fromProto(proto: any): ListMessagesResponse {\n let m = new ListMessagesResponse();\n m = Object.assign(m, proto);\n if (proto.messages) {m.messages = proto.messages.map(Message.fromProto);}\n if (proto.pagingMetadata) {m.pagingMetadata = PagedResponseMetadata.fromProto(proto.pagingMetadata);}\n return m;\n }\n\n constructor(kwargs?: i.ListMessagesResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.messages !== 'undefined' && this.messages !== null) {toReturn['messages'] = 'toApiJson' in this.messages ? (this.messages as any).toApiJson() : this.messages;}\n if (typeof this.pagingMetadata !== 'undefined' && this.pagingMetadata !== null) {toReturn['pagingMetadata'] = 'toApiJson' in this.pagingMetadata ? (this.pagingMetadata as any).toApiJson() : this.pagingMetadata;}\n return toReturn;\n }\n}\n\nexport class ListWidgetsRequest implements i.ListWidgetsRequestInterface {\n namespace: string;\n pagingOptions: PagedRequestOptions;\n\n static fromProto(proto: any): ListWidgetsRequest {\n let m = new ListWidgetsRequest();\n m = Object.assign(m, proto);\n if (proto.pagingOptions) {m.pagingOptions = PagedRequestOptions.fromProto(proto.pagingOptions);}\n return m;\n }\n\n constructor(kwargs?: i.ListWidgetsRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.namespace !== 'undefined') {toReturn['namespace'] = this.namespace;}\n if (typeof this.pagingOptions !== 'undefined' && this.pagingOptions !== null) {toReturn['pagingOptions'] = 'toApiJson' in this.pagingOptions ? (this.pagingOptions as any).toApiJson() : this.pagingOptions;}\n return toReturn;\n }\n}\n\nexport class ListWidgetsResponse implements i.ListWidgetsResponseInterface {\n widgets: Widget[];\n pagingMetadata: PagedResponseMetadata;\n\n static fromProto(proto: any): ListWidgetsResponse {\n let m = new ListWidgetsResponse();\n m = Object.assign(m, proto);\n if (proto.widgets) {m.widgets = proto.widgets.map(Widget.fromProto);}\n if (proto.pagingMetadata) {m.pagingMetadata = PagedResponseMetadata.fromProto(proto.pagingMetadata);}\n return m;\n }\n\n constructor(kwargs?: i.ListWidgetsResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.widgets !== 'undefined' && this.widgets !== null) {toReturn['widgets'] = 'toApiJson' in this.widgets ? (this.widgets as any).toApiJson() : this.widgets;}\n if (typeof this.pagingMetadata !== 'undefined' && this.pagingMetadata !== null) {toReturn['pagingMetadata'] = 'toApiJson' in this.pagingMetadata ? (this.pagingMetadata as any).toApiJson() : this.pagingMetadata;}\n return toReturn;\n }\n}\n\nexport class LookupConversationsRequestLookupConversationsFilters implements i.LookupConversationsRequestLookupConversationsFiltersInterface {\n internalParticipantId: string[];\n location: e.PlatformLocation;\n channel: e.ConversationChannel;\n accountGroupId: string;\n externalConversationId: string;\n originLocation: e.PlatformLocation;\n originLocationExternalId: string;\n\n static fromProto(proto: any): LookupConversationsRequestLookupConversationsFilters {\n let m = new LookupConversationsRequestLookupConversationsFilters();\n m = Object.assign(m, proto);\n if (proto.location) {m.location = enumStringToValue<e.PlatformLocation>(e.PlatformLocation, proto.location);}\n if (proto.channel) {m.channel = enumStringToValue<e.ConversationChannel>(e.ConversationChannel, proto.channel);}\n if (proto.originLocation) {m.originLocation = enumStringToValue<e.PlatformLocation>(e.PlatformLocation, proto.originLocation);}\n return m;\n }\n\n constructor(kwargs?: i.LookupConversationsRequestLookupConversationsFiltersInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.internalParticipantId !== 'undefined') {toReturn['internalParticipantId'] = this.internalParticipantId;}\n if (typeof this.location !== 'undefined') {toReturn['location'] = this.location;}\n if (typeof this.channel !== 'undefined') {toReturn['channel'] = this.channel;}\n if (typeof this.accountGroupId !== 'undefined') {toReturn['accountGroupId'] = this.accountGroupId;}\n if (typeof this.externalConversationId !== 'undefined') {toReturn['externalConversationId'] = this.externalConversationId;}\n if (typeof this.originLocation !== 'undefined') {toReturn['originLocation'] = this.originLocation;}\n if (typeof this.originLocationExternalId !== 'undefined') {toReturn['originLocationExternalId'] = this.originLocationExternalId;}\n return toReturn;\n }\n}\n\nexport class LookupConversationsRequest implements i.LookupConversationsRequestInterface {\n filters: LookupConversationsRequestLookupConversationsFilters;\n pagingOptions: PagedRequestOptions;\n\n static fromProto(proto: any): LookupConversationsRequest {\n let m = new LookupConversationsRequest();\n m = Object.assign(m, proto);\n if (proto.filters) {m.filters = LookupConversationsRequestLookupConversationsFilters.fromProto(proto.filters);}\n if (proto.pagingOptions) {m.pagingOptions = PagedRequestOptions.fromProto(proto.pagingOptions);}\n return m;\n }\n\n constructor(kwargs?: i.LookupConversationsRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.filters !== 'undefined' && this.filters !== null) {toReturn['filters'] = 'toApiJson' in this.filters ? (this.filters as any).toApiJson() : this.filters;}\n if (typeof this.pagingOptions !== 'undefined' && this.pagingOptions !== null) {toReturn['pagingOptions'] = 'toApiJson' in this.pagingOptions ? (this.pagingOptions as any).toApiJson() : this.pagingOptions;}\n return toReturn;\n }\n}\n\nexport class LookupConversationsResponse implements i.LookupConversationsResponseInterface {\n conversations: LookupConversationsResponseConversations[];\n pagingMetadata: PagedResponseMetadata;\n\n static fromProto(proto: any): LookupConversationsResponse {\n let m = new LookupConversationsResponse();\n m = Object.assign(m, proto);\n if (proto.conversations) {m.conversations = proto.conversations.map(LookupConversationsResponseConversations.fromProto);}\n if (proto.pagingMetadata) {m.pagingMetadata = PagedResponseMetadata.fromProto(proto.pagingMetadata);}\n return m;\n }\n\n constructor(kwargs?: i.LookupConversationsResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversations !== 'undefined' && this.conversations !== null) {toReturn['conversations'] = 'toApiJson' in this.conversations ? (this.conversations as any).toApiJson() : this.conversations;}\n if (typeof this.pagingMetadata !== 'undefined' && this.pagingMetadata !== null) {toReturn['pagingMetadata'] = 'toApiJson' in this.pagingMetadata ? (this.pagingMetadata as any).toApiJson() : this.pagingMetadata;}\n return toReturn;\n }\n}\n\nexport class Media implements i.MediaInterface {\n mediaContentType: string;\n mediaLocationPath: string;\n mediaFileName: string;\n fileSize: number;\n\n static fromProto(proto: any): Media {\n let m = new Media();\n m = Object.assign(m, proto);\n if (proto.fileSize) {m.fileSize = parseInt(proto.fileSize, 10);}\n return m;\n }\n\n constructor(kwargs?: i.MediaInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.mediaContentType !== 'undefined') {toReturn['mediaContentType'] = this.mediaContentType;}\n if (typeof this.mediaLocationPath !== 'undefined') {toReturn['mediaLocationPath'] = this.mediaLocationPath;}\n if (typeof this.mediaFileName !== 'undefined') {toReturn['mediaFileName'] = this.mediaFileName;}\n if (typeof this.fileSize !== 'undefined') {toReturn['fileSize'] = this.fileSize;}\n return toReturn;\n }\n}\n\nexport class Metadata implements i.MetadataInterface {\n identifier: e.MetadataIdentifier;\n data: {[key: string]: string};\n\n static fromProto(proto: any): Metadata {\n let m = new Metadata();\n m = Object.assign(m, proto);\n if (proto.identifier) {m.identifier = enumStringToValue<e.MetadataIdentifier>(e.MetadataIdentifier, proto.identifier);}\n if (proto.data) {m.data = Object.keys(proto.data).reduce<any>((obj, k) => { obj[k] = proto.data[k]; return obj; }, {});}\n return m;\n }\n\n constructor(kwargs?: i.MetadataInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.identifier !== 'undefined') {toReturn['identifier'] = this.identifier;}\n if (typeof this.data !== 'undefined' && this.data !== null) {toReturn['data'] = 'toApiJson' in this.data ? (this.data as any).toApiJson() : this.data;}\n return toReturn;\n }\n}\n\nexport class ReceiveMessageRequestMetadataEntry implements i.ReceiveMessageRequestMetadataEntryInterface {\n key: string;\n value: string;\n\n static fromProto(proto: any): ReceiveMessageRequestMetadataEntry {\n let m = new ReceiveMessageRequestMetadataEntry();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.ReceiveMessageRequestMetadataEntryInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.key !== 'undefined') {toReturn['key'] = this.key;}\n if (typeof this.value !== 'undefined') {toReturn['value'] = this.value;}\n return toReturn;\n }\n}\n\nexport class NewInboxLeadCapturedRequest implements i.NewInboxLeadCapturedRequestInterface {\n namespace: string;\n parentNamespace: string;\n conversationId: string;\n conversationSummary: string;\n capturedLead: CapturedLead;\n source: string;\n capturedAt: Date;\n message: string;\n initiatorId: string;\n\n static fromProto(proto: any): NewInboxLeadCapturedRequest {\n let m = new NewInboxLeadCapturedRequest();\n m = Object.assign(m, proto);\n if (proto.capturedLead) {m.capturedLead = CapturedLead.fromProto(proto.capturedLead);}\n if (proto.capturedAt) {m.capturedAt = new Date(proto.capturedAt);}\n return m;\n }\n\n constructor(kwargs?: i.NewInboxLeadCapturedRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.namespace !== 'undefined') {toReturn['namespace'] = this.namespace;}\n if (typeof this.parentNamespace !== 'undefined') {toReturn['parentNamespace'] = this.parentNamespace;}\n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n if (typeof this.conversationSummary !== 'undefined') {toReturn['conversationSummary'] = this.conversationSummary;}\n if (typeof this.capturedLead !== 'undefined' && this.capturedLead !== null) {toReturn['capturedLead'] = 'toApiJson' in this.capturedLead ? (this.capturedLead as any).toApiJson() : this.capturedLead;}\n if (typeof this.source !== 'undefined') {toReturn['source'] = this.source;}\n if (typeof this.capturedAt !== 'undefined' && this.capturedAt !== null) {toReturn['capturedAt'] = 'toApiJson' in this.capturedAt ? (this.capturedAt as any).toApiJson() : this.capturedAt;}\n if (typeof this.message !== 'undefined') {toReturn['message'] = this.message;}\n if (typeof this.initiatorId !== 'undefined') {toReturn['initiatorId'] = this.initiatorId;}\n return toReturn;\n }\n}\n\nexport class NewInboxLeadCapturedResponse implements i.NewInboxLeadCapturedResponseInterface {\n\n static fromProto(proto: any): NewInboxLeadCapturedResponse {\n let m = new NewInboxLeadCapturedResponse();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.NewInboxLeadCapturedResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n return toReturn;\n }\n}\n\nexport class PagedRequestOptions implements i.PagedRequestOptionsInterface {\n cursor: string;\n pageSize: number;\n\n static fromProto(proto: any): PagedRequestOptions {\n let m = new PagedRequestOptions();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.PagedRequestOptionsInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.cursor !== 'undefined') {toReturn['cursor'] = this.cursor;}\n if (typeof this.pageSize !== 'undefined') {toReturn['pageSize'] = this.pageSize;}\n return toReturn;\n }\n}\n\nexport class PagedResponseMetadata implements i.PagedResponseMetadataInterface {\n nextCursor: string;\n hasMore: boolean;\n totalResults: number;\n\n static fromProto(proto: any): PagedResponseMetadata {\n let m = new PagedResponseMetadata();\n m = Object.assign(m, proto);\n if (proto.totalResults) {m.totalResults = parseInt(proto.totalResults, 10);}\n return m;\n }\n\n constructor(kwargs?: i.PagedResponseMetadataInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.nextCursor !== 'undefined') {toReturn['nextCursor'] = this.nextCursor;}\n if (typeof this.hasMore !== 'undefined') {toReturn['hasMore'] = this.hasMore;}\n if (typeof this.totalResults !== 'undefined') {toReturn['totalResults'] = this.totalResults;}\n return toReturn;\n }\n}\n\nexport class ReceiveMessageRequest implements i.ReceiveMessageRequestInterface {\n senderId: string;\n recipientId: string;\n conversationId: string;\n messageId: string;\n body: string;\n channel: e.ConversationChannel;\n type: e.MessageType;\n location: e.PlatformLocation;\n partnerId: string;\n accountGroupId: string;\n metadata: {[key: string]: string};\n media: string[];\n\n static fromProto(proto: any): ReceiveMessageRequest {\n let m = new ReceiveMessageRequest();\n m = Object.assign(m, proto);\n if (proto.channel) {m.channel = enumStringToValue<e.ConversationChannel>(e.ConversationChannel, proto.channel);}\n if (proto.type) {m.type = enumStringToValue<e.MessageType>(e.MessageType, proto.type);}\n if (proto.location) {m.location = enumStringToValue<e.PlatformLocation>(e.PlatformLocation, proto.location);}\n if (proto.metadata) {m.metadata = Object.keys(proto.metadata).reduce<any>((obj, k) => { obj[k] = proto.metadata[k]; return obj; }, {});}\n return m;\n }\n\n constructor(kwargs?: i.ReceiveMessageRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.senderId !== 'undefined') {toReturn['senderId'] = this.senderId;}\n if (typeof this.recipientId !== 'undefined') {toReturn['recipientId'] = this.recipientId;}\n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n if (typeof this.messageId !== 'undefined') {toReturn['messageId'] = this.messageId;}\n if (typeof this.body !== 'undefined') {toReturn['body'] = this.body;}\n if (typeof this.channel !== 'undefined') {toReturn['channel'] = this.channel;}\n if (typeof this.type !== 'undefined') {toReturn['type'] = this.type;}\n if (typeof this.location !== 'undefined') {toReturn['location'] = this.location;}\n if (typeof this.partnerId !== 'undefined') {toReturn['partnerId'] = this.partnerId;}\n if (typeof this.accountGroupId !== 'undefined') {toReturn['accountGroupId'] = this.accountGroupId;}\n if (typeof this.metadata !== 'undefined' && this.metadata !== null) {toReturn['metadata'] = 'toApiJson' in this.metadata ? (this.metadata as any).toApiJson() : this.metadata;}\n if (typeof this.media !== 'undefined') {toReturn['media'] = this.media;}\n return toReturn;\n }\n}\n\nexport class RemoveConversationFromConversationViewRequest implements i.RemoveConversationFromConversationViewRequestInterface {\n viewId: string;\n conversationId: string;\n participantId: string;\n\n static fromProto(proto: any): RemoveConversationFromConversationViewRequest {\n let m = new RemoveConversationFromConversationViewRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.RemoveConversationFromConversationViewRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.viewId !== 'undefined') {toReturn['viewId'] = this.viewId;}\n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n if (typeof this.participantId !== 'undefined') {toReturn['participantId'] = this.participantId;}\n return toReturn;\n }\n}\n\nexport class SearchConversationsRequest implements i.SearchConversationsRequestInterface {\n partnerId: string;\n accountGroupId: string;\n location: e.PlatformLocation;\n searchTerm: string;\n pagingOptions: PagedRequestOptions;\n\n static fromProto(proto: any): SearchConversationsRequest {\n let m = new SearchConversationsRequest();\n m = Object.assign(m, proto);\n if (proto.location) {m.location = enumStringToValue<e.PlatformLocation>(e.PlatformLocation, proto.location);}\n if (proto.pagingOptions) {m.pagingOptions = PagedRequestOptions.fromProto(proto.pagingOptions);}\n return m;\n }\n\n constructor(kwargs?: i.SearchConversationsRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.partnerId !== 'undefined') {toReturn['partnerId'] = this.partnerId;}\n if (typeof this.accountGroupId !== 'undefined') {toReturn['accountGroupId'] = this.accountGroupId;}\n if (typeof this.location !== 'undefined') {toReturn['location'] = this.location;}\n if (typeof this.searchTerm !== 'undefined') {toReturn['searchTerm'] = this.searchTerm;}\n if (typeof this.pagingOptions !== 'undefined' && this.pagingOptions !== null) {toReturn['pagingOptions'] = 'toApiJson' in this.pagingOptions ? (this.pagingOptions as any).toApiJson() : this.pagingOptions;}\n return toReturn;\n }\n}\n\nexport class SearchConversationsResponse implements i.SearchConversationsResponseInterface {\n conversations: SearchConversationsResponseDetailedConversation[];\n pagingMetadata: PagedResponseMetadata;\n\n static fromProto(proto: any): SearchConversationsResponse {\n let m = new SearchConversationsResponse();\n m = Object.assign(m, proto);\n if (proto.conversations) {m.conversations = proto.conversations.map(SearchConversationsResponseDetailedConversation.fromProto);}\n if (proto.pagingMetadata) {m.pagingMetadata = PagedResponseMetadata.fromProto(proto.pagingMetadata);}\n return m;\n }\n\n constructor(kwargs?: i.SearchConversationsResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversations !== 'undefined' && this.conversations !== null) {toReturn['conversations'] = 'toApiJson' in this.conversations ? (this.conversations as any).toApiJson() : this.conversations;}\n if (typeof this.pagingMetadata !== 'undefined' && this.pagingMetadata !== null) {toReturn['pagingMetadata'] = 'toApiJson' in this.pagingMetadata ? (this.pagingMetadata as any).toApiJson() : this.pagingMetadata;}\n return toReturn;\n }\n}\n\nexport class SendMessageRequest implements i.SendMessageRequestInterface {\n sender: Participant;\n recipient: Participant;\n conversationId: string;\n type: e.MessageType;\n body: string;\n metadata: Metadata[];\n originLocation: e.PlatformLocation;\n media: Media[];\n channel: e.ConversationChannel;\n\n static fromProto(proto: any): SendMessageRequest {\n let m = new SendMessageRequest();\n m = Object.assign(m, proto);\n if (proto.sender) {m.sender = Participant.fromProto(proto.sender);}\n if (proto.recipient) {m.recipient = Participant.fromProto(proto.recipient);}\n if (proto.type) {m.type = enumStringToValue<e.MessageType>(e.MessageType, proto.type);}\n if (proto.metadata) {m.metadata = proto.metadata.map(Metadata.fromProto);}\n if (proto.originLocation) {m.originLocation = enumStringToValue<e.PlatformLocation>(e.PlatformLocation, proto.originLocation);}\n if (proto.media) {m.media = proto.media.map(Media.fromProto);}\n if (proto.channel) {m.channel = enumStringToValue<e.ConversationChannel>(e.ConversationChannel, proto.channel);}\n return m;\n }\n\n constructor(kwargs?: i.SendMessageRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.sender !== 'undefined' && this.sender !== null) {toReturn['sender'] = 'toApiJson' in this.sender ? (this.sender as any).toApiJson() : this.sender;}\n if (typeof this.recipient !== 'undefined' && this.recipient !== null) {toReturn['recipient'] = 'toApiJson' in this.recipient ? (this.recipient as any).toApiJson() : this.recipient;}\n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n if (typeof this.type !== 'undefined') {toReturn['type'] = this.type;}\n if (typeof this.body !== 'undefined') {toReturn['body'] = this.body;}\n if (typeof this.metadata !== 'undefined' && this.metadata !== null) {toReturn['metadata'] = 'toApiJson' in this.metadata ? (this.metadata as any).toApiJson() : this.metadata;}\n if (typeof this.originLocation !== 'undefined') {toReturn['originLocation'] = this.originLocation;}\n if (typeof this.media !== 'undefined' && this.media !== null) {toReturn['media'] = 'toApiJson' in this.media ? (this.media as any).toApiJson() : this.media;}\n if (typeof this.channel !== 'undefined') {toReturn['channel'] = this.channel;}\n return toReturn;\n }\n}\n\nexport class SendMessageResponse implements i.SendMessageResponseInterface {\n workflowId: string;\n messageId: string;\n\n static fromProto(proto: any): SendMessageResponse {\n let m = new SendMessageResponse();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.SendMessageResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.workflowId !== 'undefined') {toReturn['workflowId'] = this.workflowId;}\n if (typeof this.messageId !== 'undefined') {toReturn['messageId'] = this.messageId;}\n return toReturn;\n }\n}\n\nexport class SendWidgetMessageRequest implements i.SendWidgetMessageRequestInterface {\n type: e.MessageType;\n body: string;\n metadata: Metadata[];\n location: e.PlatformLocation;\n\n static fromProto(proto: any): SendWidgetMessageRequest {\n let m = new SendWidgetMessageRequest();\n m = Object.assign(m, proto);\n if (proto.type) {m.type = enumStringToValue<e.MessageType>(e.MessageType, proto.type);}\n if (proto.metadata) {m.metadata = proto.metadata.map(Metadata.fromProto);}\n if (proto.location) {m.location = enumStringToValue<e.PlatformLocation>(e.PlatformLocation, proto.location);}\n return m;\n }\n\n constructor(kwargs?: i.SendWidgetMessageRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.type !== 'undefined') {toReturn['type'] = this.type;}\n if (typeof this.body !== 'undefined') {toReturn['body'] = this.body;}\n if (typeof this.metadata !== 'undefined' && this.metadata !== null) {toReturn['metadata'] = 'toApiJson' in this.metadata ? (this.metadata as any).toApiJson() : this.metadata;}\n if (typeof this.location !== 'undefined') {toReturn['location'] = this.location;}\n return toReturn;\n }\n}\n\nexport class SendWidgetMessageResponse implements i.SendWidgetMessageResponseInterface {\n messageId: string;\n\n static fromProto(proto: any): SendWidgetMessageResponse {\n let m = new SendWidgetMessageResponse();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.SendWidgetMessageResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.messageId !== 'undefined') {toReturn['messageId'] = this.messageId;}\n return toReturn;\n }\n}\n\nexport class SetLastSeenRequest implements i.SetLastSeenRequestInterface {\n conversationId: string;\n participant: Participant;\n status: e.SetLastSeenRequestStatus;\n\n static fromProto(proto: any): SetLastSeenRequest {\n let m = new SetLastSeenRequest();\n m = Object.assign(m, proto);\n if (proto.participant) {m.participant = Participant.fromProto(proto.participant);}\n if (proto.status) {m.status = enumStringToValue<e.SetLastSeenRequestStatus>(e.SetLastSeenRequestStatus, proto.status);}\n return m;\n }\n\n constructor(kwargs?: i.SetLastSeenRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n if (typeof this.participant !== 'undefined' && this.participant !== null) {toReturn['participant'] = 'toApiJson' in this.participant ? (this.participant as any).toApiJson() : this.participant;}\n if (typeof this.status !== 'undefined') {toReturn['status'] = this.status;}\n return toReturn;\n }\n}\n\nexport class SetLastSeenResponse implements i.SetLastSeenResponseInterface {\n participant: Participant;\n\n static fromProto(proto: any): SetLastSeenResponse {\n let m = new SetLastSeenResponse();\n m = Object.assign(m, proto);\n if (proto.participant) {m.participant = Participant.fromProto(proto.participant);}\n return m;\n }\n\n constructor(kwargs?: i.SetLastSeenResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participant !== 'undefined' && this.participant !== null) {toReturn['participant'] = 'toApiJson' in this.participant ? (this.participant as any).toApiJson() : this.participant;}\n return toReturn;\n }\n}\n\nexport class UpdateConversationRequest implements i.UpdateConversationRequestInterface {\n conversation: Conversation;\n fieldMask: FieldMask;\n\n static fromProto(proto: any): UpdateConversationRequest {\n let m = new UpdateConversationRequest();\n m = Object.assign(m, proto);\n if (proto.conversation) {m.conversation = Conversation.fromProto(proto.conversation);}\n if (proto.fieldMask) {m.fieldMask = FieldMask.fromProto(proto.fieldMask);}\n return m;\n }\n\n constructor(kwargs?: i.UpdateConversationRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversation !== 'undefined' && this.conversation !== null) {toReturn['conversation'] = 'toApiJson' in this.conversation ? (this.conversation as any).toApiJson() : this.conversation;}\n if (typeof this.fieldMask !== 'undefined' && this.fieldMask !== null) {toReturn['fieldMask'] = 'toApiJson' in this.fieldMask ? (this.fieldMask as any).toApiJson() : this.fieldMask;}\n return toReturn;\n }\n}\n\nexport class UpdateConversationResponse implements i.UpdateConversationResponseInterface {\n conversation: Conversation;\n\n static fromProto(proto: any): UpdateConversationResponse {\n let m = new UpdateConversationResponse();\n m = Object.assign(m, proto);\n if (proto.conversation) {m.conversation = Conversation.fromProto(proto.conversation);}\n return m;\n }\n\n constructor(kwargs?: i.UpdateConversationResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversation !== 'undefined' && this.conversation !== null) {toReturn['conversation'] = 'toApiJson' in this.conversation ? (this.conversation as any).toApiJson() : this.conversation;}\n return toReturn;\n }\n}\n\nexport class UpdateMessageStatusRequest implements i.UpdateMessageStatusRequestInterface {\n messageId: string;\n participantId: string;\n status: e.MessageStatus;\n\n static fromProto(proto: any): UpdateMessageStatusRequest {\n let m = new UpdateMessageStatusRequest();\n m = Object.assign(m, proto);\n if (proto.status) {m.status = enumStringToValue<e.MessageStatus>(e.MessageStatus, proto.status);}\n return m;\n }\n\n constructor(kwargs?: i.UpdateMessageStatusRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.messageId !== 'undefined') {toReturn['messageId'] = this.messageId;}\n if (typeof this.participantId !== 'undefined') {toReturn['participantId'] = this.participantId;}\n if (typeof this.status !== 'undefined') {toReturn['status'] = this.status;}\n return toReturn;\n }\n}\n\nexport class UpdateMessageTemplateRequest implements i.UpdateMessageTemplateRequestInterface {\n template: MessageTemplate;\n fieldMask: FieldMask;\n\n static fromProto(proto: any): UpdateMessageTemplateRequest {\n let m = new UpdateMessageTemplateRequest();\n m = Object.assign(m, proto);\n if (proto.template) {m.template = MessageTemplate.fromProto(proto.template);}\n if (proto.fieldMask) {m.fieldMask = FieldMask.fromProto(proto.fieldMask);}\n return m;\n }\n\n constructor(kwargs?: i.UpdateMessageTemplateRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.template !== 'undefined' && this.template !== null) {toReturn['template'] = 'toApiJson' in this.template ? (this.template as any).toApiJson() : this.template;}\n if (typeof this.fieldMask !== 'undefined' && this.fieldMask !== null) {toReturn['fieldMask'] = 'toApiJson' in this.fieldMask ? (this.fieldMask as any).toApiJson() : this.fieldMask;}\n return toReturn;\n }\n}\n\nexport class UpdateMessageTemplateResponse implements i.UpdateMessageTemplateResponseInterface {\n template: MessageTemplate;\n\n static fromProto(proto: any): UpdateMessageTemplateResponse {\n let m = new UpdateMessageTemplateResponse();\n m = Object.assign(m, proto);\n if (proto.template) {m.template = MessageTemplate.fromProto(proto.template);}\n return m;\n }\n\n constructor(kwargs?: i.UpdateMessageTemplateResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.template !== 'undefined' && this.template !== null) {toReturn['template'] = 'toApiJson' in this.template ? (this.template as any).toApiJson() : this.template;}\n return toReturn;\n }\n}\n\nexport class UpdateWidgetRequest implements i.UpdateWidgetRequestInterface {\n widgetId: string;\n name: string;\n color: string;\n allowedUrls: string[];\n welcomeMessage: string;\n isEnabled: boolean;\n textColor: string;\n accentColor: string;\n accentTextColor: string;\n skipContactCapture: boolean;\n additionalPromptInstructions: string;\n assistantName: string;\n assistantAvatarUrl: string;\n fieldMask: FieldMask;\n\n static fromProto(proto: any): UpdateWidgetRequest {\n let m = new UpdateWidgetRequest();\n m = Object.assign(m, proto);\n if (proto.fieldMask) {m.fieldMask = FieldMask.fromProto(proto.fieldMask);}\n return m;\n }\n\n constructor(kwargs?: i.UpdateWidgetRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.widgetId !== 'undefined') {toReturn['widgetId'] = this.widgetId;}\n if (typeof this.name !== 'undefined') {toReturn['name'] = this.name;}\n if (typeof this.color !== 'undefined') {toReturn['color'] = this.color;}\n if (typeof this.allowedUrls !== 'undefined') {toReturn['allowedUrls'] = this.allowedUrls;}\n if (typeof this.welcomeMessage !== 'undefined') {toReturn['welcomeMessage'] = this.welcomeMessage;}\n if (typeof this.isEnabled !== 'undefined') {toReturn['isEnabled'] = this.isEnabled;}\n if (typeof this.textColor !== 'undefined') {toReturn['textColor'] = this.textColor;}\n if (typeof this.accentColor !== 'undefined') {toReturn['accentColor'] = this.accentColor;}\n if (typeof this.accentTextColor !== 'undefined') {toReturn['accentTextColor'] = this.accentTextColor;}\n if (typeof this.skipContactCapture !== 'undefined') {toReturn['skipContactCapture'] = this.skipContactCapture;}\n if (typeof this.additionalPromptInstructions !== 'undefined') {toReturn['additionalPromptInstructions'] = this.additionalPromptInstructions;}\n if (typeof this.assistantName !== 'undefined') {toReturn['assistantName'] = this.assistantName;}\n if (typeof this.assistantAvatarUrl !== 'undefined') {toReturn['assistantAvatarUrl'] = this.assistantAvatarUrl;}\n if (typeof this.fieldMask !== 'undefined' && this.fieldMask !== null) {toReturn['fieldMask'] = 'toApiJson' in this.fieldMask ? (this.fieldMask as any).toApiJson() : this.fieldMask;}\n return toReturn;\n }\n}\n\nexport class UpdateWidgetResponse implements i.UpdateWidgetResponseInterface {\n widget: Widget;\n\n static fromProto(proto: any): UpdateWidgetResponse {\n let m = new UpdateWidgetResponse();\n m = Object.assign(m, proto);\n if (proto.widget) {m.widget = Widget.fromProto(proto.widget);}\n return m;\n }\n\n constructor(kwargs?: i.UpdateWidgetResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.widget !== 'undefined' && this.widget !== null) {toReturn['widget'] = 'toApiJson' in this.widget ? (this.widget as any).toApiJson() : this.widget;}\n return toReturn;\n }\n}\n\nexport class UpsertConfigurationRequest implements i.UpsertConfigurationRequestInterface {\n configuration: Configuration;\n fieldMask: FieldMask;\n\n static fromProto(proto: any): UpsertConfigurationRequest {\n let m = new UpsertConfigurationRequest();\n m = Object.assign(m, proto);\n if (proto.configuration) {m.configuration = Configuration.fromProto(proto.configuration);}\n if (proto.fieldMask) {m.fieldMask = FieldMask.fromProto(proto.fieldMask);}\n return m;\n }\n\n constructor(kwargs?: i.UpsertConfigurationRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.configuration !== 'undefined' && this.configuration !== null) {toReturn['configuration'] = 'toApiJson' in this.configuration ? (this.configuration as any).toApiJson() : this.configuration;}\n if (typeof this.fieldMask !== 'undefined' && this.fieldMask !== null) {toReturn['fieldMask'] = 'toApiJson' in this.fieldMask ? (this.fieldMask as any).toApiJson() : this.fieldMask;}\n return toReturn;\n }\n}\n\nexport class UpsertConfigurationResponse implements i.UpsertConfigurationResponseInterface {\n configuration: Configuration;\n\n static fromProto(proto: any): UpsertConfigurationResponse {\n let m = new UpsertConfigurationResponse();\n m = Object.assign(m, proto);\n if (proto.configuration) {m.configuration = Configuration.fromProto(proto.configuration);}\n return m;\n }\n\n constructor(kwargs?: i.UpsertConfigurationResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.configuration !== 'undefined' && this.configuration !== null) {toReturn['configuration'] = 'toApiJson' in this.configuration ? (this.configuration as any).toApiJson() : this.configuration;}\n return toReturn;\n }\n}\n\nexport class UpsertProductFeatureRequest implements i.UpsertProductFeatureRequestInterface {\n productFeature: ProductFeature;\n fieldMask: FieldMask;\n subjectParticipant: SubjectParticipant;\n\n static fromProto(proto: any): UpsertProductFeatureRequest {\n let m = new UpsertProductFeatureRequest();\n m = Object.assign(m, proto);\n if (proto.productFeature) {m.productFeature = ProductFeature.fromProto(proto.productFeature);}\n if (proto.fieldMask) {m.fieldMask = FieldMask.fromProto(proto.fieldMask);}\n if (proto.subjectParticipant) {m.subjectParticipant = SubjectParticipant.fromProto(proto.subjectParticipant);}\n return m;\n }\n\n constructor(kwargs?: i.UpsertProductFeatureRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.productFeature !== 'undefined' && this.productFeature !== null) {toReturn['productFeature'] = 'toApiJson' in this.productFeature ? (this.productFeature as any).toApiJson() : this.productFeature;}\n if (typeof this.fieldMask !== 'undefined' && this.fieldMask !== null) {toReturn['fieldMask'] = 'toApiJson' in this.fieldMask ? (this.fieldMask as any).toApiJson() : this.fieldMask;}\n if (typeof this.subjectParticipant !== 'undefined' && this.subjectParticipant !== null) {toReturn['subjectParticipant'] = 'toApiJson' in this.subjectParticipant ? (this.subjectParticipant as any).toApiJson() : this.subjectParticipant;}\n return toReturn;\n }\n}\n\nexport class UpsertProductFeatureResponse implements i.UpsertProductFeatureResponseInterface {\n productFeature: ProductFeature;\n\n static fromProto(proto: any): UpsertProductFeatureResponse {\n let m = new UpsertProductFeatureResponse();\n m = Object.assign(m, proto);\n if (proto.productFeature) {m.productFeature = ProductFeature.fromProto(proto.productFeature);}\n return m;\n }\n\n constructor(kwargs?: i.UpsertProductFeatureResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.productFeature !== 'undefined' && this.productFeature !== null) {toReturn['productFeature'] = 'toApiJson' in this.productFeature ? (this.productFeature as any).toApiJson() : this.productFeature;}\n return toReturn;\n }\n}\n\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects Index.\n// *********************************\nexport {\n NamespaceDetail,\n SubjectParticipant,\n} from './common';\n\nexport {\n Conversation,\n ConversationKey,\n LastSeenByParticipant,\n} from './conversation';\n\nexport {\n KeyValuePair,\n Message,\n ParticipantMessageStatus,\n SendStatus,\n} from './message';\n\nexport {\n Address,\n Participant,\n ParticipantKey,\n} from './participant';\n\nexport {\n Access,\n} from './annotations';\n\nexport {\n Configuration,\n ProductFeature,\n} from './configuration';\n\nexport {\n View,\n} from './conversation-view';\n\nexport {\n DataSources,\n Widget,\n} from './widget';\n\nexport {\n FieldMask,\n} from './field-mask';\n\nexport {\n MessageTemplate,\n} from './message-template';\n\nexport {\n AISystemMessage,\n GetAISystemMessageRequest,\n GetAISystemMessageResponse,\n ListAISystemMessagesRequest,\n ListAISystemMessagesResponse,\n UpsertAISystemMessageRequest,\n} from './aisystemmessage';\n\nexport {\n Event,\n} from './event';\n\nexport {\n AddConversationToConversationViewRequest,\n AddMultiParticipantsRequest,\n AddMultiParticipantsResponse,\n CapturedLead,\n ChannelAvailability,\n ChannelStatus,\n ConversationMessageCount,\n LookupConversationsResponseConversations,\n GetMultiConversationMessageCountResponseCountsEntry,\n CreateConversationRequest,\n CreateConversationResponse,\n CreateMessageTemplateRequest,\n CreateMessageTemplateResponse,\n CreateMultiMessagesRequest,\n CreateWidgetConversationRequest,\n CreateWidgetConversationResponse,\n CreateWidgetRequest,\n CreateWidgetResponse,\n MetadataDataEntry,\n DeleteConversationRequest,\n DeleteMessageRequest,\n DeleteMessageTemplateRequest,\n DeleteWidgetRequest,\n GetMultiConversationDetailsResponseDetailedConversation,\n SearchConversationsResponseDetailedConversation,\n EvaluateResponseRequest,\n GetAvailableChannelsForConversationRequest,\n GetAvailableChannelsForConversationResponse,\n GetConfigurationRequest,\n GetConfigurationResponse,\n GetConversationByKeyRequest,\n GetConversationByKeyResponse,\n GetConversationSummaryRequest,\n GetConversationSummaryResponse,\n GetConversationViewsRequest,\n GetConversationViewsResponse,\n GetMessageOptions,\n GetMessageRequest,\n GetMessageTemplateRequest,\n GetMessageTemplateResponse,\n GetMultiConfigurationRequest,\n GetMultiConfigurationResponse,\n GetMultiConversationDetailsRequest,\n GetMultiConversationDetailsResponse,\n GetMultiConversationMessageCountRequest,\n GetMultiConversationMessageCountResponse,\n GetMultiEventsRequest,\n GetMultiEventsResponse,\n GetMultiMessagesRequest,\n GetMultiMessagesResponse,\n GetMultiParticipantsRequest,\n GetMultiParticipantsResponse,\n GetMultiWidgetMessagesRequest,\n GetMultiWidgetMessagesResponse,\n GetOwnerEmailRequest,\n GetOwnerEmailResponse,\n GetParticipantsByKeyRequest,\n GetParticipantsByKeyResponse,\n GetWidgetConfigRequest,\n GetWidgetConfigResponse,\n GetWidgetConversationResponse,\n GetWidgetRequest,\n GetWidgetResponse,\n GetMessageTemplateRequestHydrationOptionsHydrationEntity,\n GetMessageTemplateResponseHydrationInformation,\n GetMessageTemplateRequestHydrationOptions,\n ListMessageTemplateRequest,\n ListMessageTemplateResponse,\n ListMessagesRequestListMessagesFilters,\n ListMessagesRequest,\n ListMessagesResponse,\n ListWidgetsRequest,\n ListWidgetsResponse,\n LookupConversationsRequestLookupConversationsFilters,\n LookupConversationsRequest,\n LookupConversationsResponse,\n Media,\n Metadata,\n ReceiveMessageRequestMetadataEntry,\n NewInboxLeadCapturedRequest,\n NewInboxLeadCapturedResponse,\n PagedRequestOptions,\n PagedResponseMetadata,\n ReceiveMessageRequest,\n RemoveConversationFromConversationViewRequest,\n SearchConversationsRequest,\n SearchConversationsResponse,\n SendMessageRequest,\n SendMessageResponse,\n SendWidgetMessageRequest,\n SendWidgetMessageResponse,\n SetLastSeenRequest,\n SetLastSeenResponse,\n UpdateConversationRequest,\n UpdateConversationResponse,\n UpdateMessageStatusRequest,\n UpdateMessageTemplateRequest,\n UpdateMessageTemplateResponse,\n UpdateWidgetRequest,\n UpdateWidgetResponse,\n UpsertConfigurationRequest,\n UpsertConfigurationResponse,\n UpsertProductFeatureRequest,\n UpsertProductFeatureResponse,\n} from './api';\n\n","import { Injectable } from '@angular/core';\n\ndeclare const window: any;\nconst environment: string = (window ? window['environment'] : 'prod') ?? 'prod';\nconst hostMap: { [key: string]: string } = {\n 'local': 'conversation-api.vendasta-local.com',\n 'test': '',\n 'demo': 'conversation-demo.apigateway.co',\n 'prod': 'conversation-prod.apigateway.co',\n 'production': 'conversation-prod.apigateway.co',\n};\n\n@Injectable({providedIn: 'root'})\nexport class HostService {\n get host(): string {\n return hostMap[environment.toLowerCase()];\n }\n\n get hostWithScheme(): string {\n return 'https://' + this.host;\n }\n}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nimport {Injectable} from '@angular/core';\nimport {\n GetAISystemMessageRequest,\n GetAISystemMessageResponse,\n ListAISystemMessagesRequest,\n ListAISystemMessagesResponse,\n UpsertAISystemMessageRequest,\n} from './objects/';\nimport {\n GetAISystemMessageRequestInterface,\n GetAISystemMessageResponseInterface,\n ListAISystemMessagesRequestInterface,\n ListAISystemMessagesResponseInterface,\n UpsertAISystemMessageRequestInterface,\n} from './interfaces/';\nimport {HttpHeaders, HttpClient, HttpResponse} from '@angular/common/http';\nimport {inject} from '@angular/core';\nimport {HostService} from '../_generated/host.service';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n@Injectable({providedIn: 'root'})\nexport class AISystemMessageApiService {\n private readonly hostService = inject(HostService);\n private readonly http = inject(HttpClient);\n private _host = this.hostService.hostWithScheme;\n\n private apiOptions(): {headers: HttpHeaders, withCredentials: boolean} {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n\n upsertAiSystemMessage(r: UpsertAISystemMessageRequest | UpsertAISystemMessageRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<UpsertAISystemMessageRequest>r).toApiJson) ? (<UpsertAISystemMessageRequest>r) : new UpsertAISystemMessageRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.AISystemMessageService/UpsertAISystemMessage\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n getAiSystemMessage(r: GetAISystemMessageRequest | GetAISystemMessageRequestInterface): Observable<GetAISystemMessageResponse> {\n const request = ((<GetAISystemMessageRequest>r).toApiJson) ? (<GetAISystemMessageRequest>r) : new GetAISystemMessageRequest(r);\n return this.http.post<GetAISystemMessageResponseInterface>(this._host + \"/conversation.v1.AISystemMessageService/GetAISystemMessage\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetAISystemMessageResponse.fromProto(resp))\n );\n }\n listAiSystemMessages(r: ListAISystemMessagesRequest | ListAISystemMessagesRequestInterface): Observable<ListAISystemMessagesResponse> {\n const request = ((<ListAISystemMessagesRequest>r).toApiJson) ? (<ListAISystemMessagesRequest>r) : new ListAISystemMessagesRequest(r);\n return this.http.post<ListAISystemMessagesResponseInterface>(this._host + \"/conversation.v1.AISystemMessageService/ListAISystemMessages\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => ListAISystemMessagesResponse.fromProto(resp))\n );\n }\n \n}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nimport {Injectable} from '@angular/core';\nimport {\n AddConversationToConversationViewRequest,\n AddMultiParticipantsRequest,\n AddMultiParticipantsResponse,\n CreateConversationRequest,\n CreateConversationResponse,\n CreateMessageTemplateRequest,\n CreateMessageTemplateResponse,\n CreateMultiMessagesRequest,\n CreateWidgetConversationRequest,\n CreateWidgetConversationResponse,\n CreateWidgetRequest,\n CreateWidgetResponse,\n DeleteConversationRequest,\n DeleteMessageRequest,\n DeleteMessageTemplateRequest,\n DeleteWidgetRequest,\n EvaluateResponseRequest,\n GetAvailableChannelsForConversationRequest,\n GetAvailableChannelsForConversationResponse,\n GetConversationByKeyRequest,\n GetConversationByKeyResponse,\n GetConversationSummaryRequest,\n GetConversationSummaryResponse,\n GetConversationViewsRequest,\n GetConversationViewsResponse,\n GetMessageRequest,\n GetMessageTemplateRequest,\n GetMessageTemplateResponse,\n GetMultiConversationDetailsRequest,\n GetMultiConversationDetailsResponse,\n GetMultiConversationMessageCountRequest,\n GetMultiConversationMessageCountResponse,\n GetMultiEventsRequest,\n GetMultiEventsResponse,\n GetMultiMessagesRequest,\n GetMultiMessagesResponse,\n GetMultiParticipantsRequest,\n GetMultiParticipantsResponse,\n GetMultiWidgetMessagesRequest,\n GetMultiWidgetMessagesResponse,\n GetParticipantsByKeyRequest,\n GetParticipantsByKeyResponse,\n GetWidgetConfigRequest,\n GetWidgetConfigResponse,\n GetWidgetConversationResponse,\n GetWidgetRequest,\n GetWidgetResponse,\n ListMessageTemplateRequest,\n ListMessageTemplateResponse,\n ListMessagesRequest,\n ListMessagesResponse,\n ListWidgetsRequest,\n ListWidgetsResponse,\n LookupConversationsRequest,\n LookupConversationsResponse,\n Message,\n NewInboxLeadCapturedRequest,\n NewInboxLeadCapturedResponse,\n ReceiveMessageRequest,\n RemoveConversationFromConversationViewRequest,\n SearchConversationsRequest,\n SearchConversationsResponse,\n SendMessageRequest,\n SendMessageResponse,\n SendWidgetMessageRequest,\n SendWidgetMessageResponse,\n SetLastSeenRequest,\n SetLastSeenResponse,\n UpdateConversationRequest,\n UpdateConversationResponse,\n UpdateMessageStatusRequest,\n UpdateMessageTemplateRequest,\n UpdateMessageTemplateResponse,\n UpdateWidgetRequest,\n UpdateWidgetResponse,\n} from './objects/';\nimport {\n AddConversationToConversationViewRequestInterface,\n AddMultiParticipantsRequestInterface,\n AddMultiParticipantsResponseInterface,\n CreateConversationRequestInterface,\n CreateConversationResponseInterface,\n CreateMessageTemplateRequestInterface,\n CreateMessageTemplateResponseInterface,\n CreateMultiMessagesRequestInterface,\n CreateWidgetConversationRequestInterface,\n CreateWidgetConversationResponseInterface,\n CreateWidgetRequestInterface,\n CreateWidgetResponseInterface,\n DeleteConversationRequestInterface,\n DeleteMessageRequestInterface,\n DeleteMessageTemplateRequestInterface,\n DeleteWidgetRequestInterface,\n EvaluateResponseRequestInterface,\n GetAvailableChannelsForConversationRequestInterface,\n GetAvailableChannelsForConversationResponseInterface,\n GetConversationByKeyRequestInterface,\n GetConversationByKeyResponseInterface,\n GetConversationSummaryRequestInterface,\n GetConversationSummaryResponseInterface,\n GetConversationViewsRequestInterface,\n GetConversationViewsResponseInterface,\n GetMessageRequestInterface,\n GetMessageTemplateRequestInterface,\n GetMessageTemplateResponseInterface,\n GetMultiConversationDetailsRequestInterface,\n GetMultiConversationDetailsResponseInterface,\n GetMultiConversationMessageCountRequestInterface,\n GetMultiConversationMessageCountResponseInterface,\n GetMultiEventsRequestInterface,\n GetMultiEventsResponseInterface,\n GetMultiMessagesRequestInterface,\n GetMultiMessagesResponseInterface,\n GetMultiParticipantsRequestInterface,\n GetMultiParticipantsResponseInterface,\n GetMultiWidgetMessagesRequestInterface,\n GetMultiWidgetMessagesResponseInterface,\n GetParticipantsByKeyRequestInterface,\n GetParticipantsByKeyResponseInterface,\n GetWidgetConfigRequestInterface,\n GetWidgetConfigResponseInterface,\n GetWidgetConversationResponseInterface,\n GetWidgetRequestInterface,\n GetWidgetResponseInterface,\n ListMessageTemplateRequestInterface,\n ListMessageTemplateResponseInterface,\n ListMessagesRequestInterface,\n ListMessagesResponseInterface,\n ListWidgetsRequestInterface,\n ListWidgetsResponseInterface,\n LookupConversationsRequestInterface,\n LookupConversationsResponseInterface,\n MessageInterface,\n NewInboxLeadCapturedRequestInterface,\n NewInboxLeadCapturedResponseInterface,\n ReceiveMessageRequestInterface,\n RemoveConversationFromConversationViewRequestInterface,\n SearchConversationsRequestInterface,\n SearchConversationsResponseInterface,\n SendMessageRequestInterface,\n SendMessageResponseInterface,\n SendWidgetMessageRequestInterface,\n SendWidgetMessageResponseInterface,\n SetLastSeenRequestInterface,\n SetLastSeenResponseInterface,\n UpdateConversationRequestInterface,\n UpdateConversationResponseInterface,\n UpdateMessageStatusRequestInterface,\n UpdateMessageTemplateRequestInterface,\n UpdateMessageTemplateResponseInterface,\n UpdateWidgetRequestInterface,\n UpdateWidgetResponseInterface,\n} from './interfaces/';\nimport {HttpHeaders, HttpClient, HttpResponse} from '@angular/common/http';\nimport {inject} from '@angular/core';\nimport {HostService} from '../_generated/host.service';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n@Injectable({providedIn: 'root'})\nexport class ConversationApiService {\n private readonly hostService = inject(HostService);\n private readonly http = inject(HttpClient);\n private _host = this.hostService.hostWithScheme;\n\n private apiOptions(): {headers: HttpHeaders, withCredentials: boolean} {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n\n sendMessage(r: SendMessageRequest | SendMessageRequestInterface): Observable<SendMessageResponse> {\n const request = ((<SendMessageRequest>r).toApiJson) ? (<SendMessageRequest>r) : new SendMessageRequest(r);\n return this.http.post<SendMessageResponseInterface>(this._host + \"/conversation.v1.ConversationService/SendMessage\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => SendMessageResponse.fromProto(resp))\n );\n }\n getMessage(r: GetMessageRequest | GetMessageRequestInterface): Observable<Message> {\n const request = ((<GetMessageRequest>r).toApiJson) ? (<GetMessageRequest>r) : new GetMessageRequest(r);\n return this.http.post<MessageInterface>(this._host + \"/conversation.v1.ConversationService/GetMessage\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => Message.fromProto(resp))\n );\n }\n listMessages(r: ListMessagesRequest | ListMessagesRequestInterface): Observable<ListMessagesResponse> {\n const request = ((<ListMessagesRequest>r).toApiJson) ? (<ListMessagesRequest>r) : new ListMessagesRequest(r);\n return this.http.post<ListMessagesResponseInterface>(this._host + \"/conversation.v1.ConversationService/ListMessages\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => ListMessagesResponse.fromProto(resp))\n );\n }\n deleteMessage(r: DeleteMessageRequest | DeleteMessageRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<DeleteMessageRequest>r).toApiJson) ? (<DeleteMessageRequest>r) : new DeleteMessageRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.ConversationService/DeleteMessage\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n updateMessageStatus(r: UpdateMessageStatusRequest | UpdateMessageStatusRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<UpdateMessageStatusRequest>r).toApiJson) ? (<UpdateMessageStatusRequest>r) : new UpdateMessageStatusRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.ConversationService/UpdateMessageStatus\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n lookupConversations(r: LookupConversationsRequest | LookupConversationsRequestInterface): Observable<LookupConversationsResponse> {\n const request = ((<LookupConversationsRequest>r).toApiJson) ? (<LookupConversationsRequest>r) : new LookupConversationsRequest(r);\n return this.http.post<LookupConversationsResponseInterface>(this._host + \"/conversation.v1.ConversationService/LookupConversations\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => LookupConversationsResponse.fromProto(resp))\n );\n }\n getConversationByKey(r: GetConversationByKeyRequest | GetConversationByKeyRequestInterface): Observable<GetConversationByKeyResponse> {\n const request = ((<GetConversationByKeyRequest>r).toApiJson) ? (<GetConversationByKeyRequest>r) : new GetConversationByKeyRequest(r);\n return this.http.post<GetConversationByKeyResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetConversationByKey\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetConversationByKeyResponse.fromProto(resp))\n );\n }\n createConversation(r: CreateConversationRequest | CreateConversationRequestInterface): Observable<CreateConversationResponse> {\n const request = ((<CreateConversationRequest>r).toApiJson) ? (<CreateConversationRequest>r) : new CreateConversationRequest(r);\n return this.http.post<CreateConversationResponseInterface>(this._host + \"/conversation.v1.ConversationService/CreateConversation\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => CreateConversationResponse.fromProto(resp))\n );\n }\n updateConversation(r: UpdateConversationRequest | UpdateConversationRequestInterface): Observable<UpdateConversationResponse> {\n const request = ((<UpdateConversationRequest>r).toApiJson) ? (<UpdateConversationRequest>r) : new UpdateConversationRequest(r);\n return this.http.post<UpdateConversationResponseInterface>(this._host + \"/conversation.v1.ConversationService/UpdateConversation\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => UpdateConversationResponse.fromProto(resp))\n );\n }\n deleteConversation(r: DeleteConversationRequest | DeleteConversationRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<DeleteConversationRequest>r).toApiJson) ? (<DeleteConversationRequest>r) : new DeleteConversationRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.ConversationService/DeleteConversation\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n receiveMessage(r: ReceiveMessageRequest | ReceiveMessageRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<ReceiveMessageRequest>r).toApiJson) ? (<ReceiveMessageRequest>r) : new ReceiveMessageRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.ConversationService/ReceiveMessage\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n getMultiMessages(r: GetMultiMessagesRequest | GetMultiMessagesRequestInterface): Observable<GetMultiMessagesResponse> {\n const request = ((<GetMultiMessagesRequest>r).toApiJson) ? (<GetMultiMessagesRequest>r) : new GetMultiMessagesRequest(r);\n return this.http.post<GetMultiMessagesResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetMultiMessages\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMultiMessagesResponse.fromProto(resp))\n );\n }\n createMultiMessages(r: CreateMultiMessagesRequest | CreateMultiMessagesRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<CreateMultiMessagesRequest>r).toApiJson) ? (<CreateMultiMessagesRequest>r) : new CreateMultiMessagesRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.ConversationService/CreateMultiMessages\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n getMultiConversationDetails(r: GetMultiConversationDetailsRequest | GetMultiConversationDetailsRequestInterface): Observable<GetMultiConversationDetailsResponse> {\n const request = ((<GetMultiConversationDetailsRequest>r).toApiJson) ? (<GetMultiConversationDetailsRequest>r) : new GetMultiConversationDetailsRequest(r);\n return this.http.post<GetMultiConversationDetailsResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetMultiConversationDetails\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMultiConversationDetailsResponse.fromProto(resp))\n );\n }\n getMultiParticipants(r: GetMultiParticipantsRequest | GetMultiParticipantsRequestInterface): Observable<GetMultiParticipantsResponse> {\n const request = ((<GetMultiParticipantsRequest>r).toApiJson) ? (<GetMultiParticipantsRequest>r) : new GetMultiParticipantsRequest(r);\n return this.http.post<GetMultiParticipantsResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetMultiParticipants\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMultiParticipantsResponse.fromProto(resp))\n );\n }\n searchConversations(r: SearchConversationsRequest | SearchConversationsRequestInterface): Observable<SearchConversationsResponse> {\n const request = ((<SearchConversationsRequest>r).toApiJson) ? (<SearchConversationsRequest>r) : new SearchConversationsRequest(r);\n return this.http.post<SearchConversationsResponseInterface>(this._host + \"/conversation.v1.ConversationService/SearchConversations\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => SearchConversationsResponse.fromProto(resp))\n );\n }\n getMultiConversationMessageCount(r: GetMultiConversationMessageCountRequest | GetMultiConversationMessageCountRequestInterface): Observable<GetMultiConversationMessageCountResponse> {\n const request = ((<GetMultiConversationMessageCountRequest>r).toApiJson) ? (<GetMultiConversationMessageCountRequest>r) : new GetMultiConversationMessageCountRequest(r);\n return this.http.post<GetMultiConversationMessageCountResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetMultiConversationMessageCount\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMultiConversationMessageCountResponse.fromProto(resp))\n );\n }\n addMultiParticipants(r: AddMultiParticipantsRequest | AddMultiParticipantsRequestInterface): Observable<AddMultiParticipantsResponse> {\n const request = ((<AddMultiParticipantsRequest>r).toApiJson) ? (<AddMultiParticipantsRequest>r) : new AddMultiParticipantsRequest(r);\n return this.http.post<AddMultiParticipantsResponseInterface>(this._host + \"/conversation.v1.ConversationService/AddMultiParticipants\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => AddMultiParticipantsResponse.fromProto(resp))\n );\n }\n setLastSeen(r: SetLastSeenRequest | SetLastSeenRequestInterface): Observable<SetLastSeenResponse> {\n const request = ((<SetLastSeenRequest>r).toApiJson) ? (<SetLastSeenRequest>r) : new SetLastSeenRequest(r);\n return this.http.post<SetLastSeenResponseInterface>(this._host + \"/conversation.v1.ConversationService/SetLastSeen\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => SetLastSeenResponse.fromProto(resp))\n );\n }\n getParticipantsByKey(r: GetParticipantsByKeyRequest | GetParticipantsByKeyRequestInterface): Observable<GetParticipantsByKeyResponse> {\n const request = ((<GetParticipantsByKeyRequest>r).toApiJson) ? (<GetParticipantsByKeyRequest>r) : new GetParticipantsByKeyRequest(r);\n return this.http.post<GetParticipantsByKeyResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetParticipantsByKey\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetParticipantsByKeyResponse.fromProto(resp))\n );\n }\n getConversationViews(r: GetConversationViewsRequest | GetConversationViewsRequestInterface): Observable<GetConversationViewsResponse> {\n const request = ((<GetConversationViewsRequest>r).toApiJson) ? (<GetConversationViewsRequest>r) : new GetConversationViewsRequest(r);\n return this.http.post<GetConversationViewsResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetConversationViews\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetConversationViewsResponse.fromProto(resp))\n );\n }\n addConversationToConversationView(r: AddConversationToConversationViewRequest | AddConversationToConversationViewRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<AddConversationToConversationViewRequest>r).toApiJson) ? (<AddConversationToConversationViewRequest>r) : new AddConversationToConversationViewRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.ConversationService/AddConversationToConversationView\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n removeConversationFromConversationView(r: RemoveConversationFromConversationViewRequest | RemoveConversationFromConversationViewRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<RemoveConversationFromConversationViewRequest>r).toApiJson) ? (<RemoveConversationFromConversationViewRequest>r) : new RemoveConversationFromConversationViewRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.ConversationService/RemoveConversationFromConversationView\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n createWidgetConversation(r: CreateWidgetConversationRequest | CreateWidgetConversationRequestInterface): Observable<CreateWidgetConversationResponse> {\n const request = ((<CreateWidgetConversationRequest>r).toApiJson) ? (<CreateWidgetConversationRequest>r) : new CreateWidgetConversationRequest(r);\n return this.http.post<CreateWidgetConversationResponseInterface>(this._host + \"/conversation.v1.ConversationService/CreateWidgetConversation\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => CreateWidgetConversationResponse.fromProto(resp))\n );\n }\n getMultiWidgetMessages(r: GetMultiWidgetMessagesRequest | GetMultiWidgetMessagesRequestInterface): Observable<GetMultiWidgetMessagesResponse> {\n const request = ((<GetMultiWidgetMessagesRequest>r).toApiJson) ? (<GetMultiWidgetMessagesRequest>r) : new GetMultiWidgetMessagesRequest(r);\n return this.http.post<GetMultiWidgetMessagesResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetMultiWidgetMessages\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMultiWidgetMessagesResponse.fromProto(resp))\n );\n }\n sendWidgetMessage(r: SendWidgetMessageRequest | SendWidgetMessageRequestInterface): Observable<SendWidgetMessageResponse> {\n const request = ((<SendWidgetMessageRequest>r).toApiJson) ? (<SendWidgetMessageRequest>r) : new SendWidgetMessageRequest(r);\n return this.http.post<SendWidgetMessageResponseInterface>(this._host + \"/conversation.v1.ConversationService/SendWidgetMessage\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => SendWidgetMessageResponse.fromProto(resp))\n );\n }\n getWidgetConversation(): Observable<GetWidgetConversationResponse> {\n return this.http.post<GetWidgetConversationResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetWidgetConversation\", {}, this.apiOptions())\n .pipe(\n map(resp => GetWidgetConversationResponse.fromProto(resp))\n );\n }\n getAvailableChannelsForConversation(r: GetAvailableChannelsForConversationRequest | GetAvailableChannelsForConversationRequestInterface): Observable<GetAvailableChannelsForConversationResponse> {\n const request = ((<GetAvailableChannelsForConversationRequest>r).toApiJson) ? (<GetAvailableChannelsForConversationRequest>r) : new GetAvailableChannelsForConversationRequest(r);\n return this.http.post<GetAvailableChannelsForConversationResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetAvailableChannelsForConversation\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetAvailableChannelsForConversationResponse.fromProto(resp))\n );\n }\n evaluateResponse(r: EvaluateResponseRequest | EvaluateResponseRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<EvaluateResponseRequest>r).toApiJson) ? (<EvaluateResponseRequest>r) : new EvaluateResponseRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.ConversationService/EvaluateResponse\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n createWidget(r: CreateWidgetRequest | CreateWidgetRequestInterface): Observable<CreateWidgetResponse> {\n const request = ((<CreateWidgetRequest>r).toApiJson) ? (<CreateWidgetRequest>r) : new CreateWidgetRequest(r);\n return this.http.post<CreateWidgetResponseInterface>(this._host + \"/conversation.v1.ConversationService/CreateWidget\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => CreateWidgetResponse.fromProto(resp))\n );\n }\n getWidget(r: GetWidgetRequest | GetWidgetRequestInterface): Observable<GetWidgetResponse> {\n const request = ((<GetWidgetRequest>r).toApiJson) ? (<GetWidgetRequest>r) : new GetWidgetRequest(r);\n return this.http.post<GetWidgetResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetWidget\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetWidgetResponse.fromProto(resp))\n );\n }\n updateWidget(r: UpdateWidgetRequest | UpdateWidgetRequestInterface): Observable<UpdateWidgetResponse> {\n const request = ((<UpdateWidgetRequest>r).toApiJson) ? (<UpdateWidgetRequest>r) : new UpdateWidgetRequest(r);\n return this.http.post<UpdateWidgetResponseInterface>(this._host + \"/conversation.v1.ConversationService/UpdateWidget\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => UpdateWidgetResponse.fromProto(resp))\n );\n }\n deleteWidget(r: DeleteWidgetRequest | DeleteWidgetRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<DeleteWidgetRequest>r).toApiJson) ? (<DeleteWidgetRequest>r) : new DeleteWidgetRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.ConversationService/DeleteWidget\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n listWidgets(r: ListWidgetsRequest | ListWidgetsRequestInterface): Observable<ListWidgetsResponse> {\n const request = ((<ListWidgetsRequest>r).toApiJson) ? (<ListWidgetsRequest>r) : new ListWidgetsRequest(r);\n return this.http.post<ListWidgetsResponseInterface>(this._host + \"/conversation.v1.ConversationService/ListWidgets\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => ListWidgetsResponse.fromProto(resp))\n );\n }\n getWidgetConfig(r: GetWidgetConfigRequest | GetWidgetConfigRequestInterface): Observable<GetWidgetConfigResponse> {\n const request = ((<GetWidgetConfigRequest>r).toApiJson) ? (<GetWidgetConfigRequest>r) : new GetWidgetConfigRequest(r);\n return this.http.post<GetWidgetConfigResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetWidgetConfig\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetWidgetConfigResponse.fromProto(resp))\n );\n }\n listMessageTemplate(r: ListMessageTemplateRequest | ListMessageTemplateRequestInterface): Observable<ListMessageTemplateResponse> {\n const request = ((<ListMessageTemplateRequest>r).toApiJson) ? (<ListMessageTemplateRequest>r) : new ListMessageTemplateRequest(r);\n return this.http.post<ListMessageTemplateResponseInterface>(this._host + \"/conversation.v1.ConversationService/ListMessageTemplate\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => ListMessageTemplateResponse.fromProto(resp))\n );\n }\n deleteMessageTemplate(r: DeleteMessageTemplateRequest | DeleteMessageTemplateRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<DeleteMessageTemplateRequest>r).toApiJson) ? (<DeleteMessageTemplateRequest>r) : new DeleteMessageTemplateRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.ConversationService/DeleteMessageTemplate\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n createMessageTemplate(r: CreateMessageTemplateRequest | CreateMessageTemplateRequestInterface): Observable<CreateMessageTemplateResponse> {\n const request = ((<CreateMessageTemplateRequest>r).toApiJson) ? (<CreateMessageTemplateRequest>r) : new CreateMessageTemplateRequest(r);\n return this.http.post<CreateMessageTemplateResponseInterface>(this._host + \"/conversation.v1.ConversationService/CreateMessageTemplate\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => CreateMessageTemplateResponse.fromProto(resp))\n );\n }\n updateMessageTemplate(r: UpdateMessageTemplateRequest | UpdateMessageTemplateRequestInterface): Observable<UpdateMessageTemplateResponse> {\n const request = ((<UpdateMessageTemplateRequest>r).toApiJson) ? (<UpdateMessageTemplateRequest>r) : new UpdateMessageTemplateRequest(r);\n return this.http.post<UpdateMessageTemplateResponseInterface>(this._host + \"/conversation.v1.ConversationService/UpdateMessageTemplate\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => UpdateMessageTemplateResponse.fromProto(resp))\n );\n }\n getMessageTemplate(r: GetMessageTemplateRequest | GetMessageTemplateRequestInterface): Observable<GetMessageTemplateResponse> {\n const request = ((<GetMessageTemplateRequest>r).toApiJson) ? (<GetMessageTemplateRequest>r) : new GetMessageTemplateRequest(r);\n return this.http.post<GetMessageTemplateResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetMessageTemplate\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMessageTemplateResponse.fromProto(resp))\n );\n }\n getConversationSummary(r: GetConversationSummaryRequest | GetConversationSummaryRequestInterface): Observable<GetConversationSummaryResponse> {\n const request = ((<GetConversationSummaryRequest>r).toApiJson) ? (<GetConversationSummaryRequest>r) : new GetConversationSummaryRequest(r);\n return this.http.post<GetConversationSummaryResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetConversationSummary\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetConversationSummaryResponse.fromProto(resp))\n );\n }\n newInboxLeadCaptured(r: NewInboxLeadCapturedRequest | NewInboxLeadCapturedRequestInterface): Observable<NewInboxLeadCapturedResponse> {\n const request = ((<NewInboxLeadCapturedRequest>r).toApiJson) ? (<NewInboxLeadCapturedRequest>r) : new NewInboxLeadCapturedRequest(r);\n return this.http.post<NewInboxLeadCapturedResponseInterface>(this._host + \"/conversation.v1.ConversationService/NewInboxLeadCaptured\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => NewInboxLeadCapturedResponse.fromProto(resp))\n );\n }\n getMultiEvents(r: GetMultiEventsRequest | GetMultiEventsRequestInterface): Observable<GetMultiEventsResponse> {\n const request = ((<GetMultiEventsRequest>r).toApiJson) ? (<GetMultiEventsRequest>r) : new GetMultiEventsRequest(r);\n return this.http.post<GetMultiEventsResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetMultiEvents\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMultiEventsResponse.fromProto(resp))\n );\n }\n \n}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nimport {Injectable} from '@angular/core';\nimport {\n GetOwnerEmailRequest,\n GetOwnerEmailResponse,\n} from './objects/';\nimport {\n GetOwnerEmailRequestInterface,\n GetOwnerEmailResponseInterface,\n} from './interfaces/';\nimport {HttpHeaders, HttpClient, HttpResponse} from '@angular/common/http';\nimport {inject} from '@angular/core';\nimport {HostService} from '../_generated/host.service';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n@Injectable({providedIn: 'root'})\nexport class EmailApiService {\n private readonly hostService = inject(HostService);\n private readonly http = inject(HttpClient);\n private _host = this.hostService.hostWithScheme;\n\n private apiOptions(): {headers: HttpHeaders, withCredentials: boolean} {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n\n getOwnerEmail(r: GetOwnerEmailRequest | GetOwnerEmailRequestInterface): Observable<GetOwnerEmailResponse> {\n const request = ((<GetOwnerEmailRequest>r).toApiJson) ? (<GetOwnerEmailRequest>r) : new GetOwnerEmailRequest(r);\n return this.http.post<GetOwnerEmailResponseInterface>(this._host + \"/conversation.v1.EmailService/GetOwnerEmail\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetOwnerEmailResponse.fromProto(resp))\n );\n }\n \n}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nimport {Injectable} from '@angular/core';\nimport {\n GetConfigurationRequest,\n GetConfigurationResponse,\n GetMultiConfigurationRequest,\n GetMultiConfigurationResponse,\n UpsertConfigurationRequest,\n UpsertConfigurationResponse,\n UpsertProductFeatureRequest,\n UpsertProductFeatureResponse,\n} from './objects/';\nimport {\n GetConfigurationRequestInterface,\n GetConfigurationResponseInterface,\n GetMultiConfigurationRequestInterface,\n GetMultiConfigurationResponseInterface,\n UpsertConfigurationRequestInterface,\n UpsertConfigurationResponseInterface,\n UpsertProductFeatureRequestInterface,\n UpsertProductFeatureResponseInterface,\n} from './interfaces/';\nimport {HttpHeaders, HttpClient, HttpResponse} from '@angular/common/http';\nimport {inject} from '@angular/core';\nimport {HostService} from '../_generated/host.service';\nimport {Observable} from 'rxjs';\nimport {map} from 'rxjs/operators';\n\n@Injectable({providedIn: 'root'})\nexport class InboxApiService {\n private readonly hostService = inject(HostService);\n private readonly http = inject(HttpClient);\n private _host = this.hostService.hostWithScheme;\n\n private apiOptions(): {headers: HttpHeaders, withCredentials: boolean} {\n return {\n headers: new HttpHeaders({\n 'Content-Type': 'application/json'\n }),\n withCredentials: true\n };\n }\n\n getConfiguration(r: GetConfigurationRequest | GetConfigurationRequestInterface): Observable<GetConfigurationResponse> {\n const request = ((<GetConfigurationRequest>r).toApiJson) ? (<GetConfigurationRequest>r) : new GetConfigurationRequest(r);\n return this.http.post<GetConfigurationResponseInterface>(this._host + \"/conversation.v1.InboxService/GetConfiguration\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetConfigurationResponse.fromProto(resp))\n );\n }\n getMultiConfiguration(r: GetMultiConfigurationRequest | GetMultiConfigurationRequestInterface): Observable<GetMultiConfigurationResponse> {\n const request = ((<GetMultiConfigurationRequest>r).toApiJson) ? (<GetMultiConfigurationRequest>r) : new GetMultiConfigurationRequest(r);\n return this.http.post<GetMultiConfigurationResponseInterface>(this._host + \"/conversation.v1.InboxService/GetMultiConfiguration\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMultiConfigurationResponse.fromProto(resp))\n );\n }\n upsertConfiguration(r: UpsertConfigurationRequest | UpsertConfigurationRequestInterface): Observable<UpsertConfigurationResponse> {\n const request = ((<UpsertConfigurationRequest>r).toApiJson) ? (<UpsertConfigurationRequest>r) : new UpsertConfigurationRequest(r);\n return this.http.post<UpsertConfigurationResponseInterface>(this._host + \"/conversation.v1.InboxService/UpsertConfiguration\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => UpsertConfigurationResponse.fromProto(resp))\n );\n }\n upsertProductFeature(r: UpsertProductFeatureRequest | UpsertProductFeatureRequestInterface): Observable<UpsertProductFeatureResponse> {\n const request = ((<UpsertProductFeatureRequest>r).toApiJson) ? (<UpsertProductFeatureRequest>r) : new UpsertProductFeatureRequest(r);\n return this.http.post<UpsertProductFeatureResponseInterface>(this._host + \"/conversation.v1.InboxService/UpsertProductFeature\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => UpsertProductFeatureResponse.fromProto(resp))\n );\n }\n \n}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Index.\n// *********************************\n\nexport * from './enums';\nexport * from './objects';\nexport * from './interfaces';\nexport { AISystemMessageApiService } from './ai-system-message.api.service';\nexport { ConversationApiService } from './conversation.api.service';\nexport { EmailApiService } from './email.api.service';\nexport { InboxApiService } from './inbox.api.service';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["enumStringToValue","e.GlobalParticipantType","e.ConversationChannel","e.PlatformLocation","e.MessageType","e.MessageStatus","e.ParticipantType","e.WidgetPosition","e.Status","e.EvaluationSentiment","e.GetMessageTemplateRequestHydrationOptionsHydrationEntityEntityType","e.MetadataIdentifier","e.SetLastSeenRequestStatus"],"mappings":"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"}
|