export function GuardedRoute({ condition, isConditionLoading, LoadingComponent, FailureComponent, component: Component, ...routeProps }: {
    [x: string]: any;
    condition: any;
    isConditionLoading: any;
    LoadingComponent?: {
        ({ className, message, illustration, children, ...props }: {
            [x: string]: any;
            className: any;
            message?: null | undefined;
            illustration: any;
            children: any;
        }): 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 propTypes_1 from "prop-types";
