import * as React from 'react'; export interface DynamicOptions { loading?: React.ComponentType; ssr?: boolean; modules?(props: TCProps & TLProps): { [key: string]: Promise> }; render?(props: TCProps & TLProps, modules: { [key: string]: React.ComponentType }): void; } export class SameLoopPromise extends Promise { constructor(executor: (resolve: (value?: T) => void, reject: (reason?: any) => void) => void); setResult(value: T): void; setError(value: any): void; runIfNeeded(): void; } export default function(componentPromise: Promise>, options?: DynamicOptions): React.ComponentType;