import { MTableQueries } from "../../common-types/common";
import { IEmailVendor } from "../../schema/email/email_vendor";
import { controllerResponse } from "../../utilities";
type IEmailVendorErrorLogger = {
    [key in keyof MEmailVendor]: string;
};
type IEmailVendorGetByIdErrorLogger = {
    [key in keyof MEmailVendorGetByIdPayload]: string;
};
type IEmailVendorDeleteErrorLogger = {
    [key in keyof MEmailVendorDeletePayload]: string;
};
type IEmailVendorInsertUpdateErrorLogger = {
    [key in keyof MEmailVendorInsertUpdatePayload]: string;
};
type IEmailVendorToggleStatusErrorLogger = {
    [key in keyof MEmailVendorToggleStatusPayload]: string;
};
declare class MEmailVendor extends MTableQueries {
    evdr_name?: string;
    evdr_isactive?: boolean;
    query?: string;
    constructor(init: MEmailVendor);
    Validate?(): Partial<IEmailVendorErrorLogger>;
}
declare class MEmailVendorGetByIdPayload {
    evdr_id?: string;
    _id?: string;
    constructor(init: MEmailVendorGetByIdPayload);
    Validate?(): Partial<IEmailVendorGetByIdErrorLogger>;
}
declare class MEmailVendorDeletePayload {
    evdr_id?: string;
    _id?: string;
    constructor(init: MEmailVendorDeletePayload);
    Validate?(): Partial<IEmailVendorDeleteErrorLogger>;
}
declare class MEmailVendorToggleStatusPayload {
    evdr_id?: string;
    _id?: string;
    evdr_isactive?: boolean;
    constructor(init: MEmailVendorToggleStatusPayload);
    Validate?(): Partial<IEmailVendorToggleStatusErrorLogger>;
}
declare class MEmailVendorInsertUpdatePayload implements IEmailVendor {
    _id?: string;
    evdr_name: string;
    evdr_desc: string;
    evdr_api_end_point: string;
    evdr_isactive: boolean;
    constructor(init: Partial<IEmailVendor> & {
        _id?: string;
    });
    Validate?(): Partial<IEmailVendorInsertUpdateErrorLogger>;
}
interface emailVendorControllerResponse extends controllerResponse {
    data?: any[] | any | null;
    total?: number;
    totalDocument?: number;
}
interface emailVendorByIdControllerResponse extends controllerResponse {
    data?: any | null;
}
interface emailVendorInsertUpdateControllerResponse extends controllerResponse {
    data?: any | null;
}
interface emailVendorDeleteControllerResponse extends controllerResponse {
    data?: any | null;
}
interface emailVendorToggleStatusControllerResponse extends controllerResponse {
    data?: any | null;
}
export { MEmailVendor, MEmailVendorGetByIdPayload, MEmailVendorDeletePayload, MEmailVendorInsertUpdatePayload, MEmailVendorToggleStatusPayload, emailVendorControllerResponse, emailVendorByIdControllerResponse, emailVendorInsertUpdateControllerResponse, emailVendorDeleteControllerResponse, emailVendorToggleStatusControllerResponse };
