/**
 * @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 { EventEmitter, OnChanges, OnInit, SimpleChanges, TemplateRef } from '@angular/core';
import { CandyDate, FunctionProp, isNonEmptyString, isTemplateRef } from 'ng-zorro-antd/core';
import { DateBodyRow, DateCell } from './interface';
import * as i0 from "@angular/core";
export declare abstract class AbstractTable implements OnInit, OnChanges {
    isTemplateRef: typeof isTemplateRef;
    isNonEmptyString: typeof isNonEmptyString;
    headRow: DateCell[];
    bodyRows: DateBodyRow[];
    MAX_ROW: number;
    MAX_COL: number;
    prefixCls: string;
    value: CandyDate;
    activeDate: CandyDate;
    showWeek: boolean;
    disabledDate: (d: Date) => boolean;
    cellRender: FunctionProp<TemplateRef<Date> | string>;
    fullCellRender: FunctionProp<TemplateRef<Date> | string>;
    readonly valueChange: EventEmitter<CandyDate>;
    protected render(): void;
    trackByBodyRow(_index: number, item: DateBodyRow): any;
    trackByBodyColumn(_index: number, item: DateCell): any;
    abstract makeHeadRow(): DateCell[];
    abstract makeBodyRows(): DateBodyRow[];
    ngOnInit(): void;
    ngOnChanges(changes: SimpleChanges): void;
    static ɵfac: i0.ɵɵFactoryDef<AbstractTable>;
    static ɵdir: i0.ɵɵDirectiveDefWithMeta<AbstractTable, never, never, { "prefixCls": "prefixCls"; "value": "value"; "activeDate": "activeDate"; "showWeek": "showWeek"; "disabledDate": "disabledDate"; "cellRender": "cellRender"; "fullCellRender": "fullCellRender"; }, { "valueChange": "valueChange"; }, never>;
}
