export function GuardedRoute({ condition, isConditionLoading, LoadingComponent, FailureComponent, component: Component, ...routeProps }: {
    [x: string]: any;
    condition: any;
    isConditionLoading: any;
    LoadingComponent?: {
        ({ className, message, illustration, ...props }: {
            className?: string | undefined;
            message?: React.ReactNode;
            illustration?: string | undefined;
        } & import("./types.js").InferComponentProps<import("styled-components").StyledComponent<"div", import("styled-components").DefaultTheme, {}, never>>): JSX.Element;
        displayName: string;
    } | undefined;
    FailureComponent: any;
    component: any;
}): JSX.Element;
export namespace GuardedRoute {
    namespace propTypes {
        const condition: propTypes.Requireable<boolean>;
        const isConditionLoading: propTypes.Requireable<boolean>;
        const LoadingComponent: propTypes.Requireable<propTypes.ReactComponentLike>;
        const FailureComponent: propTypes.Validator<propTypes.ReactComponentLike>;
        const component: propTypes.Requireable<propTypes.ReactComponentLike>;
    }
}
export function createGuardedRoute(defaults: any): (props: any) => JSX.Element;
import React from "react";
import propTypes_1 from "prop-types";
