import { Observable } from '../Observable'; /** * Takes an Observable of Observables, and collects all observables from it. Once the outer observable * completes, it subscribes to all collected observables and "combines" their values, such that: * - every time an observable emits, the returned observable emits * - when the returned observable emits, it emits all of the most recent values by: * - if a `project` function is provided, it is called with each recent value from each observable in whatever order they arrived, * and the result of the `project` function is what is emitted by the returned observable * - if there is no `project` function, an array of all of the most recent values is emitted by the returned observable. * @param {function} [project] an optional function to map the most recent values from each observable into a new result. Takes each of the * most recent values from each collected observable as arguments, in order. * @returns {Observable} an observable of projected results or arrays of recent values. */ export declare function combineAll(project?: (...values: Array) => R): Observable;