import { MTableQueries } from "../../common-types/common";
import { AcaPrgTrmSection, AcaPrgTrmSectionBase } from "../../schema";
import { controllerResponse } from "../../utilities";
type IPrgTrmSectionErrorLogger = {
    [key in keyof MPrgTrmSection]: string;
};
type IPrgTrmSectionGetByIdErrorLogger = {
    [key in keyof MPrgTrmSectionGetByIdPayload]: string;
};
type IPrgTrmSectionDeleteErrorLogger = {
    [key in keyof MPrgTrmSectionDeletePayload]: string;
};
type IPrgTrmSectionInsertUpdateErrorLogger = {
    [key in keyof MPrgTrmSectionInsertUpdatePayload]: string;
};
type IPrgTrmSectionToggleStatusErrorLogger = {
    [key in keyof MPrgTrmSectionToggleStatusPayload]: string;
};
type IPrgTrmSectionToggleLockErrorLogger = {
    [key in keyof MPrgTrmSectionToggleLockPayload]: string;
};
declare class MPrgTrmSection extends MTableQueries {
    acapts_class_program_id_acacpm?: string;
    acapts_class_program_branch_id_acabrn?: string;
    acapts_parent_class_prog_term_acapt?: string;
    acapts_entity_id_syen?: string;
    constructor(init: MPrgTrmSection);
    Validate?(): Partial<IPrgTrmSectionErrorLogger>;
}
declare class MPrgTrmSectionGetByIdPayload {
    acapts_id?: string;
    constructor(init: MPrgTrmSectionGetByIdPayload);
    Validate?(): Partial<IPrgTrmSectionGetByIdErrorLogger>;
}
declare class MPrgTrmSectionDeletePayload {
    acapts_id?: string;
    constructor(init: MPrgTrmSectionDeletePayload);
    Validate?(): Partial<IPrgTrmSectionDeleteErrorLogger>;
}
declare class MPrgTrmSectionToggleStatusPayload {
    acapts_id?: string;
    constructor(init: MPrgTrmSectionToggleStatusPayload);
    Validate?(): Partial<IPrgTrmSectionToggleStatusErrorLogger>;
}
declare class MPrgTrmSectionToggleLockPayload {
    acapts_id?: string;
    constructor(init: MPrgTrmSectionToggleLockPayload);
    Validate?(): Partial<IPrgTrmSectionToggleLockErrorLogger>;
}
declare class MPrgTrmSectionInsertUpdatePayload extends AcaPrgTrmSection {
    constructor(init: AcaPrgTrmSection);
    Validate?(): Partial<IPrgTrmSectionInsertUpdateErrorLogger>;
}
declare class AcaPrgTrmSectionResponse extends AcaPrgTrmSectionBase {
    acapts_class_program_id_acacpm?: {
        _id?: string;
        acacpm_alise_title?: string;
        acacpm_name?: string;
        acacpm_code?: string;
        acacpm_class_program_id_sygms?: string;
        acacpm_academic_year_id_acayr?: string;
        acacpm_entity_id_syen?: string;
        acacpm_isactive?: boolean;
    };
    acapts_parent_class_prog_term_acapt?: {
        _id?: string;
        acapt_name?: string;
        acapt_code?: string;
        acapt_sequence?: number;
        acapt_start_date?: string | Date;
        acapt_end_date?: string | Date;
        acapt_class_program_id_acacpm?: string;
        acapt_parent_class_prog_term_acapt?: string;
        acapt_class_prg_branch_acabrn?: string;
        acapt_isactive?: boolean;
        acapt_islocked?: boolean;
    };
    acapts_class_program_branch_id_acabrn?: string | {
        _id?: string;
        acabrn_name?: string;
        acabrn_code?: string;
    };
    acapts_description?: string;
    acapts_iscurrent?: boolean;
}
interface prgTrmSectionControllerResponse extends controllerResponse {
    data?: AcaPrgTrmSectionResponse[];
}
interface prgTrmSectionByIdControllerResponse extends controllerResponse {
    data?: AcaPrgTrmSectionResponse;
}
interface prgTrmSectionInsertUpdateControllerResponse extends controllerResponse {
    data?: AcaPrgTrmSectionResponse;
}
interface prgTrmSectionDeleteControllerResponse extends controllerResponse {
    data?: boolean;
}
interface prgTrmSectionToggleStatusControllerResponse extends controllerResponse {
    data?: boolean;
}
interface prgTrmSectionToggleLockControllerResponse extends controllerResponse {
    data?: boolean;
}
export { IPrgTrmSectionErrorLogger, IPrgTrmSectionGetByIdErrorLogger, IPrgTrmSectionDeleteErrorLogger, IPrgTrmSectionInsertUpdateErrorLogger, IPrgTrmSectionToggleStatusErrorLogger, IPrgTrmSectionToggleLockErrorLogger, MPrgTrmSection, MPrgTrmSectionGetByIdPayload, MPrgTrmSectionDeletePayload, MPrgTrmSectionInsertUpdatePayload, MPrgTrmSectionToggleStatusPayload, MPrgTrmSectionToggleLockPayload, prgTrmSectionControllerResponse, prgTrmSectionByIdControllerResponse, prgTrmSectionInsertUpdateControllerResponse, prgTrmSectionDeleteControllerResponse, prgTrmSectionToggleStatusControllerResponse, prgTrmSectionToggleLockControllerResponse, AcaPrgTrmSectionResponse };
