import { Resources } from '../resources/Resources.ts';
import { ApplicationScope } from './ApplicationScope.ts';
/**
 * Load all the applications registered in Harper, those in the components directory as well as any directly
 * specified to run
 * @param loadedPluginModules
 * @param loadedResources
 */
export declare function loadComponentDirectories(loadedPluginModules?: Map<any, any>, loadedResources?: Resources): Promise<void>;
export declare const TRUSTED_RESOURCE_PLUGINS: any;
export declare const loadedPaths: Map<any, any>;
export declare function setErrorReporter(reporter: any): void;
export declare const getComponentName: () => string;
export interface LoadComponentOptions {
    isRoot?: boolean;
    applicationScope?: ApplicationScope;
    autoReload?: boolean;
    providedLoadedComponents?: Map<any, any>;
    appName?: string;
}
/**
 * Load a component from the specified directory
 * @param componentPath
 * @param resources
 * @param origin
 * @param portsAllowed
 * @param providedLoadedComponents
 */
export declare function loadComponent(componentDirectory: string, resources: Resources, origin: string, options?: LoadComponentOptions): Promise<any>;
