@callmedayz/ai-prompt-toolkit
Version:
Professional AI prompt engineering toolkit with advanced template features, real-time dashboards, conditional logic, template inheritance, live monitoring, OpenRouter integration, and 310+ model support
113 lines • 2.96 kB
TypeScript
import { PromptAnalytics } from './prompt-analytics';
import { DashboardWidget, DashboardLayout, DashboardFilter, LiveMonitoringEvent } from './types';
/**
* Real-time Dashboard System for Prompt Performance Monitoring
* Provides live dashboards, real-time metrics, and monitoring capabilities
*/
export declare class RealTimeDashboard {
private analytics;
private layouts;
private metrics;
private events;
private subscribers;
private refreshIntervals;
private isMonitoring;
constructor(analytics: PromptAnalytics);
/**
* Start real-time monitoring
*/
startMonitoring(): void;
/**
* Stop real-time monitoring
*/
stopMonitoring(): void;
/**
* Create a new dashboard layout
*/
createLayout(layout: Omit<DashboardLayout, 'id'>): string;
/**
* Get dashboard layout by ID
*/
getLayout(layoutId: string): DashboardLayout | undefined;
/**
* Update dashboard layout
*/
updateLayout(layoutId: string, updates: Partial<DashboardLayout>): void;
/**
* Get real-time metrics for a widget
*/
getWidgetData(widget: DashboardWidget, filters?: DashboardFilter[]): any;
/**
* Subscribe to real-time updates
*/
subscribe(channel: string, callback: Function): () => void;
/**
* Add a live monitoring event
*/
addEvent(event: Omit<LiveMonitoringEvent, 'id' | 'timestamp'>): void;
/**
* Get recent events
*/
getEvents(limit?: number, severity?: string): LiveMonitoringEvent[];
/**
* Update a real-time metric
*/
updateMetric(metricId: string, value: number, metadata?: Record<string, any>): void;
/**
* Get all available layouts
*/
getLayouts(): DashboardLayout[];
/**
* Export dashboard configuration
*/
exportDashboard(layoutId?: string): string;
/**
* Import dashboard configuration
*/
importDashboard(configJson: string): void;
/**
* Initialize default dashboard layouts
*/
private initializeDefaultLayouts;
/**
* Start refresh interval for a layout
*/
private startLayoutRefresh;
/**
* Stop refresh interval for a layout
*/
private stopLayoutRefresh;
/**
* Refresh data for a layout
*/
private refreshLayout;
/**
* Get metric data for a widget
*/
private getMetricData;
/**
* Get chart data for a widget
*/
private getChartData;
/**
* Get table data for a widget
*/
private getTableData;
/**
* Get alert data for a widget
*/
private getAlertData;
/**
* Get trend data for a widget
*/
private getTrendData;
/**
* Calculate metric status based on thresholds
*/
private calculateMetricStatus;
/**
* Notify subscribers of updates
*/
private notifySubscribers;
}
//# sourceMappingURL=real-time-dashboard.d.ts.map