2022-01-21 08:28:41 +00:00
|
|
|
import { AsyncAction } from './AsyncAction';
|
|
|
|
import { Subscription } from '../Subscription';
|
|
|
|
import { QueueScheduler } from './QueueScheduler';
|
|
|
|
import { SchedulerAction } from '../types';
|
2022-05-29 09:24:36 +00:00
|
|
|
/**
|
|
|
|
* We need this JSDoc comment for affecting ESDoc.
|
|
|
|
* @ignore
|
|
|
|
* @extends {Ignored}
|
|
|
|
*/
|
2022-01-21 08:28:41 +00:00
|
|
|
export declare class QueueAction<T> extends AsyncAction<T> {
|
|
|
|
protected scheduler: QueueScheduler;
|
|
|
|
protected work: (this: SchedulerAction<T>, state?: T) => void;
|
|
|
|
constructor(scheduler: QueueScheduler, work: (this: SchedulerAction<T>, state?: T) => void);
|
|
|
|
schedule(state?: T, delay?: number): Subscription;
|
|
|
|
execute(state: T, delay: number): any;
|
|
|
|
protected requestAsyncId(scheduler: QueueScheduler, id?: any, delay?: number): any;
|
|
|
|
}
|