/** @module cep-webpack-plugin
 */
declare module "cep-webpack-plugin" {
    /**
     * @typedef {Object} Options
     * @prop {string} fileName=CSXS/manifest.xml
     * @prop {string} identifier
     * @prop {string} version=1.0.0
     * @prop {string} title
     * @prop {string} requiredCefVersion=5.0
     * @prop {Object<"photoshop"|"illustrator"|"indesign"|"incopy"|"premierePro"|"prelude"|"afterEffects"|"animate"|"audition"|"dreamweaver"|"muse"|"bridge"|"rush",string|string[]>} apps={photoshop: "20"}
     * @prop {string} mainPath=./index.html
     * @prop {boolean|PanelOptions} panel=false
     * @prop {boolean} minify=true
     * @prop {boolean} debug=`webpackMode==="development"`
     * @prop {number} debugPort=8400
     * @prop {string} debugFileName=".debug"
     * @prop {string} [scriptSourceFile] Absolute path to a JavaScript file that will be used as the host script entry point
     * @prop {string} scriptFileName=client.jsx
     * @prop {string|string[]} cefParams=["--enable-nodejs","--mixed-context"]
     */
    export type Options = {
        fileName: string;
        identifier: string;
        version: string;
        title: string;
        requiredCefVersion: string;
        apps: {
            [key: string]: string | string[];
        };
        mainPath: string;
        panel: boolean | PanelOptions;
        minify: boolean;
        debug: boolean;
        debugPort: number;
        debugFileName: string;
        scriptSourceFile?: string;
        scriptFileName: string;
        cefParams: string | string[];
    };
    /**
     * @typedef {Object} PanelOptions
     * @prop {string} title=this.options.title
     * @prop {number} width=200
     * @prop {number} height=600
     */
    export type PanelOptions = {
        title: string;
        width: number;
        height: number;
    };
    /**
     * @constructor
     * @param {Options} [options] Plugin options
     */
    export default class {
        constructor(options?: Options);
        /**
         * @type {Options}
         */
        options: Options;
        /**
         * @param {import("webpack").Compiler} compiler
         */
        apply(compiler: any): void;
    }
}