import { ComponentType, LazyExoticComponent, ReactChild, ReactElement, JSXElementConstructor, FunctionComponentElement, ElementType } from 'react'; interface LazyFactory> extends LazyFactoryMeta { (): Promise<{ default: T; }>; } interface LazyFactoryMeta { chunk?: string; lazyImport?: string; sync?: true; } interface LazyOptions { fallback?: (props: T extends ComponentType ? U : unknown) => ElementType; } declare function lazy>(factory: LazyFactory, options: LazyOptions): LazyExoticComponent | (

(props: P, ...children: ReactChild[]) => ReactElement<{}, string | JSXElementConstructor> | FunctionComponentElement<{}>); export { lazy };