import type { Plugin } from '../plugin';
import type { Runner } from '../runner';
/**
 * 提供插件配置能力
 * - 提供 userConfig.plugins 配置校验
 * - 提供 `--plugins` 命令行支持
 * - 提供 `${CLI_NAME}_PLUGINS` 环境变量支持，需开启 env 支持，如 TAKIN_PLUGINS=plugin1,plugin2
 */
export default class PluginConfigPlugin implements Plugin {
    options: {
        /**
         * 是否开启通过命令行或环境变量载入插件支持，默认为 false
         */
        loadCliOrEnvPlugins: boolean;
        /**
         * 是否注册 plugins 的用户配置，默认为 true
         */
        registerPluginSchema: boolean;
    };
    name: string;
    constructor(options?: {
        /**
         * 是否开启通过命令行或环境变量载入插件支持，默认为 false
         */
        loadCliOrEnvPlugins: boolean;
        /**
         * 是否注册 plugins 的用户配置，默认为 true
         */
        registerPluginSchema: boolean;
    });
    apply(runner: Runner): void;
}
