npm.io
6.0.8 • Published 2 years ago

@types/koa-webpack

Licence
MIT
Version
6.0.8
Deps
4
Size
6 kB
Vulns
0
Weekly
0
Stars
51.4K

Installation

npm install --save @types/koa-webpack

Summary

This package contains type definitions for koa-webpack (https://github.com/shellscape/koa-webpack).

Details

Files were exported from https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/koa-webpack.

index.d.ts

import Koa = require("koa");
import webpack = require("webpack");
import webpackDevMiddleware = require("webpack-dev-middleware");
import webpackHotClient = require("webpack-hot-client");

declare module "koa" {
    interface DefaultState {
        fs: webpackDevMiddleware.Options["fs"];
        stats: webpack.Stats;
    }
}

declare function koaWebpack(
    options?: koaWebpack.Options,
): Promise<Koa.Middleware & koaWebpack.CombinedWebpackMiddleware>;

declare namespace koaWebpack {
    interface Options {
        compiler?: webpack.Compiler | webpack.MultiCompiler | undefined;
        config?: webpack.Configuration | undefined;
        devMiddleware?: webpackDevMiddleware.Options | undefined;
        hotClient?: webpackHotClient.Options | boolean | undefined;
    }

    interface CombinedWebpackMiddleware {
        devMiddleware: webpackDevMiddleware.WebpackDevMiddleware;
        /**
         * @todo make this a `webpack-hot-client@^4.0.0` instance, no typings for v4 available yet
         */
        hotClient: {
            close: () => void;
            options: webpackHotClient.Options;
            server: any;
        };
        close(callback?: () => any): void;
    }
}

export = koaWebpack;

Additional Details

Credits

These definitions were written by Luka Maljic, Lee Benson, miZyind, and Tomek Łaziuk.