/// declare namespace Rx { interface Observable { delaySubscription(dueTime: number, scheduler?: IScheduler): Observable; delayWithSelector(delayDurationSelector: (item: T) => number): Observable; delayWithSelector(subscriptionDelay: number, delayDurationSelector: (item: T) => number): Observable; timeoutWithSelector( firstTimeout: Observable, timeoutdurationSelector?: (item: T) => Observable, other?: Observable, ): Observable; debounceWithSelector(debounceDurationSelector: (item: T) => Observable): Observable; /** * @deprecated use #debounceWithSelector instead. */ throttleWithSelector(debounceDurationSelector: (item: T) => Observable): Observable; skipLastWithTime(duration: number, scheduler?: IScheduler): Observable; takeLastWithTime(duration: number, timerScheduler?: IScheduler, loopScheduler?: IScheduler): Observable; takeLastBufferWithTime(duration: number, scheduler?: IScheduler): Observable; takeWithTime(duration: number, scheduler?: IScheduler): Observable; skipWithTime(duration: number, scheduler?: IScheduler): Observable; skipUntilWithTime(startTime: Date, scheduler?: IScheduler): Observable; skipUntilWithTime(duration: number, scheduler?: IScheduler): Observable; takeUntilWithTime(endTime: Date, scheduler?: IScheduler): Observable; takeUntilWithTime(duration: number, scheduler?: IScheduler): Observable; windowWithTime(timeSpan: number, timeShift: number, scheduler?: IScheduler): Observable>; windowWithTime(timeSpan: number, scheduler?: IScheduler): Observable>; windowWithTimeOrCount(timeSpan: number, count: number, scheduler?: IScheduler): Observable>; bufferWithTime(timeSpan: number, timeShift: number, scheduler?: IScheduler): Observable; bufferWithTime(timeSpan: number, scheduler?: IScheduler): Observable; bufferWithTimeOrCount(timeSpan: number, count: number, scheduler?: IScheduler): Observable; } interface ObservableStatic { timer(dueTime: Date, period: number, scheduler?: IScheduler): Observable; timer(dueTime: Date, scheduler?: IScheduler): Observable; generateWithRelativeTime( initialState: TState, condition: (state: TState) => boolean, iterate: (state: TState) => TState, resultSelector: (state: TState) => TResult, timeSelector: (state: TState) => number, scheduler?: IScheduler, ): Observable; generateWithAbsoluteTime( initialState: TState, condition: (state: TState) => boolean, iterate: (state: TState) => TState, resultSelector: (state: TState) => TResult, timeSelector: (state: TState) => Date, scheduler?: IScheduler, ): Observable; } } declare module "rx-lite-time" { export = Rx; }