import { api } from './http-client' export interface QueueInfo { name: string; waiting: number; active: number; completed: number; failed: number; delayed: number; total: number } export interface FailedJob { id: string; name: string; timestamp: number; attemptsMade: number; failedReason?: string } export interface JobDetail extends FailedJob { state: string; data: any; stacktrace?: string[] } export function getQueueOverview(): Promise<{ queues: QueueInfo[] }> { return api.get('/admin-api/events') } export function getFailedJobs(queue: string): Promise<{ jobs: FailedJob[] }> { return api.get(`/admin-api/events/${queue}/failed`) } export function getJobDetail(queue: string, jobId: string): Promise { return api.get(`/admin-api/events/${queue}/jobs/${jobId}`) } export function retryJob(queue: string, jobId: string): Promise { return api.post(`/admin-api/events/${queue}/jobs/${jobId}/retry`) }