import { Effect } from 'effect'; import type { MCPServerRegistry } from './registry'; import type { MCPResource } from './types'; /** * Resource content type */ export type ResourceContent = { contents: Array<{ uri: string; mimeType?: string; text?: string; blob?: string; }>; }; /** * Service for accessing MCP server resources. * * Provides: * - List resources from a specific server * - Read resource contents from a specific server * - List resources from all registered servers * - Graceful handling of disconnected servers */ export declare class MCPResourceService { private registry; constructor(registry: MCPServerRegistry); /** * List resources from a specific server. * * @param serverId - Server identifier * @returns Effect providing array of resources * @throws Error if server not found */ listResources(serverId: string): Effect.Effect; /** * Read resource contents from a specific server. * * @param serverId - Server identifier * @param uri - Resource URI * @returns Effect providing resource contents * @throws Error if server not found or not connected */ readResource(serverId: string, uri: string): Effect.Effect; /** * List resources from all registered servers. * * Skips disconnected or error servers with warning logs. * * @returns Effect providing Map of server ID to resources array */ listAllResources(): Effect.Effect, never>; } //# sourceMappingURL=resources.d.ts.map