import { ISerializableModel, ISerializationInfo } from '@devexpress/analytics-core/analytics-utils'; import * as ko from 'knockout'; import { ILocalizedControl } from '../controls/utils/_localizationUtils'; import { SerializableModel } from '@devexpress/analytics-core/analytics-elements'; export declare class LocalizationItem { culture: ko.Observable; component: ko.Observable; propertyName: ko.Observable; propertyValue: ko.Observable; constructor(model?: any, serializer?: any); getInfo(): ISerializationInfo[]; } export declare function searchInLocalizationArray(localizationArray: ILocalizationItemInfo[], controlPropertyName: string, component: ILocalizedControl): ILocalizationItemInfo; export interface ILocalizationItemInfo { propertyName: string; component: ILocalizedControl; value: any; target: ISerializableModel; recalculate?: (coef: number) => any; } export declare class LocalizationDictionary { private cultures; add(code: string): LocalizationInfo; get(code: string): LocalizationInfo; count: () => number; keys(): string[]; clear: (code?: string) => void; } export declare class LocalizationInfo { private code; properties: ILocalizationItemInfo[]; parent: LocalizationInfo; isLocalized: ko.Observable; constructor(code: string); getInheritedProperties(): ILocalizationItemInfo[]; createNodes(code: string, list: LocalizationDictionary): void; private mergePropertiesWithChild; private _recalculateUnit; private _updateLocalizationInfoItem; setValue: (component: ILocalizedControl, propertyName: string, value: any, target: SerializableModel) => void; private _createLocalizationItem; serialize(canSerialize: (contol: any) => boolean, existingTargets: ILocalizationItemInfo[]): LocalizationItem[]; private findClosestProperty; private getParentCulture; }