import type { PivotState } from "./use-pivot-columns";
export type ControlledPivotState = ReturnType<typeof usePivotState>;
export declare function usePivotState(state: PivotState | undefined, onPivotStateChange: undefined | ((p: PivotState) => void)): {
    state: PivotState;
    setState: (newValue: PivotState | ((prevValue: PivotState) => PivotState)) => void;
    pivotColumnState: {
        readonly ordering: string[];
        readonly resizing: Record<string, number>;
        readonly pinning: Record<string, import("@1771technologies/lytenyte-shared").ColumnPin>;
    };
    onPivotColumnStateChange: (change: PivotState["columnState"]) => void;
    pivotGroupState: Record<string, boolean>;
    onPivotGroupStateChange: (change: PivotState["columnGroupState"]) => void;
    pivotRowGroupExpansions: Record<string, boolean | undefined>;
    onPivotRowGroupChange: (change: PivotState["rowGroupExpansions"]) => void;
};
