import { FieldPlacements } from '../../index.js';
import { GeneratorConfigInput } from '../../types/GeneratorConfig.js';
export declare const formatGeneratorConfig: (config: GeneratorConfigInput) => Promise<{
    database: {
        models: Record<string, {
            title?: string | undefined;
            admin?: {} | undefined;
            ignoreSeeding?: boolean | undefined;
            timestamp?: boolean | undefined;
            preset?: "post" | undefined;
            intl?: boolean | undefined;
            tableName?: string | undefined;
            softDelete?: boolean | undefined;
            draftable?: boolean | undefined;
            sorting?: boolean | undefined;
            sharable?: boolean | undefined;
            ownable?: boolean | undefined;
            columns: Record<string, {
                hide?: boolean | undefined;
                required?: boolean | undefined;
                unique?: boolean | undefined;
                editable?: boolean | undefined;
                translations?: boolean | undefined;
                admin?: {
                    isHidden?: boolean | undefined;
                    editor?: {
                        placement?: FieldPlacements | undefined;
                    } | undefined;
                } | undefined;
                default?: boolean | undefined;
                type: "boolean";
                title: string;
            } | {
                hide?: boolean | undefined;
                required?: boolean | undefined;
                unique?: boolean | undefined;
                editable?: boolean | undefined;
                translations?: boolean | undefined;
                admin?: {
                    isHidden?: boolean | undefined;
                    editor?: {
                        placement?: FieldPlacements | undefined;
                    } | undefined;
                } | undefined;
                default?: string | undefined;
                type: "enum";
                title: string;
                enum: string[];
            } | {
                hide?: boolean | undefined;
                required?: boolean | undefined;
                unique?: boolean | undefined;
                editable?: boolean | undefined;
                translations?: boolean | undefined;
                admin?: {
                    isHidden?: boolean | undefined;
                    editor?: {
                        placement?: FieldPlacements | undefined;
                    } | undefined;
                    fieldType?: "normal" | "big-image" | undefined;
                } | undefined;
                multiple?: boolean | undefined;
                typeFilter?: string | undefined;
                type: "file";
                title: string;
            } | {
                hide?: boolean | undefined;
                required?: boolean | undefined;
                unique?: boolean | undefined;
                editable?: boolean | undefined;
                translations?: boolean | undefined;
                admin?: {
                    isHidden?: boolean | undefined;
                    editor?: {
                        placement?: FieldPlacements | undefined;
                    } | undefined;
                } | undefined;
                default?: number | undefined;
                autoIncrement?: boolean | undefined;
                type: "number";
                title: string;
            } | {
                hide?: boolean | undefined;
                required?: boolean | undefined;
                unique?: boolean | undefined;
                editable?: boolean | undefined;
                translations?: boolean | undefined;
                admin?: {
                    isHidden?: boolean | undefined;
                    editor?: {
                        placement?: FieldPlacements | undefined;
                    } | undefined;
                    fieldType?: "normal" | "heading" | undefined;
                } | undefined;
                type: "string";
                title: string;
            } | {
                hide?: boolean | undefined;
                required?: boolean | undefined;
                unique?: boolean | undefined;
                editable?: boolean | undefined;
                translations?: boolean | undefined;
                admin?: {
                    isHidden?: boolean | undefined;
                    editor?: {
                        placement?: FieldPlacements | undefined;
                    } | undefined;
                    fieldType: "blockEditor" | "jsonEditor" | "openingHours";
                } | {
                    isHidden?: boolean | undefined;
                    editor?: {
                        placement?: FieldPlacements | undefined;
                    } | undefined;
                    fieldType: "repeater";
                    columns: Record<string, {
                        title?: string | undefined;
                        hide?: boolean | undefined;
                        required?: boolean | undefined;
                        editable?: boolean | undefined;
                        type: "string";
                    } | {
                        title?: string | undefined;
                        hide?: boolean | undefined;
                        required?: boolean | undefined;
                        editable?: boolean | undefined;
                        default?: number | undefined;
                        autoIncrement?: boolean | undefined;
                        type: "number";
                    }>;
                } | undefined;
                type: "json";
                title: string;
            } | {
                hide?: boolean | undefined;
                required?: boolean | undefined;
                unique?: boolean | undefined;
                editable?: boolean | undefined;
                translations?: boolean | undefined;
                admin?: {
                    isHidden?: boolean | undefined;
                    editor?: {
                        placement?: FieldPlacements | undefined;
                    } | undefined;
                } | undefined;
                default?: string | undefined;
                type: "date" | "password" | "dateTime" | "longText";
                title: string;
            } | {
                fill?: boolean | undefined;
                hide?: boolean | undefined;
                required?: boolean | undefined;
                unique?: boolean | undefined;
                editable?: boolean | undefined;
                translations?: boolean | undefined;
                admin?: {
                    isHidden?: boolean | undefined;
                    editor?: {
                        placement?: FieldPlacements | undefined;
                    } | undefined;
                } | undefined;
                multiple?: boolean | undefined;
                foreignKey?: string | undefined;
                type: "relationship";
                title: string;
                targetModel: string;
                labelConstructor: string;
            } | {
                hide?: boolean | undefined;
                required?: boolean | undefined;
                unique?: boolean | undefined;
                editable?: boolean | undefined;
                translations?: boolean | undefined;
                admin?: {
                    isHidden?: boolean | undefined;
                    editor?: {
                        placement?: FieldPlacements | undefined;
                    } | undefined;
                } | undefined;
                type: "slug";
                title: string;
                of: string;
            }>;
            icon: string;
        }>;
        singletons: Record<string, {
            title?: string | undefined;
            admin?: {} | undefined;
            ignoreSeeding?: boolean | undefined;
            timestamp?: boolean | undefined;
            preset?: "post" | undefined;
            intl?: boolean | undefined;
            name?: string | undefined;
            columns: Record<string, {
                hide?: boolean | undefined;
                required?: boolean | undefined;
                unique?: boolean | undefined;
                editable?: boolean | undefined;
                translations?: boolean | undefined;
                admin?: {
                    isHidden?: boolean | undefined;
                    editor?: {
                        placement?: FieldPlacements | undefined;
                    } | undefined;
                } | undefined;
                default?: boolean | undefined;
                type: "boolean";
                title: string;
            } | {
                hide?: boolean | undefined;
                required?: boolean | undefined;
                unique?: boolean | undefined;
                editable?: boolean | undefined;
                translations?: boolean | undefined;
                admin?: {
                    isHidden?: boolean | undefined;
                    editor?: {
                        placement?: FieldPlacements | undefined;
                    } | undefined;
                } | undefined;
                default?: string | undefined;
                type: "enum";
                title: string;
                enum: string[];
            } | {
                hide?: boolean | undefined;
                required?: boolean | undefined;
                unique?: boolean | undefined;
                editable?: boolean | undefined;
                translations?: boolean | undefined;
                admin?: {
                    isHidden?: boolean | undefined;
                    editor?: {
                        placement?: FieldPlacements | undefined;
                    } | undefined;
                    fieldType?: "normal" | "big-image" | undefined;
                } | undefined;
                multiple?: boolean | undefined;
                typeFilter?: string | undefined;
                type: "file";
                title: string;
            } | {
                hide?: boolean | undefined;
                required?: boolean | undefined;
                unique?: boolean | undefined;
                editable?: boolean | undefined;
                translations?: boolean | undefined;
                admin?: {
                    isHidden?: boolean | undefined;
                    editor?: {
                        placement?: FieldPlacements | undefined;
                    } | undefined;
                } | undefined;
                default?: number | undefined;
                autoIncrement?: boolean | undefined;
                type: "number";
                title: string;
            } | {
                hide?: boolean | undefined;
                required?: boolean | undefined;
                unique?: boolean | undefined;
                editable?: boolean | undefined;
                translations?: boolean | undefined;
                admin?: {
                    isHidden?: boolean | undefined;
                    editor?: {
                        placement?: FieldPlacements | undefined;
                    } | undefined;
                    fieldType?: "normal" | "heading" | undefined;
                } | undefined;
                type: "string";
                title: string;
            } | {
                hide?: boolean | undefined;
                required?: boolean | undefined;
                unique?: boolean | undefined;
                editable?: boolean | undefined;
                translations?: boolean | undefined;
                admin?: {
                    isHidden?: boolean | undefined;
                    editor?: {
                        placement?: FieldPlacements | undefined;
                    } | undefined;
                    fieldType: "blockEditor" | "jsonEditor" | "openingHours";
                } | {
                    isHidden?: boolean | undefined;
                    editor?: {
                        placement?: FieldPlacements | undefined;
                    } | undefined;
                    fieldType: "repeater";
                    columns: Record<string, {
                        title?: string | undefined;
                        hide?: boolean | undefined;
                        required?: boolean | undefined;
                        editable?: boolean | undefined;
                        type: "string";
                    } | {
                        title?: string | undefined;
                        hide?: boolean | undefined;
                        required?: boolean | undefined;
                        editable?: boolean | undefined;
                        default?: number | undefined;
                        autoIncrement?: boolean | undefined;
                        type: "number";
                    }>;
                } | undefined;
                type: "json";
                title: string;
            } | {
                hide?: boolean | undefined;
                required?: boolean | undefined;
                unique?: boolean | undefined;
                editable?: boolean | undefined;
                translations?: boolean | undefined;
                admin?: {
                    isHidden?: boolean | undefined;
                    editor?: {
                        placement?: FieldPlacements | undefined;
                    } | undefined;
                } | undefined;
                default?: string | undefined;
                type: "date" | "password" | "dateTime" | "longText";
                title: string;
            } | {
                fill?: boolean | undefined;
                hide?: boolean | undefined;
                required?: boolean | undefined;
                unique?: boolean | undefined;
                editable?: boolean | undefined;
                translations?: boolean | undefined;
                admin?: {
                    isHidden?: boolean | undefined;
                    editor?: {
                        placement?: FieldPlacements | undefined;
                    } | undefined;
                } | undefined;
                multiple?: boolean | undefined;
                foreignKey?: string | undefined;
                type: "relationship";
                title: string;
                targetModel: string;
                labelConstructor: string;
            } | {
                hide?: boolean | undefined;
                required?: boolean | undefined;
                unique?: boolean | undefined;
                editable?: boolean | undefined;
                translations?: boolean | undefined;
                admin?: {
                    isHidden?: boolean | undefined;
                    editor?: {
                        placement?: FieldPlacements | undefined;
                    } | undefined;
                } | undefined;
                type: "slug";
                title: string;
                of: string;
            }>;
            icon: string;
        }> | undefined;
    };
    project: {
        slug: string;
        prefix?: string | undefined;
        security?: {
            secret?: string | undefined;
            roles?: {
                hasAccessToAdmin?: boolean | undefined;
                name: string;
                modelPermissions: Record<string, {
                    c?: import("../../index.js").SecurityOptionOptions | undefined;
                    r?: import("../../index.js").SecurityOptionOptions | undefined;
                    u?: import("../../index.js").SecurityOptionOptions | undefined;
                    d?: import("../../index.js").SecurityOptionOptions | undefined;
                }>;
            }[] | undefined;
        } | undefined;
        name: string;
        url: string;
    };
}>;
//# sourceMappingURL=formatGeneratorConfig.d.ts.map