exports_plugin.js

/**
 * @file exports/plugin.js
 * @copyright @spmhome @_2025
 * @author Scott Meesseman @spmeesseman
 *//** */

const WpwPlugin = require("../plugins/base");


/**
 * @abstract
 * @augments WpwPlugin
 */
class WpwWebpackExportPlugin extends WpwPlugin
{
    /**
     * @param {WpwPluginOptions} options Plugin options to be applied
     */
	constructor(options)
    {
        super(options);
    }

    /**
     * @override
     * @param {WpwBuild} build
     */
    static create = WpwWebpackExportPlugin.wrap.bind(this);


    /**
	 * @override
     * @param {WebpackCompiler} _compiler
     * @returns {WpwPluginTapOptions<any, any, boolean> | undefined | void}
     */
    onApply(_compiler) {}


    /**
     * @param {WpwBuild} _build
     * @returns {WpwPlugin | void}
     */
    plugin(_build)
    {
       //  const opts = this.onApply(compiler);
       //  return opts ? new WpwPlugin({ ...opts, build, type: "plugin" }) : void 0;
    }
}


module.exports = WpwWebpackExportPlugin.create;