60 lines · 1.5 KB · TypeScript
RawDownload
/** * Visualization-specific types for claude-devtools. * * These types are used for waterfall chart visualization * and are shared between main and renderer processes. */ import type { TokenUsage } from '@main/types'; // =============================================================================// Waterfall Chart Types// ============================================================================= /** * Waterfall item for visualization. */export interface WaterfallItem {  /** Unique item identifier */  id: string;  /** Display label */  label: string;  /** Item start time */  startTime: Date;  /** Item end time */  endTime: Date;  /** Duration in milliseconds */  durationMs: number;  /** Token usage for this item */  tokenUsage: TokenUsage;  /** Hierarchy depth (0 = main session) */  level: number;  /** Item type */  type: 'chunk' | 'subagent' | 'tool';  /** Whether executed in parallel */  isParallel: boolean;  /** Parent item ID */  parentId?: string;  /** Group ID for parallel items */  groupId?: string;  /** Additional metadata for display */  metadata?: {    subagentType?: string;    toolName?: string;    messageCount?: number;  };} /** * Complete waterfall chart data. */export interface WaterfallData {  /** All waterfall items */  items: WaterfallItem[];  /** Earliest timestamp in the session */  minTime: Date;  /** Latest timestamp in the session */  maxTime: Date;  /** Total session duration in milliseconds */  totalDurationMs: number;}