@3mo/field
Version:
A set of field web components.
30 lines • 1.28 kB
TypeScript
import type { FocusMethod } from '@3mo/focus-controller';
import { FieldComponent } from './FieldComponent.js';
/**
* @attr selectOnFocus - Selects the input text when the field receives focus.
* @attr dense - Whether the field is dense
*
* @csspart input - The input element.
*/
export declare abstract class InputFieldComponent<T> extends FieldComponent<T> {
selectOnFocus: boolean;
dense: boolean;
protected inputStringValue?: string;
readonly inputElement: HTMLInputElement;
get isPopulated(): boolean;
protected get isDense(): boolean;
protected valueUpdated(): void;
protected handleInput(value?: T, e?: Event): void;
protected handleChange(value?: T, event?: Event): void;
protected abstract valueToInputValue(value?: T): string | undefined;
protected handleFocus(bubbled: boolean, method: FocusMethod): void;
focus(): Promise<void>;
blur(): Promise<void>;
select(): Promise<void>;
setSelectionRange(...args: Parameters<HTMLInputElement['setSelectionRange']>): void;
setRangeText(...args: Parameters<HTMLInputElement['setRangeText']>): void;
setCustomValidity(error: string): void;
checkValidity(): Promise<boolean>;
reportValidity(): void;
}
//# sourceMappingURL=InputFieldComponent.d.ts.map