///
declare namespace Rx {
interface VirtualTimeScheduler extends Scheduler {
// protected constructor(initialClock: TAbsolute, comparer: (first: TAbsolute, second: TAbsolute) => number);
advanceBy(time: TRelative): void;
advanceTo(time: TAbsolute): void;
scheduleAbsolute(dueTime: TAbsolute, action: () => void): IDisposable;
scheduleAbsoluteWithState(
state: TState,
dueTime: TAbsolute,
action: (scheduler: IScheduler, state: TState) => IDisposable,
): IDisposable;
scheduleRelative(dueTime: TRelative, action: () => void): IDisposable;
scheduleRelativeWithState(
state: TState,
dueTime: TRelative,
action: (scheduler: IScheduler, state: TState) => IDisposable,
): IDisposable;
sleep(time: TRelative): void;
start(): IDisposable;
stop(): void;
isEnabled: boolean;
/* protected abstract */ add(from: TAbsolute, by: TRelative): TAbsolute;
/* protected abstract */ toDateTimeOffset(duetime: TAbsolute): number;
/* protected abstract */ toRelative(duetime: number): TRelative;
/* protected */ getNext(): internals.ScheduledItem;
}
interface HistoricalScheduler extends VirtualTimeScheduler {
}
const HistoricalScheduler: {
new(initialClock: number, comparer: (first: number, second: number) => number): HistoricalScheduler;
};
}
declare module "rx-lite-virtualtime" {
export = Rx;
}