6.0.8 • Published 6 months ago

@types/koa-webpack v6.0.8

Weekly downloads
2,506
License
MIT
Repository
github
Last release
6 months ago

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

// Type definitions for koa-webpack 6.0
// Project: https://github.com/shellscape/koa-webpack
// Definitions by: Luka Maljic <https://github.com/malj>
//                 Lee Benson <https://github.com/leebenson>
//                 miZyind <https://github.com/miZyind>
//                 Tomek Łaziuk <https://github.com/tlaziuk>
// Definitions: https://github.com/DefinitelyTyped/DefinitelyTyped
// TypeScript Version: 3.7

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.