import { Config } from "./config"; import { AsyncEmitter, InterceptedEvent, Events, InterceptHandler, Interceptor } from "./events"; import Errors from "./errors"; import { ConfigInput } from "./config/types"; import { ProfilerManager } from "./profiler/manager"; import { BootstrapProbe } from "./profiler/runtime/bootstrap-probe"; import type { ProcessRef } from "./profiler/schema"; interface ProfilerSetupOptions { runId?: string; process?: ProcessRef; /** Amount added to local wall-clock timestamps to align them with the main process. */ clockOffsetMs?: number; /** Estimated maximum error of the supplied clock alignment. */ clockUncertaintyMs?: number; } export declare abstract class BaseTestplane extends AsyncEmitter { protected _interceptors: Interceptor[]; protected _config: Config; protected _initEventEmited: boolean; protected _bootstrapProbe: BootstrapProbe; protected _profiler: ProfilerManager; private _pendingConfig?; private _pendingProfilerOptions?; static create(this: new (config?: string | ConfigInput) => T, config?: string | ConfigInput, bootstrapProbe?: BootstrapProbe, profilerOptions?: ProfilerSetupOptions): Promise; protected constructor(config?: string | ConfigInput); protected _setup(): Promise; /** @note Only the first call returns a promise to wait for INIT handlers to complete, subsequent calls return immediately to avoid deadlocks */ protected _emitInitEventOnce(): Promise; get config(): Config; get events(): Events; get errors(): typeof Errors; profileCliCommand(command: string, action: () => T | Promise): Promise; intercept(event: InterceptedEvent, handler: InterceptHandler): this; abstract isWorker(): boolean; protected _setLogLevel(): void; protected _loadPlugins(): void; } export {};