Walkthrough of ssh2’s HTTPAgent: how it wraps Node’s Agent classes, establishes SSH tunnels, and handles errors.
When to use interfaces vs. type aliases, what the TypeScript docs recommend, and how the ESLint/TSLint rule works.