import { PluginSystemActions } from "./createPluginSystemActions.js"; import { PluginSystemHelpers } from "./createPluginSystemHelpers.js"; import { Plugin } from "./definePlugin.js"; import { HookSystem } from "./lib/HookSystem.js"; import { PluginHookTypes, PluginHooks, PrismicProject } from "./types.js"; /** * @internal */ export declare const REQUIRED_ADAPTER_HOOKS: PluginHookTypes[]; type PluginSystemRunnerConstructorArgs = { project: PrismicProject; hookSystem: HookSystem; nativePlugins: Record; }; /** * @internal */ export declare class PluginSystemRunner { private _project; private _hookSystem; private _nativePlugins; /** * Plugin System actions provided to hooks. * * IMPORTANT: Prefer creating your own abstraction over using `rawActions` * directly to prevent code breakage if this internal API changes. * * @internal */ rawActions: PluginSystemActions; /** * Plugin System helpers provided to hooks. * * IMPORTANT: Prefer creating your own abstraction over using `rawHelpers` * directly to prevent code breakage if this internal API changes. * * @internal */ rawHelpers: PluginSystemHelpers; callHook: HookSystem["callHook"]; hooksForOwner: HookSystem["hooksForOwner"]; hooksForType: HookSystem["hooksForType"]; createScope: HookSystem["createScope"]; constructor({ project, hookSystem, nativePlugins, }: PluginSystemRunnerConstructorArgs); private _loadPlugin; private _setupPlugin; private _validateAdapter; init(): Promise; } type CreatePluginSystemRunnerArgs = { project: PrismicProject; nativePlugins: Record; }; /** * @internal */ export declare const createPluginSystemRunner: ({ project, nativePlugins, }: CreatePluginSystemRunnerArgs) => PluginSystemRunner; export {};