export declare enum PersonalRoutineType { PERSONALROUTINE_ATWORK = "At work", PERSONALROUTINE_ONBREAK = "On break", PERSONALROUTINE_OUTOFOFFICE = "Out of office", PERSONALROUTINE_DND = "Do not disturb", PERSONALROUTINE_CUSTOM = "Custom" } export declare class PersonalRoutine { /** * @public * @property {string} A user routine unique identifier. * @readonly */ id: string; /** * @public * @property {string} Type of routine. Could be: "At work", "Out of office", "On break", "Do not disturb", "Custom" * @readonly */ type: PersonalRoutineType; /** * @public * @property {string} id of icon associated with routine type. * @readonly */ iconId: string; /** * @public * @property {string} Name of the routine */ private _name; get name(): string; set name(value: string); /** * @public * @property {boolean} Specify whether this routine is activated or not. */ active: boolean; /** * @public * @property { { manage: boolean, value: string } } Presence mode data * manage: Is presence mode managed on routine activation. Default value: false; * value: Presence mode value, same choice(s) as in Rainbow GUI. Default value: "online". Allowed values: "online", "away", "dnd", "invisible" */ presence: { manage: boolean; value: string; }; /** * @public * @property { { manage: boolean; policy: string; phoneNumberId?: string } } CLIOptions data * manage: Is CLI managed on routine activation. Default value: false; * policy: Cli options policy. Default value: "company_policy". Allowed values: "company_policy", "installation_number", "user_ddi_number", "other_ddi_number" * phoneNumberId: Phone number id in "other_ddi_number" policy */ cliOptions: { manage: boolean; policy: string; phoneNumberId?: string; anonymous?: boolean; }; /** * @public * @property { { manage: boolean, mode: string } } Device mode data * manage: Is device mode managed on routine activation. Default value: false; * mode: Device mode value, same choice(s) as in Rainbow GUI. Default value: "computer". Allowed values: "computer", "office_phone" */ deviceMode: { manage: boolean; mode: string; }; /** * @public * @property {CallForwardData} Immediate call forward data */ immediateCallForward: CallForwardData; /** * @public * @property {CallForwardData} Busy call forward data */ busyCallForward: CallForwardData; /** * @public * @property {CallForwardData} No reply call forward data */ noreplyCallForward: CallForwardData; /** * @public * @property {{ manage: boolean, withdrawAll: boolean, huntingGroupsWithdraw: { rvcpGroupId: string, status: string }[] }} Hunting groups configuration * manage: Is huntingGroups mode managed on routine activation. Default value: false; * withdrawAll: Not for work routine. Default value: true * huntingGroupsWithdraw: Array of objects on user status in each hunting groups, only for work routine * rvcpGroupId: Hunting group unique identifier * status: User's status in the hunting group. Allowed values: active, idle */ huntingGroups: { manage: boolean; withdrawAll?: boolean; huntingGroupsWithdraw?: { rvcpGroupId: string; status: string; }[]; }; /** * @public * @property {{ manage: boolean, active: boolean, message: string } }} Absence management * manage: Is outOfOffice managed on routine activation. Default value: false; * active: Is out of office active or not when managed. Default value: false; * message: Out of Office message. Default value: ""; */ outOfOffice: { manage: boolean; active: boolean; message: string; }; /** * @public * @property {{ manage: boolean, active: boolean, message: string } }} Absence management * manage: Is customStatus managed on routine activation. Default value: false; * active: Is out of office active or not when managed. Default value: false; * status: custom status message. Default value: ""; * emoji: emoji illusstrating the status. Default value: "💬"; * expirationDate: expiration date of custom status. For routines, it is ALWAYS null or undefined as it does not have expiration time */ customStatus: { manage: boolean; active: boolean; status: string; emoji: string; }; private constructor(); static createRoutineFromData(data: any): PersonalRoutine; updateRoutineFromData(data: any): void; static getIconIdByType(type: PersonalRoutineType): string; } export interface CallForwardData { /** * @public * @property {boolean} Is forward managed on routine activation */ manage: boolean; /** * @public * @property {string} Type of forward */ callForwardType: string; /** * @public * @property {boolean} Is call forward activated */ activate: boolean; /** * @public * @property {string} Forward destination number */ number: string; /** * @public * @property {string} Forward destination type. Allowed values: "voicemail", "internalnumber", "externalnumber" */ destinationType: string; /** * @public * @property {number} delay in ms for no reply forward. Only applicable for callForwardType = "noreply" */ noReplyDelay?: number; /** * @public * @property {string} name name of forward destination */ name?: string; } //# sourceMappingURL=personalRoutine.model.d.ts.map