import ValidationResult from './ValidationResult'; import { FieldElement, FieldOptionName, FieldOptions, FieldStatus, FieldValue, ValidateFn, Validator, ValidatorName } from './types'; export default class Field { containerElement: Element; fieldSelector: string; containerSelector: string; validators: Validator[]; options: FieldOptions; status: FieldStatus; validationResult: ValidationResult | null; name: string | null; cachedFieldElement: FieldElement | null; virtualFieldsCache: Record; actionId: number; typingDelayId: number | null; constructor(fieldSelector: string, containerSelector: string, validators?: Validator[], options?: FieldOptions); listen(): () => void; createListener(listener: EventListener): (event: Event) => void; onChange(event: Event): Promise; onKeyUp(event: Event): Promise; setOptions(options: FieldOptions): void; getOption(name: Name): Required[Name]; hasOption(name: FieldOptionName): boolean; validate(): Promise; getValidateFnByValidatorItem(validatorItem: Validator): ValidateFn; getValue(): FieldValue; isFieldElement(element: Element): boolean; getFieldElement(): E; findFieldElement(): E | null; withCachedFieldElement(fn: () => T): T; getFieldWrapperElement(): HTMLElement | null; exists(): boolean; getGroupElements(): FieldElement[]; findElementIndexInGroup(element: FieldElement): number; getCheckedRadioElement(): HTMLInputElement | null; getCheckedOptionElements(): HTMLOptionElement[]; getVirtualFieldsOfGroup(): Field[]; getVirtualFieldForElement(element: FieldElement): Field; isText(): boolean; isGroup(): boolean; isTextarea(): boolean; isCheckbox(): boolean; isRadio(): boolean; isSelect(): boolean; isMultipleSelect(): boolean; isFile(): boolean; isEmpty(value: FieldValue): boolean; isTextable(): boolean; getInvalidErrorMessage(validatorName: ValidatorName): string; reset(): void; trimIfRequired(): void; setStatus(status: FieldStatus): void; updateCssStatus(): void; } //# sourceMappingURL=Field.d.ts.map