123456789101112131415161718192021222324252627282930313233 |
- import { AsyncAction } from './AsyncAction';
- import { Subscription } from '../Subscription';
- import { AsyncScheduler } from './AsyncScheduler';
- import { SchedulerAction } from '../types';
- export declare class VirtualTimeScheduler extends AsyncScheduler {
- maxFrames: number;
- protected static frameTimeFactor: number;
- frame: number;
- index: number;
- constructor(SchedulerAction?: typeof AsyncAction, maxFrames?: number);
- /**
- * Prompt the Scheduler to execute all of its queued actions, therefore
- * clearing its queue.
- * @return {void}
- */
- flush(): void;
- }
- /**
- * We need this JSDoc comment for affecting ESDoc.
- * @nodoc
- */
- export declare class VirtualAction<T> extends AsyncAction<T> {
- protected scheduler: VirtualTimeScheduler;
- protected work: (this: SchedulerAction<T>, state?: T) => void;
- protected index: number;
- protected active: boolean;
- constructor(scheduler: VirtualTimeScheduler, work: (this: SchedulerAction<T>, state?: T) => void, index?: number);
- schedule(state?: T, delay?: number): Subscription;
- protected requestAsyncId(scheduler: VirtualTimeScheduler, id?: any, delay?: number): any;
- protected recycleAsyncId(scheduler: VirtualTimeScheduler, id?: any, delay?: number): any;
- protected _execute(state: T, delay: number): any;
- static sortActions<T>(a: VirtualAction<T>, b: VirtualAction<T>): 1 | -1 | 0;
- }
|