import type { AllForms, AllInvasions, AllPokemon, AllQuests, FinalResult, TranslationKeys } from '../typings/dataTypes';
import type { EvolutionQuest } from '../typings/general';
import type { Locales, Options } from '../typings/inputs';
import Masterfile from './Masterfile';
export default class Translations extends Masterfile {
    options: Options;
    translationApkUrl: string;
    translationRemoteUrl: string;
    rawTranslations: TranslationKeys;
    manualTranslations: {
        [key: string]: TranslationKeys;
    };
    parsedTranslations: {
        [key: string]: TranslationKeys;
    };
    codes: {
        [key in Locales[number]]: {
            name: string;
            code: string;
        };
    };
    masterfile: FinalResult;
    generics: {
        [key: string]: {
            [key: string]: string;
        };
    };
    reference: TranslationKeys;
    enFallback: TranslationKeys;
    collator: Intl.Collator;
    constructor(options: Options, translationApkUrl?: string, translationRemoteUrl?: string);
    set fromApk(values: TranslationKeys);
    removeEscapes(str: string): string;
    fetchTranslations(locale: Locales[number], availableManualTranslations: string[]): Promise<void>;
    mergeManualTranslations(locale: string): void;
    languageRef(locale: string): void;
    mergeCategories(locale: string): void;
    translateMasterfile(data: FinalResult, locale: string, formsSeparate: boolean): void;
    pokemon(locale: string, subItems: {
        [id: string]: boolean;
    }, pokemon: AllPokemon, forms: AllForms, unsetFormName?: string): void;
    pokemonCategories(locale: string): void;
    bonuses(locale: string): void;
    moves(locale: string): void;
    items(locale: string): void;
    types(locale: string): void;
    characters(locale: string, parsedInvasions: AllInvasions): void;
    gruntQuotes(locale: string): void;
    weather(locale: string): void;
    misc(locale: string): void;
    quests(locale: string, data: {
        [category: string]: AllQuests;
    }): void;
    parseEvoQuests(locale: string, evoQuests: {
        [id: string]: EvolutionQuest;
    }): void;
}
