import React from 'react'; import AuthorizedRoute, { authority } from './AuthorizedRoute'; export type IReactComponent

= | React.StatelessComponent

| React.ComponentClass

| React.ClassicComponentClass

; type Secured = ( authority: authority, error?: React.ReactNode ) => (target: T) => T; type check = ( authority: authority, target: T, Exception: S ) => T | S; export interface IAuthorizedProps { authority: authority; noMatch?: React.ReactNode; } export class Authorized extends React.Component { public static Secured: Secured; public static AuthorizedRoute: typeof AuthorizedRoute; public static check: check; } declare function renderAuthorize(currentAuthority: string): typeof Authorized; export default renderAuthorize;