/**
 * @rangojs/router
 *
 * Single user-facing entrypoint for all router APIs.
 *
 * The "react-server" export condition selects index.rsc.ts (real implementations)
 * vs this file (client stubs for server-only functions).
 *
 * For client-only exports (Outlet, useOutlet, hooks, components):
 *   import from "@rangojs/router/client"
 */
// Universal rendering utilities (work on both server and client)
export { renderSegments } from "./segment-system.js";
// Error classes (can be used on both server and client)
export { RouteNotFoundError, DataNotFoundError, notFound, MiddlewareError, HandlerError, BuildError, InvalidHandlerError, NetworkError, isNetworkError, sanitizeError, RouterError, } from "./errors.js";
// Client-safe createLoader - only stores the $$id, function is not included
// Use this when defining loaders that will be imported by client components
export { createLoader } from "./loader.js";
/**
 * Error-throwing stub for server-only `urls` function.
 */
export function urls() {
    throw new Error('urls() is server-only and requires RSC context.');
}
/**
 * Error-throwing stub for server-only `createRouter` function.
 */
export function createRouter() {
    throw new Error('createRouter() is server-only and requires RSC context.');
}
/**
 * Error-throwing stub for server-only `redirect` function.
 */
export function redirect() {
    throw new Error('redirect() is server-only and requires RSC context.');
}
// Handle API (universal - works on both server and client)
export { createHandle, isHandle } from "./handle.js";
/**
 * Error-throwing stub for server-only `Prerender` function.
 */
export function Prerender() {
    throw new Error('Prerender() is server-only and requires RSC context.');
}
/**
 * Error-throwing stub for server-only `Static` function.
 */
export function Static() {
    throw new Error('Static() is server-only and requires RSC context.');
}
/**
 * Error-throwing stub for server-only `getRequestContext` function.
 */
export function getRequestContext() {
    throw new Error('getRequestContext() is server-only and requires RSC context.');
}
/**
 * Error-throwing stub for server-only `requireRequestContext` function.
 */
export function requireRequestContext() {
    throw new Error('requireRequestContext() is server-only and requires RSC context.');
}
/**
 * Error-throwing stub for server-only `createReverse` function.
 */
export function createReverse() {
    throw new Error('createReverse() is server-only and requires RSC context.');
}
/**
 * Error-throwing stub for server-only `enableMatchDebug` function.
 */
export function enableMatchDebug() {
    throw new Error('enableMatchDebug() is server-only and requires RSC context.');
}
/**
 * Error-throwing stub for server-only `getMatchDebugStats` function.
 */
export function getMatchDebugStats() {
    throw new Error('getMatchDebugStats() is server-only and requires RSC context.');
}
/**
 * Error-throwing stub for server-only `track` function.
 */
export function track() {
    throw new Error('track() is server-only and requires RSC context.');
}
// scopedReverse() helper for handlers to get locally-typed reverse
export { scopedReverse } from "./reverse.js";
// Location state (universal - works on both server and client)
export { createLocationState, } from "./browser/react/location-state-shared.js";
//# sourceMappingURL=index.js.map