import { BehaviorSubject } from 'rxjs'; import { IModel } from './base'; import { ValidateOption, IMaybeError, IValidators } from '../validate'; import { Maybe } from '../maybe'; import { REF_ID } from './is'; declare class ModelRef, Model extends IModel> implements IModel { initialValue: Maybe; [REF_ID]: boolean; patchedValue: Maybe; id: string; model$: BehaviorSubject; private _owner; get owner(): IModel | null; set owner(owner: IModel | null); get form(): import("./form").FormModel; constructor(current: Model | null, initialValue: Maybe, owner: Parent | null); get validators(): IValidators; set validators(validators: IValidators); getModel(): Model; setModel(model: Model | null): void; getParent(): IModel; dirty(): boolean; touched(): boolean; validate(option?: ValidateOption): Promise; getRawValue(): Value | null; pristine(): boolean; valid(): boolean; get error(): IMaybeError; set error(error: IMaybeError); patchValue(value: Value): void; initialize(value: Value): void; reset(): void; clear(): void; clearError(): void; dispose(): void; getSubmitValue(): void; } export { ModelRef };