UNPKG

@route-weaver/react

Version:
18 lines (14 loc) 1.64 kB
import * as _route_weaver_core from '@route-weaver/core'; import { RouteDeclarations, NavDefinitions, NavigationInstance } from '@route-weaver/core'; import * as react_jsx_runtime from 'react/jsx-runtime'; import React from 'react'; declare const useNavigation: <T extends RouteDeclarations<U>, V extends NavDefinitions<keyof T & string>, U = unknown>() => _route_weaver_core.StructuredNavigation<U, V>; declare const useActiveRoute: <T extends RouteDeclarations<U>, V extends NavDefinitions<keyof T & string>, U = unknown>() => _route_weaver_core.ActiveRoute<U> | undefined; declare const useBreadcrumbs: <T extends RouteDeclarations<U>, V extends NavDefinitions<keyof T & string>, U = unknown>() => _route_weaver_core.StructuredNavItem<U>[]; declare const useBuildPath: <T extends RouteDeclarations<U>, V extends NavDefinitions<keyof T & string>, U = unknown>() => <R extends keyof T>(id: R, ...args: _route_weaver_core.ExtractRouteParams<_route_weaver_core.RoutePath<T[R]>> extends never ? [params?: undefined] : [params: _route_weaver_core.RouteParams<_route_weaver_core.RoutePath<T[R]>>]) => string; declare const RouteWeaverProvider: <T extends RouteDeclarations<U>, V extends NavDefinitions<keyof T & string>, U = unknown>({ navInstance, children, }: { navInstance: NavigationInstance<T, V, U>; children: React.ReactNode; }) => react_jsx_runtime.JSX.Element; declare const useRouteWeaver: <T extends RouteDeclarations<U>, V extends NavDefinitions<keyof T & string>, U = unknown>() => NavigationInstance<T, V, U>; export { RouteWeaverProvider, useActiveRoute, useBreadcrumbs, useBuildPath, useNavigation, useRouteWeaver };