import type { PropertyDeclarations } from 'lit-element'; import { InternalControl } from '../InternalControl/InternalControl'; /** * An internal base class for controls that have editing functionality, e.g. a text field. * Instances of this class will provide shortcuts for translatable placeholder, label, helper * text and more. Unlike a regular control, editable control can not only read from a NucleonElement * instance up the DOM tree, but also send changes to it and trigger validation process. * * @element foxy-internal-editable-control * @since 1.17.0 */ export declare class InternalEditableControl extends InternalControl { static get properties(): PropertyDeclarations; checkValidityAsync: ((value: unknown) => Promise) | null; jsonTemplate: string | null; jsonPath: string | null; getValue: () => unknown; setValue: (newValue: unknown) => void; private __debouncedCheckValidityAsync; private __handleHostClick; private __previousValue; private __placeholder; private __helperText; private __asyncError; private __v8nPrefix; private __property; private __label; /** * Translated placeholder text for this control. You can set your own placeholder text * if the default key in the inferred namespace doesn't work for you. Use `.resetPlaceholder()` * to restore the default translation. */ get placeholder(): string; set placeholder(newValue: string); /** * Translated helper text for this control. You can set your own helper text * if the default key in the inferred namespace doesn't work for you. Use `.resetHelperText()` * to restore the default translation. */ get helperText(): string; set helperText(newValue: string); /** * A prefix for all v8n errors related to this control. You can set your own v8n prefix * if the default one doesn't work for you. Use `.resetV8nPrefix()` * to restore the default v8n prefix. */ get v8nPrefix(): string; set v8nPrefix(newValue: string); /** * Name of the property to bind to inferred from the control name by converting it to snake_case. * You can set your own property name if the default inference method produces an incorrect result. * Use `.resetProperty()` to restore the default property name. */ get property(): string; set property(newValue: string); /** * Translated label for this control. You can set your own label if the default key in the inferred * namespace doesn't work for you. Use `.resetLabel()` to restore the default translation. */ get label(): string; set label(newValue: string); /** Restores the default placeholder translation. */ resetPlaceholder(): void; /** Restores the default helper text translation. */ resetHelperText(): void; /** Restores the default v8n prefix for errors. */ resetV8nPrefix(): void; /** Restores the default property name. */ resetProperty(): void; /** Restores the default label translation. */ resetLabel(): void; reportValidity(): void; connectedCallback(): void; disconnectedCallback(): void; protected _handleHostClick(evt: MouseEvent): void; /** * A shortcut to get the inferred value from the NucleonElement instance * up the DOM tree. If no such value or instance exists, returns `undefined`. * Assigning a value to this property will dispatch a cancelable `change` event * with the new value in the detail and write changes to the NucleonElement instance if permitted. */ protected get _value(): unknown | undefined; protected set _value(newValue: unknown | undefined); /** A shortcut returning the first v8n error associated with this control. */ protected get _error(): string | undefined; /** A shortcut returning the localized text of the first v8n error associated with this control. */ protected get _errorMessage(): string | undefined; /** A helper returning a `.checkValidity()` function for use with Vaadin elements. */ protected get _checkValidity(): () => boolean; }