import type { DerivedPropertiesOnlyOf } from '../../lib/command/types.ts';
import type { FieldType } from '../../lib/jhipster/field-types.ts';
import { type ValidationType } from '../../lib/jhipster/index.ts';
import type { Entity as BaseEntity } from '../../lib/jhipster/types/entity.ts';
import type { Field as BaseField } from '../../lib/jhipster/types/field.ts';
import type { Relationship as BaseRelationship } from '../../lib/jhipster/types/relationship.ts';
import type { FakerWithRandexp } from './support/faker.ts';
type Property = {
    propertyName: string;
    propertyNameCapitalized?: string;
    propertyNameUpperSnakeCase?: string;
    propertyApiDescription?: string;
    skipClient?: boolean;
    skipServer?: boolean;
};
type BaseApplicationAddedFieldProperties = DerivedPropertiesOnlyOf<'fieldType', FieldType> & DerivedPropertiesOnlyOf<'fieldValidation', ValidationType> & {
    path?: string[];
    fieldNameCapitalized: string;
    fieldNameHumanized: string;
    fieldNameUnderscored: string;
    /** @deprecated use propertyTranslationKey */
    fieldTranslationKey?: string;
    propertyTranslationKey?: string;
    fieldApiDescription?: string;
    enumFileName?: string;
    enumValues?: {
        name: string;
        value: string;
    }[];
    fieldValidate?: boolean;
    unique?: boolean;
    maxlength?: number;
    /**
     * Faker template passed to `faker.helpers.fake()`.
     * @see https://fakerjs.dev/api/helpers.html#fake
     */
    fakerTemplate?: string;
    uniqueValue?: any[];
    generateFakeDataFromPattern?: () => string | undefined;
    generateFakeData?: (type?: 'csv' | 'cypress' | 'json-serializable' | 'ts') => any;
    transient?: boolean;
    id?: boolean;
    autoGenerate?: boolean;
    readonly?: boolean;
    sequenceGeneratorName?: string;
    fieldWithContentType?: boolean;
    contentTypeFieldName?: string;
    fieldTypeTimed?: boolean;
    blobContentTypeText?: boolean;
    blobContentTypeImage?: boolean;
    blobContentTypeAny?: boolean;
    fieldTypeBytes?: boolean;
    fieldTypeBinary?: boolean;
    /** @deprecated */
    fieldValidationMinLength: boolean;
    /** @deprecated */
    fieldValidationMaxLength: boolean;
    /** @deprecated */
    fieldValidationMinBytes: boolean;
    /** @deprecated */
    fieldValidationMaxBytes: boolean;
    relatedByOtherEntity?: boolean;
    enumInstance?: string;
    builtIn?: boolean;
    derivedPath?: string[];
};
export type Field = Property & Omit<BaseField, 'fieldType'> & BaseApplicationAddedFieldProperties & ({
    fieldType: string;
    fieldIsEnum: true;
} | {
    fieldType: FieldType;
    fieldIsEnum: false;
});
export declare const mutateField: {
    readonly fieldValidationMaxLength: ({ fieldValidationMaxlength }: Field) => boolean;
    readonly fieldValidationMinLength: ({ fieldValidationMinlength }: Field) => boolean;
    readonly fieldValidationMinBytes: ({ fieldValidationMinbytes }: Field) => boolean;
    readonly fieldValidationMaxBytes: ({ fieldValidationMaxbytes }: Field) => boolean;
    readonly fieldValidateRules?: ("min" | "required" | "pattern" | "max" | "unique" | "minlength" | "maxlength" | "minbytes" | "maxbytes")[] | ((ctx: Field) => ValidationType[] | undefined) | undefined;
    readonly fieldValidationMin: (data: Partial<Record<"fieldValidateRules", ("min" | "required" | "pattern" | "max" | "unique" | "minlength" | "maxlength" | "minbytes" | "maxbytes")[]>>) => boolean;
    readonly fieldValidationRequired: (data: Partial<Record<"fieldValidateRules", ("min" | "required" | "pattern" | "max" | "unique" | "minlength" | "maxlength" | "minbytes" | "maxbytes")[]>>) => boolean;
    readonly fieldValidationPattern: (data: Partial<Record<"fieldValidateRules", ("min" | "required" | "pattern" | "max" | "unique" | "minlength" | "maxlength" | "minbytes" | "maxbytes")[]>>) => boolean;
    readonly fieldValidationMax: (data: Partial<Record<"fieldValidateRules", ("min" | "required" | "pattern" | "max" | "unique" | "minlength" | "maxlength" | "minbytes" | "maxbytes")[]>>) => boolean;
    readonly fieldValidationUnique: (data: Partial<Record<"fieldValidateRules", ("min" | "required" | "pattern" | "max" | "unique" | "minlength" | "maxlength" | "minbytes" | "maxbytes")[]>>) => boolean;
    readonly fieldValidationMinlength: (data: Partial<Record<"fieldValidateRules", ("min" | "required" | "pattern" | "max" | "unique" | "minlength" | "maxlength" | "minbytes" | "maxbytes")[]>>) => boolean;
    readonly fieldValidationMaxlength: (data: Partial<Record<"fieldValidateRules", ("min" | "required" | "pattern" | "max" | "unique" | "minlength" | "maxlength" | "minbytes" | "maxbytes")[]>>) => boolean;
    readonly fieldValidationMinbytes: (data: Partial<Record<"fieldValidateRules", ("min" | "required" | "pattern" | "max" | "unique" | "minlength" | "maxlength" | "minbytes" | "maxbytes")[]>>) => boolean;
    readonly fieldValidationMaxbytes: (data: Partial<Record<"fieldValidateRules", ("min" | "required" | "pattern" | "max" | "unique" | "minlength" | "maxlength" | "minbytes" | "maxbytes")[]>>) => boolean;
    readonly fieldNameCapitalized: ({ fieldName }: Field) => Capitalize<string>;
    readonly fieldNameUnderscored: ({ fieldName }: Field) => string;
    readonly fieldNameHumanized: ({ fieldName }: Field) => string;
    readonly propertyNameCapitalized: ({ propertyName }: Property) => Capitalize<string>;
    readonly propertyNameUpperSnakeCase: ({ propertyName }: Property) => string;
    readonly path: ({ fieldName }: Field) => string[];
    readonly propertyName: ({ fieldName }: Field) => string;
    readonly fieldTypeBlobContent?: "image" | "any" | "text" | ((ctx: Field) => "image" | "any" | "text" | undefined) | undefined;
    readonly blobContentTypeImage: (data: Partial<Record<"fieldTypeBlobContent", "image" | "any" | "text" | undefined>>) => boolean;
    readonly blobContentTypeAny: (data: Partial<Record<"fieldTypeBlobContent", "image" | "any" | "text" | undefined>>) => boolean;
    readonly blobContentTypeText: (data: Partial<Record<"fieldTypeBlobContent", "image" | "any" | "text" | undefined>>) => boolean;
    readonly fieldTypeBytes: ({ fieldTypeByte }: Field) => boolean;
    readonly propertyApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
    readonly skipClient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
    readonly skipServer?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
    readonly options?: Record<string, string | number | boolean> | ((ctx: Field) => Record<string, string | number | boolean> | undefined) | undefined;
    readonly documentation?: string | ((ctx: Field) => string | undefined) | undefined;
    readonly fieldValues?: string | ((ctx: Field) => string | undefined) | undefined;
    readonly fieldTypeDocumentation?: string | ((ctx: Field) => string | undefined) | undefined;
    readonly fieldValuesJavadocs?: Record<string, string> | ((ctx: Field) => Record<string, string> | undefined) | undefined;
    readonly javadoc?: string | ((ctx: Field) => string | undefined) | undefined;
    readonly fieldName?: string | ((ctx: Field) => string) | undefined;
    readonly fieldValidateRulesPattern?: string | ((ctx: Field) => string | undefined) | undefined;
    readonly fieldValidateRulesMaxlength?: number | ((ctx: Field) => number | undefined) | undefined;
    readonly fieldValidateRulesMax?: number | ((ctx: Field) => number | undefined) | undefined;
    readonly fieldValidateRulesMin?: number | ((ctx: Field) => number | undefined) | undefined;
    readonly fieldValidateRulesMinlength?: number | ((ctx: Field) => number | undefined) | undefined;
    readonly fieldValidateRulesMaxbytes?: number | ((ctx: Field) => number | undefined) | undefined;
    readonly fieldValidateRulesMinbytes?: number | ((ctx: Field) => number | undefined) | undefined;
    readonly fieldTypeJavadoc?: string | ((ctx: Field) => string | undefined) | undefined;
    readonly fieldTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
    readonly propertyTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
    readonly fieldApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
    readonly enumFileName?: string | ((ctx: Field) => string | undefined) | undefined;
    readonly enumValues?: {
        name: string;
        value: string;
    }[] | ((ctx: Field) => {
        name: string;
        value: string;
    }[] | undefined) | undefined;
    readonly fieldValidate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
    readonly unique?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
    readonly maxlength?: number | ((ctx: Field) => number | undefined) | undefined;
    readonly fakerTemplate?: string | ((ctx: Field) => string | undefined) | undefined;
    readonly uniqueValue?: any[] | ((ctx: Field) => any[] | undefined) | undefined;
    readonly generateFakeDataFromPattern?: (() => string | undefined) | ((ctx: Field) => (() => string | undefined) | undefined) | undefined;
    readonly generateFakeData?: ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | ((ctx: Field) => ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | undefined) | undefined;
    readonly transient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
    readonly id?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
    readonly autoGenerate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
    readonly readonly?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
    readonly sequenceGeneratorName?: string | ((ctx: Field) => string | undefined) | undefined;
    readonly fieldWithContentType?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
    readonly contentTypeFieldName?: string | ((ctx: Field) => string | undefined) | undefined;
    readonly fieldTypeTimed?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
    readonly fieldTypeBinary?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
    readonly relatedByOtherEntity?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
    readonly enumInstance?: string | ((ctx: Field) => string | undefined) | undefined;
    readonly builtIn?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
    readonly derivedPath?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
    readonly fieldType?: string | ((ctx: Field) => string) | undefined;
    readonly fieldIsEnum: boolean | ((ctx: Field) => boolean);
    readonly __override__: boolean;
    readonly fieldTypeBlob: (boolean | ((ctx: Field) => boolean)) & ((data: {
        propertyName?: string | ((ctx: Field) => string) | undefined;
        propertyNameCapitalized?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyNameUpperSnakeCase?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        skipClient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        skipServer?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        options?: Record<string, string | number | boolean> | ((ctx: Field) => Record<string, string | number | boolean> | undefined) | undefined;
        documentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValues?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeDocumentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValuesJavadocs?: Record<string, string> | ((ctx: Field) => Record<string, string> | undefined) | undefined;
        fieldTypeBlobContent?: "image" | "any" | "text" | ((ctx: Field) => "image" | "any" | "text" | undefined) | undefined;
        javadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldName?: string | ((ctx: Field) => string) | undefined;
        fieldValidateRules?: ValidationType[] | ((ctx: Field) => ValidationType[] | undefined) | undefined;
        fieldValidateRulesPattern?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValidateRulesMaxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMax?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMin?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMaxbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldTypeJavadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        path?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        enumFileName?: string | ((ctx: Field) => string | undefined) | undefined;
        enumValues?: {
            name: string;
            value: string;
        }[] | ((ctx: Field) => {
            name: string;
            value: string;
        }[] | undefined) | undefined;
        fieldValidate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        unique?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        maxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fakerTemplate?: string | ((ctx: Field) => string | undefined) | undefined;
        uniqueValue?: any[] | ((ctx: Field) => any[] | undefined) | undefined;
        generateFakeDataFromPattern?: (() => string | undefined) | ((ctx: Field) => (() => string | undefined) | undefined) | undefined;
        generateFakeData?: ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | ((ctx: Field) => ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | undefined) | undefined;
        transient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        id?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        autoGenerate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        readonly?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        sequenceGeneratorName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldWithContentType?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        contentTypeFieldName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeTimed?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeText?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeImage?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeAny?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBytes?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBinary?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        relatedByOtherEntity?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        enumInstance?: string | ((ctx: Field) => string | undefined) | undefined;
        builtIn?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        derivedPath?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldType?: string | ((ctx: Field) => string) | undefined;
        fieldIsEnum?: boolean | ((ctx: Field) => boolean) | undefined;
        __override__?: boolean | undefined;
        fieldValidationRequired: boolean | ((ctx: Field) => boolean);
        fieldTypeBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeString: boolean | ((ctx: Field) => boolean);
        fieldTypeInteger: boolean | ((ctx: Field) => boolean);
        fieldTypeLong: boolean | ((ctx: Field) => boolean);
        fieldTypeBigDecimal: boolean | ((ctx: Field) => boolean);
        fieldTypeFloat: boolean | ((ctx: Field) => boolean);
        fieldTypeDouble: boolean | ((ctx: Field) => boolean);
        fieldTypeUUID: boolean | ((ctx: Field) => boolean);
        fieldTypeBoolean: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalDate: boolean | ((ctx: Field) => boolean);
        fieldTypeZonedDateTime: boolean | ((ctx: Field) => boolean);
        fieldTypeAnyBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeImageBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeTextBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeInstant: boolean | ((ctx: Field) => boolean);
        fieldTypeDuration: boolean | ((ctx: Field) => boolean);
        fieldTypeByte: boolean | ((ctx: Field) => boolean);
        fieldTypeByteBuffer: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalTime: boolean | ((ctx: Field) => boolean);
        fieldValidationMin: boolean | ((ctx: Field) => boolean);
        fieldValidationPattern: boolean | ((ctx: Field) => boolean);
        fieldValidationMax: boolean | ((ctx: Field) => boolean);
        fieldValidationUnique: boolean | ((ctx: Field) => boolean);
        fieldValidationMinlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinbytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxbytes: boolean | ((ctx: Field) => boolean);
        fieldNameCapitalized: string | ((ctx: Field) => string);
        fieldNameHumanized: string | ((ctx: Field) => string);
        fieldNameUnderscored: string | ((ctx: Field) => string);
        fieldValidationMinLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinBytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxBytes: boolean | ((ctx: Field) => boolean);
    }) => boolean);
    readonly fieldTypeString: (boolean | ((ctx: Field) => boolean)) & ((data: {
        propertyName?: string | ((ctx: Field) => string) | undefined;
        propertyNameCapitalized?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyNameUpperSnakeCase?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        skipClient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        skipServer?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        options?: Record<string, string | number | boolean> | ((ctx: Field) => Record<string, string | number | boolean> | undefined) | undefined;
        documentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValues?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeDocumentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValuesJavadocs?: Record<string, string> | ((ctx: Field) => Record<string, string> | undefined) | undefined;
        fieldTypeBlobContent?: "image" | "any" | "text" | ((ctx: Field) => "image" | "any" | "text" | undefined) | undefined;
        javadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldName?: string | ((ctx: Field) => string) | undefined;
        fieldValidateRules?: ValidationType[] | ((ctx: Field) => ValidationType[] | undefined) | undefined;
        fieldValidateRulesPattern?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValidateRulesMaxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMax?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMin?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMaxbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldTypeJavadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        path?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        enumFileName?: string | ((ctx: Field) => string | undefined) | undefined;
        enumValues?: {
            name: string;
            value: string;
        }[] | ((ctx: Field) => {
            name: string;
            value: string;
        }[] | undefined) | undefined;
        fieldValidate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        unique?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        maxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fakerTemplate?: string | ((ctx: Field) => string | undefined) | undefined;
        uniqueValue?: any[] | ((ctx: Field) => any[] | undefined) | undefined;
        generateFakeDataFromPattern?: (() => string | undefined) | ((ctx: Field) => (() => string | undefined) | undefined) | undefined;
        generateFakeData?: ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | ((ctx: Field) => ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | undefined) | undefined;
        transient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        id?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        autoGenerate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        readonly?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        sequenceGeneratorName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldWithContentType?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        contentTypeFieldName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeTimed?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeText?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeImage?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeAny?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBytes?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBinary?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        relatedByOtherEntity?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        enumInstance?: string | ((ctx: Field) => string | undefined) | undefined;
        builtIn?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        derivedPath?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldType?: string | ((ctx: Field) => string) | undefined;
        fieldIsEnum?: boolean | ((ctx: Field) => boolean) | undefined;
        __override__?: boolean | undefined;
        fieldValidationRequired: boolean | ((ctx: Field) => boolean);
        fieldTypeBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeString: boolean | ((ctx: Field) => boolean);
        fieldTypeInteger: boolean | ((ctx: Field) => boolean);
        fieldTypeLong: boolean | ((ctx: Field) => boolean);
        fieldTypeBigDecimal: boolean | ((ctx: Field) => boolean);
        fieldTypeFloat: boolean | ((ctx: Field) => boolean);
        fieldTypeDouble: boolean | ((ctx: Field) => boolean);
        fieldTypeUUID: boolean | ((ctx: Field) => boolean);
        fieldTypeBoolean: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalDate: boolean | ((ctx: Field) => boolean);
        fieldTypeZonedDateTime: boolean | ((ctx: Field) => boolean);
        fieldTypeAnyBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeImageBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeTextBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeInstant: boolean | ((ctx: Field) => boolean);
        fieldTypeDuration: boolean | ((ctx: Field) => boolean);
        fieldTypeByte: boolean | ((ctx: Field) => boolean);
        fieldTypeByteBuffer: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalTime: boolean | ((ctx: Field) => boolean);
        fieldValidationMin: boolean | ((ctx: Field) => boolean);
        fieldValidationPattern: boolean | ((ctx: Field) => boolean);
        fieldValidationMax: boolean | ((ctx: Field) => boolean);
        fieldValidationUnique: boolean | ((ctx: Field) => boolean);
        fieldValidationMinlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinbytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxbytes: boolean | ((ctx: Field) => boolean);
        fieldNameCapitalized: string | ((ctx: Field) => string);
        fieldNameHumanized: string | ((ctx: Field) => string);
        fieldNameUnderscored: string | ((ctx: Field) => string);
        fieldValidationMinLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinBytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxBytes: boolean | ((ctx: Field) => boolean);
    }) => boolean);
    readonly fieldTypeInteger: (boolean | ((ctx: Field) => boolean)) & ((data: {
        propertyName?: string | ((ctx: Field) => string) | undefined;
        propertyNameCapitalized?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyNameUpperSnakeCase?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        skipClient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        skipServer?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        options?: Record<string, string | number | boolean> | ((ctx: Field) => Record<string, string | number | boolean> | undefined) | undefined;
        documentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValues?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeDocumentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValuesJavadocs?: Record<string, string> | ((ctx: Field) => Record<string, string> | undefined) | undefined;
        fieldTypeBlobContent?: "image" | "any" | "text" | ((ctx: Field) => "image" | "any" | "text" | undefined) | undefined;
        javadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldName?: string | ((ctx: Field) => string) | undefined;
        fieldValidateRules?: ValidationType[] | ((ctx: Field) => ValidationType[] | undefined) | undefined;
        fieldValidateRulesPattern?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValidateRulesMaxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMax?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMin?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMaxbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldTypeJavadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        path?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        enumFileName?: string | ((ctx: Field) => string | undefined) | undefined;
        enumValues?: {
            name: string;
            value: string;
        }[] | ((ctx: Field) => {
            name: string;
            value: string;
        }[] | undefined) | undefined;
        fieldValidate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        unique?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        maxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fakerTemplate?: string | ((ctx: Field) => string | undefined) | undefined;
        uniqueValue?: any[] | ((ctx: Field) => any[] | undefined) | undefined;
        generateFakeDataFromPattern?: (() => string | undefined) | ((ctx: Field) => (() => string | undefined) | undefined) | undefined;
        generateFakeData?: ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | ((ctx: Field) => ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | undefined) | undefined;
        transient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        id?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        autoGenerate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        readonly?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        sequenceGeneratorName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldWithContentType?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        contentTypeFieldName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeTimed?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeText?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeImage?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeAny?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBytes?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBinary?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        relatedByOtherEntity?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        enumInstance?: string | ((ctx: Field) => string | undefined) | undefined;
        builtIn?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        derivedPath?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldType?: string | ((ctx: Field) => string) | undefined;
        fieldIsEnum?: boolean | ((ctx: Field) => boolean) | undefined;
        __override__?: boolean | undefined;
        fieldValidationRequired: boolean | ((ctx: Field) => boolean);
        fieldTypeBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeString: boolean | ((ctx: Field) => boolean);
        fieldTypeInteger: boolean | ((ctx: Field) => boolean);
        fieldTypeLong: boolean | ((ctx: Field) => boolean);
        fieldTypeBigDecimal: boolean | ((ctx: Field) => boolean);
        fieldTypeFloat: boolean | ((ctx: Field) => boolean);
        fieldTypeDouble: boolean | ((ctx: Field) => boolean);
        fieldTypeUUID: boolean | ((ctx: Field) => boolean);
        fieldTypeBoolean: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalDate: boolean | ((ctx: Field) => boolean);
        fieldTypeZonedDateTime: boolean | ((ctx: Field) => boolean);
        fieldTypeAnyBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeImageBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeTextBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeInstant: boolean | ((ctx: Field) => boolean);
        fieldTypeDuration: boolean | ((ctx: Field) => boolean);
        fieldTypeByte: boolean | ((ctx: Field) => boolean);
        fieldTypeByteBuffer: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalTime: boolean | ((ctx: Field) => boolean);
        fieldValidationMin: boolean | ((ctx: Field) => boolean);
        fieldValidationPattern: boolean | ((ctx: Field) => boolean);
        fieldValidationMax: boolean | ((ctx: Field) => boolean);
        fieldValidationUnique: boolean | ((ctx: Field) => boolean);
        fieldValidationMinlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinbytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxbytes: boolean | ((ctx: Field) => boolean);
        fieldNameCapitalized: string | ((ctx: Field) => string);
        fieldNameHumanized: string | ((ctx: Field) => string);
        fieldNameUnderscored: string | ((ctx: Field) => string);
        fieldValidationMinLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinBytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxBytes: boolean | ((ctx: Field) => boolean);
    }) => boolean);
    readonly fieldTypeLong: (boolean | ((ctx: Field) => boolean)) & ((data: {
        propertyName?: string | ((ctx: Field) => string) | undefined;
        propertyNameCapitalized?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyNameUpperSnakeCase?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        skipClient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        skipServer?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        options?: Record<string, string | number | boolean> | ((ctx: Field) => Record<string, string | number | boolean> | undefined) | undefined;
        documentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValues?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeDocumentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValuesJavadocs?: Record<string, string> | ((ctx: Field) => Record<string, string> | undefined) | undefined;
        fieldTypeBlobContent?: "image" | "any" | "text" | ((ctx: Field) => "image" | "any" | "text" | undefined) | undefined;
        javadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldName?: string | ((ctx: Field) => string) | undefined;
        fieldValidateRules?: ValidationType[] | ((ctx: Field) => ValidationType[] | undefined) | undefined;
        fieldValidateRulesPattern?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValidateRulesMaxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMax?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMin?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMaxbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldTypeJavadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        path?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        enumFileName?: string | ((ctx: Field) => string | undefined) | undefined;
        enumValues?: {
            name: string;
            value: string;
        }[] | ((ctx: Field) => {
            name: string;
            value: string;
        }[] | undefined) | undefined;
        fieldValidate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        unique?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        maxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fakerTemplate?: string | ((ctx: Field) => string | undefined) | undefined;
        uniqueValue?: any[] | ((ctx: Field) => any[] | undefined) | undefined;
        generateFakeDataFromPattern?: (() => string | undefined) | ((ctx: Field) => (() => string | undefined) | undefined) | undefined;
        generateFakeData?: ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | ((ctx: Field) => ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | undefined) | undefined;
        transient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        id?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        autoGenerate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        readonly?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        sequenceGeneratorName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldWithContentType?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        contentTypeFieldName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeTimed?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeText?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeImage?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeAny?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBytes?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBinary?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        relatedByOtherEntity?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        enumInstance?: string | ((ctx: Field) => string | undefined) | undefined;
        builtIn?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        derivedPath?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldType?: string | ((ctx: Field) => string) | undefined;
        fieldIsEnum?: boolean | ((ctx: Field) => boolean) | undefined;
        __override__?: boolean | undefined;
        fieldValidationRequired: boolean | ((ctx: Field) => boolean);
        fieldTypeBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeString: boolean | ((ctx: Field) => boolean);
        fieldTypeInteger: boolean | ((ctx: Field) => boolean);
        fieldTypeLong: boolean | ((ctx: Field) => boolean);
        fieldTypeBigDecimal: boolean | ((ctx: Field) => boolean);
        fieldTypeFloat: boolean | ((ctx: Field) => boolean);
        fieldTypeDouble: boolean | ((ctx: Field) => boolean);
        fieldTypeUUID: boolean | ((ctx: Field) => boolean);
        fieldTypeBoolean: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalDate: boolean | ((ctx: Field) => boolean);
        fieldTypeZonedDateTime: boolean | ((ctx: Field) => boolean);
        fieldTypeAnyBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeImageBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeTextBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeInstant: boolean | ((ctx: Field) => boolean);
        fieldTypeDuration: boolean | ((ctx: Field) => boolean);
        fieldTypeByte: boolean | ((ctx: Field) => boolean);
        fieldTypeByteBuffer: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalTime: boolean | ((ctx: Field) => boolean);
        fieldValidationMin: boolean | ((ctx: Field) => boolean);
        fieldValidationPattern: boolean | ((ctx: Field) => boolean);
        fieldValidationMax: boolean | ((ctx: Field) => boolean);
        fieldValidationUnique: boolean | ((ctx: Field) => boolean);
        fieldValidationMinlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinbytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxbytes: boolean | ((ctx: Field) => boolean);
        fieldNameCapitalized: string | ((ctx: Field) => string);
        fieldNameHumanized: string | ((ctx: Field) => string);
        fieldNameUnderscored: string | ((ctx: Field) => string);
        fieldValidationMinLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinBytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxBytes: boolean | ((ctx: Field) => boolean);
    }) => boolean);
    readonly fieldTypeBigDecimal: (boolean | ((ctx: Field) => boolean)) & ((data: {
        propertyName?: string | ((ctx: Field) => string) | undefined;
        propertyNameCapitalized?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyNameUpperSnakeCase?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        skipClient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        skipServer?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        options?: Record<string, string | number | boolean> | ((ctx: Field) => Record<string, string | number | boolean> | undefined) | undefined;
        documentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValues?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeDocumentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValuesJavadocs?: Record<string, string> | ((ctx: Field) => Record<string, string> | undefined) | undefined;
        fieldTypeBlobContent?: "image" | "any" | "text" | ((ctx: Field) => "image" | "any" | "text" | undefined) | undefined;
        javadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldName?: string | ((ctx: Field) => string) | undefined;
        fieldValidateRules?: ValidationType[] | ((ctx: Field) => ValidationType[] | undefined) | undefined;
        fieldValidateRulesPattern?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValidateRulesMaxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMax?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMin?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMaxbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldTypeJavadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        path?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        enumFileName?: string | ((ctx: Field) => string | undefined) | undefined;
        enumValues?: {
            name: string;
            value: string;
        }[] | ((ctx: Field) => {
            name: string;
            value: string;
        }[] | undefined) | undefined;
        fieldValidate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        unique?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        maxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fakerTemplate?: string | ((ctx: Field) => string | undefined) | undefined;
        uniqueValue?: any[] | ((ctx: Field) => any[] | undefined) | undefined;
        generateFakeDataFromPattern?: (() => string | undefined) | ((ctx: Field) => (() => string | undefined) | undefined) | undefined;
        generateFakeData?: ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | ((ctx: Field) => ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | undefined) | undefined;
        transient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        id?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        autoGenerate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        readonly?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        sequenceGeneratorName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldWithContentType?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        contentTypeFieldName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeTimed?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeText?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeImage?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeAny?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBytes?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBinary?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        relatedByOtherEntity?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        enumInstance?: string | ((ctx: Field) => string | undefined) | undefined;
        builtIn?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        derivedPath?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldType?: string | ((ctx: Field) => string) | undefined;
        fieldIsEnum?: boolean | ((ctx: Field) => boolean) | undefined;
        __override__?: boolean | undefined;
        fieldValidationRequired: boolean | ((ctx: Field) => boolean);
        fieldTypeBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeString: boolean | ((ctx: Field) => boolean);
        fieldTypeInteger: boolean | ((ctx: Field) => boolean);
        fieldTypeLong: boolean | ((ctx: Field) => boolean);
        fieldTypeBigDecimal: boolean | ((ctx: Field) => boolean);
        fieldTypeFloat: boolean | ((ctx: Field) => boolean);
        fieldTypeDouble: boolean | ((ctx: Field) => boolean);
        fieldTypeUUID: boolean | ((ctx: Field) => boolean);
        fieldTypeBoolean: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalDate: boolean | ((ctx: Field) => boolean);
        fieldTypeZonedDateTime: boolean | ((ctx: Field) => boolean);
        fieldTypeAnyBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeImageBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeTextBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeInstant: boolean | ((ctx: Field) => boolean);
        fieldTypeDuration: boolean | ((ctx: Field) => boolean);
        fieldTypeByte: boolean | ((ctx: Field) => boolean);
        fieldTypeByteBuffer: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalTime: boolean | ((ctx: Field) => boolean);
        fieldValidationMin: boolean | ((ctx: Field) => boolean);
        fieldValidationPattern: boolean | ((ctx: Field) => boolean);
        fieldValidationMax: boolean | ((ctx: Field) => boolean);
        fieldValidationUnique: boolean | ((ctx: Field) => boolean);
        fieldValidationMinlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinbytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxbytes: boolean | ((ctx: Field) => boolean);
        fieldNameCapitalized: string | ((ctx: Field) => string);
        fieldNameHumanized: string | ((ctx: Field) => string);
        fieldNameUnderscored: string | ((ctx: Field) => string);
        fieldValidationMinLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinBytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxBytes: boolean | ((ctx: Field) => boolean);
    }) => boolean);
    readonly fieldTypeFloat: (boolean | ((ctx: Field) => boolean)) & ((data: {
        propertyName?: string | ((ctx: Field) => string) | undefined;
        propertyNameCapitalized?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyNameUpperSnakeCase?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        skipClient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        skipServer?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        options?: Record<string, string | number | boolean> | ((ctx: Field) => Record<string, string | number | boolean> | undefined) | undefined;
        documentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValues?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeDocumentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValuesJavadocs?: Record<string, string> | ((ctx: Field) => Record<string, string> | undefined) | undefined;
        fieldTypeBlobContent?: "image" | "any" | "text" | ((ctx: Field) => "image" | "any" | "text" | undefined) | undefined;
        javadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldName?: string | ((ctx: Field) => string) | undefined;
        fieldValidateRules?: ValidationType[] | ((ctx: Field) => ValidationType[] | undefined) | undefined;
        fieldValidateRulesPattern?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValidateRulesMaxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMax?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMin?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMaxbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldTypeJavadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        path?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        enumFileName?: string | ((ctx: Field) => string | undefined) | undefined;
        enumValues?: {
            name: string;
            value: string;
        }[] | ((ctx: Field) => {
            name: string;
            value: string;
        }[] | undefined) | undefined;
        fieldValidate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        unique?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        maxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fakerTemplate?: string | ((ctx: Field) => string | undefined) | undefined;
        uniqueValue?: any[] | ((ctx: Field) => any[] | undefined) | undefined;
        generateFakeDataFromPattern?: (() => string | undefined) | ((ctx: Field) => (() => string | undefined) | undefined) | undefined;
        generateFakeData?: ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | ((ctx: Field) => ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | undefined) | undefined;
        transient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        id?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        autoGenerate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        readonly?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        sequenceGeneratorName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldWithContentType?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        contentTypeFieldName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeTimed?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeText?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeImage?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeAny?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBytes?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBinary?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        relatedByOtherEntity?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        enumInstance?: string | ((ctx: Field) => string | undefined) | undefined;
        builtIn?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        derivedPath?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldType?: string | ((ctx: Field) => string) | undefined;
        fieldIsEnum?: boolean | ((ctx: Field) => boolean) | undefined;
        __override__?: boolean | undefined;
        fieldValidationRequired: boolean | ((ctx: Field) => boolean);
        fieldTypeBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeString: boolean | ((ctx: Field) => boolean);
        fieldTypeInteger: boolean | ((ctx: Field) => boolean);
        fieldTypeLong: boolean | ((ctx: Field) => boolean);
        fieldTypeBigDecimal: boolean | ((ctx: Field) => boolean);
        fieldTypeFloat: boolean | ((ctx: Field) => boolean);
        fieldTypeDouble: boolean | ((ctx: Field) => boolean);
        fieldTypeUUID: boolean | ((ctx: Field) => boolean);
        fieldTypeBoolean: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalDate: boolean | ((ctx: Field) => boolean);
        fieldTypeZonedDateTime: boolean | ((ctx: Field) => boolean);
        fieldTypeAnyBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeImageBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeTextBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeInstant: boolean | ((ctx: Field) => boolean);
        fieldTypeDuration: boolean | ((ctx: Field) => boolean);
        fieldTypeByte: boolean | ((ctx: Field) => boolean);
        fieldTypeByteBuffer: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalTime: boolean | ((ctx: Field) => boolean);
        fieldValidationMin: boolean | ((ctx: Field) => boolean);
        fieldValidationPattern: boolean | ((ctx: Field) => boolean);
        fieldValidationMax: boolean | ((ctx: Field) => boolean);
        fieldValidationUnique: boolean | ((ctx: Field) => boolean);
        fieldValidationMinlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinbytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxbytes: boolean | ((ctx: Field) => boolean);
        fieldNameCapitalized: string | ((ctx: Field) => string);
        fieldNameHumanized: string | ((ctx: Field) => string);
        fieldNameUnderscored: string | ((ctx: Field) => string);
        fieldValidationMinLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinBytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxBytes: boolean | ((ctx: Field) => boolean);
    }) => boolean);
    readonly fieldTypeDouble: (boolean | ((ctx: Field) => boolean)) & ((data: {
        propertyName?: string | ((ctx: Field) => string) | undefined;
        propertyNameCapitalized?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyNameUpperSnakeCase?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        skipClient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        skipServer?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        options?: Record<string, string | number | boolean> | ((ctx: Field) => Record<string, string | number | boolean> | undefined) | undefined;
        documentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValues?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeDocumentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValuesJavadocs?: Record<string, string> | ((ctx: Field) => Record<string, string> | undefined) | undefined;
        fieldTypeBlobContent?: "image" | "any" | "text" | ((ctx: Field) => "image" | "any" | "text" | undefined) | undefined;
        javadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldName?: string | ((ctx: Field) => string) | undefined;
        fieldValidateRules?: ValidationType[] | ((ctx: Field) => ValidationType[] | undefined) | undefined;
        fieldValidateRulesPattern?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValidateRulesMaxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMax?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMin?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMaxbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldTypeJavadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        path?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        enumFileName?: string | ((ctx: Field) => string | undefined) | undefined;
        enumValues?: {
            name: string;
            value: string;
        }[] | ((ctx: Field) => {
            name: string;
            value: string;
        }[] | undefined) | undefined;
        fieldValidate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        unique?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        maxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fakerTemplate?: string | ((ctx: Field) => string | undefined) | undefined;
        uniqueValue?: any[] | ((ctx: Field) => any[] | undefined) | undefined;
        generateFakeDataFromPattern?: (() => string | undefined) | ((ctx: Field) => (() => string | undefined) | undefined) | undefined;
        generateFakeData?: ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | ((ctx: Field) => ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | undefined) | undefined;
        transient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        id?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        autoGenerate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        readonly?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        sequenceGeneratorName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldWithContentType?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        contentTypeFieldName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeTimed?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeText?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeImage?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeAny?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBytes?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBinary?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        relatedByOtherEntity?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        enumInstance?: string | ((ctx: Field) => string | undefined) | undefined;
        builtIn?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        derivedPath?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldType?: string | ((ctx: Field) => string) | undefined;
        fieldIsEnum?: boolean | ((ctx: Field) => boolean) | undefined;
        __override__?: boolean | undefined;
        fieldValidationRequired: boolean | ((ctx: Field) => boolean);
        fieldTypeBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeString: boolean | ((ctx: Field) => boolean);
        fieldTypeInteger: boolean | ((ctx: Field) => boolean);
        fieldTypeLong: boolean | ((ctx: Field) => boolean);
        fieldTypeBigDecimal: boolean | ((ctx: Field) => boolean);
        fieldTypeFloat: boolean | ((ctx: Field) => boolean);
        fieldTypeDouble: boolean | ((ctx: Field) => boolean);
        fieldTypeUUID: boolean | ((ctx: Field) => boolean);
        fieldTypeBoolean: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalDate: boolean | ((ctx: Field) => boolean);
        fieldTypeZonedDateTime: boolean | ((ctx: Field) => boolean);
        fieldTypeAnyBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeImageBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeTextBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeInstant: boolean | ((ctx: Field) => boolean);
        fieldTypeDuration: boolean | ((ctx: Field) => boolean);
        fieldTypeByte: boolean | ((ctx: Field) => boolean);
        fieldTypeByteBuffer: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalTime: boolean | ((ctx: Field) => boolean);
        fieldValidationMin: boolean | ((ctx: Field) => boolean);
        fieldValidationPattern: boolean | ((ctx: Field) => boolean);
        fieldValidationMax: boolean | ((ctx: Field) => boolean);
        fieldValidationUnique: boolean | ((ctx: Field) => boolean);
        fieldValidationMinlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinbytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxbytes: boolean | ((ctx: Field) => boolean);
        fieldNameCapitalized: string | ((ctx: Field) => string);
        fieldNameHumanized: string | ((ctx: Field) => string);
        fieldNameUnderscored: string | ((ctx: Field) => string);
        fieldValidationMinLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinBytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxBytes: boolean | ((ctx: Field) => boolean);
    }) => boolean);
    readonly fieldTypeUUID: (boolean | ((ctx: Field) => boolean)) & ((data: {
        propertyName?: string | ((ctx: Field) => string) | undefined;
        propertyNameCapitalized?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyNameUpperSnakeCase?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        skipClient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        skipServer?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        options?: Record<string, string | number | boolean> | ((ctx: Field) => Record<string, string | number | boolean> | undefined) | undefined;
        documentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValues?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeDocumentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValuesJavadocs?: Record<string, string> | ((ctx: Field) => Record<string, string> | undefined) | undefined;
        fieldTypeBlobContent?: "image" | "any" | "text" | ((ctx: Field) => "image" | "any" | "text" | undefined) | undefined;
        javadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldName?: string | ((ctx: Field) => string) | undefined;
        fieldValidateRules?: ValidationType[] | ((ctx: Field) => ValidationType[] | undefined) | undefined;
        fieldValidateRulesPattern?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValidateRulesMaxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMax?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMin?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMaxbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldTypeJavadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        path?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        enumFileName?: string | ((ctx: Field) => string | undefined) | undefined;
        enumValues?: {
            name: string;
            value: string;
        }[] | ((ctx: Field) => {
            name: string;
            value: string;
        }[] | undefined) | undefined;
        fieldValidate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        unique?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        maxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fakerTemplate?: string | ((ctx: Field) => string | undefined) | undefined;
        uniqueValue?: any[] | ((ctx: Field) => any[] | undefined) | undefined;
        generateFakeDataFromPattern?: (() => string | undefined) | ((ctx: Field) => (() => string | undefined) | undefined) | undefined;
        generateFakeData?: ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | ((ctx: Field) => ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | undefined) | undefined;
        transient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        id?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        autoGenerate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        readonly?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        sequenceGeneratorName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldWithContentType?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        contentTypeFieldName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeTimed?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeText?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeImage?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeAny?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBytes?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBinary?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        relatedByOtherEntity?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        enumInstance?: string | ((ctx: Field) => string | undefined) | undefined;
        builtIn?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        derivedPath?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldType?: string | ((ctx: Field) => string) | undefined;
        fieldIsEnum?: boolean | ((ctx: Field) => boolean) | undefined;
        __override__?: boolean | undefined;
        fieldValidationRequired: boolean | ((ctx: Field) => boolean);
        fieldTypeBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeString: boolean | ((ctx: Field) => boolean);
        fieldTypeInteger: boolean | ((ctx: Field) => boolean);
        fieldTypeLong: boolean | ((ctx: Field) => boolean);
        fieldTypeBigDecimal: boolean | ((ctx: Field) => boolean);
        fieldTypeFloat: boolean | ((ctx: Field) => boolean);
        fieldTypeDouble: boolean | ((ctx: Field) => boolean);
        fieldTypeUUID: boolean | ((ctx: Field) => boolean);
        fieldTypeBoolean: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalDate: boolean | ((ctx: Field) => boolean);
        fieldTypeZonedDateTime: boolean | ((ctx: Field) => boolean);
        fieldTypeAnyBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeImageBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeTextBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeInstant: boolean | ((ctx: Field) => boolean);
        fieldTypeDuration: boolean | ((ctx: Field) => boolean);
        fieldTypeByte: boolean | ((ctx: Field) => boolean);
        fieldTypeByteBuffer: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalTime: boolean | ((ctx: Field) => boolean);
        fieldValidationMin: boolean | ((ctx: Field) => boolean);
        fieldValidationPattern: boolean | ((ctx: Field) => boolean);
        fieldValidationMax: boolean | ((ctx: Field) => boolean);
        fieldValidationUnique: boolean | ((ctx: Field) => boolean);
        fieldValidationMinlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinbytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxbytes: boolean | ((ctx: Field) => boolean);
        fieldNameCapitalized: string | ((ctx: Field) => string);
        fieldNameHumanized: string | ((ctx: Field) => string);
        fieldNameUnderscored: string | ((ctx: Field) => string);
        fieldValidationMinLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinBytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxBytes: boolean | ((ctx: Field) => boolean);
    }) => boolean);
    readonly fieldTypeBoolean: (boolean | ((ctx: Field) => boolean)) & ((data: {
        propertyName?: string | ((ctx: Field) => string) | undefined;
        propertyNameCapitalized?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyNameUpperSnakeCase?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        skipClient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        skipServer?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        options?: Record<string, string | number | boolean> | ((ctx: Field) => Record<string, string | number | boolean> | undefined) | undefined;
        documentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValues?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeDocumentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValuesJavadocs?: Record<string, string> | ((ctx: Field) => Record<string, string> | undefined) | undefined;
        fieldTypeBlobContent?: "image" | "any" | "text" | ((ctx: Field) => "image" | "any" | "text" | undefined) | undefined;
        javadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldName?: string | ((ctx: Field) => string) | undefined;
        fieldValidateRules?: ValidationType[] | ((ctx: Field) => ValidationType[] | undefined) | undefined;
        fieldValidateRulesPattern?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValidateRulesMaxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMax?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMin?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMaxbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldTypeJavadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        path?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        enumFileName?: string | ((ctx: Field) => string | undefined) | undefined;
        enumValues?: {
            name: string;
            value: string;
        }[] | ((ctx: Field) => {
            name: string;
            value: string;
        }[] | undefined) | undefined;
        fieldValidate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        unique?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        maxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fakerTemplate?: string | ((ctx: Field) => string | undefined) | undefined;
        uniqueValue?: any[] | ((ctx: Field) => any[] | undefined) | undefined;
        generateFakeDataFromPattern?: (() => string | undefined) | ((ctx: Field) => (() => string | undefined) | undefined) | undefined;
        generateFakeData?: ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | ((ctx: Field) => ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | undefined) | undefined;
        transient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        id?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        autoGenerate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        readonly?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        sequenceGeneratorName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldWithContentType?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        contentTypeFieldName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeTimed?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeText?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeImage?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeAny?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBytes?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBinary?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        relatedByOtherEntity?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        enumInstance?: string | ((ctx: Field) => string | undefined) | undefined;
        builtIn?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        derivedPath?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldType?: string | ((ctx: Field) => string) | undefined;
        fieldIsEnum?: boolean | ((ctx: Field) => boolean) | undefined;
        __override__?: boolean | undefined;
        fieldValidationRequired: boolean | ((ctx: Field) => boolean);
        fieldTypeBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeString: boolean | ((ctx: Field) => boolean);
        fieldTypeInteger: boolean | ((ctx: Field) => boolean);
        fieldTypeLong: boolean | ((ctx: Field) => boolean);
        fieldTypeBigDecimal: boolean | ((ctx: Field) => boolean);
        fieldTypeFloat: boolean | ((ctx: Field) => boolean);
        fieldTypeDouble: boolean | ((ctx: Field) => boolean);
        fieldTypeUUID: boolean | ((ctx: Field) => boolean);
        fieldTypeBoolean: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalDate: boolean | ((ctx: Field) => boolean);
        fieldTypeZonedDateTime: boolean | ((ctx: Field) => boolean);
        fieldTypeAnyBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeImageBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeTextBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeInstant: boolean | ((ctx: Field) => boolean);
        fieldTypeDuration: boolean | ((ctx: Field) => boolean);
        fieldTypeByte: boolean | ((ctx: Field) => boolean);
        fieldTypeByteBuffer: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalTime: boolean | ((ctx: Field) => boolean);
        fieldValidationMin: boolean | ((ctx: Field) => boolean);
        fieldValidationPattern: boolean | ((ctx: Field) => boolean);
        fieldValidationMax: boolean | ((ctx: Field) => boolean);
        fieldValidationUnique: boolean | ((ctx: Field) => boolean);
        fieldValidationMinlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinbytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxbytes: boolean | ((ctx: Field) => boolean);
        fieldNameCapitalized: string | ((ctx: Field) => string);
        fieldNameHumanized: string | ((ctx: Field) => string);
        fieldNameUnderscored: string | ((ctx: Field) => string);
        fieldValidationMinLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinBytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxBytes: boolean | ((ctx: Field) => boolean);
    }) => boolean);
    readonly fieldTypeLocalDate: (boolean | ((ctx: Field) => boolean)) & ((data: {
        propertyName?: string | ((ctx: Field) => string) | undefined;
        propertyNameCapitalized?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyNameUpperSnakeCase?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        skipClient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        skipServer?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        options?: Record<string, string | number | boolean> | ((ctx: Field) => Record<string, string | number | boolean> | undefined) | undefined;
        documentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValues?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeDocumentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValuesJavadocs?: Record<string, string> | ((ctx: Field) => Record<string, string> | undefined) | undefined;
        fieldTypeBlobContent?: "image" | "any" | "text" | ((ctx: Field) => "image" | "any" | "text" | undefined) | undefined;
        javadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldName?: string | ((ctx: Field) => string) | undefined;
        fieldValidateRules?: ValidationType[] | ((ctx: Field) => ValidationType[] | undefined) | undefined;
        fieldValidateRulesPattern?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValidateRulesMaxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMax?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMin?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMaxbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldTypeJavadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        path?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        enumFileName?: string | ((ctx: Field) => string | undefined) | undefined;
        enumValues?: {
            name: string;
            value: string;
        }[] | ((ctx: Field) => {
            name: string;
            value: string;
        }[] | undefined) | undefined;
        fieldValidate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        unique?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        maxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fakerTemplate?: string | ((ctx: Field) => string | undefined) | undefined;
        uniqueValue?: any[] | ((ctx: Field) => any[] | undefined) | undefined;
        generateFakeDataFromPattern?: (() => string | undefined) | ((ctx: Field) => (() => string | undefined) | undefined) | undefined;
        generateFakeData?: ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | ((ctx: Field) => ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | undefined) | undefined;
        transient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        id?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        autoGenerate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        readonly?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        sequenceGeneratorName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldWithContentType?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        contentTypeFieldName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeTimed?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeText?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeImage?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeAny?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBytes?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBinary?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        relatedByOtherEntity?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        enumInstance?: string | ((ctx: Field) => string | undefined) | undefined;
        builtIn?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        derivedPath?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldType?: string | ((ctx: Field) => string) | undefined;
        fieldIsEnum?: boolean | ((ctx: Field) => boolean) | undefined;
        __override__?: boolean | undefined;
        fieldValidationRequired: boolean | ((ctx: Field) => boolean);
        fieldTypeBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeString: boolean | ((ctx: Field) => boolean);
        fieldTypeInteger: boolean | ((ctx: Field) => boolean);
        fieldTypeLong: boolean | ((ctx: Field) => boolean);
        fieldTypeBigDecimal: boolean | ((ctx: Field) => boolean);
        fieldTypeFloat: boolean | ((ctx: Field) => boolean);
        fieldTypeDouble: boolean | ((ctx: Field) => boolean);
        fieldTypeUUID: boolean | ((ctx: Field) => boolean);
        fieldTypeBoolean: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalDate: boolean | ((ctx: Field) => boolean);
        fieldTypeZonedDateTime: boolean | ((ctx: Field) => boolean);
        fieldTypeAnyBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeImageBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeTextBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeInstant: boolean | ((ctx: Field) => boolean);
        fieldTypeDuration: boolean | ((ctx: Field) => boolean);
        fieldTypeByte: boolean | ((ctx: Field) => boolean);
        fieldTypeByteBuffer: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalTime: boolean | ((ctx: Field) => boolean);
        fieldValidationMin: boolean | ((ctx: Field) => boolean);
        fieldValidationPattern: boolean | ((ctx: Field) => boolean);
        fieldValidationMax: boolean | ((ctx: Field) => boolean);
        fieldValidationUnique: boolean | ((ctx: Field) => boolean);
        fieldValidationMinlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinbytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxbytes: boolean | ((ctx: Field) => boolean);
        fieldNameCapitalized: string | ((ctx: Field) => string);
        fieldNameHumanized: string | ((ctx: Field) => string);
        fieldNameUnderscored: string | ((ctx: Field) => string);
        fieldValidationMinLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinBytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxBytes: boolean | ((ctx: Field) => boolean);
    }) => boolean);
    readonly fieldTypeZonedDateTime: (boolean | ((ctx: Field) => boolean)) & ((data: {
        propertyName?: string | ((ctx: Field) => string) | undefined;
        propertyNameCapitalized?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyNameUpperSnakeCase?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        skipClient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        skipServer?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        options?: Record<string, string | number | boolean> | ((ctx: Field) => Record<string, string | number | boolean> | undefined) | undefined;
        documentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValues?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeDocumentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValuesJavadocs?: Record<string, string> | ((ctx: Field) => Record<string, string> | undefined) | undefined;
        fieldTypeBlobContent?: "image" | "any" | "text" | ((ctx: Field) => "image" | "any" | "text" | undefined) | undefined;
        javadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldName?: string | ((ctx: Field) => string) | undefined;
        fieldValidateRules?: ValidationType[] | ((ctx: Field) => ValidationType[] | undefined) | undefined;
        fieldValidateRulesPattern?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValidateRulesMaxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMax?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMin?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMaxbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldTypeJavadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        path?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        enumFileName?: string | ((ctx: Field) => string | undefined) | undefined;
        enumValues?: {
            name: string;
            value: string;
        }[] | ((ctx: Field) => {
            name: string;
            value: string;
        }[] | undefined) | undefined;
        fieldValidate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        unique?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        maxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fakerTemplate?: string | ((ctx: Field) => string | undefined) | undefined;
        uniqueValue?: any[] | ((ctx: Field) => any[] | undefined) | undefined;
        generateFakeDataFromPattern?: (() => string | undefined) | ((ctx: Field) => (() => string | undefined) | undefined) | undefined;
        generateFakeData?: ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | ((ctx: Field) => ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | undefined) | undefined;
        transient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        id?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        autoGenerate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        readonly?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        sequenceGeneratorName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldWithContentType?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        contentTypeFieldName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeTimed?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeText?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeImage?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeAny?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBytes?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBinary?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        relatedByOtherEntity?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        enumInstance?: string | ((ctx: Field) => string | undefined) | undefined;
        builtIn?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        derivedPath?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldType?: string | ((ctx: Field) => string) | undefined;
        fieldIsEnum?: boolean | ((ctx: Field) => boolean) | undefined;
        __override__?: boolean | undefined;
        fieldValidationRequired: boolean | ((ctx: Field) => boolean);
        fieldTypeBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeString: boolean | ((ctx: Field) => boolean);
        fieldTypeInteger: boolean | ((ctx: Field) => boolean);
        fieldTypeLong: boolean | ((ctx: Field) => boolean);
        fieldTypeBigDecimal: boolean | ((ctx: Field) => boolean);
        fieldTypeFloat: boolean | ((ctx: Field) => boolean);
        fieldTypeDouble: boolean | ((ctx: Field) => boolean);
        fieldTypeUUID: boolean | ((ctx: Field) => boolean);
        fieldTypeBoolean: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalDate: boolean | ((ctx: Field) => boolean);
        fieldTypeZonedDateTime: boolean | ((ctx: Field) => boolean);
        fieldTypeAnyBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeImageBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeTextBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeInstant: boolean | ((ctx: Field) => boolean);
        fieldTypeDuration: boolean | ((ctx: Field) => boolean);
        fieldTypeByte: boolean | ((ctx: Field) => boolean);
        fieldTypeByteBuffer: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalTime: boolean | ((ctx: Field) => boolean);
        fieldValidationMin: boolean | ((ctx: Field) => boolean);
        fieldValidationPattern: boolean | ((ctx: Field) => boolean);
        fieldValidationMax: boolean | ((ctx: Field) => boolean);
        fieldValidationUnique: boolean | ((ctx: Field) => boolean);
        fieldValidationMinlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinbytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxbytes: boolean | ((ctx: Field) => boolean);
        fieldNameCapitalized: string | ((ctx: Field) => string);
        fieldNameHumanized: string | ((ctx: Field) => string);
        fieldNameUnderscored: string | ((ctx: Field) => string);
        fieldValidationMinLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinBytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxBytes: boolean | ((ctx: Field) => boolean);
    }) => boolean);
    readonly fieldTypeAnyBlob: (boolean | ((ctx: Field) => boolean)) & ((data: {
        propertyName?: string | ((ctx: Field) => string) | undefined;
        propertyNameCapitalized?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyNameUpperSnakeCase?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        skipClient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        skipServer?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        options?: Record<string, string | number | boolean> | ((ctx: Field) => Record<string, string | number | boolean> | undefined) | undefined;
        documentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValues?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeDocumentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValuesJavadocs?: Record<string, string> | ((ctx: Field) => Record<string, string> | undefined) | undefined;
        fieldTypeBlobContent?: "image" | "any" | "text" | ((ctx: Field) => "image" | "any" | "text" | undefined) | undefined;
        javadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldName?: string | ((ctx: Field) => string) | undefined;
        fieldValidateRules?: ValidationType[] | ((ctx: Field) => ValidationType[] | undefined) | undefined;
        fieldValidateRulesPattern?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValidateRulesMaxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMax?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMin?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMaxbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldTypeJavadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        path?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        enumFileName?: string | ((ctx: Field) => string | undefined) | undefined;
        enumValues?: {
            name: string;
            value: string;
        }[] | ((ctx: Field) => {
            name: string;
            value: string;
        }[] | undefined) | undefined;
        fieldValidate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        unique?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        maxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fakerTemplate?: string | ((ctx: Field) => string | undefined) | undefined;
        uniqueValue?: any[] | ((ctx: Field) => any[] | undefined) | undefined;
        generateFakeDataFromPattern?: (() => string | undefined) | ((ctx: Field) => (() => string | undefined) | undefined) | undefined;
        generateFakeData?: ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | ((ctx: Field) => ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | undefined) | undefined;
        transient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        id?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        autoGenerate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        readonly?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        sequenceGeneratorName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldWithContentType?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        contentTypeFieldName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeTimed?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeText?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeImage?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeAny?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBytes?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBinary?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        relatedByOtherEntity?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        enumInstance?: string | ((ctx: Field) => string | undefined) | undefined;
        builtIn?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        derivedPath?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldType?: string | ((ctx: Field) => string) | undefined;
        fieldIsEnum?: boolean | ((ctx: Field) => boolean) | undefined;
        __override__?: boolean | undefined;
        fieldValidationRequired: boolean | ((ctx: Field) => boolean);
        fieldTypeBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeString: boolean | ((ctx: Field) => boolean);
        fieldTypeInteger: boolean | ((ctx: Field) => boolean);
        fieldTypeLong: boolean | ((ctx: Field) => boolean);
        fieldTypeBigDecimal: boolean | ((ctx: Field) => boolean);
        fieldTypeFloat: boolean | ((ctx: Field) => boolean);
        fieldTypeDouble: boolean | ((ctx: Field) => boolean);
        fieldTypeUUID: boolean | ((ctx: Field) => boolean);
        fieldTypeBoolean: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalDate: boolean | ((ctx: Field) => boolean);
        fieldTypeZonedDateTime: boolean | ((ctx: Field) => boolean);
        fieldTypeAnyBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeImageBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeTextBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeInstant: boolean | ((ctx: Field) => boolean);
        fieldTypeDuration: boolean | ((ctx: Field) => boolean);
        fieldTypeByte: boolean | ((ctx: Field) => boolean);
        fieldTypeByteBuffer: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalTime: boolean | ((ctx: Field) => boolean);
        fieldValidationMin: boolean | ((ctx: Field) => boolean);
        fieldValidationPattern: boolean | ((ctx: Field) => boolean);
        fieldValidationMax: boolean | ((ctx: Field) => boolean);
        fieldValidationUnique: boolean | ((ctx: Field) => boolean);
        fieldValidationMinlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinbytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxbytes: boolean | ((ctx: Field) => boolean);
        fieldNameCapitalized: string | ((ctx: Field) => string);
        fieldNameHumanized: string | ((ctx: Field) => string);
        fieldNameUnderscored: string | ((ctx: Field) => string);
        fieldValidationMinLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinBytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxBytes: boolean | ((ctx: Field) => boolean);
    }) => boolean);
    readonly fieldTypeImageBlob: (boolean | ((ctx: Field) => boolean)) & ((data: {
        propertyName?: string | ((ctx: Field) => string) | undefined;
        propertyNameCapitalized?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyNameUpperSnakeCase?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        skipClient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        skipServer?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        options?: Record<string, string | number | boolean> | ((ctx: Field) => Record<string, string | number | boolean> | undefined) | undefined;
        documentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValues?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeDocumentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValuesJavadocs?: Record<string, string> | ((ctx: Field) => Record<string, string> | undefined) | undefined;
        fieldTypeBlobContent?: "image" | "any" | "text" | ((ctx: Field) => "image" | "any" | "text" | undefined) | undefined;
        javadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldName?: string | ((ctx: Field) => string) | undefined;
        fieldValidateRules?: ValidationType[] | ((ctx: Field) => ValidationType[] | undefined) | undefined;
        fieldValidateRulesPattern?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValidateRulesMaxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMax?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMin?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMaxbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldTypeJavadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        path?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        enumFileName?: string | ((ctx: Field) => string | undefined) | undefined;
        enumValues?: {
            name: string;
            value: string;
        }[] | ((ctx: Field) => {
            name: string;
            value: string;
        }[] | undefined) | undefined;
        fieldValidate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        unique?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        maxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fakerTemplate?: string | ((ctx: Field) => string | undefined) | undefined;
        uniqueValue?: any[] | ((ctx: Field) => any[] | undefined) | undefined;
        generateFakeDataFromPattern?: (() => string | undefined) | ((ctx: Field) => (() => string | undefined) | undefined) | undefined;
        generateFakeData?: ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | ((ctx: Field) => ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | undefined) | undefined;
        transient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        id?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        autoGenerate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        readonly?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        sequenceGeneratorName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldWithContentType?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        contentTypeFieldName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeTimed?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeText?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeImage?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeAny?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBytes?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBinary?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        relatedByOtherEntity?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        enumInstance?: string | ((ctx: Field) => string | undefined) | undefined;
        builtIn?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        derivedPath?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldType?: string | ((ctx: Field) => string) | undefined;
        fieldIsEnum?: boolean | ((ctx: Field) => boolean) | undefined;
        __override__?: boolean | undefined;
        fieldValidationRequired: boolean | ((ctx: Field) => boolean);
        fieldTypeBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeString: boolean | ((ctx: Field) => boolean);
        fieldTypeInteger: boolean | ((ctx: Field) => boolean);
        fieldTypeLong: boolean | ((ctx: Field) => boolean);
        fieldTypeBigDecimal: boolean | ((ctx: Field) => boolean);
        fieldTypeFloat: boolean | ((ctx: Field) => boolean);
        fieldTypeDouble: boolean | ((ctx: Field) => boolean);
        fieldTypeUUID: boolean | ((ctx: Field) => boolean);
        fieldTypeBoolean: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalDate: boolean | ((ctx: Field) => boolean);
        fieldTypeZonedDateTime: boolean | ((ctx: Field) => boolean);
        fieldTypeAnyBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeImageBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeTextBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeInstant: boolean | ((ctx: Field) => boolean);
        fieldTypeDuration: boolean | ((ctx: Field) => boolean);
        fieldTypeByte: boolean | ((ctx: Field) => boolean);
        fieldTypeByteBuffer: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalTime: boolean | ((ctx: Field) => boolean);
        fieldValidationMin: boolean | ((ctx: Field) => boolean);
        fieldValidationPattern: boolean | ((ctx: Field) => boolean);
        fieldValidationMax: boolean | ((ctx: Field) => boolean);
        fieldValidationUnique: boolean | ((ctx: Field) => boolean);
        fieldValidationMinlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinbytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxbytes: boolean | ((ctx: Field) => boolean);
        fieldNameCapitalized: string | ((ctx: Field) => string);
        fieldNameHumanized: string | ((ctx: Field) => string);
        fieldNameUnderscored: string | ((ctx: Field) => string);
        fieldValidationMinLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinBytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxBytes: boolean | ((ctx: Field) => boolean);
    }) => boolean);
    readonly fieldTypeTextBlob: (boolean | ((ctx: Field) => boolean)) & ((data: {
        propertyName?: string | ((ctx: Field) => string) | undefined;
        propertyNameCapitalized?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyNameUpperSnakeCase?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        skipClient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        skipServer?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        options?: Record<string, string | number | boolean> | ((ctx: Field) => Record<string, string | number | boolean> | undefined) | undefined;
        documentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValues?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeDocumentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValuesJavadocs?: Record<string, string> | ((ctx: Field) => Record<string, string> | undefined) | undefined;
        fieldTypeBlobContent?: "image" | "any" | "text" | ((ctx: Field) => "image" | "any" | "text" | undefined) | undefined;
        javadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldName?: string | ((ctx: Field) => string) | undefined;
        fieldValidateRules?: ValidationType[] | ((ctx: Field) => ValidationType[] | undefined) | undefined;
        fieldValidateRulesPattern?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValidateRulesMaxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMax?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMin?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMaxbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldTypeJavadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        path?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        enumFileName?: string | ((ctx: Field) => string | undefined) | undefined;
        enumValues?: {
            name: string;
            value: string;
        }[] | ((ctx: Field) => {
            name: string;
            value: string;
        }[] | undefined) | undefined;
        fieldValidate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        unique?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        maxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fakerTemplate?: string | ((ctx: Field) => string | undefined) | undefined;
        uniqueValue?: any[] | ((ctx: Field) => any[] | undefined) | undefined;
        generateFakeDataFromPattern?: (() => string | undefined) | ((ctx: Field) => (() => string | undefined) | undefined) | undefined;
        generateFakeData?: ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | ((ctx: Field) => ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | undefined) | undefined;
        transient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        id?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        autoGenerate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        readonly?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        sequenceGeneratorName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldWithContentType?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        contentTypeFieldName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeTimed?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeText?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeImage?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeAny?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBytes?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBinary?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        relatedByOtherEntity?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        enumInstance?: string | ((ctx: Field) => string | undefined) | undefined;
        builtIn?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        derivedPath?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldType?: string | ((ctx: Field) => string) | undefined;
        fieldIsEnum?: boolean | ((ctx: Field) => boolean) | undefined;
        __override__?: boolean | undefined;
        fieldValidationRequired: boolean | ((ctx: Field) => boolean);
        fieldTypeBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeString: boolean | ((ctx: Field) => boolean);
        fieldTypeInteger: boolean | ((ctx: Field) => boolean);
        fieldTypeLong: boolean | ((ctx: Field) => boolean);
        fieldTypeBigDecimal: boolean | ((ctx: Field) => boolean);
        fieldTypeFloat: boolean | ((ctx: Field) => boolean);
        fieldTypeDouble: boolean | ((ctx: Field) => boolean);
        fieldTypeUUID: boolean | ((ctx: Field) => boolean);
        fieldTypeBoolean: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalDate: boolean | ((ctx: Field) => boolean);
        fieldTypeZonedDateTime: boolean | ((ctx: Field) => boolean);
        fieldTypeAnyBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeImageBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeTextBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeInstant: boolean | ((ctx: Field) => boolean);
        fieldTypeDuration: boolean | ((ctx: Field) => boolean);
        fieldTypeByte: boolean | ((ctx: Field) => boolean);
        fieldTypeByteBuffer: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalTime: boolean | ((ctx: Field) => boolean);
        fieldValidationMin: boolean | ((ctx: Field) => boolean);
        fieldValidationPattern: boolean | ((ctx: Field) => boolean);
        fieldValidationMax: boolean | ((ctx: Field) => boolean);
        fieldValidationUnique: boolean | ((ctx: Field) => boolean);
        fieldValidationMinlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinbytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxbytes: boolean | ((ctx: Field) => boolean);
        fieldNameCapitalized: string | ((ctx: Field) => string);
        fieldNameHumanized: string | ((ctx: Field) => string);
        fieldNameUnderscored: string | ((ctx: Field) => string);
        fieldValidationMinLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinBytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxBytes: boolean | ((ctx: Field) => boolean);
    }) => boolean);
    readonly fieldTypeInstant: (boolean | ((ctx: Field) => boolean)) & ((data: {
        propertyName?: string | ((ctx: Field) => string) | undefined;
        propertyNameCapitalized?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyNameUpperSnakeCase?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        skipClient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        skipServer?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        options?: Record<string, string | number | boolean> | ((ctx: Field) => Record<string, string | number | boolean> | undefined) | undefined;
        documentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValues?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeDocumentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValuesJavadocs?: Record<string, string> | ((ctx: Field) => Record<string, string> | undefined) | undefined;
        fieldTypeBlobContent?: "image" | "any" | "text" | ((ctx: Field) => "image" | "any" | "text" | undefined) | undefined;
        javadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldName?: string | ((ctx: Field) => string) | undefined;
        fieldValidateRules?: ValidationType[] | ((ctx: Field) => ValidationType[] | undefined) | undefined;
        fieldValidateRulesPattern?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValidateRulesMaxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMax?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMin?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMaxbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldTypeJavadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        path?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        enumFileName?: string | ((ctx: Field) => string | undefined) | undefined;
        enumValues?: {
            name: string;
            value: string;
        }[] | ((ctx: Field) => {
            name: string;
            value: string;
        }[] | undefined) | undefined;
        fieldValidate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        unique?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        maxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fakerTemplate?: string | ((ctx: Field) => string | undefined) | undefined;
        uniqueValue?: any[] | ((ctx: Field) => any[] | undefined) | undefined;
        generateFakeDataFromPattern?: (() => string | undefined) | ((ctx: Field) => (() => string | undefined) | undefined) | undefined;
        generateFakeData?: ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | ((ctx: Field) => ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | undefined) | undefined;
        transient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        id?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        autoGenerate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        readonly?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        sequenceGeneratorName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldWithContentType?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        contentTypeFieldName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeTimed?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeText?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeImage?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeAny?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBytes?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBinary?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        relatedByOtherEntity?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        enumInstance?: string | ((ctx: Field) => string | undefined) | undefined;
        builtIn?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        derivedPath?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldType?: string | ((ctx: Field) => string) | undefined;
        fieldIsEnum?: boolean | ((ctx: Field) => boolean) | undefined;
        __override__?: boolean | undefined;
        fieldValidationRequired: boolean | ((ctx: Field) => boolean);
        fieldTypeBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeString: boolean | ((ctx: Field) => boolean);
        fieldTypeInteger: boolean | ((ctx: Field) => boolean);
        fieldTypeLong: boolean | ((ctx: Field) => boolean);
        fieldTypeBigDecimal: boolean | ((ctx: Field) => boolean);
        fieldTypeFloat: boolean | ((ctx: Field) => boolean);
        fieldTypeDouble: boolean | ((ctx: Field) => boolean);
        fieldTypeUUID: boolean | ((ctx: Field) => boolean);
        fieldTypeBoolean: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalDate: boolean | ((ctx: Field) => boolean);
        fieldTypeZonedDateTime: boolean | ((ctx: Field) => boolean);
        fieldTypeAnyBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeImageBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeTextBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeInstant: boolean | ((ctx: Field) => boolean);
        fieldTypeDuration: boolean | ((ctx: Field) => boolean);
        fieldTypeByte: boolean | ((ctx: Field) => boolean);
        fieldTypeByteBuffer: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalTime: boolean | ((ctx: Field) => boolean);
        fieldValidationMin: boolean | ((ctx: Field) => boolean);
        fieldValidationPattern: boolean | ((ctx: Field) => boolean);
        fieldValidationMax: boolean | ((ctx: Field) => boolean);
        fieldValidationUnique: boolean | ((ctx: Field) => boolean);
        fieldValidationMinlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinbytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxbytes: boolean | ((ctx: Field) => boolean);
        fieldNameCapitalized: string | ((ctx: Field) => string);
        fieldNameHumanized: string | ((ctx: Field) => string);
        fieldNameUnderscored: string | ((ctx: Field) => string);
        fieldValidationMinLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinBytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxBytes: boolean | ((ctx: Field) => boolean);
    }) => boolean);
    readonly fieldTypeDuration: (boolean | ((ctx: Field) => boolean)) & ((data: {
        propertyName?: string | ((ctx: Field) => string) | undefined;
        propertyNameCapitalized?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyNameUpperSnakeCase?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        skipClient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        skipServer?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        options?: Record<string, string | number | boolean> | ((ctx: Field) => Record<string, string | number | boolean> | undefined) | undefined;
        documentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValues?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeDocumentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValuesJavadocs?: Record<string, string> | ((ctx: Field) => Record<string, string> | undefined) | undefined;
        fieldTypeBlobContent?: "image" | "any" | "text" | ((ctx: Field) => "image" | "any" | "text" | undefined) | undefined;
        javadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldName?: string | ((ctx: Field) => string) | undefined;
        fieldValidateRules?: ValidationType[] | ((ctx: Field) => ValidationType[] | undefined) | undefined;
        fieldValidateRulesPattern?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValidateRulesMaxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMax?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMin?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMaxbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldTypeJavadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        path?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        enumFileName?: string | ((ctx: Field) => string | undefined) | undefined;
        enumValues?: {
            name: string;
            value: string;
        }[] | ((ctx: Field) => {
            name: string;
            value: string;
        }[] | undefined) | undefined;
        fieldValidate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        unique?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        maxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fakerTemplate?: string | ((ctx: Field) => string | undefined) | undefined;
        uniqueValue?: any[] | ((ctx: Field) => any[] | undefined) | undefined;
        generateFakeDataFromPattern?: (() => string | undefined) | ((ctx: Field) => (() => string | undefined) | undefined) | undefined;
        generateFakeData?: ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | ((ctx: Field) => ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | undefined) | undefined;
        transient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        id?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        autoGenerate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        readonly?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        sequenceGeneratorName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldWithContentType?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        contentTypeFieldName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeTimed?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeText?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeImage?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeAny?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBytes?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBinary?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        relatedByOtherEntity?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        enumInstance?: string | ((ctx: Field) => string | undefined) | undefined;
        builtIn?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        derivedPath?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldType?: string | ((ctx: Field) => string) | undefined;
        fieldIsEnum?: boolean | ((ctx: Field) => boolean) | undefined;
        __override__?: boolean | undefined;
        fieldValidationRequired: boolean | ((ctx: Field) => boolean);
        fieldTypeBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeString: boolean | ((ctx: Field) => boolean);
        fieldTypeInteger: boolean | ((ctx: Field) => boolean);
        fieldTypeLong: boolean | ((ctx: Field) => boolean);
        fieldTypeBigDecimal: boolean | ((ctx: Field) => boolean);
        fieldTypeFloat: boolean | ((ctx: Field) => boolean);
        fieldTypeDouble: boolean | ((ctx: Field) => boolean);
        fieldTypeUUID: boolean | ((ctx: Field) => boolean);
        fieldTypeBoolean: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalDate: boolean | ((ctx: Field) => boolean);
        fieldTypeZonedDateTime: boolean | ((ctx: Field) => boolean);
        fieldTypeAnyBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeImageBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeTextBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeInstant: boolean | ((ctx: Field) => boolean);
        fieldTypeDuration: boolean | ((ctx: Field) => boolean);
        fieldTypeByte: boolean | ((ctx: Field) => boolean);
        fieldTypeByteBuffer: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalTime: boolean | ((ctx: Field) => boolean);
        fieldValidationMin: boolean | ((ctx: Field) => boolean);
        fieldValidationPattern: boolean | ((ctx: Field) => boolean);
        fieldValidationMax: boolean | ((ctx: Field) => boolean);
        fieldValidationUnique: boolean | ((ctx: Field) => boolean);
        fieldValidationMinlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinbytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxbytes: boolean | ((ctx: Field) => boolean);
        fieldNameCapitalized: string | ((ctx: Field) => string);
        fieldNameHumanized: string | ((ctx: Field) => string);
        fieldNameUnderscored: string | ((ctx: Field) => string);
        fieldValidationMinLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinBytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxBytes: boolean | ((ctx: Field) => boolean);
    }) => boolean);
    readonly fieldTypeByte: (boolean | ((ctx: Field) => boolean)) & ((data: {
        propertyName?: string | ((ctx: Field) => string) | undefined;
        propertyNameCapitalized?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyNameUpperSnakeCase?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        skipClient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        skipServer?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        options?: Record<string, string | number | boolean> | ((ctx: Field) => Record<string, string | number | boolean> | undefined) | undefined;
        documentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValues?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeDocumentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValuesJavadocs?: Record<string, string> | ((ctx: Field) => Record<string, string> | undefined) | undefined;
        fieldTypeBlobContent?: "image" | "any" | "text" | ((ctx: Field) => "image" | "any" | "text" | undefined) | undefined;
        javadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldName?: string | ((ctx: Field) => string) | undefined;
        fieldValidateRules?: ValidationType[] | ((ctx: Field) => ValidationType[] | undefined) | undefined;
        fieldValidateRulesPattern?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValidateRulesMaxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMax?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMin?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMaxbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldTypeJavadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        path?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        enumFileName?: string | ((ctx: Field) => string | undefined) | undefined;
        enumValues?: {
            name: string;
            value: string;
        }[] | ((ctx: Field) => {
            name: string;
            value: string;
        }[] | undefined) | undefined;
        fieldValidate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        unique?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        maxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fakerTemplate?: string | ((ctx: Field) => string | undefined) | undefined;
        uniqueValue?: any[] | ((ctx: Field) => any[] | undefined) | undefined;
        generateFakeDataFromPattern?: (() => string | undefined) | ((ctx: Field) => (() => string | undefined) | undefined) | undefined;
        generateFakeData?: ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | ((ctx: Field) => ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | undefined) | undefined;
        transient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        id?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        autoGenerate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        readonly?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        sequenceGeneratorName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldWithContentType?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        contentTypeFieldName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeTimed?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeText?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeImage?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeAny?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBytes?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBinary?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        relatedByOtherEntity?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        enumInstance?: string | ((ctx: Field) => string | undefined) | undefined;
        builtIn?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        derivedPath?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldType?: string | ((ctx: Field) => string) | undefined;
        fieldIsEnum?: boolean | ((ctx: Field) => boolean) | undefined;
        __override__?: boolean | undefined;
        fieldValidationRequired: boolean | ((ctx: Field) => boolean);
        fieldTypeBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeString: boolean | ((ctx: Field) => boolean);
        fieldTypeInteger: boolean | ((ctx: Field) => boolean);
        fieldTypeLong: boolean | ((ctx: Field) => boolean);
        fieldTypeBigDecimal: boolean | ((ctx: Field) => boolean);
        fieldTypeFloat: boolean | ((ctx: Field) => boolean);
        fieldTypeDouble: boolean | ((ctx: Field) => boolean);
        fieldTypeUUID: boolean | ((ctx: Field) => boolean);
        fieldTypeBoolean: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalDate: boolean | ((ctx: Field) => boolean);
        fieldTypeZonedDateTime: boolean | ((ctx: Field) => boolean);
        fieldTypeAnyBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeImageBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeTextBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeInstant: boolean | ((ctx: Field) => boolean);
        fieldTypeDuration: boolean | ((ctx: Field) => boolean);
        fieldTypeByte: boolean | ((ctx: Field) => boolean);
        fieldTypeByteBuffer: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalTime: boolean | ((ctx: Field) => boolean);
        fieldValidationMin: boolean | ((ctx: Field) => boolean);
        fieldValidationPattern: boolean | ((ctx: Field) => boolean);
        fieldValidationMax: boolean | ((ctx: Field) => boolean);
        fieldValidationUnique: boolean | ((ctx: Field) => boolean);
        fieldValidationMinlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinbytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxbytes: boolean | ((ctx: Field) => boolean);
        fieldNameCapitalized: string | ((ctx: Field) => string);
        fieldNameHumanized: string | ((ctx: Field) => string);
        fieldNameUnderscored: string | ((ctx: Field) => string);
        fieldValidationMinLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinBytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxBytes: boolean | ((ctx: Field) => boolean);
    }) => boolean);
    readonly fieldTypeByteBuffer: (boolean | ((ctx: Field) => boolean)) & ((data: {
        propertyName?: string | ((ctx: Field) => string) | undefined;
        propertyNameCapitalized?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyNameUpperSnakeCase?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        skipClient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        skipServer?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        options?: Record<string, string | number | boolean> | ((ctx: Field) => Record<string, string | number | boolean> | undefined) | undefined;
        documentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValues?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeDocumentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValuesJavadocs?: Record<string, string> | ((ctx: Field) => Record<string, string> | undefined) | undefined;
        fieldTypeBlobContent?: "image" | "any" | "text" | ((ctx: Field) => "image" | "any" | "text" | undefined) | undefined;
        javadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldName?: string | ((ctx: Field) => string) | undefined;
        fieldValidateRules?: ValidationType[] | ((ctx: Field) => ValidationType[] | undefined) | undefined;
        fieldValidateRulesPattern?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValidateRulesMaxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMax?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMin?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMaxbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldTypeJavadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        path?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        enumFileName?: string | ((ctx: Field) => string | undefined) | undefined;
        enumValues?: {
            name: string;
            value: string;
        }[] | ((ctx: Field) => {
            name: string;
            value: string;
        }[] | undefined) | undefined;
        fieldValidate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        unique?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        maxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fakerTemplate?: string | ((ctx: Field) => string | undefined) | undefined;
        uniqueValue?: any[] | ((ctx: Field) => any[] | undefined) | undefined;
        generateFakeDataFromPattern?: (() => string | undefined) | ((ctx: Field) => (() => string | undefined) | undefined) | undefined;
        generateFakeData?: ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | ((ctx: Field) => ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | undefined) | undefined;
        transient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        id?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        autoGenerate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        readonly?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        sequenceGeneratorName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldWithContentType?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        contentTypeFieldName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeTimed?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeText?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeImage?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeAny?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBytes?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBinary?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        relatedByOtherEntity?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        enumInstance?: string | ((ctx: Field) => string | undefined) | undefined;
        builtIn?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        derivedPath?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldType?: string | ((ctx: Field) => string) | undefined;
        fieldIsEnum?: boolean | ((ctx: Field) => boolean) | undefined;
        __override__?: boolean | undefined;
        fieldValidationRequired: boolean | ((ctx: Field) => boolean);
        fieldTypeBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeString: boolean | ((ctx: Field) => boolean);
        fieldTypeInteger: boolean | ((ctx: Field) => boolean);
        fieldTypeLong: boolean | ((ctx: Field) => boolean);
        fieldTypeBigDecimal: boolean | ((ctx: Field) => boolean);
        fieldTypeFloat: boolean | ((ctx: Field) => boolean);
        fieldTypeDouble: boolean | ((ctx: Field) => boolean);
        fieldTypeUUID: boolean | ((ctx: Field) => boolean);
        fieldTypeBoolean: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalDate: boolean | ((ctx: Field) => boolean);
        fieldTypeZonedDateTime: boolean | ((ctx: Field) => boolean);
        fieldTypeAnyBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeImageBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeTextBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeInstant: boolean | ((ctx: Field) => boolean);
        fieldTypeDuration: boolean | ((ctx: Field) => boolean);
        fieldTypeByte: boolean | ((ctx: Field) => boolean);
        fieldTypeByteBuffer: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalTime: boolean | ((ctx: Field) => boolean);
        fieldValidationMin: boolean | ((ctx: Field) => boolean);
        fieldValidationPattern: boolean | ((ctx: Field) => boolean);
        fieldValidationMax: boolean | ((ctx: Field) => boolean);
        fieldValidationUnique: boolean | ((ctx: Field) => boolean);
        fieldValidationMinlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinbytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxbytes: boolean | ((ctx: Field) => boolean);
        fieldNameCapitalized: string | ((ctx: Field) => string);
        fieldNameHumanized: string | ((ctx: Field) => string);
        fieldNameUnderscored: string | ((ctx: Field) => string);
        fieldValidationMinLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinBytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxBytes: boolean | ((ctx: Field) => boolean);
    }) => boolean);
    readonly fieldTypeLocalTime: (boolean | ((ctx: Field) => boolean)) & ((data: {
        propertyName?: string | ((ctx: Field) => string) | undefined;
        propertyNameCapitalized?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyNameUpperSnakeCase?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        skipClient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        skipServer?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        options?: Record<string, string | number | boolean> | ((ctx: Field) => Record<string, string | number | boolean> | undefined) | undefined;
        documentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValues?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeDocumentation?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValuesJavadocs?: Record<string, string> | ((ctx: Field) => Record<string, string> | undefined) | undefined;
        fieldTypeBlobContent?: "image" | "any" | "text" | ((ctx: Field) => "image" | "any" | "text" | undefined) | undefined;
        javadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldName?: string | ((ctx: Field) => string) | undefined;
        fieldValidateRules?: ValidationType[] | ((ctx: Field) => ValidationType[] | undefined) | undefined;
        fieldValidateRulesPattern?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldValidateRulesMaxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMax?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMin?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMaxbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldValidateRulesMinbytes?: number | ((ctx: Field) => number | undefined) | undefined;
        fieldTypeJavadoc?: string | ((ctx: Field) => string | undefined) | undefined;
        path?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        propertyTranslationKey?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldApiDescription?: string | ((ctx: Field) => string | undefined) | undefined;
        enumFileName?: string | ((ctx: Field) => string | undefined) | undefined;
        enumValues?: {
            name: string;
            value: string;
        }[] | ((ctx: Field) => {
            name: string;
            value: string;
        }[] | undefined) | undefined;
        fieldValidate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        unique?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        maxlength?: number | ((ctx: Field) => number | undefined) | undefined;
        fakerTemplate?: string | ((ctx: Field) => string | undefined) | undefined;
        uniqueValue?: any[] | ((ctx: Field) => any[] | undefined) | undefined;
        generateFakeDataFromPattern?: (() => string | undefined) | ((ctx: Field) => (() => string | undefined) | undefined) | undefined;
        generateFakeData?: ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | ((ctx: Field) => ((type?: "csv" | "cypress" | "json-serializable" | "ts") => any) | undefined) | undefined;
        transient?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        id?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        autoGenerate?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        readonly?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        sequenceGeneratorName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldWithContentType?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        contentTypeFieldName?: string | ((ctx: Field) => string | undefined) | undefined;
        fieldTypeTimed?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeText?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeImage?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        blobContentTypeAny?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBytes?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        fieldTypeBinary?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        relatedByOtherEntity?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        enumInstance?: string | ((ctx: Field) => string | undefined) | undefined;
        builtIn?: boolean | ((ctx: Field) => boolean | undefined) | undefined;
        derivedPath?: string[] | ((ctx: Field) => string[] | undefined) | undefined;
        fieldType?: string | ((ctx: Field) => string) | undefined;
        fieldIsEnum?: boolean | ((ctx: Field) => boolean) | undefined;
        __override__?: boolean | undefined;
        fieldValidationRequired: boolean | ((ctx: Field) => boolean);
        fieldTypeBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeString: boolean | ((ctx: Field) => boolean);
        fieldTypeInteger: boolean | ((ctx: Field) => boolean);
        fieldTypeLong: boolean | ((ctx: Field) => boolean);
        fieldTypeBigDecimal: boolean | ((ctx: Field) => boolean);
        fieldTypeFloat: boolean | ((ctx: Field) => boolean);
        fieldTypeDouble: boolean | ((ctx: Field) => boolean);
        fieldTypeUUID: boolean | ((ctx: Field) => boolean);
        fieldTypeBoolean: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalDate: boolean | ((ctx: Field) => boolean);
        fieldTypeZonedDateTime: boolean | ((ctx: Field) => boolean);
        fieldTypeAnyBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeImageBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeTextBlob: boolean | ((ctx: Field) => boolean);
        fieldTypeInstant: boolean | ((ctx: Field) => boolean);
        fieldTypeDuration: boolean | ((ctx: Field) => boolean);
        fieldTypeByte: boolean | ((ctx: Field) => boolean);
        fieldTypeByteBuffer: boolean | ((ctx: Field) => boolean);
        fieldTypeLocalTime: boolean | ((ctx: Field) => boolean);
        fieldValidationMin: boolean | ((ctx: Field) => boolean);
        fieldValidationPattern: boolean | ((ctx: Field) => boolean);
        fieldValidationMax: boolean | ((ctx: Field) => boolean);
        fieldValidationUnique: boolean | ((ctx: Field) => boolean);
        fieldValidationMinlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxlength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinbytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxbytes: boolean | ((ctx: Field) => boolean);
        fieldNameCapitalized: string | ((ctx: Field) => string);
        fieldNameHumanized: string | ((ctx: Field) => string);
        fieldNameUnderscored: string | ((ctx: Field) => string);
        fieldValidationMinLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxLength: boolean | ((ctx: Field) => boolean);
        fieldValidationMinBytes: boolean | ((ctx: Field) => boolean);
        fieldValidationMaxBytes: boolean | ((ctx: Field) => boolean);
    }) => boolean);
};
export type DerivedField<E extends Entity = Entity, F extends Field = Entity['fields'][number]> = F & {
    derived: true;
    originalField: F;
    derivedEntity: E;
};
type BaseApplicationAddedRelationshipProperties = DerivedPropertiesOnlyOf<'relationship', 'LeftSide' | 'RightSide' | 'ManyToOne' | 'OneToMany' | 'OneToOne' | 'ManyToMany'> & Property & {
    relationshipNameCapitalized: string;
    collection: boolean;
    /**
     * A persistable relationship means that the relationship will be updated in the database.
     */
    persistableRelationship?: boolean;
    id?: boolean;
    /** @deprecated */
    ownerSide?: boolean;
    relationshipEagerLoad?: boolean;
    relationshipRequired?: boolean;
    relationshipFieldName: string;
    relationshipFieldNamePlural: string;
    relationshipNamePlural: string;
    relationshipNameHumanized: string;
    relationshipIgnoreBackReference?: boolean;
    relationshipValidate?: boolean;
    relationshipValidateRules?: string[];
};
/**
 * Represents a relationship with an otherRelationship.
 * Interface is used to allow `this` type in the otherRelationship.
 */
