import { LogSeverity } from "../../api-logs/manager/types.js"; import { AttributeValue, DiagLogger } from "@opentelemetry/api"; import { ReadableSpan } from "@opentelemetry/sdk-trace-web"; //#region src/managers/EmbraceLimitManager/types.d.ts interface EmbraceLimitManagerArgs { diag?: DiagLogger; maxAllowed: Record; maxLength: Record; maxAttributes: Record; } type LogLimitedType = 'error_log' | 'warning_log' | 'info_log'; type MaxLimitedType = LogLimitedType | 'exception' | 'span' | 'network_request' | 'breadcrumb' | 'session_property' | 'user_timing_mark' | 'user_timing_measure' | 'element_timing' | 'server_timing'; type LengthLimitedType = LogLimitedType | 'exception' | 'breadcrumb' | 'session_property_key' | 'session_property_value' | 'log_attribute_key' | 'log_attribute_value' | 'exception_attribute_key' | 'exception_attribute_value'; type AttributeLimitedType = LogLimitedType | 'exception'; type LimitedType = MaxLimitedType | LengthLimitedType | AttributeLimitedType; type LimitOperation = 'drop' | 'truncate_string' | 'truncate_attributes'; type LimitedBreadcrumb = { name: string; }; type LimitedLog = { message: string; attributes: Record; }; type LimitedException = { message: string; attributes: Record; }; type LimitedSessionProperty = { key: string; value: string; }; interface LimitManagerInternal { dropReadableSpan: (span: ReadableSpan) => boolean; limitLog: (message: string, severity: LogSeverity, attributes: Record) => LimitedLog | 'dropped'; limitException: (message: string, attributes: Record) => LimitedException | 'dropped'; limitSessionProperty: (key: string, value: string) => LimitedSessionProperty | 'dropped'; limitBreadcrumb: (name: string) => LimitedBreadcrumb | 'dropped'; limitUserTimingEntry: (entryType: 'mark' | 'measure') => boolean; limitElementTimingEntry: () => boolean; limitServerTimingEntry: () => boolean; reset: () => void; getDiagnosticCounts: () => Record; truncateString: (type: LengthLimitedType, body: string) => string; } //#endregion export { AttributeLimitedType, EmbraceLimitManagerArgs, LengthLimitedType, LimitManagerInternal, LimitOperation, LimitedBreadcrumb, LimitedException, LimitedLog, LimitedSessionProperty, LimitedType, LogLimitedType, MaxLimitedType }; //# sourceMappingURL=types.d.ts.map