import type { Client } from './client'; import type { DebugImage } from './debugMeta'; import type { Integration } from './integration'; import type { MeasurementUnit } from './measurement'; export interface ContinuousProfiler { initialize(client: T): void; start(): void; stop(): void; } export interface ProfilingIntegration extends Integration { _profiler: ContinuousProfiler; } export interface Profiler { startProfiler(): void; stopProfiler(): void; } export type ThreadId = string; export type FrameId = number; export type StackId = number; export interface ThreadCpuSample { stack_id: StackId; thread_id: ThreadId; queue_address?: string; elapsed_since_start_ns: string; } export interface ContinuousThreadCpuSample { stack_id: StackId; thread_id: ThreadId; queue_address?: string; timestamp: number; } export type ThreadCpuStack = FrameId[]; export type ThreadCpuFrame = { function?: string; file?: string; lineno?: number; colno?: number; abs_path?: string; platform?: string; instruction_addr?: string; module?: string; in_app?: boolean; }; export interface ThreadCpuProfile { samples: ThreadCpuSample[]; stacks: ThreadCpuStack[]; frames: ThreadCpuFrame[]; thread_metadata: Record; queue_metadata?: Record; } export interface ContinuousThreadCpuProfile { samples: ContinuousThreadCpuSample[]; stacks: ThreadCpuStack[]; frames: ThreadCpuFrame[]; thread_metadata: Record; queue_metadata?: Record; } interface BaseProfile { version: string; release: string; environment: string; platform: string; profile: T; debug_meta?: { images: DebugImage[]; }; measurements?: Record; } export interface Profile extends BaseProfile { event_id: string; version: string; os: { name: string; version: string; build_number?: string; }; runtime: { name: string; version: string; }; device: { architecture: string; is_emulator: boolean; locale: string; manufacturer: string; model: string; }; timestamp: string; release: string; environment: string; platform: string; profile: ThreadCpuProfile; debug_meta?: { images: DebugImage[]; }; transaction?: { name: string; id: string; trace_id: string; active_thread_id: string; }; transactions?: { name: string; id: string; trace_id: string; active_thread_id: string; relative_start_ns: string; relative_end_ns: string; }[]; measurements?: Record; } export interface ProfileChunk extends BaseProfile { chunk_id: string; profiler_id: string; client_sdk: { name: string; version: string; }; } export {}; //# sourceMappingURL=profiling.d.ts.map