export interface Relationship extends BaseApplicationAddedRelationshipProperties, BaseRelationship {
    otherRelationship: this;
}
export declare const mutateRelationship: {
    readonly propertyNameCapitalized: ({ propertyName }: Property) => Capitalize<string>;
    readonly propertyNameUpperSnakeCase: ({ propertyName }: Property) => string;
    readonly collection: ({ relationshipType }: Relationship) => boolean;
    readonly relationshipFieldName: ({ relationshipName }: Relationship) => Uncapitalize<string>;
    readonly relationshipFieldNamePlural: ({ relationshipFieldName }: Relationship) => string;
    readonly relationshipNamePlural: ({ relationshipName }: Relationship) => string;
    readonly relationshipNameCapitalized: ({ relationshipName }: Relationship) => Capitalize<string>;
    readonly relationshipNameHumanized: ({ relationshipName }: Relationship) => string;
    readonly propertyName: ({ collection, relationshipFieldName, relationshipFieldNamePlural }: Relationship) => string;
    readonly relationshipType?: "one-to-one" | "one-to-many" | "many-to-one" | "many-to-many" | undefined;
    readonly relationshipOneToOne: (data: Partial<Record<"relationshipType", "one-to-one" | "one-to-many" | "many-to-one" | "many-to-many" | undefined>>) => boolean;
    readonly relationshipOneToMany: (data: Partial<Record<"relationshipType", "one-to-one" | "one-to-many" | "many-to-one" | "many-to-many" | undefined>>) => boolean;
    readonly relationshipManyToOne: (data: Partial<Record<"relationshipType", "one-to-one" | "one-to-many" | "many-to-one" | "many-to-many" | undefined>>) => boolean;
    readonly relationshipManyToMany: (data: Partial<Record<"relationshipType", "one-to-one" | "one-to-many" | "many-to-one" | "many-to-many" | undefined>>) => boolean;
    readonly relationshipSide?: "left" | "right" | undefined;
    readonly relationshipLeftSide: (data: Partial<Record<"relationshipSide", "left" | "right" | undefined>>) => boolean;
    readonly relationshipRightSide: (data: Partial<Record<"relationshipSide", "left" | "right" | undefined>>) => boolean;
    readonly __override__: false;
};
/**
 * Represents a relationship with an otherEntity, where the relationship is extended with the other entity.
 * Utility type to workaround https://github.com/Microsoft/TypeScript/issues/24364.
 */
