import { ConversationState } from "./flex-ui-core/src"; import { Call } from "@twilio/voice-sdk"; import { Reservation } from "twilio-taskrouter"; import { ITask } from "./models"; /** * @classdesc Helper class for state. * @hideconstructor * @category State Management */ export declare class StateHelper { /** * Get current call state if one exists. * @static * @returns {Call| undefined} If it does not exist. * @example * import { StateHelper } from "@twilio/flex-ui"; * const activeCall = StateHelper.getCurrentPhoneCallState(); */ static getCurrentPhoneCallState(): Call | undefined; /** * Gets current chat channel state for a task. * @static * @param {ITask} task Task. * @returns {ConversationState.ConversationState | undefined} Chat channel state. * @example * import { StateHelper } from "@twilio/flex-ui"; * const conversation = StateHelper.getConversationStateForTask(myConversationTask); */ static getConversationStateForTask(task: ITask): ConversationState.ConversationState | undefined; /** * @private * @deprecated * @deprecatedSince 2.0.0 * @altRecommendation Use `StateHelper.getConversationStateForTask` instead. * @altRecommendationExample * import { StateHelper } from "@twilio/flex-ui"; * const conversation = StateHelper.getConversationStateForTask(myConversationTask); * @altRecommendationLink https://assets.flex.twilio.com/docs/releases/flex-ui/latest/advanced/state-management/StateHelper/ */ static getChatChannelStateForTask(task: ITask): import("./flex-ui-core/src/state/ChannelState").ChannelState; /** * Gets TaskRouter Reservation object. * @static * @param {string} reservationSid Reservation sid to retrieve. * @returns {Reservation} Reservation instance. * @example * import { StateHelper } from "@twilio/flex-ui"; * const reservation = StateHelper.getReservation("WRXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"); */ static getReservation(reservationSid: string): Reservation; static getTaskByTaskrouterTaskSid(sid: string): ITask>; /** * Returns true if user has a pending call reservation. * @static * @returns {boolean} If user has a pending call reservation. * @example * import { StateHelper } from "@twilio/flex-ui"; * const isCallWaiting = StateHelper.hasPendingCall(); */ static hasPendingCall(): boolean; }