import { VNode } from "../VNode"; import { VBindingsPreparer } from "../VBindingsPreparer"; import { VDirective } from "./VDirective"; import { VDirectiveParseContext } from "./VDirectiveParseContext"; import { VDOMUpdater } from "../VDOMUpdater"; /** * Directive for two-way data binding on form input elements. * This directive binds the value of an input element to a data property and updates the property when the input value changes. * Example usage: * * In this example, the v-model directive binds the value of the input element to the username data property. * When the user types in the input field, the username property is automatically updated with the new value. * This directive supports various input types, including text, checkbox, radio, and select elements. * For checkboxes and radio buttons, it binds to boolean or specific values accordingly. * For select elements, it binds to the selected option's value. */ export declare class VModelDirective implements VDirective { #private; /** * @param context The context for parsing the directive. */ constructor(context: VDirectiveParseContext); /** * @inheritdoc */ get name(): string; /** * @inheritdoc */ get vNode(): VNode; /** * @inheritdoc */ get needsAnchor(): boolean; /** * @inheritdoc */ get bindingsPreparer(): VBindingsPreparer | undefined; /** * @inheritdoc */ get domUpdater(): VDOMUpdater | undefined; /** * @inheritdoc */ get templatize(): boolean; /** * @inheritdoc */ get dependentIdentifiers(): string[]; /** * @inheritdoc */ get onMount(): (() => void) | undefined; /** * @inheritdoc */ get onMounted(): (() => void) | undefined; /** * @inheritdoc */ get onUpdate(): (() => void) | undefined; /** * @inheritdoc */ get onUpdated(): (() => void) | undefined; /** * @inheritdoc */ get onUnmount(): (() => void) | undefined; /** * @inheritdoc */ get onUnmounted(): (() => void) | undefined; /** * @inheritdoc */ destroy(): void; }