import { Plugin, OutputOptions } from "rollup";
import opn from "open";
import { TemplateType } from "./template-types";
export interface PluginVisualizerOptions {
    /**
     * The path to the template file to use. Or just a name of a file.
     *
     * @default "stats.html"
     */
    filename?: string;
    /**
     * If plugin should emit json file with visualizer data. It can be used with plugin CLI
     *
     * @default false
     */
    json?: boolean;
    /**
     * HTML <title> value in generated file. Ignored when `json` is true.
     *
     * @default "Rollup Visualizer"
     */
    title?: string;
    /**
     * If plugin should open browser with generated file. Ignored when `json` is true.
     *
     * @default false
     */
    open?: boolean;
    openOptions?: opn.Options;
    /**
     * Which diagram to generate. 'sunburst' or 'treemap' can help find big dependencies or if they are repeated.
     * 'network' can answer you why something was included
     *
     * @default 'treemap'
     */
    template?: TemplateType;
    /**
     * If plugin should also calculate sizes of gzipped files.
     *
     * @default false
     */
    gzipSize?: boolean;
    /**
     * If plugin should also calculate sizes of brotlied files.
     *
     * @default false
     */
    brotliSize?: boolean;
    /**
     * If plugin should use sourcemap to calculate sizes of modules. By idea it will present more accurate results.
     * `gzipSize` and `brotliSize` does not make much sense with this option.
     *
     * @default false
     */
    sourcemap?: boolean;
    /**
     * Absolute path where project is located. It is used to cut prefix from file's paths.
     *
     * @default process.cwd()
     */
    projectRoot?: string | RegExp;
    /**
     * Use rollup .emitFile API to generate files. Could be usefull if you want to output to configured by rollup output dir.
     * When this set to true, filename options must be filename and not a path.
     *
     * @default false
     */
    emitFile?: boolean;
}
export declare const visualizer: (opts?: PluginVisualizerOptions | ((outputOptions: OutputOptions) => PluginVisualizerOptions)) => Plugin;
export default visualizer;
