declare const command: {
    readonly options: {
        readonly fakeKeytool: {
            readonly description: "Add a fake certificate store file for test purposes";
            readonly type: BooleanConstructor;
            readonly env: "FAKE_KEYTOOL";
            readonly scope: "generator";
            readonly hide: true;
        };
    };
    readonly configs: {
        readonly reactive: {
            readonly cli: {
                readonly description: "Generate a reactive backend";
                readonly type: BooleanConstructor;
            };
            readonly prompt: (gen: any) => {
                when: () => boolean;
                type: "confirm";
                message: string;
            };
            readonly scope: "storage";
        };
        readonly serverPort: {
            readonly prompt: (gen: any) => {
                when: () => boolean;
                type: "input";
                validate: (input: any) => true | "This is not a valid port number.";
                message: string;
                default: () => any;
            };
            readonly configure: (gen: any) => void;
            readonly scope: "storage";
        };
        readonly serviceDiscoveryType: {
            readonly cli: {
                readonly description: "Service discovery type";
                readonly type: StringConstructor;
            };
            readonly prompt: (gen: any) => {
                when: () => boolean;
                type: "list";
                message: string;
                default: string;
            };
            readonly choices: readonly [{
                readonly value: "consul";
                readonly name: "Consul (recommended)";
            }, {
                readonly value: "nacos";
                readonly name: "Nacos";
            }, {
                readonly value: "eureka";
                readonly name: "JHipster Registry (legacy, uses Eureka, provides Spring Cloud Config support)";
            }, {
                readonly value: "no";
                readonly name: "No service discovery";
            }];
            readonly scope: "storage";
        };
        readonly jwtSecretKey: {
            readonly cli: {
                readonly type: StringConstructor;
                readonly env: "JHI_JWT_SECRET_KEY";
                readonly hide: true;
            };
            readonly scope: "storage";
        };
        readonly rememberMeKey: {
            readonly cli: {
                readonly type: StringConstructor;
                readonly hide: true;
            };
            readonly scope: "storage";
        };
        readonly authenticationType: {
            readonly cli: {
                readonly name: "auth";
                readonly description: "Provide authentication type for the application when skipping server side generation";
                readonly type: StringConstructor;
            };
            readonly prompt: (gen: any, config: import("../../lib/command/types.js").ConfigSpec<any>) => {
                type: "list";
                message: string;
                choices: () => any;
                default: () => any;
            };
            readonly choices: readonly [{
                readonly value: "jwt";
                readonly name: "JWT authentication (stateless, with a token)";
            }, {
                readonly value: "oauth2";
                readonly name: "OAuth 2.0 / OIDC Authentication (stateful, works with Keycloak and Okta)";
            }, {
                readonly value: "session";
                readonly name: "HTTP Session Authentication (stateful, default Spring Security mechanism)";
            }];
            readonly configure: (gen: any) => void;
            readonly scope: "storage";
        };
        readonly feignClient: {
            readonly description: "Generate a feign client";
            readonly cli: {
                readonly type: BooleanConstructor;
            };
            readonly prompt: (gen: any) => {
                type: "confirm";
                message: string;
                when: ({ reactive }: any) => boolean;
            };
            readonly jdl: {
                readonly type: "boolean";
                readonly tokenType: "BOOLEAN";
            };
            readonly default: false;
            readonly scope: "storage";
        };
        readonly syncUserWithIdp: {
            readonly description: "Allow relationships with User for oauth2 applications";
            readonly cli: {
                readonly type: BooleanConstructor;
            };
            readonly prompt: (gen: any) => {
                type: "confirm";
                message: string;
                when: ({ authenticationType }: any) => boolean;
            };
            readonly jdl: {
                readonly type: "boolean";
                readonly tokenType: "BOOLEAN";
            };
            readonly configure: (gen: any) => void;
            readonly scope: "storage";
        };
        readonly defaultPackaging: {
            readonly description: "Default packaging for the application";
            readonly cli: {
                readonly type: StringConstructor;
                readonly hide: true;
            };
            readonly choices: readonly ["jar", "war"];
            readonly default: "jar";
            readonly scope: "storage";
            readonly configure: (gen: any) => void;
        };
        readonly databaseType: {
            readonly cli: {
                readonly type: StringConstructor;
                readonly hide: true;
            };
            readonly choices: readonly ["sql", "mongodb", "couchbase", "cassandra", "neo4j", "no"];
            readonly scope: "storage";
        };
        readonly messageBroker: {
            readonly description: "message broker";
            readonly cli: {
                readonly type: StringConstructor;
            };
            readonly jdl: {
                readonly type: "string";
                readonly tokenType: "NAME";
                readonly tokenValuePattern: RegExp;
            };
            readonly choices: readonly ["kafka", "pulsar", "no"];
            readonly scope: "storage";
        };
        readonly databaseMigration: {
            readonly description: "Database migration";
            readonly cli: {
                readonly type: StringConstructor;
            };
            readonly jdl: {
                readonly type: "string";
                readonly tokenType: "NAME";
                readonly tokenValuePattern: RegExp;
            };
            readonly choices: readonly ["liquibase", "no"];
            readonly scope: "storage";
        };
        readonly graalvmSupport: {
            readonly description: "Experimental GraalVM Native support";
            readonly cli: {
                readonly type: BooleanConstructor;
            };
            readonly jdl: {
                readonly type: "boolean";
                readonly tokenType: "BOOLEAN";
            };
            readonly scope: "storage";
        };
    };
    readonly import: readonly ["java", "liquibase", "spring-data-relational", "begcode:spring-cloud:gateway"];
};
export default command;
