import { ReactNode } from 'react';
export interface ProtectedRouteProps {
children: ReactNode;
/**
* Whether the user is authenticated
*/
isAuthenticated: boolean;
/**
* Whether authentication status is still being determined
*/
isLoading?: boolean;
/**
* Path to redirect to when not authenticated
* Use ':lang' placeholder for language parameter
* @default '/:lang' or '/en' if no lang param
*/
redirectPath?: string;
/**
* Custom loading component
*/
loadingComponent?: ReactNode;
/**
* Custom fallback when not authenticated (before redirect)
*/
fallback?: ReactNode;
}
/**
* Route wrapper that protects content behind authentication.
*
* @example
* ```tsx
* // Basic usage
* const { user, loading } = useAuth();
*
*
*
*
*
* // With custom redirect
*
*
*
* ```
*/
export declare function ProtectedRoute({ children, isAuthenticated, isLoading, redirectPath, loadingComponent, fallback, }: ProtectedRouteProps): React.ReactElement | null;
export default ProtectedRoute;
//# sourceMappingURL=ProtectedRoute.d.ts.map