/** * x.ruv.io open swarm federation — ruflo-native MCP tools. * * Bridges ruflo to the open, membership-gated, signed Nostr federation behind * https://x.ruv.io. Reads are open; writes made with the GATEWAY identity need * the gateway admin token (RUFLO_X_ADMIN_TOKEN). Users who want to publish as * themselves should join with their own key via invite→claim (see the * `ruv://federation/registry` resource), not through these gateway-identity tools. */ import type { MCPTool } from './types.js'; export declare function parseGatewayText(text: string): Record; /** * The payload, for consumers INSIDE this package that immediately index the * value (`recent.messages`, `Object.keys(roster)`). * * At the MCP boundary we return the whole envelope so the caller can see whose * words these are. Internally that shape is a hazard: reading `.messages` off an * envelope yields undefined and `Object.keys()` yields the envelope's own five * keys, so a miscount looks like a real answer. Never do a bare property read on * a parseGatewayText result — come through here. */ export declare function relayPayload(text: string): Record; export declare const xFederationTools: MCPTool[]; //# sourceMappingURL=x-federation-tools.d.ts.map