ES2015/commonjs interop currently sucks with TS. This is how you only import flatten:
import flatten = require('lodash/flatten')
TS expects any modules imported using ES2015 import to have the shape of a ES2015 module. This is an issue for many UMD/commonjs modules. In the case of lodash, it's effectively doing this: module.exports = flatten
And then you're importing it like so: import flatten from 'lodash/flatten'
and that is being transpiled to something like: var flatten = require('lodash/flatten').default
Note the default.I haven't migrated to webpack 2, but some brief experiments suggest all modules get massaged in to ES2015 format.