import type { ListResourcesResult, ListResourceTemplatesResult, ReadResourceResult, TextResourceContents } from '@modelcontextprotocol/sdk/types.js';
import type { ServerMode } from '../types.js';
import type { AvailableWidget } from './widgets.js';
type ExtendedResourceContents = TextResourceContents & {
    html?: string;
    _meta?: AvailableWidget['meta'];
};
type ExtendedReadResourceResult = Omit<ReadResourceResult, 'contents'> & {
    contents: ExtendedResourceContents[];
};
type ResourceService = {
    listResources: () => Promise<ListResourcesResult>;
    readResource: (uri: string) => Promise<ExtendedReadResourceResult>;
    listResourceTemplates: () => Promise<ListResourceTemplatesResult>;
};
type ResourceServiceOptions = {
    skyfireMode?: boolean;
    mode?: ServerMode;
    getAvailableWidgets: () => Map<string, AvailableWidget>;
};
export declare function createResourceService(options: ResourceServiceOptions): ResourceService;
export {};
//# sourceMappingURL=resource_service.d.ts.map