import React, { ReactNode, ReactElement } from 'react';
import { RegistryInfo, AnyProps, SuspenseProps, UrlMapper } from './typing.d';
import { ConfigConsumerProps } from './context';
export interface CloudComponentConfigProviderProps extends ConfigConsumerProps {
    children?: ReactNode;
}
export declare const CloudComponentConfigProvider: ({ children, ...restProps }: CloudComponentConfigProviderProps) => JSX.Element;
export interface CloudComponentI {
    <P, T = any>(props: RegistryInfo & SuspenseProps & P & {
        ref?: React.Ref<T>;
    }): ReactElement<P> | null;
}
declare function create(moduleLoader: any, registrySever: string, mapper?: UrlMapper): {
    loadComponent: ({ name, url }: RegistryInfo) => React.ForwardRefExoticComponent<Pick<AnyProps & SuspenseProps, React.ReactText> & React.RefAttributes<any>>;
    CloudComponent: CloudComponentI;
};
export default create;
