@embrace-io/web-sdk
Version:
46 lines • 2.52 kB
text/typescript
import { LogManager } from "../../api-logs/manager/types.cjs";
import "../../api-logs/index.cjs";
import "../../api-sessions/index.cjs";
import { PerformanceManager } from "../../utils/PerformanceManager/types.cjs";
import "../../utils/index.cjs";
import { LimitManagerInternal } from "../../managers/EmbraceLimitManager/types.cjs";
import "../../managers/index.cjs";
import { InstrumentationAbstract } from "../InstrumentationAbstract/InstrumentationAbstract.cjs";
import "../InstrumentationAbstract/index.cjs";
import { EmbraceInstrumentationBaseArgs } from "./types.cjs";
import { SessionPartStartedEvent } from "../../api-sessions/manager/types.cjs";
import { UserSessionManagerInternal } from "../../managers/EmbraceUserSessionManager/types.cjs";
import { Instrumentation, InstrumentationConfig, InstrumentationModuleDefinition } from "@opentelemetry/instrumentation";
//#region src/instrumentations/EmbraceInstrumentationBase/EmbraceInstrumentationBase.d.ts
type SessionPartListeners = {
start?: (event: SessionPartStartedEvent) => void;
end?: () => void;
};
declare abstract class EmbraceInstrumentationBase<ConfigType extends InstrumentationConfig = InstrumentationConfig> extends InstrumentationAbstract<ConfigType> implements Instrumentation<ConfigType> {
private _userSessionManager;
private _logManager;
private readonly _perf;
private _limitManager;
protected _isEnabled: boolean;
private _removeSessionPartListeners;
private _sessionPartListeners;
protected constructor({ instrumentationName, instrumentationVersion, config, diag, perf, limitManager }: EmbraceInstrumentationBaseArgs<ConfigType>);
protected get userSessionManager(): UserSessionManagerInternal;
protected get logManager(): LogManager;
protected get perf(): PerformanceManager;
protected get limitManager(): LimitManagerInternal | undefined;
setLimitManager(limitManager: LimitManagerInternal): void;
protected init(): InstrumentationModuleDefinition | InstrumentationModuleDefinition[] | undefined;
setLogManager(logManager: LogManager): void;
setUserSessionManager(userSessionManager: UserSessionManagerInternal): void;
protected setSessionPartListeners(listeners: SessionPartListeners): void;
protected unregisterSessionPartListeners(): void;
private _registerSessionPartListeners;
disable(): void;
enable(): void;
protected abstract onDisable(): void;
abstract onEnable(): void;
}
//#endregion
export { EmbraceInstrumentationBase };
//# sourceMappingURL=EmbraceInstrumentationBase.d.cts.map