/**
 * @license
 * Copyright Alibaba.com All Rights Reserved.
 *
 * Use of this source code is governed by an MIT-style license that can be
 * found in the LICENSE file at https://github.com/NG-ZORRO/ng-zorro-antd/blob/master/LICENSE
 */
import { AfterContentInit, ChangeDetectorRef, ElementRef, OnDestroy, OnInit, Renderer2, TemplateRef } from '@angular/core';
import { FormControl, FormControlDirective, FormControlName, NgModel } from '@angular/forms';
import { NzFormItemComponent } from './form-item.component';
import * as i0 from "@angular/core";
declare const iconTypeMap: {
    readonly error: "close-circle-fill";
    readonly validating: "loading";
    readonly success: "check-circle-fill";
    readonly warning: "exclamation-circle-fill";
};
export declare class NzFormControlComponent implements OnDestroy, OnInit, AfterContentInit, OnDestroy {
    private nzFormItemComponent;
    private cdr;
    private _hasFeedback;
    private validateChanges;
    private validateString;
    private status;
    validateControl: FormControl | NgModel | null;
    iconType: typeof iconTypeMap[keyof typeof iconTypeMap] | null;
    innerTip: string | TemplateRef<{
        $implicit: FormControl | NgModel;
    }> | null;
    defaultValidateControl: FormControlName | FormControlDirective;
    nzSuccessTip: string | TemplateRef<{
        $implicit: FormControl | NgModel;
    }>;
    nzWarningTip: string | TemplateRef<{
        $implicit: FormControl | NgModel;
    }>;
    nzErrorTip: string | TemplateRef<{
        $implicit: FormControl | NgModel;
    }>;
    nzValidatingTip: string | TemplateRef<{
        $implicit: FormControl | NgModel;
    }>;
    nzExtra: string | TemplateRef<void>;
    set nzHasFeedback(value: boolean);
    get nzHasFeedback(): boolean;
    set nzValidateStatus(value: string | FormControl | FormControlName | NgModel);
    private removeSubscribe;
    private watchControl;
    private setStatus;
    private getControlStatus;
    private validateControlStatus;
    private getInnerTip;
    constructor(elementRef: ElementRef, nzFormItemComponent: NzFormItemComponent, cdr: ChangeDetectorRef, renderer: Renderer2);
    ngOnInit(): void;
    ngOnDestroy(): void;
    ngAfterContentInit(): void;
    static ɵfac: i0.ɵɵFactoryDef<NzFormControlComponent>;
    static ɵcmp: i0.ɵɵComponentDefWithMeta<NzFormControlComponent, "nz-form-control", ["nzFormControl"], { "nzSuccessTip": "nzSuccessTip"; "nzWarningTip": "nzWarningTip"; "nzErrorTip": "nzErrorTip"; "nzValidatingTip": "nzValidatingTip"; "nzExtra": "nzExtra"; "nzHasFeedback": "nzHasFeedback"; "nzValidateStatus": "nzValidateStatus"; }, {}, ["defaultValidateControl"]>;
}
export {};
