import { AbstractControl } from './abstract-control';
import { ControlError } from './control-error';
import { ControlOptions } from './control-options';
import { ControlValidator } from './validators/control-validator';
export declare class FormArray<T = any> extends AbstractControl {
    private _controls;
    readonly validators: ControlValidator[];
    constructor(_controls?: AbstractControl[], validators?: ControlValidator[], options?: ControlOptions);
    private setupControlsParent;
    /**
     * Return an agregate values of all enabled controls.
     */
    value: T[];
    readonly valid: boolean;
    enabled: boolean;
    waiting: boolean;
    readonly: boolean;
    readonly touched: boolean;
    errors: ControlError[];
    readonly errorsDeep: ControlError[];
    getControl<T = any>(name: string): AbstractControl<T>;
    submit(): Promise<void>;
    reset(): void;
    initEdition(): void;
    endEdition(): void;
    readonly controls: AbstractControl[];
    addControl(control: AbstractControl, indexInsertion?: number | undefined): void;
    removeControl(index: number): AbstractControl;
    protected _hasAnyControlsInError(): boolean;
}
//# sourceMappingURL=form-array.d.ts.map