import { Action, Base, EventBase, ILocalizableString, PageModel, PanelModel, Question, QuestionMatrixDropdownModel, SurveyModel } from "survey-core";
import { ISurveyCreatorOptions } from "../../creator-settings";
import { ITranslationDropdownOwner } from "./translation-dropdown";
import { TranslationRowEqualizer } from "./translation-row-equalizer";
import { TranslationBase, TranslationEditor, TranslationGroup, TranslationItem } from "./translation";
export declare const translationLocaleItemComponentName = "svc-translation-locale-item";
export declare const translationLocaleProgressName = "translationProgress";
export declare function getTranslationLocaleProgress(item: any): string;
export type TranslationElementState = "none" | "untranslated" | "translated";
export declare class TranslationSideBySide extends TranslationBase implements ITranslationDropdownOwner {
selectedPageName: string;
sourceSurvey: SurveyModel;
targetSurvey: SurveyModel;
view: "form" | "grid";
orientation: "horizontal" | "vertical";
private copiesMap;
private _updatingSettingsSurvey;
private selectedLocString;
private choicesCollapsedState;
onChoicesCollapsedChanged: EventBase;
readonly rowEqualizer: TranslationRowEqualizer;
private lazyRowPairs;
constructor(survey: SurveyModel, options?: ISurveyCreatorOptions, view?: "form" | "grid", orientation?: "horizontal" | "vertical");
get isSideBySide(): boolean;
get sideBySideRootCss(): string;
get isSideBySideGrid(): boolean;
protected get hasStringsSurveyUI(): boolean;
protected createSettingsSurvey(): SurveyModel;
private setupTranslationProgressQuestion;
private getSideBySideSettingsSurveyJSON;
updateSettingsSurveyValues(): void;
private getTranslatedLocales;
private usedStringsRootValue;
private usedStringsItemsValue;
private resetUsedStringsCache;
protected getUsedStringsRoot(): TranslationGroup;
getUsedStringsItems(): Array;
isItemTranslated(item: TranslationItem, locale: string): boolean;
getTranslationProgress(locale: string, items?: Array): {
translated: number;
total: number;
};
resetTranslationCounters(): void;
private updateTranslationCounters;
private deleteSurveyLocaleStrings;
clearTargetLocaleStrings(): void;
private _bulkTextAction;
runWithoutSurveyReaction(fn: () => void): void;
performItemLocTextAction(item: TranslationItem, locale: string, newText: string): void;
private get translationProgressQuestion();
updateTranslationProgress(): void;
selectFirstUntranslatedString(): void;
private get currentPageName();
private getUntranslatedStringInfos;
private selectTranslationItem;
private scrollTargetElementIntoView;
private keepElementInView;
private focusedStringsItem;
private focusElementStringsItem;
private applyFocusedStringsItem;
reset(alwaysReset?: boolean): void;
private elementCounts;
private elementStateActions;
getElementTranslationState(element: Base): TranslationElementState;
getElementUntranslatedCount(element: Base): number;
private getElementCounts;
private getElementStateKey;
updateElementTranslationStates(): void;
private computeElementCounts;
private getStateFromCounts;
private applyElementStateToAction;
private updateSourceLocaleQuestion;
private updateTargetLocaleQuestion;
private updateTargetLocaleChoices;
private getLocaleChoicesKey;
refreshTargetLocaleChoices(): void;
private get targetLocaleQuestion();
private updateTargetLocaleProgress;
private createLocaleChoices;
private getSourceLocales;
private getTargetLocales;
private toLocaleSettingValue;
private getLocaleFromSettingValue;
protected onPropertyValueChanged(name: string, oldValue: any, newValue: any): void;
private applyView;
private applySelectionToGrid;
private applySelectedPageToForm;
private activateSelectedStringEditor;
private findSelectedItemInfo;
private focusGridCell;
protected onSurveyStringsCreated(survey: SurveyModel): void;
rebuildInstances(): void;
private getRealObjByStateKey;
private getSurveyObjByStateKey;
onCreatorSurveyPropertyChanged(obj: Base, propName: string): void;
private closeElementStringsDialogIfElementGone;
private onCreatorSurveyPropertyChangedCore;
private onPaneTextChanged;
forwardTargetChange(name: string, sender: Base): void;
exportToCSV(): string;
createTranslationEditor(locale: string): TranslationEditor;
setSourceScrollElement(element: HTMLElement): void;
setTargetScrollElement(element: HTMLElement): void;
private scrollElements;
private scrollHandlers;
get isScrollMirrorEnabled(): boolean;
private setScrollElement;
private attachScrollHandler;
private detachScrollHandler;
private updateScrollMirror;
private syncScroll;
private setupRowEqualization;
private setHeaderRowNodes;
private findOwnRowNode;
private setupLazyRowPairs;
private pairLazyRows;
private clearLazyRowPairs;
dispose(): void;
get maxVisibleChoices(): number;
isChoicesCollapsed(questionName: string): boolean;
setChoicesCollapsed(questionName: string, value: boolean): void;
private isFlattenedChoicesQuestion;
private createInstance;
private showSurveyHeaderOnFirstPageOnly;
private setupTitlePlaceholders;
private panelHasTranslatableStrings;
private sourceEmptySpaceStrings;
private setupSourceEmptySpaces;
private restoreRunnerElementStyles;
private setupSourceSurvey;
private setupTargetSurvey;
private createTranslateAction;
private surveyTitleToolbar;
private addSurveyTitleTranslateAction;
createElementStringsModel(realObj: Base): TranslationElementStrings;
showAllElementStrings: boolean;
onShowAllElementStringsChanged: (value: boolean) => void;
showQuestionStringsDialog(paneQuestion: Question): void;
showPageStringsDialog(panePage: PageModel): void;
showPanelStringsDialog(panePanel: PanelModel): void;
showSurveyStringsDialog(): void;
elementStringsModel: TranslationElementStrings;
private elementStringsSurveyValue;
private elementStringsPopup;
get elementStringsSurvey(): SurveyModel;
showElementStringsDialog(realObj: Base): void;
private onElementStringsDialogHidden;
hideElementStringsDialog(): void;
private disposeElementStringsModel;
private createStringsHostSurvey;
private get creatorModel();
private disposeInstances;
private updateInstanceLocales;
private updateInstancePages;
private buildMappings;
private createCopyRoot;
}
export declare class TranslationElementStrings extends TranslationBase {
private elementValue;
constructor(survey: SurveyModel, elementValue: Base, options?: ISurveyCreatorOptions);
get element(): Base;
get elementTitle(): string;
onShowAllStringsChanged: (value: boolean) => void;
private captionActionsValue;
private stringsFilterAction;
get captionActions(): Array;
private updateStringsFilterAction;
createStringsMatrix(name: string): QuestionMatrixDropdownModel;
private addStringsMatrixColumns;
private getRowTitleText;
private stringsMatrix;
private fillStringsMatrix;
private updateStringsMatrixData;
focusItem(locStr: ILocalizableString): void;
private focusCell;
private focusCellAttempts;
private focusCellTimer;
private onFocusCellRendered;
private focusCellInput;
private isFocusCellFocused;
private stopFocusCell;
private getItemCellQuestion;
private rowItems;
private getMatrixItem;
private hostSurvey;
setupStringsMatrix(survey: SurveyModel): void;
private onMatrixCellCreated;
private onMatrixCellValueChanging;
private onMatrixCellValueChanged;
private disposeStringsMatrix;
protected getRootTranslationObj(): {
obj: Base;
name: string;
};
canShowElementGroupCore(obj: Base): boolean;
protected get hasStringsSurveyUI(): boolean;
hasUsedStrings: boolean;
private showAllElementStringsValue;
get showAllElementStrings(): boolean;
set showAllElementStrings(val: boolean);
forceShowAllElementStrings(): void;
private applyShowAllElementStrings;
reset(alwaysReset?: boolean): void;
updateMatrixData(): void;
updateLocales(sourceLocale: string, targetLocale: string): void;
hasLocString(locStr: ILocalizableString): boolean;
private machineTranslationAction;
doMachineTranslation(): void;
getStringsToTranslate(): Array;
performItemLocTextAction(item: TranslationItem, locale: string, newText: string): void;
dispose(): void;
}