import { MTableQueries } from "../../common-types/common";
import { FleetMaintenanceRecord, FleetMaintenanceRecordBase } from "../../schema/fleet/fleet_maintenance_record";
import { controllerResponse } from "../../utilities";
type IFleetMaintenanceRecordErrorLogger = {
    [key in keyof MFleetMaintenanceRecord]: string;
};
type IFleetMaintenanceRecordGetByIdErrorLogger = {
    [key in keyof MFleetMaintenanceRecordGetByIdPayload]: string;
};
type IFleetMaintenanceRecordDeleteErrorLogger = {
    [key in keyof MFleetMaintenanceRecordDeletePayload]: string;
};
type IFleetMaintenanceRecordInsertUpdateErrorLogger = {
    [key in keyof MFleetMaintenanceRecordInsertUpdatePayload]: string;
};
declare class MFleetMaintenanceRecord extends MTableQueries {
    fltmr_vehicle_id_fltvh?: string;
    fltmr_maintenance_type_sygms?: string;
    fltmr_entity_id_syen?: string;
    fltmr_isactive?: boolean;
    constructor(init: MFleetMaintenanceRecord);
    Validate?(): Partial<IFleetMaintenanceRecordErrorLogger>;
}
declare class MFleetMaintenanceRecordGetByIdPayload {
    fltmr_id?: string;
    constructor(init: MFleetMaintenanceRecordGetByIdPayload);
    Validate?(): Partial<IFleetMaintenanceRecordGetByIdErrorLogger>;
}
declare class MFleetMaintenanceRecordDeletePayload {
    fltmr_id?: string;
    constructor(init: MFleetMaintenanceRecordDeletePayload);
    Validate?(): Partial<IFleetMaintenanceRecordDeleteErrorLogger>;
}
declare class MFleetMaintenanceRecordInsertUpdatePayload extends FleetMaintenanceRecord {
    constructor(init: FleetMaintenanceRecord);
    Validate?(): Partial<IFleetMaintenanceRecordInsertUpdateErrorLogger>;
}
interface FleetMaintenanceRecordResponse extends Omit<FleetMaintenanceRecordBase, 'fltmr_vehicle_id_fltvh' | 'fltmr_maintenance_type_sygms' | 'fltmr_service_category_sygms' | 'fltmr_entity_id_syen' | 'fltmr_performed_by_user'> {
    fltmr_vehicle_id_fltvh?: {
        _id: string;
        fltvh_registration_number: string;
        fltvh_vehicle_name: string;
    };
    fltmr_maintenance_type_sygms?: {
        _id: string;
        sygms_title: string;
        sygms_code: string;
    };
    fltmr_service_category_sygms?: {
        _id: string;
        sygms_title: string;
        sygms_code: string;
    };
    fltmr_entity_id_syen?: {
        _id: string;
        syen_name: string;
    };
    fltmr_performed_by_user?: {
        _id: string;
        username: string;
    };
}
interface fleetMaintenanceRecordControllerResponse extends controllerResponse {
    data?: FleetMaintenanceRecordResponse[] | FleetMaintenanceRecordResponse | null;
    totalDocument?: number;
}
interface fleetMaintenanceRecordByIdControllerResponse extends controllerResponse {
    data?: FleetMaintenanceRecordResponse;
}
interface fleetMaintenanceRecordInsertUpdateControllerResponse extends controllerResponse {
    data?: FleetMaintenanceRecordResponse;
}
interface fleetMaintenanceRecordDeleteControllerResponse extends controllerResponse {
    data?: {
        deleted: boolean;
    };
}
export { IFleetMaintenanceRecordErrorLogger, IFleetMaintenanceRecordGetByIdErrorLogger, IFleetMaintenanceRecordDeleteErrorLogger, IFleetMaintenanceRecordInsertUpdateErrorLogger, MFleetMaintenanceRecord, MFleetMaintenanceRecordGetByIdPayload, MFleetMaintenanceRecordDeletePayload, MFleetMaintenanceRecordInsertUpdatePayload, FleetMaintenanceRecordResponse, fleetMaintenanceRecordControllerResponse, fleetMaintenanceRecordByIdControllerResponse, fleetMaintenanceRecordInsertUpdateControllerResponse, fleetMaintenanceRecordDeleteControllerResponse };
