import React from 'react'; import type { ScrollOffset, ValidateArgumentType } from './ValidationContainer.js'; import type { ValidationWrapperInternal } from './ValidationWrapperInternal.js'; export interface ValidationContextSettings { scrollOffset: ScrollOffset; disableSmoothScroll: boolean; } export interface ValidationContextWrapperProps { 'data-tid'?: string; children?: React.ReactNode; onValidationUpdated?: (isValid?: boolean) => void; scrollOffset?: number | ScrollOffset; disableSmoothScroll: boolean; } export interface ValidationContextType { register: (wrapper: ValidationWrapperInternal) => void; unregister: (wrapper: ValidationWrapperInternal) => void; instanceProcessBlur: (wrapper: ValidationWrapperInternal) => void; onValidationUpdated: (wrapper: ValidationWrapperInternal, isValid: boolean) => void; getSettings: () => ValidationContextSettings; isAnyWrapperInChangingMode: () => boolean; isValidationCalled: () => boolean; } export declare const ValidationContext: React.Context; export declare class ValidationContextWrapper extends React.Component { childWrappers: ValidationWrapperInternal[]; validationHasBeenCalled: boolean; getSettings(): ValidationContextSettings; register(wrapper: ValidationWrapperInternal): void; unregister(wrapper: ValidationWrapperInternal): void; instanceProcessBlur(instance: ValidationWrapperInternal): void; onValidationUpdated(wrapper: ValidationWrapperInternal, isValid?: boolean): void; isAnyWrapperInChangingMode(): boolean; isValidationCalled(): boolean; onValidationRemoved(): void; getChildWrappersSortedByPosition(): ValidationWrapperInternal[]; validate(withoutFocusOrValidationSettings: ValidateArgumentType): Promise; private static getFocusMode; private renderChildren; render(): React.JSX.Element; }