/**
 * 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 { ChangeDetectorRef, OnDestroy, OnInit, TemplateRef } from '@angular/core';
import { AsyncValidator, ControlValueAccessor, FormControl, UntypedFormBuilder, UntypedFormGroup, ValidationErrors } from '@angular/forms';
import { Observable } from 'rxjs';
import { CronExpression } from 'cron-parser';
import { NzSafeAny } from 'ng-zorro-antd/core/types';
import { NzCronExpressionI18nInterface, NzI18nService } from 'ng-zorro-antd/i18n';
import { CronChangeType, CronType, NzCronExpressionSize, TimeType } from './typings';
import * as i0 from "@angular/core";
export declare class NzCronExpressionComponent implements OnInit, ControlValueAccessor, AsyncValidator, OnDestroy {
    private formBuilder;
    private cdr;
    private i18n;
    nzSize: NzCronExpressionSize;
    nzType: 'linux' | 'spring';
    nzCollapseDisable: boolean;
    nzExtra?: TemplateRef<void> | null;
    locale: NzCronExpressionI18nInterface;
    focus: boolean;
    labelFocus: TimeType | null;
    validLabel: string | null;
    labels: TimeType[];
    interval: CronExpression<false>;
    nextTimeList: Date[];
    dateTime: Date;
    private destroy$;
    validateForm: UntypedFormGroup;
    onChange: NzSafeAny;
    onTouch: () => void;
    convertFormat(value: string): void;
    writeValue(value: string | null): void;
    registerOnChange(fn: NzSafeAny): void;
    registerOnTouched(fn: NzSafeAny): void;
    validate(): Observable<ValidationErrors | null>;
    constructor(formBuilder: UntypedFormBuilder, cdr: ChangeDetectorRef, i18n: NzI18nService);
    ngOnInit(): void;
    previewDate(value: CronType): void;
    loadMorePreview(): void;
    focusEffect(value: TimeType): void;
    blurEffect(): void;
    getValue(item: CronChangeType): void;
    checkValid: (control: FormControl) => Observable<ValidationErrors | null>;
    ngOnDestroy(): void;
    static ɵfac: i0.ɵɵFactoryDeclaration<NzCronExpressionComponent, never>;
    static ɵcmp: i0.ɵɵComponentDeclaration<NzCronExpressionComponent, "nz-cron-expression", ["nzCronExpression"], { "nzSize": "nzSize"; "nzType": "nzType"; "nzCollapseDisable": "nzCollapseDisable"; "nzExtra": "nzExtra"; }, {}, never, never, false, never>;
}
