UNPKG

@net3/queuer

Version:

63 lines (62 loc) 1.55 kB
export interface QueueConfiguration { id: string; mcpToolName: string; delayType: 'fixed' | 'random'; delayUnit: 'seconds' | 'minutes' | 'hours' | 'days'; delayValue?: number; delayMin?: number; delayMax?: number; dailyLimit: number; hourlyLimit: number; activeHours?: { timezone: string; schedule: { [day: string]: { enabled: boolean; start?: string; end?: string; }; }; }; createdAt: number; updatedAt: number; lastUsed?: number; totalProcessed: number; } export interface QueueState { queueId: string; lastReleaseTime: number; itemCount: number; currentExecutingItem: string | null; lastExecutedTime: number; version: number; } export interface QueueUsage { date: string; hour: string; dailyCount: number; hourlyCount: number; } export interface QueueItem { id: string; queueId: string; releaseTime: number; targetAction: string; actionConfig: any; status: 'scheduled' | 'processing' | 'completed' | 'failed'; createdAt: number; lastError?: string; } export interface QueueStatus { pendingItems: number; currentlyExecuting: string | null; lastExecutedTime: string | null; dailyUsed: number; dailyLimit: number; dailyRemaining: number | null; hourlyUsed: number; hourlyLimit: number; hourlyRemaining: number | null; isWithinActiveHours?: boolean; nextActiveWindow?: string; }