export type RelationshipWithEntity<R, E extends BaseEntity, F extends BaseField = Field> = R & {
    otherEntity: E;
    relatedField: Exclude<E['fields'], undefined>[number];
    otherEntityUser: boolean;
    derivedPrimaryKey?: {
        derivedFields: (F & {
            originalField: F;
            derived: boolean;
        })[];
    };
};
export declare const mutateRelationshipWithEntity: {
    __override__: false;
    otherEntityField: (data: RelationshipWithEntity<Relationship, Entity<Field, Relationship>, Field>) => string | undefined;
    ownerSide: (data: RelationshipWithEntity<Relationship, Entity<Field, Relationship>, Field>) => boolean;
    persistableRelationship: ({ ownerSide }: RelationshipWithEntity<Relationship, Entity<Field, Relationship>, Field>) => boolean;
    otherEntityUser: ({ otherEntityName }: RelationshipWithEntity<Relationship, Entity<Field, Relationship>, Field>) => boolean;
};
export type PrimaryKey<F extends Field = Field> = {
    name: string;
    nameCapitalized: string;
    /**
     * Name of the Consumer (Setter) method to use to set the property.
     */
    propertyConsumerName?: string;
    /**
     * Name of the Supplier (Getter) method to use to initialize the property.
     */
    propertySupplierName?: string;
    hibernateSnakeCaseName: string;
    fields: F[];
    relationships: RelationshipWithEntity<Relationship, Entity, F>[];
    type: FieldType;
    composite: boolean;
    derived: boolean;
    javaValueGenerator?: string;
    javaBuildSpecification?: string;
    tsSampleValues?: (string | number)[];
    javaSampleValues?: string[];
    hasUUID?: boolean;
    hasLong?: boolean;
    hasInteger?: boolean;
    typeUUID?: boolean;
    typeString?: boolean;
    typeLong?: boolean;
    typeInteger?: boolean;
    /** @deprecated replace with technology-specific implementation */
    typeNumeric?: boolean;
    derivedFields?: (F & {
        originalField: F;
        derived: boolean;
    })[];
    ownFields?: F[];
    tsType?: string;
    autoGenerate?: boolean;
    /** @deprecated */
    ids: any[];
};
type BaseApplicationAddedEntityProperties = {
    clientRootFolder: string;
    entityAuthority?: string;
    entityReadAuthority?: string;
    /** @experimental */
    auditableEntity?: boolean;
    builtIn?: boolean;
    builtInUser?: boolean;
    builtInUserManagement?: boolean;
    builtInAuthority?: boolean;
    adminEntity?: boolean;
    hasCyclicRequiredRelationship?: boolean;
    entityNameCapitalized: string;
    entityNameKebabCase: string;
    entityNamePlural: string;
    entityNamePluralizedAndSpinalCased: string;
    entityInstancePlural: string;
    entityInstance: string;
    entityNameHumanized: string;
    entityNamePluralHumanized: string;
    resetFakerSeed?(suffix?: string): void;
    generateFakeData?: (type?: 'csv' | 'cypress' | 'json-serializable' | 'ts') => any;
    faker?: FakerWithRandexp;
    anyFieldIsBigDecimal?: boolean;
    /**
     * Any file is of type Bytes or ByteBuffer
     */
    anyFieldIsBlobDerived?: boolean;
    /**
     * Any field is of type ZonedDateTime, Instant or LocalDate
     */
    anyFieldIsDateDerived?: boolean;
    anyFieldIsDuration?: boolean;
    anyFieldIsInstant?: boolean;
    anyFieldIsLocalDate?: boolean;
    anyFieldIsLocalTime?: boolean;
    /**
     * Any field is of type ZonedDateTime or Instant
     */
    anyFieldIsTimeDerived?: boolean;
    anyFieldIsUUID?: boolean;
    anyFieldIsZonedDateTime?: boolean;
    anyFieldHasDocumentation?: boolean;
    anyFieldHasImageContentType?: boolean;
    anyFieldHasTextContentType?: boolean;
    /**
     * Any field has image or any contentType
     */
    anyFieldHasFileBasedContentType?: boolean;
    /**
     * Any relationship is required or id
     */
    anyRelationshipIsRequired?: boolean;
    hasRelationshipWithBuiltInUser?: boolean;
    /** Properties from application required for entities published through gateways */
    useMicroserviceJson?: boolean;
    microserviceAppName?: string;
    applicationType?: string;
    microfrontend?: boolean;
    skipUiGrouping?: boolean;
};
/**
 * Represents an entity with its relationships, where the relationships are extended with the other entity.
 * Interface is used to allow `this` type in the relationships.
 */
