import type { Nullable } from '../../../../Types/Nullable'; import type { ElementValidationError, ElementValidationMessageResolver, ElementValidationResult, IElementValidator } from './Interfaces/IElementValidator'; /** * @public * @abstract */ export declare abstract class ElementValidatorBase implements IElementValidator { private readonly _host; private readonly _messageResolver; private readonly _observer; private _onChange; /** * Constructs a new instance of the `ElementValidatorBase` class. * * @public */ constructor(host: TElement, messageResolver?: ElementValidationMessageResolver); /** * @protected * @abstract */ protected abstract attributes: Array; /** * Returns the element that the validator is attached to. * * @protected * @readonly */ protected get host(): TElement; /** * Returns the message resolver function. * * @protected * @readonly */ protected get messageResolver(): Nullable; /** * @public * @abstract */ abstract validate(): Nullable; /** * @public */ hostConnected(): void; /** * @public */ hostDisconnected(): void; /** * @public */ registerOnValidatorChange?(fn: (value: unknown) => void): void; /** * @protected */ protected getMessage(error: Nullable): Nullable; } //# sourceMappingURL=ElementValidatorBase.d.ts.map