UNPKG

bknd

Version:

Lightweight Firebase/Supabase alternative built to run anywhere — incl. Next.js, React Router, Astro, Cloudflare, Bun, Node, AWS Lambda & more.

12,090 lines 850 kB
import { s } from "bknd/utils";
import { Guard } from "../auth/authorize/Guard";
import { EventManager, Event } from "../core/events";
import type { Connection } from "../data/connection";
import { EntityManager } from "../data/entities/EntityManager";
import * as proto from "../data/prototype";
import { Hono } from "hono";
import { AppServer } from "../modules/server/AppServer";
import { AppAuth } from "../auth/AppAuth";
import { AppData } from "../data/AppData";
import { AppFlows } from "../flows/AppFlows";
import { AppMedia } from "../media/AppMedia";
import type { ServerEnv } from "./Controller";
import { type ModuleBuildContext } from "./Module";
export type { ModuleBuildContext };
export declare const MODULES: {
    readonly server: typeof AppServer;
    readonly data: typeof AppData;
    readonly auth: typeof AppAuth;
    readonly media: typeof AppMedia;
    readonly flows: typeof AppFlows;
};
export declare const MODULE_NAMES: ModuleKey[];
export type ModuleKey = keyof typeof MODULES;
export type Modules = {
    [K in keyof typeof MODULES]: InstanceType<(typeof MODULES)[K]>;
};
export type ModuleSchemas = {
    [K in keyof typeof MODULES]: ReturnType<(typeof MODULES)[K]["prototype"]["getSchema"]>;
};
export type ModuleConfigs = {
    [K in keyof ModuleSchemas]: s.Static<ModuleSchemas[K]>;
};
type PartialRec<T> = {
    [P in keyof T]?: PartialRec<T[P]>;
};
export type InitialModuleConfigs = ({
    version: number;
} & ModuleConfigs) | PartialRec<ModuleConfigs>;
declare enum Verbosity {
    silent = 0,
    error = 1,
    log = 2
}
export type ModuleManagerOptions = {
    initial?: InitialModuleConfigs;
    eventManager?: EventManager<any>;
    onUpdated?: <Module extends keyof Modules>(module: Module, config: ModuleConfigs[Module]) => Promise<void>;
    onFirstBoot?: () => Promise<void>;
    basePath?: string;
    onServerInit?: (server: Hono<ServerEnv>) => void;
    trustFetched?: boolean;
    seed?: (ctx: ModuleBuildContext) => Promise<void>;
    onModulesBuilt?: (ctx: ModuleBuildContext) => Promise<void>;
    /** @deprecated */
    verbosity?: Verbosity;
};
export type ConfigTable<Json = ModuleConfigs> = {
    id?: number;
    version: number;
    type: "config" | "diff" | "backup";
    json: Json;
    created_at?: Date;
    updated_at?: Date;
};
export declare const __bknd: import("..").Entity<"__bknd", {
    version: import("../data/fields").NumberField<true>;
    type: import("../data/fields").EnumField<true, string>;
    json: import("../data/fields").JsonSchemaField<true, object>;
    created_at: import("../data/fields").DateField<false> & {
        required: () => import("../data/fields").DateField<true>;
    };
    updated_at: import("../data/fields").DateField<false> & {
        required: () => import("../data/fields").DateField<true>;
    };
}>;
type ConfigTable2 = proto.Schema<typeof __bknd>;
interface T_INTERNAL_EM {
    __bknd: ConfigTable2;
}
declare abstract class ModuleManagerEvent<A = {}> extends Event<{
    ctx: ModuleBuildContext;
} & A> {
}
export declare class ModuleManagerConfigUpdateEvent<Module extends keyof ModuleConfigs> extends ModuleManagerEvent<{
    module: Module;
    config: ModuleConfigs[Module];
}> {
    static slug: string;
}
export declare const ModuleManagerEvents: {
    ModuleManagerConfigUpdateEvent: typeof ModuleManagerConfigUpdateEvent;
};
export declare class ModuleManager {
    private readonly connection;
    private options?;
    static Events: {
        ModuleManagerConfigUpdateEvent: typeof ModuleManagerConfigUpdateEvent;
    };
    protected modules: Modules;
    __em: EntityManager<T_INTERNAL_EM>;
    em: EntityManager;
    server: Hono<ServerEnv>;
    emgr: EventManager;
    guard: Guard;
    private _version;
    private _built;
    private readonly _booted_with?;
    private _stable_configs;
    private logger;
    constructor(connection: Connection, options?: Partial<ModuleManagerOptions> | undefined);
    private createModules;
    private get verbosity();
    isBuilt(): boolean;
    /**
     * This is set through module's setListener
     * It's called everytime a module's config is updated in SchemaObject
     * Needs to rebuild modules and save to database
     */
    private onModuleConfigUpdated;
    private repo;
    private mutator;
    private get db();
    syncConfigTable(): Promise<{
        sql: string;
        parameters: readonly unknown[];
    }[]>;
    private rebuildServer;
    ctx(rebuild?: boolean): ModuleBuildContext;
    private fetch;
    save(): Promise<this>;
    private revertModules;
    /**
     * Validates received diffs for an additional security control.
     * Checks:
     *   - check if module is registered
     *   - run modules onBeforeUpdate() for added protection
     *
     * **Important**: Throw `Error` so it won't get catched.
     *
     * @param diffs
     * @private
     */
    private validateDiffs;
    private setConfigs;
    build(opts?: {
        fetch?: boolean;
    }): Promise<this>;
    private buildModules;
    protected setupInitial(): Promise<void>;
    mutateConfigSafe<Module extends keyof Modules>(name: Module): Pick<ReturnType<Modules[Module]["schema"]>, "set" | "patch" | "overwrite" | "remove">;
    get<K extends keyof Modules>(key: K): Modules[K];
    version(): number;
    built(): boolean;
    configs(): ModuleConfigs;
    getSchema(): {
        server: s.ObjectSchema<{
            readonly enabled: s.Schema<{
                readonly default: false;
            }, boolean, boolean> & {
                readonly default: false;
            };
            readonly basepath: s.StringSchema<{
                readonly default: "/api/auth";
            }> & {
                readonly default: "/api/auth";
            };
            readonly entity_name: s.StringSchema<{
                readonly default: "users";
            }> & {
                readonly default: "users";
            };
            readonly allow_register: {
                readonly default: true;
            } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
            readonly jwt: s.ObjectSchema<{
                readonly secret: import("bknd/utils").SecretSchema<{
                    default: string;
                }> & {
                    default: string;
                };
                readonly alg: {
                    readonly default: "HS256";
                    readonly enum: ["HS256", "HS384", "HS512"];
                } & s.Schema<s.ISchemaOptions, "HS256" | "HS384" | "HS512" | undefined, "HS256" | "HS384" | "HS512" | undefined>;
                readonly expires: {
                    default?: any;
                    enum?: (readonly any[] | any[]) | undefined;
                    const?: any;
                    multipleOf?: number | undefined;
                    maximum?: number | undefined;
                    exclusiveMaximum?: number | undefined;
                    minimum?: number | undefined;
                    exclusiveMinimum?: number | undefined;
                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                readonly issuer: {
                    default?: any;
                    maxLength?: number | undefined;
                    minLength?: number | undefined;
                    pattern?: (string | RegExp) | undefined;
                    format?: string | undefined;
                    enum?: (readonly any[] | any[]) | undefined;
                    const?: any;
                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                readonly fields: s.ArraySchema<s.StringSchema<s.IStringOptions> & s.IStringOptions, {
                    readonly default: readonly ["id", "email", "role"];
                }> & {
                    readonly default: readonly ["id", "email", "role"];
                };
            }, s.Merge<{
                readonly default: {};
            } & {
                additionalProperties: false;
            }>>;
            readonly cookie: s.ObjectSchema<{
                readonly path: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                readonly sameSite: s.Schema<s.ISchemaOptions, "strict" | "lax" | "none" | undefined, "strict" | "lax" | "none" | undefined>;
                readonly secure: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                readonly httpOnly: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                readonly expires: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                readonly partitioned: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                readonly renew: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                readonly pathSuccess: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                readonly pathLoggedOut: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
            }, s.Merge<s.IObjectOptions & {
                additionalProperties: false;
            }>>;
            readonly strategies: s.RecordSchema<s.Schema<s.IUnionOptions, {
                enabled?: boolean | undefined;
                type: "password" | "oauth" | "custom_oauth";
                config: {
                    rounds?: number | undefined;
                    hashing: "plain" | "sha256" | "bcrypt";
                } | {
                    [x: string]: unknown;
                    name: "google" | "github";
                    type: "oidc" | "oauth2";
                    client: {
                        client_id: string;
                        client_secret: string;
                    };
                } | {
                    name: string;
                    type: "oidc" | "oauth2";
                    client: {
                        [x: string]: unknown;
                        client_id: string;
                        client_secret: string;
                        token_endpoint_auth_method: "client_secret_basic";
                    };
                    as: {
                        code_challenge_methods_supported?: "S256" | undefined;
                        scopes_supported?: string[] | undefined;
                        scope_separator?: string | undefined;
                        authorization_endpoint?: string | undefined;
                        token_endpoint?: string | undefined;
                        userinfo_endpoint?: string | undefined;
                        issuer: string;
                    };
                };
            }, never> & s.Merge<s.IUnionOptions & {
                anyOf: s.ObjectSchema<{
                    readonly enabled: {
                        readonly default: true;
                    } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                    readonly type: s.Schema<s.ILiteralOptions, "password" | "oauth" | "custom_oauth", "password" | "oauth" | "custom_oauth"> & s.Merge<s.ILiteralOptions & {
                        const: "password" | "oauth" | "custom_oauth";
                    }>;
                    readonly config: s.ObjectSchema<{
                        readonly hashing: s.StringSchema<{
                            readonly enum: readonly ["plain", "sha256", "bcrypt"];
                            readonly default: "sha256";
                        }> & {
                            readonly enum: readonly ["plain", "sha256", "bcrypt"];
                            readonly default: "sha256";
                        };
                        readonly rounds: {
                            readonly maximum: 10;
                            readonly minimum: 1;
                        } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                    }, s.Merge<s.IObjectOptions & {
                        additionalProperties: false;
                    }>> | (s.ObjectSchema<{
                        readonly name: s.StringSchema<{
                            readonly enum: ("google" | "github")[];
                        }> & {
                            readonly enum: ("google" | "github")[];
                        };
                        readonly type: s.StringSchema<{
                            readonly enum: readonly ["oidc", "oauth2"];
                            readonly default: "oauth2";
                        }> & {
                            readonly enum: readonly ["oidc", "oauth2"];
                            readonly default: "oauth2";
                        };
                        readonly client: s.ObjectSchema<{
                            readonly client_id: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            readonly client_secret: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                        }, s.Merge<s.IObjectOptions & {
                            additionalProperties: false;
                        }>>;
                    }, {
                        readonly title: "OAuth";
                    }> & {
                        readonly title: "OAuth";
                    }) | s.ObjectSchema<{
                        readonly type: s.StringSchema<{
                            readonly enum: readonly ["oidc", "oauth2"];
                            readonly default: "oidc";
                        }> & {
                            readonly enum: readonly ["oidc", "oauth2"];
                            readonly default: "oidc";
                        };
                        readonly name: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                        readonly client: s.ObjectSchema<{
                            readonly client_id: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            readonly client_secret: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            readonly token_endpoint_auth_method: s.StringSchema<{
                                readonly enum: readonly ["client_secret_basic"];
                            }> & {
                                readonly enum: readonly ["client_secret_basic"];
                            };
                        }, s.IObjectOptions> & s.IObjectOptions;
                        readonly as: s.ObjectSchema<{
                            readonly issuer: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            readonly code_challenge_methods_supported: {
                                readonly enum: ["S256"];
                            } & s.Schema<s.ISchemaOptions, "S256" | undefined, "S256" | undefined>;
                            readonly scopes_supported: {
                                default?: any;
                                enum?: (readonly any[] | any[]) | undefined;
                                const?: any;
                                $defs?: Record<string, s.Schema> | undefined;
                                contains?: s.Schema | undefined;
                                minContains?: number | undefined;
                                maxContains?: number | undefined;
                                prefixItems?: s.Schema[] | undefined;
                                uniqueItems?: boolean | undefined;
                                maxItems?: number | undefined;
                                minItems?: number | undefined;
                                readonly items?: (s.StringSchema<s.IStringOptions> & s.IStringOptions) | undefined;
                            } & s.Schema<s.ISchemaOptions, string[] | undefined, string[] | undefined>;
                            readonly scope_separator: {
                                readonly default: " ";
                            } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            readonly authorization_endpoint: {
                                readonly pattern: "^(https?|wss?)://[^\\s/$.?#].[^\\s]*$";
                            } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            readonly token_endpoint: {
                                readonly pattern: "^(https?|wss?)://[^\\s/$.?#].[^\\s]*$";
                            } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            readonly userinfo_endpoint: {
                                readonly pattern: "^(https?|wss?)://[^\\s/$.?#].[^\\s]*$";
                            } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                        }, s.Merge<s.IObjectOptions & {
                            additionalProperties: false;
                        }>>;
                    }, s.Merge<{
                        readonly title: "Custom OAuth";
                    } & {
                        additionalProperties: false;
                    }>>;
                }, s.Merge<{
                    readonly title: "password" | "oauth" | "custom_oauth";
                } & {
                    additionalProperties: false;
                }>>[];
            }>, {
                readonly title: "Strategies";
                readonly default: {
                    readonly password: {
                        readonly type: "password";
                        readonly enabled: true;
                        readonly config: {
                            readonly hashing: "sha256";
                        };
                    };
                };
            }>;
            readonly guard: {
                default?: any;
                enum?: (readonly any[] | any[]) | undefined;
                const?: any;
                $defs?: Record<string, s.Schema> | undefined;
                patternProperties?: Record<string, s.Schema> | undefined;
                additionalProperties?: (s.Schema | false) | undefined;
                minProperties?: number | undefined;
                maxProperties?: number | undefined;
                propertyNames?: s.Schema | undefined;
                strict: () => s.ObjectSchema<{
                    readonly enabled: {
                        readonly default: false;
                    } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                }, s.Merge<s.IObjectOptions & {
                    additionalProperties: false;
                }>>;
                properties: {
                    readonly enabled: {
                        readonly default: false;
                    } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                };
                required: string[] | undefined;
                partial: () => s.ObjectSchema<{
                    readonly enabled: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                }, s.IObjectOptions>;
            } & s.Schema<s.ISchemaOptions, {
                [x: string]: unknown;
                enabled?: boolean | undefined;
            } | undefined, {
                [x: string]: unknown;
                enabled?: boolean | undefined;
            } | undefined>;
            readonly roles: {
                additionalProperties: s.ObjectSchema<{
                    readonly permissions: {
                        default?: any;
                        enum?: (readonly any[] | any[]) | undefined;
                        const?: any;
                        $defs?: Record<string, s.Schema> | undefined;
                        contains?: s.Schema | undefined;
                        minContains?: number | undefined;
                        maxContains?: number | undefined;
                        prefixItems?: s.Schema[] | undefined;
                        uniqueItems?: boolean | undefined;
                        maxItems?: number | undefined;
                        minItems?: number | undefined;
                        readonly items?: (s.StringSchema<s.IStringOptions> & s.IStringOptions) | undefined;
                    } & s.Schema<s.ISchemaOptions, string[] | undefined, string[] | undefined>;
                    readonly is_default: {
                        default?: any;
                        enum?: (readonly any[] | any[]) | undefined;
                        const?: any;
                    } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                    readonly implicit_allow: {
                        default?: any;
                        enum?: (readonly any[] | any[]) | undefined;
                        const?: any;
                    } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                }, s.Merge<s.IObjectOptions & {
                    additionalProperties: false;
                }>>;
            } & s.Schema<s.ISchemaOptions, {
                [x: string]: {
                    permissions?: string[] | undefined;
                    is_default?: boolean | undefined;
                    implicit_allow?: boolean | undefined;
                };
            } | undefined, {
                [x: string]: {
                    permissions?: string[] | undefined;
                    is_default?: boolean | undefined;
                    implicit_allow?: boolean | undefined;
                };
            } | undefined>;
        }, s.Merge<{
            readonly title: "Authentication";
        } & {
            additionalProperties: false;
        }>> | s.ObjectSchema<{
            readonly cors: s.ObjectSchema<{
                readonly origin: s.StringSchema<{
                    readonly default: "*";
                }> & {
                    readonly default: "*";
                };
                readonly allow_methods: s.ArraySchema<s.StringSchema<{
                    readonly enum: readonly ["GET", "POST", "PATCH", "PUT", "DELETE"];
                }> & {
                    readonly enum: readonly ["GET", "POST", "PATCH", "PUT", "DELETE"];
                }, {
                    readonly default: readonly ["GET", "POST", "PATCH", "PUT", "DELETE"];
                    readonly uniqueItems: true;
                }> & {
                    readonly default: readonly ["GET", "POST", "PATCH", "PUT", "DELETE"];
                    readonly uniqueItems: true;
                };
                readonly allow_headers: s.ArraySchema<s.StringSchema<s.IStringOptions> & s.IStringOptions, {
                    readonly default: readonly ["Content-Type", "Content-Length", "Authorization", "Accept"];
                }> & {
                    readonly default: readonly ["Content-Type", "Content-Length", "Authorization", "Accept"];
                };
                readonly allow_credentials: s.Schema<{
                    readonly default: true;
                }, boolean, boolean> & {
                    readonly default: true;
                };
            }, s.Merge<s.IObjectOptions & {
                additionalProperties: false;
            }>>;
        }, s.Merge<s.IObjectOptions & {
            additionalProperties: false;
        }>> | s.ObjectSchema<{
            readonly basepath: {
                readonly default: "/api/data";
            } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
            readonly default_primary_format: {
                readonly default: "integer";
                readonly enum: readonly ["integer", "uuid"];
            } & s.Schema<s.ISchemaOptions, "integer" | "uuid" | undefined, "integer" | "uuid" | undefined>;
            readonly entities: {
                additionalProperties: s.ObjectSchema<{
                    readonly name: {
                        default?: any;
                        maxLength?: number | undefined;
                        minLength?: number | undefined;
                        pattern?: (string | RegExp) | undefined;
                        format?: string | undefined;
                        enum?: (readonly any[] | any[]) | undefined;
                        const?: any;
                    } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                    readonly type: s.StringSchema<{
                        readonly enum: readonly ["regular", "system", "generated"];
                        readonly default: "regular";
                    }> & {
                        readonly enum: readonly ["regular", "system", "generated"];
                        readonly default: "regular";
                    };
                    readonly config: s.ObjectSchema<{
                        readonly name: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                        readonly name_singular: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                        readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                        readonly sort_field: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                        readonly sort_dir: s.Schema<s.ISchemaOptions, "asc" | "desc" | undefined, "asc" | "desc" | undefined>;
                        readonly primary_format: s.Schema<s.ISchemaOptions, "integer" | "uuid" | undefined, "integer" | "uuid" | undefined>;
                    }, s.Merge<s.IObjectOptions & {
                        additionalProperties: false;
                    }>>;
                    readonly fields: s.RecordSchema<s.Schema<s.IUnionOptions, {
                        name?: string | undefined;
                        config?: {
                            description?: string | undefined;
                            maxLength?: number | undefined;
                            minLength?: number | undefined;
                            pattern?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: string | undefined;
                            html_config?: {
                                [x: string]: unknown;
                                element?: string | undefined;
                                props?: {
                                    [x: string]: string | number;
                                } | undefined;
                            } | undefined;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                        } | {
                            description?: string | undefined;
                            format?: "integer" | "uuid" | undefined;
                            required?: boolean | undefined;
                            default_value?: any;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                        } | {
                            description?: string | undefined;
                            multipleOf?: number | undefined;
                            maximum?: number | undefined;
                            exclusiveMaximum?: number | undefined;
                            minimum?: number | undefined;
                            exclusiveMinimum?: number | undefined;
                            required?: boolean | undefined;
                            default_value?: number | undefined;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                        } | {
                            description?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: boolean | undefined;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                        } | {
                            description?: string | undefined;
                            type?: "date" | "week" | "datetime" | undefined;
                            required?: boolean | undefined;
                            default_value?: any;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                            timezone?: string | undefined;
                            min_date?: string | undefined;
                            max_date?: string | undefined;
                        } | {
                            description?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: string | undefined;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                            options?: {
                                [x: string]: unknown;
                                values: string[];
                                type: "strings";
                            } | {
                                [x: string]: unknown;
                                values: {
                                    [x: string]: unknown;
                                    value: string;
                                    label: string;
                                }[];
                                type: "objects";
                            } | undefined;
                        } | {
                            description?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: any;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                        } | {
                            description?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: any;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                            schema?: any;
                            ui_schema?: any;
                            default_from_schema?: boolean | undefined;
                        } | {
                            description?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: any;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                            target_field?: string | undefined;
                            target_field_type?: "text" | "integer" | undefined;
                            on_delete?: "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined;
                            reference: string;
                            target: string;
                        } | {
                            description?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: any;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                            entity?: string | undefined;
                            min_items?: number | undefined;
                            max_items?: number | undefined;
                            mime_types?: string[] | undefined;
                        } | undefined;
                        type: "number" | "boolean" | "json" | "text" | "enum" | "date" | "media" | "relation" | "primary" | "jsonschema";
                    }, never> & s.Merge<s.IUnionOptions & {
                        anyOf: s.ObjectSchema<{
                            readonly name: {
                                default?: any;
                                maxLength?: number | undefined;
                                minLength?: number | undefined;
                                pattern?: (string | RegExp) | undefined;
                                format?: string | undefined;
                                enum?: (readonly any[] | any[]) | undefined;
                                const?: any;
                            } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            readonly type: s.Schema<s.ILiteralOptions, "number" | "boolean" | "json" | "text" | "enum" | "date" | "media" | "relation" | "primary" | "jsonschema", "number" | "boolean" | "json" | "text" | "enum" | "date" | "media" | "relation" | "primary" | "jsonschema"> & s.Merge<s.ILiteralOptions & {
                                const: "number" | "boolean" | "json" | "text" | "enum" | "date" | "media" | "relation" | "primary" | "jsonschema";
                            }>;
                            readonly config: ({
                                strict: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly minLength: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly maxLength: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly pattern: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly html_config: s.Schema<s.ISchemaOptions, {
                                        [x: string]: unknown;
                                        element?: string | undefined;
                                        props?: {
                                            [x: string]: string | number;
                                        } | undefined;
                                    } | undefined, {
                                        [x: string]: unknown;
                                        element?: string | undefined;
                                        props?: {
                                            [x: string]: string | number;
                                        } | undefined;
                                    } | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly minLength: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly maxLength: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly pattern: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly html_config: s.Schema<s.ISchemaOptions, {
                                        [x: string]: unknown;
                                        element?: string | undefined;
                                        props?: {
                                            [x: string]: string | number;
                                        } | undefined;
                                    } | undefined, {
                                        [x: string]: unknown;
                                        element?: string | undefined;
                                        props?: {
                                            [x: string]: string | number;
                                        } | undefined;
                                    } | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly minLength: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly maxLength: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly pattern: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly html_config: s.Schema<s.ISchemaOptions, {
                                        [x: string]: unknown;
                                        element?: string | undefined;
                                        props?: {
                                            [x: string]: string | number;
                                        } | undefined;
                                    } | undefined, {
                                        [x: string]: unknown;
                                        element?: string | undefined;
                                        props?: {
                                            [x: string]: string | number;
                                        } | undefined;
                                    } | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                maxLength?: number | undefined;
                                minLength?: number | undefined;
                                pattern?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: string | undefined;
                                html_config?: {
                                    [x: string]: unknown;
                                    element?: string | undefined;
                                    props?: {
                                        [x: string]: string | number;
                                    } | undefined;
                                } | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                maxLength?: number | undefined;
                                minLength?: number | undefined;
                                pattern?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: string | undefined;
                                html_config?: {
                                    [x: string]: unknown;
                                    element?: string | undefined;
                                    props?: {
                                        [x: string]: string | number;
                                    } | undefined;
                                } | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly format: s.Schema<s.ISchemaOptions, "integer" | "uuid" | undefined, "integer" | "uuid" | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly format: s.Schema<s.ISchemaOptions, "integer" | "uuid" | undefined, "integer" | "uuid" | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly format: s.Schema<s.ISchemaOptions, "integer" | "uuid" | undefined, "integer" | "uuid" | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                format?: "integer" | "uuid" | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                format?: "integer" | "uuid" | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly minimum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly maximum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly exclusiveMinimum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly exclusiveMaximum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly multipleOf: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly minimum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly maximum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly exclusiveMinimum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly exclusiveMaximum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly multipleOf: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly minimum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly maximum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly exclusiveMinimum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly exclusiveMaximum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly multipleOf: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                multipleOf?: number | undefined;
                                maximum?: number | undefined;
                                exclusiveMaximum?: number | undefined;
                                minimum?: number | undefined;
                                exclusiveMinimum?: number | undefined;
                                required?: boolean | undefined;
                                default_value?: number | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                multipleOf?: number | undefined;
                                maximum?: number | undefined;
                                exclusiveMaximum?: number | undefined;
                                minimum?: number | undefined;
                                exclusiveMinimum?: number | undefined;
                                required?: boolean | undefined;
                                default_value?: number | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: boolean | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: boolean | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly type: s.Schema<s.ISchemaOptions, "date" | "week" | "datetime" | undefined, "date" | "week" | "datetime" | undefined>;
                                    readonly timezone: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly min_date: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly max_date: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly type: s.Schema<s.ISchemaOptions, "date" | "week" | "datetime" | undefined, "date" | "week" | "datetime" | undefined>;
                                    readonly timezone: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly min_date: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly max_date: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly type: s.Schema<s.ISchemaOptions, "date" | "week" | "datetime" | undefined, "date" | "week" | "datetime" | undefined>;
                                    readonly timezone: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly min_date: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly max_date: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                type?: "date" | "week" | "datetime" | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                timezone?: string | undefined;
                                min_date?: string | undefined;
                                max_date?: string | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                type?: "date" | "week" | "datetime" | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                timezone?: string | undefined;
                                min_date?: string | undefined;
                                max_date?: string | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly options: s.Schema<s.ISchemaOptions, {
                                        [x: string]: unknown;
                                        values: string[];
                                        type: "strings";
                                    } | {
                                        [x: string]: unknown;
                                        values: {
                                            [x: string]: unknown;
                                            value: string;
                                            label: string;
                                        }[];
                                        type: "objects";
                                    } | undefined, any>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly options: s.Schema<s.ISchemaOptions, {
                                        [x: string]: unknown;
                                        values: string[];
                                        type: "strings";
                                    } | {
                                        [x: string]: unknown;
                                        values: {
                                            [x: string]: unknown;
                                            value: string;
                                            label: string;
                                        }[];
                                        type: "objects";
                                    } | undefined, any>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly options: s.Schema<s.ISchemaOptions, {
                                        [x: string]: unknown;
                                        values: string[];
                                        type: "strings";
                                    } | {
                                        [x: string]: unknown;
                                        values: {
                                            [x: string]: unknown;
                                            value: string;
                                            label: string;
                                        }[];
                                        type: "objects";
                                    } | undefined, any>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: string | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                options?: {
                                    [x: string]: unknown;
                                    values: string[];
                                    type: "strings";
                                } | {
                                    [x: string]: unknown;
                                    values: {
                                        [x: string]: unknown;
                                        value: string;
                                        label: string;
                                    }[];
                                    type: "objects";
                                } | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: string | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                options?: any;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly schema: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly ui_schema: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly default_from_schema: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly schema: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly ui_schema: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly default_from_schema: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly schema: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly ui_schema: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly default_from_schema: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                schema?: any;
                                ui_schema?: any;
                                default_from_schema?: boolean | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                schema?: any;
                                ui_schema?: any;
                                default_from_schema?: boolean | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly reference: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    readonly target: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    readonly target_field: {
                                        readonly default: "id";
                                    } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly target_field_type: {
                                        readonly default: "integer";
                                        readonly enum: ["text", "integer"];
                                    } & s.Schema<s.ISchemaOptions, "text" | "integer" | undefined, "text" | "integer" | undefined>;
                                    readonly on_delete: {
                                        readonly default: "set null";
                                        readonly enum: readonly ["cascade", "set null", "set default", "restrict", "no action"];
                                    } & s.Schema<s.ISchemaOptions, "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined, "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly reference: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    readonly target: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    readonly target_field: {
                                        readonly default: "id";
                                    } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly target_field_type: {
                                        readonly default: "integer";
                                        readonly enum: ["text", "integer"];
                                    } & s.Schema<s.ISchemaOptions, "text" | "integer" | undefined, "text" | "integer" | undefined>;
                                    readonly on_delete: {
                                        readonly default: "set null";
                                        readonly enum: readonly ["cascade", "set null", "set default", "restrict", "no action"];
                                    } & s.Schema<s.ISchemaOptions, "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined, "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly reference: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly target: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly target_field: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly target_field_type: s.Schema<s.ISchemaOptions, "text" | "integer" | undefined, "text" | "integer" | undefined>;
                                    readonly on_delete: s.Schema<s.ISchemaOptions, "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined, "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                target_field?: string | undefined;
                                target_field_type?: "text" | "integer" | undefined;
                                on_delete?: "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined;
                                reference: string;
                                target: string;
                            } | undefined, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                target_field?: string | undefined;
                                target_field_type?: "text" | "integer" | undefined;
                                on_delete?: "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined;
                                reference: string;
                                target: string;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly entity: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly min_items: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly max_items: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly mime_types: s.Schema<s.ISchemaOptions, string[] | undefined, string[] | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly entity: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly min_items: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly max_items: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly mime_types: s.Schema<s.ISchemaOptions, string[] | undefined, string[] | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly entity: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly min_items: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly max_items: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly mime_types: s.Schema<s.ISchemaOptions, string[] | undefined, string[] | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                entity?: string | undefined;
                                min_items?: number | undefined;
                                max_items?: number | undefined;
                                mime_types?: string[] | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                entity?: string | undefined;
                                min_items?: number | undefined;
                                max_items?: number | undefined;
                                mime_types?: string[] | undefined;
                            } | undefined>);
                        }, s.Merge<{
                            readonly title: "number" | "boolean" | "json" | "text" | "enum" | "date" | "media" | "relation" | "primary" | "jsonschema";
                        } & {
                            additionalProperties: false;
                        }>>[];
                    }>, s.IRecordOptions>;
                }, s.Merge<s.IObjectOptions & {
                    additionalProperties: false;
                }>>;
            } & s.Schema<s.ISchemaOptions, {
                [x: string]: {
                    name?: string | undefined;
                    type: "regular" | "system" | "generated";
                    fields: {
                        [x: string]: {
                            name?: string | undefined;
                            config?: {
                                description?: string | undefined;
                                maxLength?: number | undefined;
                                minLength?: number | undefined;
                                pattern?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: string | undefined;
                                html_config?: {
                                    [x: string]: unknown;
                                    element?: string | undefined;
                                    props?: {
                                        [x: string]: string | number;
                                    } | undefined;
                                } | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | {
                                description?: string | undefined;
                                format?: "integer" | "uuid" | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | {
                                description?: string | undefined;
                                multipleOf?: number | undefined;
                                maximum?: number | undefined;
                                exclusiveMaximum?: number | undefined;
                                minimum?: number | undefined;
                                exclusiveMinimum?: number | undefined;
                                required?: boolean | undefined;
                                default_value?: number | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: boolean | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | {
                                description?: string | undefined;
                                type?: "date" | "week" | "datetime" | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                timezone?: string | undefined;
                                min_date?: string | undefined;
                                max_date?: string | undefined;
                            } | {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: string | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                options?: {
                                    [x: string]: unknown;
                                    values: string[];
                                    type: "strings";
                                } | {
                                    [x: string]: unknown;
                                    values: {
                                        [x: string]: unknown;
                                        value: string;
                                        label: string;
                                    }[];
                                    type: "objects";
                                } | undefined;
                            } | {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                schema?: any;
                                ui_schema?: any;
                                default_from_schema?: boolean | undefined;
                            } | {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                target_field?: string | undefined;
                                target_field_type?: "text" | "integer" | undefined;
                                on_delete?: "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined;
                                reference: string;
                                target: string;
                            } | {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                entity?: string | undefined;
                                min_items?: number | undefined;
                                max_items?: number | undefined;
                                mime_types?: string[] | undefined;
                            } | undefined;
                            type: "number" | "boolean" | "json" | "text" | "enum" | "date" | "media" | "relation" | "primary" | "jsonschema";
                        };
                    };
                    config: {
                        description?: string | undefined;
                        name?: string | undefined;
                        name_singular?: string | undefined;
                        sort_field?: string | undefined;
                        sort_dir?: "asc" | "desc" | undefined;
                        primary_format?: "integer" | "uuid" | undefined;
                    };
                };
            } | undefined, {
                [x: string]: {
                    name?: string | undefined;
                    type: "regular" | "system" | "generated";
                    fields: {
                        [x: string]: never;
                    };
                    config: {
                        description?: string | undefined;
                        name?: string | undefined;
                        name_singular?: string | undefined;
                        sort_field?: string | undefined;
                        sort_dir?: "asc" | "desc" | undefined;
                        primary_format?: "integer" | "uuid" | undefined;
                    };
                };
            } | undefined>;
            readonly relations: {
                additionalProperties: s.Schema<s.IUnionOptions, {
                    config?: {
                        required?: boolean | undefined;
                        sourceCardinality?: number | undefined;
                        with_limit?: number | undefined;
                        fieldConfig?: {
                            [x: string]: unknown;
                            label: string;
                        } | undefined;
                        mappedBy?: string | undefined;
                        inversedBy?: string | undefined;
                    } | {
                        required?: boolean | undefined;
                        mappedBy?: string | undefined;
                        inversedBy?: string | undefined;
                        connectionTable?: string | undefined;
                        connectionTableMappedName?: string | undefined;
                    } | {
                        required?: boolean | undefined;
                        mappedBy?: string | undefined;
                        inversedBy?: string | undefined;
                        targetCardinality?: number | undefined;
                    } | undefined;
                    type: string;
                    target: string;
                    source: string;
                }, never> & s.Merge<s.IUnionOptions & {
                    anyOf: s.ObjectSchema<{
                        readonly type: s.Schema<s.ILiteralOptions, string, string> & s.Merge<s.ILiteralOptions & {
                            const: string;
                        }>;
                        readonly source: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                        readonly target: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                        readonly config: ({
                            strict: () => s.ObjectSchema<{
                                readonly mappedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly sourceCardinality: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    multipleOf?: number | undefined;
                                    maximum?: number | undefined;
                                    exclusiveMaximum?: number | undefined;
                                    minimum?: number | undefined;
                                    exclusiveMinimum?: number | undefined;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                readonly with_limit: {
                                    readonly default: number;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                readonly fieldConfig: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    $defs?: Record<string, s.Schema> | undefined;
                                    patternProperties?: Record<string, s.Schema> | undefined;
                                    additionalProperties?: (s.Schema | false) | undefined;
                                    minProperties?: number | undefined;
                                    maxProperties?: number | undefined;
                                    propertyNames?: s.Schema | undefined;
                                    strict: () => s.ObjectSchema<{
                                        readonly label: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    }, s.Merge<s.IObjectOptions & {
                                        additionalProperties: false;
                                    }>>;
                                    properties: {
                                        readonly label: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    };
                                    required: string[] | undefined;
                                    partial: () => s.ObjectSchema<{
                                        readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    }, s.IObjectOptions>;
                                } & s.Schema<s.ISchemaOptions, {
                                    [x: string]: unknown;
                                    label: string;
                                } | undefined, {
                                    [x: string]: unknown;
                                    label: string;
                                } | undefined>;
                            }, s.Merge<s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }> & {
                                additionalProperties: false;
                            }>>;
                            properties: {
                                readonly mappedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly sourceCardinality: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    multipleOf?: number | undefined;
                                    maximum?: number | undefined;
                                    exclusiveMaximum?: number | undefined;
                                    minimum?: number | undefined;
                                    exclusiveMinimum?: number | undefined;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                readonly with_limit: {
                                    readonly default: number;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                readonly fieldConfig: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    $defs?: Record<string, s.Schema> | undefined;
                                    patternProperties?: Record<string, s.Schema> | undefined;
                                    additionalProperties?: (s.Schema | false) | undefined;
                                    minProperties?: number | undefined;
                                    maxProperties?: number | undefined;
                                    propertyNames?: s.Schema | undefined;
                                    strict: () => s.ObjectSchema<{
                                        readonly label: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    }, s.Merge<s.IObjectOptions & {
                                        additionalProperties: false;
                                    }>>;
                                    properties: {
                                        readonly label: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    };
                                    required: string[] | undefined;
                                    partial: () => s.ObjectSchema<{
                                        readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    }, s.IObjectOptions>;
                                } & s.Schema<s.ISchemaOptions, {
                                    [x: string]: unknown;
                                    label: string;
                                } | undefined, {
                                    [x: string]: unknown;
                                    label: string;
                                } | undefined>;
                            };
                            required: string[] | undefined;
                            partial: () => s.ObjectSchema<{
                                readonly mappedBy: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly sourceCardinality: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                readonly with_limit: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                readonly fieldConfig: s.Schema<s.ISchemaOptions, {
                                    [x: string]: unknown;
                                    label: string;
                                } | undefined, {
                                    [x: string]: unknown;
                                    label: string;
                                } | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        } & s.Schema<s.ISchemaOptions, {
                            required?: boolean | undefined;
                            sourceCardinality?: number | undefined;
                            with_limit?: number | undefined;
                            fieldConfig?: {
                                [x: string]: unknown;
                                label: string;
                            } | undefined;
                            mappedBy?: string | undefined;
                            inversedBy?: string | undefined;
                        } | undefined, {
                            required?: boolean | undefined;
                            sourceCardinality?: number | undefined;
                            with_limit?: number | undefined;
                            fieldConfig?: {
                                [x: string]: unknown;
                                label: string;
                            } | undefined;
                            mappedBy?: string | undefined;
                            inversedBy?: string | undefined;
                        } | undefined>) | ({
                            strict: () => s.ObjectSchema<{
                                readonly mappedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly connectionTable: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly connectionTableMappedName: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            }, s.Merge<s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }> & {
                                additionalProperties: false;
                            }>>;
                            properties: {
                                readonly mappedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly connectionTable: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly connectionTableMappedName: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            };
                            required: string[] | undefined;
                            partial: () => s.ObjectSchema<{
                                readonly mappedBy: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly connectionTable: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly connectionTableMappedName: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        } & s.Schema<s.ISchemaOptions, {
                            required?: boolean | undefined;
                            mappedBy?: string | undefined;
                            inversedBy?: string | undefined;
                            connectionTable?: string | undefined;
                            connectionTableMappedName?: string | undefined;
                        } | undefined, {
                            required?: boolean | undefined;
                            mappedBy?: string | undefined;
                            inversedBy?: string | undefined;
                            connectionTable?: string | undefined;
                            connectionTableMappedName?: string | undefined;
                        } | undefined>) | ({
                            strict: () => s.ObjectSchema<{
                                readonly mappedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly targetCardinality: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    multipleOf?: number | undefined;
                                    maximum?: number | undefined;
                                    exclusiveMaximum?: number | undefined;
                                    minimum?: number | undefined;
                                    exclusiveMinimum?: number | undefined;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                            }, s.Merge<s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }> & {
                                additionalProperties: false;
                            }>>;
                            properties: {
                                readonly mappedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly targetCardinality: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    multipleOf?: number | undefined;
                                    maximum?: number | undefined;
                                    exclusiveMaximum?: number | undefined;
                                    minimum?: number | undefined;
                                    exclusiveMinimum?: number | undefined;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                            };
                            required: string[] | undefined;
                            partial: () => s.ObjectSchema<{
                                readonly mappedBy: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly targetCardinality: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        } & s.Schema<s.ISchemaOptions, {
                            required?: boolean | undefined;
                            mappedBy?: string | undefined;
                            inversedBy?: string | undefined;
                            targetCardinality?: number | undefined;
                        } | undefined, {
                            required?: boolean | undefined;
                            mappedBy?: string | undefined;
                            inversedBy?: string | undefined;
                            targetCardinality?: number | undefined;
                        } | undefined>);
                    }, s.Merge<{
                        readonly title: string;
                    } & {
                        additionalProperties: false;
                    }>>[];
                }>;
            } & s.Schema<s.ISchemaOptions, {
                [x: string]: {
                    config?: {
                        required?: boolean | undefined;
                        sourceCardinality?: number | undefined;
                        with_limit?: number | undefined;
                        fieldConfig?: {
                            [x: string]: unknown;
                            label: string;
                        } | undefined;
                        mappedBy?: string | undefined;
                        inversedBy?: string | undefined;
                    } | {
                        required?: boolean | undefined;
                        mappedBy?: string | undefined;
                        inversedBy?: string | undefined;
                        connectionTable?: string | undefined;
                        connectionTableMappedName?: string | undefined;
                    } | {
                        required?: boolean | undefined;
                        mappedBy?: string | undefined;
                        inversedBy?: string | undefined;
                        targetCardinality?: number | undefined;
                    } | undefined;
                    type: string;
                    target: string;
                    source: string;
                };
            } | undefined, {
                [x: string]: never;
            } | undefined>;
            readonly indices: {
                additionalProperties: s.ObjectSchema<{
                    readonly entity: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                    readonly fields: s.ArraySchema<s.StringSchema<s.IStringOptions> & s.IStringOptions, {
                        readonly minItems: 1;
                    }> & {
                        readonly minItems: 1;
                    };
                    readonly unique: {
                        readonly default: false;
                    } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                }, s.Merge<s.IObjectOptions & {
                    additionalProperties: false;
                }>>;
            } & s.Schema<s.ISchemaOptions, {
                [x: string]: {
                    unique?: boolean | undefined;
                    fields: string[];
                    entity: string;
                };
            } | undefined, {
                [x: string]: {
                    unique?: boolean | undefined;
                    fields: string[];
                    entity: string;
                };
            } | undefined>;
        }, s.Merge<s.IObjectOptions & {
            additionalProperties: false;
        }>> | s.ObjectSchema<{
            readonly enabled: s.Schema<{
                readonly default: false;
            }, boolean, boolean> & {
                readonly default: false;
            };
            readonly basepath: s.StringSchema<{
                readonly default: "/api/media";
            }> & {
                readonly default: "/api/media";
            };
            readonly entity_name: s.StringSchema<{
                readonly default: "media";
            }> & {
                readonly default: "media";
            };
            readonly storage: s.ObjectSchema<{
                readonly body_max_size: {} & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
            }, s.Merge<{
                readonly default: {};
            } & {
                additionalProperties: false;
            }>>;
            readonly adapter: {
                default?: any;
                enum?: (readonly any[] | any[]) | undefined;
                const?: any;
                anyOf: s.ObjectSchema<{
                    readonly type: s.Schema<s.ILiteralOptions, string, string> & s.Merge<s.ILiteralOptions & {
                        const: string;
                    }>;
                    readonly config: s.Schema<s.ISchemaOptions, unknown, unknown>;
                }, s.Merge<{
                    readonly title: string;
                    readonly description: string | undefined;
                } & {
                    additionalProperties: false;
                }>>[];
            } & s.Schema<s.ISchemaOptions, {
                config?: unknown;
                type: string;
            } | undefined, never>;
        }, s.Merge<{
            readonly default: {};
        } & {
            additionalProperties: false;
        }>> | s.ObjectSchema<{
            readonly basepath: s.StringSchema<{
                readonly default: "/api/flows";
            }> & {
                readonly default: "/api/flows";
            };
            readonly flows: s.RecordSchema<s.ObjectSchema<{
                readonly trigger: s.Schema<s.IUnionOptions, {
                    config?: {
                        mode: "sync" | "async";
                    } | {
                        event: string;
                        mode: "sync" | "async";
                    } | {
                        path: string;
                        mode: "sync" | "async";
                        method: "GET" | "POST" | "PATCH" | "PUT" | "DELETE";
                        response_type: "html" | "json" | "text";
                    } | undefined;
                    type: "manual" | "event" | "http";
                }, never> & s.Merge<s.IUnionOptions & {
                    anyOf: s.ObjectSchema<{
                        readonly type: s.Schema<s.ILiteralOptions, "manual" | "event" | "http", "manual" | "event" | "http"> & s.Merge<s.ILiteralOptions & {
                            const: "manual" | "event" | "http";
                        }>;
                        readonly config: ({
                            strict: () => s.ObjectSchema<{
                                readonly mode: s.StringSchema<{
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                }> & {
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                };
                            }, s.Merge<s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }> & {
                                additionalProperties: false;
                            }>>;
                            properties: {
                                readonly mode: s.StringSchema<{
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                }> & {
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                };
                            };
                            required: string[] | undefined;
                            partial: () => s.ObjectSchema<{
                                readonly mode: s.Schema<s.ISchemaOptions, "sync" | "async" | undefined, "sync" | "async" | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        } & s.Schema<s.ISchemaOptions, {
                            mode: "sync" | "async";
                        } | undefined, {
                            mode: "sync" | "async";
                        } | undefined>) | ({
                            strict: () => s.ObjectSchema<{
                                readonly mode: s.StringSchema<{
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                }> & {
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                };
                                readonly event: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            }, s.Merge<s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }> & {
                                additionalProperties: false;
                            }>>;
                            properties: {
                                readonly mode: s.StringSchema<{
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                }> & {
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                };
                                readonly event: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            };
                            required: string[] | undefined;
                            partial: () => s.ObjectSchema<{
                                readonly mode: s.Schema<s.ISchemaOptions, "sync" | "async" | undefined, "sync" | "async" | undefined>;
                                readonly event: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        } & s.Schema<s.ISchemaOptions, {
                            event: string;
                            mode: "sync" | "async";
                        } | undefined, {
                            event: string;
                            mode: "sync" | "async";
                        } | undefined>) | ({
                            strict: () => s.ObjectSchema<{
                                readonly mode: s.StringSchema<{
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                }> & {
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                };
                                readonly path: s.StringSchema<{
                                    readonly pattern: "^/.*$";
                                }> & {
                                    readonly pattern: "^/.*$";
                                };
                                readonly method: s.StringSchema<{
                                    readonly enum: readonly ["GET", "POST", "PUT", "PATCH", "DELETE"];
                                    readonly default: "GET";
                                }> & {
                                    readonly enum: readonly ["GET", "POST", "PUT", "PATCH", "DELETE"];
                                    readonly default: "GET";
                                };
                                readonly response_type: s.StringSchema<{
                                    readonly enum: readonly ["json", "text", "html"];
                                    readonly default: "json";
                                }> & {
                                    readonly enum: readonly ["json", "text", "html"];
                                    readonly default: "json";
                                };
                            }, s.Merge<s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }> & {
                                additionalProperties: false;
                            }>>;
                            properties: {
                                readonly mode: s.StringSchema<{
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                }> & {
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                };
                                readonly path: s.StringSchema<{
                                    readonly pattern: "^/.*$";
                                }> & {
                                    readonly pattern: "^/.*$";
                                };
                                readonly method: s.StringSchema<{
                                    readonly enum: readonly ["GET", "POST", "PUT", "PATCH", "DELETE"];
                                    readonly default: "GET";
                                }> & {
                                    readonly enum: readonly ["GET", "POST", "PUT", "PATCH", "DELETE"];
                                    readonly default: "GET";
                                };
                                readonly response_type: s.StringSchema<{
                                    readonly enum: readonly ["json", "text", "html"];
                                    readonly default: "json";
                                }> & {
                                    readonly enum: readonly ["json", "text", "html"];
                                    readonly default: "json";
                                };
                            };
                            required: string[] | undefined;
                            partial: () => s.ObjectSchema<{
                                readonly mode: s.Schema<s.ISchemaOptions, "sync" | "async" | undefined, "sync" | "async" | undefined>;
                                readonly path: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly method: s.Schema<s.ISchemaOptions, "GET" | "POST" | "PATCH" | "PUT" | "DELETE" | undefined, "GET" | "POST" | "PATCH" | "PUT" | "DELETE" | undefined>;
                                readonly response_type: s.Schema<s.ISchemaOptions, "html" | "json" | "text" | undefined, "html" | "json" | "text" | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        } & s.Schema<s.ISchemaOptions, {
                            path: string;
                            mode: "sync" | "async";
                            method: "GET" | "POST" | "PATCH" | "PUT" | "DELETE";
                            response_type: "html" | "json" | "text";
                        } | undefined, {
                            path: string;
                            mode: "sync" | "async";
                            method: "GET" | "POST" | "PATCH" | "PUT" | "DELETE";
                            response_type: "html" | "json" | "text";
                        } | undefined>);
                    }, s.Merge<{
                        readonly title: string;
                    } & {
                        additionalProperties: false;
                    }>>[];
                }>;
                readonly tasks: {
                    additionalProperties: s.Schema<s.IUnionOptions, {
                        type: "log" | "fetch" | "render" | "subflow";
                        params: {
                            method?: string | undefined;
                            headers?: {
                                key: string;
                                value: string;
                            }[] | undefined;
                            body?: string | undefined;
                            normal?: number | undefined;
                            url: string;
                        } | {
                            delay: number;
                        } | {
                            render: string;
                        } | {
                            flow?: any;
                            input?: any;
                            loop?: boolean | undefined;
                        };
                    }, never> & s.Merge<s.IUnionOptions & {
                        anyOf: s.ObjectSchema<{
                            readonly type: s.Schema<s.ILiteralOptions, "log" | "fetch" | "render" | "subflow", "log" | "fetch" | "render" | "subflow"> & s.Merge<s.ILiteralOptions & {
                                const: "log" | "fetch" | "render" | "subflow";
                            }>;
                            readonly params: s.ObjectSchema<{
                                readonly url: s.StringSchema<{
                                    readonly pattern: "^(http|https)://";
                                }> & {
                                    readonly pattern: "^(http|https)://";
                                };
                                readonly method: {
                                    readonly default: "GET";
                                    readonly enum: string[];
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly headers: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    $defs?: Record<string, s.Schema> | undefined;
                                    contains?: s.Schema | undefined;
                                    minContains?: number | undefined;
                                    maxContains?: number | undefined;
                                    prefixItems?: s.Schema[] | undefined;
                                    uniqueItems?: boolean | undefined;
                                    maxItems?: number | undefined;
                                    minItems?: number | undefined;
                                    readonly items?: s.ObjectSchema<{
                                        readonly key: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                        readonly value: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    }, s.Merge<s.IObjectOptions & {
                                        additionalProperties: false;
                                    }>> | undefined;
                                } & s.Schema<s.ISchemaOptions, {
                                    key: string;
                                    value: string;
                                }[] | undefined, {
                                    key: string;
                                    value: string;
                                }[] | undefined>;
                                readonly body: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly normal: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    multipleOf?: number | undefined;
                                    maximum?: number | undefined;
                                    exclusiveMaximum?: number | undefined;
                                    minimum?: number | undefined;
                                    exclusiveMinimum?: number | undefined;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>> | s.ObjectSchema<{
                                readonly delay: s.Schema<{
                                    readonly default: 10;
                                }, number, number> & {
                                    readonly default: 10;
                                };
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>> | s.ObjectSchema<{
                                readonly render: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>> | s.ObjectSchema<{
                                readonly flow: s.Schema<s.IAnyOptions, any, any> & s.IAnyOptions;
                                readonly input: {
                                    [x: string]: any;
                                    [x: number]: any;
                                } & s.Schema<s.ISchemaOptions, any, any>;
                                readonly loop: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        }, s.Merge<{
                            readonly title: string;
                        } & {
                            additionalProperties: false;
                        }>>[];
                    }>;
                } & s.Schema<s.ISchemaOptions, {
                    [x: string]: {
                        type: "log" | "fetch" | "render" | "subflow";
                        params: {
                            method?: string | undefined;
                            headers?: {
                                key: string;
                                value: string;
                            }[] | undefined;
                            body?: string | undefined;
                            normal?: number | undefined;
                            url: string;
                        } | {
                            delay: number;
                        } | {
                            render: string;
                        } | {
                            flow?: any;
                            input?: any;
                            loop?: boolean | undefined;
                        };
                    };
                } | undefined, {
                    [x: string]: never;
                } | undefined>;
                readonly connections: {
                    additionalProperties: s.ObjectSchema<{
                        readonly source: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                        readonly target: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                        readonly config: s.ObjectSchema<{
                            readonly condition: s.Schema<s.ISchemaOptions, {
                                type: "success";
                            } | {
                                type: "error";
                            } | {
                                path: string;
                                value: string;
                                type: "matches";
                            } | undefined, {
                                type: "error";
                            } | {
                                path: string;
                                value: string;
                                type: "matches";
                            } | {
                                type: "success";
                            } | undefined>;
                            readonly max_retries: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                        }, s.Merge<s.IObjectOptions & {
                            additionalProperties: false;
                        }>>;
                    }, s.Merge<s.IObjectOptions & {
                        additionalProperties: false;
                    }>>;
                } & s.Schema<s.ISchemaOptions, {
                    [x: string]: {
                        config: {
                            condition?: {
                                type: "success";
                            } | {
                                type: "error";
                            } | {
                                path: string;
                                value: string;
                                type: "matches";
                            } | undefined;
                            max_retries?: number | undefined;
                        };
                        target: string;
                        source: string;
                    };
                } | undefined, {
                    [x: string]: {
                        config: {
                            condition?: {
                                type: "error";
                            } | {
                                path: string;
                                value: string;
                                type: "matches";
                            } | {
                                type: "success";
                            } | undefined;
                            max_retries?: number | undefined;
                        };
                        target: string;
                        source: string;
                    };
                } | undefined>;
                readonly start_task: {
                    default?: any;
                    maxLength?: number | undefined;
                    minLength?: number | undefined;
                    pattern?: (string | RegExp) | undefined;
                    format?: string | undefined;
                    enum?: (readonly any[] | any[]) | undefined;
                    const?: any;
                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                readonly responding_task: {
                    default?: any;
                    maxLength?: number | undefined;
                    minLength?: number | undefined;
                    pattern?: (string | RegExp) | undefined;
                    format?: string | undefined;
                    enum?: (readonly any[] | any[]) | undefined;
                    const?: any;
                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
            }, s.Merge<s.IObjectOptions & {
                additionalProperties: false;
            }>>, {
                readonly default: {};
            }>;
        }, s.Merge<s.IObjectOptions & {
            additionalProperties: false;
        }>>;
        data: s.ObjectSchema<{
            readonly enabled: s.Schema<{
                readonly default: false;
            }, boolean, boolean> & {
                readonly default: false;
            };
            readonly basepath: s.StringSchema<{
                readonly default: "/api/auth";
            }> & {
                readonly default: "/api/auth";
            };
            readonly entity_name: s.StringSchema<{
                readonly default: "users";
            }> & {
                readonly default: "users";
            };
            readonly allow_register: {
                readonly default: true;
            } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
            readonly jwt: s.ObjectSchema<{
                readonly secret: import("bknd/utils").SecretSchema<{
                    default: string;
                }> & {
                    default: string;
                };
                readonly alg: {
                    readonly default: "HS256";
                    readonly enum: ["HS256", "HS384", "HS512"];
                } & s.Schema<s.ISchemaOptions, "HS256" | "HS384" | "HS512" | undefined, "HS256" | "HS384" | "HS512" | undefined>;
                readonly expires: {
                    default?: any;
                    enum?: (readonly any[] | any[]) | undefined;
                    const?: any;
                    multipleOf?: number | undefined;
                    maximum?: number | undefined;
                    exclusiveMaximum?: number | undefined;
                    minimum?: number | undefined;
                    exclusiveMinimum?: number | undefined;
                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                readonly issuer: {
                    default?: any;
                    maxLength?: number | undefined;
                    minLength?: number | undefined;
                    pattern?: (string | RegExp) | undefined;
                    format?: string | undefined;
                    enum?: (readonly any[] | any[]) | undefined;
                    const?: any;
                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                readonly fields: s.ArraySchema<s.StringSchema<s.IStringOptions> & s.IStringOptions, {
                    readonly default: readonly ["id", "email", "role"];
                }> & {
                    readonly default: readonly ["id", "email", "role"];
                };
            }, s.Merge<{
                readonly default: {};
            } & {
                additionalProperties: false;
            }>>;
            readonly cookie: s.ObjectSchema<{
                readonly path: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                readonly sameSite: s.Schema<s.ISchemaOptions, "strict" | "lax" | "none" | undefined, "strict" | "lax" | "none" | undefined>;
                readonly secure: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                readonly httpOnly: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                readonly expires: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                readonly partitioned: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                readonly renew: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                readonly pathSuccess: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                readonly pathLoggedOut: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
            }, s.Merge<s.IObjectOptions & {
                additionalProperties: false;
            }>>;
            readonly strategies: s.RecordSchema<s.Schema<s.IUnionOptions, {
                enabled?: boolean | undefined;
                type: "password" | "oauth" | "custom_oauth";
                config: {
                    rounds?: number | undefined;
                    hashing: "plain" | "sha256" | "bcrypt";
                } | {
                    [x: string]: unknown;
                    name: "google" | "github";
                    type: "oidc" | "oauth2";
                    client: {
                        client_id: string;
                        client_secret: string;
                    };
                } | {
                    name: string;
                    type: "oidc" | "oauth2";
                    client: {
                        [x: string]: unknown;
                        client_id: string;
                        client_secret: string;
                        token_endpoint_auth_method: "client_secret_basic";
                    };
                    as: {
                        code_challenge_methods_supported?: "S256" | undefined;
                        scopes_supported?: string[] | undefined;
                        scope_separator?: string | undefined;
                        authorization_endpoint?: string | undefined;
                        token_endpoint?: string | undefined;
                        userinfo_endpoint?: string | undefined;
                        issuer: string;
                    };
                };
            }, never> & s.Merge<s.IUnionOptions & {
                anyOf: s.ObjectSchema<{
                    readonly enabled: {
                        readonly default: true;
                    } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                    readonly type: s.Schema<s.ILiteralOptions, "password" | "oauth" | "custom_oauth", "password" | "oauth" | "custom_oauth"> & s.Merge<s.ILiteralOptions & {
                        const: "password" | "oauth" | "custom_oauth";
                    }>;
                    readonly config: s.ObjectSchema<{
                        readonly hashing: s.StringSchema<{
                            readonly enum: readonly ["plain", "sha256", "bcrypt"];
                            readonly default: "sha256";
                        }> & {
                            readonly enum: readonly ["plain", "sha256", "bcrypt"];
                            readonly default: "sha256";
                        };
                        readonly rounds: {
                            readonly maximum: 10;
                            readonly minimum: 1;
                        } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                    }, s.Merge<s.IObjectOptions & {
                        additionalProperties: false;
                    }>> | (s.ObjectSchema<{
                        readonly name: s.StringSchema<{
                            readonly enum: ("google" | "github")[];
                        }> & {
                            readonly enum: ("google" | "github")[];
                        };
                        readonly type: s.StringSchema<{
                            readonly enum: readonly ["oidc", "oauth2"];
                            readonly default: "oauth2";
                        }> & {
                            readonly enum: readonly ["oidc", "oauth2"];
                            readonly default: "oauth2";
                        };
                        readonly client: s.ObjectSchema<{
                            readonly client_id: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            readonly client_secret: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                        }, s.Merge<s.IObjectOptions & {
                            additionalProperties: false;
                        }>>;
                    }, {
                        readonly title: "OAuth";
                    }> & {
                        readonly title: "OAuth";
                    }) | s.ObjectSchema<{
                        readonly type: s.StringSchema<{
                            readonly enum: readonly ["oidc", "oauth2"];
                            readonly default: "oidc";
                        }> & {
                            readonly enum: readonly ["oidc", "oauth2"];
                            readonly default: "oidc";
                        };
                        readonly name: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                        readonly client: s.ObjectSchema<{
                            readonly client_id: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            readonly client_secret: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            readonly token_endpoint_auth_method: s.StringSchema<{
                                readonly enum: readonly ["client_secret_basic"];
                            }> & {
                                readonly enum: readonly ["client_secret_basic"];
                            };
                        }, s.IObjectOptions> & s.IObjectOptions;
                        readonly as: s.ObjectSchema<{
                            readonly issuer: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            readonly code_challenge_methods_supported: {
                                readonly enum: ["S256"];
                            } & s.Schema<s.ISchemaOptions, "S256" | undefined, "S256" | undefined>;
                            readonly scopes_supported: {
                                default?: any;
                                enum?: (readonly any[] | any[]) | undefined;
                                const?: any;
                                $defs?: Record<string, s.Schema> | undefined;
                                contains?: s.Schema | undefined;
                                minContains?: number | undefined;
                                maxContains?: number | undefined;
                                prefixItems?: s.Schema[] | undefined;
                                uniqueItems?: boolean | undefined;
                                maxItems?: number | undefined;
                                minItems?: number | undefined;
                                readonly items?: (s.StringSchema<s.IStringOptions> & s.IStringOptions) | undefined;
                            } & s.Schema<s.ISchemaOptions, string[] | undefined, string[] | undefined>;
                            readonly scope_separator: {
                                readonly default: " ";
                            } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            readonly authorization_endpoint: {
                                readonly pattern: "^(https?|wss?)://[^\\s/$.?#].[^\\s]*$";
                            } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            readonly token_endpoint: {
                                readonly pattern: "^(https?|wss?)://[^\\s/$.?#].[^\\s]*$";
                            } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            readonly userinfo_endpoint: {
                                readonly pattern: "^(https?|wss?)://[^\\s/$.?#].[^\\s]*$";
                            } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                        }, s.Merge<s.IObjectOptions & {
                            additionalProperties: false;
                        }>>;
                    }, s.Merge<{
                        readonly title: "Custom OAuth";
                    } & {
                        additionalProperties: false;
                    }>>;
                }, s.Merge<{
                    readonly title: "password" | "oauth" | "custom_oauth";
                } & {
                    additionalProperties: false;
                }>>[];
            }>, {
                readonly title: "Strategies";
                readonly default: {
                    readonly password: {
                        readonly type: "password";
                        readonly enabled: true;
                        readonly config: {
                            readonly hashing: "sha256";
                        };
                    };
                };
            }>;
            readonly guard: {
                default?: any;
                enum?: (readonly any[] | any[]) | undefined;
                const?: any;
                $defs?: Record<string, s.Schema> | undefined;
                patternProperties?: Record<string, s.Schema> | undefined;
                additionalProperties?: (s.Schema | false) | undefined;
                minProperties?: number | undefined;
                maxProperties?: number | undefined;
                propertyNames?: s.Schema | undefined;
                strict: () => s.ObjectSchema<{
                    readonly enabled: {
                        readonly default: false;
                    } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                }, s.Merge<s.IObjectOptions & {
                    additionalProperties: false;
                }>>;
                properties: {
                    readonly enabled: {
                        readonly default: false;
                    } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                };
                required: string[] | undefined;
                partial: () => s.ObjectSchema<{
                    readonly enabled: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                }, s.IObjectOptions>;
            } & s.Schema<s.ISchemaOptions, {
                [x: string]: unknown;
                enabled?: boolean | undefined;
            } | undefined, {
                [x: string]: unknown;
                enabled?: boolean | undefined;
            } | undefined>;
            readonly roles: {
                additionalProperties: s.ObjectSchema<{
                    readonly permissions: {
                        default?: any;
                        enum?: (readonly any[] | any[]) | undefined;
                        const?: any;
                        $defs?: Record<string, s.Schema> | undefined;
                        contains?: s.Schema | undefined;
                        minContains?: number | undefined;
                        maxContains?: number | undefined;
                        prefixItems?: s.Schema[] | undefined;
                        uniqueItems?: boolean | undefined;
                        maxItems?: number | undefined;
                        minItems?: number | undefined;
                        readonly items?: (s.StringSchema<s.IStringOptions> & s.IStringOptions) | undefined;
                    } & s.Schema<s.ISchemaOptions, string[] | undefined, string[] | undefined>;
                    readonly is_default: {
                        default?: any;
                        enum?: (readonly any[] | any[]) | undefined;
                        const?: any;
                    } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                    readonly implicit_allow: {
                        default?: any;
                        enum?: (readonly any[] | any[]) | undefined;
                        const?: any;
                    } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                }, s.Merge<s.IObjectOptions & {
                    additionalProperties: false;
                }>>;
            } & s.Schema<s.ISchemaOptions, {
                [x: string]: {
                    permissions?: string[] | undefined;
                    is_default?: boolean | undefined;
                    implicit_allow?: boolean | undefined;
                };
            } | undefined, {
                [x: string]: {
                    permissions?: string[] | undefined;
                    is_default?: boolean | undefined;
                    implicit_allow?: boolean | undefined;
                };
            } | undefined>;
        }, s.Merge<{
            readonly title: "Authentication";
        } & {
            additionalProperties: false;
        }>> | s.ObjectSchema<{
            readonly cors: s.ObjectSchema<{
                readonly origin: s.StringSchema<{
                    readonly default: "*";
                }> & {
                    readonly default: "*";
                };
                readonly allow_methods: s.ArraySchema<s.StringSchema<{
                    readonly enum: readonly ["GET", "POST", "PATCH", "PUT", "DELETE"];
                }> & {
                    readonly enum: readonly ["GET", "POST", "PATCH", "PUT", "DELETE"];
                }, {
                    readonly default: readonly ["GET", "POST", "PATCH", "PUT", "DELETE"];
                    readonly uniqueItems: true;
                }> & {
                    readonly default: readonly ["GET", "POST", "PATCH", "PUT", "DELETE"];
                    readonly uniqueItems: true;
                };
                readonly allow_headers: s.ArraySchema<s.StringSchema<s.IStringOptions> & s.IStringOptions, {
                    readonly default: readonly ["Content-Type", "Content-Length", "Authorization", "Accept"];
                }> & {
                    readonly default: readonly ["Content-Type", "Content-Length", "Authorization", "Accept"];
                };
                readonly allow_credentials: s.Schema<{
                    readonly default: true;
                }, boolean, boolean> & {
                    readonly default: true;
                };
            }, s.Merge<s.IObjectOptions & {
                additionalProperties: false;
            }>>;
        }, s.Merge<s.IObjectOptions & {
            additionalProperties: false;
        }>> | s.ObjectSchema<{
            readonly basepath: {
                readonly default: "/api/data";
            } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
            readonly default_primary_format: {
                readonly default: "integer";
                readonly enum: readonly ["integer", "uuid"];
            } & s.Schema<s.ISchemaOptions, "integer" | "uuid" | undefined, "integer" | "uuid" | undefined>;
            readonly entities: {
                additionalProperties: s.ObjectSchema<{
                    readonly name: {
                        default?: any;
                        maxLength?: number | undefined;
                        minLength?: number | undefined;
                        pattern?: (string | RegExp) | undefined;
                        format?: string | undefined;
                        enum?: (readonly any[] | any[]) | undefined;
                        const?: any;
                    } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                    readonly type: s.StringSchema<{
                        readonly enum: readonly ["regular", "system", "generated"];
                        readonly default: "regular";
                    }> & {
                        readonly enum: readonly ["regular", "system", "generated"];
                        readonly default: "regular";
                    };
                    readonly config: s.ObjectSchema<{
                        readonly name: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                        readonly name_singular: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                        readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                        readonly sort_field: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                        readonly sort_dir: s.Schema<s.ISchemaOptions, "asc" | "desc" | undefined, "asc" | "desc" | undefined>;
                        readonly primary_format: s.Schema<s.ISchemaOptions, "integer" | "uuid" | undefined, "integer" | "uuid" | undefined>;
                    }, s.Merge<s.IObjectOptions & {
                        additionalProperties: false;
                    }>>;
                    readonly fields: s.RecordSchema<s.Schema<s.IUnionOptions, {
                        name?: string | undefined;
                        config?: {
                            description?: string | undefined;
                            maxLength?: number | undefined;
                            minLength?: number | undefined;
                            pattern?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: string | undefined;
                            html_config?: {
                                [x: string]: unknown;
                                element?: string | undefined;
                                props?: {
                                    [x: string]: string | number;
                                } | undefined;
                            } | undefined;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                        } | {
                            description?: string | undefined;
                            format?: "integer" | "uuid" | undefined;
                            required?: boolean | undefined;
                            default_value?: any;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                        } | {
                            description?: string | undefined;
                            multipleOf?: number | undefined;
                            maximum?: number | undefined;
                            exclusiveMaximum?: number | undefined;
                            minimum?: number | undefined;
                            exclusiveMinimum?: number | undefined;
                            required?: boolean | undefined;
                            default_value?: number | undefined;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                        } | {
                            description?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: boolean | undefined;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                        } | {
                            description?: string | undefined;
                            type?: "date" | "week" | "datetime" | undefined;
                            required?: boolean | undefined;
                            default_value?: any;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                            timezone?: string | undefined;
                            min_date?: string | undefined;
                            max_date?: string | undefined;
                        } | {
                            description?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: string | undefined;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                            options?: {
                                [x: string]: unknown;
                                values: string[];
                                type: "strings";
                            } | {
                                [x: string]: unknown;
                                values: {
                                    [x: string]: unknown;
                                    value: string;
                                    label: string;
                                }[];
                                type: "objects";
                            } | undefined;
                        } | {
                            description?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: any;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                        } | {
                            description?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: any;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                            schema?: any;
                            ui_schema?: any;
                            default_from_schema?: boolean | undefined;
                        } | {
                            description?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: any;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                            target_field?: string | undefined;
                            target_field_type?: "text" | "integer" | undefined;
                            on_delete?: "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined;
                            reference: string;
                            target: string;
                        } | {
                            description?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: any;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                            entity?: string | undefined;
                            min_items?: number | undefined;
                            max_items?: number | undefined;
                            mime_types?: string[] | undefined;
                        } | undefined;
                        type: "number" | "boolean" | "json" | "text" | "enum" | "date" | "media" | "relation" | "primary" | "jsonschema";
                    }, never> & s.Merge<s.IUnionOptions & {
                        anyOf: s.ObjectSchema<{
                            readonly name: {
                                default?: any;
                                maxLength?: number | undefined;
                                minLength?: number | undefined;
                                pattern?: (string | RegExp) | undefined;
                                format?: string | undefined;
                                enum?: (readonly any[] | any[]) | undefined;
                                const?: any;
                            } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            readonly type: s.Schema<s.ILiteralOptions, "number" | "boolean" | "json" | "text" | "enum" | "date" | "media" | "relation" | "primary" | "jsonschema", "number" | "boolean" | "json" | "text" | "enum" | "date" | "media" | "relation" | "primary" | "jsonschema"> & s.Merge<s.ILiteralOptions & {
                                const: "number" | "boolean" | "json" | "text" | "enum" | "date" | "media" | "relation" | "primary" | "jsonschema";
                            }>;
                            readonly config: ({
                                strict: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly minLength: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly maxLength: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly pattern: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly html_config: s.Schema<s.ISchemaOptions, {
                                        [x: string]: unknown;
                                        element?: string | undefined;
                                        props?: {
                                            [x: string]: string | number;
                                        } | undefined;
                                    } | undefined, {
                                        [x: string]: unknown;
                                        element?: string | undefined;
                                        props?: {
                                            [x: string]: string | number;
                                        } | undefined;
                                    } | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly minLength: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly maxLength: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly pattern: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly html_config: s.Schema<s.ISchemaOptions, {
                                        [x: string]: unknown;
                                        element?: string | undefined;
                                        props?: {
                                            [x: string]: string | number;
                                        } | undefined;
                                    } | undefined, {
                                        [x: string]: unknown;
                                        element?: string | undefined;
                                        props?: {
                                            [x: string]: string | number;
                                        } | undefined;
                                    } | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly minLength: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly maxLength: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly pattern: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly html_config: s.Schema<s.ISchemaOptions, {
                                        [x: string]: unknown;
                                        element?: string | undefined;
                                        props?: {
                                            [x: string]: string | number;
                                        } | undefined;
                                    } | undefined, {
                                        [x: string]: unknown;
                                        element?: string | undefined;
                                        props?: {
                                            [x: string]: string | number;
                                        } | undefined;
                                    } | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                maxLength?: number | undefined;
                                minLength?: number | undefined;
                                pattern?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: string | undefined;
                                html_config?: {
                                    [x: string]: unknown;
                                    element?: string | undefined;
                                    props?: {
                                        [x: string]: string | number;
                                    } | undefined;
                                } | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                maxLength?: number | undefined;
                                minLength?: number | undefined;
                                pattern?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: string | undefined;
                                html_config?: {
                                    [x: string]: unknown;
                                    element?: string | undefined;
                                    props?: {
                                        [x: string]: string | number;
                                    } | undefined;
                                } | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly format: s.Schema<s.ISchemaOptions, "integer" | "uuid" | undefined, "integer" | "uuid" | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly format: s.Schema<s.ISchemaOptions, "integer" | "uuid" | undefined, "integer" | "uuid" | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly format: s.Schema<s.ISchemaOptions, "integer" | "uuid" | undefined, "integer" | "uuid" | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                format?: "integer" | "uuid" | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                format?: "integer" | "uuid" | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly minimum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly maximum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly exclusiveMinimum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly exclusiveMaximum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly multipleOf: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly minimum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly maximum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly exclusiveMinimum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly exclusiveMaximum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly multipleOf: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly minimum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly maximum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly exclusiveMinimum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly exclusiveMaximum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly multipleOf: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                multipleOf?: number | undefined;
                                maximum?: number | undefined;
                                exclusiveMaximum?: number | undefined;
                                minimum?: number | undefined;
                                exclusiveMinimum?: number | undefined;
                                required?: boolean | undefined;
                                default_value?: number | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                multipleOf?: number | undefined;
                                maximum?: number | undefined;
                                exclusiveMaximum?: number | undefined;
                                minimum?: number | undefined;
                                exclusiveMinimum?: number | undefined;
                                required?: boolean | undefined;
                                default_value?: number | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: boolean | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: boolean | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly type: s.Schema<s.ISchemaOptions, "date" | "week" | "datetime" | undefined, "date" | "week" | "datetime" | undefined>;
                                    readonly timezone: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly min_date: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly max_date: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly type: s.Schema<s.ISchemaOptions, "date" | "week" | "datetime" | undefined, "date" | "week" | "datetime" | undefined>;
                                    readonly timezone: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly min_date: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly max_date: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly type: s.Schema<s.ISchemaOptions, "date" | "week" | "datetime" | undefined, "date" | "week" | "datetime" | undefined>;
                                    readonly timezone: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly min_date: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly max_date: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                type?: "date" | "week" | "datetime" | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                timezone?: string | undefined;
                                min_date?: string | undefined;
                                max_date?: string | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                type?: "date" | "week" | "datetime" | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                timezone?: string | undefined;
                                min_date?: string | undefined;
                                max_date?: string | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly options: s.Schema<s.ISchemaOptions, {
                                        [x: string]: unknown;
                                        values: string[];
                                        type: "strings";
                                    } | {
                                        [x: string]: unknown;
                                        values: {
                                            [x: string]: unknown;
                                            value: string;
                                            label: string;
                                        }[];
                                        type: "objects";
                                    } | undefined, any>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly options: s.Schema<s.ISchemaOptions, {
                                        [x: string]: unknown;
                                        values: string[];
                                        type: "strings";
                                    } | {
                                        [x: string]: unknown;
                                        values: {
                                            [x: string]: unknown;
                                            value: string;
                                            label: string;
                                        }[];
                                        type: "objects";
                                    } | undefined, any>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly options: s.Schema<s.ISchemaOptions, {
                                        [x: string]: unknown;
                                        values: string[];
                                        type: "strings";
                                    } | {
                                        [x: string]: unknown;
                                        values: {
                                            [x: string]: unknown;
                                            value: string;
                                            label: string;
                                        }[];
                                        type: "objects";
                                    } | undefined, any>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: string | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                options?: {
                                    [x: string]: unknown;
                                    values: string[];
                                    type: "strings";
                                } | {
                                    [x: string]: unknown;
                                    values: {
                                        [x: string]: unknown;
                                        value: string;
                                        label: string;
                                    }[];
                                    type: "objects";
                                } | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: string | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                options?: any;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly schema: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly ui_schema: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly default_from_schema: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly schema: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly ui_schema: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly default_from_schema: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly schema: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly ui_schema: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly default_from_schema: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                schema?: any;
                                ui_schema?: any;
                                default_from_schema?: boolean | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                schema?: any;
                                ui_schema?: any;
                                default_from_schema?: boolean | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly reference: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    readonly target: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    readonly target_field: {
                                        readonly default: "id";
                                    } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly target_field_type: {
                                        readonly default: "integer";
                                        readonly enum: ["text", "integer"];
                                    } & s.Schema<s.ISchemaOptions, "text" | "integer" | undefined, "text" | "integer" | undefined>;
                                    readonly on_delete: {
                                        readonly default: "set null";
                                        readonly enum: readonly ["cascade", "set null", "set default", "restrict", "no action"];
                                    } & s.Schema<s.ISchemaOptions, "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined, "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly reference: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    readonly target: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    readonly target_field: {
                                        readonly default: "id";
                                    } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly target_field_type: {
                                        readonly default: "integer";
                                        readonly enum: ["text", "integer"];
                                    } & s.Schema<s.ISchemaOptions, "text" | "integer" | undefined, "text" | "integer" | undefined>;
                                    readonly on_delete: {
                                        readonly default: "set null";
                                        readonly enum: readonly ["cascade", "set null", "set default", "restrict", "no action"];
                                    } & s.Schema<s.ISchemaOptions, "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined, "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly reference: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly target: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly target_field: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly target_field_type: s.Schema<s.ISchemaOptions, "text" | "integer" | undefined, "text" | "integer" | undefined>;
                                    readonly on_delete: s.Schema<s.ISchemaOptions, "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined, "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                target_field?: string | undefined;
                                target_field_type?: "text" | "integer" | undefined;
                                on_delete?: "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined;
                                reference: string;
                                target: string;
                            } | undefined, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                target_field?: string | undefined;
                                target_field_type?: "text" | "integer" | undefined;
                                on_delete?: "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined;
                                reference: string;
                                target: string;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly entity: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly min_items: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly max_items: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly mime_types: s.Schema<s.ISchemaOptions, string[] | undefined, string[] | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly entity: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly min_items: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly max_items: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly mime_types: s.Schema<s.ISchemaOptions, string[] | undefined, string[] | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly entity: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly min_items: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly max_items: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly mime_types: s.Schema<s.ISchemaOptions, string[] | undefined, string[] | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                entity?: string | undefined;
                                min_items?: number | undefined;
                                max_items?: number | undefined;
                                mime_types?: string[] | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                entity?: string | undefined;
                                min_items?: number | undefined;
                                max_items?: number | undefined;
                                mime_types?: string[] | undefined;
                            } | undefined>);
                        }, s.Merge<{
                            readonly title: "number" | "boolean" | "json" | "text" | "enum" | "date" | "media" | "relation" | "primary" | "jsonschema";
                        } & {
                            additionalProperties: false;
                        }>>[];
                    }>, s.IRecordOptions>;
                }, s.Merge<s.IObjectOptions & {
                    additionalProperties: false;
                }>>;
            } & s.Schema<s.ISchemaOptions, {
                [x: string]: {
                    name?: string | undefined;
                    type: "regular" | "system" | "generated";
                    fields: {
                        [x: string]: {
                            name?: string | undefined;
                            config?: {
                                description?: string | undefined;
                                maxLength?: number | undefined;
                                minLength?: number | undefined;
                                pattern?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: string | undefined;
                                html_config?: {
                                    [x: string]: unknown;
                                    element?: string | undefined;
                                    props?: {
                                        [x: string]: string | number;
                                    } | undefined;
                                } | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | {
                                description?: string | undefined;
                                format?: "integer" | "uuid" | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | {
                                description?: string | undefined;
                                multipleOf?: number | undefined;
                                maximum?: number | undefined;
                                exclusiveMaximum?: number | undefined;
                                minimum?: number | undefined;
                                exclusiveMinimum?: number | undefined;
                                required?: boolean | undefined;
                                default_value?: number | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: boolean | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | {
                                description?: string | undefined;
                                type?: "date" | "week" | "datetime" | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                timezone?: string | undefined;
                                min_date?: string | undefined;
                                max_date?: string | undefined;
                            } | {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: string | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                options?: {
                                    [x: string]: unknown;
                                    values: string[];
                                    type: "strings";
                                } | {
                                    [x: string]: unknown;
                                    values: {
                                        [x: string]: unknown;
                                        value: string;
                                        label: string;
                                    }[];
                                    type: "objects";
                                } | undefined;
                            } | {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                schema?: any;
                                ui_schema?: any;
                                default_from_schema?: boolean | undefined;
                            } | {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                target_field?: string | undefined;
                                target_field_type?: "text" | "integer" | undefined;
                                on_delete?: "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined;
                                reference: string;
                                target: string;
                            } | {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                entity?: string | undefined;
                                min_items?: number | undefined;
                                max_items?: number | undefined;
                                mime_types?: string[] | undefined;
                            } | undefined;
                            type: "number" | "boolean" | "json" | "text" | "enum" | "date" | "media" | "relation" | "primary" | "jsonschema";
                        };
                    };
                    config: {
                        description?: string | undefined;
                        name?: string | undefined;
                        name_singular?: string | undefined;
                        sort_field?: string | undefined;
                        sort_dir?: "asc" | "desc" | undefined;
                        primary_format?: "integer" | "uuid" | undefined;
                    };
                };
            } | undefined, {
                [x: string]: {
                    name?: string | undefined;
                    type: "regular" | "system" | "generated";
                    fields: {
                        [x: string]: never;
                    };
                    config: {
                        description?: string | undefined;
                        name?: string | undefined;
                        name_singular?: string | undefined;
                        sort_field?: string | undefined;
                        sort_dir?: "asc" | "desc" | undefined;
                        primary_format?: "integer" | "uuid" | undefined;
                    };
                };
            } | undefined>;
            readonly relations: {
                additionalProperties: s.Schema<s.IUnionOptions, {
                    config?: {
                        required?: boolean | undefined;
                        sourceCardinality?: number | undefined;
                        with_limit?: number | undefined;
                        fieldConfig?: {
                            [x: string]: unknown;
                            label: string;
                        } | undefined;
                        mappedBy?: string | undefined;
                        inversedBy?: string | undefined;
                    } | {
                        required?: boolean | undefined;
                        mappedBy?: string | undefined;
                        inversedBy?: string | undefined;
                        connectionTable?: string | undefined;
                        connectionTableMappedName?: string | undefined;
                    } | {
                        required?: boolean | undefined;
                        mappedBy?: string | undefined;
                        inversedBy?: string | undefined;
                        targetCardinality?: number | undefined;
                    } | undefined;
                    type: string;
                    target: string;
                    source: string;
                }, never> & s.Merge<s.IUnionOptions & {
                    anyOf: s.ObjectSchema<{
                        readonly type: s.Schema<s.ILiteralOptions, string, string> & s.Merge<s.ILiteralOptions & {
                            const: string;
                        }>;
                        readonly source: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                        readonly target: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                        readonly config: ({
                            strict: () => s.ObjectSchema<{
                                readonly mappedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly sourceCardinality: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    multipleOf?: number | undefined;
                                    maximum?: number | undefined;
                                    exclusiveMaximum?: number | undefined;
                                    minimum?: number | undefined;
                                    exclusiveMinimum?: number | undefined;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                readonly with_limit: {
                                    readonly default: number;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                readonly fieldConfig: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    $defs?: Record<string, s.Schema> | undefined;
                                    patternProperties?: Record<string, s.Schema> | undefined;
                                    additionalProperties?: (s.Schema | false) | undefined;
                                    minProperties?: number | undefined;
                                    maxProperties?: number | undefined;
                                    propertyNames?: s.Schema | undefined;
                                    strict: () => s.ObjectSchema<{
                                        readonly label: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    }, s.Merge<s.IObjectOptions & {
                                        additionalProperties: false;
                                    }>>;
                                    properties: {
                                        readonly label: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    };
                                    required: string[] | undefined;
                                    partial: () => s.ObjectSchema<{
                                        readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    }, s.IObjectOptions>;
                                } & s.Schema<s.ISchemaOptions, {
                                    [x: string]: unknown;
                                    label: string;
                                } | undefined, {
                                    [x: string]: unknown;
                                    label: string;
                                } | undefined>;
                            }, s.Merge<s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }> & {
                                additionalProperties: false;
                            }>>;
                            properties: {
                                readonly mappedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly sourceCardinality: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    multipleOf?: number | undefined;
                                    maximum?: number | undefined;
                                    exclusiveMaximum?: number | undefined;
                                    minimum?: number | undefined;
                                    exclusiveMinimum?: number | undefined;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                readonly with_limit: {
                                    readonly default: number;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                readonly fieldConfig: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    $defs?: Record<string, s.Schema> | undefined;
                                    patternProperties?: Record<string, s.Schema> | undefined;
                                    additionalProperties?: (s.Schema | false) | undefined;
                                    minProperties?: number | undefined;
                                    maxProperties?: number | undefined;
                                    propertyNames?: s.Schema | undefined;
                                    strict: () => s.ObjectSchema<{
                                        readonly label: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    }, s.Merge<s.IObjectOptions & {
                                        additionalProperties: false;
                                    }>>;
                                    properties: {
                                        readonly label: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    };
                                    required: string[] | undefined;
                                    partial: () => s.ObjectSchema<{
                                        readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    }, s.IObjectOptions>;
                                } & s.Schema<s.ISchemaOptions, {
                                    [x: string]: unknown;
                                    label: string;
                                } | undefined, {
                                    [x: string]: unknown;
                                    label: string;
                                } | undefined>;
                            };
                            required: string[] | undefined;
                            partial: () => s.ObjectSchema<{
                                readonly mappedBy: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly sourceCardinality: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                readonly with_limit: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                readonly fieldConfig: s.Schema<s.ISchemaOptions, {
                                    [x: string]: unknown;
                                    label: string;
                                } | undefined, {
                                    [x: string]: unknown;
                                    label: string;
                                } | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        } & s.Schema<s.ISchemaOptions, {
                            required?: boolean | undefined;
                            sourceCardinality?: number | undefined;
                            with_limit?: number | undefined;
                            fieldConfig?: {
                                [x: string]: unknown;
                                label: string;
                            } | undefined;
                            mappedBy?: string | undefined;
                            inversedBy?: string | undefined;
                        } | undefined, {
                            required?: boolean | undefined;
                            sourceCardinality?: number | undefined;
                            with_limit?: number | undefined;
                            fieldConfig?: {
                                [x: string]: unknown;
                                label: string;
                            } | undefined;
                            mappedBy?: string | undefined;
                            inversedBy?: string | undefined;
                        } | undefined>) | ({
                            strict: () => s.ObjectSchema<{
                                readonly mappedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly connectionTable: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly connectionTableMappedName: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            }, s.Merge<s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }> & {
                                additionalProperties: false;
                            }>>;
                            properties: {
                                readonly mappedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly connectionTable: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly connectionTableMappedName: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            };
                            required: string[] | undefined;
                            partial: () => s.ObjectSchema<{
                                readonly mappedBy: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly connectionTable: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly connectionTableMappedName: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        } & s.Schema<s.ISchemaOptions, {
                            required?: boolean | undefined;
                            mappedBy?: string | undefined;
                            inversedBy?: string | undefined;
                            connectionTable?: string | undefined;
                            connectionTableMappedName?: string | undefined;
                        } | undefined, {
                            required?: boolean | undefined;
                            mappedBy?: string | undefined;
                            inversedBy?: string | undefined;
                            connectionTable?: string | undefined;
                            connectionTableMappedName?: string | undefined;
                        } | undefined>) | ({
                            strict: () => s.ObjectSchema<{
                                readonly mappedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly targetCardinality: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    multipleOf?: number | undefined;
                                    maximum?: number | undefined;
                                    exclusiveMaximum?: number | undefined;
                                    minimum?: number | undefined;
                                    exclusiveMinimum?: number | undefined;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                            }, s.Merge<s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }> & {
                                additionalProperties: false;
                            }>>;
                            properties: {
                                readonly mappedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly targetCardinality: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    multipleOf?: number | undefined;
                                    maximum?: number | undefined;
                                    exclusiveMaximum?: number | undefined;
                                    minimum?: number | undefined;
                                    exclusiveMinimum?: number | undefined;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                            };
                            required: string[] | undefined;
                            partial: () => s.ObjectSchema<{
                                readonly mappedBy: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly targetCardinality: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        } & s.Schema<s.ISchemaOptions, {
                            required?: boolean | undefined;
                            mappedBy?: string | undefined;
                            inversedBy?: string | undefined;
                            targetCardinality?: number | undefined;
                        } | undefined, {
                            required?: boolean | undefined;
                            mappedBy?: string | undefined;
                            inversedBy?: string | undefined;
                            targetCardinality?: number | undefined;
                        } | undefined>);
                    }, s.Merge<{
                        readonly title: string;
                    } & {
                        additionalProperties: false;
                    }>>[];
                }>;
            } & s.Schema<s.ISchemaOptions, {
                [x: string]: {
                    config?: {
                        required?: boolean | undefined;
                        sourceCardinality?: number | undefined;
                        with_limit?: number | undefined;
                        fieldConfig?: {
                            [x: string]: unknown;
                            label: string;
                        } | undefined;
                        mappedBy?: string | undefined;
                        inversedBy?: string | undefined;
                    } | {
                        required?: boolean | undefined;
                        mappedBy?: string | undefined;
                        inversedBy?: string | undefined;
                        connectionTable?: string | undefined;
                        connectionTableMappedName?: string | undefined;
                    } | {
                        required?: boolean | undefined;
                        mappedBy?: string | undefined;
                        inversedBy?: string | undefined;
                        targetCardinality?: number | undefined;
                    } | undefined;
                    type: string;
                    target: string;
                    source: string;
                };
            } | undefined, {
                [x: string]: never;
            } | undefined>;
            readonly indices: {
                additionalProperties: s.ObjectSchema<{
                    readonly entity: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                    readonly fields: s.ArraySchema<s.StringSchema<s.IStringOptions> & s.IStringOptions, {
                        readonly minItems: 1;
                    }> & {
                        readonly minItems: 1;
                    };
                    readonly unique: {
                        readonly default: false;
                    } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                }, s.Merge<s.IObjectOptions & {
                    additionalProperties: false;
                }>>;
            } & s.Schema<s.ISchemaOptions, {
                [x: string]: {
                    unique?: boolean | undefined;
                    fields: string[];
                    entity: string;
                };
            } | undefined, {
                [x: string]: {
                    unique?: boolean | undefined;
                    fields: string[];
                    entity: string;
                };
            } | undefined>;
        }, s.Merge<s.IObjectOptions & {
            additionalProperties: false;
        }>> | s.ObjectSchema<{
            readonly enabled: s.Schema<{
                readonly default: false;
            }, boolean, boolean> & {
                readonly default: false;
            };
            readonly basepath: s.StringSchema<{
                readonly default: "/api/media";
            }> & {
                readonly default: "/api/media";
            };
            readonly entity_name: s.StringSchema<{
                readonly default: "media";
            }> & {
                readonly default: "media";
            };
            readonly storage: s.ObjectSchema<{
                readonly body_max_size: {} & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
            }, s.Merge<{
                readonly default: {};
            } & {
                additionalProperties: false;
            }>>;
            readonly adapter: {
                default?: any;
                enum?: (readonly any[] | any[]) | undefined;
                const?: any;
                anyOf: s.ObjectSchema<{
                    readonly type: s.Schema<s.ILiteralOptions, string, string> & s.Merge<s.ILiteralOptions & {
                        const: string;
                    }>;
                    readonly config: s.Schema<s.ISchemaOptions, unknown, unknown>;
                }, s.Merge<{
                    readonly title: string;
                    readonly description: string | undefined;
                } & {
                    additionalProperties: false;
                }>>[];
            } & s.Schema<s.ISchemaOptions, {
                config?: unknown;
                type: string;
            } | undefined, never>;
        }, s.Merge<{
            readonly default: {};
        } & {
            additionalProperties: false;
        }>> | s.ObjectSchema<{
            readonly basepath: s.StringSchema<{
                readonly default: "/api/flows";
            }> & {
                readonly default: "/api/flows";
            };
            readonly flows: s.RecordSchema<s.ObjectSchema<{
                readonly trigger: s.Schema<s.IUnionOptions, {
                    config?: {
                        mode: "sync" | "async";
                    } | {
                        event: string;
                        mode: "sync" | "async";
                    } | {
                        path: string;
                        mode: "sync" | "async";
                        method: "GET" | "POST" | "PATCH" | "PUT" | "DELETE";
                        response_type: "html" | "json" | "text";
                    } | undefined;
                    type: "manual" | "event" | "http";
                }, never> & s.Merge<s.IUnionOptions & {
                    anyOf: s.ObjectSchema<{
                        readonly type: s.Schema<s.ILiteralOptions, "manual" | "event" | "http", "manual" | "event" | "http"> & s.Merge<s.ILiteralOptions & {
                            const: "manual" | "event" | "http";
                        }>;
                        readonly config: ({
                            strict: () => s.ObjectSchema<{
                                readonly mode: s.StringSchema<{
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                }> & {
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                };
                            }, s.Merge<s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }> & {
                                additionalProperties: false;
                            }>>;
                            properties: {
                                readonly mode: s.StringSchema<{
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                }> & {
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                };
                            };
                            required: string[] | undefined;
                            partial: () => s.ObjectSchema<{
                                readonly mode: s.Schema<s.ISchemaOptions, "sync" | "async" | undefined, "sync" | "async" | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        } & s.Schema<s.ISchemaOptions, {
                            mode: "sync" | "async";
                        } | undefined, {
                            mode: "sync" | "async";
                        } | undefined>) | ({
                            strict: () => s.ObjectSchema<{
                                readonly mode: s.StringSchema<{
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                }> & {
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                };
                                readonly event: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            }, s.Merge<s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }> & {
                                additionalProperties: false;
                            }>>;
                            properties: {
                                readonly mode: s.StringSchema<{
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                }> & {
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                };
                                readonly event: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            };
                            required: string[] | undefined;
                            partial: () => s.ObjectSchema<{
                                readonly mode: s.Schema<s.ISchemaOptions, "sync" | "async" | undefined, "sync" | "async" | undefined>;
                                readonly event: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        } & s.Schema<s.ISchemaOptions, {
                            event: string;
                            mode: "sync" | "async";
                        } | undefined, {
                            event: string;
                            mode: "sync" | "async";
                        } | undefined>) | ({
                            strict: () => s.ObjectSchema<{
                                readonly mode: s.StringSchema<{
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                }> & {
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                };
                                readonly path: s.StringSchema<{
                                    readonly pattern: "^/.*$";
                                }> & {
                                    readonly pattern: "^/.*$";
                                };
                                readonly method: s.StringSchema<{
                                    readonly enum: readonly ["GET", "POST", "PUT", "PATCH", "DELETE"];
                                    readonly default: "GET";
                                }> & {
                                    readonly enum: readonly ["GET", "POST", "PUT", "PATCH", "DELETE"];
                                    readonly default: "GET";
                                };
                                readonly response_type: s.StringSchema<{
                                    readonly enum: readonly ["json", "text", "html"];
                                    readonly default: "json";
                                }> & {
                                    readonly enum: readonly ["json", "text", "html"];
                                    readonly default: "json";
                                };
                            }, s.Merge<s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }> & {
                                additionalProperties: false;
                            }>>;
                            properties: {
                                readonly mode: s.StringSchema<{
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                }> & {
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                };
                                readonly path: s.StringSchema<{
                                    readonly pattern: "^/.*$";
                                }> & {
                                    readonly pattern: "^/.*$";
                                };
                                readonly method: s.StringSchema<{
                                    readonly enum: readonly ["GET", "POST", "PUT", "PATCH", "DELETE"];
                                    readonly default: "GET";
                                }> & {
                                    readonly enum: readonly ["GET", "POST", "PUT", "PATCH", "DELETE"];
                                    readonly default: "GET";
                                };
                                readonly response_type: s.StringSchema<{
                                    readonly enum: readonly ["json", "text", "html"];
                                    readonly default: "json";
                                }> & {
                                    readonly enum: readonly ["json", "text", "html"];
                                    readonly default: "json";
                                };
                            };
                            required: string[] | undefined;
                            partial: () => s.ObjectSchema<{
                                readonly mode: s.Schema<s.ISchemaOptions, "sync" | "async" | undefined, "sync" | "async" | undefined>;
                                readonly path: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly method: s.Schema<s.ISchemaOptions, "GET" | "POST" | "PATCH" | "PUT" | "DELETE" | undefined, "GET" | "POST" | "PATCH" | "PUT" | "DELETE" | undefined>;
                                readonly response_type: s.Schema<s.ISchemaOptions, "html" | "json" | "text" | undefined, "html" | "json" | "text" | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        } & s.Schema<s.ISchemaOptions, {
                            path: string;
                            mode: "sync" | "async";
                            method: "GET" | "POST" | "PATCH" | "PUT" | "DELETE";
                            response_type: "html" | "json" | "text";
                        } | undefined, {
                            path: string;
                            mode: "sync" | "async";
                            method: "GET" | "POST" | "PATCH" | "PUT" | "DELETE";
                            response_type: "html" | "json" | "text";
                        } | undefined>);
                    }, s.Merge<{
                        readonly title: string;
                    } & {
                        additionalProperties: false;
                    }>>[];
                }>;
                readonly tasks: {
                    additionalProperties: s.Schema<s.IUnionOptions, {
                        type: "log" | "fetch" | "render" | "subflow";
                        params: {
                            method?: string | undefined;
                            headers?: {
                                key: string;
                                value: string;
                            }[] | undefined;
                            body?: string | undefined;
                            normal?: number | undefined;
                            url: string;
                        } | {
                            delay: number;
                        } | {
                            render: string;
                        } | {
                            flow?: any;
                            input?: any;
                            loop?: boolean | undefined;
                        };
                    }, never> & s.Merge<s.IUnionOptions & {
                        anyOf: s.ObjectSchema<{
                            readonly type: s.Schema<s.ILiteralOptions, "log" | "fetch" | "render" | "subflow", "log" | "fetch" | "render" | "subflow"> & s.Merge<s.ILiteralOptions & {
                                const: "log" | "fetch" | "render" | "subflow";
                            }>;
                            readonly params: s.ObjectSchema<{
                                readonly url: s.StringSchema<{
                                    readonly pattern: "^(http|https)://";
                                }> & {
                                    readonly pattern: "^(http|https)://";
                                };
                                readonly method: {
                                    readonly default: "GET";
                                    readonly enum: string[];
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly headers: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    $defs?: Record<string, s.Schema> | undefined;
                                    contains?: s.Schema | undefined;
                                    minContains?: number | undefined;
                                    maxContains?: number | undefined;
                                    prefixItems?: s.Schema[] | undefined;
                                    uniqueItems?: boolean | undefined;
                                    maxItems?: number | undefined;
                                    minItems?: number | undefined;
                                    readonly items?: s.ObjectSchema<{
                                        readonly key: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                        readonly value: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    }, s.Merge<s.IObjectOptions & {
                                        additionalProperties: false;
                                    }>> | undefined;
                                } & s.Schema<s.ISchemaOptions, {
                                    key: string;
                                    value: string;
                                }[] | undefined, {
                                    key: string;
                                    value: string;
                                }[] | undefined>;
                                readonly body: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly normal: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    multipleOf?: number | undefined;
                                    maximum?: number | undefined;
                                    exclusiveMaximum?: number | undefined;
                                    minimum?: number | undefined;
                                    exclusiveMinimum?: number | undefined;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>> | s.ObjectSchema<{
                                readonly delay: s.Schema<{
                                    readonly default: 10;
                                }, number, number> & {
                                    readonly default: 10;
                                };
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>> | s.ObjectSchema<{
                                readonly render: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>> | s.ObjectSchema<{
                                readonly flow: s.Schema<s.IAnyOptions, any, any> & s.IAnyOptions;
                                readonly input: {
                                    [x: string]: any;
                                    [x: number]: any;
                                } & s.Schema<s.ISchemaOptions, any, any>;
                                readonly loop: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        }, s.Merge<{
                            readonly title: string;
                        } & {
                            additionalProperties: false;
                        }>>[];
                    }>;
                } & s.Schema<s.ISchemaOptions, {
                    [x: string]: {
                        type: "log" | "fetch" | "render" | "subflow";
                        params: {
                            method?: string | undefined;
                            headers?: {
                                key: string;
                                value: string;
                            }[] | undefined;
                            body?: string | undefined;
                            normal?: number | undefined;
                            url: string;
                        } | {
                            delay: number;
                        } | {
                            render: string;
                        } | {
                            flow?: any;
                            input?: any;
                            loop?: boolean | undefined;
                        };
                    };
                } | undefined, {
                    [x: string]: never;
                } | undefined>;
                readonly connections: {
                    additionalProperties: s.ObjectSchema<{
                        readonly source: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                        readonly target: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                        readonly config: s.ObjectSchema<{
                            readonly condition: s.Schema<s.ISchemaOptions, {
                                type: "success";
                            } | {
                                type: "error";
                            } | {
                                path: string;
                                value: string;
                                type: "matches";
                            } | undefined, {
                                type: "error";
                            } | {
                                path: string;
                                value: string;
                                type: "matches";
                            } | {
                                type: "success";
                            } | undefined>;
                            readonly max_retries: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                        }, s.Merge<s.IObjectOptions & {
                            additionalProperties: false;
                        }>>;
                    }, s.Merge<s.IObjectOptions & {
                        additionalProperties: false;
                    }>>;
                } & s.Schema<s.ISchemaOptions, {
                    [x: string]: {
                        config: {
                            condition?: {
                                type: "success";
                            } | {
                                type: "error";
                            } | {
                                path: string;
                                value: string;
                                type: "matches";
                            } | undefined;
                            max_retries?: number | undefined;
                        };
                        target: string;
                        source: string;
                    };
                } | undefined, {
                    [x: string]: {
                        config: {
                            condition?: {
                                type: "error";
                            } | {
                                path: string;
                                value: string;
                                type: "matches";
                            } | {
                                type: "success";
                            } | undefined;
                            max_retries?: number | undefined;
                        };
                        target: string;
                        source: string;
                    };
                } | undefined>;
                readonly start_task: {
                    default?: any;
                    maxLength?: number | undefined;
                    minLength?: number | undefined;
                    pattern?: (string | RegExp) | undefined;
                    format?: string | undefined;
                    enum?: (readonly any[] | any[]) | undefined;
                    const?: any;
                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                readonly responding_task: {
                    default?: any;
                    maxLength?: number | undefined;
                    minLength?: number | undefined;
                    pattern?: (string | RegExp) | undefined;
                    format?: string | undefined;
                    enum?: (readonly any[] | any[]) | undefined;
                    const?: any;
                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
            }, s.Merge<s.IObjectOptions & {
                additionalProperties: false;
            }>>, {
                readonly default: {};
            }>;
        }, s.Merge<s.IObjectOptions & {
            additionalProperties: false;
        }>>;
        auth: s.ObjectSchema<{
            readonly enabled: s.Schema<{
                readonly default: false;
            }, boolean, boolean> & {
                readonly default: false;
            };
            readonly basepath: s.StringSchema<{
                readonly default: "/api/auth";
            }> & {
                readonly default: "/api/auth";
            };
            readonly entity_name: s.StringSchema<{
                readonly default: "users";
            }> & {
                readonly default: "users";
            };
            readonly allow_register: {
                readonly default: true;
            } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
            readonly jwt: s.ObjectSchema<{
                readonly secret: import("bknd/utils").SecretSchema<{
                    default: string;
                }> & {
                    default: string;
                };
                readonly alg: {
                    readonly default: "HS256";
                    readonly enum: ["HS256", "HS384", "HS512"];
                } & s.Schema<s.ISchemaOptions, "HS256" | "HS384" | "HS512" | undefined, "HS256" | "HS384" | "HS512" | undefined>;
                readonly expires: {
                    default?: any;
                    enum?: (readonly any[] | any[]) | undefined;
                    const?: any;
                    multipleOf?: number | undefined;
                    maximum?: number | undefined;
                    exclusiveMaximum?: number | undefined;
                    minimum?: number | undefined;
                    exclusiveMinimum?: number | undefined;
                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                readonly issuer: {
                    default?: any;
                    maxLength?: number | undefined;
                    minLength?: number | undefined;
                    pattern?: (string | RegExp) | undefined;
                    format?: string | undefined;
                    enum?: (readonly any[] | any[]) | undefined;
                    const?: any;
                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                readonly fields: s.ArraySchema<s.StringSchema<s.IStringOptions> & s.IStringOptions, {
                    readonly default: readonly ["id", "email", "role"];
                }> & {
                    readonly default: readonly ["id", "email", "role"];
                };
            }, s.Merge<{
                readonly default: {};
            } & {
                additionalProperties: false;
            }>>;
            readonly cookie: s.ObjectSchema<{
                readonly path: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                readonly sameSite: s.Schema<s.ISchemaOptions, "strict" | "lax" | "none" | undefined, "strict" | "lax" | "none" | undefined>;
                readonly secure: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                readonly httpOnly: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                readonly expires: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                readonly partitioned: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                readonly renew: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                readonly pathSuccess: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                readonly pathLoggedOut: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
            }, s.Merge<s.IObjectOptions & {
                additionalProperties: false;
            }>>;
            readonly strategies: s.RecordSchema<s.Schema<s.IUnionOptions, {
                enabled?: boolean | undefined;
                type: "password" | "oauth" | "custom_oauth";
                config: {
                    rounds?: number | undefined;
                    hashing: "plain" | "sha256" | "bcrypt";
                } | {
                    [x: string]: unknown;
                    name: "google" | "github";
                    type: "oidc" | "oauth2";
                    client: {
                        client_id: string;
                        client_secret: string;
                    };
                } | {
                    name: string;
                    type: "oidc" | "oauth2";
                    client: {
                        [x: string]: unknown;
                        client_id: string;
                        client_secret: string;
                        token_endpoint_auth_method: "client_secret_basic";
                    };
                    as: {
                        code_challenge_methods_supported?: "S256" | undefined;
                        scopes_supported?: string[] | undefined;
                        scope_separator?: string | undefined;
                        authorization_endpoint?: string | undefined;
                        token_endpoint?: string | undefined;
                        userinfo_endpoint?: string | undefined;
                        issuer: string;
                    };
                };
            }, never> & s.Merge<s.IUnionOptions & {
                anyOf: s.ObjectSchema<{
                    readonly enabled: {
                        readonly default: true;
                    } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                    readonly type: s.Schema<s.ILiteralOptions, "password" | "oauth" | "custom_oauth", "password" | "oauth" | "custom_oauth"> & s.Merge<s.ILiteralOptions & {
                        const: "password" | "oauth" | "custom_oauth";
                    }>;
                    readonly config: s.ObjectSchema<{
                        readonly hashing: s.StringSchema<{
                            readonly enum: readonly ["plain", "sha256", "bcrypt"];
                            readonly default: "sha256";
                        }> & {
                            readonly enum: readonly ["plain", "sha256", "bcrypt"];
                            readonly default: "sha256";
                        };
                        readonly rounds: {
                            readonly maximum: 10;
                            readonly minimum: 1;
                        } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                    }, s.Merge<s.IObjectOptions & {
                        additionalProperties: false;
                    }>> | (s.ObjectSchema<{
                        readonly name: s.StringSchema<{
                            readonly enum: ("google" | "github")[];
                        }> & {
                            readonly enum: ("google" | "github")[];
                        };
                        readonly type: s.StringSchema<{
                            readonly enum: readonly ["oidc", "oauth2"];
                            readonly default: "oauth2";
                        }> & {
                            readonly enum: readonly ["oidc", "oauth2"];
                            readonly default: "oauth2";
                        };
                        readonly client: s.ObjectSchema<{
                            readonly client_id: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            readonly client_secret: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                        }, s.Merge<s.IObjectOptions & {
                            additionalProperties: false;
                        }>>;
                    }, {
                        readonly title: "OAuth";
                    }> & {
                        readonly title: "OAuth";
                    }) | s.ObjectSchema<{
                        readonly type: s.StringSchema<{
                            readonly enum: readonly ["oidc", "oauth2"];
                            readonly default: "oidc";
                        }> & {
                            readonly enum: readonly ["oidc", "oauth2"];
                            readonly default: "oidc";
                        };
                        readonly name: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                        readonly client: s.ObjectSchema<{
                            readonly client_id: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            readonly client_secret: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            readonly token_endpoint_auth_method: s.StringSchema<{
                                readonly enum: readonly ["client_secret_basic"];
                            }> & {
                                readonly enum: readonly ["client_secret_basic"];
                            };
                        }, s.IObjectOptions> & s.IObjectOptions;
                        readonly as: s.ObjectSchema<{
                            readonly issuer: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            readonly code_challenge_methods_supported: {
                                readonly enum: ["S256"];
                            } & s.Schema<s.ISchemaOptions, "S256" | undefined, "S256" | undefined>;
                            readonly scopes_supported: {
                                default?: any;
                                enum?: (readonly any[] | any[]) | undefined;
                                const?: any;
                                $defs?: Record<string, s.Schema> | undefined;
                                contains?: s.Schema | undefined;
                                minContains?: number | undefined;
                                maxContains?: number | undefined;
                                prefixItems?: s.Schema[] | undefined;
                                uniqueItems?: boolean | undefined;
                                maxItems?: number | undefined;
                                minItems?: number | undefined;
                                readonly items?: (s.StringSchema<s.IStringOptions> & s.IStringOptions) | undefined;
                            } & s.Schema<s.ISchemaOptions, string[] | undefined, string[] | undefined>;
                            readonly scope_separator: {
                                readonly default: " ";
                            } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            readonly authorization_endpoint: {
                                readonly pattern: "^(https?|wss?)://[^\\s/$.?#].[^\\s]*$";
                            } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            readonly token_endpoint: {
                                readonly pattern: "^(https?|wss?)://[^\\s/$.?#].[^\\s]*$";
                            } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            readonly userinfo_endpoint: {
                                readonly pattern: "^(https?|wss?)://[^\\s/$.?#].[^\\s]*$";
                            } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                        }, s.Merge<s.IObjectOptions & {
                            additionalProperties: false;
                        }>>;
                    }, s.Merge<{
                        readonly title: "Custom OAuth";
                    } & {
                        additionalProperties: false;
                    }>>;
                }, s.Merge<{
                    readonly title: "password" | "oauth" | "custom_oauth";
                } & {
                    additionalProperties: false;
                }>>[];
            }>, {
                readonly title: "Strategies";
                readonly default: {
                    readonly password: {
                        readonly type: "password";
                        readonly enabled: true;
                        readonly config: {
                            readonly hashing: "sha256";
                        };
                    };
                };
            }>;
            readonly guard: {
                default?: any;
                enum?: (readonly any[] | any[]) | undefined;
                const?: any;
                $defs?: Record<string, s.Schema> | undefined;
                patternProperties?: Record<string, s.Schema> | undefined;
                additionalProperties?: (s.Schema | false) | undefined;
                minProperties?: number | undefined;
                maxProperties?: number | undefined;
                propertyNames?: s.Schema | undefined;
                strict: () => s.ObjectSchema<{
                    readonly enabled: {
                        readonly default: false;
                    } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                }, s.Merge<s.IObjectOptions & {
                    additionalProperties: false;
                }>>;
                properties: {
                    readonly enabled: {
                        readonly default: false;
                    } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                };
                required: string[] | undefined;
                partial: () => s.ObjectSchema<{
                    readonly enabled: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                }, s.IObjectOptions>;
            } & s.Schema<s.ISchemaOptions, {
                [x: string]: unknown;
                enabled?: boolean | undefined;
            } | undefined, {
                [x: string]: unknown;
                enabled?: boolean | undefined;
            } | undefined>;
            readonly roles: {
                additionalProperties: s.ObjectSchema<{
                    readonly permissions: {
                        default?: any;
                        enum?: (readonly any[] | any[]) | undefined;
                        const?: any;
                        $defs?: Record<string, s.Schema> | undefined;
                        contains?: s.Schema | undefined;
                        minContains?: number | undefined;
                        maxContains?: number | undefined;
                        prefixItems?: s.Schema[] | undefined;
                        uniqueItems?: boolean | undefined;
                        maxItems?: number | undefined;
                        minItems?: number | undefined;
                        readonly items?: (s.StringSchema<s.IStringOptions> & s.IStringOptions) | undefined;
                    } & s.Schema<s.ISchemaOptions, string[] | undefined, string[] | undefined>;
                    readonly is_default: {
                        default?: any;
                        enum?: (readonly any[] | any[]) | undefined;
                        const?: any;
                    } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                    readonly implicit_allow: {
                        default?: any;
                        enum?: (readonly any[] | any[]) | undefined;
                        const?: any;
                    } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                }, s.Merge<s.IObjectOptions & {
                    additionalProperties: false;
                }>>;
            } & s.Schema<s.ISchemaOptions, {
                [x: string]: {
                    permissions?: string[] | undefined;
                    is_default?: boolean | undefined;
                    implicit_allow?: boolean | undefined;
                };
            } | undefined, {
                [x: string]: {
                    permissions?: string[] | undefined;
                    is_default?: boolean | undefined;
                    implicit_allow?: boolean | undefined;
                };
            } | undefined>;
        }, s.Merge<{
            readonly title: "Authentication";
        } & {
            additionalProperties: false;
        }>> | s.ObjectSchema<{
            readonly cors: s.ObjectSchema<{
                readonly origin: s.StringSchema<{
                    readonly default: "*";
                }> & {
                    readonly default: "*";
                };
                readonly allow_methods: s.ArraySchema<s.StringSchema<{
                    readonly enum: readonly ["GET", "POST", "PATCH", "PUT", "DELETE"];
                }> & {
                    readonly enum: readonly ["GET", "POST", "PATCH", "PUT", "DELETE"];
                }, {
                    readonly default: readonly ["GET", "POST", "PATCH", "PUT", "DELETE"];
                    readonly uniqueItems: true;
                }> & {
                    readonly default: readonly ["GET", "POST", "PATCH", "PUT", "DELETE"];
                    readonly uniqueItems: true;
                };
                readonly allow_headers: s.ArraySchema<s.StringSchema<s.IStringOptions> & s.IStringOptions, {
                    readonly default: readonly ["Content-Type", "Content-Length", "Authorization", "Accept"];
                }> & {
                    readonly default: readonly ["Content-Type", "Content-Length", "Authorization", "Accept"];
                };
                readonly allow_credentials: s.Schema<{
                    readonly default: true;
                }, boolean, boolean> & {
                    readonly default: true;
                };
            }, s.Merge<s.IObjectOptions & {
                additionalProperties: false;
            }>>;
        }, s.Merge<s.IObjectOptions & {
            additionalProperties: false;
        }>> | s.ObjectSchema<{
            readonly basepath: {
                readonly default: "/api/data";
            } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
            readonly default_primary_format: {
                readonly default: "integer";
                readonly enum: readonly ["integer", "uuid"];
            } & s.Schema<s.ISchemaOptions, "integer" | "uuid" | undefined, "integer" | "uuid" | undefined>;
            readonly entities: {
                additionalProperties: s.ObjectSchema<{
                    readonly name: {
                        default?: any;
                        maxLength?: number | undefined;
                        minLength?: number | undefined;
                        pattern?: (string | RegExp) | undefined;
                        format?: string | undefined;
                        enum?: (readonly any[] | any[]) | undefined;
                        const?: any;
                    } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                    readonly type: s.StringSchema<{
                        readonly enum: readonly ["regular", "system", "generated"];
                        readonly default: "regular";
                    }> & {
                        readonly enum: readonly ["regular", "system", "generated"];
                        readonly default: "regular";
                    };
                    readonly config: s.ObjectSchema<{
                        readonly name: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                        readonly name_singular: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                        readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                        readonly sort_field: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                        readonly sort_dir: s.Schema<s.ISchemaOptions, "asc" | "desc" | undefined, "asc" | "desc" | undefined>;
                        readonly primary_format: s.Schema<s.ISchemaOptions, "integer" | "uuid" | undefined, "integer" | "uuid" | undefined>;
                    }, s.Merge<s.IObjectOptions & {
                        additionalProperties: false;
                    }>>;
                    readonly fields: s.RecordSchema<s.Schema<s.IUnionOptions, {
                        name?: string | undefined;
                        config?: {
                            description?: string | undefined;
                            maxLength?: number | undefined;
                            minLength?: number | undefined;
                            pattern?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: string | undefined;
                            html_config?: {
                                [x: string]: unknown;
                                element?: string | undefined;
                                props?: {
                                    [x: string]: string | number;
                                } | undefined;
                            } | undefined;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                        } | {
                            description?: string | undefined;
                            format?: "integer" | "uuid" | undefined;
                            required?: boolean | undefined;
                            default_value?: any;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                        } | {
                            description?: string | undefined;
                            multipleOf?: number | undefined;
                            maximum?: number | undefined;
                            exclusiveMaximum?: number | undefined;
                            minimum?: number | undefined;
                            exclusiveMinimum?: number | undefined;
                            required?: boolean | undefined;
                            default_value?: number | undefined;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                        } | {
                            description?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: boolean | undefined;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                        } | {
                            description?: string | undefined;
                            type?: "date" | "week" | "datetime" | undefined;
                            required?: boolean | undefined;
                            default_value?: any;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                            timezone?: string | undefined;
                            min_date?: string | undefined;
                            max_date?: string | undefined;
                        } | {
                            description?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: string | undefined;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                            options?: {
                                [x: string]: unknown;
                                values: string[];
                                type: "strings";
                            } | {
                                [x: string]: unknown;
                                values: {
                                    [x: string]: unknown;
                                    value: string;
                                    label: string;
                                }[];
                                type: "objects";
                            } | undefined;
                        } | {
                            description?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: any;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                        } | {
                            description?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: any;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                            schema?: any;
                            ui_schema?: any;
                            default_from_schema?: boolean | undefined;
                        } | {
                            description?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: any;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                            target_field?: string | undefined;
                            target_field_type?: "text" | "integer" | undefined;
                            on_delete?: "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined;
                            reference: string;
                            target: string;
                        } | {
                            description?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: any;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                            entity?: string | undefined;
                            min_items?: number | undefined;
                            max_items?: number | undefined;
                            mime_types?: string[] | undefined;
                        } | undefined;
                        type: "number" | "boolean" | "json" | "text" | "enum" | "date" | "media" | "relation" | "primary" | "jsonschema";
                    }, never> & s.Merge<s.IUnionOptions & {
                        anyOf: s.ObjectSchema<{
                            readonly name: {
                                default?: any;
                                maxLength?: number | undefined;
                                minLength?: number | undefined;
                                pattern?: (string | RegExp) | undefined;
                                format?: string | undefined;
                                enum?: (readonly any[] | any[]) | undefined;
                                const?: any;
                            } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            readonly type: s.Schema<s.ILiteralOptions, "number" | "boolean" | "json" | "text" | "enum" | "date" | "media" | "relation" | "primary" | "jsonschema", "number" | "boolean" | "json" | "text" | "enum" | "date" | "media" | "relation" | "primary" | "jsonschema"> & s.Merge<s.ILiteralOptions & {
                                const: "number" | "boolean" | "json" | "text" | "enum" | "date" | "media" | "relation" | "primary" | "jsonschema";
                            }>;
                            readonly config: ({
                                strict: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly minLength: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly maxLength: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly pattern: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly html_config: s.Schema<s.ISchemaOptions, {
                                        [x: string]: unknown;
                                        element?: string | undefined;
                                        props?: {
                                            [x: string]: string | number;
                                        } | undefined;
                                    } | undefined, {
                                        [x: string]: unknown;
                                        element?: string | undefined;
                                        props?: {
                                            [x: string]: string | number;
                                        } | undefined;
                                    } | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly minLength: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly maxLength: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly pattern: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly html_config: s.Schema<s.ISchemaOptions, {
                                        [x: string]: unknown;
                                        element?: string | undefined;
                                        props?: {
                                            [x: string]: string | number;
                                        } | undefined;
                                    } | undefined, {
                                        [x: string]: unknown;
                                        element?: string | undefined;
                                        props?: {
                                            [x: string]: string | number;
                                        } | undefined;
                                    } | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly minLength: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly maxLength: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly pattern: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly html_config: s.Schema<s.ISchemaOptions, {
                                        [x: string]: unknown;
                                        element?: string | undefined;
                                        props?: {
                                            [x: string]: string | number;
                                        } | undefined;
                                    } | undefined, {
                                        [x: string]: unknown;
                                        element?: string | undefined;
                                        props?: {
                                            [x: string]: string | number;
                                        } | undefined;
                                    } | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                maxLength?: number | undefined;
                                minLength?: number | undefined;
                                pattern?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: string | undefined;
                                html_config?: {
                                    [x: string]: unknown;
                                    element?: string | undefined;
                                    props?: {
                                        [x: string]: string | number;
                                    } | undefined;
                                } | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                maxLength?: number | undefined;
                                minLength?: number | undefined;
                                pattern?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: string | undefined;
                                html_config?: {
                                    [x: string]: unknown;
                                    element?: string | undefined;
                                    props?: {
                                        [x: string]: string | number;
                                    } | undefined;
                                } | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly format: s.Schema<s.ISchemaOptions, "integer" | "uuid" | undefined, "integer" | "uuid" | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly format: s.Schema<s.ISchemaOptions, "integer" | "uuid" | undefined, "integer" | "uuid" | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly format: s.Schema<s.ISchemaOptions, "integer" | "uuid" | undefined, "integer" | "uuid" | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                format?: "integer" | "uuid" | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                format?: "integer" | "uuid" | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly minimum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly maximum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly exclusiveMinimum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly exclusiveMaximum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly multipleOf: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly minimum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly maximum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly exclusiveMinimum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly exclusiveMaximum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly multipleOf: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly minimum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly maximum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly exclusiveMinimum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly exclusiveMaximum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly multipleOf: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                multipleOf?: number | undefined;
                                maximum?: number | undefined;
                                exclusiveMaximum?: number | undefined;
                                minimum?: number | undefined;
                                exclusiveMinimum?: number | undefined;
                                required?: boolean | undefined;
                                default_value?: number | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                multipleOf?: number | undefined;
                                maximum?: number | undefined;
                                exclusiveMaximum?: number | undefined;
                                minimum?: number | undefined;
                                exclusiveMinimum?: number | undefined;
                                required?: boolean | undefined;
                                default_value?: number | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: boolean | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: boolean | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly type: s.Schema<s.ISchemaOptions, "date" | "week" | "datetime" | undefined, "date" | "week" | "datetime" | undefined>;
                                    readonly timezone: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly min_date: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly max_date: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly type: s.Schema<s.ISchemaOptions, "date" | "week" | "datetime" | undefined, "date" | "week" | "datetime" | undefined>;
                                    readonly timezone: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly min_date: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly max_date: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly type: s.Schema<s.ISchemaOptions, "date" | "week" | "datetime" | undefined, "date" | "week" | "datetime" | undefined>;
                                    readonly timezone: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly min_date: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly max_date: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                type?: "date" | "week" | "datetime" | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                timezone?: string | undefined;
                                min_date?: string | undefined;
                                max_date?: string | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                type?: "date" | "week" | "datetime" | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                timezone?: string | undefined;
                                min_date?: string | undefined;
                                max_date?: string | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly options: s.Schema<s.ISchemaOptions, {
                                        [x: string]: unknown;
                                        values: string[];
                                        type: "strings";
                                    } | {
                                        [x: string]: unknown;
                                        values: {
                                            [x: string]: unknown;
                                            value: string;
                                            label: string;
                                        }[];
                                        type: "objects";
                                    } | undefined, any>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly options: s.Schema<s.ISchemaOptions, {
                                        [x: string]: unknown;
                                        values: string[];
                                        type: "strings";
                                    } | {
                                        [x: string]: unknown;
                                        values: {
                                            [x: string]: unknown;
                                            value: string;
                                            label: string;
                                        }[];
                                        type: "objects";
                                    } | undefined, any>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly options: s.Schema<s.ISchemaOptions, {
                                        [x: string]: unknown;
                                        values: string[];
                                        type: "strings";
                                    } | {
                                        [x: string]: unknown;
                                        values: {
                                            [x: string]: unknown;
                                            value: string;
                                            label: string;
                                        }[];
                                        type: "objects";
                                    } | undefined, any>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: string | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                options?: {
                                    [x: string]: unknown;
                                    values: string[];
                                    type: "strings";
                                } | {
                                    [x: string]: unknown;
                                    values: {
                                        [x: string]: unknown;
                                        value: string;
                                        label: string;
                                    }[];
                                    type: "objects";
                                } | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: string | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                options?: any;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly schema: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly ui_schema: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly default_from_schema: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly schema: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly ui_schema: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly default_from_schema: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly schema: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly ui_schema: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly default_from_schema: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                schema?: any;
                                ui_schema?: any;
                                default_from_schema?: boolean | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                schema?: any;
                                ui_schema?: any;
                                default_from_schema?: boolean | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly reference: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    readonly target: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    readonly target_field: {
                                        readonly default: "id";
                                    } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly target_field_type: {
                                        readonly default: "integer";
                                        readonly enum: ["text", "integer"];
                                    } & s.Schema<s.ISchemaOptions, "text" | "integer" | undefined, "text" | "integer" | undefined>;
                                    readonly on_delete: {
                                        readonly default: "set null";
                                        readonly enum: readonly ["cascade", "set null", "set default", "restrict", "no action"];
                                    } & s.Schema<s.ISchemaOptions, "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined, "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly reference: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    readonly target: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    readonly target_field: {
                                        readonly default: "id";
                                    } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly target_field_type: {
                                        readonly default: "integer";
                                        readonly enum: ["text", "integer"];
                                    } & s.Schema<s.ISchemaOptions, "text" | "integer" | undefined, "text" | "integer" | undefined>;
                                    readonly on_delete: {
                                        readonly default: "set null";
                                        readonly enum: readonly ["cascade", "set null", "set default", "restrict", "no action"];
                                    } & s.Schema<s.ISchemaOptions, "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined, "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly reference: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly target: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly target_field: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly target_field_type: s.Schema<s.ISchemaOptions, "text" | "integer" | undefined, "text" | "integer" | undefined>;
                                    readonly on_delete: s.Schema<s.ISchemaOptions, "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined, "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                target_field?: string | undefined;
                                target_field_type?: "text" | "integer" | undefined;
                                on_delete?: "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined;
                                reference: string;
                                target: string;
                            } | undefined, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                target_field?: string | undefined;
                                target_field_type?: "text" | "integer" | undefined;
                                on_delete?: "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined;
                                reference: string;
                                target: string;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly entity: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly min_items: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly max_items: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly mime_types: s.Schema<s.ISchemaOptions, string[] | undefined, string[] | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly entity: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly min_items: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly max_items: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly mime_types: s.Schema<s.ISchemaOptions, string[] | undefined, string[] | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly entity: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly min_items: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly max_items: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly mime_types: s.Schema<s.ISchemaOptions, string[] | undefined, string[] | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                entity?: string | undefined;
                                min_items?: number | undefined;
                                max_items?: number | undefined;
                                mime_types?: string[] | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                entity?: string | undefined;
                                min_items?: number | undefined;
                                max_items?: number | undefined;
                                mime_types?: string[] | undefined;
                            } | undefined>);
                        }, s.Merge<{
                            readonly title: "number" | "boolean" | "json" | "text" | "enum" | "date" | "media" | "relation" | "primary" | "jsonschema";
                        } & {
                            additionalProperties: false;
                        }>>[];
                    }>, s.IRecordOptions>;
                }, s.Merge<s.IObjectOptions & {
                    additionalProperties: false;
                }>>;
            } & s.Schema<s.ISchemaOptions, {
                [x: string]: {
                    name?: string | undefined;
                    type: "regular" | "system" | "generated";
                    fields: {
                        [x: string]: {
                            name?: string | undefined;
                            config?: {
                                description?: string | undefined;
                                maxLength?: number | undefined;
                                minLength?: number | undefined;
                                pattern?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: string | undefined;
                                html_config?: {
                                    [x: string]: unknown;
                                    element?: string | undefined;
                                    props?: {
                                        [x: string]: string | number;
                                    } | undefined;
                                } | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | {
                                description?: string | undefined;
                                format?: "integer" | "uuid" | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | {
                                description?: string | undefined;
                                multipleOf?: number | undefined;
                                maximum?: number | undefined;
                                exclusiveMaximum?: number | undefined;
                                minimum?: number | undefined;
                                exclusiveMinimum?: number | undefined;
                                required?: boolean | undefined;
                                default_value?: number | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: boolean | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | {
                                description?: string | undefined;
                                type?: "date" | "week" | "datetime" | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                timezone?: string | undefined;
                                min_date?: string | undefined;
                                max_date?: string | undefined;
                            } | {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: string | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                options?: {
                                    [x: string]: unknown;
                                    values: string[];
                                    type: "strings";
                                } | {
                                    [x: string]: unknown;
                                    values: {
                                        [x: string]: unknown;
                                        value: string;
                                        label: string;
                                    }[];
                                    type: "objects";
                                } | undefined;
                            } | {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                schema?: any;
                                ui_schema?: any;
                                default_from_schema?: boolean | undefined;
                            } | {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                target_field?: string | undefined;
                                target_field_type?: "text" | "integer" | undefined;
                                on_delete?: "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined;
                                reference: string;
                                target: string;
                            } | {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                entity?: string | undefined;
                                min_items?: number | undefined;
                                max_items?: number | undefined;
                                mime_types?: string[] | undefined;
                            } | undefined;
                            type: "number" | "boolean" | "json" | "text" | "enum" | "date" | "media" | "relation" | "primary" | "jsonschema";
                        };
                    };
                    config: {
                        description?: string | undefined;
                        name?: string | undefined;
                        name_singular?: string | undefined;
                        sort_field?: string | undefined;
                        sort_dir?: "asc" | "desc" | undefined;
                        primary_format?: "integer" | "uuid" | undefined;
                    };
                };
            } | undefined, {
                [x: string]: {
                    name?: string | undefined;
                    type: "regular" | "system" | "generated";
                    fields: {
                        [x: string]: never;
                    };
                    config: {
                        description?: string | undefined;
                        name?: string | undefined;
                        name_singular?: string | undefined;
                        sort_field?: string | undefined;
                        sort_dir?: "asc" | "desc" | undefined;
                        primary_format?: "integer" | "uuid" | undefined;
                    };
                };
            } | undefined>;
            readonly relations: {
                additionalProperties: s.Schema<s.IUnionOptions, {
                    config?: {
                        required?: boolean | undefined;
                        sourceCardinality?: number | undefined;
                        with_limit?: number | undefined;
                        fieldConfig?: {
                            [x: string]: unknown;
                            label: string;
                        } | undefined;
                        mappedBy?: string | undefined;
                        inversedBy?: string | undefined;
                    } | {
                        required?: boolean | undefined;
                        mappedBy?: string | undefined;
                        inversedBy?: string | undefined;
                        connectionTable?: string | undefined;
                        connectionTableMappedName?: string | undefined;
                    } | {
                        required?: boolean | undefined;
                        mappedBy?: string | undefined;
                        inversedBy?: string | undefined;
                        targetCardinality?: number | undefined;
                    } | undefined;
                    type: string;
                    target: string;
                    source: string;
                }, never> & s.Merge<s.IUnionOptions & {
                    anyOf: s.ObjectSchema<{
                        readonly type: s.Schema<s.ILiteralOptions, string, string> & s.Merge<s.ILiteralOptions & {
                            const: string;
                        }>;
                        readonly source: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                        readonly target: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                        readonly config: ({
                            strict: () => s.ObjectSchema<{
                                readonly mappedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly sourceCardinality: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    multipleOf?: number | undefined;
                                    maximum?: number | undefined;
                                    exclusiveMaximum?: number | undefined;
                                    minimum?: number | undefined;
                                    exclusiveMinimum?: number | undefined;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                readonly with_limit: {
                                    readonly default: number;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                readonly fieldConfig: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    $defs?: Record<string, s.Schema> | undefined;
                                    patternProperties?: Record<string, s.Schema> | undefined;
                                    additionalProperties?: (s.Schema | false) | undefined;
                                    minProperties?: number | undefined;
                                    maxProperties?: number | undefined;
                                    propertyNames?: s.Schema | undefined;
                                    strict: () => s.ObjectSchema<{
                                        readonly label: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    }, s.Merge<s.IObjectOptions & {
                                        additionalProperties: false;
                                    }>>;
                                    properties: {
                                        readonly label: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    };
                                    required: string[] | undefined;
                                    partial: () => s.ObjectSchema<{
                                        readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    }, s.IObjectOptions>;
                                } & s.Schema<s.ISchemaOptions, {
                                    [x: string]: unknown;
                                    label: string;
                                } | undefined, {
                                    [x: string]: unknown;
                                    label: string;
                                } | undefined>;
                            }, s.Merge<s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }> & {
                                additionalProperties: false;
                            }>>;
                            properties: {
                                readonly mappedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly sourceCardinality: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    multipleOf?: number | undefined;
                                    maximum?: number | undefined;
                                    exclusiveMaximum?: number | undefined;
                                    minimum?: number | undefined;
                                    exclusiveMinimum?: number | undefined;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                readonly with_limit: {
                                    readonly default: number;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                readonly fieldConfig: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    $defs?: Record<string, s.Schema> | undefined;
                                    patternProperties?: Record<string, s.Schema> | undefined;
                                    additionalProperties?: (s.Schema | false) | undefined;
                                    minProperties?: number | undefined;
                                    maxProperties?: number | undefined;
                                    propertyNames?: s.Schema | undefined;
                                    strict: () => s.ObjectSchema<{
                                        readonly label: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    }, s.Merge<s.IObjectOptions & {
                                        additionalProperties: false;
                                    }>>;
                                    properties: {
                                        readonly label: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    };
                                    required: string[] | undefined;
                                    partial: () => s.ObjectSchema<{
                                        readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    }, s.IObjectOptions>;
                                } & s.Schema<s.ISchemaOptions, {
                                    [x: string]: unknown;
                                    label: string;
                                } | undefined, {
                                    [x: string]: unknown;
                                    label: string;
                                } | undefined>;
                            };
                            required: string[] | undefined;
                            partial: () => s.ObjectSchema<{
                                readonly mappedBy: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly sourceCardinality: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                readonly with_limit: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                readonly fieldConfig: s.Schema<s.ISchemaOptions, {
                                    [x: string]: unknown;
                                    label: string;
                                } | undefined, {
                                    [x: string]: unknown;
                                    label: string;
                                } | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        } & s.Schema<s.ISchemaOptions, {
                            required?: boolean | undefined;
                            sourceCardinality?: number | undefined;
                            with_limit?: number | undefined;
                            fieldConfig?: {
                                [x: string]: unknown;
                                label: string;
                            } | undefined;
                            mappedBy?: string | undefined;
                            inversedBy?: string | undefined;
                        } | undefined, {
                            required?: boolean | undefined;
                            sourceCardinality?: number | undefined;
                            with_limit?: number | undefined;
                            fieldConfig?: {
                                [x: string]: unknown;
                                label: string;
                            } | undefined;
                            mappedBy?: string | undefined;
                            inversedBy?: string | undefined;
                        } | undefined>) | ({
                            strict: () => s.ObjectSchema<{
                                readonly mappedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly connectionTable: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly connectionTableMappedName: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            }, s.Merge<s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }> & {
                                additionalProperties: false;
                            }>>;
                            properties: {
                                readonly mappedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly connectionTable: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly connectionTableMappedName: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            };
                            required: string[] | undefined;
                            partial: () => s.ObjectSchema<{
                                readonly mappedBy: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly connectionTable: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly connectionTableMappedName: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        } & s.Schema<s.ISchemaOptions, {
                            required?: boolean | undefined;
                            mappedBy?: string | undefined;
                            inversedBy?: string | undefined;
                            connectionTable?: string | undefined;
                            connectionTableMappedName?: string | undefined;
                        } | undefined, {
                            required?: boolean | undefined;
                            mappedBy?: string | undefined;
                            inversedBy?: string | undefined;
                            connectionTable?: string | undefined;
                            connectionTableMappedName?: string | undefined;
                        } | undefined>) | ({
                            strict: () => s.ObjectSchema<{
                                readonly mappedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly targetCardinality: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    multipleOf?: number | undefined;
                                    maximum?: number | undefined;
                                    exclusiveMaximum?: number | undefined;
                                    minimum?: number | undefined;
                                    exclusiveMinimum?: number | undefined;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                            }, s.Merge<s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }> & {
                                additionalProperties: false;
                            }>>;
                            properties: {
                                readonly mappedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly targetCardinality: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    multipleOf?: number | undefined;
                                    maximum?: number | undefined;
                                    exclusiveMaximum?: number | undefined;
                                    minimum?: number | undefined;
                                    exclusiveMinimum?: number | undefined;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                            };
                            required: string[] | undefined;
                            partial: () => s.ObjectSchema<{
                                readonly mappedBy: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly targetCardinality: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        } & s.Schema<s.ISchemaOptions, {
                            required?: boolean | undefined;
                            mappedBy?: string | undefined;
                            inversedBy?: string | undefined;
                            targetCardinality?: number | undefined;
                        } | undefined, {
                            required?: boolean | undefined;
                            mappedBy?: string | undefined;
                            inversedBy?: string | undefined;
                            targetCardinality?: number | undefined;
                        } | undefined>);
                    }, s.Merge<{
                        readonly title: string;
                    } & {
                        additionalProperties: false;
                    }>>[];
                }>;
            } & s.Schema<s.ISchemaOptions, {
                [x: string]: {
                    config?: {
                        required?: boolean | undefined;
                        sourceCardinality?: number | undefined;
                        with_limit?: number | undefined;
                        fieldConfig?: {
                            [x: string]: unknown;
                            label: string;
                        } | undefined;
                        mappedBy?: string | undefined;
                        inversedBy?: string | undefined;
                    } | {
                        required?: boolean | undefined;
                        mappedBy?: string | undefined;
                        inversedBy?: string | undefined;
                        connectionTable?: string | undefined;
                        connectionTableMappedName?: string | undefined;
                    } | {
                        required?: boolean | undefined;
                        mappedBy?: string | undefined;
                        inversedBy?: string | undefined;
                        targetCardinality?: number | undefined;
                    } | undefined;
                    type: string;
                    target: string;
                    source: string;
                };
            } | undefined, {
                [x: string]: never;
            } | undefined>;
            readonly indices: {
                additionalProperties: s.ObjectSchema<{
                    readonly entity: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                    readonly fields: s.ArraySchema<s.StringSchema<s.IStringOptions> & s.IStringOptions, {
                        readonly minItems: 1;
                    }> & {
                        readonly minItems: 1;
                    };
                    readonly unique: {
                        readonly default: false;
                    } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                }, s.Merge<s.IObjectOptions & {
                    additionalProperties: false;
                }>>;
            } & s.Schema<s.ISchemaOptions, {
                [x: string]: {
                    unique?: boolean | undefined;
                    fields: string[];
                    entity: string;
                };
            } | undefined, {
                [x: string]: {
                    unique?: boolean | undefined;
                    fields: string[];
                    entity: string;
                };
            } | undefined>;
        }, s.Merge<s.IObjectOptions & {
            additionalProperties: false;
        }>> | s.ObjectSchema<{
            readonly enabled: s.Schema<{
                readonly default: false;
            }, boolean, boolean> & {
                readonly default: false;
            };
            readonly basepath: s.StringSchema<{
                readonly default: "/api/media";
            }> & {
                readonly default: "/api/media";
            };
            readonly entity_name: s.StringSchema<{
                readonly default: "media";
            }> & {
                readonly default: "media";
            };
            readonly storage: s.ObjectSchema<{
                readonly body_max_size: {} & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
            }, s.Merge<{
                readonly default: {};
            } & {
                additionalProperties: false;
            }>>;
            readonly adapter: {
                default?: any;
                enum?: (readonly any[] | any[]) | undefined;
                const?: any;
                anyOf: s.ObjectSchema<{
                    readonly type: s.Schema<s.ILiteralOptions, string, string> & s.Merge<s.ILiteralOptions & {
                        const: string;
                    }>;
                    readonly config: s.Schema<s.ISchemaOptions, unknown, unknown>;
                }, s.Merge<{
                    readonly title: string;
                    readonly description: string | undefined;
                } & {
                    additionalProperties: false;
                }>>[];
            } & s.Schema<s.ISchemaOptions, {
                config?: unknown;
                type: string;
            } | undefined, never>;
        }, s.Merge<{
            readonly default: {};
        } & {
            additionalProperties: false;
        }>> | s.ObjectSchema<{
            readonly basepath: s.StringSchema<{
                readonly default: "/api/flows";
            }> & {
                readonly default: "/api/flows";
            };
            readonly flows: s.RecordSchema<s.ObjectSchema<{
                readonly trigger: s.Schema<s.IUnionOptions, {
                    config?: {
                        mode: "sync" | "async";
                    } | {
                        event: string;
                        mode: "sync" | "async";
                    } | {
                        path: string;
                        mode: "sync" | "async";
                        method: "GET" | "POST" | "PATCH" | "PUT" | "DELETE";
                        response_type: "html" | "json" | "text";
                    } | undefined;
                    type: "manual" | "event" | "http";
                }, never> & s.Merge<s.IUnionOptions & {
                    anyOf: s.ObjectSchema<{
                        readonly type: s.Schema<s.ILiteralOptions, "manual" | "event" | "http", "manual" | "event" | "http"> & s.Merge<s.ILiteralOptions & {
                            const: "manual" | "event" | "http";
                        }>;
                        readonly config: ({
                            strict: () => s.ObjectSchema<{
                                readonly mode: s.StringSchema<{
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                }> & {
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                };
                            }, s.Merge<s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }> & {
                                additionalProperties: false;
                            }>>;
                            properties: {
                                readonly mode: s.StringSchema<{
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                }> & {
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                };
                            };
                            required: string[] | undefined;
                            partial: () => s.ObjectSchema<{
                                readonly mode: s.Schema<s.ISchemaOptions, "sync" | "async" | undefined, "sync" | "async" | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        } & s.Schema<s.ISchemaOptions, {
                            mode: "sync" | "async";
                        } | undefined, {
                            mode: "sync" | "async";
                        } | undefined>) | ({
                            strict: () => s.ObjectSchema<{
                                readonly mode: s.StringSchema<{
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                }> & {
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                };
                                readonly event: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            }, s.Merge<s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }> & {
                                additionalProperties: false;
                            }>>;
                            properties: {
                                readonly mode: s.StringSchema<{
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                }> & {
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                };
                                readonly event: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            };
                            required: string[] | undefined;
                            partial: () => s.ObjectSchema<{
                                readonly mode: s.Schema<s.ISchemaOptions, "sync" | "async" | undefined, "sync" | "async" | undefined>;
                                readonly event: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        } & s.Schema<s.ISchemaOptions, {
                            event: string;
                            mode: "sync" | "async";
                        } | undefined, {
                            event: string;
                            mode: "sync" | "async";
                        } | undefined>) | ({
                            strict: () => s.ObjectSchema<{
                                readonly mode: s.StringSchema<{
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                }> & {
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                };
                                readonly path: s.StringSchema<{
                                    readonly pattern: "^/.*$";
                                }> & {
                                    readonly pattern: "^/.*$";
                                };
                                readonly method: s.StringSchema<{
                                    readonly enum: readonly ["GET", "POST", "PUT", "PATCH", "DELETE"];
                                    readonly default: "GET";
                                }> & {
                                    readonly enum: readonly ["GET", "POST", "PUT", "PATCH", "DELETE"];
                                    readonly default: "GET";
                                };
                                readonly response_type: s.StringSchema<{
                                    readonly enum: readonly ["json", "text", "html"];
                                    readonly default: "json";
                                }> & {
                                    readonly enum: readonly ["json", "text", "html"];
                                    readonly default: "json";
                                };
                            }, s.Merge<s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }> & {
                                additionalProperties: false;
                            }>>;
                            properties: {
                                readonly mode: s.StringSchema<{
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                }> & {
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                };
                                readonly path: s.StringSchema<{
                                    readonly pattern: "^/.*$";
                                }> & {
                                    readonly pattern: "^/.*$";
                                };
                                readonly method: s.StringSchema<{
                                    readonly enum: readonly ["GET", "POST", "PUT", "PATCH", "DELETE"];
                                    readonly default: "GET";
                                }> & {
                                    readonly enum: readonly ["GET", "POST", "PUT", "PATCH", "DELETE"];
                                    readonly default: "GET";
                                };
                                readonly response_type: s.StringSchema<{
                                    readonly enum: readonly ["json", "text", "html"];
                                    readonly default: "json";
                                }> & {
                                    readonly enum: readonly ["json", "text", "html"];
                                    readonly default: "json";
                                };
                            };
                            required: string[] | undefined;
                            partial: () => s.ObjectSchema<{
                                readonly mode: s.Schema<s.ISchemaOptions, "sync" | "async" | undefined, "sync" | "async" | undefined>;
                                readonly path: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly method: s.Schema<s.ISchemaOptions, "GET" | "POST" | "PATCH" | "PUT" | "DELETE" | undefined, "GET" | "POST" | "PATCH" | "PUT" | "DELETE" | undefined>;
                                readonly response_type: s.Schema<s.ISchemaOptions, "html" | "json" | "text" | undefined, "html" | "json" | "text" | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        } & s.Schema<s.ISchemaOptions, {
                            path: string;
                            mode: "sync" | "async";
                            method: "GET" | "POST" | "PATCH" | "PUT" | "DELETE";
                            response_type: "html" | "json" | "text";
                        } | undefined, {
                            path: string;
                            mode: "sync" | "async";
                            method: "GET" | "POST" | "PATCH" | "PUT" | "DELETE";
                            response_type: "html" | "json" | "text";
                        } | undefined>);
                    }, s.Merge<{
                        readonly title: string;
                    } & {
                        additionalProperties: false;
                    }>>[];
                }>;
                readonly tasks: {
                    additionalProperties: s.Schema<s.IUnionOptions, {
                        type: "log" | "fetch" | "render" | "subflow";
                        params: {
                            method?: string | undefined;
                            headers?: {
                                key: string;
                                value: string;
                            }[] | undefined;
                            body?: string | undefined;
                            normal?: number | undefined;
                            url: string;
                        } | {
                            delay: number;
                        } | {
                            render: string;
                        } | {
                            flow?: any;
                            input?: any;
                            loop?: boolean | undefined;
                        };
                    }, never> & s.Merge<s.IUnionOptions & {
                        anyOf: s.ObjectSchema<{
                            readonly type: s.Schema<s.ILiteralOptions, "log" | "fetch" | "render" | "subflow", "log" | "fetch" | "render" | "subflow"> & s.Merge<s.ILiteralOptions & {
                                const: "log" | "fetch" | "render" | "subflow";
                            }>;
                            readonly params: s.ObjectSchema<{
                                readonly url: s.StringSchema<{
                                    readonly pattern: "^(http|https)://";
                                }> & {
                                    readonly pattern: "^(http|https)://";
                                };
                                readonly method: {
                                    readonly default: "GET";
                                    readonly enum: string[];
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly headers: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    $defs?: Record<string, s.Schema> | undefined;
                                    contains?: s.Schema | undefined;
                                    minContains?: number | undefined;
                                    maxContains?: number | undefined;
                                    prefixItems?: s.Schema[] | undefined;
                                    uniqueItems?: boolean | undefined;
                                    maxItems?: number | undefined;
                                    minItems?: number | undefined;
                                    readonly items?: s.ObjectSchema<{
                                        readonly key: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                        readonly value: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    }, s.Merge<s.IObjectOptions & {
                                        additionalProperties: false;
                                    }>> | undefined;
                                } & s.Schema<s.ISchemaOptions, {
                                    key: string;
                                    value: string;
                                }[] | undefined, {
                                    key: string;
                                    value: string;
                                }[] | undefined>;
                                readonly body: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly normal: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    multipleOf?: number | undefined;
                                    maximum?: number | undefined;
                                    exclusiveMaximum?: number | undefined;
                                    minimum?: number | undefined;
                                    exclusiveMinimum?: number | undefined;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>> | s.ObjectSchema<{
                                readonly delay: s.Schema<{
                                    readonly default: 10;
                                }, number, number> & {
                                    readonly default: 10;
                                };
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>> | s.ObjectSchema<{
                                readonly render: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>> | s.ObjectSchema<{
                                readonly flow: s.Schema<s.IAnyOptions, any, any> & s.IAnyOptions;
                                readonly input: {
                                    [x: string]: any;
                                    [x: number]: any;
                                } & s.Schema<s.ISchemaOptions, any, any>;
                                readonly loop: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        }, s.Merge<{
                            readonly title: string;
                        } & {
                            additionalProperties: false;
                        }>>[];
                    }>;
                } & s.Schema<s.ISchemaOptions, {
                    [x: string]: {
                        type: "log" | "fetch" | "render" | "subflow";
                        params: {
                            method?: string | undefined;
                            headers?: {
                                key: string;
                                value: string;
                            }[] | undefined;
                            body?: string | undefined;
                            normal?: number | undefined;
                            url: string;
                        } | {
                            delay: number;
                        } | {
                            render: string;
                        } | {
                            flow?: any;
                            input?: any;
                            loop?: boolean | undefined;
                        };
                    };
                } | undefined, {
                    [x: string]: never;
                } | undefined>;
                readonly connections: {
                    additionalProperties: s.ObjectSchema<{
                        readonly source: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                        readonly target: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                        readonly config: s.ObjectSchema<{
                            readonly condition: s.Schema<s.ISchemaOptions, {
                                type: "success";
                            } | {
                                type: "error";
                            } | {
                                path: string;
                                value: string;
                                type: "matches";
                            } | undefined, {
                                type: "error";
                            } | {
                                path: string;
                                value: string;
                                type: "matches";
                            } | {
                                type: "success";
                            } | undefined>;
                            readonly max_retries: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                        }, s.Merge<s.IObjectOptions & {
                            additionalProperties: false;
                        }>>;
                    }, s.Merge<s.IObjectOptions & {
                        additionalProperties: false;
                    }>>;
                } & s.Schema<s.ISchemaOptions, {
                    [x: string]: {
                        config: {
                            condition?: {
                                type: "success";
                            } | {
                                type: "error";
                            } | {
                                path: string;
                                value: string;
                                type: "matches";
                            } | undefined;
                            max_retries?: number | undefined;
                        };
                        target: string;
                        source: string;
                    };
                } | undefined, {
                    [x: string]: {
                        config: {
                            condition?: {
                                type: "error";
                            } | {
                                path: string;
                                value: string;
                                type: "matches";
                            } | {
                                type: "success";
                            } | undefined;
                            max_retries?: number | undefined;
                        };
                        target: string;
                        source: string;
                    };
                } | undefined>;
                readonly start_task: {
                    default?: any;
                    maxLength?: number | undefined;
                    minLength?: number | undefined;
                    pattern?: (string | RegExp) | undefined;
                    format?: string | undefined;
                    enum?: (readonly any[] | any[]) | undefined;
                    const?: any;
                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                readonly responding_task: {
                    default?: any;
                    maxLength?: number | undefined;
                    minLength?: number | undefined;
                    pattern?: (string | RegExp) | undefined;
                    format?: string | undefined;
                    enum?: (readonly any[] | any[]) | undefined;
                    const?: any;
                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
            }, s.Merge<s.IObjectOptions & {
                additionalProperties: false;
            }>>, {
                readonly default: {};
            }>;
        }, s.Merge<s.IObjectOptions & {
            additionalProperties: false;
        }>>;
        media: s.ObjectSchema<{
            readonly enabled: s.Schema<{
                readonly default: false;
            }, boolean, boolean> & {
                readonly default: false;
            };
            readonly basepath: s.StringSchema<{
                readonly default: "/api/auth";
            }> & {
                readonly default: "/api/auth";
            };
            readonly entity_name: s.StringSchema<{
                readonly default: "users";
            }> & {
                readonly default: "users";
            };
            readonly allow_register: {
                readonly default: true;
            } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
            readonly jwt: s.ObjectSchema<{
                readonly secret: import("bknd/utils").SecretSchema<{
                    default: string;
                }> & {
                    default: string;
                };
                readonly alg: {
                    readonly default: "HS256";
                    readonly enum: ["HS256", "HS384", "HS512"];
                } & s.Schema<s.ISchemaOptions, "HS256" | "HS384" | "HS512" | undefined, "HS256" | "HS384" | "HS512" | undefined>;
                readonly expires: {
                    default?: any;
                    enum?: (readonly any[] | any[]) | undefined;
                    const?: any;
                    multipleOf?: number | undefined;
                    maximum?: number | undefined;
                    exclusiveMaximum?: number | undefined;
                    minimum?: number | undefined;
                    exclusiveMinimum?: number | undefined;
                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                readonly issuer: {
                    default?: any;
                    maxLength?: number | undefined;
                    minLength?: number | undefined;
                    pattern?: (string | RegExp) | undefined;
                    format?: string | undefined;
                    enum?: (readonly any[] | any[]) | undefined;
                    const?: any;
                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                readonly fields: s.ArraySchema<s.StringSchema<s.IStringOptions> & s.IStringOptions, {
                    readonly default: readonly ["id", "email", "role"];
                }> & {
                    readonly default: readonly ["id", "email", "role"];
                };
            }, s.Merge<{
                readonly default: {};
            } & {
                additionalProperties: false;
            }>>;
            readonly cookie: s.ObjectSchema<{
                readonly path: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                readonly sameSite: s.Schema<s.ISchemaOptions, "strict" | "lax" | "none" | undefined, "strict" | "lax" | "none" | undefined>;
                readonly secure: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                readonly httpOnly: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                readonly expires: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                readonly partitioned: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                readonly renew: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                readonly pathSuccess: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                readonly pathLoggedOut: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
            }, s.Merge<s.IObjectOptions & {
                additionalProperties: false;
            }>>;
            readonly strategies: s.RecordSchema<s.Schema<s.IUnionOptions, {
                enabled?: boolean | undefined;
                type: "password" | "oauth" | "custom_oauth";
                config: {
                    rounds?: number | undefined;
                    hashing: "plain" | "sha256" | "bcrypt";
                } | {
                    [x: string]: unknown;
                    name: "google" | "github";
                    type: "oidc" | "oauth2";
                    client: {
                        client_id: string;
                        client_secret: string;
                    };
                } | {
                    name: string;
                    type: "oidc" | "oauth2";
                    client: {
                        [x: string]: unknown;
                        client_id: string;
                        client_secret: string;
                        token_endpoint_auth_method: "client_secret_basic";
                    };
                    as: {
                        code_challenge_methods_supported?: "S256" | undefined;
                        scopes_supported?: string[] | undefined;
                        scope_separator?: string | undefined;
                        authorization_endpoint?: string | undefined;
                        token_endpoint?: string | undefined;
                        userinfo_endpoint?: string | undefined;
                        issuer: string;
                    };
                };
            }, never> & s.Merge<s.IUnionOptions & {
                anyOf: s.ObjectSchema<{
                    readonly enabled: {
                        readonly default: true;
                    } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                    readonly type: s.Schema<s.ILiteralOptions, "password" | "oauth" | "custom_oauth", "password" | "oauth" | "custom_oauth"> & s.Merge<s.ILiteralOptions & {
                        const: "password" | "oauth" | "custom_oauth";
                    }>;
                    readonly config: s.ObjectSchema<{
                        readonly hashing: s.StringSchema<{
                            readonly enum: readonly ["plain", "sha256", "bcrypt"];
                            readonly default: "sha256";
                        }> & {
                            readonly enum: readonly ["plain", "sha256", "bcrypt"];
                            readonly default: "sha256";
                        };
                        readonly rounds: {
                            readonly maximum: 10;
                            readonly minimum: 1;
                        } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                    }, s.Merge<s.IObjectOptions & {
                        additionalProperties: false;
                    }>> | (s.ObjectSchema<{
                        readonly name: s.StringSchema<{
                            readonly enum: ("google" | "github")[];
                        }> & {
                            readonly enum: ("google" | "github")[];
                        };
                        readonly type: s.StringSchema<{
                            readonly enum: readonly ["oidc", "oauth2"];
                            readonly default: "oauth2";
                        }> & {
                            readonly enum: readonly ["oidc", "oauth2"];
                            readonly default: "oauth2";
                        };
                        readonly client: s.ObjectSchema<{
                            readonly client_id: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            readonly client_secret: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                        }, s.Merge<s.IObjectOptions & {
                            additionalProperties: false;
                        }>>;
                    }, {
                        readonly title: "OAuth";
                    }> & {
                        readonly title: "OAuth";
                    }) | s.ObjectSchema<{
                        readonly type: s.StringSchema<{
                            readonly enum: readonly ["oidc", "oauth2"];
                            readonly default: "oidc";
                        }> & {
                            readonly enum: readonly ["oidc", "oauth2"];
                            readonly default: "oidc";
                        };
                        readonly name: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                        readonly client: s.ObjectSchema<{
                            readonly client_id: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            readonly client_secret: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            readonly token_endpoint_auth_method: s.StringSchema<{
                                readonly enum: readonly ["client_secret_basic"];
                            }> & {
                                readonly enum: readonly ["client_secret_basic"];
                            };
                        }, s.IObjectOptions> & s.IObjectOptions;
                        readonly as: s.ObjectSchema<{
                            readonly issuer: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            readonly code_challenge_methods_supported: {
                                readonly enum: ["S256"];
                            } & s.Schema<s.ISchemaOptions, "S256" | undefined, "S256" | undefined>;
                            readonly scopes_supported: {
                                default?: any;
                                enum?: (readonly any[] | any[]) | undefined;
                                const?: any;
                                $defs?: Record<string, s.Schema> | undefined;
                                contains?: s.Schema | undefined;
                                minContains?: number | undefined;
                                maxContains?: number | undefined;
                                prefixItems?: s.Schema[] | undefined;
                                uniqueItems?: boolean | undefined;
                                maxItems?: number | undefined;
                                minItems?: number | undefined;
                                readonly items?: (s.StringSchema<s.IStringOptions> & s.IStringOptions) | undefined;
                            } & s.Schema<s.ISchemaOptions, string[] | undefined, string[] | undefined>;
                            readonly scope_separator: {
                                readonly default: " ";
                            } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            readonly authorization_endpoint: {
                                readonly pattern: "^(https?|wss?)://[^\\s/$.?#].[^\\s]*$";
                            } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            readonly token_endpoint: {
                                readonly pattern: "^(https?|wss?)://[^\\s/$.?#].[^\\s]*$";
                            } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            readonly userinfo_endpoint: {
                                readonly pattern: "^(https?|wss?)://[^\\s/$.?#].[^\\s]*$";
                            } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                        }, s.Merge<s.IObjectOptions & {
                            additionalProperties: false;
                        }>>;
                    }, s.Merge<{
                        readonly title: "Custom OAuth";
                    } & {
                        additionalProperties: false;
                    }>>;
                }, s.Merge<{
                    readonly title: "password" | "oauth" | "custom_oauth";
                } & {
                    additionalProperties: false;
                }>>[];
            }>, {
                readonly title: "Strategies";
                readonly default: {
                    readonly password: {
                        readonly type: "password";
                        readonly enabled: true;
                        readonly config: {
                            readonly hashing: "sha256";
                        };
                    };
                };
            }>;
            readonly guard: {
                default?: any;
                enum?: (readonly any[] | any[]) | undefined;
                const?: any;
                $defs?: Record<string, s.Schema> | undefined;
                patternProperties?: Record<string, s.Schema> | undefined;
                additionalProperties?: (s.Schema | false) | undefined;
                minProperties?: number | undefined;
                maxProperties?: number | undefined;
                propertyNames?: s.Schema | undefined;
                strict: () => s.ObjectSchema<{
                    readonly enabled: {
                        readonly default: false;
                    } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                }, s.Merge<s.IObjectOptions & {
                    additionalProperties: false;
                }>>;
                properties: {
                    readonly enabled: {
                        readonly default: false;
                    } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                };
                required: string[] | undefined;
                partial: () => s.ObjectSchema<{
                    readonly enabled: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                }, s.IObjectOptions>;
            } & s.Schema<s.ISchemaOptions, {
                [x: string]: unknown;
                enabled?: boolean | undefined;
            } | undefined, {
                [x: string]: unknown;
                enabled?: boolean | undefined;
            } | undefined>;
            readonly roles: {
                additionalProperties: s.ObjectSchema<{
                    readonly permissions: {
                        default?: any;
                        enum?: (readonly any[] | any[]) | undefined;
                        const?: any;
                        $defs?: Record<string, s.Schema> | undefined;
                        contains?: s.Schema | undefined;
                        minContains?: number | undefined;
                        maxContains?: number | undefined;
                        prefixItems?: s.Schema[] | undefined;
                        uniqueItems?: boolean | undefined;
                        maxItems?: number | undefined;
                        minItems?: number | undefined;
                        readonly items?: (s.StringSchema<s.IStringOptions> & s.IStringOptions) | undefined;
                    } & s.Schema<s.ISchemaOptions, string[] | undefined, string[] | undefined>;
                    readonly is_default: {
                        default?: any;
                        enum?: (readonly any[] | any[]) | undefined;
                        const?: any;
                    } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                    readonly implicit_allow: {
                        default?: any;
                        enum?: (readonly any[] | any[]) | undefined;
                        const?: any;
                    } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                }, s.Merge<s.IObjectOptions & {
                    additionalProperties: false;
                }>>;
            } & s.Schema<s.ISchemaOptions, {
                [x: string]: {
                    permissions?: string[] | undefined;
                    is_default?: boolean | undefined;
                    implicit_allow?: boolean | undefined;
                };
            } | undefined, {
                [x: string]: {
                    permissions?: string[] | undefined;
                    is_default?: boolean | undefined;
                    implicit_allow?: boolean | undefined;
                };
            } | undefined>;
        }, s.Merge<{
            readonly title: "Authentication";
        } & {
            additionalProperties: false;
        }>> | s.ObjectSchema<{
            readonly cors: s.ObjectSchema<{
                readonly origin: s.StringSchema<{
                    readonly default: "*";
                }> & {
                    readonly default: "*";
                };
                readonly allow_methods: s.ArraySchema<s.StringSchema<{
                    readonly enum: readonly ["GET", "POST", "PATCH", "PUT", "DELETE"];
                }> & {
                    readonly enum: readonly ["GET", "POST", "PATCH", "PUT", "DELETE"];
                }, {
                    readonly default: readonly ["GET", "POST", "PATCH", "PUT", "DELETE"];
                    readonly uniqueItems: true;
                }> & {
                    readonly default: readonly ["GET", "POST", "PATCH", "PUT", "DELETE"];
                    readonly uniqueItems: true;
                };
                readonly allow_headers: s.ArraySchema<s.StringSchema<s.IStringOptions> & s.IStringOptions, {
                    readonly default: readonly ["Content-Type", "Content-Length", "Authorization", "Accept"];
                }> & {
                    readonly default: readonly ["Content-Type", "Content-Length", "Authorization", "Accept"];
                };
                readonly allow_credentials: s.Schema<{
                    readonly default: true;
                }, boolean, boolean> & {
                    readonly default: true;
                };
            }, s.Merge<s.IObjectOptions & {
                additionalProperties: false;
            }>>;
        }, s.Merge<s.IObjectOptions & {
            additionalProperties: false;
        }>> | s.ObjectSchema<{
            readonly basepath: {
                readonly default: "/api/data";
            } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
            readonly default_primary_format: {
                readonly default: "integer";
                readonly enum: readonly ["integer", "uuid"];
            } & s.Schema<s.ISchemaOptions, "integer" | "uuid" | undefined, "integer" | "uuid" | undefined>;
            readonly entities: {
                additionalProperties: s.ObjectSchema<{
                    readonly name: {
                        default?: any;
                        maxLength?: number | undefined;
                        minLength?: number | undefined;
                        pattern?: (string | RegExp) | undefined;
                        format?: string | undefined;
                        enum?: (readonly any[] | any[]) | undefined;
                        const?: any;
                    } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                    readonly type: s.StringSchema<{
                        readonly enum: readonly ["regular", "system", "generated"];
                        readonly default: "regular";
                    }> & {
                        readonly enum: readonly ["regular", "system", "generated"];
                        readonly default: "regular";
                    };
                    readonly config: s.ObjectSchema<{
                        readonly name: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                        readonly name_singular: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                        readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                        readonly sort_field: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                        readonly sort_dir: s.Schema<s.ISchemaOptions, "asc" | "desc" | undefined, "asc" | "desc" | undefined>;
                        readonly primary_format: s.Schema<s.ISchemaOptions, "integer" | "uuid" | undefined, "integer" | "uuid" | undefined>;
                    }, s.Merge<s.IObjectOptions & {
                        additionalProperties: false;
                    }>>;
                    readonly fields: s.RecordSchema<s.Schema<s.IUnionOptions, {
                        name?: string | undefined;
                        config?: {
                            description?: string | undefined;
                            maxLength?: number | undefined;
                            minLength?: number | undefined;
                            pattern?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: string | undefined;
                            html_config?: {
                                [x: string]: unknown;
                                element?: string | undefined;
                                props?: {
                                    [x: string]: string | number;
                                } | undefined;
                            } | undefined;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                        } | {
                            description?: string | undefined;
                            format?: "integer" | "uuid" | undefined;
                            required?: boolean | undefined;
                            default_value?: any;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                        } | {
                            description?: string | undefined;
                            multipleOf?: number | undefined;
                            maximum?: number | undefined;
                            exclusiveMaximum?: number | undefined;
                            minimum?: number | undefined;
                            exclusiveMinimum?: number | undefined;
                            required?: boolean | undefined;
                            default_value?: number | undefined;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                        } | {
                            description?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: boolean | undefined;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                        } | {
                            description?: string | undefined;
                            type?: "date" | "week" | "datetime" | undefined;
                            required?: boolean | undefined;
                            default_value?: any;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                            timezone?: string | undefined;
                            min_date?: string | undefined;
                            max_date?: string | undefined;
                        } | {
                            description?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: string | undefined;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                            options?: {
                                [x: string]: unknown;
                                values: string[];
                                type: "strings";
                            } | {
                                [x: string]: unknown;
                                values: {
                                    [x: string]: unknown;
                                    value: string;
                                    label: string;
                                }[];
                                type: "objects";
                            } | undefined;
                        } | {
                            description?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: any;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                        } | {
                            description?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: any;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                            schema?: any;
                            ui_schema?: any;
                            default_from_schema?: boolean | undefined;
                        } | {
                            description?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: any;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                            target_field?: string | undefined;
                            target_field_type?: "text" | "integer" | undefined;
                            on_delete?: "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined;
                            reference: string;
                            target: string;
                        } | {
                            description?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: any;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                            entity?: string | undefined;
                            min_items?: number | undefined;
                            max_items?: number | undefined;
                            mime_types?: string[] | undefined;
                        } | undefined;
                        type: "number" | "boolean" | "json" | "text" | "enum" | "date" | "media" | "relation" | "primary" | "jsonschema";
                    }, never> & s.Merge<s.IUnionOptions & {
                        anyOf: s.ObjectSchema<{
                            readonly name: {
                                default?: any;
                                maxLength?: number | undefined;
                                minLength?: number | undefined;
                                pattern?: (string | RegExp) | undefined;
                                format?: string | undefined;
                                enum?: (readonly any[] | any[]) | undefined;
                                const?: any;
                            } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            readonly type: s.Schema<s.ILiteralOptions, "number" | "boolean" | "json" | "text" | "enum" | "date" | "media" | "relation" | "primary" | "jsonschema", "number" | "boolean" | "json" | "text" | "enum" | "date" | "media" | "relation" | "primary" | "jsonschema"> & s.Merge<s.ILiteralOptions & {
                                const: "number" | "boolean" | "json" | "text" | "enum" | "date" | "media" | "relation" | "primary" | "jsonschema";
                            }>;
                            readonly config: ({
                                strict: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly minLength: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly maxLength: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly pattern: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly html_config: s.Schema<s.ISchemaOptions, {
                                        [x: string]: unknown;
                                        element?: string | undefined;
                                        props?: {
                                            [x: string]: string | number;
                                        } | undefined;
                                    } | undefined, {
                                        [x: string]: unknown;
                                        element?: string | undefined;
                                        props?: {
                                            [x: string]: string | number;
                                        } | undefined;
                                    } | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly minLength: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly maxLength: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly pattern: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly html_config: s.Schema<s.ISchemaOptions, {
                                        [x: string]: unknown;
                                        element?: string | undefined;
                                        props?: {
                                            [x: string]: string | number;
                                        } | undefined;
                                    } | undefined, {
                                        [x: string]: unknown;
                                        element?: string | undefined;
                                        props?: {
                                            [x: string]: string | number;
                                        } | undefined;
                                    } | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly minLength: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly maxLength: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly pattern: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly html_config: s.Schema<s.ISchemaOptions, {
                                        [x: string]: unknown;
                                        element?: string | undefined;
                                        props?: {
                                            [x: string]: string | number;
                                        } | undefined;
                                    } | undefined, {
                                        [x: string]: unknown;
                                        element?: string | undefined;
                                        props?: {
                                            [x: string]: string | number;
                                        } | undefined;
                                    } | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                maxLength?: number | undefined;
                                minLength?: number | undefined;
                                pattern?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: string | undefined;
                                html_config?: {
                                    [x: string]: unknown;
                                    element?: string | undefined;
                                    props?: {
                                        [x: string]: string | number;
                                    } | undefined;
                                } | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                maxLength?: number | undefined;
                                minLength?: number | undefined;
                                pattern?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: string | undefined;
                                html_config?: {
                                    [x: string]: unknown;
                                    element?: string | undefined;
                                    props?: {
                                        [x: string]: string | number;
                                    } | undefined;
                                } | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly format: s.Schema<s.ISchemaOptions, "integer" | "uuid" | undefined, "integer" | "uuid" | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly format: s.Schema<s.ISchemaOptions, "integer" | "uuid" | undefined, "integer" | "uuid" | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly format: s.Schema<s.ISchemaOptions, "integer" | "uuid" | undefined, "integer" | "uuid" | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                format?: "integer" | "uuid" | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                format?: "integer" | "uuid" | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly minimum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly maximum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly exclusiveMinimum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly exclusiveMaximum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly multipleOf: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly minimum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly maximum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly exclusiveMinimum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly exclusiveMaximum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly multipleOf: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly minimum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly maximum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly exclusiveMinimum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly exclusiveMaximum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly multipleOf: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                multipleOf?: number | undefined;
                                maximum?: number | undefined;
                                exclusiveMaximum?: number | undefined;
                                minimum?: number | undefined;
                                exclusiveMinimum?: number | undefined;
                                required?: boolean | undefined;
                                default_value?: number | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                multipleOf?: number | undefined;
                                maximum?: number | undefined;
                                exclusiveMaximum?: number | undefined;
                                minimum?: number | undefined;
                                exclusiveMinimum?: number | undefined;
                                required?: boolean | undefined;
                                default_value?: number | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: boolean | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: boolean | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly type: s.Schema<s.ISchemaOptions, "date" | "week" | "datetime" | undefined, "date" | "week" | "datetime" | undefined>;
                                    readonly timezone: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly min_date: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly max_date: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly type: s.Schema<s.ISchemaOptions, "date" | "week" | "datetime" | undefined, "date" | "week" | "datetime" | undefined>;
                                    readonly timezone: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly min_date: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly max_date: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly type: s.Schema<s.ISchemaOptions, "date" | "week" | "datetime" | undefined, "date" | "week" | "datetime" | undefined>;
                                    readonly timezone: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly min_date: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly max_date: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                type?: "date" | "week" | "datetime" | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                timezone?: string | undefined;
                                min_date?: string | undefined;
                                max_date?: string | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                type?: "date" | "week" | "datetime" | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                timezone?: string | undefined;
                                min_date?: string | undefined;
                                max_date?: string | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly options: s.Schema<s.ISchemaOptions, {
                                        [x: string]: unknown;
                                        values: string[];
                                        type: "strings";
                                    } | {
                                        [x: string]: unknown;
                                        values: {
                                            [x: string]: unknown;
                                            value: string;
                                            label: string;
                                        }[];
                                        type: "objects";
                                    } | undefined, any>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly options: s.Schema<s.ISchemaOptions, {
                                        [x: string]: unknown;
                                        values: string[];
                                        type: "strings";
                                    } | {
                                        [x: string]: unknown;
                                        values: {
                                            [x: string]: unknown;
                                            value: string;
                                            label: string;
                                        }[];
                                        type: "objects";
                                    } | undefined, any>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly options: s.Schema<s.ISchemaOptions, {
                                        [x: string]: unknown;
                                        values: string[];
                                        type: "strings";
                                    } | {
                                        [x: string]: unknown;
                                        values: {
                                            [x: string]: unknown;
                                            value: string;
                                            label: string;
                                        }[];
                                        type: "objects";
                                    } | undefined, any>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: string | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                options?: {
                                    [x: string]: unknown;
                                    values: string[];
                                    type: "strings";
                                } | {
                                    [x: string]: unknown;
                                    values: {
                                        [x: string]: unknown;
                                        value: string;
                                        label: string;
                                    }[];
                                    type: "objects";
                                } | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: string | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                options?: any;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly schema: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly ui_schema: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly default_from_schema: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly schema: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly ui_schema: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly default_from_schema: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly schema: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly ui_schema: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly default_from_schema: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                schema?: any;
                                ui_schema?: any;
                                default_from_schema?: boolean | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                schema?: any;
                                ui_schema?: any;
                                default_from_schema?: boolean | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly reference: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    readonly target: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    readonly target_field: {
                                        readonly default: "id";
                                    } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly target_field_type: {
                                        readonly default: "integer";
                                        readonly enum: ["text", "integer"];
                                    } & s.Schema<s.ISchemaOptions, "text" | "integer" | undefined, "text" | "integer" | undefined>;
                                    readonly on_delete: {
                                        readonly default: "set null";
                                        readonly enum: readonly ["cascade", "set null", "set default", "restrict", "no action"];
                                    } & s.Schema<s.ISchemaOptions, "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined, "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly reference: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    readonly target: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    readonly target_field: {
                                        readonly default: "id";
                                    } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly target_field_type: {
                                        readonly default: "integer";
                                        readonly enum: ["text", "integer"];
                                    } & s.Schema<s.ISchemaOptions, "text" | "integer" | undefined, "text" | "integer" | undefined>;
                                    readonly on_delete: {
                                        readonly default: "set null";
                                        readonly enum: readonly ["cascade", "set null", "set default", "restrict", "no action"];
                                    } & s.Schema<s.ISchemaOptions, "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined, "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly reference: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly target: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly target_field: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly target_field_type: s.Schema<s.ISchemaOptions, "text" | "integer" | undefined, "text" | "integer" | undefined>;
                                    readonly on_delete: s.Schema<s.ISchemaOptions, "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined, "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                target_field?: string | undefined;
                                target_field_type?: "text" | "integer" | undefined;
                                on_delete?: "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined;
                                reference: string;
                                target: string;
                            } | undefined, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                target_field?: string | undefined;
                                target_field_type?: "text" | "integer" | undefined;
                                on_delete?: "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined;
                                reference: string;
                                target: string;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly entity: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly min_items: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly max_items: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly mime_types: s.Schema<s.ISchemaOptions, string[] | undefined, string[] | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly entity: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly min_items: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly max_items: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly mime_types: s.Schema<s.ISchemaOptions, string[] | undefined, string[] | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly entity: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly min_items: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly max_items: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly mime_types: s.Schema<s.ISchemaOptions, string[] | undefined, string[] | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                entity?: string | undefined;
                                min_items?: number | undefined;
                                max_items?: number | undefined;
                                mime_types?: string[] | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                entity?: string | undefined;
                                min_items?: number | undefined;
                                max_items?: number | undefined;
                                mime_types?: string[] | undefined;
                            } | undefined>);
                        }, s.Merge<{
                            readonly title: "number" | "boolean" | "json" | "text" | "enum" | "date" | "media" | "relation" | "primary" | "jsonschema";
                        } & {
                            additionalProperties: false;
                        }>>[];
                    }>, s.IRecordOptions>;
                }, s.Merge<s.IObjectOptions & {
                    additionalProperties: false;
                }>>;
            } & s.Schema<s.ISchemaOptions, {
                [x: string]: {
                    name?: string | undefined;
                    type: "regular" | "system" | "generated";
                    fields: {
                        [x: string]: {
                            name?: string | undefined;
                            config?: {
                                description?: string | undefined;
                                maxLength?: number | undefined;
                                minLength?: number | undefined;
                                pattern?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: string | undefined;
                                html_config?: {
                                    [x: string]: unknown;
                                    element?: string | undefined;
                                    props?: {
                                        [x: string]: string | number;
                                    } | undefined;
                                } | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | {
                                description?: string | undefined;
                                format?: "integer" | "uuid" | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | {
                                description?: string | undefined;
                                multipleOf?: number | undefined;
                                maximum?: number | undefined;
                                exclusiveMaximum?: number | undefined;
                                minimum?: number | undefined;
                                exclusiveMinimum?: number | undefined;
                                required?: boolean | undefined;
                                default_value?: number | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: boolean | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | {
                                description?: string | undefined;
                                type?: "date" | "week" | "datetime" | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                timezone?: string | undefined;
                                min_date?: string | undefined;
                                max_date?: string | undefined;
                            } | {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: string | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                options?: {
                                    [x: string]: unknown;
                                    values: string[];
                                    type: "strings";
                                } | {
                                    [x: string]: unknown;
                                    values: {
                                        [x: string]: unknown;
                                        value: string;
                                        label: string;
                                    }[];
                                    type: "objects";
                                } | undefined;
                            } | {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                schema?: any;
                                ui_schema?: any;
                                default_from_schema?: boolean | undefined;
                            } | {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                target_field?: string | undefined;
                                target_field_type?: "text" | "integer" | undefined;
                                on_delete?: "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined;
                                reference: string;
                                target: string;
                            } | {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                entity?: string | undefined;
                                min_items?: number | undefined;
                                max_items?: number | undefined;
                                mime_types?: string[] | undefined;
                            } | undefined;
                            type: "number" | "boolean" | "json" | "text" | "enum" | "date" | "media" | "relation" | "primary" | "jsonschema";
                        };
                    };
                    config: {
                        description?: string | undefined;
                        name?: string | undefined;
                        name_singular?: string | undefined;
                        sort_field?: string | undefined;
                        sort_dir?: "asc" | "desc" | undefined;
                        primary_format?: "integer" | "uuid" | undefined;
                    };
                };
            } | undefined, {
                [x: string]: {
                    name?: string | undefined;
                    type: "regular" | "system" | "generated";
                    fields: {
                        [x: string]: never;
                    };
                    config: {
                        description?: string | undefined;
                        name?: string | undefined;
                        name_singular?: string | undefined;
                        sort_field?: string | undefined;
                        sort_dir?: "asc" | "desc" | undefined;
                        primary_format?: "integer" | "uuid" | undefined;
                    };
                };
            } | undefined>;
            readonly relations: {
                additionalProperties: s.Schema<s.IUnionOptions, {
                    config?: {
                        required?: boolean | undefined;
                        sourceCardinality?: number | undefined;
                        with_limit?: number | undefined;
                        fieldConfig?: {
                            [x: string]: unknown;
                            label: string;
                        } | undefined;
                        mappedBy?: string | undefined;
                        inversedBy?: string | undefined;
                    } | {
                        required?: boolean | undefined;
                        mappedBy?: string | undefined;
                        inversedBy?: string | undefined;
                        connectionTable?: string | undefined;
                        connectionTableMappedName?: string | undefined;
                    } | {
                        required?: boolean | undefined;
                        mappedBy?: string | undefined;
                        inversedBy?: string | undefined;
                        targetCardinality?: number | undefined;
                    } | undefined;
                    type: string;
                    target: string;
                    source: string;
                }, never> & s.Merge<s.IUnionOptions & {
                    anyOf: s.ObjectSchema<{
                        readonly type: s.Schema<s.ILiteralOptions, string, string> & s.Merge<s.ILiteralOptions & {
                            const: string;
                        }>;
                        readonly source: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                        readonly target: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                        readonly config: ({
                            strict: () => s.ObjectSchema<{
                                readonly mappedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly sourceCardinality: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    multipleOf?: number | undefined;
                                    maximum?: number | undefined;
                                    exclusiveMaximum?: number | undefined;
                                    minimum?: number | undefined;
                                    exclusiveMinimum?: number | undefined;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                readonly with_limit: {
                                    readonly default: number;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                readonly fieldConfig: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    $defs?: Record<string, s.Schema> | undefined;
                                    patternProperties?: Record<string, s.Schema> | undefined;
                                    additionalProperties?: (s.Schema | false) | undefined;
                                    minProperties?: number | undefined;
                                    maxProperties?: number | undefined;
                                    propertyNames?: s.Schema | undefined;
                                    strict: () => s.ObjectSchema<{
                                        readonly label: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    }, s.Merge<s.IObjectOptions & {
                                        additionalProperties: false;
                                    }>>;
                                    properties: {
                                        readonly label: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    };
                                    required: string[] | undefined;
                                    partial: () => s.ObjectSchema<{
                                        readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    }, s.IObjectOptions>;
                                } & s.Schema<s.ISchemaOptions, {
                                    [x: string]: unknown;
                                    label: string;
                                } | undefined, {
                                    [x: string]: unknown;
                                    label: string;
                                } | undefined>;
                            }, s.Merge<s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }> & {
                                additionalProperties: false;
                            }>>;
                            properties: {
                                readonly mappedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly sourceCardinality: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    multipleOf?: number | undefined;
                                    maximum?: number | undefined;
                                    exclusiveMaximum?: number | undefined;
                                    minimum?: number | undefined;
                                    exclusiveMinimum?: number | undefined;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                readonly with_limit: {
                                    readonly default: number;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                readonly fieldConfig: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    $defs?: Record<string, s.Schema> | undefined;
                                    patternProperties?: Record<string, s.Schema> | undefined;
                                    additionalProperties?: (s.Schema | false) | undefined;
                                    minProperties?: number | undefined;
                                    maxProperties?: number | undefined;
                                    propertyNames?: s.Schema | undefined;
                                    strict: () => s.ObjectSchema<{
                                        readonly label: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    }, s.Merge<s.IObjectOptions & {
                                        additionalProperties: false;
                                    }>>;
                                    properties: {
                                        readonly label: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    };
                                    required: string[] | undefined;
                                    partial: () => s.ObjectSchema<{
                                        readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    }, s.IObjectOptions>;
                                } & s.Schema<s.ISchemaOptions, {
                                    [x: string]: unknown;
                                    label: string;
                                } | undefined, {
                                    [x: string]: unknown;
                                    label: string;
                                } | undefined>;
                            };
                            required: string[] | undefined;
                            partial: () => s.ObjectSchema<{
                                readonly mappedBy: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly sourceCardinality: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                readonly with_limit: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                readonly fieldConfig: s.Schema<s.ISchemaOptions, {
                                    [x: string]: unknown;
                                    label: string;
                                } | undefined, {
                                    [x: string]: unknown;
                                    label: string;
                                } | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        } & s.Schema<s.ISchemaOptions, {
                            required?: boolean | undefined;
                            sourceCardinality?: number | undefined;
                            with_limit?: number | undefined;
                            fieldConfig?: {
                                [x: string]: unknown;
                                label: string;
                            } | undefined;
                            mappedBy?: string | undefined;
                            inversedBy?: string | undefined;
                        } | undefined, {
                            required?: boolean | undefined;
                            sourceCardinality?: number | undefined;
                            with_limit?: number | undefined;
                            fieldConfig?: {
                                [x: string]: unknown;
                                label: string;
                            } | undefined;
                            mappedBy?: string | undefined;
                            inversedBy?: string | undefined;
                        } | undefined>) | ({
                            strict: () => s.ObjectSchema<{
                                readonly mappedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly connectionTable: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly connectionTableMappedName: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            }, s.Merge<s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }> & {
                                additionalProperties: false;
                            }>>;
                            properties: {
                                readonly mappedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly connectionTable: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly connectionTableMappedName: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            };
                            required: string[] | undefined;
                            partial: () => s.ObjectSchema<{
                                readonly mappedBy: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly connectionTable: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly connectionTableMappedName: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        } & s.Schema<s.ISchemaOptions, {
                            required?: boolean | undefined;
                            mappedBy?: string | undefined;
                            inversedBy?: string | undefined;
                            connectionTable?: string | undefined;
                            connectionTableMappedName?: string | undefined;
                        } | undefined, {
                            required?: boolean | undefined;
                            mappedBy?: string | undefined;
                            inversedBy?: string | undefined;
                            connectionTable?: string | undefined;
                            connectionTableMappedName?: string | undefined;
                        } | undefined>) | ({
                            strict: () => s.ObjectSchema<{
                                readonly mappedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly targetCardinality: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    multipleOf?: number | undefined;
                                    maximum?: number | undefined;
                                    exclusiveMaximum?: number | undefined;
                                    minimum?: number | undefined;
                                    exclusiveMinimum?: number | undefined;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                            }, s.Merge<s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }> & {
                                additionalProperties: false;
                            }>>;
                            properties: {
                                readonly mappedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly targetCardinality: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    multipleOf?: number | undefined;
                                    maximum?: number | undefined;
                                    exclusiveMaximum?: number | undefined;
                                    minimum?: number | undefined;
                                    exclusiveMinimum?: number | undefined;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                            };
                            required: string[] | undefined;
                            partial: () => s.ObjectSchema<{
                                readonly mappedBy: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly targetCardinality: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        } & s.Schema<s.ISchemaOptions, {
                            required?: boolean | undefined;
                            mappedBy?: string | undefined;
                            inversedBy?: string | undefined;
                            targetCardinality?: number | undefined;
                        } | undefined, {
                            required?: boolean | undefined;
                            mappedBy?: string | undefined;
                            inversedBy?: string | undefined;
                            targetCardinality?: number | undefined;
                        } | undefined>);
                    }, s.Merge<{
                        readonly title: string;
                    } & {
                        additionalProperties: false;
                    }>>[];
                }>;
            } & s.Schema<s.ISchemaOptions, {
                [x: string]: {
                    config?: {
                        required?: boolean | undefined;
                        sourceCardinality?: number | undefined;
                        with_limit?: number | undefined;
                        fieldConfig?: {
                            [x: string]: unknown;
                            label: string;
                        } | undefined;
                        mappedBy?: string | undefined;
                        inversedBy?: string | undefined;
                    } | {
                        required?: boolean | undefined;
                        mappedBy?: string | undefined;
                        inversedBy?: string | undefined;
                        connectionTable?: string | undefined;
                        connectionTableMappedName?: string | undefined;
                    } | {
                        required?: boolean | undefined;
                        mappedBy?: string | undefined;
                        inversedBy?: string | undefined;
                        targetCardinality?: number | undefined;
                    } | undefined;
                    type: string;
                    target: string;
                    source: string;
                };
            } | undefined, {
                [x: string]: never;
            } | undefined>;
            readonly indices: {
                additionalProperties: s.ObjectSchema<{
                    readonly entity: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                    readonly fields: s.ArraySchema<s.StringSchema<s.IStringOptions> & s.IStringOptions, {
                        readonly minItems: 1;
                    }> & {
                        readonly minItems: 1;
                    };
                    readonly unique: {
                        readonly default: false;
                    } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                }, s.Merge<s.IObjectOptions & {
                    additionalProperties: false;
                }>>;
            } & s.Schema<s.ISchemaOptions, {
                [x: string]: {
                    unique?: boolean | undefined;
                    fields: string[];
                    entity: string;
                };
            } | undefined, {
                [x: string]: {
                    unique?: boolean | undefined;
                    fields: string[];
                    entity: string;
                };
            } | undefined>;
        }, s.Merge<s.IObjectOptions & {
            additionalProperties: false;
        }>> | s.ObjectSchema<{
            readonly enabled: s.Schema<{
                readonly default: false;
            }, boolean, boolean> & {
                readonly default: false;
            };
            readonly basepath: s.StringSchema<{
                readonly default: "/api/media";
            }> & {
                readonly default: "/api/media";
            };
            readonly entity_name: s.StringSchema<{
                readonly default: "media";
            }> & {
                readonly default: "media";
            };
            readonly storage: s.ObjectSchema<{
                readonly body_max_size: {} & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
            }, s.Merge<{
                readonly default: {};
            } & {
                additionalProperties: false;
            }>>;
            readonly adapter: {
                default?: any;
                enum?: (readonly any[] | any[]) | undefined;
                const?: any;
                anyOf: s.ObjectSchema<{
                    readonly type: s.Schema<s.ILiteralOptions, string, string> & s.Merge<s.ILiteralOptions & {
                        const: string;
                    }>;
                    readonly config: s.Schema<s.ISchemaOptions, unknown, unknown>;
                }, s.Merge<{
                    readonly title: string;
                    readonly description: string | undefined;
                } & {
                    additionalProperties: false;
                }>>[];
            } & s.Schema<s.ISchemaOptions, {
                config?: unknown;
                type: string;
            } | undefined, never>;
        }, s.Merge<{
            readonly default: {};
        } & {
            additionalProperties: false;
        }>> | s.ObjectSchema<{
            readonly basepath: s.StringSchema<{
                readonly default: "/api/flows";
            }> & {
                readonly default: "/api/flows";
            };
            readonly flows: s.RecordSchema<s.ObjectSchema<{
                readonly trigger: s.Schema<s.IUnionOptions, {
                    config?: {
                        mode: "sync" | "async";
                    } | {
                        event: string;
                        mode: "sync" | "async";
                    } | {
                        path: string;
                        mode: "sync" | "async";
                        method: "GET" | "POST" | "PATCH" | "PUT" | "DELETE";
                        response_type: "html" | "json" | "text";
                    } | undefined;
                    type: "manual" | "event" | "http";
                }, never> & s.Merge<s.IUnionOptions & {
                    anyOf: s.ObjectSchema<{
                        readonly type: s.Schema<s.ILiteralOptions, "manual" | "event" | "http", "manual" | "event" | "http"> & s.Merge<s.ILiteralOptions & {
                            const: "manual" | "event" | "http";
                        }>;
                        readonly config: ({
                            strict: () => s.ObjectSchema<{
                                readonly mode: s.StringSchema<{
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                }> & {
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                };
                            }, s.Merge<s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }> & {
                                additionalProperties: false;
                            }>>;
                            properties: {
                                readonly mode: s.StringSchema<{
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                }> & {
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                };
                            };
                            required: string[] | undefined;
                            partial: () => s.ObjectSchema<{
                                readonly mode: s.Schema<s.ISchemaOptions, "sync" | "async" | undefined, "sync" | "async" | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        } & s.Schema<s.ISchemaOptions, {
                            mode: "sync" | "async";
                        } | undefined, {
                            mode: "sync" | "async";
                        } | undefined>) | ({
                            strict: () => s.ObjectSchema<{
                                readonly mode: s.StringSchema<{
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                }> & {
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                };
                                readonly event: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            }, s.Merge<s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }> & {
                                additionalProperties: false;
                            }>>;
                            properties: {
                                readonly mode: s.StringSchema<{
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                }> & {
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                };
                                readonly event: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            };
                            required: string[] | undefined;
                            partial: () => s.ObjectSchema<{
                                readonly mode: s.Schema<s.ISchemaOptions, "sync" | "async" | undefined, "sync" | "async" | undefined>;
                                readonly event: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        } & s.Schema<s.ISchemaOptions, {
                            event: string;
                            mode: "sync" | "async";
                        } | undefined, {
                            event: string;
                            mode: "sync" | "async";
                        } | undefined>) | ({
                            strict: () => s.ObjectSchema<{
                                readonly mode: s.StringSchema<{
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                }> & {
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                };
                                readonly path: s.StringSchema<{
                                    readonly pattern: "^/.*$";
                                }> & {
                                    readonly pattern: "^/.*$";
                                };
                                readonly method: s.StringSchema<{
                                    readonly enum: readonly ["GET", "POST", "PUT", "PATCH", "DELETE"];
                                    readonly default: "GET";
                                }> & {
                                    readonly enum: readonly ["GET", "POST", "PUT", "PATCH", "DELETE"];
                                    readonly default: "GET";
                                };
                                readonly response_type: s.StringSchema<{
                                    readonly enum: readonly ["json", "text", "html"];
                                    readonly default: "json";
                                }> & {
                                    readonly enum: readonly ["json", "text", "html"];
                                    readonly default: "json";
                                };
                            }, s.Merge<s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }> & {
                                additionalProperties: false;
                            }>>;
                            properties: {
                                readonly mode: s.StringSchema<{
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                }> & {
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                };
                                readonly path: s.StringSchema<{
                                    readonly pattern: "^/.*$";
                                }> & {
                                    readonly pattern: "^/.*$";
                                };
                                readonly method: s.StringSchema<{
                                    readonly enum: readonly ["GET", "POST", "PUT", "PATCH", "DELETE"];
                                    readonly default: "GET";
                                }> & {
                                    readonly enum: readonly ["GET", "POST", "PUT", "PATCH", "DELETE"];
                                    readonly default: "GET";
                                };
                                readonly response_type: s.StringSchema<{
                                    readonly enum: readonly ["json", "text", "html"];
                                    readonly default: "json";
                                }> & {
                                    readonly enum: readonly ["json", "text", "html"];
                                    readonly default: "json";
                                };
                            };
                            required: string[] | undefined;
                            partial: () => s.ObjectSchema<{
                                readonly mode: s.Schema<s.ISchemaOptions, "sync" | "async" | undefined, "sync" | "async" | undefined>;
                                readonly path: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly method: s.Schema<s.ISchemaOptions, "GET" | "POST" | "PATCH" | "PUT" | "DELETE" | undefined, "GET" | "POST" | "PATCH" | "PUT" | "DELETE" | undefined>;
                                readonly response_type: s.Schema<s.ISchemaOptions, "html" | "json" | "text" | undefined, "html" | "json" | "text" | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        } & s.Schema<s.ISchemaOptions, {
                            path: string;
                            mode: "sync" | "async";
                            method: "GET" | "POST" | "PATCH" | "PUT" | "DELETE";
                            response_type: "html" | "json" | "text";
                        } | undefined, {
                            path: string;
                            mode: "sync" | "async";
                            method: "GET" | "POST" | "PATCH" | "PUT" | "DELETE";
                            response_type: "html" | "json" | "text";
                        } | undefined>);
                    }, s.Merge<{
                        readonly title: string;
                    } & {
                        additionalProperties: false;
                    }>>[];
                }>;
                readonly tasks: {
                    additionalProperties: s.Schema<s.IUnionOptions, {
                        type: "log" | "fetch" | "render" | "subflow";
                        params: {
                            method?: string | undefined;
                            headers?: {
                                key: string;
                                value: string;
                            }[] | undefined;
                            body?: string | undefined;
                            normal?: number | undefined;
                            url: string;
                        } | {
                            delay: number;
                        } | {
                            render: string;
                        } | {
                            flow?: any;
                            input?: any;
                            loop?: boolean | undefined;
                        };
                    }, never> & s.Merge<s.IUnionOptions & {
                        anyOf: s.ObjectSchema<{
                            readonly type: s.Schema<s.ILiteralOptions, "log" | "fetch" | "render" | "subflow", "log" | "fetch" | "render" | "subflow"> & s.Merge<s.ILiteralOptions & {
                                const: "log" | "fetch" | "render" | "subflow";
                            }>;
                            readonly params: s.ObjectSchema<{
                                readonly url: s.StringSchema<{
                                    readonly pattern: "^(http|https)://";
                                }> & {
                                    readonly pattern: "^(http|https)://";
                                };
                                readonly method: {
                                    readonly default: "GET";
                                    readonly enum: string[];
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly headers: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    $defs?: Record<string, s.Schema> | undefined;
                                    contains?: s.Schema | undefined;
                                    minContains?: number | undefined;
                                    maxContains?: number | undefined;
                                    prefixItems?: s.Schema[] | undefined;
                                    uniqueItems?: boolean | undefined;
                                    maxItems?: number | undefined;
                                    minItems?: number | undefined;
                                    readonly items?: s.ObjectSchema<{
                                        readonly key: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                        readonly value: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    }, s.Merge<s.IObjectOptions & {
                                        additionalProperties: false;
                                    }>> | undefined;
                                } & s.Schema<s.ISchemaOptions, {
                                    key: string;
                                    value: string;
                                }[] | undefined, {
                                    key: string;
                                    value: string;
                                }[] | undefined>;
                                readonly body: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly normal: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    multipleOf?: number | undefined;
                                    maximum?: number | undefined;
                                    exclusiveMaximum?: number | undefined;
                                    minimum?: number | undefined;
                                    exclusiveMinimum?: number | undefined;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>> | s.ObjectSchema<{
                                readonly delay: s.Schema<{
                                    readonly default: 10;
                                }, number, number> & {
                                    readonly default: 10;
                                };
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>> | s.ObjectSchema<{
                                readonly render: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>> | s.ObjectSchema<{
                                readonly flow: s.Schema<s.IAnyOptions, any, any> & s.IAnyOptions;
                                readonly input: {
                                    [x: string]: any;
                                    [x: number]: any;
                                } & s.Schema<s.ISchemaOptions, any, any>;
                                readonly loop: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        }, s.Merge<{
                            readonly title: string;
                        } & {
                            additionalProperties: false;
                        }>>[];
                    }>;
                } & s.Schema<s.ISchemaOptions, {
                    [x: string]: {
                        type: "log" | "fetch" | "render" | "subflow";
                        params: {
                            method?: string | undefined;
                            headers?: {
                                key: string;
                                value: string;
                            }[] | undefined;
                            body?: string | undefined;
                            normal?: number | undefined;
                            url: string;
                        } | {
                            delay: number;
                        } | {
                            render: string;
                        } | {
                            flow?: any;
                            input?: any;
                            loop?: boolean | undefined;
                        };
                    };
                } | undefined, {
                    [x: string]: never;
                } | undefined>;
                readonly connections: {
                    additionalProperties: s.ObjectSchema<{
                        readonly source: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                        readonly target: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                        readonly config: s.ObjectSchema<{
                            readonly condition: s.Schema<s.ISchemaOptions, {
                                type: "success";
                            } | {
                                type: "error";
                            } | {
                                path: string;
                                value: string;
                                type: "matches";
                            } | undefined, {
                                type: "error";
                            } | {
                                path: string;
                                value: string;
                                type: "matches";
                            } | {
                                type: "success";
                            } | undefined>;
                            readonly max_retries: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                        }, s.Merge<s.IObjectOptions & {
                            additionalProperties: false;
                        }>>;
                    }, s.Merge<s.IObjectOptions & {
                        additionalProperties: false;
                    }>>;
                } & s.Schema<s.ISchemaOptions, {
                    [x: string]: {
                        config: {
                            condition?: {
                                type: "success";
                            } | {
                                type: "error";
                            } | {
                                path: string;
                                value: string;
                                type: "matches";
                            } | undefined;
                            max_retries?: number | undefined;
                        };
                        target: string;
                        source: string;
                    };
                } | undefined, {
                    [x: string]: {
                        config: {
                            condition?: {
                                type: "error";
                            } | {
                                path: string;
                                value: string;
                                type: "matches";
                            } | {
                                type: "success";
                            } | undefined;
                            max_retries?: number | undefined;
                        };
                        target: string;
                        source: string;
                    };
                } | undefined>;
                readonly start_task: {
                    default?: any;
                    maxLength?: number | undefined;
                    minLength?: number | undefined;
                    pattern?: (string | RegExp) | undefined;
                    format?: string | undefined;
                    enum?: (readonly any[] | any[]) | undefined;
                    const?: any;
                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                readonly responding_task: {
                    default?: any;
                    maxLength?: number | undefined;
                    minLength?: number | undefined;
                    pattern?: (string | RegExp) | undefined;
                    format?: string | undefined;
                    enum?: (readonly any[] | any[]) | undefined;
                    const?: any;
                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
            }, s.Merge<s.IObjectOptions & {
                additionalProperties: false;
            }>>, {
                readonly default: {};
            }>;
        }, s.Merge<s.IObjectOptions & {
            additionalProperties: false;
        }>>;
        flows: s.ObjectSchema<{
            readonly enabled: s.Schema<{
                readonly default: false;
            }, boolean, boolean> & {
                readonly default: false;
            };
            readonly basepath: s.StringSchema<{
                readonly default: "/api/auth";
            }> & {
                readonly default: "/api/auth";
            };
            readonly entity_name: s.StringSchema<{
                readonly default: "users";
            }> & {
                readonly default: "users";
            };
            readonly allow_register: {
                readonly default: true;
            } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
            readonly jwt: s.ObjectSchema<{
                readonly secret: import("bknd/utils").SecretSchema<{
                    default: string;
                }> & {
                    default: string;
                };
                readonly alg: {
                    readonly default: "HS256";
                    readonly enum: ["HS256", "HS384", "HS512"];
                } & s.Schema<s.ISchemaOptions, "HS256" | "HS384" | "HS512" | undefined, "HS256" | "HS384" | "HS512" | undefined>;
                readonly expires: {
                    default?: any;
                    enum?: (readonly any[] | any[]) | undefined;
                    const?: any;
                    multipleOf?: number | undefined;
                    maximum?: number | undefined;
                    exclusiveMaximum?: number | undefined;
                    minimum?: number | undefined;
                    exclusiveMinimum?: number | undefined;
                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                readonly issuer: {
                    default?: any;
                    maxLength?: number | undefined;
                    minLength?: number | undefined;
                    pattern?: (string | RegExp) | undefined;
                    format?: string | undefined;
                    enum?: (readonly any[] | any[]) | undefined;
                    const?: any;
                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                readonly fields: s.ArraySchema<s.StringSchema<s.IStringOptions> & s.IStringOptions, {
                    readonly default: readonly ["id", "email", "role"];
                }> & {
                    readonly default: readonly ["id", "email", "role"];
                };
            }, s.Merge<{
                readonly default: {};
            } & {
                additionalProperties: false;
            }>>;
            readonly cookie: s.ObjectSchema<{
                readonly path: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                readonly sameSite: s.Schema<s.ISchemaOptions, "strict" | "lax" | "none" | undefined, "strict" | "lax" | "none" | undefined>;
                readonly secure: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                readonly httpOnly: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                readonly expires: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                readonly partitioned: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                readonly renew: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                readonly pathSuccess: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                readonly pathLoggedOut: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
            }, s.Merge<s.IObjectOptions & {
                additionalProperties: false;
            }>>;
            readonly strategies: s.RecordSchema<s.Schema<s.IUnionOptions, {
                enabled?: boolean | undefined;
                type: "password" | "oauth" | "custom_oauth";
                config: {
                    rounds?: number | undefined;
                    hashing: "plain" | "sha256" | "bcrypt";
                } | {
                    [x: string]: unknown;
                    name: "google" | "github";
                    type: "oidc" | "oauth2";
                    client: {
                        client_id: string;
                        client_secret: string;
                    };
                } | {
                    name: string;
                    type: "oidc" | "oauth2";
                    client: {
                        [x: string]: unknown;
                        client_id: string;
                        client_secret: string;
                        token_endpoint_auth_method: "client_secret_basic";
                    };
                    as: {
                        code_challenge_methods_supported?: "S256" | undefined;
                        scopes_supported?: string[] | undefined;
                        scope_separator?: string | undefined;
                        authorization_endpoint?: string | undefined;
                        token_endpoint?: string | undefined;
                        userinfo_endpoint?: string | undefined;
                        issuer: string;
                    };
                };
            }, never> & s.Merge<s.IUnionOptions & {
                anyOf: s.ObjectSchema<{
                    readonly enabled: {
                        readonly default: true;
                    } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                    readonly type: s.Schema<s.ILiteralOptions, "password" | "oauth" | "custom_oauth", "password" | "oauth" | "custom_oauth"> & s.Merge<s.ILiteralOptions & {
                        const: "password" | "oauth" | "custom_oauth";
                    }>;
                    readonly config: s.ObjectSchema<{
                        readonly hashing: s.StringSchema<{
                            readonly enum: readonly ["plain", "sha256", "bcrypt"];
                            readonly default: "sha256";
                        }> & {
                            readonly enum: readonly ["plain", "sha256", "bcrypt"];
                            readonly default: "sha256";
                        };
                        readonly rounds: {
                            readonly maximum: 10;
                            readonly minimum: 1;
                        } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                    }, s.Merge<s.IObjectOptions & {
                        additionalProperties: false;
                    }>> | (s.ObjectSchema<{
                        readonly name: s.StringSchema<{
                            readonly enum: ("google" | "github")[];
                        }> & {
                            readonly enum: ("google" | "github")[];
                        };
                        readonly type: s.StringSchema<{
                            readonly enum: readonly ["oidc", "oauth2"];
                            readonly default: "oauth2";
                        }> & {
                            readonly enum: readonly ["oidc", "oauth2"];
                            readonly default: "oauth2";
                        };
                        readonly client: s.ObjectSchema<{
                            readonly client_id: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            readonly client_secret: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                        }, s.Merge<s.IObjectOptions & {
                            additionalProperties: false;
                        }>>;
                    }, {
                        readonly title: "OAuth";
                    }> & {
                        readonly title: "OAuth";
                    }) | s.ObjectSchema<{
                        readonly type: s.StringSchema<{
                            readonly enum: readonly ["oidc", "oauth2"];
                            readonly default: "oidc";
                        }> & {
                            readonly enum: readonly ["oidc", "oauth2"];
                            readonly default: "oidc";
                        };
                        readonly name: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                        readonly client: s.ObjectSchema<{
                            readonly client_id: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            readonly client_secret: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            readonly token_endpoint_auth_method: s.StringSchema<{
                                readonly enum: readonly ["client_secret_basic"];
                            }> & {
                                readonly enum: readonly ["client_secret_basic"];
                            };
                        }, s.IObjectOptions> & s.IObjectOptions;
                        readonly as: s.ObjectSchema<{
                            readonly issuer: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            readonly code_challenge_methods_supported: {
                                readonly enum: ["S256"];
                            } & s.Schema<s.ISchemaOptions, "S256" | undefined, "S256" | undefined>;
                            readonly scopes_supported: {
                                default?: any;
                                enum?: (readonly any[] | any[]) | undefined;
                                const?: any;
                                $defs?: Record<string, s.Schema> | undefined;
                                contains?: s.Schema | undefined;
                                minContains?: number | undefined;
                                maxContains?: number | undefined;
                                prefixItems?: s.Schema[] | undefined;
                                uniqueItems?: boolean | undefined;
                                maxItems?: number | undefined;
                                minItems?: number | undefined;
                                readonly items?: (s.StringSchema<s.IStringOptions> & s.IStringOptions) | undefined;
                            } & s.Schema<s.ISchemaOptions, string[] | undefined, string[] | undefined>;
                            readonly scope_separator: {
                                readonly default: " ";
                            } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            readonly authorization_endpoint: {
                                readonly pattern: "^(https?|wss?)://[^\\s/$.?#].[^\\s]*$";
                            } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            readonly token_endpoint: {
                                readonly pattern: "^(https?|wss?)://[^\\s/$.?#].[^\\s]*$";
                            } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            readonly userinfo_endpoint: {
                                readonly pattern: "^(https?|wss?)://[^\\s/$.?#].[^\\s]*$";
                            } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                        }, s.Merge<s.IObjectOptions & {
                            additionalProperties: false;
                        }>>;
                    }, s.Merge<{
                        readonly title: "Custom OAuth";
                    } & {
                        additionalProperties: false;
                    }>>;
                }, s.Merge<{
                    readonly title: "password" | "oauth" | "custom_oauth";
                } & {
                    additionalProperties: false;
                }>>[];
            }>, {
                readonly title: "Strategies";
                readonly default: {
                    readonly password: {
                        readonly type: "password";
                        readonly enabled: true;
                        readonly config: {
                            readonly hashing: "sha256";
                        };
                    };
                };
            }>;
            readonly guard: {
                default?: any;
                enum?: (readonly any[] | any[]) | undefined;
                const?: any;
                $defs?: Record<string, s.Schema> | undefined;
                patternProperties?: Record<string, s.Schema> | undefined;
                additionalProperties?: (s.Schema | false) | undefined;
                minProperties?: number | undefined;
                maxProperties?: number | undefined;
                propertyNames?: s.Schema | undefined;
                strict: () => s.ObjectSchema<{
                    readonly enabled: {
                        readonly default: false;
                    } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                }, s.Merge<s.IObjectOptions & {
                    additionalProperties: false;
                }>>;
                properties: {
                    readonly enabled: {
                        readonly default: false;
                    } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                };
                required: string[] | undefined;
                partial: () => s.ObjectSchema<{
                    readonly enabled: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                }, s.IObjectOptions>;
            } & s.Schema<s.ISchemaOptions, {
                [x: string]: unknown;
                enabled?: boolean | undefined;
            } | undefined, {
                [x: string]: unknown;
                enabled?: boolean | undefined;
            } | undefined>;
            readonly roles: {
                additionalProperties: s.ObjectSchema<{
                    readonly permissions: {
                        default?: any;
                        enum?: (readonly any[] | any[]) | undefined;
                        const?: any;
                        $defs?: Record<string, s.Schema> | undefined;
                        contains?: s.Schema | undefined;
                        minContains?: number | undefined;
                        maxContains?: number | undefined;
                        prefixItems?: s.Schema[] | undefined;
                        uniqueItems?: boolean | undefined;
                        maxItems?: number | undefined;
                        minItems?: number | undefined;
                        readonly items?: (s.StringSchema<s.IStringOptions> & s.IStringOptions) | undefined;
                    } & s.Schema<s.ISchemaOptions, string[] | undefined, string[] | undefined>;
                    readonly is_default: {
                        default?: any;
                        enum?: (readonly any[] | any[]) | undefined;
                        const?: any;
                    } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                    readonly implicit_allow: {
                        default?: any;
                        enum?: (readonly any[] | any[]) | undefined;
                        const?: any;
                    } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                }, s.Merge<s.IObjectOptions & {
                    additionalProperties: false;
                }>>;
            } & s.Schema<s.ISchemaOptions, {
                [x: string]: {
                    permissions?: string[] | undefined;
                    is_default?: boolean | undefined;
                    implicit_allow?: boolean | undefined;
                };
            } | undefined, {
                [x: string]: {
                    permissions?: string[] | undefined;
                    is_default?: boolean | undefined;
                    implicit_allow?: boolean | undefined;
                };
            } | undefined>;
        }, s.Merge<{
            readonly title: "Authentication";
        } & {
            additionalProperties: false;
        }>> | s.ObjectSchema<{
            readonly cors: s.ObjectSchema<{
                readonly origin: s.StringSchema<{
                    readonly default: "*";
                }> & {
                    readonly default: "*";
                };
                readonly allow_methods: s.ArraySchema<s.StringSchema<{
                    readonly enum: readonly ["GET", "POST", "PATCH", "PUT", "DELETE"];
                }> & {
                    readonly enum: readonly ["GET", "POST", "PATCH", "PUT", "DELETE"];
                }, {
                    readonly default: readonly ["GET", "POST", "PATCH", "PUT", "DELETE"];
                    readonly uniqueItems: true;
                }> & {
                    readonly default: readonly ["GET", "POST", "PATCH", "PUT", "DELETE"];
                    readonly uniqueItems: true;
                };
                readonly allow_headers: s.ArraySchema<s.StringSchema<s.IStringOptions> & s.IStringOptions, {
                    readonly default: readonly ["Content-Type", "Content-Length", "Authorization", "Accept"];
                }> & {
                    readonly default: readonly ["Content-Type", "Content-Length", "Authorization", "Accept"];
                };
                readonly allow_credentials: s.Schema<{
                    readonly default: true;
                }, boolean, boolean> & {
                    readonly default: true;
                };
            }, s.Merge<s.IObjectOptions & {
                additionalProperties: false;
            }>>;
        }, s.Merge<s.IObjectOptions & {
            additionalProperties: false;
        }>> | s.ObjectSchema<{
            readonly basepath: {
                readonly default: "/api/data";
            } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
            readonly default_primary_format: {
                readonly default: "integer";
                readonly enum: readonly ["integer", "uuid"];
            } & s.Schema<s.ISchemaOptions, "integer" | "uuid" | undefined, "integer" | "uuid" | undefined>;
            readonly entities: {
                additionalProperties: s.ObjectSchema<{
                    readonly name: {
                        default?: any;
                        maxLength?: number | undefined;
                        minLength?: number | undefined;
                        pattern?: (string | RegExp) | undefined;
                        format?: string | undefined;
                        enum?: (readonly any[] | any[]) | undefined;
                        const?: any;
                    } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                    readonly type: s.StringSchema<{
                        readonly enum: readonly ["regular", "system", "generated"];
                        readonly default: "regular";
                    }> & {
                        readonly enum: readonly ["regular", "system", "generated"];
                        readonly default: "regular";
                    };
                    readonly config: s.ObjectSchema<{
                        readonly name: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                        readonly name_singular: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                        readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                        readonly sort_field: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                        readonly sort_dir: s.Schema<s.ISchemaOptions, "asc" | "desc" | undefined, "asc" | "desc" | undefined>;
                        readonly primary_format: s.Schema<s.ISchemaOptions, "integer" | "uuid" | undefined, "integer" | "uuid" | undefined>;
                    }, s.Merge<s.IObjectOptions & {
                        additionalProperties: false;
                    }>>;
                    readonly fields: s.RecordSchema<s.Schema<s.IUnionOptions, {
                        name?: string | undefined;
                        config?: {
                            description?: string | undefined;
                            maxLength?: number | undefined;
                            minLength?: number | undefined;
                            pattern?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: string | undefined;
                            html_config?: {
                                [x: string]: unknown;
                                element?: string | undefined;
                                props?: {
                                    [x: string]: string | number;
                                } | undefined;
                            } | undefined;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                        } | {
                            description?: string | undefined;
                            format?: "integer" | "uuid" | undefined;
                            required?: boolean | undefined;
                            default_value?: any;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                        } | {
                            description?: string | undefined;
                            multipleOf?: number | undefined;
                            maximum?: number | undefined;
                            exclusiveMaximum?: number | undefined;
                            minimum?: number | undefined;
                            exclusiveMinimum?: number | undefined;
                            required?: boolean | undefined;
                            default_value?: number | undefined;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                        } | {
                            description?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: boolean | undefined;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                        } | {
                            description?: string | undefined;
                            type?: "date" | "week" | "datetime" | undefined;
                            required?: boolean | undefined;
                            default_value?: any;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                            timezone?: string | undefined;
                            min_date?: string | undefined;
                            max_date?: string | undefined;
                        } | {
                            description?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: string | undefined;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                            options?: {
                                [x: string]: unknown;
                                values: string[];
                                type: "strings";
                            } | {
                                [x: string]: unknown;
                                values: {
                                    [x: string]: unknown;
                                    value: string;
                                    label: string;
                                }[];
                                type: "objects";
                            } | undefined;
                        } | {
                            description?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: any;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                        } | {
                            description?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: any;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                            schema?: any;
                            ui_schema?: any;
                            default_from_schema?: boolean | undefined;
                        } | {
                            description?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: any;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                            target_field?: string | undefined;
                            target_field_type?: "text" | "integer" | undefined;
                            on_delete?: "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined;
                            reference: string;
                            target: string;
                        } | {
                            description?: string | undefined;
                            required?: boolean | undefined;
                            default_value?: any;
                            label?: string | undefined;
                            fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                            hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                            virtual?: boolean | undefined;
                            entity?: string | undefined;
                            min_items?: number | undefined;
                            max_items?: number | undefined;
                            mime_types?: string[] | undefined;
                        } | undefined;
                        type: "number" | "boolean" | "json" | "text" | "enum" | "date" | "media" | "relation" | "primary" | "jsonschema";
                    }, never> & s.Merge<s.IUnionOptions & {
                        anyOf: s.ObjectSchema<{
                            readonly name: {
                                default?: any;
                                maxLength?: number | undefined;
                                minLength?: number | undefined;
                                pattern?: (string | RegExp) | undefined;
                                format?: string | undefined;
                                enum?: (readonly any[] | any[]) | undefined;
                                const?: any;
                            } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            readonly type: s.Schema<s.ILiteralOptions, "number" | "boolean" | "json" | "text" | "enum" | "date" | "media" | "relation" | "primary" | "jsonschema", "number" | "boolean" | "json" | "text" | "enum" | "date" | "media" | "relation" | "primary" | "jsonschema"> & s.Merge<s.ILiteralOptions & {
                                const: "number" | "boolean" | "json" | "text" | "enum" | "date" | "media" | "relation" | "primary" | "jsonschema";
                            }>;
                            readonly config: ({
                                strict: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly minLength: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly maxLength: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly pattern: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly html_config: s.Schema<s.ISchemaOptions, {
                                        [x: string]: unknown;
                                        element?: string | undefined;
                                        props?: {
                                            [x: string]: string | number;
                                        } | undefined;
                                    } | undefined, {
                                        [x: string]: unknown;
                                        element?: string | undefined;
                                        props?: {
                                            [x: string]: string | number;
                                        } | undefined;
                                    } | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly minLength: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly maxLength: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly pattern: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly html_config: s.Schema<s.ISchemaOptions, {
                                        [x: string]: unknown;
                                        element?: string | undefined;
                                        props?: {
                                            [x: string]: string | number;
                                        } | undefined;
                                    } | undefined, {
                                        [x: string]: unknown;
                                        element?: string | undefined;
                                        props?: {
                                            [x: string]: string | number;
                                        } | undefined;
                                    } | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly minLength: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly maxLength: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly pattern: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly html_config: s.Schema<s.ISchemaOptions, {
                                        [x: string]: unknown;
                                        element?: string | undefined;
                                        props?: {
                                            [x: string]: string | number;
                                        } | undefined;
                                    } | undefined, {
                                        [x: string]: unknown;
                                        element?: string | undefined;
                                        props?: {
                                            [x: string]: string | number;
                                        } | undefined;
                                    } | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                maxLength?: number | undefined;
                                minLength?: number | undefined;
                                pattern?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: string | undefined;
                                html_config?: {
                                    [x: string]: unknown;
                                    element?: string | undefined;
                                    props?: {
                                        [x: string]: string | number;
                                    } | undefined;
                                } | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                maxLength?: number | undefined;
                                minLength?: number | undefined;
                                pattern?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: string | undefined;
                                html_config?: {
                                    [x: string]: unknown;
                                    element?: string | undefined;
                                    props?: {
                                        [x: string]: string | number;
                                    } | undefined;
                                } | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly format: s.Schema<s.ISchemaOptions, "integer" | "uuid" | undefined, "integer" | "uuid" | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly format: s.Schema<s.ISchemaOptions, "integer" | "uuid" | undefined, "integer" | "uuid" | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly format: s.Schema<s.ISchemaOptions, "integer" | "uuid" | undefined, "integer" | "uuid" | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                format?: "integer" | "uuid" | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                format?: "integer" | "uuid" | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly minimum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly maximum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly exclusiveMinimum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly exclusiveMaximum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly multipleOf: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly minimum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly maximum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly exclusiveMinimum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly exclusiveMaximum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly multipleOf: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly minimum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly maximum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly exclusiveMinimum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly exclusiveMaximum: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly multipleOf: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                multipleOf?: number | undefined;
                                maximum?: number | undefined;
                                exclusiveMaximum?: number | undefined;
                                minimum?: number | undefined;
                                exclusiveMinimum?: number | undefined;
                                required?: boolean | undefined;
                                default_value?: number | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                multipleOf?: number | undefined;
                                maximum?: number | undefined;
                                exclusiveMaximum?: number | undefined;
                                minimum?: number | undefined;
                                exclusiveMinimum?: number | undefined;
                                required?: boolean | undefined;
                                default_value?: number | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: boolean | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: boolean | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly type: s.Schema<s.ISchemaOptions, "date" | "week" | "datetime" | undefined, "date" | "week" | "datetime" | undefined>;
                                    readonly timezone: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly min_date: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly max_date: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly type: s.Schema<s.ISchemaOptions, "date" | "week" | "datetime" | undefined, "date" | "week" | "datetime" | undefined>;
                                    readonly timezone: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly min_date: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly max_date: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly type: s.Schema<s.ISchemaOptions, "date" | "week" | "datetime" | undefined, "date" | "week" | "datetime" | undefined>;
                                    readonly timezone: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly min_date: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly max_date: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                type?: "date" | "week" | "datetime" | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                timezone?: string | undefined;
                                min_date?: string | undefined;
                                max_date?: string | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                type?: "date" | "week" | "datetime" | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                timezone?: string | undefined;
                                min_date?: string | undefined;
                                max_date?: string | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly options: s.Schema<s.ISchemaOptions, {
                                        [x: string]: unknown;
                                        values: string[];
                                        type: "strings";
                                    } | {
                                        [x: string]: unknown;
                                        values: {
                                            [x: string]: unknown;
                                            value: string;
                                            label: string;
                                        }[];
                                        type: "objects";
                                    } | undefined, any>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly options: s.Schema<s.ISchemaOptions, {
                                        [x: string]: unknown;
                                        values: string[];
                                        type: "strings";
                                    } | {
                                        [x: string]: unknown;
                                        values: {
                                            [x: string]: unknown;
                                            value: string;
                                            label: string;
                                        }[];
                                        type: "objects";
                                    } | undefined, any>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly options: s.Schema<s.ISchemaOptions, {
                                        [x: string]: unknown;
                                        values: string[];
                                        type: "strings";
                                    } | {
                                        [x: string]: unknown;
                                        values: {
                                            [x: string]: unknown;
                                            value: string;
                                            label: string;
                                        }[];
                                        type: "objects";
                                    } | undefined, any>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: string | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                options?: {
                                    [x: string]: unknown;
                                    values: string[];
                                    type: "strings";
                                } | {
                                    [x: string]: unknown;
                                    values: {
                                        [x: string]: unknown;
                                        value: string;
                                        label: string;
                                    }[];
                                    type: "objects";
                                } | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: string | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                options?: any;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly schema: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly ui_schema: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly default_from_schema: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly schema: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly ui_schema: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly default_from_schema: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly schema: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly ui_schema: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly default_from_schema: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                schema?: any;
                                ui_schema?: any;
                                default_from_schema?: boolean | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                schema?: any;
                                ui_schema?: any;
                                default_from_schema?: boolean | undefined;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly reference: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    readonly target: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    readonly target_field: {
                                        readonly default: "id";
                                    } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly target_field_type: {
                                        readonly default: "integer";
                                        readonly enum: ["text", "integer"];
                                    } & s.Schema<s.ISchemaOptions, "text" | "integer" | undefined, "text" | "integer" | undefined>;
                                    readonly on_delete: {
                                        readonly default: "set null";
                                        readonly enum: readonly ["cascade", "set null", "set default", "restrict", "no action"];
                                    } & s.Schema<s.ISchemaOptions, "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined, "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly reference: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    readonly target: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    readonly target_field: {
                                        readonly default: "id";
                                    } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly target_field_type: {
                                        readonly default: "integer";
                                        readonly enum: ["text", "integer"];
                                    } & s.Schema<s.ISchemaOptions, "text" | "integer" | undefined, "text" | "integer" | undefined>;
                                    readonly on_delete: {
                                        readonly default: "set null";
                                        readonly enum: readonly ["cascade", "set null", "set default", "restrict", "no action"];
                                    } & s.Schema<s.ISchemaOptions, "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined, "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly reference: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly target: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly target_field: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly target_field_type: s.Schema<s.ISchemaOptions, "text" | "integer" | undefined, "text" | "integer" | undefined>;
                                    readonly on_delete: s.Schema<s.ISchemaOptions, "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined, "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                target_field?: string | undefined;
                                target_field_type?: "text" | "integer" | undefined;
                                on_delete?: "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined;
                                reference: string;
                                target: string;
                            } | undefined, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                target_field?: string | undefined;
                                target_field_type?: "text" | "integer" | undefined;
                                on_delete?: "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined;
                                reference: string;
                                target: string;
                            } | undefined>) | ({
                                strict: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly entity: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly min_items: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly max_items: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly mime_types: s.Schema<s.ISchemaOptions, string[] | undefined, string[] | undefined>;
                                }, s.Merge<s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }> & {
                                    additionalProperties: false;
                                }>>;
                                properties: {
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly entity: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly min_items: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly max_items: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly mime_types: s.Schema<s.ISchemaOptions, string[] | undefined, string[] | undefined>;
                                };
                                required: string[] | undefined;
                                partial: () => s.ObjectSchema<{
                                    readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly description: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly fillable: s.Schema<s.ISchemaOptions, boolean | ("create" | "read" | "update" | "delete")[] | undefined, boolean | ("create" | "read" | "update" | "delete")[] | undefined>;
                                    readonly hidden: s.Schema<s.ISchemaOptions, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined, boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined>;
                                    readonly virtual: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                    readonly default_value: s.Schema<s.ISchemaOptions, any, any>;
                                    readonly entity: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    readonly min_items: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly max_items: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                    readonly mime_types: s.Schema<s.ISchemaOptions, string[] | undefined, string[] | undefined>;
                                }, s.Merge<s.IObjectOptions & {
                                    additionalProperties: false;
                                }>>;
                            } & s.Schema<s.ISchemaOptions, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                entity?: string | undefined;
                                min_items?: number | undefined;
                                max_items?: number | undefined;
                                mime_types?: string[] | undefined;
                            } | undefined, {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                entity?: string | undefined;
                                min_items?: number | undefined;
                                max_items?: number | undefined;
                                mime_types?: string[] | undefined;
                            } | undefined>);
                        }, s.Merge<{
                            readonly title: "number" | "boolean" | "json" | "text" | "enum" | "date" | "media" | "relation" | "primary" | "jsonschema";
                        } & {
                            additionalProperties: false;
                        }>>[];
                    }>, s.IRecordOptions>;
                }, s.Merge<s.IObjectOptions & {
                    additionalProperties: false;
                }>>;
            } & s.Schema<s.ISchemaOptions, {
                [x: string]: {
                    name?: string | undefined;
                    type: "regular" | "system" | "generated";
                    fields: {
                        [x: string]: {
                            name?: string | undefined;
                            config?: {
                                description?: string | undefined;
                                maxLength?: number | undefined;
                                minLength?: number | undefined;
                                pattern?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: string | undefined;
                                html_config?: {
                                    [x: string]: unknown;
                                    element?: string | undefined;
                                    props?: {
                                        [x: string]: string | number;
                                    } | undefined;
                                } | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | {
                                description?: string | undefined;
                                format?: "integer" | "uuid" | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | {
                                description?: string | undefined;
                                multipleOf?: number | undefined;
                                maximum?: number | undefined;
                                exclusiveMaximum?: number | undefined;
                                minimum?: number | undefined;
                                exclusiveMinimum?: number | undefined;
                                required?: boolean | undefined;
                                default_value?: number | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: boolean | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | {
                                description?: string | undefined;
                                type?: "date" | "week" | "datetime" | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                timezone?: string | undefined;
                                min_date?: string | undefined;
                                max_date?: string | undefined;
                            } | {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: string | undefined;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                options?: {
                                    [x: string]: unknown;
                                    values: string[];
                                    type: "strings";
                                } | {
                                    [x: string]: unknown;
                                    values: {
                                        [x: string]: unknown;
                                        value: string;
                                        label: string;
                                    }[];
                                    type: "objects";
                                } | undefined;
                            } | {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                            } | {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                schema?: any;
                                ui_schema?: any;
                                default_from_schema?: boolean | undefined;
                            } | {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                target_field?: string | undefined;
                                target_field_type?: "text" | "integer" | undefined;
                                on_delete?: "cascade" | "set null" | "set default" | "restrict" | "no action" | undefined;
                                reference: string;
                                target: string;
                            } | {
                                description?: string | undefined;
                                required?: boolean | undefined;
                                default_value?: any;
                                label?: string | undefined;
                                fillable?: boolean | ("create" | "read" | "update" | "delete")[] | undefined;
                                hidden?: boolean | ("table" | "form" | "create" | "read" | "update" | "delete" | "submit")[] | undefined;
                                virtual?: boolean | undefined;
                                entity?: string | undefined;
                                min_items?: number | undefined;
                                max_items?: number | undefined;
                                mime_types?: string[] | undefined;
                            } | undefined;
                            type: "number" | "boolean" | "json" | "text" | "enum" | "date" | "media" | "relation" | "primary" | "jsonschema";
                        };
                    };
                    config: {
                        description?: string | undefined;
                        name?: string | undefined;
                        name_singular?: string | undefined;
                        sort_field?: string | undefined;
                        sort_dir?: "asc" | "desc" | undefined;
                        primary_format?: "integer" | "uuid" | undefined;
                    };
                };
            } | undefined, {
                [x: string]: {
                    name?: string | undefined;
                    type: "regular" | "system" | "generated";
                    fields: {
                        [x: string]: never;
                    };
                    config: {
                        description?: string | undefined;
                        name?: string | undefined;
                        name_singular?: string | undefined;
                        sort_field?: string | undefined;
                        sort_dir?: "asc" | "desc" | undefined;
                        primary_format?: "integer" | "uuid" | undefined;
                    };
                };
            } | undefined>;
            readonly relations: {
                additionalProperties: s.Schema<s.IUnionOptions, {
                    config?: {
                        required?: boolean | undefined;
                        sourceCardinality?: number | undefined;
                        with_limit?: number | undefined;
                        fieldConfig?: {
                            [x: string]: unknown;
                            label: string;
                        } | undefined;
                        mappedBy?: string | undefined;
                        inversedBy?: string | undefined;
                    } | {
                        required?: boolean | undefined;
                        mappedBy?: string | undefined;
                        inversedBy?: string | undefined;
                        connectionTable?: string | undefined;
                        connectionTableMappedName?: string | undefined;
                    } | {
                        required?: boolean | undefined;
                        mappedBy?: string | undefined;
                        inversedBy?: string | undefined;
                        targetCardinality?: number | undefined;
                    } | undefined;
                    type: string;
                    target: string;
                    source: string;
                }, never> & s.Merge<s.IUnionOptions & {
                    anyOf: s.ObjectSchema<{
                        readonly type: s.Schema<s.ILiteralOptions, string, string> & s.Merge<s.ILiteralOptions & {
                            const: string;
                        }>;
                        readonly source: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                        readonly target: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                        readonly config: ({
                            strict: () => s.ObjectSchema<{
                                readonly mappedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly sourceCardinality: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    multipleOf?: number | undefined;
                                    maximum?: number | undefined;
                                    exclusiveMaximum?: number | undefined;
                                    minimum?: number | undefined;
                                    exclusiveMinimum?: number | undefined;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                readonly with_limit: {
                                    readonly default: number;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                readonly fieldConfig: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    $defs?: Record<string, s.Schema> | undefined;
                                    patternProperties?: Record<string, s.Schema> | undefined;
                                    additionalProperties?: (s.Schema | false) | undefined;
                                    minProperties?: number | undefined;
                                    maxProperties?: number | undefined;
                                    propertyNames?: s.Schema | undefined;
                                    strict: () => s.ObjectSchema<{
                                        readonly label: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    }, s.Merge<s.IObjectOptions & {
                                        additionalProperties: false;
                                    }>>;
                                    properties: {
                                        readonly label: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    };
                                    required: string[] | undefined;
                                    partial: () => s.ObjectSchema<{
                                        readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    }, s.IObjectOptions>;
                                } & s.Schema<s.ISchemaOptions, {
                                    [x: string]: unknown;
                                    label: string;
                                } | undefined, {
                                    [x: string]: unknown;
                                    label: string;
                                } | undefined>;
                            }, s.Merge<s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }> & {
                                additionalProperties: false;
                            }>>;
                            properties: {
                                readonly mappedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly sourceCardinality: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    multipleOf?: number | undefined;
                                    maximum?: number | undefined;
                                    exclusiveMaximum?: number | undefined;
                                    minimum?: number | undefined;
                                    exclusiveMinimum?: number | undefined;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                readonly with_limit: {
                                    readonly default: number;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                readonly fieldConfig: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    $defs?: Record<string, s.Schema> | undefined;
                                    patternProperties?: Record<string, s.Schema> | undefined;
                                    additionalProperties?: (s.Schema | false) | undefined;
                                    minProperties?: number | undefined;
                                    maxProperties?: number | undefined;
                                    propertyNames?: s.Schema | undefined;
                                    strict: () => s.ObjectSchema<{
                                        readonly label: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    }, s.Merge<s.IObjectOptions & {
                                        additionalProperties: false;
                                    }>>;
                                    properties: {
                                        readonly label: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    };
                                    required: string[] | undefined;
                                    partial: () => s.ObjectSchema<{
                                        readonly label: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                    }, s.IObjectOptions>;
                                } & s.Schema<s.ISchemaOptions, {
                                    [x: string]: unknown;
                                    label: string;
                                } | undefined, {
                                    [x: string]: unknown;
                                    label: string;
                                } | undefined>;
                            };
                            required: string[] | undefined;
                            partial: () => s.ObjectSchema<{
                                readonly mappedBy: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly sourceCardinality: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                readonly with_limit: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                                readonly fieldConfig: s.Schema<s.ISchemaOptions, {
                                    [x: string]: unknown;
                                    label: string;
                                } | undefined, {
                                    [x: string]: unknown;
                                    label: string;
                                } | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        } & s.Schema<s.ISchemaOptions, {
                            required?: boolean | undefined;
                            sourceCardinality?: number | undefined;
                            with_limit?: number | undefined;
                            fieldConfig?: {
                                [x: string]: unknown;
                                label: string;
                            } | undefined;
                            mappedBy?: string | undefined;
                            inversedBy?: string | undefined;
                        } | undefined, {
                            required?: boolean | undefined;
                            sourceCardinality?: number | undefined;
                            with_limit?: number | undefined;
                            fieldConfig?: {
                                [x: string]: unknown;
                                label: string;
                            } | undefined;
                            mappedBy?: string | undefined;
                            inversedBy?: string | undefined;
                        } | undefined>) | ({
                            strict: () => s.ObjectSchema<{
                                readonly mappedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly connectionTable: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly connectionTableMappedName: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            }, s.Merge<s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }> & {
                                additionalProperties: false;
                            }>>;
                            properties: {
                                readonly mappedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly connectionTable: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly connectionTableMappedName: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            };
                            required: string[] | undefined;
                            partial: () => s.ObjectSchema<{
                                readonly mappedBy: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly connectionTable: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly connectionTableMappedName: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        } & s.Schema<s.ISchemaOptions, {
                            required?: boolean | undefined;
                            mappedBy?: string | undefined;
                            inversedBy?: string | undefined;
                            connectionTable?: string | undefined;
                            connectionTableMappedName?: string | undefined;
                        } | undefined, {
                            required?: boolean | undefined;
                            mappedBy?: string | undefined;
                            inversedBy?: string | undefined;
                            connectionTable?: string | undefined;
                            connectionTableMappedName?: string | undefined;
                        } | undefined>) | ({
                            strict: () => s.ObjectSchema<{
                                readonly mappedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly targetCardinality: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    multipleOf?: number | undefined;
                                    maximum?: number | undefined;
                                    exclusiveMaximum?: number | undefined;
                                    minimum?: number | undefined;
                                    exclusiveMinimum?: number | undefined;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                            }, s.Merge<s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }> & {
                                additionalProperties: false;
                            }>>;
                            properties: {
                                readonly mappedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly targetCardinality: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    multipleOf?: number | undefined;
                                    maximum?: number | undefined;
                                    exclusiveMaximum?: number | undefined;
                                    minimum?: number | undefined;
                                    exclusiveMinimum?: number | undefined;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                            };
                            required: string[] | undefined;
                            partial: () => s.ObjectSchema<{
                                readonly mappedBy: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly inversedBy: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly required: s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                                readonly targetCardinality: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        } & s.Schema<s.ISchemaOptions, {
                            required?: boolean | undefined;
                            mappedBy?: string | undefined;
                            inversedBy?: string | undefined;
                            targetCardinality?: number | undefined;
                        } | undefined, {
                            required?: boolean | undefined;
                            mappedBy?: string | undefined;
                            inversedBy?: string | undefined;
                            targetCardinality?: number | undefined;
                        } | undefined>);
                    }, s.Merge<{
                        readonly title: string;
                    } & {
                        additionalProperties: false;
                    }>>[];
                }>;
            } & s.Schema<s.ISchemaOptions, {
                [x: string]: {
                    config?: {
                        required?: boolean | undefined;
                        sourceCardinality?: number | undefined;
                        with_limit?: number | undefined;
                        fieldConfig?: {
                            [x: string]: unknown;
                            label: string;
                        } | undefined;
                        mappedBy?: string | undefined;
                        inversedBy?: string | undefined;
                    } | {
                        required?: boolean | undefined;
                        mappedBy?: string | undefined;
                        inversedBy?: string | undefined;
                        connectionTable?: string | undefined;
                        connectionTableMappedName?: string | undefined;
                    } | {
                        required?: boolean | undefined;
                        mappedBy?: string | undefined;
                        inversedBy?: string | undefined;
                        targetCardinality?: number | undefined;
                    } | undefined;
                    type: string;
                    target: string;
                    source: string;
                };
            } | undefined, {
                [x: string]: never;
            } | undefined>;
            readonly indices: {
                additionalProperties: s.ObjectSchema<{
                    readonly entity: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                    readonly fields: s.ArraySchema<s.StringSchema<s.IStringOptions> & s.IStringOptions, {
                        readonly minItems: 1;
                    }> & {
                        readonly minItems: 1;
                    };
                    readonly unique: {
                        readonly default: false;
                    } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                }, s.Merge<s.IObjectOptions & {
                    additionalProperties: false;
                }>>;
            } & s.Schema<s.ISchemaOptions, {
                [x: string]: {
                    unique?: boolean | undefined;
                    fields: string[];
                    entity: string;
                };
            } | undefined, {
                [x: string]: {
                    unique?: boolean | undefined;
                    fields: string[];
                    entity: string;
                };
            } | undefined>;
        }, s.Merge<s.IObjectOptions & {
            additionalProperties: false;
        }>> | s.ObjectSchema<{
            readonly enabled: s.Schema<{
                readonly default: false;
            }, boolean, boolean> & {
                readonly default: false;
            };
            readonly basepath: s.StringSchema<{
                readonly default: "/api/media";
            }> & {
                readonly default: "/api/media";
            };
            readonly entity_name: s.StringSchema<{
                readonly default: "media";
            }> & {
                readonly default: "media";
            };
            readonly storage: s.ObjectSchema<{
                readonly body_max_size: {} & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
            }, s.Merge<{
                readonly default: {};
            } & {
                additionalProperties: false;
            }>>;
            readonly adapter: {
                default?: any;
                enum?: (readonly any[] | any[]) | undefined;
                const?: any;
                anyOf: s.ObjectSchema<{
                    readonly type: s.Schema<s.ILiteralOptions, string, string> & s.Merge<s.ILiteralOptions & {
                        const: string;
                    }>;
                    readonly config: s.Schema<s.ISchemaOptions, unknown, unknown>;
                }, s.Merge<{
                    readonly title: string;
                    readonly description: string | undefined;
                } & {
                    additionalProperties: false;
                }>>[];
            } & s.Schema<s.ISchemaOptions, {
                config?: unknown;
                type: string;
            } | undefined, never>;
        }, s.Merge<{
            readonly default: {};
        } & {
            additionalProperties: false;
        }>> | s.ObjectSchema<{
            readonly basepath: s.StringSchema<{
                readonly default: "/api/flows";
            }> & {
                readonly default: "/api/flows";
            };
            readonly flows: s.RecordSchema<s.ObjectSchema<{
                readonly trigger: s.Schema<s.IUnionOptions, {
                    config?: {
                        mode: "sync" | "async";
                    } | {
                        event: string;
                        mode: "sync" | "async";
                    } | {
                        path: string;
                        mode: "sync" | "async";
                        method: "GET" | "POST" | "PATCH" | "PUT" | "DELETE";
                        response_type: "html" | "json" | "text";
                    } | undefined;
                    type: "manual" | "event" | "http";
                }, never> & s.Merge<s.IUnionOptions & {
                    anyOf: s.ObjectSchema<{
                        readonly type: s.Schema<s.ILiteralOptions, "manual" | "event" | "http", "manual" | "event" | "http"> & s.Merge<s.ILiteralOptions & {
                            const: "manual" | "event" | "http";
                        }>;
                        readonly config: ({
                            strict: () => s.ObjectSchema<{
                                readonly mode: s.StringSchema<{
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                }> & {
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                };
                            }, s.Merge<s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }> & {
                                additionalProperties: false;
                            }>>;
                            properties: {
                                readonly mode: s.StringSchema<{
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                }> & {
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                };
                            };
                            required: string[] | undefined;
                            partial: () => s.ObjectSchema<{
                                readonly mode: s.Schema<s.ISchemaOptions, "sync" | "async" | undefined, "sync" | "async" | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        } & s.Schema<s.ISchemaOptions, {
                            mode: "sync" | "async";
                        } | undefined, {
                            mode: "sync" | "async";
                        } | undefined>) | ({
                            strict: () => s.ObjectSchema<{
                                readonly mode: s.StringSchema<{
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                }> & {
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                };
                                readonly event: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            }, s.Merge<s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }> & {
                                additionalProperties: false;
                            }>>;
                            properties: {
                                readonly mode: s.StringSchema<{
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                }> & {
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                };
                                readonly event: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            };
                            required: string[] | undefined;
                            partial: () => s.ObjectSchema<{
                                readonly mode: s.Schema<s.ISchemaOptions, "sync" | "async" | undefined, "sync" | "async" | undefined>;
                                readonly event: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        } & s.Schema<s.ISchemaOptions, {
                            event: string;
                            mode: "sync" | "async";
                        } | undefined, {
                            event: string;
                            mode: "sync" | "async";
                        } | undefined>) | ({
                            strict: () => s.ObjectSchema<{
                                readonly mode: s.StringSchema<{
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                }> & {
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                };
                                readonly path: s.StringSchema<{
                                    readonly pattern: "^/.*$";
                                }> & {
                                    readonly pattern: "^/.*$";
                                };
                                readonly method: s.StringSchema<{
                                    readonly enum: readonly ["GET", "POST", "PUT", "PATCH", "DELETE"];
                                    readonly default: "GET";
                                }> & {
                                    readonly enum: readonly ["GET", "POST", "PUT", "PATCH", "DELETE"];
                                    readonly default: "GET";
                                };
                                readonly response_type: s.StringSchema<{
                                    readonly enum: readonly ["json", "text", "html"];
                                    readonly default: "json";
                                }> & {
                                    readonly enum: readonly ["json", "text", "html"];
                                    readonly default: "json";
                                };
                            }, s.Merge<s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }> & {
                                additionalProperties: false;
                            }>>;
                            properties: {
                                readonly mode: s.StringSchema<{
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                }> & {
                                    readonly enum: readonly ["sync", "async"];
                                    readonly default: "async";
                                };
                                readonly path: s.StringSchema<{
                                    readonly pattern: "^/.*$";
                                }> & {
                                    readonly pattern: "^/.*$";
                                };
                                readonly method: s.StringSchema<{
                                    readonly enum: readonly ["GET", "POST", "PUT", "PATCH", "DELETE"];
                                    readonly default: "GET";
                                }> & {
                                    readonly enum: readonly ["GET", "POST", "PUT", "PATCH", "DELETE"];
                                    readonly default: "GET";
                                };
                                readonly response_type: s.StringSchema<{
                                    readonly enum: readonly ["json", "text", "html"];
                                    readonly default: "json";
                                }> & {
                                    readonly enum: readonly ["json", "text", "html"];
                                    readonly default: "json";
                                };
                            };
                            required: string[] | undefined;
                            partial: () => s.ObjectSchema<{
                                readonly mode: s.Schema<s.ISchemaOptions, "sync" | "async" | undefined, "sync" | "async" | undefined>;
                                readonly path: s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly method: s.Schema<s.ISchemaOptions, "GET" | "POST" | "PATCH" | "PUT" | "DELETE" | undefined, "GET" | "POST" | "PATCH" | "PUT" | "DELETE" | undefined>;
                                readonly response_type: s.Schema<s.ISchemaOptions, "html" | "json" | "text" | undefined, "html" | "json" | "text" | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        } & s.Schema<s.ISchemaOptions, {
                            path: string;
                            mode: "sync" | "async";
                            method: "GET" | "POST" | "PATCH" | "PUT" | "DELETE";
                            response_type: "html" | "json" | "text";
                        } | undefined, {
                            path: string;
                            mode: "sync" | "async";
                            method: "GET" | "POST" | "PATCH" | "PUT" | "DELETE";
                            response_type: "html" | "json" | "text";
                        } | undefined>);
                    }, s.Merge<{
                        readonly title: string;
                    } & {
                        additionalProperties: false;
                    }>>[];
                }>;
                readonly tasks: {
                    additionalProperties: s.Schema<s.IUnionOptions, {
                        type: "log" | "fetch" | "render" | "subflow";
                        params: {
                            method?: string | undefined;
                            headers?: {
                                key: string;
                                value: string;
                            }[] | undefined;
                            body?: string | undefined;
                            normal?: number | undefined;
                            url: string;
                        } | {
                            delay: number;
                        } | {
                            render: string;
                        } | {
                            flow?: any;
                            input?: any;
                            loop?: boolean | undefined;
                        };
                    }, never> & s.Merge<s.IUnionOptions & {
                        anyOf: s.ObjectSchema<{
                            readonly type: s.Schema<s.ILiteralOptions, "log" | "fetch" | "render" | "subflow", "log" | "fetch" | "render" | "subflow"> & s.Merge<s.ILiteralOptions & {
                                const: "log" | "fetch" | "render" | "subflow";
                            }>;
                            readonly params: s.ObjectSchema<{
                                readonly url: s.StringSchema<{
                                    readonly pattern: "^(http|https)://";
                                }> & {
                                    readonly pattern: "^(http|https)://";
                                };
                                readonly method: {
                                    readonly default: "GET";
                                    readonly enum: string[];
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly headers: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    $defs?: Record<string, s.Schema> | undefined;
                                    contains?: s.Schema | undefined;
                                    minContains?: number | undefined;
                                    maxContains?: number | undefined;
                                    prefixItems?: s.Schema[] | undefined;
                                    uniqueItems?: boolean | undefined;
                                    maxItems?: number | undefined;
                                    minItems?: number | undefined;
                                    readonly items?: s.ObjectSchema<{
                                        readonly key: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                        readonly value: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                                    }, s.Merge<s.IObjectOptions & {
                                        additionalProperties: false;
                                    }>> | undefined;
                                } & s.Schema<s.ISchemaOptions, {
                                    key: string;
                                    value: string;
                                }[] | undefined, {
                                    key: string;
                                    value: string;
                                }[] | undefined>;
                                readonly body: {
                                    default?: any;
                                    maxLength?: number | undefined;
                                    minLength?: number | undefined;
                                    pattern?: (string | RegExp) | undefined;
                                    format?: string | undefined;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                                readonly normal: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                    multipleOf?: number | undefined;
                                    maximum?: number | undefined;
                                    exclusiveMaximum?: number | undefined;
                                    minimum?: number | undefined;
                                    exclusiveMinimum?: number | undefined;
                                } & s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>> | s.ObjectSchema<{
                                readonly delay: s.Schema<{
                                    readonly default: 10;
                                }, number, number> & {
                                    readonly default: 10;
                                };
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>> | s.ObjectSchema<{
                                readonly render: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>> | s.ObjectSchema<{
                                readonly flow: s.Schema<s.IAnyOptions, any, any> & s.IAnyOptions;
                                readonly input: {
                                    [x: string]: any;
                                    [x: number]: any;
                                } & s.Schema<s.ISchemaOptions, any, any>;
                                readonly loop: {
                                    default?: any;
                                    enum?: (readonly any[] | any[]) | undefined;
                                    const?: any;
                                } & s.Schema<s.ISchemaOptions, boolean | undefined, boolean | undefined>;
                            }, s.Merge<s.IObjectOptions & {
                                additionalProperties: false;
                            }>>;
                        }, s.Merge<{
                            readonly title: string;
                        } & {
                            additionalProperties: false;
                        }>>[];
                    }>;
                } & s.Schema<s.ISchemaOptions, {
                    [x: string]: {
                        type: "log" | "fetch" | "render" | "subflow";
                        params: {
                            method?: string | undefined;
                            headers?: {
                                key: string;
                                value: string;
                            }[] | undefined;
                            body?: string | undefined;
                            normal?: number | undefined;
                            url: string;
                        } | {
                            delay: number;
                        } | {
                            render: string;
                        } | {
                            flow?: any;
                            input?: any;
                            loop?: boolean | undefined;
                        };
                    };
                } | undefined, {
                    [x: string]: never;
                } | undefined>;
                readonly connections: {
                    additionalProperties: s.ObjectSchema<{
                        readonly source: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                        readonly target: s.StringSchema<s.IStringOptions> & s.IStringOptions;
                        readonly config: s.ObjectSchema<{
                            readonly condition: s.Schema<s.ISchemaOptions, {
                                type: "success";
                            } | {
                                type: "error";
                            } | {
                                path: string;
                                value: string;
                                type: "matches";
                            } | undefined, {
                                type: "error";
                            } | {
                                path: string;
                                value: string;
                                type: "matches";
                            } | {
                                type: "success";
                            } | undefined>;
                            readonly max_retries: s.Schema<s.ISchemaOptions, number | undefined, number | undefined>;
                        }, s.Merge<s.IObjectOptions & {
                            additionalProperties: false;
                        }>>;
                    }, s.Merge<s.IObjectOptions & {
                        additionalProperties: false;
                    }>>;
                } & s.Schema<s.ISchemaOptions, {
                    [x: string]: {
                        config: {
                            condition?: {
                                type: "success";
                            } | {
                                type: "error";
                            } | {
                                path: string;
                                value: string;
                                type: "matches";
                            } | undefined;
                            max_retries?: number | undefined;
                        };
                        target: string;
                        source: string;
                    };
                } | undefined, {
                    [x: string]: {
                        config: {
                            condition?: {
                                type: "error";
                            } | {
                                path: string;
                                value: string;
                                type: "matches";
                            } | {
                                type: "success";
                            } | undefined;
                            max_retries?: number | undefined;
                        };
                        target: string;
                        source: string;
                    };
                } | undefined>;
                readonly start_task: {
                    default?: any;
                    maxLength?: number | undefined;
                    minLength?: number | undefined;
                    pattern?: (string | RegExp) | undefined;
                    format?: string | undefined;
                    enum?: (readonly any[] | any[]) | undefined;
                    const?: any;
                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
                readonly responding_task: {
                    default?: any;
                    maxLength?: number | undefined;
                    minLength?: number | undefined;
                    pattern?: (string | RegExp) | undefined;
                    format?: string | undefined;
                    enum?: (readonly any[] | any[]) | undefined;
                    const?: any;
                } & s.Schema<s.ISchemaOptions, string | undefined, string | undefined>;
            }, s.Merge<s.IObjectOptions & {
                additionalProperties: false;
            }>>, {
                readonly default: {};
            }>;
        }, s.Merge<s.IObjectOptions & {
            additionalProperties: false;
        }>>;
        version: number;
    };
    toJSON(secrets?: boolean): {
        version: number;
    } & ModuleConfigs;
}
export declare function getDefaultSchema(): any;
export declare function getDefaultConfig(): ModuleConfigs;