import type { TemplateResult } from "lit"; import { XmField } from "../field/index.js"; import "../primitives/index.js"; import "../icon/index.js"; export type TextFieldType = "text" | "email" | "password" | "number" | "search" | "url" | "tel"; export declare class XmTextField extends XmField { static styles: CSSStyleSheet[]; /** Native input type — single-line text variants only. */ type: TextFieldType; /** Native placeholder — shown when the live value is empty. */ placeholder: string; /** Show a trailing clear button when the field has a value (implied for type="search"). */ clearable: boolean; private _onInput; private _onChange; private get _showClear(); private _leadSlotted; private _trailSlotted; private _onRailSlotChange; private _onClear; protected renderControl(): TemplateResult; } declare global { interface HTMLElementTagNameMap { "xm-text-field": XmTextField; } }