import { Pinned, ColumnOptions, BaseColumnOptions } from "../../../types";
import { Store as BaseStore } from "../../../grid/store";
export interface Actions {
    updateColumnPinned: {
        field: string;
        pinned: Pinned;
    };
    updateColumnWidth: {
        field: string;
        width: number;
    };
    setColumns: {
        columns: ColumnOptions[];
        defaultOptions?: BaseColumnOptions;
    };
    setHeight: number;
}
export interface State {
    pinnedLeftColumns: string[];
    pinnedRightColumns: string[];
    normalColumns: string[];
    columns: Record<string, ColumnOptions>;
    height: number;
}
export declare const defaultColumnOptions: BaseColumnOptions;
export declare class Store extends BaseStore<State, Actions> {
    constructor(initial?: Partial<State>);
    protected setColumns: (columnOptions: ColumnOptions[], defaultColumnOption?: BaseColumnOptions) => {
        pinnedLeftColumns: string[];
        pinnedRightColumns: string[];
        normalColumns: string[];
        columns: Record<string, ColumnOptions>;
    };
    /**
     * Actions
     */
    getColumnOptions(column: string): ColumnOptions;
    getColumnOptionsByIndex(x: number): ColumnOptions;
    getColumnByIndex(x: number): string;
}
export default Store;
