import { Signal } from "@uuip/unified-ui-platform-sdk"; import { AqmNotifs, WSStatus } from "../../core/aqm-notifs"; import { Msg } from "../../core/aqm-reqs"; import { Service } from "../../index"; import { exposedBackendAPIs, exposedBackendContactAPIs } from "../agentx-backend-proxy/agentx-backend-for-jssdk"; import { aqmAiAssistant } from "./ai-assistant-events"; import { aqmConfigs } from "./aqm-service-configs"; import { ConnectionService } from "./aqm-service-connection"; import { aqmContact } from "./aqm-service-contact"; import { aqmDialer } from "./aqm-service-dialer"; import { aqmScreenPop } from "./aqm-service-screenpop"; import { routingAgent } from "./routing-agent-service"; import { createRoutingContactAPIS } from "./routing-contact"; import { routingSupervisor } from "./routing-supervisor-service"; import ScheduleCallback from "./schedule-callback/ScheduleCallback"; export type ConnectionLostDetails = { isConnectionLost: boolean; isRestoreFailed: boolean; isSocketReconnected: boolean; isKeepAlive?: boolean; }; /** * Aqm Service. * Initializes Notifs connection as well as provides interface to emit AQM requests. */ export declare class AqmService { private readonly notifs; OnConnectionLost: Signal.WithData; private readonly OnConnectionLostSend; WillReconnectDelay: Signal.WithData; private readonly WillReconnectDelaySend; readonly agent: ReturnType & ReturnType; readonly configs: ReturnType; readonly contact: ReturnType & ReturnType & ReturnType; readonly dialer: ReturnType; readonly connectionConfig: ReturnType; readonly screenpop: ReturnType; readonly supervisor: ReturnType; readonly aiAssistant: ReturnType; private connectionWorker; private readonly aqm; private readonly httpApi; private readonly useWebsocketInWebworker; readonly scheduleCallback: ScheduleCallback; websocketStatus: Service.Aqm.Connection.ConnectionLostDetails; constructor(accessToken: string, organizationId: string, init: (p: () => Promise) => void, useWebsocketInWebworker: boolean, autoResolveAfterDelay: boolean, useLegacyReconnect: boolean, aqmNotifs: AqmNotifs); getWebsocketStatus(): Service.Aqm.Connection.ConnectionLostDetails | WSStatus; closeSocket(shouldReconnect: boolean, reason: string): void; restartConnectionLoop(): void; private createAqmWebworker; private workerMessageHandler; private readonly updateWebSocketStatus; } declare module "../../index" { namespace Service.Aqm.Global { type Failure = Msg<{ agentId: string; trackingId: string; reasonCode: number; orgId: string; reason: string; type: string; }>; } } //# sourceMappingURL=aqm-service.d.ts.map