UNPKG

gen-jhipster

Version:

VHipster - Spring Boot + Angular/React/Vue in one handy generator

1,352 lines 66.3 kB
/** * Copyright 2013-2026 the original author or authors from the JHipster project. * * This file is part of the JHipster project, see https://www.jhipster.tech/ * for more information. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * https://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. */ import BaseApplicationGenerator from '../base-application/index.ts'; import type { Application as ServerApplication, Config as ServerConfig, Entity as ServerEntity, Field as ServerField, Options as ServerOptions, Relationship as ServerRelationship, Source as ServerSource } from './types.ts'; export default class JHipsterServerGenerator extends BaseApplicationGenerator<ServerEntity, ServerApplication, ServerConfig, ServerOptions, ServerSource> { [BaseApplicationGenerator.COMPOSING]: Record<"composeBackendType", import("../base-core/types.js").GenericTask<any, import("../base/tasks.js").TaskParamWithControl>>; [BaseApplicationGenerator.CONFIGURING_EACH_ENTITY]: Record<"configureRelationships" | "configureMicroservice" | "configureGateway" | "configureEntitySearchEngine" | "configureModelFiltering" | "configurePagination" | "configureEntityTable" | "configureFields", import("../base-core/types.js").GenericTask<any, import("../base-application/tasks.js").ConfiguringEachEntityTaskParam<ServerEntity<({ propertyName: string; propertyNameCapitalized?: string; propertyNameUpperSnakeCase?: string; propertyApiDescription?: string; skipClient?: boolean; skipServer?: boolean; } & Omit<import("../../lib/jhipster/types/field.js").Field, "fieldType"> & { fieldTypeBlob: boolean; fieldTypeString: boolean; fieldTypeInteger: boolean; fieldTypeLong: boolean; fieldTypeBigDecimal: boolean; fieldTypeFloat: boolean; fieldTypeDouble: boolean; fieldTypeUUID: boolean; fieldTypeBoolean: boolean; fieldTypeLocalDate: boolean; fieldTypeZonedDateTime: boolean; fieldTypeAnyBlob: boolean; fieldTypeImageBlob: boolean; fieldTypeTextBlob: boolean; fieldTypeInstant: boolean; fieldTypeDuration: boolean; fieldTypeByte: boolean; fieldTypeByteBuffer: boolean; fieldTypeLocalTime: boolean; } & { fieldValidationMin: boolean; fieldValidationRequired: boolean; fieldValidationPattern: boolean; fieldValidationMax: boolean; fieldValidationUnique: boolean; fieldValidationMinlength: boolean; fieldValidationMaxlength: boolean; fieldValidationMinbytes: boolean; fieldValidationMaxbytes: boolean; } & { path?: string[]; fieldNameCapitalized: string; fieldNameHumanized: string; fieldNameUnderscored: string; fieldTranslationKey?: string; propertyTranslationKey?: string; fieldApiDescription?: string; enumFileName?: string; enumValues?: { name: string; value: string; }[]; fieldValidate?: boolean; unique?: boolean; maxlength?: number; 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; fieldValidationMinLength: boolean; fieldValidationMaxLength: boolean; fieldValidationMinBytes: boolean; fieldValidationMaxBytes: boolean; relatedByOtherEntity?: boolean; enumInstance?: string; builtIn?: boolean; derivedPath?: string[]; } & { fieldType: string; fieldIsEnum: true; } & { propertyJavaBeanName?: string; propertySupplierName?: string; propertyConsumerName?: string; } & { fieldInJavaBeanMethod: string; } & { propertyDtoJavaType?: string; } & { javaFieldType?: string; fieldJavaBuildSpecification?: string; fieldJavadoc?: string; fieldJavaValueGenerator?: string; javaValueGenerator?: string; propertyJavaCustomFilter?: { type: string; superType: string; fieldType: string; }; javaValueSample1?: string; javaValueSample2?: string; fieldValidateRulesPatternJava?: string; javaFieldValidatorsPartial?: string; } & { fieldTypeTemporal: boolean; fieldTypeCharSequence: boolean; fieldTypeNumeric: boolean; fieldSupportsSortBy?: boolean; }) | ({ propertyName: string; propertyNameCapitalized?: string; propertyNameUpperSnakeCase?: string; propertyApiDescription?: string; skipClient?: boolean; skipServer?: boolean; } & Omit<import("../../lib/jhipster/types/field.js").Field, "fieldType"> & { fieldTypeBlob: boolean; fieldTypeString: boolean; fieldTypeInteger: boolean; fieldTypeLong: boolean; fieldTypeBigDecimal: boolean; fieldTypeFloat: boolean; fieldTypeDouble: boolean; fieldTypeUUID: boolean; fieldTypeBoolean: boolean; fieldTypeLocalDate: boolean; fieldTypeZonedDateTime: boolean; fieldTypeAnyBlob: boolean; fieldTypeImageBlob: boolean; fieldTypeTextBlob: boolean; fieldTypeInstant: boolean; fieldTypeDuration: boolean; fieldTypeByte: boolean; fieldTypeByteBuffer: boolean; fieldTypeLocalTime: boolean; } & { fieldValidationMin: boolean; fieldValidationRequired: boolean; fieldValidationPattern: boolean; fieldValidationMax: boolean; fieldValidationUnique: boolean; fieldValidationMinlength: boolean; fieldValidationMaxlength: boolean; fieldValidationMinbytes: boolean; fieldValidationMaxbytes: boolean; } & { path?: string[]; fieldNameCapitalized: string; fieldNameHumanized: string; fieldNameUnderscored: string; fieldTranslationKey?: string; propertyTranslationKey?: string; fieldApiDescription?: string; enumFileName?: string; enumValues?: { name: string; value: string; }[]; fieldValidate?: boolean; unique?: boolean; maxlength?: number; 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; fieldValidationMinLength: boolean; fieldValidationMaxLength: boolean; fieldValidationMinBytes: boolean; fieldValidationMaxBytes: boolean; relatedByOtherEntity?: boolean; enumInstance?: string; builtIn?: boolean; derivedPath?: string[]; } & { fieldType: import("../../lib/jhipster/field-types.ts").FieldType; fieldIsEnum: false; } & { propertyJavaBeanName?: string; propertySupplierName?: string; propertyConsumerName?: string; } & { fieldInJavaBeanMethod: string; } & { propertyDtoJavaType?: string; } & { javaFieldType?: string; fieldJavaBuildSpecification?: string; fieldJavadoc?: string; fieldJavaValueGenerator?: string; javaValueGenerator?: string; propertyJavaCustomFilter?: { type: string; superType: string; fieldType: string; }; javaValueSample1?: string; javaValueSample2?: string; fieldValidateRulesPatternJava?: string; javaFieldValidatorsPartial?: string; } & { fieldTypeTemporal: boolean; fieldTypeCharSequence: boolean; fieldTypeNumeric: boolean; fieldSupportsSortBy?: boolean; }), ServerRelationship>, ServerApplication>>>; [BaseApplicationGenerator.LOADING_ENTITIES]: Record<"loadEntityConfig", import("../base-core/types.js").GenericTask<any, import("../base-application/tasks.js").LoadingEntitiesTaskParam<ServerEntity<({ propertyName: string; propertyNameCapitalized?: string; propertyNameUpperSnakeCase?: string; propertyApiDescription?: string; skipClient?: boolean; skipServer?: boolean; } & Omit<import("../../lib/jhipster/types/field.js").Field, "fieldType"> & { fieldTypeBlob: boolean; fieldTypeString: boolean; fieldTypeInteger: boolean; fieldTypeLong: boolean; fieldTypeBigDecimal: boolean; fieldTypeFloat: boolean; fieldTypeDouble: boolean; fieldTypeUUID: boolean; fieldTypeBoolean: boolean; fieldTypeLocalDate: boolean; fieldTypeZonedDateTime: boolean; fieldTypeAnyBlob: boolean; fieldTypeImageBlob: boolean; fieldTypeTextBlob: boolean; fieldTypeInstant: boolean; fieldTypeDuration: boolean; fieldTypeByte: boolean; fieldTypeByteBuffer: boolean; fieldTypeLocalTime: boolean; } & { fieldValidationMin: boolean; fieldValidationRequired: boolean; fieldValidationPattern: boolean; fieldValidationMax: boolean; fieldValidationUnique: boolean; fieldValidationMinlength: boolean; fieldValidationMaxlength: boolean; fieldValidationMinbytes: boolean; fieldValidationMaxbytes: boolean; } & { path?: string[]; fieldNameCapitalized: string; fieldNameHumanized: string; fieldNameUnderscored: string; fieldTranslationKey?: string; propertyTranslationKey?: string; fieldApiDescription?: string; enumFileName?: string; enumValues?: { name: string; value: string; }[]; fieldValidate?: boolean; unique?: boolean; maxlength?: number; 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; fieldValidationMinLength: boolean; fieldValidationMaxLength: boolean; fieldValidationMinBytes: boolean; fieldValidationMaxBytes: boolean; relatedByOtherEntity?: boolean; enumInstance?: string; builtIn?: boolean; derivedPath?: string[]; } & { fieldType: string; fieldIsEnum: true; } & { propertyJavaBeanName?: string; propertySupplierName?: string; propertyConsumerName?: string; } & { fieldInJavaBeanMethod: string; } & { propertyDtoJavaType?: string; } & { javaFieldType?: string; fieldJavaBuildSpecification?: string; fieldJavadoc?: string; fieldJavaValueGenerator?: string; javaValueGenerator?: string; propertyJavaCustomFilter?: { type: string; superType: string; fieldType: string; }; javaValueSample1?: string; javaValueSample2?: string; fieldValidateRulesPatternJava?: string; javaFieldValidatorsPartial?: string; } & { fieldTypeTemporal: boolean; fieldTypeCharSequence: boolean; fieldTypeNumeric: boolean; fieldSupportsSortBy?: boolean; }) | ({ propertyName: string; propertyNameCapitalized?: string; propertyNameUpperSnakeCase?: string; propertyApiDescription?: string; skipClient?: boolean; skipServer?: boolean; } & Omit<import("../../lib/jhipster/types/field.js").Field, "fieldType"> & { fieldTypeBlob: boolean; fieldTypeString: boolean; fieldTypeInteger: boolean; fieldTypeLong: boolean; fieldTypeBigDecimal: boolean; fieldTypeFloat: boolean; fieldTypeDouble: boolean; fieldTypeUUID: boolean; fieldTypeBoolean: boolean; fieldTypeLocalDate: boolean; fieldTypeZonedDateTime: boolean; fieldTypeAnyBlob: boolean; fieldTypeImageBlob: boolean; fieldTypeTextBlob: boolean; fieldTypeInstant: boolean; fieldTypeDuration: boolean; fieldTypeByte: boolean; fieldTypeByteBuffer: boolean; fieldTypeLocalTime: boolean; } & { fieldValidationMin: boolean; fieldValidationRequired: boolean; fieldValidationPattern: boolean; fieldValidationMax: boolean; fieldValidationUnique: boolean; fieldValidationMinlength: boolean; fieldValidationMaxlength: boolean; fieldValidationMinbytes: boolean; fieldValidationMaxbytes: boolean; } & { path?: string[]; fieldNameCapitalized: string; fieldNameHumanized: string; fieldNameUnderscored: string; fieldTranslationKey?: string; propertyTranslationKey?: string; fieldApiDescription?: string; enumFileName?: string; enumValues?: { name: string; value: string; }[]; fieldValidate?: boolean; unique?: boolean; maxlength?: number; 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; fieldValidationMinLength: boolean; fieldValidationMaxLength: boolean; fieldValidationMinBytes: boolean; fieldValidationMaxBytes: boolean; relatedByOtherEntity?: boolean; enumInstance?: string; builtIn?: boolean; derivedPath?: string[]; } & { fieldType: import("../../lib/jhipster/field-types.ts").FieldType; fieldIsEnum: false; } & { propertyJavaBeanName?: string; propertySupplierName?: string; propertyConsumerName?: string; } & { fieldInJavaBeanMethod: string; } & { propertyDtoJavaType?: string; } & { javaFieldType?: string; fieldJavaBuildSpecification?: string; fieldJavadoc?: string; fieldJavaValueGenerator?: string; javaValueGenerator?: string; propertyJavaCustomFilter?: { type: string; superType: string; fieldType: string; }; javaValueSample1?: string; javaValueSample2?: string; fieldValidateRulesPatternJava?: string; javaFieldValidatorsPartial?: string; } & { fieldTypeTemporal: boolean; fieldTypeCharSequence: boolean; fieldTypeNumeric: boolean; fieldSupportsSortBy?: boolean; }), ServerRelationship>, ServerApplication>>>; [BaseApplicationGenerator.POST_PREPARING_EACH_ENTITY]: Record<"checkForTableName", import("../base-core/types.js").GenericTask<any, import("../base-application/tasks.js").PreparingEachEntityTaskParam<ServerEntity<({ propertyName: string; propertyNameCapitalized?: string; propertyNameUpperSnakeCase?: string; propertyApiDescription?: string; skipClient?: boolean; skipServer?: boolean; } & Omit<import("../../lib/jhipster/types/field.js").Field, "fieldType"> & { fieldTypeBlob: boolean; fieldTypeString: boolean; fieldTypeInteger: boolean; fieldTypeLong: boolean; fieldTypeBigDecimal: boolean; fieldTypeFloat: boolean; fieldTypeDouble: boolean; fieldTypeUUID: boolean; fieldTypeBoolean: boolean; fieldTypeLocalDate: boolean; fieldTypeZonedDateTime: boolean; fieldTypeAnyBlob: boolean; fieldTypeImageBlob: boolean; fieldTypeTextBlob: boolean; fieldTypeInstant: boolean; fieldTypeDuration: boolean; fieldTypeByte: boolean; fieldTypeByteBuffer: boolean; fieldTypeLocalTime: boolean; } & { fieldValidationMin: boolean; fieldValidationRequired: boolean; fieldValidationPattern: boolean; fieldValidationMax: boolean; fieldValidationUnique: boolean; fieldValidationMinlength: boolean; fieldValidationMaxlength: boolean; fieldValidationMinbytes: boolean; fieldValidationMaxbytes: boolean; } & { path?: string[]; fieldNameCapitalized: string; fieldNameHumanized: string; fieldNameUnderscored: string; fieldTranslationKey?: string; propertyTranslationKey?: string; fieldApiDescription?: string; enumFileName?: string; enumValues?: { name: string; value: string; }[]; fieldValidate?: boolean; unique?: boolean; maxlength?: number; 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; fieldValidationMinLength: boolean; fieldValidationMaxLength: boolean; fieldValidationMinBytes: boolean; fieldValidationMaxBytes: boolean; relatedByOtherEntity?: boolean; enumInstance?: string; builtIn?: boolean; derivedPath?: string[]; } & { fieldType: string; fieldIsEnum: true; } & { propertyJavaBeanName?: string; propertySupplierName?: string; propertyConsumerName?: string; } & { fieldInJavaBeanMethod: string; } & { propertyDtoJavaType?: string; } & { javaFieldType?: string; fieldJavaBuildSpecification?: string; fieldJavadoc?: string; fieldJavaValueGenerator?: string; javaValueGenerator?: string; propertyJavaCustomFilter?: { type: string; superType: string; fieldType: string; }; javaValueSample1?: string; javaValueSample2?: string; fieldValidateRulesPatternJava?: string; javaFieldValidatorsPartial?: string; } & { fieldTypeTemporal: boolean; fieldTypeCharSequence: boolean; fieldTypeNumeric: boolean; fieldSupportsSortBy?: boolean; }) | ({ propertyName: string; propertyNameCapitalized?: string; propertyNameUpperSnakeCase?: string; propertyApiDescription?: string; skipClient?: boolean; skipServer?: boolean; } & Omit<import("../../lib/jhipster/types/field.js").Field, "fieldType"> & { fieldTypeBlob: boolean; fieldTypeString: boolean; fieldTypeInteger: boolean; fieldTypeLong: boolean; fieldTypeBigDecimal: boolean; fieldTypeFloat: boolean; fieldTypeDouble: boolean; fieldTypeUUID: boolean; fieldTypeBoolean: boolean; fieldTypeLocalDate: boolean; fieldTypeZonedDateTime: boolean; fieldTypeAnyBlob: boolean; fieldTypeImageBlob: boolean; fieldTypeTextBlob: boolean; fieldTypeInstant: boolean; fieldTypeDuration: boolean; fieldTypeByte: boolean; fieldTypeByteBuffer: boolean; fieldTypeLocalTime: boolean; } & { fieldValidationMin: boolean; fieldValidationRequired: boolean; fieldValidationPattern: boolean; fieldValidationMax: boolean; fieldValidationUnique: boolean; fieldValidationMinlength: boolean; fieldValidationMaxlength: boolean; fieldValidationMinbytes: boolean; fieldValidationMaxbytes: boolean; } & { path?: string[]; fieldNameCapitalized: string; fieldNameHumanized: string; fieldNameUnderscored: string; fieldTranslationKey?: string; propertyTranslationKey?: string; fieldApiDescription?: string; enumFileName?: string; enumValues?: { name: string; value: string; }[]; fieldValidate?: boolean; unique?: boolean; maxlength?: number; 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; fieldValidationMinLength: boolean; fieldValidationMaxLength: boolean; fieldValidationMinBytes: boolean; fieldValidationMaxBytes: boolean; relatedByOtherEntity?: boolean; enumInstance?: string; builtIn?: boolean; derivedPath?: string[]; } & { fieldType: import("../../lib/jhipster/field-types.ts").FieldType; fieldIsEnum: false; } & { propertyJavaBeanName?: string; propertySupplierName?: string; propertyConsumerName?: string; } & { fieldInJavaBeanMethod: string; } & { propertyDtoJavaType?: string; } & { javaFieldType?: string; fieldJavaBuildSpecification?: string; fieldJavadoc?: string; fieldJavaValueGenerator?: string; javaValueGenerator?: string; propertyJavaCustomFilter?: { type: string; superType: string; fieldType: string; }; javaValueSample1?: string; javaValueSample2?: string; fieldValidateRulesPatternJava?: string; javaFieldValidatorsPartial?: string; } & { fieldTypeTemporal: boolean; fieldTypeCharSequence: boolean; fieldTypeNumeric: boolean; fieldSupportsSortBy?: boolean; }), ServerRelationship>, ServerApplication>>>; [BaseApplicationGenerator.DEFAULT]: Record<"checkCompositeIds", import("../base-core/types.js").GenericTask<any, import("../base/tasks.js").TaskParamWithControl & { application: ServerApplication; } & { entities: ServerEntity<({ propertyName: string; propertyNameCapitalized?: string; propertyNameUpperSnakeCase?: string; propertyApiDescription?: string; skipClient?: boolean; skipServer?: boolean; } & Omit<import("../../lib/jhipster/types/field.js").Field, "fieldType"> & { fieldTypeBlob: boolean; fieldTypeString: boolean; fieldTypeInteger: boolean; fieldTypeLong: boolean; fieldTypeBigDecimal: boolean; fieldTypeFloat: boolean; fieldTypeDouble: boolean; fieldTypeUUID: boolean; fieldTypeBoolean: boolean; fieldTypeLocalDate: boolean; fieldTypeZonedDateTime: boolean; fieldTypeAnyBlob: boolean; fieldTypeImageBlob: boolean; fieldTypeTextBlob: boolean; fieldTypeInstant: boolean; fieldTypeDuration: boolean; fieldTypeByte: boolean; fieldTypeByteBuffer: boolean; fieldTypeLocalTime: boolean; } & { fieldValidationMin: boolean; fieldValidationRequired: boolean; fieldValidationPattern: boolean; fieldValidationMax: boolean; fieldValidationUnique: boolean; fieldValidationMinlength: boolean; fieldValidationMaxlength: boolean; fieldValidationMinbytes: boolean; fieldValidationMaxbytes: boolean; } & { path?: string[]; fieldNameCapitalized: string; fieldNameHumanized: string; fieldNameUnderscored: string; fieldTranslationKey?: string; propertyTranslationKey?: string; fieldApiDescription?: string; enumFileName?: string; enumValues?: { name: string; value: string; }[]; fieldValidate?: boolean; unique?: boolean; maxlength?: number; 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; fieldValidationMinLength: boolean; fieldValidationMaxLength: boolean; fieldValidationMinBytes: boolean; fieldValidationMaxBytes: boolean; relatedByOtherEntity?: boolean; enumInstance?: string; builtIn?: boolean; derivedPath?: string[]; } & { fieldType: string; fieldIsEnum: true; } & { propertyJavaBeanName?: string; propertySupplierName?: string; propertyConsumerName?: string; } & { fieldInJavaBeanMethod: string; } & { propertyDtoJavaType?: string; } & { javaFieldType?: string; fieldJavaBuildSpecification?: string; fieldJavadoc?: string; fieldJavaValueGenerator?: string; javaValueGenerator?: string; propertyJavaCustomFilter?: { type: string; superType: string; fieldType: string; }; javaValueSample1?: string; javaValueSample2?: string; fieldValidateRulesPatternJava?: string; javaFieldValidatorsPartial?: string; } & { fieldTypeTemporal: boolean; fieldTypeCharSequence: boolean; fieldTypeNumeric: boolean; fieldSupportsSortBy?: boolean; }) | ({ propertyName: string; propertyNameCapitalized?: string; propertyNameUpperSnakeCase?: string; propertyApiDescription?: string; skipClient?: boolean; skipServer?: boolean; } & Omit<import("../../lib/jhipster/types/field.js").Field, "fieldType"> & { fieldTypeBlob: boolean; fieldTypeString: boolean; fieldTypeInteger: boolean; fieldTypeLong: boolean; fieldTypeBigDecimal: boolean; fieldTypeFloat: boolean; fieldTypeDouble: boolean; fieldTypeUUID: boolean; fieldTypeBoolean: boolean; fieldTypeLocalDate: boolean; fieldTypeZonedDateTime: boolean; fieldTypeAnyBlob: boolean; fieldTypeImageBlob: boolean; fieldTypeTextBlob: boolean; fieldTypeInstant: boolean; fieldTypeDuration: boolean; fieldTypeByte: boolean; fieldTypeByteBuffer: boolean; fieldTypeLocalTime: boolean; } & { fieldValidationMin: boolean; fieldValidationRequired: boolean; fieldValidationPattern: boolean; fieldValidationMax: boolean; fieldValidationUnique: boolean; fieldValidationMinlength: boolean; fieldValidationMaxlength: boolean; fieldValidationMinbytes: boolean; fieldValidationMaxbytes: boolean; } & { path?: string[]; fieldNameCapitalized: string; fieldNameHumanized: string; fieldNameUnderscored: string; fieldTranslationKey?: string; propertyTranslationKey?: string; fieldApiDescription?: string; enumFileName?: string; enumValues?: { name: string; value: string; }[]; fieldValidate?: boolean; unique?: boolean; maxlength?: number; 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; fieldValidationMinLength: boolean; fieldValidationMaxLength: boolean; fieldValidationMinBytes: boolean; fieldValidationMaxBytes: boolean; relatedByOtherEntity?: boolean; enumInstance?: string; builtIn?: boolean; derivedPath?: string[]; } & { fieldType: import("../../lib/jhipster/field-types.ts").FieldType; fieldIsEnum: false; } & { propertyJavaBeanName?: string; propertySupplierName?: string; propertyConsumerName?: string; } & { fieldInJavaBeanMethod: string; } & { propertyDtoJavaType?: string; } & { javaFieldType?: string; fieldJavaBuildSpecification?: string; fieldJavadoc?: string; fieldJavaValueGenerator?: string; javaValueGenerator?: string; propertyJavaCustomFilter?: { type: string; superType: string; fieldType: string; }; javaValueSample1?: string; javaValueSample2?: string; fieldValidateRulesPatternJava?: string; javaFieldValidatorsPartial?: string; } & { fieldTypeTemporal: boolean; fieldTypeCharSequence: boolean; fieldTypeNumeric: boolean; fieldSupportsSortBy?: boolean; }), ServerRelationship>[]; }>>; beforeQueue(): Promise<void>; get composing(): Record<"composeBackendType", import("../base-core/types.js").GenericTask<any, import("../base/tasks.js").TaskParamWithControl>>; get configuringEachEntity(): Record<"configureRelationships" | "configureMicroservice" | "configureGateway" | "configureEntitySearchEngine" | "configureModelFiltering" | "configurePagination" | "configureEntityTable" | "configureFields", import("../base-core/types.js").GenericTask<any, import("../base-application/tasks.js").ConfiguringEachEntityTaskParam<ServerEntity<({ propertyName: string; propertyNameCapitalized?: string; propertyNameUpperSnakeCase?: string; propertyApiDescription?: string; skipClient?: boolean; skipServer?: boolean; } & Omit<import("../../lib/jhipster/types/field.js").Field, "fieldType"> & { fieldTypeBlob: boolean; fieldTypeString: boolean; fieldTypeInteger: boolean; fieldTypeLong: boolean; fieldTypeBigDecimal: boolean; fieldTypeFloat: boolean; fieldTypeDouble: boolean; fieldTypeUUID: boolean; fieldTypeBoolean: boolean; fieldTypeLocalDate: boolean; fieldTypeZonedDateTime: boolean; fieldTypeAnyBlob: boolean; fieldTypeImageBlob: boolean; fieldTypeTextBlob: boolean; fieldTypeInstant: boolean; fieldTypeDuration: boolean; fieldTypeByte: boolean; fieldTypeByteBuffer: boolean; fieldTypeLocalTime: boolean; } & { fieldValidationMin: boolean; fieldValidationRequired: boolean; fieldValidationPattern: boolean; fieldValidationMax: boolean; fieldValidationUnique: boolean; fieldValidationMinlength: boolean; fieldValidationMaxlength: boolean; fieldValidationMinbytes: boolean; fieldValidationMaxbytes: boolean; } & { path?: string[]; fieldNameCapitalized: string; fieldNameHumanized: string; fieldNameUnderscored: string; fieldTranslationKey?: string; propertyTranslationKey?: string; fieldApiDescription?: string; enumFileName?: string; enumValues?: { name: string; value: string; }[]; fieldValidate?: boolean; unique?: boolean; maxlength?: number; 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; fieldValidationMinLength: boolean; fieldValidationMaxLength: boolean; fieldValidationMinBytes: boolean; fieldValidationMaxBytes: boolean; relatedByOtherEntity?: boolean; enumInstance?: string; builtIn?: boolean; derivedPath?: string[]; } & { fieldType: string; fieldIsEnum: true; } & { propertyJavaBeanName?: string; propertySupplierName?: string; propertyConsumerName?: string; } & { fieldInJavaBeanMethod: string; } & { propertyDtoJavaType?: string; } & { javaFieldType?: string; fieldJavaBuildSpecification?: string; fieldJavadoc?: string; fieldJavaValueGenerator?: string; javaValueGenerator?: string; propertyJavaCustomFilter?: { type: string; superType: string; fieldType: string; }; javaValueSample1?: string; javaValueSample2?: string; fieldValidateRulesPatternJava?: string; javaFieldValidatorsPartial?: string; } & { fieldTypeTemporal: boolean; fieldTypeCharSequence: boolean; fieldTypeNumeric: boolean; fieldSupportsSortBy?: boolean; }) | ({ propertyName: string; propertyNameCapitalized?: string; propertyNameUpperSnakeCase?: string; propertyApiDescription?: string; skipClient?: boolean; skipServer?: boolean; } & Omit<import("../../lib/jhipster/types/field.js").Field, "fieldType"> & { fieldTypeBlob: boolean; fieldTypeString: boolean; fieldTypeInteger: boolean; fieldTypeLong: boolean; fieldTypeBigDecimal: boolean; fieldTypeFloat: boolean; fieldTypeDouble: boolean; fieldTypeUUID: boolean; fieldTypeBoolean: boolean; fieldTypeLocalDate: boolean; fieldTypeZonedDateTime: boolean; fieldTypeAnyBlob: boolean; fieldTypeImageBlob: boolean; fieldTypeTextBlob: boolean; fieldTypeInstant: boolean; fieldTypeDuration: boolean; fieldTypeByte: boolean; fieldTypeByteBuffer: boolean; fieldTypeLocalTime: boolean; } & { fieldValidationMin: boolean; fieldValidationRequired: boolean; fieldValidationPattern: boolean; fieldValidationMax: boolean; fieldValidationUnique: boolean; fieldValidationMinlength: boolean; fieldValidationMaxlength: boolean; fieldValidationMinbytes: boolean; fieldValidationMaxbytes: boolean; } & { path?: string[]; fieldNameCapitalized: string; fieldNameHumanized: string; fieldNameUnderscored: string; fieldTranslationKey?: string; propertyTranslationKey?: string; fieldApiDescription?: string; enumFileName?: string; enumValues?: { name: string; value: string; }[]; fieldValidate?: boolean; unique?: boolean; maxlength?: number; 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; fieldValidationMinLength: boolean; fieldValidationMaxLength: boolean; fieldValidationMinBytes: boolean; fieldValidationMaxBytes: boolean; relatedByOtherEntity?: boolean; enumInstance?: string; builtIn?: boolean; derivedPath?: string[]; } & { fieldType: import("../../lib/jhipster/field-types.ts").FieldType; fieldIsEnum: false; } & { propertyJavaBeanName?: string; propertySupplierName?: string; propertyConsumerName?: string; } & { fieldInJavaBeanMethod: string; } & { propertyDtoJavaType?: string; } & { javaFieldType?: string; fieldJavaBuildSpecification?: string; fieldJavadoc?: string; fieldJavaValueGenerator?: string; javaValueGenerator?: string; propertyJavaCustomFilter?: { type: string; superType: string; fieldType: string; }; javaValueSample1?: string; javaValueSample2?: string; fieldValidateRulesPatternJava?: string; javaFieldValidatorsPartial?: string; } & { fieldTypeTemporal: boolean; fieldTypeCharSequence: boolean; fieldTypeNumeric: boolean; fieldSupportsSortBy?: boolean; }), ServerRelationship>, ServerApplication>>>; get loadingEntities(): Record<"loadEntityConfig", import("../base-core/types.js").GenericTask<any, import("../base-application/tasks.js").LoadingEntitiesTaskParam<ServerEntity<({ propertyName: string; propertyNameCapitalized?: string; propertyNameUpperSnakeCase?: string; propertyApiDescription?: string; skipClient?: boolean; skipServer?: boolean; } & Omit<import("../../lib/jhipster/types/field.js").Field, "fieldType"> & { fieldTypeBlob: boolean; fieldTypeString: boolean; fieldTypeInteger: boolean; fieldTypeLong: boolean; fieldTypeBigDecimal: boolean; fieldTypeFloat: boolean; fieldTypeDouble: boolean; fieldTypeUUID: boolean; fieldTypeBoolean: boolean; fieldTypeLocalDate: boolean; fieldTypeZonedDateTime: boolean; fieldTypeAnyBlob: boolean; fieldTypeImageBlob: boolean; fieldTypeTextBlob: boolean; fieldTypeInstant: boolean; fieldTypeDuration: boolean; fieldTypeByte: boolean; fieldTypeByteBuffer: boolean; fieldTypeLocalTime: boolean; } & { fieldValidationMin: boolean; fieldValidationRequired: boolean; fieldValidationPattern: boolean; fieldValidationMax: boolean; fieldValidationUnique: boolean; fieldValidationMinlength: boolean; fieldValidationMaxlength: boolean; fieldValidationMinbytes: boolean; fieldValidationMaxbytes: boolean; } & { path?: string[]; fieldNameCapitalized: string; fieldNameHumanized: string; fieldNameUnderscored: string; fieldTranslationKey?: string; propertyTranslationKey?: string; fieldApiDescription?: string; enumFileName?: string; enumValues?: { name: string; value: string; }[]; fieldValidate?: boolean; unique?: boolean; maxlength?: number; 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; fieldValidationMinLength: boolean; fieldValidationMaxLength: boolean; fieldValidationMinBytes: boolean; fieldValidationMaxBytes: boolean; relatedByOtherEntity?: boolean; enumInstance?: string; builtIn?: boolean; derivedPath?: string[]; } & { fieldType: string; fieldIsEnum: true; } & { propertyJavaBeanName?: string; propertySupplierName?: string; propertyConsumerName?: string; } & { fieldInJavaBeanMethod: string; } & { propertyDtoJavaType?: string; } & { javaFieldType?: string; fieldJavaBuildSpecification?: string; fieldJavadoc?: string; fieldJavaValueGenerator?: string; javaValueGenerator?: string; propertyJavaCustomFilter?: { type: string; superType: string; fieldType: string; }; javaValueSample1?: string; javaValueSample2?: string; fieldValidateRulesPatternJava?: string; javaFieldValidatorsPartial?: string; } & { fieldTypeTemporal: boolean; fieldTypeCharSequence: boolean; fieldTypeNumeric: boolean; fieldSupportsSortBy?: boolean; }) | ({ propertyName: string; propertyNameCapitalized?: string; propertyNameUpperSnakeCase?: string; propertyApiDescription?: string; skipClient?: boolean; skipServer?: boolean; } & Omit<import("../../lib/jhipster/types/field.js").Field, "fieldType"> & { fieldTypeBlob: boolean; fieldTypeString: boolean; fieldTypeInteger: boolean; fieldTypeLong: boolean; fieldTypeBigDecimal: boolean; fieldTypeFloat: boolean; fieldTypeDouble: boolean; fieldTypeUUID: boolean; fieldTypeBoolean: boolean; fieldTypeLocalDate: boolean; fieldTypeZonedDateTime: boolean; fieldTypeAnyBlob: boolean; fieldTypeImageBlob: boolean; fieldTypeTextBlob: boolean; fieldTypeInstant: boolean; fieldTypeDuration: boolean; fieldTypeByte: boolean; fieldTypeByteBuffer: boolean; fieldTypeLocalTime: boolean; } & { fieldValidationMin: boolean; fieldValidationRequired: boolean; fieldValidationPattern: boolean; fieldValidationMax: boolean; fieldValidationUnique: boolean; fieldValidationMinlength: boolean; fieldValidationMaxlength: boolean; fieldValidationMinbytes: boolean; fieldValidationMaxbytes: boolean; } & { path?: string[]; fieldNameCapitalized: string; fieldNameHumanized: string; fieldNameUnderscored: string; fieldTranslationKey?: string; propertyTranslationKey?: string; fieldApiDescription?: string; enumFileName?: string; enumValues?: { name: string; value: string; }[]; fieldValidate?: boolean; unique?: boolean; maxlength?: number; 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; fieldValidationMinLength: boolean; fieldValidationMaxLength: boolean; fieldValidationMinBytes: boolean; fieldValidationMaxBytes: boolean; relatedByOtherEntity?: boolean; enumInstance?: string; builtIn?: boolean; derivedPath?: string[]; } & { fieldType: import("../../lib/jhipster/field-types.ts").FieldType; fieldIsEnum: false; } & { propertyJavaBeanName?: string; propertySupplierName?: string; propertyConsumerName?: string; } & { fieldInJavaBeanMethod: string; } & { propertyDtoJavaType?: string; } & { javaFieldType?: string; fieldJavaBuildSpecification?: string; fieldJavadoc?: string; fieldJavaValueGenerator?: string; javaValueGenerator?: string; propertyJavaCustomFilter?: { type: string; superType: string; fieldType: string; }; javaValueSample1?: string; javaValueSample2?: string; fieldValidateRulesPatternJava?: string; javaFieldValidatorsPartial?: string; } & { fieldTypeTemporal: boolean; fieldTypeCharSequence: boolean; fieldTypeNumeric: boolean; fieldSupportsSortBy?: boolean; }), ServerRelationship>, ServerApplication>>>; get postPreparingEachEntity(): Record<"checkForTableName", import("../base-core/types.js").GenericTask<any, import("../base-application/tasks.js").PreparingEachEntityTaskParam<ServerEntity<({ propertyName: string; propertyNameCapitalized?: string; propertyNameUpperSnakeCase?: string; propertyApiDescription?: string; skipClient?: boolean; skipServer?: boolean; } & Omit<import("../../lib/jhipster/types/field.js").Field, "fieldType"> & { fieldTypeBlob: boolean; fieldTypeString: b