import type { BinderRoot } from './BinderRoot.js'; import { AbstractModel, type ArrayItemModel, type Value } from './Models.js'; import type { ClassStaticProperties } from './types.js'; import type { Validator, ValueError } from './Validation.js'; import { _validity } from './Validity.js'; export declare const _updateValidation: unique symbol; export declare const _update: unique symbol; export declare const _setErrorsWithDescendants: unique symbol; export declare const _clearValidation: unique symbol; export declare function getBinderNode(model: M): BinderNode; export declare const CHANGED: Event; export declare class BinderNode extends EventTarget { #private; readonly ['constructor']: ClassStaticProperties>; readonly model: M; [_validity]?: ValidityState; constructor(model: M); get binder(): BinderRoot; get defaultValue(): Value | undefined; get dirty(): boolean; get errors(): readonly ValueError[]; get invalid(): boolean; get name(): string; get ownErrors(): ReadonlyArray>>; get parent(): BinderNode | undefined; get required(): boolean; get validators(): ReadonlyArray>>; set validators(validators: ReadonlyArray>>); get value(): Value | undefined; set value(value: Value | undefined); get visited(): boolean; set visited(v: boolean); addValidator(validator: Validator>): void; appendItem(item?: Value>): void; for(model: N): BinderNode; prependItem(item?: Value>): void; removeSelf(): void; validate(): Promise; protected [_clearValidation](): boolean; protected [_setErrorsWithDescendants](errors?: readonly ValueError[]): void; protected [_update](_?: Value): void; protected [_updateValidation](): Promise; initializeValue(forceInitialize?: boolean): void; }