Coletar RxJS Observável na Matriz

Eu gostaria de usar o RxJS para "unir" o mundo assíncrono dos eventos com o mundo sincronizado. Especificamente, quero criar uma função que retorne uma matriz de eventos coletados durante algum intervalo de tempo.

Eu posso criar o Observable que faz o que eu quero

var source = Rx.Observable
.interval(100 /* ms */)
.bufferWithTime(1000).take(1)

Eu posso imprimir os valores corretos

var subscription = source.subscribe(
    function (x) {
        console.log('Next: ' + JSON.stringify(x));
    },
    function () {
        console.log('Completed');   
    });

Isso imprime

[0,1,2,3,4,5,6,7,8] 
Completed 

Mas quero que eu quero é atribuir essa matriz à variável. Conceitualmente, eu quero algo como

var collectedDuringSecond = source.toPromise.getValue()

A ideia é que getValue bloqueie, portanto, após a linha acima ser coletada, o DuringSecond conterá [0,1,2,3,4,5,6,7,8]

questionAnswers(1)

yourAnswerToTheQuestion