import 'reflect-metadata';
import { Model } from 'sequelize-typescript';
import { Attributes, Includeable } from 'sequelize';
interface DtoMiddlewareReturn {
    as?: string;
    model: typeof Model;
    attributes: Attributes<Model>;
    include?: Includeable[];
}
export default class ExtendableDto {
    static isInitlized: boolean;
    init: () => void;
    map: (data: any) => any;
    pagingMap: (data: any) => any;
    middleware: (as?: string | undefined, user?: any, extraAs?: string[] | undefined) => DtoMiddlewareReturn;
    generateScheme: () => {
        type: string;
        properties: {
            [key: string]: unknown;
        };
    };
    swagger: () => {
        $ref: string;
    };
}
export {};
//# sourceMappingURL=ExtendableDto.d.ts.map