// DefinitelyTyped: partial
// This file contains common part of defintions for rx.time.d.ts and rx.lite.d.ts
// Do not include the file separately.
///
declare module Rx {
interface Observable {
/**
* Returns a new observable that triggers on the second and subsequent triggerings of the input observable.
* The Nth triggering of the input observable passes the arguments from the N-1th and Nth triggering as a pair.
* The argument passed to the N-1th triggering is held in hidden internal state until the Nth triggering occurs.
* @returns An observable that triggers on successive pairs of observations from the input observable as an array.
*/
pairwise(): Observable;
/**
* Returns two observables which partition the observations of the source by the given function.
* The first will trigger observations for those values for which the predicate returns true.
* The second will trigger observations for those values where the predicate returns false.
* The predicate is executed once for each subscribed observer.
* Both also propagate all error observations arising from the source and each completes
* when the source completes.
* @param predicate
* The function to determine which output Observable will trigger a particular observation.
* @returns
* An array of observables. The first triggers when the predicate returns true,
* and the second triggers when the predicate returns false.
*/
partition(predicate: (value: T, index: number, source: Observable) => boolean, thisArg: any): Observable[];
}
}