VirtualTimeScheduler.d.ts 1.3KB

12345678910111213141516171819202122232425262728293031323334
  1. import { AsyncAction } from './AsyncAction';
  2. import { Subscription } from '../Subscription';
  3. import { AsyncScheduler } from './AsyncScheduler';
  4. export declare class VirtualTimeScheduler extends AsyncScheduler {
  5. maxFrames: number;
  6. protected static frameTimeFactor: number;
  7. frame: number;
  8. index: number;
  9. constructor(SchedulerAction?: typeof AsyncAction, maxFrames?: number);
  10. /**
  11. * Prompt the Scheduler to execute all of its queued actions, therefore
  12. * clearing its queue.
  13. * @return {void}
  14. */
  15. flush(): void;
  16. }
  17. /**
  18. * We need this JSDoc comment for affecting ESDoc.
  19. * @ignore
  20. * @extends {Ignored}
  21. */
  22. export declare class VirtualAction<T> extends AsyncAction<T> {
  23. protected scheduler: VirtualTimeScheduler;
  24. protected work: (this: VirtualAction<T>, state?: T) => void;
  25. protected index: number;
  26. protected active: boolean;
  27. constructor(scheduler: VirtualTimeScheduler, work: (this: VirtualAction<T>, state?: T) => void, index?: number);
  28. schedule(state?: T, delay?: number): Subscription;
  29. protected requestAsyncId(scheduler: VirtualTimeScheduler, id?: any, delay?: number): any;
  30. protected recycleAsyncId(scheduler: VirtualTimeScheduler, id?: any, delay?: number): any;
  31. protected _execute(state: T, delay: number): any;
  32. static sortActions<T>(a: VirtualAction<T>, b: VirtualAction<T>): number;
  33. }