UNPKG

async-scheduler

Version:

![CI](https://github.com/kremi151/async-scheduler/workflows/CI/badge.svg) ![NPM](https://img.shields.io/npm/v/async-scheduler?color=green)

23 lines (22 loc) 834 B
import Scheduler from "./Scheduler"; import { SchedulableTask, TaskCollisionStrategy } from "./SchedulableTask"; declare type StringMap = { [key: string]: string; }; export default class Builder<T, M> { private readonly _task; private readonly _scheduler; private _mutex; private _descriptor; private _meta; private _onPreExecute; private _onTaskCollision; constructor(task: () => Promise<T>, scheduler: Scheduler); withDescriptor(descriptor: number): Builder<T, M>; withMutex(mutex: number): Builder<T, M>; withMeta<Meta = StringMap>(meta: Meta): Builder<T, Meta>; runBeforeExecuting(what: () => void): Builder<T, M>; handleCollisions(handler: (other: SchedulableTask<any, any>) => TaskCollisionStrategy): Builder<T, M>; execute(priority: number): Promise<T>; } export {};