@vvakame sorry, In a hurry, my English is poor.

```typescript
// Decomposed class
interface Buffer {...}
declare var Buffer: {...};

function doIt(buf: Buffer) {...}
```

```typescript
// Composed class
declare class Buffer {...}

function doIt(buf: Buffer) {...}
```

Work with `buf` within `doIt` same in both. Because, `Buffer` is **logically** class. It exists as class in nodejs, not interface+var. Hence, and var and interface must use same name.