import { UiField } from "./UiField";
import { UiClientRecordConfig } from "../../generated/UiClientRecordConfig";
import { UiTemplateFieldConfig } from "../../generated/UiTemplateFieldConfig";
import { TeamAppsUiContext } from "../TeamAppsUiContext";
import { UiFieldEditingMode } from "../../generated/UiFieldEditingMode";
export declare class UiTemplateField extends UiField<UiTemplateFieldConfig, UiClientRecordConfig> {
    private $main;
    private templateRenderer;
    constructor(config: UiTemplateFieldConfig, context: TeamAppsUiContext);
    protected initialize(config: UiTemplateFieldConfig, context: TeamAppsUiContext): void;
    getMainInnerDomElement(): HTMLElement;
    protected displayCommittedValue(): void;
    getFocusableElement(): HTMLElement;
    getTransientValue(): UiClientRecordConfig;
    isValidData(v: UiClientRecordConfig): boolean;
    protected onEditingModeChanged(editingMode: UiFieldEditingMode, oldEditingMode?: UiFieldEditingMode): void;
    valuesChanged(v1: UiClientRecordConfig, v2: UiClientRecordConfig): boolean;
    getReadOnlyHtml(value: UiClientRecordConfig, availableWidth: number): string;
}
