@twilio/flex-ui
Version:
Twilio Flex UI
86 lines (85 loc) • 3.49 kB
TypeScript
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;