import { Client as ConversationsClient } from "@twilio/conversations"; import { Client as FlexSDKClient } from "@twilio/flex-sdk"; import { FlexSDKOptions } from "../../flex-ui-core/src"; import { Device } from "@twilio/voice-sdk"; import { CbmSdk } from "@twiliointernal/cbm-sdk"; import { SyncClient } from "twilio-sync"; import { Supervisor } from "twilio-taskrouter"; import { FeatureFlags } from "../FeatureFlags"; import { Manager } from "../Manager"; import { PluginManager } from "../PluginManager"; import type { SSOTokenPayload } from "../TokenStorage"; import { ClientManagerInstance } from "./ClientManagerHelpers"; type FlexClient = Supervisor | FlexSDKClient | ConversationsClient | SyncClient | Device | CbmSdk | PluginManager | FeatureFlags; /** * Flex Client manager * @private */ export declare class FlexClientManagerImpl { private clientMap; private clientRetryMap; private offline; constructor(); get degradedMode(): boolean; private setClientOffline; private setClientOnline; setDegradedMode(client: FlexClient, degraded: boolean, clientManagerName: ClientManagerInstance): void; isDegraded(client?: FlexClient | InstanceType): boolean; getDegradedClients(): any[]; init(tokenPayload: SSOTokenPayload, options?: FlexSDKOptions): Promise; private flexSdkSafeInit; private taskRouterSdkSafeInit; private voiceSdkSafeInit; private conversationsSdkSafeInit; private retrySDKInit; private retrySDKsInit; private retrySDKsInitOnRuntimeError; fetchFlexFeatures(manager: Manager): Promise; initFlexPlugins(flexComponents: any, manager: Manager): Promise; private initCBMSDK; private initCbmClientProxy; private initWorkerClientProxy; private initWorkspaceClientProxy; private initTaskRouterSDK; private generateFlexSDKClientProxy; private initFlexSDK; private generateSyncClientProxy; private initSyncSDK; private generateConversationsClientProxy; private initConversationsSDK; generateVoiceClientProxy(client: Device): Device; private initVoiceSDK; shutdownClients: () => void; } export {};