import * as React from 'react'; import { BrowserRouterProps } from 'react-router-dom'; declare module 'hops' { type Omit = Pick>; export class Miss extends React.Component {} export interface StatusProps { code: number; } export class Status extends React.Component {} export interface HeaderProps { name: string; value: string; } export class Header extends React.Component {} export interface ImportComponentRenderOptions { Component: React.ComponentType; error: boolean; loading: boolean; } export interface ImportComponentOptions { loader?: (load: Promise) => Promise; render?: ( options: ImportComponentRenderOptions & Props ) => React.ReactNode; } export function importComponent( load: () => Promise<{ default: React.ComponentType }> ): React.ComponentType & Props>; export function importComponent( load: () => Promise, resolver: (exports: Exports) => React.ComponentType ): React.ComponentType & Props>; export function importComponent( module: string, exportName?: string ): React.ComponentType>; export interface ServerData { [key: string]: any; } export interface Config { [key: string]: any; } export const ServerDataContext: React.Context; export const ConfigContext: React.Context; export function withServerData< P extends { serverData: C }, C = ServerData, R = Omit >(Component: React.ComponentType

): React.ComponentType; export function withConfig< P extends { config: C }, C = Config, R = Omit >(Component: React.ComponentType

): React.ComponentType; export class Mixin {} export const strategies: any; export interface HopsOptions { router?: BrowserRouterProps; } export function render( reactElement: React.ReactElement

, options?: Options & HopsOptions ): void; }