import webpack from 'webpack';
import devMiddleware from 'webpack-dev-middleware';
import hotMiddleware from 'webpack-hot-middleware';
import HTMLPlugin from 'html-webpack-plugin';
import fileCopyPlugin from 'copy-webpack-plugin';
import compressionPlugin from 'compression-webpack-plugin';
import miniCssExtract from 'mini-css-extract-plugin';
import reactRefresh from '@pmmmwh/react-refresh-webpack-plugin';
import eslint from 'eslint-webpack-plugin';
import postCssAutoprefix from 'autoprefixer';
import TerserWebpackPlugin from 'terser-webpack-plugin';
declare const DEPENDENCIES: {
    readonly webpack: typeof webpack;
    readonly devMiddleware: typeof devMiddleware;
    readonly hotMiddleware: typeof hotMiddleware;
    readonly plugins: {
        readonly swcMinify: typeof TerserWebpackPlugin.swcMinify;
        readonly HTMLPlugin: typeof HTMLPlugin;
        readonly fileCopyPlugin: typeof fileCopyPlugin;
        readonly compressionPlugin: typeof compressionPlugin;
        readonly reactRefresh: typeof reactRefresh;
        readonly eslint: typeof eslint;
        readonly serviceWorkerPlugin: import("./plugins/plugin_sw.js").SwPluginClassCtor;
        readonly miniCssExtract: typeof miniCssExtract;
        readonly TerserWebpackPlugin: typeof TerserWebpackPlugin;
    };
    readonly loaders: {
        readonly postCssAutoprefix: typeof postCssAutoprefix;
        readonly postCssSVG2Font: import("./module_rules/postcss_svg2icon_plugin/types.js").Svg2FontConverterPlugin;
        readonly swcLoader: string;
        readonly workerLoader: string;
        readonly styleLoader: string;
        readonly cssLoader: string;
        readonly postCssLoader: string;
        readonly sassLoader: string;
        readonly sassResourcesLoader: string;
    };
};
declare const COMMONS: {
    readonly ESLintExtensions: readonly [".js", ".jsx", ".ts", ".tsx"];
};
declare const pluginsKeysMap: {
    readonly compression: "compression";
    readonly copy: "copy";
    readonly cssExtract: "cssExtract";
    readonly sw: "sw";
    readonly cssOptimize: "cssOptimize";
    readonly hot: "hot";
    readonly html: "html";
    readonly reactRefresh: "reactRefresh";
    readonly clean: "clean";
    readonly eslint: "eslint";
};
declare const loadersKeyMap: {
    readonly swcLoader: "swcLoader";
    readonly workers: "workers";
    readonly styleLoader: "styleLoader";
    readonly cssFinal: "cssFinal";
    readonly cssLoader: "cssLoader";
    readonly postCssLoader: "postCssLoader";
    readonly sassLoader: "sassLoader";
    readonly sassResources: "sassResources";
};
declare const webpackModuleRulesRegExp: {
    readonly scripts: "\\.[tj]sx?$";
    readonly worker: "__worker\\.[tj]s$";
    readonly styles: "\\.(c|sc|sa)ss$";
    readonly files: "\\.(avif|webp|jpe?g|png|svg|woff2?)$";
};
export { loadersKeyMap, pluginsKeysMap, webpackModuleRulesRegExp, DEPENDENCIES, COMMONS };
