import * as react_jsx_runtime from 'react/jsx-runtime'; import { ReactNode, RefObject, ComponentProps } from 'react'; interface TOCItemType { title: ReactNode; url: string; depth: number; } type TableOfContents = TOCItemType[]; /** * The estimated active heading ID */ declare function useActiveAnchor(): string | undefined; /** * The id of visible anchors */ declare function useActiveAnchors(): string[]; interface AnchorProviderProps { toc: TableOfContents; /** * Only accept one active item at most * * @defaultValue false */ single?: boolean; children?: ReactNode; } interface ScrollProviderProps { /** * Scroll into the view of container when active */ containerRef: RefObject; children?: ReactNode; } declare function ScrollProvider({ containerRef, children, }: ScrollProviderProps): react_jsx_runtime.JSX.Element; declare function AnchorProvider({ toc, single, children, }: AnchorProviderProps): react_jsx_runtime.JSX.Element; interface TOCItemProps extends Omit, 'href'> { href: string; onActiveChange?: (v: boolean) => void; } declare function TOCItem({ ref, onActiveChange, ...props }: TOCItemProps): react_jsx_runtime.JSX.Element; export { AnchorProvider, type AnchorProviderProps, ScrollProvider, type ScrollProviderProps, TOCItem, type TOCItemProps, type TOCItemType, type TableOfContents, useActiveAnchor, useActiveAnchors };