/**
* 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;
};
};