import { OperatorFunction, ObservableInput } from '../types'; import { zip } from '../observable/zip'; import { joinAllInternals } from './joinAllInternals'; /** * Collects all observable inner sources from the source, once the source completes, * it will subscribe to all inner sources, combining their values by index and emitting * them. * * @see {@link zipWith} * @see {@link zip} */ export function zipAll(): OperatorFunction, T[]>; export function zipAll(): OperatorFunction; export function zipAll(project: (...values: T[]) => R): OperatorFunction, R>; export function zipAll(project: (...values: Array) => R): OperatorFunction; export function zipAll(project?: (...values: T[]) => R) { return joinAllInternals(zip, project); }