class Combine<T> extends Atom<T>

new ({ [name: string]: Observable|Atom|Domain })

Responsible for being reactive to more than one source and placing source streams contents in their respective (according to informations provided upon initialization) field in result object.

new Combine({
    a: new Atom('a'),
    b: new Atom('b'),
    c: new Observable(observer => { observer.next('c') })
})
    .subscribe(v => {
        console.log(v)
            // { a: 'a', b: 'b', c: null }
            // { a: 'a', b: 'b', c: 'c' }
    })

Combine is an Atom extension, therefore .hasRef will always return true. It will close (completes) itself as any of given sources does the same.