import { EventEmitter, OnDestroy, OnInit } from '@angular/core';
import { TranslateService } from '@ngx-translate/core';
import { ActiveData, AlertService, IconService, NotificationMessage } from '@tilde-nlp/ngx-common';
import { AudioRecordService, TldVoiceInputService } from './modules/tld-audio/services';
import { TldTranslateButtonService } from './modules/tld-common/components/translate-button/tld-translate-button.service';
import { IAuthOptions, languageMenuVersion } from './modules/tld-common/models';
import { TldTranslateSystemManagementService, TldTranslateConfigService } from './modules/tld-common/services';
import { WtwLinkParamsService } from './modules/tld-common/services/wtw-link-params.service';
import { TldTranslateFileService } from './modules/tld-document/services/tld-translate-file.service';
import { TldTranslateTextService } from './modules/tld-text/services/tld-translate-text.service';
import { ISwitcherTranslationOptions } from './modules/tld-tooltip/models/switcher-options.model';
import { TranslationSystemPickerService } from './modules/tld-tooltip/translation-system-picker/services/translation-system-picker.service';
import { TldTranslateBodyComponent } from './tld-translate-body/tld-translate-body.component';
import { TerminologyService } from '@tilde-nlp/ngx-common';
import * as i0 from "@angular/core";
export declare class TldTranslateComponent implements OnInit, OnDestroy {
    private readonly translate;
    private readonly translateFileService;
    private readonly translateTextService;
    private readonly configService;
    private readonly alerts;
    private readonly translateButtonService;
    private readonly tldSystem;
    private readonly audioService;
    private readonly voiceProcessingService;
    private readonly wtwQueryService;
    private readonly systemPickerService;
    private readonly terminologyService;
    private readonly iconService;
    onError: EventEmitter<any>;
    onSystemChange: EventEmitter<ActiveData>;
    tldTranslateBody: TldTranslateBodyComponent;
    activeSystemObj: ActiveData;
    messages: NotificationMessage[];
    switcherOptions: ISwitcherTranslationOptions;
    get actionButtonLoader(): boolean;
    get showDomainsWithLanguageName(): boolean;
    get maxDisplayedLanguages(): number;
    readonly noSystemsError: NotificationMessage;
    get actionButtonDisabled(): boolean;
    get showTranslateButton(): boolean;
    get isMultipleFilesActive(): boolean;
    get hideLangMenuLabels(): boolean;
    get isCollectionsActivated(): boolean;
    get sourceLanguage(): string;
    get targetLanguage(): string;
    get systemPickerDropdownVisible(): boolean;
    get languageMenuVersion(): languageMenuVersion;
    readonly languageMenuV1 = languageMenuVersion.V1;
    readonly languageMenuV2 = languageMenuVersion.V2;
    private readonly destroy$;
    constructor(translate: TranslateService, translateFileService: TldTranslateFileService, translateTextService: TldTranslateTextService, configService: TldTranslateConfigService, alerts: AlertService, translateButtonService: TldTranslateButtonService, tldSystem: TldTranslateSystemManagementService, audioService: AudioRecordService, voiceProcessingService: TldVoiceInputService, wtwQueryService: WtwLinkParamsService, systemPickerService: TranslationSystemPickerService, terminologyService: TerminologyService, iconService: IconService);
    changeAuth(authOptions: IAuthOptions): void;
    initializeWidget(): void;
    ngOnInit(): void;
    removeMessage(ix: number): void;
    swapLanguages(): void;
    sourceLanguageChange(language: string): void;
    systemChange(systemId: string): void;
    targetLanguageChange(language: string): void;
    translateButtonClick(): void;
    removeMessagesOnClear(): void;
    ngOnDestroy(): void;
    private removeExistingMessage;
    private addMessage;
    static ɵfac: i0.ɵɵFactoryDeclaration<TldTranslateComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<TldTranslateComponent, "tld-translate", never, {}, { "onError": "onError"; "onSystemChange": "onSystemChange"; }, never, never, false, never>;
}
