/**
 * Copyright 2013-2025 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.js';
import TranslationData from './translation-data.js';
/**
 * This is the base class for a generator that generates entities.
 */
export default class LanguagesGenerator extends BaseApplicationGenerator {
    [BaseApplicationGenerator.INITIALIZING]: any;
    [BaseApplicationGenerator.PROMPTING]: any;
    [BaseApplicationGenerator.CONFIGURING]: any;
    [BaseApplicationGenerator.PREPARING]: any;
    [BaseApplicationGenerator.DEFAULT]: any;
    [BaseApplicationGenerator.WRITING]: any;
    [BaseApplicationGenerator.WRITING_ENTITIES]: any;
    [BaseApplicationGenerator.POST_WRITING]: any;
    [BaseApplicationGenerator.POST_WRITING_ENTITIES]: any;
    askForMoreLanguages: boolean;
    askForNativeLanguage: boolean;
    translationData: TranslationData;
    supportedLanguages: any;
    languages: any;
    /**
     * Languages to be generated.
     * Can be incremental or every language.
     */
    languagesToApply: any;
    composedBlueprints: any[];
    languageCommand: any;
    writeJavaLanguageFiles: any;
    regenerateLanguages: any;
    constructor(args: any, options: any, features: any);
    beforeQueue(): Promise<void>;
    get initializing(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/base/tasks.js").TaskParamWithControl, "validate" | "languagesToApply" | "validateSupportedLanguages" | "exportControl">;
    get prompting(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/base/tasks.js").TaskParamWithControl, "askI18n" | "askForLanguages" | "checkPrompts">;
    get configuring(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/base/tasks.js").TaskParamWithControl, "defaults" | "migrateLanguages">;
    get preparing(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/application/tasks.js").PreparingTaskParam<import("../base-application/index.js").Entity<import("../base-application/index.js").Field, never>, import("../../lib/types/application/application.js").ApplicationType<import("../base-application/index.js").Entity<import("../base-application/index.js").Field, never>>>, "prepareForTemplates">;
    get default(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/application/tasks.js").TaskParamWithEntities<import("../base-application/index.js").Entity<import("../base-application/index.js").Field, never>, import("../../lib/types/application/application.js").ApplicationType<import("../base-application/index.js").Entity<import("../base-application/index.js").Field, never>>>, "loadNativeLanguage">;
    get writing(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/application/tasks.js").WritingTaskParam<import("../base-application/index.js").Entity<import("../base-application/index.js").Field, never>, import("../../lib/types/application/application.js").ApplicationType<import("../base-application/index.js").Entity<import("../base-application/index.js").Field, never>>>, "writeClientTranslations" | "translateFile">;
    get writingEntities(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/application/tasks.js").TaskParamWithEntities<import("../base-application/index.js").Entity<import("../base-application/index.js").Field, never>, import("../../lib/types/application/application.js").ApplicationType<import("../base-application/index.js").Entity<import("../base-application/index.js").Field, never>>>, "writeEnumFiles" | "writeClientFiles">;
    get postWriting(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/application/tasks.js").PostWritingTaskParam<import("../base-application/index.js").Entity<import("../base-application/index.js").Field, never>, import("../../lib/types/application/application.js").ApplicationType<import("../base-application/index.js").Entity<import("../base-application/index.js").Field, never>>>, "write">;
    get postWritingEntities(): import("../../lib/types/base/tasks.js").GenericTaskGroup<any, import("../../lib/types/application/tasks.js").PostWritingEntitiesTaskParam<import("../base-application/index.js").Entity<import("../base-application/index.js").Field, never>, import("../../lib/types/application/application.js").ApplicationType<import("../base-application/index.js").Entity<import("../base-application/index.js").Field, never>>>, "addEntities">;
    migrateLanguages(languagesToMigrate: Record<string, string>): void;
    queueLoadLanguages({ enableTranslation, clientSrcDir, nativeLanguage, fallbackLanguage }: {
        enableTranslation: any;
        clientSrcDir: any;
        nativeLanguage: any;
        fallbackLanguage?: string | undefined;
    }): void;
}
