import { HookMap, Setup, IPluginHandlers, PluginOptions as _PluginOptions, IPluginInstance } from '@shuvi/hook'; export declare const GROUP_BEFORE_USER = -1; export declare const GROUP_USER = 0; export declare const GROUP_AFTER_USER = 1; export type PluginOptions = { name?: _PluginOptions['name']; before?: _PluginOptions['before']; after?: _PluginOptions['after']; conflict?: _PluginOptions['conflict']; required?: _PluginOptions['required']; }; export interface PluginFunc { (handler: IPluginHandlers & { setup?: Setup; }, options?: PluginOptions): IPluginInstance; } export interface CreatePluginByGroup { createPluginBefore: PluginFunc; createPlugin: PluginFunc; createPluginAfter: PluginFunc; } export declare function createPluginCreator(): CreatePluginByGroup;