gen-jhipster
Version:
VHipster - Spring Boot + Angular/React/Vue in one handy generator
49 lines (39 loc) • 1.71 kB
TypeScript
import type {
ExportApplicationPropertiesFromCommand,
ExportGeneratorOptionsFromCommand,
ExportStoragePropertiesFromCommand,
} from '../../lib/command/index.ts';
import type { Entity as BaseApplicationEntity, Features as BaseApplicationFeatures } from '../base-application/types.ts';
import type {
Application as CommonApplication,
Entity as CommonEntity,
Field as CommonField,
Relationship as CommonRelationship,
} from '../common/types.d.ts';
import type {
Application as JavaApplication,
Config as JavaConfig,
Entity as JavaEntity,
Field as JavaField,
Options as JavaOptions,
Relationship as JavaRelationship,
Source as JavaSource,
} from '../java/types.ts';
import type { Relationship as LanguagesRelationship } from '../languages/types.d.ts';
import type { DatabaseEntity } from '../liquibase/types.ts';
import type Command from './command.ts';
export { BaseApplicationFeatures as Features };
export type Config = JavaConfig & ExportStoragePropertiesFromCommand<typeof Command>;
export type Options = JavaOptions & ExportGeneratorOptionsFromCommand<typeof Command>;
export type Field = JavaField & CommonField;
export interface Relationship extends JavaRelationship, LanguagesRelationship, CommonRelationship {
relationshipApiDescription?: string;
}
export interface Entity<F extends Field = Field, R extends Relationship = Relationship>
extends JavaEntity<F, R>, CommonEntity<F, R>, DatabaseEntity<F, R> {
skipCheckLengthOfIdentifier?: boolean;
}
export type Application<E extends BaseApplicationEntity = Entity> = ExportApplicationPropertiesFromCommand<typeof Command> &
CommonApplication<E> &
JavaApplication<E>;
export type { JavaSource as Source };