import type { DevtoolsServiceInterface } from '@o3r/core';
import { Subscription } from 'rxjs';
import { LocalizationContextualizationDevtools, LocalizationDevtoolsServiceOptions } from './localization-devkit.interface';
import { OtterLocalizationDevtools } from './localization-devtools.service';
import * as i0 from "@angular/core";
export declare class LocalizationDevtoolsConsoleService implements DevtoolsServiceInterface, LocalizationContextualizationDevtools {
    private readonly localizationDevtools;
    private readonly options;
    /** Name of the Window property to access to the devtools */
    static readonly windowModuleName = "localization";
    constructor(localizationDevtools: OtterLocalizationDevtools, options?: LocalizationDevtoolsServiceOptions);
    /** @inheritDoc */
    activate(): void;
    /**
     * @inheritdoc
     */
    isTranslationDeactivationEnabled(): boolean | Promise<boolean>;
    /**
     * @inheritdoc
     */
    showLocalizationKeys(value?: boolean): void | Promise<void>;
    /**
     * @inheritdoc
     */
    getCurrentLanguage(): string | Promise<string>;
    /**
     * @inheritdoc
     */
    switchLanguage(language: string): Promise<{
        previous: string;
        requested: string;
        current: string;
    }>;
    /**
     * @inheritdoc
     */
    onLanguageChange(fn: (language: string) => any): Subscription;
    /**
     * @inheritdoc
     */
    updateLocalizationKeys(keyValues: {
        [key: string]: string;
    }, language?: string): void | Promise<void>;
    /**
     * @inheritdoc
     */
    reloadLocalizationKeys(language?: string): Promise<void>;
    static ɵfac: i0.ɵɵFactoryDeclaration<LocalizationDevtoolsConsoleService, [null, { optional: true; }]>;
    static ɵprov: i0.ɵɵInjectableDeclaration<LocalizationDevtoolsConsoleService>;
}
//# sourceMappingURL=localization-devtools.console.service.d.ts.map