import '@material/web/icon/icon.js';
import '@operato/data-grist/ox-grist.js';
import '@operato/data-grist/ox-sorters-control.js';
import '@operato/data-grist/ox-filters-form.js';
import '@operato/input/ox-select.js';
import '@operato/input/ox-input-select-buttons.js';
import '@operato/popup/ox-popup-list.js';
import '@operato/process';
import '@sted/process-modeller';
import { ColumnConfig, DataGrist, GristData, GristRecord } from '@operato/data-grist';
import { PageView } from '@operato/shell';
declare const ReportListPage_base: (new (...args: any[]) => {
    _storeUnsubscribe: import("redux").Unsubscribe;
    connectedCallback(): void;
    disconnectedCallback(): void;
    stateChanged(_state: unknown): void;
    readonly isConnected: boolean;
}) & (new (...args: any[]) => {
    _infiniteScrollOptions: {
        threshold: number;
        limit: number;
        totalProp: string;
        pageProp: string;
    };
    onScroll: import("lodash").DebouncedFunc<(e: any) => void>;
    scrollAction(): Promise<void>;
}) & (new (...args: any[]) => {
    __preferenceProviders: {
        [element: string]: import("@operato/p13n").PagePreferenceProvider;
    };
    getPagePreferenceProvider(element: string): import("@operato/p13n").PagePreferenceProvider | undefined;
}) & typeof PageView;
export declare class ReportListPage extends ReportListPage_base {
    static styles: import("lit").CSSResult[];
    config: any;
    data: any;
    grist: DataGrist;
    private popup?;
    get context(): {
        search: {
            handler: (search: string) => void;
            placeholder: string;
            value: string;
        };
    };
    render(): import("lit-html").TemplateResult<1>;
    fetchHandler(): Promise<{
        total: any;
        records: any;
    }>;
    get gristConfig(): {
        list: {
            fields: string[];
            details: string[];
        };
        columns: ({
            type: string;
            gutterName: string;
            icon?: undefined;
            iconOnly?: undefined;
            title?: undefined;
            width?: undefined;
            handlers?: undefined;
            name?: undefined;
            hidden?: undefined;
            header?: undefined;
            record?: undefined;
            filter?: undefined;
            sortable?: undefined;
        } | {
            type: string;
            gutterName: string;
            icon: string;
            iconOnly: boolean;
            title: string;
            width: number;
            handlers: {
                click: (columns: ColumnConfig[], data: GristData, column: ColumnConfig, record: GristRecord, rowIndex: number, target: HTMLElement) => void;
                dblclick?: undefined;
            };
            name?: undefined;
            hidden?: undefined;
            header?: undefined;
            record?: undefined;
            filter?: undefined;
            sortable?: undefined;
        } | {
            type: string;
            name: string;
            hidden: boolean;
            gutterName?: undefined;
            icon?: undefined;
            iconOnly?: undefined;
            title?: undefined;
            width?: undefined;
            handlers?: undefined;
            header?: undefined;
            record?: undefined;
            filter?: undefined;
            sortable?: undefined;
        } | {
            type: string;
            name: string;
            header: string;
            record: {
                editable: boolean;
                align: string;
            };
            width: number;
            filter: string;
            sortable: boolean;
            gutterName?: undefined;
            icon?: undefined;
            iconOnly?: undefined;
            title?: undefined;
            handlers?: undefined;
            hidden?: undefined;
        } | {
            type: string;
            name: string;
            header: string;
            record: {
                editable: boolean;
                align: string;
            };
            width: number;
            handlers: {
                dblclick: (columns: any, data: any, column: any, record: any, rowIndex: any) => void;
                click?: undefined;
            };
            filter: string;
            gutterName?: undefined;
            icon?: undefined;
            iconOnly?: undefined;
            title?: undefined;
            hidden?: undefined;
            sortable?: undefined;
        } | {
            type: string;
            name: string;
            header: string;
            record: {
                editable: boolean;
                align: string;
            };
            width: number;
            gutterName?: undefined;
            icon?: undefined;
            iconOnly?: undefined;
            title?: undefined;
            handlers?: undefined;
            hidden?: undefined;
            filter?: undefined;
            sortable?: undefined;
        } | {
            type: string;
            name: string;
            header: string;
            width: number;
            gutterName?: undefined;
            icon?: undefined;
            iconOnly?: undefined;
            title?: undefined;
            handlers?: undefined;
            hidden?: undefined;
            record?: undefined;
            filter?: undefined;
            sortable?: undefined;
        } | {
            type: string;
            name: string;
            header: string;
            width: number;
            sortable: boolean;
            gutterName?: undefined;
            icon?: undefined;
            iconOnly?: undefined;
            title?: undefined;
            handlers?: undefined;
            hidden?: undefined;
            record?: undefined;
            filter?: undefined;
        })[];
        rows: {
            appendable: boolean;
            selectable: {
                multiple: boolean;
            };
            handlers: {
                click: (columns: any, data: any, column: any, record: any, rowIndex: any) => void;
            };
            classifier: (record: any, rowIndex: any) => void;
        };
        sorters: {
            name: string;
            desc: boolean;
        }[];
        pagination: {
            pages: number[];
            limit: number;
        };
    };
    updated(changes: any): void;
    pageUpdated(changes: any, lifecycle: any): void;
    pageInitialized(): Promise<void>;
    onDeletePDFReport(report: any): Promise<void>;
    getPDFReports({ filters, page, limit, sortings }?: {
        filters?: never[] | undefined;
        page?: number | undefined;
        limit?: number | undefined;
        sortings?: never[] | undefined;
    }): Promise<any>;
}
export {};
