import { PropsWithChildren } from 'react';
/**
 * AuthGuard component
 * @param state - AuthGuardState Enum value to determine the state of the user
 * @returns - LoadingPage component with a message based on the state of the user
 *
 *  - If the user is authenticated, it returns the RouterProvider component
 *
 * - If the user is unitialized, it returns a LoadingPage component with a message of 'Initializing'
 *
 * - If the user is redirecting to logout, it returns a LoadingPage component with a message of 'Redirecting to logout'
 *
 * - If the user is refreshing session, it returns a LoadingPage component with a message of 'Refreshing session'
 *
 * - If the user is redirecting to login, it returns a LoadingPage component with a message of 'Redirecting to login'
 *
 * - If the user is in any other state, it returns a LoadingPage component with a message of 'Validating user'
 *
 * @example  ```
 * <AuthGuard state={AuthGuardState.AUTHENTICATED} />
 * ```
 */
export declare const AuthGuard: ({ children }: PropsWithChildren) => string | number | bigint | boolean | Iterable<import('react').ReactNode> | Promise<string | number | bigint | boolean | import('react').ReactPortal | import('react').ReactElement<unknown, string | import('react').JSXElementConstructor<any>> | Iterable<import('react').ReactNode> | null | undefined> | import("react/jsx-runtime").JSX.Element | null | undefined;
//# sourceMappingURL=auth-guard.d.ts.map