torotask
Version:
Task queue processing in NodeJS based on BullMQ and Redis
23 lines • 766 B
TypeScript
import { TaskGroup } from '../task-group.js';
import { TaskDefinitionRegistry } from './task.js';
export type TaskGroupRegistry<TGroupDefs extends TaskGroupDefinitionRegistry> = {
[K in keyof TGroupDefs]: TGroupDefs[K] extends TaskGroupDefinition<infer T> ? TaskGroup<T> : never;
};
/**
* Defines a task group with task definitions
*
* @template TDefs The type of task definitions contained in this group
*/
export interface TaskGroupDefinition<TDefs extends TaskDefinitionRegistry> {
/**
* The task definitions contained in this group
*/
tasks: TDefs;
}
/**
* Registry of task group definitions
*/
export interface TaskGroupDefinitionRegistry {
[groupKey: string]: TaskGroupDefinition<any>;
}
//# sourceMappingURL=task-group.d.ts.map