UNPKG

@hivetechs/hive-ai

Version:

Real-time streaming AI consensus platform with HTTP+SSE MCP integration for Claude Code, VS Code, Cursor, and Windsurf - powered by OpenRouter's unified API

131 lines 4.55 kB
/** * Real-time Usage Monitoring - Unified Database Implementation * * Uses the unified SQLite database instead of JSON files for data persistence. * Provides real-time monitoring of spending with budget thresholds and alerts. */ import { z } from 'zod'; export declare const UsageMonitorConfigSchema: z.ZodObject<{ enabled: z.ZodDefault<z.ZodBoolean>; interval: z.ZodDefault<z.ZodNumber>; warningThreshold: z.ZodDefault<z.ZodNumber>; criticalThreshold: z.ZodDefault<z.ZodNumber>; spikeDetection: z.ZodDefault<z.ZodBoolean>; spikeThreshold: z.ZodDefault<z.ZodNumber>; autoBreak: z.ZodDefault<z.ZodBoolean>; gracePeriod: z.ZodDefault<z.ZodNumber>; }, "strip", z.ZodTypeAny, { enabled: boolean; interval: number; warningThreshold: number; criticalThreshold: number; spikeDetection: boolean; spikeThreshold: number; autoBreak: boolean; gracePeriod: number; }, { enabled?: boolean | undefined; interval?: number | undefined; warningThreshold?: number | undefined; criticalThreshold?: number | undefined; spikeDetection?: boolean | undefined; spikeThreshold?: number | undefined; autoBreak?: boolean | undefined; gracePeriod?: number | undefined; }>; export declare const MonitoringSessionSchema: z.ZodObject<{ sessionId: z.ZodString; startTime: z.ZodString; endTime: z.ZodOptional<z.ZodString>; status: z.ZodEnum<["active", "paused", "stopped"]>; checksPerformed: z.ZodDefault<z.ZodNumber>; alertsSent: z.ZodDefault<z.ZodNumber>; lastCheck: z.ZodOptional<z.ZodString>; config: z.ZodObject<{ enabled: z.ZodDefault<z.ZodBoolean>; interval: z.ZodDefault<z.ZodNumber>; warningThreshold: z.ZodDefault<z.ZodNumber>; criticalThreshold: z.ZodDefault<z.ZodNumber>; spikeDetection: z.ZodDefault<z.ZodBoolean>; spikeThreshold: z.ZodDefault<z.ZodNumber>; autoBreak: z.ZodDefault<z.ZodBoolean>; gracePeriod: z.ZodDefault<z.ZodNumber>; }, "strip", z.ZodTypeAny, { enabled: boolean; interval: number; warningThreshold: number; criticalThreshold: number; spikeDetection: boolean; spikeThreshold: number; autoBreak: boolean; gracePeriod: number; }, { enabled?: boolean | undefined; interval?: number | undefined; warningThreshold?: number | undefined; criticalThreshold?: number | undefined; spikeDetection?: boolean | undefined; spikeThreshold?: number | undefined; autoBreak?: boolean | undefined; gracePeriod?: number | undefined; }>; }, "strip", z.ZodTypeAny, { status: "active" | "stopped" | "paused"; config: { enabled: boolean; interval: number; warningThreshold: number; criticalThreshold: number; spikeDetection: boolean; spikeThreshold: number; autoBreak: boolean; gracePeriod: number; }; sessionId: string; startTime: string; checksPerformed: number; alertsSent: number; lastCheck?: string | undefined; endTime?: string | undefined; }, { status: "active" | "stopped" | "paused"; config: { enabled?: boolean | undefined; interval?: number | undefined; warningThreshold?: number | undefined; criticalThreshold?: number | undefined; spikeDetection?: boolean | undefined; spikeThreshold?: number | undefined; autoBreak?: boolean | undefined; gracePeriod?: number | undefined; }; sessionId: string; startTime: string; lastCheck?: string | undefined; endTime?: string | undefined; checksPerformed?: number | undefined; alertsSent?: number | undefined; }>; type UsageMonitorConfig = z.infer<typeof UsageMonitorConfigSchema>; type MonitoringSession = z.infer<typeof MonitoringSessionSchema>; export declare function startMonitoringSession(config?: Partial<UsageMonitorConfig>): Promise<{ success: boolean; sessionId: string; message: string; }>; export declare function stopMonitoringSession(): Promise<{ success: boolean; message: string; sessionSummary?: any; }>; export declare function getMonitoringStatus(): Promise<{ isActive: boolean; currentSession: MonitoringSession | null; statistics: any; }>; export declare function configureMonitoring(config: Partial<UsageMonitorConfig>): Promise<{ success: boolean; message: string; }>; export {}; //# sourceMappingURL=usage-monitor.d.ts.map