import { EventEmitter, TemplateRef, ViewContainerRef } from '@angular/core';
import { GridUtilService } from './share/grid-util.service';
import { API } from '../services/api';
export interface PageIndexAndSize {
    first: number;
    rows: number;
}
export declare class UIGridComponent {
    private util;
    _vcr: ViewContainerRef;
    api: API;
    gridImg: ViewContainerRef;
    private _data;
    _dataSet: any[];
    _selections: any;
    _loading: boolean;
    _pagination: boolean;
    _fixScrollY: number;
    _title: string;
    _titleTpl: TemplateRef<any>;
    _exportLoading: boolean;
    _editCol: boolean;
    targetColumns: any[];
    editColumns: any[];
    buttonGather: {
        showEditColumn: boolean;
        enableExport: boolean;
    };
    /**
     * 控制页码
     */
    _first: number;
    _rows: number;
    /**
     * 控制多选
     */
    _allChecked: boolean;
    _indeterminate: boolean;
    _displayData: any[];
    _iconComp: {};
    editCol: boolean;
    load: EventEmitter<PageIndexAndSize>;
    selectionChange: EventEmitter<any>;
    cellClick: EventEmitter<any>;
    cellOver: EventEmitter<any>;
    exportCSV: EventEmitter<any>;
    id: string;
    columns: any[];
    showSizeChanger: boolean;
    pageSizeValues: number[];
    showTitle: boolean;
    mulitipy: boolean;
    data: any;
    fixScroll: any;
    title: string | TemplateRef<void>;
    selection: Array<any>;
    constructor(util: GridUtilService, _vcr: ViewContainerRef, api: API);
    ngOnInit(): void;
    ngOnChanges(): void;
    ngOnDestroy(): void;
    editChange(change: any): void;
    onLazyLoad(page?: PageIndexAndSize): any;
    refreshData(isSize?: boolean): void;
    getIconInstance({outField, outProp, iconTemplate}: {
        outField: any;
        outProp: any;
        iconTemplate: any;
    }): void;
    /**
     * 记录选择事件
     * @param rows
     */
    onRowSelectChange(data: any): boolean;
    /**
     * 选择checkbox
     */
    refreshStatus(event?: MouseEvent): void;
    /**
     * 全选和反选
     * @param value
     * @param data
     */
    checkAll(value: any, data: Array<any>): void;
    /**
     * cell点击事件
     * @param event
     * @param row
     * @param field
     */
    onCellClick(event: Event, row: any, field: any): void;
    /**
     * 鼠标mouseover事件
     */
    onCellMouseover(event: any, row: any, field: any): void;
    /**
     * 数据转为字符串
     * @param val
     * @returns {any}
     * @constructor
     */
    dataToStr(val: any): any;
    /**
     * 对有textLength属性的column进行字节数量控制
     * @param val
     * @param textLength
     * @returns {string|void|any}
     */
    replaceTextOmit(val: any, textLength?: number): any;
    /**
     *
     * @param grid
     * @param data
     * @param isFailed 失败了
     */
    doExportCSV(grid: any, data: any, isFailed?: boolean): void;
    exportDisable: boolean;
    exportCSVIntenal(): void;
}
export declare class UIGridModule {
}
