import { type PropertyDeclarations } from 'lit'; import { InputController } from '../../controllers/input-controller.js'; import { ElementSlug } from '../../definitions/enums.js'; import type { InputClearElementEventMap, InputElementEventMap, InputItemRemoveElementEventMap, InputObscureElementEventMap } from '../../definitions/events.js'; import type { QueryDeclarations } from '../../definitions/interfaces.js'; import type { InputElementTouchTrigger, InputElementType, InputElementValue } from '../../definitions/types.js'; import { AracnaBaseElement as BaseElement } from '../core/base-element.js'; import { AracnaFormControlElement as FormControlElement } from '../core/form-control-element.js'; declare global { interface HTMLElementTagNameMap { 'aracna-input': InputElement; 'aracna-input-clear': InputClearElement; 'aracna-input-obscure': InputObscureElement; 'aracna-input-item-remove': InputItemRemoveElement; } } declare class InputElement extends FormControlElement { protected controller: InputController; /** * Properties */ /** */ multiple?: boolean; protected _obscured?: boolean; placeholder?: string; touchTrigger?: InputElementTouchTrigger; protected _type?: InputElementType; /** * Queries */ /** */ inputElement?: HTMLInputElement; /** * States */ /** */ temporaryValue: string; connectedCallback(): void; attributeChangedCallback(name: string, _old: string | null, value: string | null): void; disconnectedCallback(): void; setInputElementAttributes: () => void; blur(): void; focus(options?: FocusOptions): void; onBlur: () => void; onFocus: () => void; onInput: () => void; onKeyUp: (event: KeyboardEvent) => void; removeItem(item: string): void; clear(): void; obscure(): void; reveal(): void; setValue(value: InputElementValue): void; get inputElementType(): any; get inputElementValue(): string; get slug(): ElementSlug; get obscured(): boolean | undefined; set obscured(obscured: boolean | undefined); get single(): boolean; get type(): InputElementType; set type(type: InputElementType | undefined); get value(): InputElementValue; set value(value: InputElementValue); static properties: PropertyDeclarations; static queries: QueryDeclarations; } declare class InputObscureElement extends BaseElement { /** * Queries */ /** */ rootElement?: InputElement; connectedCallback(): void; disconnectedCallback(): void; onClick: () => void; get slug(): ElementSlug; static queries: QueryDeclarations; } declare class InputItemRemoveElement extends BaseElement { /** * Properties */ /** */ item?: string; /** * Queries */ /** */ rootElement?: InputElement; connectedCallback(): void; disconnectedCallback(): void; onClick: () => void; get slug(): ElementSlug; static properties: PropertyDeclarations; static queries: QueryDeclarations; } declare class InputClearElement extends BaseElement { /** * Queries */ /** */ rootElement?: InputElement; connectedCallback(): void; disconnectedCallback(): void; onClick: () => void; get slug(): ElementSlug; static queries: QueryDeclarations; } export { InputClearElement as AracnaInputClearElement, InputElement as AracnaInputElement, InputItemRemoveElement as AracnaInputItemRemoveElement, InputObscureElement as AracnaInputObscureElement };