import type { VFile } from "../utils";
import type { LeadingPage, Plugin } from './types';
import type { Meta } from "../meta";
import { AsyncSeriesHook, AsyncSeriesWaterfallHook } from 'tapable';
export declare function hooks(name: string): {
    Plugins: AsyncSeriesWaterfallHook<[Plugin[]], import("tapable").UnsetAdditionalOptions>;
    Loaded: AsyncSeriesHook<[DeepFrozen<LeadingPage>, DeepFrozen<Meta>, NormalizedPath], import("tapable").UnsetAdditionalOptions>;
    Resolved: AsyncSeriesHook<[DeepFrozen<LeadingPage>, DeepFrozen<Meta>, NormalizedPath], import("tapable").UnsetAdditionalOptions>;
    Dump: AsyncSeriesHook<[VFile<LeadingPage, {}>], import("tapable").UnsetAdditionalOptions>;
};
declare const getHooks: (program: object | undefined) => {
    Plugins: AsyncSeriesWaterfallHook<[Plugin[]], import("tapable").UnsetAdditionalOptions>;
    Loaded: AsyncSeriesHook<[DeepFrozen<LeadingPage>, DeepFrozen<Meta>, NormalizedPath], import("tapable").UnsetAdditionalOptions>;
    Resolved: AsyncSeriesHook<[DeepFrozen<LeadingPage>, DeepFrozen<Meta>, NormalizedPath], import("tapable").UnsetAdditionalOptions>;
    Dump: AsyncSeriesHook<[VFile<LeadingPage, {}>], import("tapable").UnsetAdditionalOptions>;
}, withHooks: <T extends ClassType<any>>(Target: T, { kind }: ClassDecoratorContext<abstract new (...args: any) => any>) => T;
export { getHooks, withHooks };
