@bull-board/api
Version:
A Dashboard server API built on top of bull or bullmq.
33 lines (32 loc) • 1.05 kB
TypeScript
import type { Job, Queue } from 'bullmq';
export type GroupStatusName = 'waiting' | 'limited' | 'maxed' | 'paused';
export interface GroupSummary {
id: string;
status: GroupStatusName;
}
export interface GroupSummaryWithCount {
id: string;
count: number;
}
export interface GroupsCountByStatus {
waiting: number;
limited: number;
maxed: number;
paused: number;
}
export interface QueueProLike extends Queue {
getGroups(start?: number, end?: number): Promise<GroupSummary[]>;
getGroupsByStatus(status: GroupStatusName, start?: number, end?: number): Promise<GroupSummaryWithCount[]>;
getGroupsCount(): Promise<number>;
getGroupsCountByStatus(): Promise<GroupsCountByStatus>;
getGroupJobs(groupId: string | number, start?: number, end?: number): Promise<JobProLike[]>;
getGroupJobsCount(groupId: string | number): Promise<number>;
}
export interface JobProLike extends Job {
gid?: string | number;
opts: Job['opts'] & {
group?: {
id: string | number;
};
};
}