import type { RouterProviderProps } from './types'; /** * RouterProvider component that provides router context to the React tree. * This must wrap your application to enable routing functionality. * Uses useSyncExternalStore for optimal React 18+ integration with concurrent features. * * @param props - Component props * @param props.router - Router instance to provide * @param props.children - Child components * * @example * ```tsx * import { Router, RouterMode } from '@esmx/router'; * import { RouterProvider } from '@esmx/router-react'; * * const routes = [ * { path: '/', component: Home }, * { path: '/about', component: About } * ]; * * const router = new Router({ * routes, * mode: RouterMode.history * }); * * function App() { * return ( * * * * * * ); * } * ``` * * @example * ```tsx * // SSR usage - initialize router with server URL * import { Router, RouterMode } from '@esmx/router'; * import { RouterProvider } from '@esmx/router-react'; * * const router = new Router({ * routes, * mode: RouterMode.history, * base: new URL(serverUrl) * }); * * function ServerApp() { * return ( * * * * ); * } * ``` */ export declare function RouterProvider({ router, children }: RouterProviderProps): React.ReactElement; export declare namespace RouterProvider { var displayName: string; }