import { MTableQueries } from "../../common-types/common";
import { ICoreSydsgl } from "../../schema";
import { controllerResponse } from "../../utilities";
type IGradeLevelErrorLogger = {
    [key in keyof MGradeLevel]: string;
};
type IGradeLevelGetByIdErrorLogger = {
    [key in keyof MGradeLevelGetByIdPayload]: string;
};
type IGradeLevelDeleteErrorLogger = {
    [key in keyof MGradeLevelDeletePayload]: string;
};
type IGradeLevelInsertUpdateErrorLogger = {
    [key in keyof MGradeLevelInsertUpdatePayload]: string;
};
type IGradeLevelToggleStatusErrorLogger = {
    [key in keyof MGradeLevelToggleStatusPayload]: string;
};
type IGradeLevelChangeSequenceErrorLogger = {
    [key in keyof MGradeLevelChangeSequencePayload]: string;
};
declare class MGradeLevel extends MTableQueries {
    sydsgl_name?: string;
    sydsgl_description?: string;
    sydsgl_order?: number;
    sydsgl_isactive?: boolean;
    sydsgl_entity_id_syen?: string;
    constructor(init: MGradeLevel);
    Validate?(): Partial<IGradeLevelErrorLogger>;
}
declare class MGradeLevelGetByIdPayload {
    sydsgl_id?: string;
    constructor(init: MGradeLevelGetByIdPayload);
    Validate?(): Partial<IGradeLevelGetByIdErrorLogger>;
}
declare class MGradeLevelDeletePayload {
    sydsgl_id?: string;
    constructor(init: MGradeLevelDeletePayload);
    Validate?(): Partial<IGradeLevelDeleteErrorLogger>;
}
declare class MGradeLevelInsertUpdatePayload extends ICoreSydsgl {
    constructor(init: ICoreSydsgl);
    Validate?(): Partial<IGradeLevelInsertUpdateErrorLogger>;
}
declare class MGradeLevelToggleStatusPayload {
    sydsgl_id?: string;
    constructor(init: MGradeLevelToggleStatusPayload);
    Validate?(): Partial<IGradeLevelToggleStatusErrorLogger>;
}
declare class MGradeLevelChangeSequencePayload {
    grade_level_sequences?: {
        sydsgl_id: string;
        sydsgl_order: number;
    }[];
    constructor(init: MGradeLevelChangeSequencePayload);
    Validate?(): Partial<IGradeLevelChangeSequenceErrorLogger>;
}
interface gradeLevelControllerResponse extends controllerResponse {
    data?: ICoreSydsgl[];
}
interface gradeLevelByIdControllerResponse extends controllerResponse {
    data?: ICoreSydsgl;
}
interface gradeLevelInsertUpdateControllerResponse extends controllerResponse {
    data?: ICoreSydsgl;
}
interface gradeLevelDeleteControllerResponse extends controllerResponse {
    data?: boolean;
}
interface gradeLevelToggleStatusControllerResponse extends controllerResponse {
    data?: boolean;
}
interface gradeLevelChangeSequenceControllerResponse extends controllerResponse {
    data?: {
        updated_count: number;
        grade_levels: {
            sydsgl_id: string;
            sydsgl_order: number;
        }[];
    };
}
export { IGradeLevelErrorLogger, IGradeLevelGetByIdErrorLogger, IGradeLevelDeleteErrorLogger, IGradeLevelInsertUpdateErrorLogger, IGradeLevelToggleStatusErrorLogger, IGradeLevelChangeSequenceErrorLogger, MGradeLevel, MGradeLevelGetByIdPayload, MGradeLevelDeletePayload, MGradeLevelInsertUpdatePayload, MGradeLevelToggleStatusPayload, MGradeLevelChangeSequencePayload, gradeLevelControllerResponse, gradeLevelByIdControllerResponse, gradeLevelInsertUpdateControllerResponse, gradeLevelDeleteControllerResponse, gradeLevelToggleStatusControllerResponse, gradeLevelChangeSequenceControllerResponse };
