diff --git a/types/webpack/index.d.ts b/types/webpack/index.d.ts index b419efc2ea..d6102808b6 100644 --- a/types/webpack/index.d.ts +++ b/types/webpack/index.d.ts @@ -9,6 +9,7 @@ // Ahmed T. Ali // Alan Agius // Spencer Elliott +// Jason Cheatham // Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped // TypeScript Version: 2.2 @@ -16,6 +17,7 @@ import Tapable = require('tapable'); import * as UglifyJS from 'uglify-js'; +import { RawSourceMap } from 'source-map'; export = webpack; @@ -1021,7 +1023,7 @@ declare namespace webpack { namespace loader { interface Loader extends Function { - (this: LoaderContext, source: string | Buffer, sourceMap: string | Buffer): string | Buffer | void | undefined; + (this: LoaderContext, source: string | Buffer, sourceMap?: RawSourceMap): string | Buffer | void | undefined; /** * The order of chained loaders are always called from right to left. @@ -1041,7 +1043,7 @@ declare namespace webpack { raw?: boolean; } - type loaderCallback = (err: Error | undefined | null, content?: string | Buffer, sourceMap?: string | Buffer) => void; + type loaderCallback = (err: Error | undefined | null, content?: string | Buffer, sourceMap?: RawSourceMap) => void; interface LoaderContext { /** diff --git a/types/webpack/package.json b/types/webpack/package.json new file mode 100644 index 0000000000..96c1491edd --- /dev/null +++ b/types/webpack/package.json @@ -0,0 +1,6 @@ +{ + "private": true, + "dependencies": { + "source-map": "^0.7.0" + } +} diff --git a/types/webpack/webpack-tests.ts b/types/webpack/webpack-tests.ts index 2b0cc516e0..f56dbb84b6 100644 --- a/types/webpack/webpack-tests.ts +++ b/types/webpack/webpack-tests.ts @@ -1,4 +1,5 @@ import webpack = require('webpack'); +import { RawSourceMap } from 'source-map'; const { optimize, @@ -642,7 +643,7 @@ configuration = { performance, }; -function loader(this: webpack.loader.LoaderContext, source: string | Buffer, sourcemap: string | Buffer): void { +function loader(this: webpack.loader.LoaderContext, source: string | Buffer, sourcemap?: RawSourceMap): void { this.cacheable(); this.async();