/** * @name ui/protocol-logos * @description Centralized protocol + token logo registry with runtime resolution. * * Every protocol and token has a canonical logo entry. Logos are resolved in * this order: * 1. Inline SVG (for known tokens: SOL, USDC, USDT, wSOL) * 2. Hosted URL (for protocols with logos on mcp.sap.oobeprotocol.ai/logos/) * 3. Generated fallback SVG with initials + brand color * * The registry is extensible: new protocols can be added at runtime via * `registerProtocol()` or `registerToken()`. * * @module ui/protocol-logos */ export interface ProtocolLogoEntry { readonly id: string; readonly name: string; readonly initials: string; readonly color: string; readonly hostedFile?: string; readonly inlineSvg?: string; } export interface TokenLogoEntry { readonly symbol: string; readonly mint?: string; readonly color: string; readonly inlineSvg?: string; } export declare function registerProtocol(entry: ProtocolLogoEntry): void; export declare function registerToken(entry: TokenLogoEntry): void; /** * Resolve a protocol logo as inline HTML (SVG or img tag with onerror fallback). * @param protocolId - e.g. 'jupiter', 'adrena', 'metaplex' * @returns HTML string with logo + onerror fallback */ export declare function resolveProtocolLogo(protocolId: string): string; /** * Resolve a token logo as inline HTML. * @param symbol - e.g. 'SOL', 'USDC', 'USDT' */ export declare function resolveTokenLogo(symbol: string): string; /** * Resolve which protocol a tool belongs to based on its name. * @param toolName - e.g. 'jupiter_swap', 'sap_adrena_get_markets', 'sol_get_balance' */ export declare function resolveProtocolFromToolName(toolName: string): string; //# sourceMappingURL=protocol-logos.d.ts.map