/**
 * Get an ID for a row.
 *
 * @param {unknown} attributes An entry/row.
 * @returns {string} Unique id for this object.
 * @hidden
 */
export function getRowUid(attributes: unknown): string;
export default GridConfig;
/**
 * @param {Object<string, string|number|boolean>[]|undefined} data Entries/objects to be shown in a grid.
 * @param {import('ngeo/download/Csv').GridColumnDef[] | undefined} columnDefs Column definition of a
 *    grid.
 * @class
 * @private
 * @hidden
 */
declare function GridConfig(data: {
    [x: string]: string | number | boolean;
}[] | undefined, columnDefs: import("ngeo/download/Csv").GridColumnDef[] | undefined): void;
declare class GridConfig {
    /**
     * @param {Object<string, string|number|boolean>[]|undefined} data Entries/objects to be shown in a grid.
     * @param {import('ngeo/download/Csv').GridColumnDef[] | undefined} columnDefs Column definition of a
     *    grid.
     * @class
     * @private
     * @hidden
     */
    private constructor();
    /**
     * @type {Object<string, string|number|boolean>[]|undefined}
     */
    data: {
        [x: string]: string | number | boolean;
    }[] | undefined;
    /**
     * @type {import('ngeo/download/Csv').GridColumnDef[] | undefined}
     */
    columnDefs: import("ngeo/download/Csv").GridColumnDef[] | undefined;
    /**
     * @type {Object<string, Object>}
     */
    selectedRows: {
        [x: string]: Object;
    };
    /**
     * Is the given row selected?
     *
     * @param {unknown} attributes An entry/row.
     * @returns {boolean} True if already selected. False otherwise.
     */
    isRowSelected(attributes: unknown): boolean;
    /**
     * Returns the number of selected rows.
     *
     * @returns {number} Number of selected rows.
     */
    getSelectedCount(): number;
    /**
     * Returns the selected rows.
     *
     * @returns {unknown[]} Selected rows in the current ordering.
     */
    getSelectedRows(): unknown[];
    /**
     * @param {unknown} attributes An entry/row.
     * @public
     */
    public selectRow(attributes: unknown): void;
    /**
     * @param {unknown} attributes An entry/row.
     * @public
     */
    public toggleRow(attributes: unknown): void;
    /**
     * Select all rows.
     */
    selectAll(): void;
    /**
     * Deselect all rows.
     */
    unselectAll(): void;
    /**
     * Invert selection.
     */
    invertSelection(): void;
}
