/** * ThinkHive SDK v3.1 - ROI Analytics API * * Business ROI & Metrics Engine for calculating financial impact */ /** * Industry-specific ROI configuration */ export interface IndustryConfig { id: string; name: string; avgTransactionValue: number; avgCustomerLTV: number; avgSupportCost: number; avgEscalationCost: number; avgResolutionTime: number; } /** * Custom industry config input */ export interface CustomIndustryConfig { industry?: string; avgTransactionValue?: number; avgCustomerLTV?: number; avgSupportCost?: number; avgEscalationCost?: number; churnImpactMultiplier?: number; avgResolutionTime?: number; } /** * ROI metrics summary */ export interface ROIMetrics { roiCategory: string; totalFinancialImpact: number; revenueProtected: number; costSavings: number; efficiencyGain: number; } /** * Business impact analysis result */ export interface BusinessImpact { impactScore: number; revenueRisk: number; brandRisk: number; complianceRisk: number; operationalImpact: number; customerSatisfaction: number; recommendations: string[]; roi: ROIMetrics; } /** * ROI summary for a date range */ export interface ROISummary { dateRange: { start: string; end: string; }; traceCount: number; successfulInteractions: number; failedInteractions: number; successRate: number; roi: ROIMetrics; revenueProtected: number; estimatedSavings: number; } /** * Daily trend data point */ export interface TrendDataPoint { date: string; traceCount: number; successCount: number; failureCount: number; successRate: number; avgImpactScore: number; } /** * Correlation finding */ export interface Correlation { type: string; strength: string; coefficient: number; confidence: number; description: string; insight: string; recommendation: string; } /** * Pattern cluster */ export interface PatternCluster { id: string; name: string; matchCount: number; avgImpactScore: number; avgChurnRisk: number; trend: string; examples: string[]; } /** * Correlation analysis result */ export interface CorrelationAnalysis { analysisId: string; analyzedAt: string; traceCount: number; timeRange: { start: string; end: string; }; overallHealthScore: number; topInsights: string[]; recommendations: string[]; correlations: Correlation[]; patternClusters: PatternCluster[]; } /** * ROI Analytics API client for business impact analysis */ export declare const roiAnalytics: { /** * Get aggregated ROI summary for traces in date range * * @example * ```typescript * const summary = await roiAnalytics.summary({ * startDate: '2024-01-01', * endDate: '2024-01-31', * }); * console.log(`Revenue protected: $${summary.revenueProtected}`); * ``` */ summary(options?: { startDate?: string | Date; endDate?: string | Date; agentId?: string; }): Promise; /** * Get ROI metrics for a specific agent * * @example * ```typescript * const agentROI = await roiAnalytics.byAgent('agent_123', { * startDate: '2024-01-01', * }); * console.log(`Agent: ${agentROI.agent.name}`); * console.log(`ROI: ${agentROI.roi.totalFinancialImpact}`); * ``` */ byAgent(agentId: string, options?: { startDate?: string | Date; endDate?: string | Date; }): Promise<{ agent: { id: string; name: string; industry: string; }; industryConfig: Partial; roi: ROIMetrics; recentImpacts: Array<{ impactScore: number; revenueRisk: number; roiCategory: string; totalFinancialImpact: number; }>; }>; /** * Get ROI trends over time * * @example * ```typescript * const trends = await roiAnalytics.trends({ * startDate: '2024-01-01', * endDate: '2024-01-31', * }); * for (const day of trends) { * console.log(`${day.date}: ${day.successRate}% success`); * } * ``` */ trends(options?: { startDate?: string | Date; endDate?: string | Date; agentId?: string; }): Promise; /** * Calculate ROI for a trace or provided message data * * @example * ```typescript * // Calculate for existing trace * const impact = await roiAnalytics.calculate({ * traceId: 'trace_abc123', * }); * * // Calculate for new data with custom config * const impact = await roiAnalytics.calculate({ * userMessage: 'Help me cancel my subscription', * agentResponse: 'I can help with that...', * industryConfig: { industry: 'saas', avgCustomerLTV: 10000 }, * }); * ``` */ calculate(options: { traceId?: string; userMessage?: string; agentResponse?: string; industryConfig?: CustomIndustryConfig; }): Promise; /** * Get available industry configurations * * @example * ```typescript * const industries = await roiAnalytics.industries(); * for (const config of industries) { * console.log(`${config.name}: $${config.avgCustomerLTV} LTV`); * } * ``` */ industries(): Promise; /** * Get correlation analysis for traces * * @example * ```typescript * const analysis = await roiAnalytics.correlations({ * startDate: '2024-01-01', * agentId: 'agent_123', * }); * console.log(`Health score: ${analysis.overallHealthScore}`); * for (const insight of analysis.topInsights) { * console.log(`- ${insight}`); * } * ``` */ correlations(options?: { startDate?: string | Date; endDate?: string | Date; agentId?: string; }): Promise; /** * Get ROI configuration (V3) */ getConfig(): Promise<{ id: string; companyId: string; version: number; isActive: boolean; costConfig: Record; deflectionConfig: Record; resolutionConfig: Record; attributionConfig: Record; slaConfig: Record; displayConfig: Record; createdAt: string; updatedAt: string; }>; /** * Create ROI configuration (V3) */ createConfig(data: { costConfig?: Record; deflectionConfig?: Record; resolutionConfig?: Record; attributionConfig?: Record; slaConfig?: Record; displayConfig?: Record; }): Promise<{ id: string; companyId: string; version: number; isActive: boolean; costConfig: Record; deflectionConfig: Record; resolutionConfig: Record; attributionConfig: Record; slaConfig: Record; displayConfig: Record; createdAt: string; updatedAt: string; }>; /** * Update ROI configuration (V3) - creates new version */ updateConfig(data: { costConfig?: Record; deflectionConfig?: Record; resolutionConfig?: Record; attributionConfig?: Record; slaConfig?: Record; displayConfig?: Record; }): Promise<{ id: string; companyId: string; version: number; isActive: boolean; costConfig: Record; deflectionConfig: Record; resolutionConfig: Record; attributionConfig: Record; slaConfig: Record; displayConfig: Record; createdAt: string; updatedAt: string; }>; /** * List ROI config versions (V3) */ configVersions(options?: { limit?: number; offset?: number; }): Promise<{ data: Record[]; pagination: { limit: number; offset: number; hasMore: boolean; }; }>; /** * Calculate ROI using V3 configurable engine */ calculateV3(options: { agentId?: string; startDate: string | Date; endDate: string | Date; configurationVersion?: number; includeBreakdown?: boolean; includeConfidenceIntervals?: boolean; }): Promise>; /** * Get ROI trend over time (V3) */ trendV3(options: { agentId?: string; granularity: "day" | "week" | "month"; startDate: string | Date; endDate: string | Date; }): Promise>; }; /** * Calculate estimated revenue at risk */ export declare function calculateRevenueAtRisk(failureRate: number, avgTransactionValue: number, totalInteractions: number): number; /** * Calculate estimated savings from automation */ export declare function calculateAutomationSavings(successfulInteractions: number, avgSupportCost: number): number; /** * Format currency for display */ export declare function formatCurrency(amount: number, currency?: string): string; /** * Get ROI quality label */ export declare function getROIQuality(totalFinancialImpact: number): 'excellent' | 'good' | 'moderate' | 'poor';