import { ApiFetchClient, ConversationRegion, SinchClientParameters, UnifiedCredentials } from '@sinch/sdk-client'; import { ContactApi } from './contact'; import { AppApi } from './app'; import { EventsApi } from './events'; import { MessagesApi } from './messages'; import { TranscodingApi } from './transcoding'; import { CapabilityApi } from './capability'; import { ConversationApi } from './conversation'; import { ProjectSettingsApi } from './project-settings'; import { WebhooksApi } from './webhooks'; import { TemplatesV1Api } from './templates-v1'; import { TemplatesV2Api } from './templates-v2'; import { ConsentsApi } from './consents'; export declare class LazyConversationApiClient { sharedConfig: SinchClientParameters; apiFetchClient?: ApiFetchClient; constructor(sharedConfig: SinchClientParameters); getApiClient(): ApiFetchClient; resetApiClient(): void; private buildHostname; } export declare class LazyConversationTemplateApiClient { sharedConfig: SinchClientParameters; apiFetchClient?: ApiFetchClient; constructor(sharedConfig: SinchClientParameters); getApiClient(): ApiFetchClient; resetApiClient(): void; private buildHostname; } /** * The Conversation Service exposes the following APIs: * - app * - contact * - capability * - conversation * - messages * - events * - transcoding * - webhooks * - templatesV1 * - templatesV2 */ export declare class ConversationService { readonly contact: ContactApi; readonly app: AppApi; readonly events: EventsApi; readonly messages: MessagesApi; readonly transcoding: TranscodingApi; readonly capability: CapabilityApi; readonly conversation: ConversationApi; readonly projectSettings: ProjectSettingsApi; readonly webhooks: WebhooksApi; /** @deprecated Use {@link templatesV2} instead */ readonly templatesV1: TemplatesV1Api; readonly templatesV2: TemplatesV2Api; readonly consents: ConsentsApi; readonly lazyConversationClient: LazyConversationApiClient; readonly lazyConversationTemplateClient: LazyConversationTemplateApiClient; /** * Create a new ConversationService instance with its configuration. It needs the following parameters for authentication: * - `projectId` * - `keyId` * - `keySecret` * * Other supported properties: * - `conversationRegion` * - `conversationHostname` * - `conversationTemplatesHostname` * @param {SinchClientParameters} params - an Object containing the necessary properties to initialize the service */ constructor(params: SinchClientParameters); setApiClientConfig(newParams: SinchClientParameters): void; /** * Update the default hostname for each API (except Templates) * @param {string} hostname - The new hostname to use for the APIs. */ setHostname(hostname: string): void; /** * Update the default hostname for the Templates APIs * @param {string} hostname - The new hostname to use for the Templates APIs. */ setTemplatesHostname(hostname: string): void; /** * Updates the credentials used to authenticate API requests. * @param credentials - The new credentials to use for the APIs. */ setCredentials(credentials: Partial): void; /** * Update the current region for each API * @param {ConversationRegion} region - The new region to use in the production URL */ setRegion(region: ConversationRegion): void; }