import type { LimpsExtension, ExtensionTool, ExtensionResource } from './types.js'; import type { ServerConfig } from '../config.js'; import { createExtensionContext } from './context.js'; /** * Loaded extension with its context. */ export interface LoadedExtension { extension: LimpsExtension; context: ReturnType; } /** * Load all extensions specified in the config. * * @param config - Server configuration * @returns Array of loaded extensions */ export declare function loadExtensions(config: ServerConfig): Promise; /** * Get all tools from loaded extensions. * * @param extensions - Loaded extensions * @returns Array of extension tools */ export declare function getExtensionTools(extensions: LoadedExtension[]): ExtensionTool[]; /** * Get all resources from loaded extensions. * * @param extensions - Loaded extensions * @returns Array of extension resources */ export declare function getExtensionResources(extensions: LoadedExtension[]): ExtensionResource[]; /** * Shutdown all extensions. * * @param extensions - Loaded extensions */ export declare function shutdownExtensions(extensions: LoadedExtension[]): Promise; //# sourceMappingURL=loader.d.ts.map