/**
 * @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 { Platform } from '@angular/cdk/platform';
import { CdkVirtualScrollViewport } from '@angular/cdk/scrolling';
import { AfterContentInit, AfterViewInit, ChangeDetectorRef, ElementRef, EventEmitter, NgZone, OnChanges, OnDestroy, OnInit, QueryList, Renderer2, SimpleChanges, TemplateRef } from '@angular/core';
import { NzMeasureScrollbarService, NzSizeMDSType } from 'ng-zorro-antd/core';
import { NzI18nService } from 'ng-zorro-antd/i18n';
import { NzThComponent } from './nz-th.component';
import { NzTheadComponent } from './nz-thead.component';
import { NzVirtualScrollDirective } from './nz-virtual-scroll.directive';
export declare class NzTableComponent<T = any> implements OnInit, AfterViewInit, OnDestroy, OnChanges, AfterContentInit {
    private renderer;
    private ngZone;
    private cdr;
    private nzMeasureScrollbarService;
    private i18n;
    private platform;
    /** public data for ngFor tr */
    data: T[];
    locale: any;
    nzTheadComponent: NzTheadComponent;
    lastScrollLeft: number;
    headerBottomStyle: {};
    private destroy$;
    listOfNzThComponent: QueryList<NzThComponent>;
    tableHeaderElement: ElementRef;
    tableBodyElement: ElementRef;
    tableMainElement: ElementRef;
    cdkVirtualScrollElement: ElementRef;
    cdkVirtualScrollViewport: CdkVirtualScrollViewport;
    nzVirtualScrollDirective: NzVirtualScrollDirective;
    nzSize: NzSizeMDSType;
    nzShowTotal: TemplateRef<{
        $implicit: number;
        range: [number, number];
    }>;
    nzPageSizeOptions: number[];
    nzVirtualScroll: boolean;
    nzVirtualItemSize: number;
    nzVirtualMaxBufferPx: number;
    nzVirtualMinBufferPx: number;
    nzLoadingDelay: number;
    nzLoadingIndicator: TemplateRef<void>;
    nzTotal: number;
    nzTitle: string | TemplateRef<void>;
    nzFooter: string | TemplateRef<void>;
    nzNoResult: string | TemplateRef<void>;
    nzWidthConfig: string[];
    nzPageIndex: number;
    nzPageSize: number;
    nzData: T[];
    nzPaginationPosition: 'top' | 'bottom' | 'both';
    nzScroll: {
        x?: string | null;
        y?: string | null;
    };
    nzItemRender: TemplateRef<{
        $implicit: 'page' | 'prev' | 'next';
        page: number;
    }>;
    nzFrontPagination: boolean;
    nzTemplateMode: boolean;
    nzBordered: boolean;
    nzShowPagination: boolean;
    nzLoading: boolean;
    nzShowSizeChanger: boolean;
    nzHideOnSinglePage: boolean;
    nzShowQuickJumper: boolean;
    nzSimple: boolean;
    readonly nzPageSizeChange: EventEmitter<number>;
    readonly nzPageIndexChange: EventEmitter<number>;
    readonly nzCurrentPageDataChange: EventEmitter<any[]>;
    readonly tableBodyNativeElement: HTMLElement;
    readonly tableHeaderNativeElement: HTMLElement;
    readonly cdkVirtualScrollNativeElement: HTMLElement;
    readonly mixTableBodyNativeElement: HTMLElement;
    emitPageSizeOrIndex(size: number, index: number): void;
    syncScrollTable(e: MouseEvent): void;
    setScrollPositionClassName(): void;
    setScrollName(position?: string): void;
    fitScrollBar(): void;
    updateFrontPaginationDataIfNeeded(isPageSizeOrDataChange?: boolean): void;
    constructor(renderer: Renderer2, ngZone: NgZone, cdr: ChangeDetectorRef, nzMeasureScrollbarService: NzMeasureScrollbarService, i18n: NzI18nService, platform: Platform, elementRef: ElementRef);
    ngOnInit(): void;
    ngOnChanges(changes: SimpleChanges): void;
    ngAfterViewInit(): void;
    ngAfterContentInit(): void;
    ngOnDestroy(): void;
}
