import type { Container } from './Container'; import { ProtectedEventEmitter } from './utils/ProtectedEventEmitter'; import { Debugger } from './utils/Debugger'; export declare type DevToolEvent = { containercreated: { container: Container; }; containerremoved: { container: Container; }; }; export declare type ContainerStore = { createTime: number; container: Container; }; declare class DevTool extends Debugger implements ProtectedEventEmitter { #private; get version(): number; protected get debugName(): string; get [Symbol.toStringTag](): string; private constructor(); on(event: T, listener: (event: DevToolEvent[T]) => unknown, context?: unknown): this; once(event: T, listener: (event: DevToolEvent[T]) => unknown, context?: unknown): this; off(event: T, listener: (event: DevToolEvent[T]) => unknown, context?: unknown): this; get containers(): Set; notifyContainerCreated(container: Container): void; static getInstance(): DevTool; } export type { DevTool }; export declare const getDevTool: () => DevTool;