import { DateFilter, TypedFilter } from "../../../../global/utilities";
declare class BlogFaqItem {
    question: string;
    answer: string;
}
export declare class BlogFilter extends TypedFilter {
    title?: string | string[];
    slug?: string | string[];
    status?: string | string[];
    date?: DateFilter;
    validate(): string[];
    static fromPlain(plain: Record<string, unknown>): BlogFilter;
}
export declare class BlogGetDTOOptions {
    page?: number;
    limit?: number;
    sort?: any;
}
export declare class BlogGetDTO {
    id: string;
    title: string;
    description: string;
    content: string;
    date: Date;
    imageLink: string;
    imageAlt: string;
    metaDescription: string;
    metaKeywords: string;
    slug: string;
    status: string;
    createdById: string;
    faq?: BlogFaqItem[];
    audioUrl?: string;
    filters?: BlogFilter;
    options?: BlogGetDTOOptions;
    static fromEntity(entity: any): BlogGetDTO;
    toPlain(): Record<string, unknown>;
    validate(): string[];
    static fromPlain(plain: Record<string, unknown>): BlogGetDTO;
}
export declare class BlogCreateDTO {
    title: string;
    description: string;
    content: string;
    date: string;
    imageLink: string;
    imageAlt: string;
    metaDescription: string;
    metaKeywords: string;
    slug: string;
    status: string;
    faq?: BlogFaqItem[];
    audioUrl?: string;
    validate(): string[];
    static fromPlain(plain: Record<string, unknown>): BlogCreateDTO;
}
export declare class BlogUpdateDTO {
    title?: string;
    description?: string;
    content?: string;
    date?: string;
    imageLink?: string;
    imageAlt?: string;
    metaDescription?: string;
    metaKeywords?: string;
    slug?: string;
    status?: string;
    faq?: BlogFaqItem[];
    audioUrl?: string;
    validate(): string[];
    static fromPlain(plain: Record<string, unknown>): BlogUpdateDTO;
}
export {};
