import * as react_jsx_runtime from 'react/jsx-runtime';
import * as React from 'react';

interface ProductRootGateProps {
    /**
     * Rendered while the persisted store is hydrating from localStorage.
     * Defaults to `null` (renders nothing). Pass a route-shaped skeleton
     * (e.g. `<DashboardLoadingFallback />`) for a smoother first paint.
     */
    loadingFallback?: React.ReactNode;
    /**
     * Where to redirect when the URL segment doesn't resolve to a registered
     * product. Defaults to `/prism/dashboard`. Customer apps can override
     * (e.g. `/<their-default-slug>/dashboard`).
     */
    fallbackPath?: string;
}
/**
 * Validates `:productRootSegment` against built-in slugs and configured
 * custom products. Unknown segments bounce to `fallbackPath`; known
 * segments render the child route via `<Outlet />`.
 *
 * Mount as the `element` of a `:productRootSegment` parent route:
 *
 * ```tsx
 * <Route path=":productRootSegment" element={<ProductRootGate />}>
 *   <Route path="dashboard" element={<Dashboard />} />
 *   …
 * </Route>
 * ```
 */
declare function ProductRootGate({ loadingFallback, fallbackPath, }?: ProductRootGateProps): react_jsx_runtime.JSX.Element;

export { ProductRootGate, type ProductRootGateProps };
