import { BindTextDirective } from './directive_bind_text.js'; /** * A declarative DOM directive for binding input, select, and textarea element values to a view model. * * Syntax: `bind_value="namespace.propertyName"` * * Extends `BindTextDirective`. The crucial feature of `BindValueDirective` is its DOM write guard: * it compares the current element value with the incoming value and only writes to the DOM * when they differ. This prevents the browser from resetting the text cursor/selection position * when typing in an active text field. * * @example * ```html * * ``` */ export declare class BindValueDirective extends BindTextDirective { /** * Updates the element's `value` attribute with the current bound value. * * Includes a cursor preservation guard: it only updates `inputEl.value` * if the new value is actually different from the current input value, * preventing unnecessary DOM writes that would reset the cursor position. */ protected update_(): void; } /** * Helper to register `BindValueDirective` lazily under the `bind_value` attribute. */ export declare const registerBindValueDirective: import("@alwatr/directive").RegisterDirectiveFunction; //# sourceMappingURL=directive_bind_value.d.ts.map