import { TracerProvider } from '@opentelemetry/api'; import { OldClassPlugin, OldPluginConfig } from '../../src/types_plugin_only'; /** This class represent the base to patch plugin. */ export declare abstract class BasePlugin implements OldClassPlugin { protected readonly _tracerName: string; protected readonly _tracerVersion?: string | undefined; abstract readonly moduleName: string; protected _moduleExports: T; constructor(_tracerName: string, _tracerVersion?: string | undefined); enable(moduleExports: T, tracerProvider: TracerProvider, config?: OldPluginConfig): T; disable(): void; protected abstract patch(): T; protected abstract unpatch(): void; }