I have been using rxjs with Typescript using an import like:

```
import * as rx from 'rxjs/Rx';

var stream: rx.Subject<boolean> = new rx.Subject<boolean>();

```

This all works but now I would like to do tree-shaking and it looks likes the way to do this is through "patching" imports [1]. So based upon this I could import the code like this:

```
import {Subject} from 'rxjs/Subject';
var stream: Subject<boolean> = new Subject<boolean>();

```

This is great, but I would like to keep the symbol names inside of rxjs nested inside a common prefix. (ex: rx.Subject). From what I see of how the ES6 import statement works there is no obvious way to do this [2]. What I would like is something like:

```
import {Subject} as rx from 'rxjs/Subject';

```

or any other similar syntax that could allow for this.

Does anyone know a syntax that I could use or a common pattern that people use for this?

1: <http://reactivex.io/rxjs/manual/installation.html>
2: <https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Statements/import>