import type { JDLRuntime } from '../types/runtime.js'; import type JDLApplicationConfigurationOption from './jdl-application-configuration-option.js'; import type JDLApplicationConfiguration from './jdl-application-configuration.js'; import JDLApplicationEntities from './jdl-application-entities.js'; import JDLOptions from './jdl-options.js'; import type AbstractJDLOption from './abstract-jdl-option.js'; export default class JDLApplication { config: JDLApplicationConfiguration; namespaceConfigs: JDLApplicationConfiguration[]; entityNames: JDLApplicationEntities; options: JDLOptions; constructor({ config, entityNames, namespaceConfigs }: any | undefined, runtime: JDLRuntime); setConfigurationOption(option: JDLApplicationConfigurationOption): void; hasConfigurationOption(optionName: string): boolean; getConfigurationOptionValue(optionName: string): any; forEachConfigurationOption(passedFunction: (option: JDLApplicationConfigurationOption) => void): void; forEachNamespaceConfiguration(passedFunction: (option: JDLApplicationConfiguration) => void): void; addEntityName(entityName: string): void; addEntityNames(entityNames?: string[]): void; getEntityNames(): string[]; hasEntityName(entityName: string): boolean; forEachEntityName(passedFunction: any): void; addOption(jdlOption: AbstractJDLOption | undefined): void; forEachOption(passedFunction: (option: AbstractJDLOption) => void): void; getOptionQuantity(): number; toString(): string; }