@vendasta/conversation 0.19.0 → 0.20.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.mjs","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 GlobalParticipantType {\n GLOBAL_PARTICIPANT_TYPE_UNDEFINED = 0,\n GLOBAL_PARTICIPANT_TYPE_CUSTOMER = 1,\n GLOBAL_PARTICIPANT_TYPE_IAM_USER = 2,\n GLOBAL_PARTICIPANT_TYPE_ACCOUNT_GROUP = 3,\n GLOBAL_PARTICIPANT_TYPE_PARTNER = 4,\n GLOBAL_PARTICIPANT_TYPE_IAM_TEMPORARY_SUBJECT = 5,\n GLOBAL_PARTICIPANT_TYPE_DIGITAL_AGENT = 6,\n GLOBAL_PARTICIPANT_TYPE_VENDOR = 7,\n}\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 GlobalParticipantType,\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 isSubjectParticipant: boolean;\n isParticipantInternalInfoDeleted: boolean;\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 if (typeof this.isSubjectParticipant !== 'undefined') {toReturn['isSubjectParticipant'] = this.isSubjectParticipant;}\n if (typeof this.isParticipantInternalInfoDeleted !== 'undefined') {toReturn['isParticipantInternalInfoDeleted'] = this.isParticipantInternalInfoDeleted;}\n return toReturn;\n }\n}\n\nexport class ParticipantKey implements i.ParticipantKeyInterface {\n internalParticipantId: string;\n partnerId: string;\n accountGroupId: string;\n location: e.PlatformLocation;\n channels: e.ConversationChannel[];\n participantType: e.GlobalParticipantType;\n\n static fromProto(proto: any): ParticipantKey {\n let m = new ParticipantKey();\n m = Object.assign(m, proto);\n if (proto.location) {m.location = enumStringToValue<e.PlatformLocation>(e.PlatformLocation, proto.location);}\n if (proto.channels) {m.channels = proto.channels.map((v: string) => enumStringToValue<e.ConversationChannel>(e.ConversationChannel, v));}\n if (proto.participantType) {m.participantType = enumStringToValue<e.GlobalParticipantType>(e.GlobalParticipantType, proto.participantType);}\n return m;\n }\n\n constructor(kwargs?: i.ParticipantKeyInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.internalParticipantId !== 'undefined') {toReturn['internalParticipantId'] = this.internalParticipantId;}\n if (typeof this.partnerId !== 'undefined') {toReturn['partnerId'] = this.partnerId;}\n if (typeof this.accountGroupId !== 'undefined') {toReturn['accountGroupId'] = this.accountGroupId;}\n if (typeof this.location !== 'undefined') {toReturn['location'] = this.location;}\n if (typeof this.channels !== 'undefined') {toReturn['channels'] = this.channels;}\n if (typeof this.participantType !== 'undefined') {toReturn['participantType'] = this.participantType;}\n 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, ParticipantKey } 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 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 conversationId: string;\n\n static fromProto(proto: any): GetMultiMessagesRequest {\n let m = new GetMultiMessagesRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetMultiMessagesRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.messageIds !== 'undefined') {toReturn['messageIds'] = this.messageIds;}\n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n return toReturn;\n }\n}\n\nexport class GetMultiMessagesResponse implements i.GetMultiMessagesResponseInterface {\n messages: Message[];\n\n static fromProto(proto: any): GetMultiMessagesResponse {\n let m = new GetMultiMessagesResponse();\n m = Object.assign(m, proto);\n if (proto.messages) {m.messages = proto.messages.map(Message.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.GetMultiMessagesResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.messages !== 'undefined' && this.messages !== null) {toReturn['messages'] = 'toApiJson' in this.messages ? (this.messages as any).toApiJson() : this.messages;}\n return toReturn;\n }\n}\n\nexport class GetMultiParticipantsRequest implements i.GetMultiParticipantsRequestInterface {\n participantIds: string[];\n conversationId: string;\n\n static fromProto(proto: any): GetMultiParticipantsRequest {\n let m = new GetMultiParticipantsRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetMultiParticipantsRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participantIds !== 'undefined') {toReturn['participantIds'] = this.participantIds;}\n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n return toReturn;\n }\n}\n\nexport class GetMultiParticipantsResponse implements i.GetMultiParticipantsResponseInterface {\n participants: Participant[];\n\n static fromProto(proto: any): GetMultiParticipantsResponse {\n let m = new GetMultiParticipantsResponse();\n m = Object.assign(m, proto);\n if (proto.participants) {m.participants = proto.participants.map(Participant.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.GetMultiParticipantsResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participants !== 'undefined' && this.participants !== null) {toReturn['participants'] = 'toApiJson' in this.participants ? (this.participants as any).toApiJson() : this.participants;}\n return toReturn;\n }\n}\n\nexport class GetParticipantsByKeyRequest implements i.GetParticipantsByKeyRequestInterface {\n participantKey: ParticipantKey;\n\n static fromProto(proto: any): GetParticipantsByKeyRequest {\n let m = new GetParticipantsByKeyRequest();\n m = Object.assign(m, proto);\n if (proto.participantKey) {m.participantKey = ParticipantKey.fromProto(proto.participantKey);}\n return m;\n }\n\n constructor(kwargs?: i.GetParticipantsByKeyRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participantKey !== 'undefined' && this.participantKey !== null) {toReturn['participantKey'] = 'toApiJson' in this.participantKey ? (this.participantKey as any).toApiJson() : this.participantKey;}\n return toReturn;\n }\n}\n\nexport class GetParticipantsByKeyResponse implements i.GetParticipantsByKeyResponseInterface {\n participants: Participant[];\n\n static fromProto(proto: any): GetParticipantsByKeyResponse {\n let m = new GetParticipantsByKeyResponse();\n m = Object.assign(m, proto);\n if (proto.participants) {m.participants = proto.participants.map(Participant.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.GetParticipantsByKeyResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participants !== 'undefined' && this.participants !== null) {toReturn['participants'] = 'toApiJson' in this.participants ? (this.participants as any).toApiJson() : this.participants;}\n 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 SetLastSeenRequest implements i.SetLastSeenRequestInterface {\n conversationId: string;\n participant: Participant;\n\n static fromProto(proto: any): SetLastSeenRequest {\n let m = new SetLastSeenRequest();\n m = Object.assign(m, proto);\n if (proto.participant) {m.participant = Participant.fromProto(proto.participant);}\n return m;\n }\n\n constructor(kwargs?: i.SetLastSeenRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n if (typeof this.participant !== 'undefined' && this.participant !== null) {toReturn['participant'] = 'toApiJson' in this.participant ? (this.participant as any).toApiJson() : this.participant;}\n return toReturn;\n }\n}\n\nexport class SetLastSeenResponse implements i.SetLastSeenResponseInterface {\n lastSeen: Date;\n\n static fromProto(proto: any): SetLastSeenResponse {\n let m = new SetLastSeenResponse();\n m = Object.assign(m, proto);\n if (proto.lastSeen) {m.lastSeen = new Date(proto.lastSeen);}\n return m;\n }\n\n constructor(kwargs?: i.SetLastSeenResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.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 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 ParticipantKey,\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 SearchConversationsResponseDetailedConversation,\n GetMultiConversationDetailsResponseDetailedConversation,\n GetMessageRequest,\n GetMultiConversationDetailsRequest,\n GetMultiConversationDetailsResponse,\n GetMultiConversationMessageCountRequest,\n GetMultiConversationMessageCountResponse,\n GetMultiMessagesRequest,\n GetMultiMessagesResponse,\n GetMultiParticipantsRequest,\n GetMultiParticipantsResponse,\n GetParticipantsByKeyRequest,\n GetParticipantsByKeyResponse,\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 SetLastSeenRequest,\n SetLastSeenResponse,\n UpdateMessageStatusRequest,\n} from './api';\n\n","import { Injectable } from '@angular/core';\n\ndeclare const window: any;\nconst environment: string = (window ? window['environment'] : 'prod') ?? 'prod';\nconst hostMap: { [key: string]: string } = {\n 'local': 'conversation-api.vendasta-local.com',\n 'test': '',\n 'demo': 'conversation-demo.apigateway.co',\n 'prod': 'conversation-prod.apigateway.co',\n 'production': 'conversation-prod.apigateway.co',\n};\n\n@Injectable({providedIn: 'root'})\nexport class HostService {\n get host(): string {\n return hostMap[environment.toLowerCase()];\n }\n\n get hostWithScheme(): string {\n return 'https://' + this.host;\n }\n}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nimport {Injectable} from '@angular/core';\nimport {\n 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 GetParticipantsByKeyRequest,\n GetParticipantsByKeyResponse,\n ListMessagesRequest,\n ListMessagesResponse,\n LookupConversationsRequest,\n LookupConversationsResponse,\n Message,\n ReceiveMessageRequest,\n SearchConversationsRequest,\n SearchConversationsResponse,\n SendMessageRequest,\n SendMessageResponse,\n SetLastSeenRequest,\n SetLastSeenResponse,\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 GetParticipantsByKeyRequestInterface,\n GetParticipantsByKeyResponseInterface,\n ListMessagesRequestInterface,\n ListMessagesResponseInterface,\n LookupConversationsRequestInterface,\n LookupConversationsResponseInterface,\n MessageInterface,\n ReceiveMessageRequestInterface,\n SearchConversationsRequestInterface,\n SearchConversationsResponseInterface,\n SendMessageRequestInterface,\n SendMessageResponseInterface,\n SetLastSeenRequestInterface,\n SetLastSeenResponseInterface,\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} from 'rxjs/operators';\n\n@Injectable({providedIn: 'root'})\nexport class ConversationApiService {\n private _host = this.hostService.hostWithScheme;\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._host + \"/conversation.v1.ConversationService/SendMessage\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => SendMessageResponse.fromProto(resp))\n );\n }\n getMessage(r: GetMessageRequest | GetMessageRequestInterface): Observable<Message> {\n const request = ((<GetMessageRequest>r).toApiJson) ? (<GetMessageRequest>r) : new GetMessageRequest(r);\n return this.http.post<MessageInterface>(this._host + \"/conversation.v1.ConversationService/GetMessage\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => Message.fromProto(resp))\n );\n }\n listMessages(r: ListMessagesRequest | ListMessagesRequestInterface): Observable<ListMessagesResponse> {\n const request = ((<ListMessagesRequest>r).toApiJson) ? (<ListMessagesRequest>r) : new ListMessagesRequest(r);\n return this.http.post<ListMessagesResponseInterface>(this._host + \"/conversation.v1.ConversationService/ListMessages\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => ListMessagesResponse.fromProto(resp))\n );\n }\n deleteMessage(r: DeleteMessageRequest | DeleteMessageRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<DeleteMessageRequest>r).toApiJson) ? (<DeleteMessageRequest>r) : new DeleteMessageRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.ConversationService/DeleteMessage\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n updateMessageStatus(r: UpdateMessageStatusRequest | UpdateMessageStatusRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<UpdateMessageStatusRequest>r).toApiJson) ? (<UpdateMessageStatusRequest>r) : new UpdateMessageStatusRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.ConversationService/UpdateMessageStatus\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n lookupConversations(r: LookupConversationsRequest | LookupConversationsRequestInterface): Observable<LookupConversationsResponse> {\n const request = ((<LookupConversationsRequest>r).toApiJson) ? (<LookupConversationsRequest>r) : new LookupConversationsRequest(r);\n return this.http.post<LookupConversationsResponseInterface>(this._host + \"/conversation.v1.ConversationService/LookupConversations\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => LookupConversationsResponse.fromProto(resp))\n );\n }\n createConversation(r: CreateConversationRequest | CreateConversationRequestInterface): Observable<CreateConversationResponse> {\n const request = ((<CreateConversationRequest>r).toApiJson) ? (<CreateConversationRequest>r) : new CreateConversationRequest(r);\n return this.http.post<CreateConversationResponseInterface>(this._host + \"/conversation.v1.ConversationService/CreateConversation\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => CreateConversationResponse.fromProto(resp))\n );\n }\n deleteConversation(r: DeleteConversationRequest | DeleteConversationRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<DeleteConversationRequest>r).toApiJson) ? (<DeleteConversationRequest>r) : new DeleteConversationRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.ConversationService/DeleteConversation\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n receiveMessage(r: ReceiveMessageRequest | ReceiveMessageRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<ReceiveMessageRequest>r).toApiJson) ? (<ReceiveMessageRequest>r) : new ReceiveMessageRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.ConversationService/ReceiveMessage\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n getMultiMessages(r: GetMultiMessagesRequest | GetMultiMessagesRequestInterface): Observable<GetMultiMessagesResponse> {\n const request = ((<GetMultiMessagesRequest>r).toApiJson) ? (<GetMultiMessagesRequest>r) : new GetMultiMessagesRequest(r);\n return this.http.post<GetMultiMessagesResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetMultiMessages\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMultiMessagesResponse.fromProto(resp))\n );\n }\n createMultiMessages(r: CreateMultiMessagesRequest | CreateMultiMessagesRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<CreateMultiMessagesRequest>r).toApiJson) ? (<CreateMultiMessagesRequest>r) : new CreateMultiMessagesRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.ConversationService/CreateMultiMessages\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n getMultiConversationDetails(r: GetMultiConversationDetailsRequest | GetMultiConversationDetailsRequestInterface): Observable<GetMultiConversationDetailsResponse> {\n const request = ((<GetMultiConversationDetailsRequest>r).toApiJson) ? (<GetMultiConversationDetailsRequest>r) : new GetMultiConversationDetailsRequest(r);\n return this.http.post<GetMultiConversationDetailsResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetMultiConversationDetails\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMultiConversationDetailsResponse.fromProto(resp))\n );\n }\n getMultiParticipants(r: GetMultiParticipantsRequest | GetMultiParticipantsRequestInterface): Observable<GetMultiParticipantsResponse> {\n const request = ((<GetMultiParticipantsRequest>r).toApiJson) ? (<GetMultiParticipantsRequest>r) : new GetMultiParticipantsRequest(r);\n return this.http.post<GetMultiParticipantsResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetMultiParticipants\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMultiParticipantsResponse.fromProto(resp))\n );\n }\n searchConversations(r: SearchConversationsRequest | SearchConversationsRequestInterface): Observable<SearchConversationsResponse> {\n const request = ((<SearchConversationsRequest>r).toApiJson) ? (<SearchConversationsRequest>r) : new SearchConversationsRequest(r);\n return this.http.post<SearchConversationsResponseInterface>(this._host + \"/conversation.v1.ConversationService/SearchConversations\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => SearchConversationsResponse.fromProto(resp))\n );\n }\n getMultiConversationMessageCount(r: GetMultiConversationMessageCountRequest | GetMultiConversationMessageCountRequestInterface): Observable<GetMultiConversationMessageCountResponse> {\n const request = ((<GetMultiConversationMessageCountRequest>r).toApiJson) ? (<GetMultiConversationMessageCountRequest>r) : new GetMultiConversationMessageCountRequest(r);\n return this.http.post<GetMultiConversationMessageCountResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetMultiConversationMessageCount\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMultiConversationMessageCountResponse.fromProto(resp))\n );\n }\n addMultiParticipants(r: AddMultiParticipantsRequest | AddMultiParticipantsRequestInterface): Observable<AddMultiParticipantsResponse> {\n const request = ((<AddMultiParticipantsRequest>r).toApiJson) ? (<AddMultiParticipantsRequest>r) : new AddMultiParticipantsRequest(r);\n return this.http.post<AddMultiParticipantsResponseInterface>(this._host + \"/conversation.v1.ConversationService/AddMultiParticipants\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => AddMultiParticipantsResponse.fromProto(resp))\n );\n }\n setLastSeen(r: SetLastSeenRequest | SetLastSeenRequestInterface): Observable<SetLastSeenResponse> {\n const request = ((<SetLastSeenRequest>r).toApiJson) ? (<SetLastSeenRequest>r) : new SetLastSeenRequest(r);\n return this.http.post<SetLastSeenResponseInterface>(this._host + \"/conversation.v1.ConversationService/SetLastSeen\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => SetLastSeenResponse.fromProto(resp))\n );\n }\n getParticipantsByKey(r: GetParticipantsByKeyRequest | GetParticipantsByKeyRequestInterface): Observable<GetParticipantsByKeyResponse> {\n const request = ((<GetParticipantsByKeyRequest>r).toApiJson) ? (<GetParticipantsByKeyRequest>r) : new GetParticipantsByKeyRequest(r);\n return this.http.post<GetParticipantsByKeyResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetParticipantsByKey\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetParticipantsByKeyResponse.fromProto(resp))\n );\n }\n \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"],"names":["enumStringToValue","e.MessageType","e.MessageStatus","e.ConversationChannel","e.PlatformLocation","e.ParticipantType","e.GlobalParticipantType","e.MetadataIdentifier","i2.HostService"],"mappings":"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"}
1
+ {"version":3,"file":"vendasta-conversation.mjs","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 GlobalParticipantType {\n GLOBAL_PARTICIPANT_TYPE_UNDEFINED = 0,\n GLOBAL_PARTICIPANT_TYPE_CUSTOMER = 1,\n GLOBAL_PARTICIPANT_TYPE_IAM_USER = 2,\n GLOBAL_PARTICIPANT_TYPE_ACCOUNT_GROUP = 3,\n GLOBAL_PARTICIPANT_TYPE_PARTNER = 4,\n GLOBAL_PARTICIPANT_TYPE_IAM_TEMPORARY_SUBJECT = 5,\n GLOBAL_PARTICIPANT_TYPE_DIGITAL_AGENT = 6,\n GLOBAL_PARTICIPANT_TYPE_VENDOR = 7,\n}\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 GlobalParticipantType,\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 isSubjectParticipant: boolean;\n isParticipantInternalInfoDeleted: boolean;\n profileImageUrl: 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 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 if (typeof this.isSubjectParticipant !== 'undefined') {toReturn['isSubjectParticipant'] = this.isSubjectParticipant;}\n if (typeof this.isParticipantInternalInfoDeleted !== 'undefined') {toReturn['isParticipantInternalInfoDeleted'] = this.isParticipantInternalInfoDeleted;}\n if (typeof this.profileImageUrl !== 'undefined') {toReturn['profileImageUrl'] = this.profileImageUrl;}\n return toReturn;\n }\n}\n\nexport class ParticipantKey implements i.ParticipantKeyInterface {\n internalParticipantId: string;\n partnerId: string;\n accountGroupId: string;\n location: e.PlatformLocation;\n channels: e.ConversationChannel[];\n participantType: e.GlobalParticipantType;\n\n static fromProto(proto: any): ParticipantKey {\n let m = new ParticipantKey();\n m = Object.assign(m, proto);\n if (proto.location) {m.location = enumStringToValue<e.PlatformLocation>(e.PlatformLocation, proto.location);}\n if (proto.channels) {m.channels = proto.channels.map((v: string) => enumStringToValue<e.ConversationChannel>(e.ConversationChannel, v));}\n if (proto.participantType) {m.participantType = enumStringToValue<e.GlobalParticipantType>(e.GlobalParticipantType, proto.participantType);}\n return m;\n }\n\n constructor(kwargs?: i.ParticipantKeyInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.internalParticipantId !== 'undefined') {toReturn['internalParticipantId'] = this.internalParticipantId;}\n if (typeof this.partnerId !== 'undefined') {toReturn['partnerId'] = this.partnerId;}\n if (typeof this.accountGroupId !== 'undefined') {toReturn['accountGroupId'] = this.accountGroupId;}\n if (typeof this.location !== 'undefined') {toReturn['location'] = this.location;}\n if (typeof this.channels !== 'undefined') {toReturn['channels'] = this.channels;}\n if (typeof this.participantType !== 'undefined') {toReturn['participantType'] = this.participantType;}\n 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, ParticipantKey } 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 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 conversationId: string;\n\n static fromProto(proto: any): GetMultiMessagesRequest {\n let m = new GetMultiMessagesRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetMultiMessagesRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.messageIds !== 'undefined') {toReturn['messageIds'] = this.messageIds;}\n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n return toReturn;\n }\n}\n\nexport class GetMultiMessagesResponse implements i.GetMultiMessagesResponseInterface {\n messages: Message[];\n\n static fromProto(proto: any): GetMultiMessagesResponse {\n let m = new GetMultiMessagesResponse();\n m = Object.assign(m, proto);\n if (proto.messages) {m.messages = proto.messages.map(Message.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.GetMultiMessagesResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.messages !== 'undefined' && this.messages !== null) {toReturn['messages'] = 'toApiJson' in this.messages ? (this.messages as any).toApiJson() : this.messages;}\n return toReturn;\n }\n}\n\nexport class GetMultiParticipantsRequest implements i.GetMultiParticipantsRequestInterface {\n participantIds: string[];\n conversationId: string;\n\n static fromProto(proto: any): GetMultiParticipantsRequest {\n let m = new GetMultiParticipantsRequest();\n m = Object.assign(m, proto);\n return m;\n }\n\n constructor(kwargs?: i.GetMultiParticipantsRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participantIds !== 'undefined') {toReturn['participantIds'] = this.participantIds;}\n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n return toReturn;\n }\n}\n\nexport class GetMultiParticipantsResponse implements i.GetMultiParticipantsResponseInterface {\n participants: Participant[];\n\n static fromProto(proto: any): GetMultiParticipantsResponse {\n let m = new GetMultiParticipantsResponse();\n m = Object.assign(m, proto);\n if (proto.participants) {m.participants = proto.participants.map(Participant.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.GetMultiParticipantsResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participants !== 'undefined' && this.participants !== null) {toReturn['participants'] = 'toApiJson' in this.participants ? (this.participants as any).toApiJson() : this.participants;}\n return toReturn;\n }\n}\n\nexport class GetParticipantsByKeyRequest implements i.GetParticipantsByKeyRequestInterface {\n participantKey: ParticipantKey;\n\n static fromProto(proto: any): GetParticipantsByKeyRequest {\n let m = new GetParticipantsByKeyRequest();\n m = Object.assign(m, proto);\n if (proto.participantKey) {m.participantKey = ParticipantKey.fromProto(proto.participantKey);}\n return m;\n }\n\n constructor(kwargs?: i.GetParticipantsByKeyRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participantKey !== 'undefined' && this.participantKey !== null) {toReturn['participantKey'] = 'toApiJson' in this.participantKey ? (this.participantKey as any).toApiJson() : this.participantKey;}\n return toReturn;\n }\n}\n\nexport class GetParticipantsByKeyResponse implements i.GetParticipantsByKeyResponseInterface {\n participants: Participant[];\n\n static fromProto(proto: any): GetParticipantsByKeyResponse {\n let m = new GetParticipantsByKeyResponse();\n m = Object.assign(m, proto);\n if (proto.participants) {m.participants = proto.participants.map(Participant.fromProto);}\n return m;\n }\n\n constructor(kwargs?: i.GetParticipantsByKeyResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.participants !== 'undefined' && this.participants !== null) {toReturn['participants'] = 'toApiJson' in this.participants ? (this.participants as any).toApiJson() : this.participants;}\n 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 SetLastSeenRequest implements i.SetLastSeenRequestInterface {\n conversationId: string;\n participant: Participant;\n\n static fromProto(proto: any): SetLastSeenRequest {\n let m = new SetLastSeenRequest();\n m = Object.assign(m, proto);\n if (proto.participant) {m.participant = Participant.fromProto(proto.participant);}\n return m;\n }\n\n constructor(kwargs?: i.SetLastSeenRequestInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.conversationId !== 'undefined') {toReturn['conversationId'] = this.conversationId;}\n if (typeof this.participant !== 'undefined' && this.participant !== null) {toReturn['participant'] = 'toApiJson' in this.participant ? (this.participant as any).toApiJson() : this.participant;}\n return toReturn;\n }\n}\n\nexport class SetLastSeenResponse implements i.SetLastSeenResponseInterface {\n lastSeen: Date;\n\n static fromProto(proto: any): SetLastSeenResponse {\n let m = new SetLastSeenResponse();\n m = Object.assign(m, proto);\n if (proto.lastSeen) {m.lastSeen = new Date(proto.lastSeen);}\n return m;\n }\n\n constructor(kwargs?: i.SetLastSeenResponseInterface) {\n if (!kwargs) {\n return;\n }\n Object.assign(this, kwargs);\n }\n\n toApiJson(): object {\n const toReturn: {\n [key: string]: any;\n } = {};\n \n if (typeof this.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 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 ParticipantKey,\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 SearchConversationsResponseDetailedConversation,\n GetMultiConversationDetailsResponseDetailedConversation,\n GetMessageRequest,\n GetMultiConversationDetailsRequest,\n GetMultiConversationDetailsResponse,\n GetMultiConversationMessageCountRequest,\n GetMultiConversationMessageCountResponse,\n GetMultiMessagesRequest,\n GetMultiMessagesResponse,\n GetMultiParticipantsRequest,\n GetMultiParticipantsResponse,\n GetParticipantsByKeyRequest,\n GetParticipantsByKeyResponse,\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 SetLastSeenRequest,\n SetLastSeenResponse,\n UpdateMessageStatusRequest,\n} from './api';\n\n","import { Injectable } from '@angular/core';\n\ndeclare const window: any;\nconst environment: string = (window ? window['environment'] : 'prod') ?? 'prod';\nconst hostMap: { [key: string]: string } = {\n 'local': 'conversation-api.vendasta-local.com',\n 'test': '',\n 'demo': 'conversation-demo.apigateway.co',\n 'prod': 'conversation-prod.apigateway.co',\n 'production': 'conversation-prod.apigateway.co',\n};\n\n@Injectable({providedIn: 'root'})\nexport class HostService {\n get host(): string {\n return hostMap[environment.toLowerCase()];\n }\n\n get hostWithScheme(): string {\n return 'https://' + this.host;\n }\n}\n","// *********************************\n// Code generated by sdkgen\n// DO NOT EDIT!.\n//\n// API Service.\n// *********************************\nimport {Injectable} from '@angular/core';\nimport {\n 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 GetParticipantsByKeyRequest,\n GetParticipantsByKeyResponse,\n ListMessagesRequest,\n ListMessagesResponse,\n LookupConversationsRequest,\n LookupConversationsResponse,\n Message,\n ReceiveMessageRequest,\n SearchConversationsRequest,\n SearchConversationsResponse,\n SendMessageRequest,\n SendMessageResponse,\n SetLastSeenRequest,\n SetLastSeenResponse,\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 GetParticipantsByKeyRequestInterface,\n GetParticipantsByKeyResponseInterface,\n ListMessagesRequestInterface,\n ListMessagesResponseInterface,\n LookupConversationsRequestInterface,\n LookupConversationsResponseInterface,\n MessageInterface,\n ReceiveMessageRequestInterface,\n SearchConversationsRequestInterface,\n SearchConversationsResponseInterface,\n SendMessageRequestInterface,\n SendMessageResponseInterface,\n SetLastSeenRequestInterface,\n SetLastSeenResponseInterface,\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} from 'rxjs/operators';\n\n@Injectable({providedIn: 'root'})\nexport class ConversationApiService {\n private _host = this.hostService.hostWithScheme;\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._host + \"/conversation.v1.ConversationService/SendMessage\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => SendMessageResponse.fromProto(resp))\n );\n }\n getMessage(r: GetMessageRequest | GetMessageRequestInterface): Observable<Message> {\n const request = ((<GetMessageRequest>r).toApiJson) ? (<GetMessageRequest>r) : new GetMessageRequest(r);\n return this.http.post<MessageInterface>(this._host + \"/conversation.v1.ConversationService/GetMessage\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => Message.fromProto(resp))\n );\n }\n listMessages(r: ListMessagesRequest | ListMessagesRequestInterface): Observable<ListMessagesResponse> {\n const request = ((<ListMessagesRequest>r).toApiJson) ? (<ListMessagesRequest>r) : new ListMessagesRequest(r);\n return this.http.post<ListMessagesResponseInterface>(this._host + \"/conversation.v1.ConversationService/ListMessages\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => ListMessagesResponse.fromProto(resp))\n );\n }\n deleteMessage(r: DeleteMessageRequest | DeleteMessageRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<DeleteMessageRequest>r).toApiJson) ? (<DeleteMessageRequest>r) : new DeleteMessageRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.ConversationService/DeleteMessage\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n updateMessageStatus(r: UpdateMessageStatusRequest | UpdateMessageStatusRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<UpdateMessageStatusRequest>r).toApiJson) ? (<UpdateMessageStatusRequest>r) : new UpdateMessageStatusRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.ConversationService/UpdateMessageStatus\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n lookupConversations(r: LookupConversationsRequest | LookupConversationsRequestInterface): Observable<LookupConversationsResponse> {\n const request = ((<LookupConversationsRequest>r).toApiJson) ? (<LookupConversationsRequest>r) : new LookupConversationsRequest(r);\n return this.http.post<LookupConversationsResponseInterface>(this._host + \"/conversation.v1.ConversationService/LookupConversations\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => LookupConversationsResponse.fromProto(resp))\n );\n }\n createConversation(r: CreateConversationRequest | CreateConversationRequestInterface): Observable<CreateConversationResponse> {\n const request = ((<CreateConversationRequest>r).toApiJson) ? (<CreateConversationRequest>r) : new CreateConversationRequest(r);\n return this.http.post<CreateConversationResponseInterface>(this._host + \"/conversation.v1.ConversationService/CreateConversation\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => CreateConversationResponse.fromProto(resp))\n );\n }\n deleteConversation(r: DeleteConversationRequest | DeleteConversationRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<DeleteConversationRequest>r).toApiJson) ? (<DeleteConversationRequest>r) : new DeleteConversationRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.ConversationService/DeleteConversation\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n receiveMessage(r: ReceiveMessageRequest | ReceiveMessageRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<ReceiveMessageRequest>r).toApiJson) ? (<ReceiveMessageRequest>r) : new ReceiveMessageRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.ConversationService/ReceiveMessage\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n getMultiMessages(r: GetMultiMessagesRequest | GetMultiMessagesRequestInterface): Observable<GetMultiMessagesResponse> {\n const request = ((<GetMultiMessagesRequest>r).toApiJson) ? (<GetMultiMessagesRequest>r) : new GetMultiMessagesRequest(r);\n return this.http.post<GetMultiMessagesResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetMultiMessages\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMultiMessagesResponse.fromProto(resp))\n );\n }\n createMultiMessages(r: CreateMultiMessagesRequest | CreateMultiMessagesRequestInterface): Observable<HttpResponse<null>> {\n const request = ((<CreateMultiMessagesRequest>r).toApiJson) ? (<CreateMultiMessagesRequest>r) : new CreateMultiMessagesRequest(r);\n return this.http.post<null>(this._host + \"/conversation.v1.ConversationService/CreateMultiMessages\", request.toApiJson(), {...this.apiOptions(), observe: 'response'});\n }\n getMultiConversationDetails(r: GetMultiConversationDetailsRequest | GetMultiConversationDetailsRequestInterface): Observable<GetMultiConversationDetailsResponse> {\n const request = ((<GetMultiConversationDetailsRequest>r).toApiJson) ? (<GetMultiConversationDetailsRequest>r) : new GetMultiConversationDetailsRequest(r);\n return this.http.post<GetMultiConversationDetailsResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetMultiConversationDetails\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMultiConversationDetailsResponse.fromProto(resp))\n );\n }\n getMultiParticipants(r: GetMultiParticipantsRequest | GetMultiParticipantsRequestInterface): Observable<GetMultiParticipantsResponse> {\n const request = ((<GetMultiParticipantsRequest>r).toApiJson) ? (<GetMultiParticipantsRequest>r) : new GetMultiParticipantsRequest(r);\n return this.http.post<GetMultiParticipantsResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetMultiParticipants\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMultiParticipantsResponse.fromProto(resp))\n );\n }\n searchConversations(r: SearchConversationsRequest | SearchConversationsRequestInterface): Observable<SearchConversationsResponse> {\n const request = ((<SearchConversationsRequest>r).toApiJson) ? (<SearchConversationsRequest>r) : new SearchConversationsRequest(r);\n return this.http.post<SearchConversationsResponseInterface>(this._host + \"/conversation.v1.ConversationService/SearchConversations\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => SearchConversationsResponse.fromProto(resp))\n );\n }\n getMultiConversationMessageCount(r: GetMultiConversationMessageCountRequest | GetMultiConversationMessageCountRequestInterface): Observable<GetMultiConversationMessageCountResponse> {\n const request = ((<GetMultiConversationMessageCountRequest>r).toApiJson) ? (<GetMultiConversationMessageCountRequest>r) : new GetMultiConversationMessageCountRequest(r);\n return this.http.post<GetMultiConversationMessageCountResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetMultiConversationMessageCount\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetMultiConversationMessageCountResponse.fromProto(resp))\n );\n }\n addMultiParticipants(r: AddMultiParticipantsRequest | AddMultiParticipantsRequestInterface): Observable<AddMultiParticipantsResponse> {\n const request = ((<AddMultiParticipantsRequest>r).toApiJson) ? (<AddMultiParticipantsRequest>r) : new AddMultiParticipantsRequest(r);\n return this.http.post<AddMultiParticipantsResponseInterface>(this._host + \"/conversation.v1.ConversationService/AddMultiParticipants\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => AddMultiParticipantsResponse.fromProto(resp))\n );\n }\n setLastSeen(r: SetLastSeenRequest | SetLastSeenRequestInterface): Observable<SetLastSeenResponse> {\n const request = ((<SetLastSeenRequest>r).toApiJson) ? (<SetLastSeenRequest>r) : new SetLastSeenRequest(r);\n return this.http.post<SetLastSeenResponseInterface>(this._host + \"/conversation.v1.ConversationService/SetLastSeen\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => SetLastSeenResponse.fromProto(resp))\n );\n }\n getParticipantsByKey(r: GetParticipantsByKeyRequest | GetParticipantsByKeyRequestInterface): Observable<GetParticipantsByKeyResponse> {\n const request = ((<GetParticipantsByKeyRequest>r).toApiJson) ? (<GetParticipantsByKeyRequest>r) : new GetParticipantsByKeyRequest(r);\n return this.http.post<GetParticipantsByKeyResponseInterface>(this._host + \"/conversation.v1.ConversationService/GetParticipantsByKey\", request.toApiJson(), this.apiOptions())\n .pipe(\n map(resp => GetParticipantsByKeyResponse.fromProto(resp))\n );\n }\n \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"],"names":["enumStringToValue","e.MessageType","e.MessageStatus","e.ConversationChannel","e.PlatformLocation","e.ParticipantType","e.GlobalParticipantType","e.MetadataIdentifier","i2.HostService"],"mappings":"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"}