import { IScheduler } from '../Scheduler'; import { Observable } from '../Observable'; import { subscribeOn as higherOrder } from '../operators/subscribeOn'; /** * Asynchronously subscribes Observers to this Observable on the specified IScheduler. * * * * @param {Scheduler} scheduler - The IScheduler to perform subscription actions on. * @return {Observable} The source Observable modified so that its subscriptions happen on the specified IScheduler. . * @method subscribeOn * @owner Observable */ export function subscribeOn(this: Observable, scheduler: IScheduler, delay: number = 0): Observable { return higherOrder(scheduler, delay)(this) as Observable; }