import { Observable, Subscription } from 'rxjs'; import { UntypedFormGroup } from '@angular/forms'; import { AbstractControl, AsyncValidator, ControlEventOptions, ControlOptions, ControlState, EmitEvent, ExtractAbstractControl, ExtractStrings, KeyValueControls, OnlySelf, ValidationErrors, Validator } from './types'; import { FormDefinition, FormGroupOptions, FormType } from './model'; export declare class RxapFormGroup extends UntypedFormGroup { controls: ExtractAbstractControl, T>; /** * @internal */ get rxapFormDefinition(): (FormType & FormDefinition) | undefined; private _readonly; get readonly(): boolean; set readonly(value: boolean); /** * @internal */ private _rxapFormDefinition?; readonly value: T; readonly errors: E | null; readonly valueChanges: Observable; readonly status: ControlState; readonly statusChanges: Observable; private touchChanges; private dirtyChanges; touch$: Observable; dirty$: Observable; readonly value$: Observable; readonly disabled$: Observable; readonly enabled$: Observable; readonly status$: Observable; readonly errors$: Observable; readonly controlId: string; get controlPath(): string; get fullControlPath(): string; constructor(controls: ExtractAbstractControl, T>, options: FormGroupOptions); select(mapFn: (state: T) => R): Observable; getRawValue(): T; get(path: [K1]): AbstractControl; get(path: [K1, K2]): AbstractControl; get(path: [K1, K2, K3]): AbstractControl; get(path: string): AbstractControl; getControl(prop1: P1): AbstractControl; getControl(prop1: P1, prop2: P2): AbstractControl; getControl(prop1: P1, prop2: P2, prop3: P3): AbstractControl; getControl(prop1: P1, prop2: P2, prop3: P3, prop4: P4): AbstractControl; addControl>(name: K, control: AbstractControl): void; removeControl(name: ExtractStrings): void; contains(controlName: ExtractStrings): boolean; setControl>(name: K, control: AbstractControl): void; setValue(valueOrObservable: Observable, options?: ControlEventOptions): Subscription; setValue(valueOrObservable: T, options?: ControlEventOptions): void; private _patchValue; patchValue(valueOrObservable: Observable>, options?: ControlEventOptions): Subscription; patchValue(valueOrObservable: Partial, options?: ControlEventOptions): void; disabledWhile(observable: Observable, options?: ControlOptions): Subscription; enabledWhile(observable: Observable, options?: ControlOptions): Subscription; mergeValidators(validators: Validator): void; mergeAsyncValidators(validators: AsyncValidator): void; markAsTouched(opts?: OnlySelf): void; markAsUntouched(opts?: OnlySelf): void; markAsPristine(opts?: OnlySelf): void; markAsDirty(opts?: OnlySelf): void; markAllAsDirty(): void; markAllAsPristine(): void; markAllAsUntouched(): void; reset(formState?: Partial, options?: ControlEventOptions): void; setValidators(newValidator: Validator, updateValueAndValidity?: boolean): void; setAsyncValidators(newValidator: AsyncValidator, updateValueAndValidity?: boolean): void; validateOn(observableValidation: Observable): Subscription; hasError(errorCode: ExtractStrings, path?: [K1]): boolean; hasError(errorCode: ExtractStrings, path?: [K1, K2]): boolean; hasError(errorCode: ExtractStrings, path?: [K1, K2, K3]): boolean; hasError(errorCode: ExtractStrings, path?: string): boolean; setErrors(errors: Partial | null, opts?: EmitEvent): void; getError(errorCode: K, path?: [K1]): E[K] | null; getError(errorCode: K, path?: [K1, K2]): E[K] | null; getError(errorCode: K, path?: [K1, K2, K3]): E[K] | null; getError(errorCode: K, path?: string): E[K] | null; hasErrorAndTouched(error: ExtractStrings, prop1?: P1): boolean; hasErrorAndTouched(error: ExtractStrings, prop1?: P1, prop2?: P2): boolean; hasErrorAndTouched(error: ExtractStrings, prop1?: P1, prop2?: P2, prop3?: P3): boolean; hasErrorAndTouched(error: ExtractStrings, prop1?: P1, prop2?: P2, prop3?: P3, prop4?: P4): boolean; hasErrorAndDirty(error: ExtractStrings, prop1?: P1): boolean; hasErrorAndDirty(error: ExtractStrings, prop1?: P1, prop2?: P2): boolean; hasErrorAndDirty(error: ExtractStrings, prop1?: P1, prop2?: P2, prop3?: P3): boolean; hasErrorAndDirty(error: ExtractStrings, prop1?: P1, prop2?: P2, prop3?: P3, prop4?: P4): boolean; setEnable(enable?: boolean, opts?: ControlEventOptions): void; setDisable(disable?: boolean, opts?: ControlEventOptions): void; }