import { AttachmentType } from './attachment'; import { SerializedCheckIn } from './checkin'; import { ClientReport } from './clientreport'; import { LegacyCSPReport } from './csp'; import { DsnComponents } from './dsn'; import { Event } from './event'; import { FeedbackEvent, UserFeedback } from './feedback'; import { SerializedLogContainer } from './log'; import { Profile, ProfileChunk } from './profiling'; import { ReplayEvent, ReplayRecordingData } from './replay'; import { SdkInfo } from './sdkinfo'; import { SerializedSession, SessionAggregates } from './session'; import { SpanJSON } from './span'; export type DynamicSamplingContext = { trace_id: string; public_key: DsnComponents['publicKey']; sample_rate?: string; release?: string; environment?: string; transaction?: string; replay_id?: string; sampled?: string; sample_rand?: string; org_id?: string; }; export type EnvelopeItemType = 'client_report' | 'user_report' | 'feedback' | 'session' | 'sessions' | 'transaction' | 'attachment' | 'event' | 'profile' | 'profile_chunk' | 'replay_event' | 'replay_recording' | 'check_in' | 'span' | 'log' | 'raw_security'; export type BaseEnvelopeHeaders = { [key: string]: unknown; dsn?: string; sdk?: SdkInfo; }; export type BaseEnvelopeItemHeaders = { [key: string]: unknown; type: EnvelopeItemType; length?: number; }; type BaseEnvelopeItem = [ ItemHeader & BaseEnvelopeItemHeaders, P ]; type BaseEnvelope = [ EnvelopeHeader & BaseEnvelopeHeaders, Array> ]; type EventItemHeaders = { type: 'event' | 'transaction' | 'profile' | 'feedback'; }; type AttachmentItemHeaders = { type: 'attachment'; length: number; filename: string; content_type?: string; attachment_type?: AttachmentType; }; type UserFeedbackItemHeaders = { type: 'user_report'; }; type FeedbackItemHeaders = { type: 'feedback'; }; type SessionItemHeaders = { type: 'session'; }; type SessionAggregatesItemHeaders = { type: 'sessions'; }; type ClientReportItemHeaders = { type: 'client_report'; }; type ReplayEventItemHeaders = { type: 'replay_event'; }; type ReplayRecordingItemHeaders = { type: 'replay_recording'; length: number; }; type CheckInItemHeaders = { type: 'check_in'; }; type ProfileItemHeaders = { type: 'profile'; }; type ProfileChunkItemHeaders = { type: 'profile_chunk'; }; type SpanItemHeaders = { type: 'span'; }; type LogContainerItemHeaders = { type: 'log'; /** * The number of log items in the container. This must be the same as the number of log items in the payload. */ item_count: number; /** * The content type of the log items. This must be `application/vnd.sentry.items.log+json`. */ content_type: 'application/vnd.sentry.items.log+json'; }; type RawSecurityHeaders = { type: 'raw_security'; sentry_release?: string; sentry_environment?: string; }; export type EventItem = BaseEnvelopeItem; export type AttachmentItem = BaseEnvelopeItem; export type UserFeedbackItem = BaseEnvelopeItem; export type SessionItem = BaseEnvelopeItem | BaseEnvelopeItem; export type ClientReportItem = BaseEnvelopeItem; export type CheckInItem = BaseEnvelopeItem; type ReplayEventItem = BaseEnvelopeItem; type ReplayRecordingItem = BaseEnvelopeItem; export type FeedbackItem = BaseEnvelopeItem; export type ProfileItem = BaseEnvelopeItem; export type ProfileChunkItem = BaseEnvelopeItem; export type SpanItem = BaseEnvelopeItem>; export type LogContainerItem = BaseEnvelopeItem; export type RawSecurityItem = BaseEnvelopeItem; export type EventEnvelopeHeaders = { event_id: string; sent_at: string; trace?: Partial; }; type SessionEnvelopeHeaders = { sent_at: string; }; type CheckInEnvelopeHeaders = { trace?: DynamicSamplingContext; }; type ClientReportEnvelopeHeaders = BaseEnvelopeHeaders; type ReplayEnvelopeHeaders = BaseEnvelopeHeaders; type SpanEnvelopeHeaders = BaseEnvelopeHeaders & { trace?: DynamicSamplingContext; }; type LogEnvelopeHeaders = BaseEnvelopeHeaders; export type EventEnvelope = BaseEnvelope; export type SessionEnvelope = BaseEnvelope; export type ClientReportEnvelope = BaseEnvelope; export type ReplayEnvelope = [ ReplayEnvelopeHeaders, [ ReplayEventItem, ReplayRecordingItem ] ]; export type CheckInEnvelope = BaseEnvelope; export type SpanEnvelope = BaseEnvelope; export type ProfileChunkEnvelope = BaseEnvelope; export type RawSecurityEnvelope = BaseEnvelope; export type LogEnvelope = BaseEnvelope; export type Envelope = EventEnvelope | SessionEnvelope | ClientReportEnvelope | ProfileChunkEnvelope | ReplayEnvelope | CheckInEnvelope | SpanEnvelope | RawSecurityEnvelope | LogEnvelope; export type EnvelopeItem = Envelope[1][number]; export {}; //# sourceMappingURL=envelope.d.ts.map