import { IWebComponentInstance } from "@omnia/fx";
import { IDatatable } from "./IDatatable";
import "./Datatable.css";
import { VueComponentBase } from "..";
import { VDataGridHeader, VDataGridItemScopedSlot } from "../../models";
export declare class Datatable extends VueComponentBase<IDatatable> implements IWebComponentInstance, IDatatable {
    private omniaUxLoc;
    items: any;
    itemsPerPage: number;
    skip: number;
    header: Array<VDataGridHeader>;
    defaultProperty: string;
    scrollElementSelector: string;
    defaultDescending: boolean;
    loading: boolean;
    backgroundColor: string;
    onSort: (propName: string, sortDsc: boolean) => Promise<[]>;
    onPaging: (propName: string, sortDsc: boolean, skip: number) => Promise<[]>;
    renderItem: (prop?: VDataGridItemScopedSlot<any>) => JSX.Element;
    private propertyName;
    private descending;
    private isLoadingNextPage;
    private noNextPage;
    isChangingData(newValue: Array<any>, oldValue: Array<any>): void;
    mounted(): void;
    private registerScrollPaging;
    beforeDestroy(): void;
    private removeScrollPaging;
    created(): void;
    private init;
    private nextPage;
    private changeSort;
    private getSortByAscendingText;
    private getSortByDescendingText;
    render(): VueTsxSupport.JSX.Element;
    private renderHeaders;
}
