import { McpServer } from "@modelcontextprotocol/sdk/server/mcp.js"; import { EtoroClient } from "../client.js"; import type { PathResolver } from "../utils/path-resolver.js"; import { TtlCache } from "../utils/cache.js"; /** Flatten the nested eToro candle response into a plain array with null volumes defaulted to 0. */ export declare function flattenCandles(result: unknown): unknown[]; /** * Fetch instrument metadata for multiple IDs. The eToro API only supports * single-ID lookups, so this fans out into individual requests with a small * delay between each to stay within rate limits. Results are merged and * returned in the standard { instrumentDisplayDatas: [...] } shape. * Per-ID results are cached individually for 1 hour. */ export declare function fetchInstrumentsBatch(client: EtoroClient, paths: PathResolver, instrumentIds: string, cache: TtlCache): Promise>; export declare function enrichWithNames(client: EtoroClient, paths: PathResolver, instrumentIds: string, rateData: unknown, cache: TtlCache): Promise; export declare function registerMarketDataTools(server: McpServer, client: EtoroClient, paths: PathResolver): void;