import React from 'react';
import Loadable from 'react-loadable';
import type { ExtensionKey, ExtensionParams, ExtensionProvider, ExtensionType, Parameters } from './types';
import type { MultiBodiedExtensionActions, ReferenceEntity } from './types/extension-handler';
export declare function getExtensionModuleNode(extensionProvider: ExtensionProvider, extensionType: ExtensionType, extensionKey: ExtensionKey): Promise<import("./types").ExtensionModuleNode<any>>;
/**
 * Gets `__` prefixed properties from an extension node module definition
 */
export declare function getExtensionModuleNodePrivateProps(extensionProvider: ExtensionProvider, extensionType: ExtensionType, extensionKey: ExtensionKey): Promise<any>;
export declare function getNodeRenderer<T extends Parameters>(extensionProvider: ExtensionProvider, extensionType: ExtensionType, extensionKey: ExtensionKey): React.ComponentType<{
    node: ExtensionParams<T>;
    references?: ReferenceEntity[] | undefined;
    actions?: MultiBodiedExtensionActions | undefined;
}> & Loadable.LoadableComponent;
