import type { FieldValidationTrigger } from '../fields/field-config.js'; import type { FieldValidationResult } from '../fields/field-controller.js'; import type { ManagedFieldController } from '../fields/managed-field-controller.js'; /** Owns cancellable field validation and focus boundaries for dialog forms. */ export declare class FieldValidationController { private readonly form; private readonly invalidMessage; private readonly fields; private suspensionCount; constructor(form: HTMLFormElement, invalidMessage: string); register(controller: ManagedFieldController, trigger: FieldValidationTrigger | undefined, validate: (signal: AbortSignal) => Promise, isEligible?: () => boolean): void; forgetError(name: string): void; invalidate(name: string, clearEagerError?: boolean): void; /** Temporarily prevents eager validation while a full-form request is active. */ suspend(): () => void; remove(name: string): void; destroy(): void; validate(name: string, source: 'eager' | 'manual'): Promise; private setValidating; }