/** * Text input component with prepend/append slot support and optional input masking. * * ⛔ Do NOT add a `class` prop with Tailwind utilities — visual theming is done * exclusively via `--lu-*` CSS custom properties. * * @example * */ interface LuInputProps { /** The value of the input. Use `v-model` to bind. */ modelValue?: string | number; /** Visual variant. Resolves to BEM modifier `lu-input--{variant}`. */ variant?: string; /** Field name, used for form registration if inside a ``. */ name?: string; /** Error message. Applies `lu-input--error` state if truthy. */ error?: string | null; /** Native input type (e.g. 'text', 'password', 'email'). @default 'text' */ type?: string; /** Name of the icon to render in the prepend zone. */ prependIcon?: string; /** Name of the icon to render in the append zone. */ appendIcon?: string; /** Maska pattern for input masking (e.g. '(###) ###-####'). */ mask?: string | string[]; /** Additional options for Maska. */ maskOptions?: Record; } declare var __VLS_1: {}, __VLS_9: {}; type __VLS_Slots = {} & { prepend?: (props: typeof __VLS_1) => any; } & { append?: (props: typeof __VLS_9) => any; }; declare const __VLS_component: import("vue").DefineComponent any; "update:modelValue": (value: string) => any; }, string, import("vue").PublicProps, Readonly & Readonly<{ onBlur?: (() => any) | undefined; "onUpdate:modelValue"?: ((value: string) => any) | undefined; }>, {}, {}, {}, {}, string, import("vue").ComponentProvideOptions, false, {}, any>; declare const _default: __VLS_WithSlots; export default _default; type __VLS_WithSlots = T & { new (): { $slots: S; }; };