import React, { Component } from "react"; import { Route, Redirect, withRouter, RouteComponentProps, RouteProps } from "react-router-dom"; type Props = RouteComponentProps & RouteProps & { authenticated?: boolean; }; class ProtectedRoute extends Component { renderRoute = (Component: any, authenticated?: boolean) => { return (routeProps: any) => { if (authenticated) { return ; } else { return ( ); } }; }; render() { const { component, authenticated, ...routeProps } = this.props; return ; } } export default withRouter(ProtectedRoute);