/** * Small, pure module-scope helpers for {@link DkgNodePlugin}. * * Extracted verbatim from `DkgNodePlugin.ts` to keep the plugin class * manageable. No behavior change — same functions/constants, only relocated. */ import type { DkgOpenClawConfig } from './types.js'; export declare function isValidEthAddressString(value: string | undefined): boolean; export declare function channelConfigFingerprint(config: DkgOpenClawConfig['channel']): string | null; /** Convert a human-readable name into a URL-safe slug (e.g. "My Research Context Graph" → "my-research-context-graph"). */ export declare function slugify(name: string): string; export declare function pickShareableMultiaddr(addrs: string[]): string | null; export declare function scoreMultiaddr(addr: string): number; export declare function isLoopbackIPv4(ip: string): boolean; export declare function isPrivateIPv4(ip: string): boolean; /** * Extract user-visible text from a message's `content` field. Handles * both plain string and multi-modal array forms. Filters to text parts * only — image/tool-use parts contribute nothing to the recall query. */ export declare function extractUserTextFromContent(content: unknown): string; /** * Format the top-N memory hits as a `` block for the * W3 auto-recall handler to return via `appendSystemContext`. The tag * shape is load-bearing for `ChatTurnWriter.stripRecalledMemory` — * keep in sync. * * Snippet and layer text is user/agent-authored, so both are HTML-entity * escaped before interpolation. A snippet containing `` * would otherwise terminate the wrapper early (escaping arbitrary content * into the prompt and bypassing the strip regex). */ export declare function formatRecalledMemoryBlock(hits: ReadonlyArray<{ snippet: string; layer: string; score: number; }>): string; export declare function inferContentTypeFromExtension(filePath: string): string | undefined; //# sourceMappingURL=dkg-node-plugin-helpers.d.ts.map