import type { UseClientDataSourceParams } from "../use-client-data-source.js";
import type { SourceState } from "./use-controlled-ds-state.js";
import { type LeafNodeTuple } from "@1771technologies/lytenyte-core/internal";
import type { Grid } from "@1771technologies/lytenyte-core";
export declare function useFlattenedData<Spec extends Grid.GridSpec>(props: UseClientDataSourceParams<Spec>, [leafsTop, leafs, leafsBot, pinMap]: LeafNodeTuple<Spec["data"]>, { expandedFn }: SourceState): {
    tree: import("./use-group-tree/use-group-tree.js").RootNode<Spec["data"]> | null;
    maxDepth: number;
    flatten: import("@1771technologies/lytenyte-shared").RowNode<Spec["data"]>[];
    rowByIdRef: import("react").RefObject<Map<string, import("@1771technologies/lytenyte-shared").RowNode<Spec["data"]>>>;
    rowByIndexRef: import("react").RefObject<Map<number, import("@1771technologies/lytenyte-shared").RowNode<Spec["data"]>>>;
    rowIdToRowIndexRef: import("react").RefObject<Map<string, number>>;
    leafIdsRef: import("react").RefObject<Map<string, import("@1771technologies/lytenyte-shared").RowLeaf<Spec["data"]>>>;
    leafsTop: import("@1771technologies/lytenyte-shared").RowLeaf<Spec["data"]>[];
    leafs: import("@1771technologies/lytenyte-shared").RowLeaf<Spec["data"]>[];
    leafsBot: import("@1771technologies/lytenyte-shared").RowLeaf<Spec["data"]>[];
    sorted: number[];
    groupFn: import("@1771technologies/lytenyte-shared").GroupFn<Spec["data"]> | null;
};
