import type { ADFEntity } from '@atlaskit/adf-utils/types';
import type { ExtensionKey, ExtensionManifest, ExtensionModuleAction, ExtensionModuleActionHandler, ExtensionModuleActionObject, ExtensionModuleKey, ExtensionType, Module } from './types/extension-manifest';
import type { Parameters } from './types/extension-parameters';
export declare const FORGE_EXTENSION_TYPE = "com.atlassian.ecosystem";
export declare const NATIVE_EMBED_EXTENSION_TYPE = "com.atlassian.confluence.macro.core";
export declare const NATIVE_EMBED_EXTENSION_KEY = "native-embed";
export declare const getExtensionKeyAndNodeKey: (extensionKey: ExtensionKey, extensionType: ExtensionType) => string[];
export declare const buildExtensionKeyAndNodeKey: (extensionKey: ExtensionKey, nodeKey?: ExtensionModuleKey) => string;
export declare function buildAction<T extends Parameters>(action: ExtensionModuleAction<T>, manifest: ExtensionManifest<T>): ADFEntity | ExtensionModuleActionHandler | undefined;
export declare const resolveImportSync: <T extends Parameters>(importedModule: Module<T>) => T;
export declare const resolveImport: <T extends Parameters>(importPromise: Promise<Module<T>> | Module<T>) => Promise<T>;
export declare function buildNode<T extends Parameters>(action: ExtensionModuleActionObject<T>, manifest: ExtensionManifest<T>): ADFEntity | undefined;
