The timer() operator has the job of emitting values after a certain amount of time. It comes in two flavors: you either emit just one value after a number of milliseconds, or you keep on emitting values with a certain amount of delay between them. Let's look at the two different flavors available:
// time/timer.js
let stream$ = Rx.Observable.timer(1000);
// delay with 500 milliseconds
let streamWithDelay$ = Rx.Observable.timer(1000, 500)
// emits 0 after 1000 milliseconds, then no more
stream$.subscribe(data => console.log(data));
streamWithDelay$.subscribe(data => console.log(data));