import { Label, ILabelPrivate, ILabelSettings, ILabelEvents } from "./Label"; import { Container } from "./Container"; import { MultiDisposer, IDisposer } from "../util/Disposer"; export interface IEditableLabelSettings extends ILabelSettings { /** * Which click starts editing: `"click"`, `"dblclick"`, `"rightclick"` or * `"middleclick"`. With `"none"`, only setting `active` to `true` does. * * @default "click" */ editOn?: "click" | "dblclick" | "rightclick" | "middleclick" | "none"; /** * Allows line breaks in the text. With `false`, ENTER finishes editing. * * @default true * @since 5.9.6 */ multiLine?: boolean; } export interface IEditableLabelPrivate extends ILabelPrivate { input: Container; textarea: HTMLTextAreaElement; } export interface IEditableLabelEvents extends ILabelEvents { /** * The label's text box was created and is ready for editing. */ inited: {}; } /** * A label the user can edit in place. Editing starts on `editOn` and ends * when the label loses focus or ESC is pressed; `active` is `true` while it * lasts. * * @since 5.9.5 */ export declare class EditableLabel extends Label { _settings: IEditableLabelSettings; _privateSettings: IEditableLabelPrivate; _events: IEditableLabelEvents; static className: string; static classNames: Array; protected _editOnEvents?: MultiDisposer; protected _frameDp?: IDisposer; protected _afterNew(): void; _beforeChanged(): void; _prepareChildren(): void; _updateChildren(): void; protected _maybeInitTextarea(): void; protected _isInited(): boolean; protected _startEditing(): void; protected _stopEditing(): void; protected _syncStyle(): void; protected _syncText(): void; } //# sourceMappingURL=EditableLabel.d.ts.map