import type { JSX } from "@solidjs/web"; import { FloatingTreeStore } from "./floating-tree-store.js"; /** * Returns the parent node id for nested floating elements, if available. * Returns `null` for top-level floating elements. */ export declare function useFloatingParentNodeId(): string | null; /** * Returns the nearest floating tree context, if available. */ export declare function useFloatingTree(externalTree?: FloatingTreeStore): FloatingTreeStore | null; /** * Registers a node into the `FloatingTree`, returning its id. If no tree is * mounted above, the id is still returned but no registration happens. * * @see https://floating-ui.com/docs/FloatingTree */ export declare function useFloatingNodeId(externalTree?: FloatingTreeStore): string | undefined; export interface FloatingNodeProps { children?: JSX.Element; id: string | undefined; } /** * Provides parent node context for nested floating elements. * @see https://floating-ui.com/docs/FloatingTree * @internal */ export declare function FloatingNode(props: FloatingNodeProps): JSX.Element; export interface FloatingTreeProps { children?: JSX.Element; externalTree?: FloatingTreeStore | undefined; } /** * Provides context for nested floating elements when they are not children * of each other on the DOM. * * Not necessary in all cases — only required when there must be explicit * communication between parent and child floating elements, including: * * - The `bubbles` option in `useDismiss()`. * - Nested virtual list navigation. * - Nested floating elements that each open on hover. * - Custom communication between parent and child floating elements. * * @see https://floating-ui.com/docs/FloatingTree * @internal */ export declare function FloatingTree(props: FloatingTreeProps): JSX.Element; //# sourceMappingURL=floating-tree.d.ts.map