import { BaseCreateDTO, BaseUpdateDTO } from "./BaseDTO";
import { Vehicle } from "../../../models/Vehicle";
import { VehicleMake } from "../../../models/VehicleMake";
import { VehicleModelFilter, VehicleModelOptions, VehicleModelUniqueFilter } from "../utilities";
export declare class VehicleModelGetDTO {
    filter?: VehicleModelFilter;
    options?: VehicleModelOptions;
    validate(): string[];
    static fromPlain(plain: Record<string, unknown>): VehicleModelGetDTO;
    static toPlain(entity: any): Record<string, unknown>;
}
export declare class VehicleModelGetUniqueDTO {
    filter?: VehicleModelUniqueFilter;
    options?: Omit<VehicleModelOptions, "page" | "limit" | "sort">;
    validate(): string[];
    static fromPlain(plain: Record<string, unknown>): VehicleModelGetUniqueDTO;
    toPlain(): Record<string, unknown>;
}
export declare class VehicleModelCreateDTO extends BaseCreateDTO {
    name: string;
    image?: string;
    description?: string;
    metaTitle?: string;
    metaDescription?: string;
    metaKeywords?: string;
    make: VehicleMake;
    vehicles?: Vehicle[];
    validate(): string[];
    static fromPlain(plain: Record<string, unknown>): VehicleModelCreateDTO;
    static toPlain(entity: any): Record<string, unknown>;
}
export declare class VehicleModelUpdateDTO extends BaseUpdateDTO {
    name?: string;
    image?: string;
    description?: string;
    metaTitle?: string;
    metaDescription?: string;
    metaKeywords?: string;
    isActive?: boolean;
    validate(): string[];
    static fromPlain(plain: Record<string, unknown>): VehicleModelUpdateDTO;
    static toPlain(entity: any): Record<string, unknown>;
}
export declare class DynamicModelDTO {
    existingId?: string;
    new?: VehicleModelCreateDTO;
    validate(): void;
    static fromPlain(plain: Record<string, unknown>): DynamicModelDTO;
    static toPlain(entity: any): Record<string, unknown>;
}
