import type { ActionsSlotProps, CascadeMode, ErrorSlotProps, GetChildren, LoadingChildrenSlotProps, NodeKey, NodeSlotProps, SelectionMode, TreeHandle } from './types.js';
import type { LoadState } from './useTreeState.js';
declare const __VLS_export: <Node>(__VLS_props: NonNullable<Awaited<typeof __VLS_setup>>["props"], __VLS_ctx?: __VLS_PrettifyLocal<Pick<NonNullable<Awaited<typeof __VLS_setup>>, "attrs" | "emit" | "slots">>, __VLS_exposed?: NonNullable<Awaited<typeof __VLS_setup>>["expose"], __VLS_setup?: Promise<{
    props: import("vue").PublicProps & __VLS_PrettifyLocal<{
        node: Node;
        depth: number;
        posInSet: number;
        setSize: number;
        parentKey: NodeKey | null;
        getKey: (n: Node) => NodeKey;
        getChildren?: GetChildren<Node>;
        hasLoader: boolean;
        selectionMode: SelectionMode;
        cascade: CascadeMode;
        selectable: (n: Node, depth: number) => boolean;
        draggable: (n: Node, depth: number) => boolean;
        isExpanded: (key: NodeKey) => boolean;
        isSelectedKey: (key: NodeKey) => boolean;
        isVisuallySelected: (n: Node, depth: number) => boolean;
        isIndeterminate: (n: Node, depth: number) => boolean;
        resolvedChildren: (n: Node) => Node[] | undefined | null;
        loadStateOf: (key: NodeKey) => LoadState<Node> | undefined;
        filterPredicate?: (n: Node, query: string) => boolean;
        filterQuery: string;
        isExpandable: (n: Node) => boolean;
        tree: TreeHandle<Node>;
        focusedKey: NodeKey | null;
        showFocusedRow: boolean;
    } & {
        "onToggle-expand"?: ((key: string) => any) | undefined;
        "onToggle-select"?: ((key: string) => any) | undefined;
        "onFocus-row"?: ((key: string) => any) | undefined;
    }> & (typeof globalThis extends {
        __VLS_PROPS_FALLBACK: infer P;
    } ? P : {});
    expose: (exposed: {}) => void;
    attrs: any;
    slots: {
        node?: (p: NodeSlotProps<Node>) => unknown;
        actions?: (p: ActionsSlotProps<Node>) => unknown;
        error?: (p: ErrorSlotProps<Node>) => unknown;
        'loading-children'?: (p: LoadingChildrenSlotProps<Node>) => unknown;
    };
    emit: (e: "toggle-expand" | "toggle-select" | "focus-row", key: NodeKey) => void;
}>) => import("vue").VNode & {
    __ctx?: Awaited<typeof __VLS_setup>;
};
declare const _default: typeof __VLS_export;
export default _default;
type __VLS_PrettifyLocal<T> = (T extends any ? {
    [K in keyof T]: T[K];
} : {
    [K in keyof T as K]: T[K];
}) & {};
