import { IStoreWrapper, IStore, InitParams, TASK_EVENTS, CC_EVENTS, IWrapupCode, WithWebex, ICustomState, IdleCode, IContactCenter, ITask, BuddyDetails, ContactServiceQueue } from './store.types';
declare class StoreWrapper implements IStoreWrapper {
    store: IStore;
    onTaskRejected?: (reason: string) => void;
    constructor();
    get teams(): Team[];
    get loginOptions(): string[];
    get cc(): IContactCenter;
    get logger(): import("./store.types").ILogger;
    get idleCodes(): IdleCode[];
    get agentId(): string;
    get deviceType(): string;
    get wrapupCodes(): IWrapupCode[];
    get currentTask(): ITask;
    get isAgentLoggedIn(): boolean;
    get taskList(): ITask[];
    get incomingTask(): ITask;
    get wrapupRequired(): boolean;
    get currentState(): string;
    get lastStateChangeTimestamp(): number;
    get lastIdleCodeChangeTimestamp(): number;
    get showMultipleLoginAlert(): boolean;
    get currentTheme(): string;
    get customState(): ICustomState;
    get consultCompleted(): boolean;
    get consultInitiated(): boolean;
    get consultAccepted(): boolean;
    get consultStartTimeStamp(): number;
    get callControlAudio(): MediaStream;
    get consultOfferReceived(): boolean;
    get isQueueConsultInProgress(): boolean;
    get currentConsultQueueId(): string;
    get isEndConsultEnabled(): boolean;
    get allowConsultToQueue(): boolean;
    setCurrentTheme: (theme: string) => void;
    setShowMultipleLoginAlert: (value: boolean) => void;
    setDeviceType: (option: string) => void;
    setCurrentState: (state: string) => void;
    setLastStateChangeTimestamp: (timestamp: number) => void;
    setLastIdleCodeChangeTimestamp: (timestamp: number) => void;
    setIsAgentLoggedIn: (value: boolean) => void;
    setWrapupRequired: (value: boolean) => void;
    setCurrentTask: (task: ITask) => void;
    setIncomingTask: (task: ITask) => void;
    setTaskList: (taskList: ITask[]) => void;
    setWrapupCodes: (wrapupCodes: IWrapupCode[]) => void;
    setConsultCompleted: (value: boolean) => void;
    setConsultInitiated: (value: boolean) => void;
    setConsultAccepted: (value: boolean) => void;
    setConsultOfferReceived: (value: boolean) => void;
    setConsultStartTimeStamp: (timestamp: number) => void;
    setCallControlAudio: (audio: MediaStream | null) => void;
    setIsQueueConsultInProgress: (value: boolean) => void;
    setCurrentConsultQueueId: (queueId: string | null) => void;
    setState: (state: ICustomState | IdleCode) => void;
    setTaskRejected: (callback: ((reason: string) => void) | undefined) => void;
    setCCCallback: (event: CC_EVENTS | TASK_EVENTS, callback: any) => void;
    setTaskCallback: (event: TASK_EVENTS, callback: any, taskId: string) => void;
    removeCCCallback: (event: CC_EVENTS) => void;
    removeTaskCallback: (event: TASK_EVENTS, callback: any, taskId: string) => void;
    init(options: InitParams): Promise<void>;
    registerCC: (webex?: WithWebex["webex"]) => Promise<void>;
    handleTaskRemove: (event: any) => void;
    handleTaskEnd: (event: any, wrapupRequired: any) => void;
    handleTaskAssigned: (event: any) => void;
    handleTaskWrapUp: (event: any) => void;
    handleTaskMedia: (track: any) => void;
    handleConsultCreated: () => void;
    handleConsulting: (event: any) => void;
    handleConsultEnd: (event: any) => void;
    handleConsultOffer: () => void;
    handleConsultAccepted: (event: any) => void;
    handleConsultQueueCancelled: () => void;
    handleIncomingTask: (event: any) => void;
    handleStateChange: (data: any) => void;
    handleMultiLoginCloseSession: (data: any) => void;
    handleTaskHydrate: (event: any) => void;
    handleTaskReject: (taskId: string, reason: string) => void;
    getBuddyAgents: () => Promise<Array<BuddyDetails>>;
    getQueues: () => Promise<Array<ContactServiceQueue>>;
    cleanUpStore: () => void;
    setupIncomingTaskHandler: (ccSDK: IContactCenter) => void;
}
declare const storeWrapper: StoreWrapper;
export default storeWrapper;
