import { ITask, IWorker } from "../../models"; /** * Call monitoring state * * @typedef CallMonitoring * @property {CallMonitoringStatus} status status of the monitor call * @property {ITask} [task] Monitored task * @property {Array} [workers] List of the participating the call * @memberof AppState */ export interface CallMonitoring { readonly status: CallMonitoringStatus; readonly task: ITask | null; readonly workers: Array | null; } /** * Status of call monitoring * For now private, JS would have to use 0, 1, 2 values * @enum {0 | 1 | 2} CallMonitoringStatus * @private * @property {0} none * @property {1} waiting * @property {2} monitoring * @memberof AppState */ export declare enum CallMonitoringStatus { none = 0, waiting = 1, monitoring = 2 } /** * Active filter * * @typedef TeamsView.AppliedFilter * @property {string} name name of the field to filter against * @property {FilterConditions} condition condition to use for the filter * @property {Array | string} values value or an array of values to filter */ export interface AppliedFilter { name: string; condition: FilterConditions; values: Array | string | Queue[]; } /** * Filter condition * * @enum { "IN" | "NOT_IN" | "CONTAINS" } FilterConditions * @memberof TeamsView * @property {"IN"} IN IN * @property {"NOT_IN"} NOT_IN NOT_IN * @property {"CONTAINS"} CONTAINS CONTAINS */ export declare enum FilterConditions { IN = "IN", NOT_IN = "NOT_IN", CONTAINS = "CONTAINS" } export interface Teams { description: string; friendly_name: string; member_count: number; owners: Array; team_sid: string; level: number | null; parent_team_sid: string | null; } export interface Queue { friendly_name: string; sid: string; }