declare namespace Task { type Callable = (...args: any[]) => Promise; interface Task { name: string; id?: number; callable: FN; parameters: Parameters; } type Group = { [category: string]: Task.Task[]; }; }