UNPKG

@twilio/flex-ui

Version:

Twilio Flex UI

86 lines (85 loc) 3.49 kB
import { Question, QuestionCategory, Questionnaire } from "../components/Insights/QualityManagementView/QualityManagement.definitions"; import { QMManageQuestionnairesResponse } from "../core/Insights/QualityManagement/QualityManagement.definitions"; export declare const QUALITY_MGMT_UPDATE_ALL = "QUALITY_MGMT_UPDATE_ALL"; export declare const QUALITY_MGMT_ROLLBACK = "QUALITY_MGMT_ROLLBACK"; export declare const QUALITY_MGMT_UPDATE_QUESTIONS_FOR_CATEGORY = "QUALITY_MGMT_UPDATE_QUESTIONS_FOR_CATEGORY"; export declare const QUALITY_MGMT_FETCH_START = "QUALITY_MGMT_FETCH_START"; export declare const QUALITY_MGMT_FETCH_ERROR = "QUALITY_MGMT_FETCH_ERROR"; export declare const QUALITY_MGMT_CREATE_UPDATE_CATEGORY = "QUALITY_MGMT_CREATE_UPDATE_CATEGORY"; export declare const QUALITY_MGMT_CREATE_UPDATE_QUESTION = "QUALITY_MGMT_CREATE_UPDATE_QUESTION"; export declare const QUALITY_MGMT_CREATE_UPDATE_QUESTIONNAIRE = "QUALITY_MGMT_CREATE_UPDATE_QUESTIONNAIRE"; export declare const QUALITY_MGMT_UPDATE_QUESTIONNAIRE_QUESTIONS = "QUALITY_MGMT_UPDATE_QUESTIONNAIRE_QUESTIONS"; export declare const QUALITY_MGMT_UPDATE_QUESTIONNAIRE_ACTIVE_STATUS = "QUALITY_MGMT_UPDATE_QUESTIONNAIRE_ACTIVE_STATUS"; export declare const QUALITY_MGMT_DELETE_QUESTION = "QUALITY_MGMT_DELETE_QUESTION"; export declare const QUALITY_MGMT_DELETE_CATEGORY = "QUALITY_MGMT_DELETE_CATEGORY"; export declare const QUALITY_MGMT_DELETE_QUESTIONNAIRE = "QUALITY_MGMT_DELETE_QUESTIONNAIRE"; export declare const QUALITY_MGMT_DUPLICATE_QUESTIONNAIRE = "QUALITY_MGMT_DUPLICATE_QUESTIONNAIRE"; export type QualityManagementAction = { type: typeof QUALITY_MGMT_UPDATE_ALL; payload: QMManageQuestionnairesResponse; } | { type: typeof QUALITY_MGMT_ROLLBACK; payload: QualityManagementState; } | { type: typeof QUALITY_MGMT_UPDATE_QUESTIONS_FOR_CATEGORY; payload: { categoryId: string; questions: Question[]; }; } | { type: typeof QUALITY_MGMT_FETCH_START; } | { type: typeof QUALITY_MGMT_FETCH_ERROR; payload: Error; } | { type: typeof QUALITY_MGMT_CREATE_UPDATE_CATEGORY; payload: Partial<QuestionCategory> & { id: QuestionCategory["id"]; }; } | { type: typeof QUALITY_MGMT_CREATE_UPDATE_QUESTION; payload: Partial<Question> & { id: Question["id"]; }; } | { type: typeof QUALITY_MGMT_CREATE_UPDATE_QUESTIONNAIRE; payload: Partial<Questionnaire> & { id: Question["id"]; }; } | { type: typeof QUALITY_MGMT_UPDATE_QUESTIONNAIRE_QUESTIONS; payload: { questionnaireId: string; questions: string[]; }; } | { type: typeof QUALITY_MGMT_UPDATE_QUESTIONNAIRE_ACTIVE_STATUS; payload: { questionnaireId: string; active: boolean; }; } | { type: typeof QUALITY_MGMT_DELETE_QUESTION; payload: string; } | { type: typeof QUALITY_MGMT_DELETE_CATEGORY; payload: string; } | { type: typeof QUALITY_MGMT_DELETE_QUESTIONNAIRE; payload: string; } | { type: typeof QUALITY_MGMT_DUPLICATE_QUESTIONNAIRE; payload: { templateId: string; newId: string; }; }; export type QualityManagementState = { accountId: string; categories: Record<string, QuestionCategory>; questions: Record<string, Question>; questionnaires: Record<string, Questionnaire>; loading: boolean; error?: Error; }; export declare function reduce(state?: QualityManagementState, action?: QualityManagementAction): QualityManagementState;