import { LoggerFunction } from '../types/CommonTypes'; import { Instrumented, MethodInvocationListener, Unsubscriber } from '../types/MethodInvocationTypes'; import { SdkEvents } from './SdkEvents'; export declare class MethodListenerRegistry { private listeners; add(path: string, listener: MethodInvocationListener): Unsubscriber; remove(path: string, listener: MethodInvocationListener): void; getListeners(path: string): MethodInvocationListener[]; } export declare function wrapWithInvocationObserver(target: T, basePath: string, listenerRegistry: MethodListenerRegistry, sdkEvents: SdkEvents, logger?: LoggerFunction): Instrumented;