import React, { Component, ComponentType } from 'react'; import { userLogout as userLogoutAction } from './actions/authActions'; import { Dispatch, AuthProvider, AdminChildren, CustomRoutes, CatchAllComponent, LayoutComponent, LayoutProps, ResourceElement } from './types'; export interface AdminRouterProps extends LayoutProps { appLayout: LayoutComponent; catchAll: CatchAllComponent; children?: AdminChildren; customRoutes?: CustomRoutes; loading: ComponentType; } interface EnhancedProps { authProvider?: AuthProvider; isLoggedIn?: boolean; userLogout: Dispatch; } interface State { children: ResourceElement[]; } export declare class CoreAdminRouter extends Component { static defaultProps: Partial; state: State; componentWillMount(): void; initializeResources: (nextProps: AdminRouterProps & EnhancedProps) => void; initializeResourcesAsync: (props: AdminRouterProps & EnhancedProps) => Promise; componentWillReceiveProps(nextProps: any): void; renderCustomRoutesWithoutLayout: (route: any, props: any) => any; render(): JSX.Element; } declare const _default: React.ComponentType; export default _default;