import { ExtendedSpan } from "../../api-traces/api/TraceAPI/types.js"; import { HrTime } from "@opentelemetry/api"; import { ReadableSpan } from "@opentelemetry/sdk-trace-web"; //#region src/api-sessions/manager/types.d.ts interface SpanSessionManager { getSessionId: () => string | null; getPreviousSessionId: () => string | null; getSessionStartTime: () => HrTime | null; getSessionSpan: () => ExtendedSpan | null; startSessionSpan: (options?: StartSessionOptions) => void; endSessionSpan: () => void; addBreadcrumb: (name: string) => void; addProperty: (key: string, value: string, options?: PropertyOptions) => void; removeProperty: (key: string) => void; endSessionSpanInternal: (reason: ReasonSessionEnded) => void; currentSessionAsReadableSpan: (reason: ReasonSessionEnded) => ReadableSpan | null; addSessionStartedListener: (listener: () => void) => () => void; addSessionEndedListener: (listener: () => void) => () => void; } type ReasonSessionEnded = 'unknown' | 'inactivity' | 'timer' | 'manual' | 'max_size_reached' | 'state_changed'; type PropertyOptions = { lifespan?: 'permanent'; }; type StartSessionOptions = { reason?: string; }; //#endregion export { PropertyOptions, ReasonSessionEnded, SpanSessionManager, StartSessionOptions }; //# sourceMappingURL=types.d.ts.map