import { MTableQueries } from "../../common-types/common"; import { AcaClassProgramMaster, AcaClassProgramMasterBase } from "../../schema"; import { controllerResponse } from "../../utilities"; type IClassProgramMasterErrorLogger = { [key in keyof MClassProgramMaster]: string; }; type IClassProgramMasterGetByIdErrorLogger = { [key in keyof MClassProgramMasterGetByIdPayload]: string; }; type IClassProgramMasterDeleteErrorLogger = { [key in keyof MClassProgramMasterDeletePayload]: string; }; type IClassProgramMasterInsertUpdateErrorLogger = { [key in keyof MClassProgramMasterInsertUpdatePayload]: string; }; type IClassProgramMasterToggleStatusErrorLogger = { [key in keyof MClassProgramMasterToggleStatusPayload]: string; }; declare class MClassProgramMaster extends MTableQueries { acacpm_id?: string; acacpm_entity_id_syen?: string; acacpm_academic_year_id_acayr?: string; acacpm_student_role_id_syro?: string; acacpm_isactive?: boolean; constructor(init: MClassProgramMaster); Validate?(): Partial; } declare class MClassProgramMasterGetByIdPayload { acacpm_id?: string; constructor(init: MClassProgramMasterGetByIdPayload); Validate?(): Partial; } declare class MClassProgramMasterDeletePayload { acacpm_id?: string; constructor(init: MClassProgramMasterDeletePayload); Validate?(): Partial; } declare class MClassProgramMasterToggleStatusPayload { acacpm_id?: string; constructor(init: MClassProgramMasterToggleStatusPayload); Validate?(): Partial; } declare class MClassProgramMasterInsertUpdatePayload extends AcaClassProgramMaster { constructor(init: AcaClassProgramMaster); Validate?(): Partial; } /** * Configuration interface for class program general master * Used to determine if semester and branch dropdowns should be shown */ interface ClassProgramConfiguration { semesterType?: boolean; branchType?: boolean; [key: string]: unknown; } /** * Extended general master interface with configuration */ interface ClassProgramGeneralMaster { _id?: string; sygms_id_sygmt?: string; sygms_code?: string; sygms_title?: string; sygms_desc?: string; sygms_isactive?: boolean; sygms_configuration?: ClassProgramConfiguration; sygms_entity_id_syen?: string; } interface AcaClassProgramMasterResponse extends AcaClassProgramMasterBase { acacpm_class_program_id_sygms?: ClassProgramGeneralMaster | { _id?: string; acacpm_name?: string; sygms_configuration?: ClassProgramConfiguration; }; acacpm_academic_year_id_acayr?: { _id?: string; acayr_name?: string; acayr_code?: string; }; acacpm_entity_id_syen?: { _id?: string; syen_name?: string; }; } interface classProgramMasterControllerResponse extends controllerResponse { data?: AcaClassProgramMasterResponse[]; } interface classProgramMasterByIdControllerResponse extends controllerResponse { data?: AcaClassProgramMasterResponse; } interface classProgramMasterInsertUpdateControllerResponse extends controllerResponse { data?: AcaClassProgramMasterResponse; } interface classProgramMasterDeleteControllerResponse extends controllerResponse { data?: boolean; } interface classProgramMasterToggleStatusControllerResponse extends controllerResponse { data?: boolean; } export { IClassProgramMasterErrorLogger, IClassProgramMasterGetByIdErrorLogger, IClassProgramMasterDeleteErrorLogger, IClassProgramMasterInsertUpdateErrorLogger, IClassProgramMasterToggleStatusErrorLogger, MClassProgramMaster, MClassProgramMasterGetByIdPayload, MClassProgramMasterDeletePayload, MClassProgramMasterInsertUpdatePayload, MClassProgramMasterToggleStatusPayload, classProgramMasterControllerResponse, classProgramMasterByIdControllerResponse, classProgramMasterInsertUpdateControllerResponse, classProgramMasterDeleteControllerResponse, classProgramMasterToggleStatusControllerResponse, AcaClassProgramMasterResponse, ClassProgramConfiguration, ClassProgramGeneralMaster };