import { MTableQueries } from "../../common-types/common";
import { FleetTripLog, FleetTripLogBase } from "../../schema/fleet/fleet_trip_log";
import { controllerResponse } from "../../utilities";
type IFleetTripLogErrorLogger = {
    [key in keyof MFleetTripLog]: string;
};
type IFleetTripLogGetByIdErrorLogger = {
    [key in keyof MFleetTripLogGetByIdPayload]: string;
};
type IFleetTripLogDeleteErrorLogger = {
    [key in keyof MFleetTripLogDeletePayload]: string;
};
type IFleetTripLogInsertUpdateErrorLogger = {
    [key in keyof MFleetTripLogInsertUpdatePayload]: string;
};
declare class MFleetTripLog extends MTableQueries {
    flttl_vehicle_id_fltvh?: string;
    flttl_driver_id_fltdr?: string;
    flttl_route_id_fltrm?: string;
    flttl_entity_id_syen?: string;
    flttl_isactive?: boolean;
    flttl_trip_date?: Date;
    constructor(init: MFleetTripLog);
    Validate?(): Partial<IFleetTripLogErrorLogger>;
}
declare class MFleetTripLogGetByIdPayload {
    flttl_id?: string;
    constructor(init: MFleetTripLogGetByIdPayload);
    Validate?(): Partial<IFleetTripLogGetByIdErrorLogger>;
}
declare class MFleetTripLogDeletePayload {
    flttl_id?: string;
    constructor(init: MFleetTripLogDeletePayload);
    Validate?(): Partial<IFleetTripLogDeleteErrorLogger>;
}
declare class MFleetTripLogInsertUpdatePayload extends FleetTripLog {
    constructor(init: FleetTripLog);
    Validate?(): Partial<IFleetTripLogInsertUpdateErrorLogger>;
}
interface FleetTripLogResponse extends Omit<FleetTripLogBase, 'flttl_vehicle_id_fltvh' | 'flttl_driver_id_fltdr' | 'flttl_route_id_fltrm' | 'flttl_trip_type_sygms' | 'flttl_trip_status_sygms' | 'flttl_entity_id_syen' | 'flttl_academic_year_id_acayr'> {
    flttl_vehicle_id_fltvh?: {
        _id: string;
        fltvh_registration_number: string;
        fltvh_vehicle_name: string;
    };
    flttl_driver_id_fltdr?: {
        _id: string;
        fltdr_driver_name: string;
    };
    flttl_route_id_fltrm?: {
        _id: string;
        fltrm_route_name: string;
        fltrm_route_code: string;
    };
    flttl_trip_type_sygms?: {
        _id: string;
        sygms_title: string;
        sygms_code: string;
    };
    flttl_trip_status_sygms?: {
        _id: string;
        sygms_title: string;
        sygms_code: string;
    };
    flttl_entity_id_syen?: {
        _id: string;
        syen_name: string;
    };
}
interface fleetTripLogControllerResponse extends controllerResponse {
    data?: FleetTripLogResponse[] | FleetTripLogResponse | null;
    totalDocument?: number;
}
interface fleetTripLogByIdControllerResponse extends controllerResponse {
    data?: FleetTripLogResponse;
}
interface fleetTripLogInsertUpdateControllerResponse extends controllerResponse {
    data?: FleetTripLogResponse;
}
interface fleetTripLogDeleteControllerResponse extends controllerResponse {
    data?: {
        deleted: boolean;
    };
}
export { IFleetTripLogErrorLogger, IFleetTripLogGetByIdErrorLogger, IFleetTripLogDeleteErrorLogger, IFleetTripLogInsertUpdateErrorLogger, MFleetTripLog, MFleetTripLogGetByIdPayload, MFleetTripLogDeletePayload, MFleetTripLogInsertUpdatePayload, FleetTripLogResponse, fleetTripLogControllerResponse, fleetTripLogByIdControllerResponse, fleetTripLogInsertUpdateControllerResponse, fleetTripLogDeleteControllerResponse };
