@vendasta/conversation 0.11.0 → 0.12.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.
@@ -1 +1 @@
1
- {"version":3,"file":"vendasta-conversation.umd.js","sources":["../../../conversation_sdk/src/lib/_internal/enums/message.enum.ts","../../../conversation_sdk/src/lib/_internal/enums/conversation.enum.ts","../../../conversation_sdk/src/lib/_internal/enums/participant.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/message.ts","../../../conversation_sdk/src/lib/_internal/objects/conversation.ts","../../../conversation_sdk/src/lib/_internal/objects/participant.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/conversation.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 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}\n\nexport enum MessageType {\n MESSAGE_TYPE_MESSAGE = 0,\n MESSAGE_TYPE_MEDIA = 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}\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 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}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\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","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums Index.\n// *********************************\nexport {\n MessageStatus,\n MessageType,\n} from './message.enum';\nexport {\n ConversationChannel,\n PlatformLocation,\n} from './conversation.enum';\nexport {\n ParticipantType,\n} from './participant.enum';\nexport {\n MetadataIdentifier,\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 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\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 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 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\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 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\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 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 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 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\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 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 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 { Conversation } from './conversation';\nimport { Message } from './message';\nimport { Participant } from './participant';\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 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 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 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 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 GetMultiConversationDetailsResponseDetailedConversation implements i.GetMultiConversationDetailsResponseDetailedConversationInterface {\n conversation: Conversation;\n latestMessage: Message;\n participants: Participant[];\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 return toReturn;\n }\n}\n\nexport class GetMessageRequest implements i.GetMessageRequestInterface {\n messageId: string;\n\n static fromProto(proto: any): GetMessageRequest {\n let m = new GetMessageRequest();\n m = Object.assign(m, proto);\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 return toReturn;\n }\n}\n\nexport class GetMultiConversationDetailsRequest implements i.GetMultiConversationDetailsRequestInterface {\n conversationIds: string[];\n\n static fromProto(proto: any): GetMultiConversationDetailsRequest {\n let m = new GetMultiConversationDetailsRequest();\n m = Object.assign(m, proto);\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 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 GetMultiMessagesRequest implements i.GetMultiMessagesRequestInterface {\n messageIds: 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 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\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 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 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 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 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 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\n static fromProto(proto: any): PagedResponseMetadata {\n let m = new PagedResponseMetadata();\n m = Object.assign(m, proto);\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 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 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\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 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 return toReturn;\n }\n}\n\nexport class SendMessageResponse implements i.SendMessageResponseInterface {\n workflowId: 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 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\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects Index.\n// *********************************\nexport {\n Message,\n ParticipantMessageStatus,\n} from './message';\n\nexport {\n Conversation,\n} from './conversation';\n\nexport {\n Participant,\n} from './participant';\n\nexport {\n ConversationMessageCount,\n LookupConversationsResponseConversations,\n GetMultiConversationMessageCountResponseCountsEntry,\n CreateConversationRequest,\n CreateConversationResponse,\n CreateMultiMessagesRequest,\n MetadataDataEntry,\n DeleteConversationRequest,\n DeleteMessageRequest,\n GetMultiConversationDetailsResponseDetailedConversation,\n SearchConversationsResponseDetailedConversation,\n GetMessageRequest,\n GetMultiConversationDetailsRequest,\n GetMultiConversationDetailsResponse,\n GetMultiConversationMessageCountRequest,\n GetMultiConversationMessageCountResponse,\n GetMultiMessagesRequest,\n GetMultiMessagesResponse,\n GetMultiParticipantsRequest,\n GetMultiParticipantsResponse,\n ListMessagesRequestListMessagesFilters,\n ListMessagesRequest,\n ListMessagesResponse,\n LookupConversationsRequestLookupConversationsFilters,\n LookupConversationsRequest,\n LookupConversationsResponse,\n Metadata,\n ReceiveMessageRequestMetadataEntry,\n PagedRequestOptions,\n PagedResponseMetadata,\n ReceiveMessageRequest,\n SearchConversationsRequest,\n SearchConversationsResponse,\n SendMessageRequest,\n SendMessageResponse,\n UpdateMessageStatusRequest,\n} from './api';\n\n","import { Injectable } from '@angular/core';\nimport { EnvironmentService, Environment } from '@vendasta/core';\n\n@Injectable({providedIn: 'root'})\nexport class HostService {\n private _host: string;\n private _httpsHost: string;\n\n constructor(private environmentService: EnvironmentService) {\n }\n\n host(): string {\n if (this._host) {\n return this._host;\n }\n\n switch (this.environmentService.getEnvironment()) {\n case Environment.LOCAL:\n this._host = 'conversation-api.vendasta-local.com';\n break;\n case Environment.TEST:\n this._host = '';\n break;\n case Environment.DEMO:\n this._host = 'conversation-demo.apigateway.co';\n break;\n case Environment.PROD:\n this._host = 'conversation-prod.apigateway.co';\n break;\n }\n return this._host;\n }\n\n httpsHost(): string {\n if (this._httpsHost) {\n return this._httpsHost;\n }\n\n switch (this.environmentService.getEnvironment()) {\n case Environment.LOCAL:\n this._httpsHost = 'conversation.vendasta-local.com';\n break;\n case Environment.TEST:\n this._httpsHost = '';\n break;\n case Environment.DEMO:\n this._httpsHost = 'conversation-demo.apigateway.co';\n break;\n case Environment.PROD:\n this._httpsHost = 'conversation-prod.apigateway.co';\n break;\n }\n return this._httpsHost;\n }\n\n hostWithScheme(): string {\n const scheme = this.environmentService.getEnvironment() === Environment.LOCAL ? 'http://' : 'https://';\n return scheme + this.host()\n }\n\n httpsHostWithScheme(): string {\n const scheme = this.environmentService.getEnvironment() === Environment.LOCAL ? 'http://' : 'https://';\n return scheme + this.httpsHost()\n }\n}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nimport {Injectable} from '@angular/core';\nimport {\n CreateConversationRequest,\n CreateConversationResponse,\n CreateMultiMessagesRequest,\n DeleteConversationRequest,\n DeleteMessageRequest,\n GetMessageRequest,\n GetMultiConversationDetailsRequest,\n GetMultiConversationDetailsResponse,\n GetMultiConversationMessageCountRequest,\n GetMultiConversationMessageCountResponse,\n GetMultiMessagesRequest,\n GetMultiMessagesResponse,\n GetMultiParticipantsRequest,\n GetMultiParticipantsResponse,\n ListMessagesRequest,\n ListMessagesResponse,\n LookupConversationsRequest,\n LookupConversationsResponse,\n Message,\n ReceiveMessageRequest,\n SearchConversationsRequest,\n SearchConversationsResponse,\n SendMessageRequest,\n SendMessageResponse,\n UpdateMessageStatusRequest,\n} from './objects/';\nimport {\n CreateConversationRequestInterface,\n CreateConversationResponseInterface,\n CreateMultiMessagesRequestInterface,\n DeleteConversationRequestInterface,\n DeleteMessageRequestInterface,\n GetMessageRequestInterface,\n GetMultiConversationDetailsRequestInterface,\n GetMultiConversationDetailsResponseInterface,\n GetMultiConversationMessageCountRequestInterface,\n GetMultiConversationMessageCountResponseInterface,\n GetMultiMessagesRequestInterface,\n GetMultiMessagesResponseInterface,\n GetMultiParticipantsRequestInterface,\n GetMultiParticipantsResponseInterface,\n ListMessagesRequestInterface,\n ListMessagesResponseInterface,\n LookupConversationsRequestInterface,\n LookupConversationsResponseInterface,\n MessageInterface,\n ReceiveMessageRequestInterface,\n SearchConversationsRequestInterface,\n SearchConversationsResponseInterface,\n SendMessageRequestInterface,\n SendMessageResponseInterface,\n UpdateMessageStatusRequestInterface,\n} from './interfaces/';\nimport {HttpHeaders, HttpClient, HttpResponse} from '@angular/common/http';\nimport {HostService} from '../_generated/host.service';\nimport {Observable} from 'rxjs';\nimport {map, share} from 'rxjs/operators';\n\n@Injectable({providedIn: 'root'})\nexport class ConversationApiService {\n\n constructor(private http: HttpClient, private hostService: HostService) {\n }\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.hostService.hostWithScheme() + \"/conversation.v1.ConversationService/SendMessage\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => SendMessageResponse.fromProto(resp)),\n share()\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.hostService.hostWithScheme() + \"/conversation.v1.ConversationService/GetMessage\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => Message.fromProto(resp)),\n share()\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.hostService.hostWithScheme() + \"/conversation.v1.ConversationService/ListMessages\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => ListMessagesResponse.fromProto(resp)),\n share()\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.hostService.hostWithScheme() + \"/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.hostService.hostWithScheme() + \"/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.hostService.hostWithScheme() + \"/conversation.v1.ConversationService/LookupConversations\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => LookupConversationsResponse.fromProto(resp)),\n share()\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.hostService.hostWithScheme() + \"/conversation.v1.ConversationService/CreateConversation\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => CreateConversationResponse.fromProto(resp)),\n share()\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.hostService.hostWithScheme() + \"/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.hostService.hostWithScheme() + \"/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.hostService.hostWithScheme() + \"/conversation.v1.ConversationService/GetMultiMessages\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMultiMessagesResponse.fromProto(resp)),\n share()\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.hostService.hostWithScheme() + \"/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.hostService.hostWithScheme() + \"/conversation.v1.ConversationService/GetMultiConversationDetails\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMultiConversationDetailsResponse.fromProto(resp)),\n share()\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.hostService.hostWithScheme() + \"/conversation.v1.ConversationService/GetMultiParticipants\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMultiParticipantsResponse.fromProto(resp)),\n share()\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.hostService.hostWithScheme() + \"/conversation.v1.ConversationService/SearchConversations\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => SearchConversationsResponse.fromProto(resp)),\n share()\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.hostService.hostWithScheme() + \"/conversation.v1.ConversationService/GetMultiConversationMessageCount\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMultiConversationMessageCountResponse.fromProto(resp)),\n share()\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 { ConversationApiService } from './conversation.api.service';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n\nexport {HostService as ɵa} from './lib/_generated/host.service';"],"names":["MessageStatus","MessageType","ConversationChannel","PlatformLocation","ParticipantType","MetadataIdentifier","e.MessageType","e.MessageStatus","enumStringToValue","e.ConversationChannel","e.PlatformLocation","e.ParticipantType","e.MetadataIdentifier","Environment","Injectable","EnvironmentService","HttpHeaders","map","share","HttpClient"],"mappings":"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"}
1
+ {"version":3,"file":"vendasta-conversation.umd.js","sources":["../../../conversation_sdk/src/lib/_internal/enums/message.enum.ts","../../../conversation_sdk/src/lib/_internal/enums/conversation.enum.ts","../../../conversation_sdk/src/lib/_internal/enums/participant.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/message.ts","../../../conversation_sdk/src/lib/_internal/objects/conversation.ts","../../../conversation_sdk/src/lib/_internal/objects/participant.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/conversation.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 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}\n\nexport enum MessageType {\n MESSAGE_TYPE_MESSAGE = 0,\n MESSAGE_TYPE_MEDIA = 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}\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 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}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums.\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","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Enums Index.\n// *********************************\nexport {\n MessageStatus,\n MessageType,\n} from './message.enum';\nexport {\n ConversationChannel,\n PlatformLocation,\n} from './conversation.enum';\nexport {\n ParticipantType,\n} from './participant.enum';\nexport {\n MetadataIdentifier,\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 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\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 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 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\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 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\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 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 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 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\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 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 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 { Conversation } from './conversation';\nimport { Message } from './message';\nimport { Participant } from './participant';\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 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 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 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 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 GetMultiConversationDetailsResponseDetailedConversation implements i.GetMultiConversationDetailsResponseDetailedConversationInterface {\n conversation: Conversation;\n latestMessage: Message;\n participants: Participant[];\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 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 GetMessageRequest implements i.GetMessageRequestInterface {\n messageId: string;\n\n static fromProto(proto: any): GetMessageRequest {\n let m = new GetMessageRequest();\n m = Object.assign(m, proto);\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 return toReturn;\n }\n}\n\nexport class GetMultiConversationDetailsRequest implements i.GetMultiConversationDetailsRequestInterface {\n conversationIds: string[];\n\n static fromProto(proto: any): GetMultiConversationDetailsRequest {\n let m = new GetMultiConversationDetailsRequest();\n m = Object.assign(m, proto);\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 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 GetMultiMessagesRequest implements i.GetMultiMessagesRequestInterface {\n messageIds: 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 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\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 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 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 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 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 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\n static fromProto(proto: any): PagedResponseMetadata {\n let m = new PagedResponseMetadata();\n m = Object.assign(m, proto);\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 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 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\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 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 return toReturn;\n }\n}\n\nexport class SendMessageResponse implements i.SendMessageResponseInterface {\n workflowId: 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 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\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// Objects Index.\n// *********************************\nexport {\n Message,\n ParticipantMessageStatus,\n} from './message';\n\nexport {\n Conversation,\n} from './conversation';\n\nexport {\n Address,\n Participant,\n} from './participant';\n\nexport {\n AddMultiParticipantsRequest,\n AddMultiParticipantsResponse,\n ConversationMessageCount,\n LookupConversationsResponseConversations,\n GetMultiConversationMessageCountResponseCountsEntry,\n CreateConversationRequest,\n CreateConversationResponse,\n CreateMultiMessagesRequest,\n MetadataDataEntry,\n DeleteConversationRequest,\n DeleteMessageRequest,\n GetMultiConversationDetailsResponseDetailedConversation,\n SearchConversationsResponseDetailedConversation,\n GetMessageRequest,\n GetMultiConversationDetailsRequest,\n GetMultiConversationDetailsResponse,\n GetMultiConversationMessageCountRequest,\n GetMultiConversationMessageCountResponse,\n GetMultiMessagesRequest,\n GetMultiMessagesResponse,\n GetMultiParticipantsRequest,\n GetMultiParticipantsResponse,\n ListMessagesRequestListMessagesFilters,\n ListMessagesRequest,\n ListMessagesResponse,\n LookupConversationsRequestLookupConversationsFilters,\n LookupConversationsRequest,\n LookupConversationsResponse,\n Metadata,\n ReceiveMessageRequestMetadataEntry,\n PagedRequestOptions,\n PagedResponseMetadata,\n ReceiveMessageRequest,\n SearchConversationsRequest,\n SearchConversationsResponse,\n SendMessageRequest,\n SendMessageResponse,\n UpdateMessageStatusRequest,\n} from './api';\n\n","import { Injectable } from '@angular/core';\nimport { EnvironmentService, Environment } from '@vendasta/core';\n\n@Injectable({providedIn: 'root'})\nexport class HostService {\n private _host: string;\n private _httpsHost: string;\n\n constructor(private environmentService: EnvironmentService) {\n }\n\n host(): string {\n if (this._host) {\n return this._host;\n }\n\n switch (this.environmentService.getEnvironment()) {\n case Environment.LOCAL:\n this._host = 'conversation-api.vendasta-local.com';\n break;\n case Environment.TEST:\n this._host = '';\n break;\n case Environment.DEMO:\n this._host = 'conversation-demo.apigateway.co';\n break;\n case Environment.PROD:\n this._host = 'conversation-prod.apigateway.co';\n break;\n }\n return this._host;\n }\n\n httpsHost(): string {\n if (this._httpsHost) {\n return this._httpsHost;\n }\n\n switch (this.environmentService.getEnvironment()) {\n case Environment.LOCAL:\n this._httpsHost = 'conversation.vendasta-local.com';\n break;\n case Environment.TEST:\n this._httpsHost = '';\n break;\n case Environment.DEMO:\n this._httpsHost = 'conversation-demo.apigateway.co';\n break;\n case Environment.PROD:\n this._httpsHost = 'conversation-prod.apigateway.co';\n break;\n }\n return this._httpsHost;\n }\n\n hostWithScheme(): string {\n const scheme = this.environmentService.getEnvironment() === Environment.LOCAL ? 'http://' : 'https://';\n return scheme + this.host()\n }\n\n httpsHostWithScheme(): string {\n const scheme = this.environmentService.getEnvironment() === Environment.LOCAL ? 'http://' : 'https://';\n return scheme + this.httpsHost()\n }\n}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nimport {Injectable} from '@angular/core';\nimport {\n AddMultiParticipantsRequest,\n AddMultiParticipantsResponse,\n CreateConversationRequest,\n CreateConversationResponse,\n CreateMultiMessagesRequest,\n DeleteConversationRequest,\n DeleteMessageRequest,\n GetMessageRequest,\n GetMultiConversationDetailsRequest,\n GetMultiConversationDetailsResponse,\n GetMultiConversationMessageCountRequest,\n GetMultiConversationMessageCountResponse,\n GetMultiMessagesRequest,\n GetMultiMessagesResponse,\n GetMultiParticipantsRequest,\n GetMultiParticipantsResponse,\n ListMessagesRequest,\n ListMessagesResponse,\n LookupConversationsRequest,\n LookupConversationsResponse,\n Message,\n ReceiveMessageRequest,\n SearchConversationsRequest,\n SearchConversationsResponse,\n SendMessageRequest,\n SendMessageResponse,\n UpdateMessageStatusRequest,\n} from './objects/';\nimport {\n AddMultiParticipantsRequestInterface,\n AddMultiParticipantsResponseInterface,\n CreateConversationRequestInterface,\n CreateConversationResponseInterface,\n CreateMultiMessagesRequestInterface,\n DeleteConversationRequestInterface,\n DeleteMessageRequestInterface,\n GetMessageRequestInterface,\n GetMultiConversationDetailsRequestInterface,\n GetMultiConversationDetailsResponseInterface,\n GetMultiConversationMessageCountRequestInterface,\n GetMultiConversationMessageCountResponseInterface,\n GetMultiMessagesRequestInterface,\n GetMultiMessagesResponseInterface,\n GetMultiParticipantsRequestInterface,\n GetMultiParticipantsResponseInterface,\n ListMessagesRequestInterface,\n ListMessagesResponseInterface,\n LookupConversationsRequestInterface,\n LookupConversationsResponseInterface,\n MessageInterface,\n ReceiveMessageRequestInterface,\n SearchConversationsRequestInterface,\n SearchConversationsResponseInterface,\n SendMessageRequestInterface,\n SendMessageResponseInterface,\n UpdateMessageStatusRequestInterface,\n} from './interfaces/';\nimport {HttpHeaders, HttpClient, HttpResponse} from '@angular/common/http';\nimport {HostService} from '../_generated/host.service';\nimport {Observable} from 'rxjs';\nimport {map, share} from 'rxjs/operators';\n\n@Injectable({providedIn: 'root'})\nexport class ConversationApiService {\n\n constructor(private http: HttpClient, private hostService: HostService) {\n }\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.hostService.hostWithScheme() + \"/conversation.v1.ConversationService/SendMessage\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => SendMessageResponse.fromProto(resp)),\n share()\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.hostService.hostWithScheme() + \"/conversation.v1.ConversationService/GetMessage\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => Message.fromProto(resp)),\n share()\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.hostService.hostWithScheme() + \"/conversation.v1.ConversationService/ListMessages\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => ListMessagesResponse.fromProto(resp)),\n share()\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.hostService.hostWithScheme() + \"/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.hostService.hostWithScheme() + \"/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.hostService.hostWithScheme() + \"/conversation.v1.ConversationService/LookupConversations\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => LookupConversationsResponse.fromProto(resp)),\n share()\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.hostService.hostWithScheme() + \"/conversation.v1.ConversationService/CreateConversation\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => CreateConversationResponse.fromProto(resp)),\n share()\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.hostService.hostWithScheme() + \"/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.hostService.hostWithScheme() + \"/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.hostService.hostWithScheme() + \"/conversation.v1.ConversationService/GetMultiMessages\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMultiMessagesResponse.fromProto(resp)),\n share()\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.hostService.hostWithScheme() + \"/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.hostService.hostWithScheme() + \"/conversation.v1.ConversationService/GetMultiConversationDetails\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMultiConversationDetailsResponse.fromProto(resp)),\n share()\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.hostService.hostWithScheme() + \"/conversation.v1.ConversationService/GetMultiParticipants\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMultiParticipantsResponse.fromProto(resp)),\n share()\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.hostService.hostWithScheme() + \"/conversation.v1.ConversationService/SearchConversations\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => SearchConversationsResponse.fromProto(resp)),\n share()\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.hostService.hostWithScheme() + \"/conversation.v1.ConversationService/GetMultiConversationMessageCount\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMultiConversationMessageCountResponse.fromProto(resp)),\n share()\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.hostService.hostWithScheme() + \"/conversation.v1.ConversationService/AddMultiParticipants\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => AddMultiParticipantsResponse.fromProto(resp)),\n share()\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 { ConversationApiService } from './conversation.api.service';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n\nexport {HostService as ɵa} from './lib/_generated/host.service';"],"names":["MessageStatus","MessageType","ConversationChannel","PlatformLocation","ParticipantType","MetadataIdentifier","e.MessageType","e.MessageStatus","enumStringToValue","e.ConversationChannel","e.PlatformLocation","e.ParticipantType","e.MetadataIdentifier","Environment","Injectable","EnvironmentService","HttpHeaders","map","share","HttpClient"],"mappings":"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"}