import { CppObservableRequests, CppObservableResponse, ObservableBindingFunc } from './binding.js'; import { Meter, ValueRecorder } from './metrics.js'; import { ObservableRequestHandler } from './observabilityhandler.js'; import { RequestSpan, RequestTracer } from './tracing.js'; /** * @internal */ export declare class NoOpSpan implements RequestSpan { /** * @internal */ setAttribute(): void; /** * @internal */ addEvent(): void; /** * @internal */ setStatus(): void; /** * @internal */ end(): void; /** * @internal */ readonly name = ""; } /** * @internal */ export declare class NoOpTracer implements RequestTracer { /** * @internal */ requestSpan(): RequestSpan; } /** * @internal */ export declare function wrapObservableBindingCall(fn: ObservableBindingFunc, req: TReq, obsReqHandler: ObservableRequestHandler): Promise<[Error | null, TResp]>; /** * @internal */ export declare class NoOpValueRecorder implements ValueRecorder { /** * @internal */ recordValue(_value: number): void; } /** * @internal */ export declare class NoOpMeter implements Meter { /** * @internal */ valueRecorder(_name: string, _tags: Record): ValueRecorder; }