import { Observable } from '../observable.js' export function toArray(this: Observable): Promise { return new Promise((resolve, reject) => { const arr: T[] = [] this.subscribe({ next: val => arr.push(val), error: err => reject(err), complete: () => resolve(arr), }) }) } Observable.prototype.toArray = toArray declare module '../observable.js' { export interface Observable { toArray: typeof toArray } }