import { CreateConversationRequest } from '../../create-conversation-request'; import { InjectConversationEventRequest } from '../../inject-conversation-event-request'; import { InjectMessageRequest } from '../../inject-message-request'; import { ConversationChannel } from '../../conversation-channel'; import { Conversation } from '../../conversation'; import { ConversationMetadataUpdateStrategy } from '../../enums'; export interface CreateConversationRequestData { /** The conversation to create. ID will be generated for the conversation and any ID in the given conversation will be ignored. */ 'createConversationRequestBody': CreateConversationRequest; } export interface DeleteConversationRequestData { /** The unique ID of the conversation. This is generated by the system. */ 'conversation_id': string; } export interface GetConversationRequestData { /** The unique ID of the conversation. This is generated by the system. */ 'conversation_id': string; } export interface InjectEventRequestData { /** The unique ID of the conversation. This is generated by the system. */ 'conversation_id': string; /** Inject event request */ 'injectConversationEventRequestBody': InjectConversationEventRequest; } export interface InjectMessageRequestData { /** The ID of the conversation. */ 'conversation_id': string; /** Message to be injected. */ 'injectMessageRequestBody': InjectMessageRequest; } export interface ListConversationsRequestData { /** True if only active conversations should be listed. */ 'only_active'?: boolean; /** The ID of the app involved in the conversations. Note that either `app_id` or `contact_id` is required in order for the operation to function correctly. */ 'app_id'?: string; /** Resource name (ID) of the contact. Note that either `app_id` or `contact_id` is required in order for the operation to function correctly. */ 'contact_id'?: string; /** The maximum number of conversations to fetch. Defaults to 10 and the maximum is 20. */ 'page_size'?: number; /** Next page token previously returned if any. */ 'page_token'?: string; /** Only fetch conversations from the `active_channel` */ 'active_channel'?: ConversationChannel; } export interface ListRecentConversationsRequestData { /** The application ID */ 'app_id': string; /** True if only active conversations should be listed. Default is false. */ 'only_active'?: boolean; /** The maximum number of conversations to fetch. Defaults to 10 and the maximum value is 50. */ 'page_size'?: number; /** Next page token previously returned if any. When specifying this token, make sure to use the same values * for the other parameters from the request that originated the token, otherwise the paged results may be inconsistent. */ 'page_token'?: string; /** Whether to sort conversations by newest message first or oldest. Default is DESC (newest first) */ 'order'?: 'ASC' | 'DESC' | string; } export interface StopActiveConversationRequestData { /** The unique ID of the conversation. This is generated by the system. */ 'conversation_id': string; } export interface UpdateConversationRequestData { /** The unique ID of the conversation. This is generated by the system. */ 'conversation_id': string; /** The updated conversation. */ 'updateConversationRequestBody': Conversation; /** The set of field mask paths. */ 'update_mask'?: Array; /** Update strategy for the `conversation_metadata` field. */ 'metadata_update_strategy'?: ConversationMetadataUpdateStrategy; }