export interface Entity<F extends Field = Field, R extends Relationship = Relationship> extends BaseApplicationAddedEntityProperties, Omit<Required<BaseEntity<F>>, 'relationships'> {
    relationships: RelationshipWithEntity<R, this, F>[];
    otherRelationships: R[];
    primaryKey?: PrimaryKey<F>;
    changelogDateForRecent: Date;
}
export declare const mutateEntity: {
    readonly __override__: false;
    readonly clientRootFolder: "";
    readonly entityNameCapitalized: ({ name }: Entity<Field, Relationship>) => Capitalize<string>;
    readonly entityNameKebabCase: ({ name }: Entity<Field, Relationship>) => string;
    readonly entityNamePlural: ({ name }: Entity<Field, Relationship>) => string;
    readonly entityNamePluralizedAndSpinalCased: ({ name }: Entity<Field, Relationship>) => string;
    readonly entityInstance: ({ name }: Entity<Field, Relationship>) => Uncapitalize<string>;
    readonly entityInstancePlural: ({ entityNamePlural }: Entity<Field, Relationship>) => Uncapitalize<string>;
    readonly entityAuthority: ({ adminEntity }: Entity<Field, Relationship>) => "ROLE_ADMIN" | undefined;
    readonly entityNameHumanized: ({ entityNameCapitalized }: Entity<Field, Relationship>) => string;
    readonly entityNamePluralHumanized: ({ entityNameHumanized }: Entity<Field, Relationship>) => string;
};
export {};
