@backtrace/sdk-core
Version:
Backtrace-JavaScript SDK core library
26 lines (25 loc) • 993 B
TypeScript
import { Events } from '../../common/Events.js';
import { AttributeEvents } from '../../events/AttributeEvents.js';
import { ReportData } from '../../model/report/ReportData.js';
import { BacktraceAttributeProvider } from './BacktraceAttributeProvider.js';
export declare class AttributeManager {
readonly attributeEvents: Events<AttributeEvents>;
private readonly _attributeProviders;
constructor(providers: BacktraceAttributeProvider[]);
/**
* Adds attributes to manager cache
* @param attributes attributes object
*/
add(attributes: Record<string, unknown> | (() => Record<string, unknown>)): void;
/**
* Adds attribute provider to the manager
* @param attributeProvider
* @returns
*/
addProvider(attributeProvider: BacktraceAttributeProvider): void;
/**
* Gets client attributes
* @returns Report attribute - client attributes and annotations
*/
get(attributeType?: 'scoped' | 'dynamic'): ReportData;
}