import { DelegationChain } from './types'; export interface ChainNode { id: string; name: string; type: 'user' | 'agent'; depth: number; canDelegate: boolean; scopes: string[]; children: ChainNode[]; } export interface ChainVisualization { root: ChainNode; totalDepth: number; totalAgents: number; scopeHierarchy: Map; } export declare class DelegationChainVisualizer { /** * Creates a tree structure from a delegation chain */ static createVisualization(chain: DelegationChain, rootDID: string, rootName?: string): ChainVisualization; /** * Generates a text-based tree visualization */ static toAsciiTree(visualization: ChainVisualization): string; /** * Generates a Mermaid diagram for the delegation chain */ static toMermaidDiagram(visualization: ChainVisualization): string; /** * Generates a JSON representation suitable for D3.js or other visualization libraries */ static toD3Json(visualization: ChainVisualization): object; /** * Analyzes scope reduction through the chain */ static analyzeScopeReduction(chain: DelegationChain): { reductions: Array<{ from: string; to: string; removed: string[]; retained: string[]; }>; totalScopeLoss: number; }; private static extractRootScopes; private static findNodeById; private static buildAsciiTree; private static buildMermaidNodes; private static sanitizeId; private static findNodesByType; private static findNodesByCondition; private static nodeToD3Json; } //# sourceMappingURL=delegation-chain-visualizer.d.ts.map