import type { UsableEnvironment } from '../environment'; import type { CoordinatorEventKey, CoordinatorEventValues, CoordinatorTransformKey, CoordinatorTransformValues, FormatterPlugin, Plugin, PluginOperation } from './types'; export declare class PluginManager { private readonly environment; private readonly handlers; private readonly transformers; private cleanupFns; constructor(environment: UsableEnvironment); private registerHandler; private registerTransformer; initFormatter(plugin: FormatterPlugin, options: OptionsType, stream: NodeJS.WritableStream, write: (buffer: string | Uint8Array) => void, directory?: string, specifier?: string): Promise; initCoordinatorExternal(operation: PluginOperation, plugin: Plugin, options: OptionsType, specifier?: string): Promise; initCoordinatorInternal(operation: PluginOperation, plugin: Plugin, options: OptionsType): Promise; private initCoordinator; private makeCoordinatorContext; emit(event: K, value: CoordinatorEventValues[K]): void; transform(event: K, value: CoordinatorTransformValues[K]): Promise; cleanup(): Promise; }