UNPKG

polyv-live-cli

Version:

CLI tool for managing PolyV live streaming services.

53 lines 1.72 kB
import { EventEmitter } from 'events'; import { StreamServiceSdk } from '../services/stream.service.sdk'; import { ChannelServiceSdk } from '../services/channel.service.sdk'; import { StreamMetrics } from '../types/monitoring'; export interface DataManagerConfig { refreshInterval: number; retryAttempts: number; retryDelay: number; channels: string[]; enableStreaming: boolean; bufferSize: number; } export interface DataCollectionResult { success: boolean; data?: StreamMetrics[]; error?: Error | undefined; timestamp: Date; duration: number; } export declare class DataManager extends EventEmitter { private streamService; private _channelService; private config; private isRunning; private refreshTimer?; private channelCache; private lastCollectionTime; constructor(streamService: StreamServiceSdk, channelService: ChannelServiceSdk, config: DataManagerConfig); start(): void; stop(): void; addChannel(channelId: string): void; removeChannel(channelId: string): void; getChannelData(channelId: string): StreamMetrics | null; getAllChannelsData(): StreamMetrics[]; collectData(): Promise<DataCollectionResult>; private collectChannelData; private scheduleNextCollection; setRefreshInterval(intervalMs: number): void; getConfig(): DataManagerConfig; getStats(): { isRunning: boolean; channelCount: number; lastCollectionTime: Date; cacheStats: { totalEntries: number; activeChannels: number; errorChannels: number; }; }; clearCache(): void; destroy(): void; } //# sourceMappingURL=data-manager.d.ts.map