import { UModel } from "../entities/model";
import { URenderer } from "../entities/renderer";
import { RenderContent, RenderSelection } from "../types/renderer";
import { UModule } from "../entities/module";
import { UField } from "../entities/field";
export default class DartClassRenderer extends URenderer {
    private _modelDir;
    private _dtoDir;
    private _enumDir;
    private _includeModuleInDir;
    private _where?;
    constructor(options?: {
        modelDir?: string;
        dtoDir?: string;
        enumDir?: string;
        includeModuleInDir?: boolean;
        where?: (module: UModule, model: UModel) => boolean;
    });
    $isDto(model: UModel): any;
    $resolveImport(from: string, model: UModel): string;
    $key(model: UModel): string;
    $className(model: UModel): string;
    $fileName(model: UModel, extension?: boolean): string;
    $fieldName(field: UField): string;
    $fieldType(field: UField): string;
    private toDartValue;
    select(): Promise<RenderSelection>;
    render(): Promise<RenderContent[]>;
}
