@everframe/react-native 1.2.1 → 1.4.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,1090 @@
1
+ import { z } from 'zod';
2
+
3
+ declare const capturePaths: readonly ["native-handled", "bridge-handled", "bridge-automatic", "jvm-uncaught"];
4
+ declare const captureOutcomes: readonly ["persisted", "disabled", "admission-suppressed", "reentrant", "invalid-input", "ownership-lost", "storage-unavailable", "failed"];
5
+ declare const queueOperations: readonly ["enqueue-committed", "enqueue-failed", "capacity-evicted", "removed-after-acceptance", "removed-after-terminal", "removal-failed", "read-failed"];
6
+ declare const storageFailures: readonly ["capacity", "key-unavailable", "corrupt", "io", "revoked", "invalid-entry", "busy", "unknown", "unsupported-format"];
7
+ declare const transportOrigins: readonly ["live-submit", "outbox-drain"];
8
+ declare const transportOutcomes: readonly ["server-accepted", "retryable-http", "terminal-http", "network-failure", "authorization-cancelled", "cancelled", "failed"];
9
+ type ReportCapturePath = (typeof capturePaths)[number];
10
+ type ReportCaptureOutcome = (typeof captureOutcomes)[number];
11
+ type ReportQueueOperation = (typeof queueOperations)[number];
12
+ type ReportStorageFailure = (typeof storageFailures)[number];
13
+ type ReportTransportOrigin = (typeof transportOrigins)[number];
14
+ type ReportTransportOutcome = (typeof transportOutcomes)[number];
15
+ type ReportDeliveryReason = 'none' | 'no-start' | 'capture-disabled' | 'no-mount' | 'platform' | 'native-call-failed' | 'invalid-native-snapshot' | 'snapshot-busy';
16
+ interface ReportCapturePathStatus {
17
+ supported: boolean;
18
+ settledAttempts: number;
19
+ outcomes: Record<ReportCaptureOutcome, number>;
20
+ lastOutcome?: ReportCaptureOutcome;
21
+ }
22
+ interface ReportQueueStatus {
23
+ scope: 'sdk-report-outbox';
24
+ observation: 'not-observed' | 'observed' | 'failed';
25
+ quality: 'complete' | 'partial' | 'unknown';
26
+ pendingCount?: number;
27
+ capacityPolicy: 'reject-new' | 'evict-oldest' | 'unknown';
28
+ terminalHttpPolicy: 'retain' | 'attempt-remove' | 'unknown';
29
+ operations: Record<ReportQueueOperation, number>;
30
+ lastFailure?: ReportStorageFailure;
31
+ }
32
+ interface ReportTransportStatus {
33
+ settledAttempts: number;
34
+ outcomes: Record<ReportTransportOutcome, number>;
35
+ lastOutcome?: ReportTransportOutcome;
36
+ lastHttpStatus?: number;
37
+ }
38
+ interface ReportDeliveryStatus {
39
+ schemaVersion: 1;
40
+ status: 'active' | 'not-started' | 'disabled' | 'not-mounted' | 'unsupported' | 'unavailable';
41
+ reason: ReportDeliveryReason;
42
+ scope: 'native-runtime-observations';
43
+ coverage: 'best-effort';
44
+ revision: number;
45
+ capture: {
46
+ enabled: boolean;
47
+ paths: Record<ReportCapturePath, ReportCapturePathStatus>;
48
+ };
49
+ queue: ReportQueueStatus;
50
+ transport: Record<ReportTransportOrigin, ReportTransportStatus>;
51
+ }
52
+
53
+ /** Local admission only: native acceptance is not delivery confirmation. */
54
+ type ErrorCapturePath = 'handled' | 'errorUtils' | 'rejection';
55
+ interface ErrorCaptureCounters {
56
+ attempted: number;
57
+ accepted: number;
58
+ duplicateSuppressed: number;
59
+ allowanceSuppressed: number;
60
+ bridgeUnavailable: number;
61
+ nativeRefused: number;
62
+ captureFailed: number;
63
+ reentrantSuppressed: number;
64
+ inactiveAborted: number;
65
+ }
66
+ type ErrorCaptureOutcome = Exclude<keyof ErrorCaptureCounters, 'attempted'>;
67
+ interface ErrorCaptureStatus {
68
+ status: 'not-mounted' | 'disabled' | 'active' | 'unsupported';
69
+ reason: 'no-mount' | 'crash-reporting-disabled' | 'none' | 'platform';
70
+ scope: 'mounted-js-admission';
71
+ limits: {
72
+ handled: 10;
73
+ automatic: 10;
74
+ };
75
+ counters: Record<ErrorCapturePath, ErrorCaptureCounters>;
76
+ }
77
+
78
+ type JsonScalar = string | number | boolean | null;
79
+ type JsonValue = JsonScalar | JsonValue[] | JsonObject;
80
+ type JsonObject = {
81
+ [key: string]: JsonValue;
82
+ };
83
+
84
+ declare const ReportEnvelope: z.ZodObject<{
85
+ protocolVersion: z.ZodLiteral<"1.0">;
86
+ reportId: z.ZodString;
87
+ submittedAt: z.ZodString;
88
+ source: z.ZodOptional<z.ZodEnum<{
89
+ error: "error";
90
+ manual: "manual";
91
+ crash: "crash";
92
+ diagnostic: "diagnostic";
93
+ }>>;
94
+ sessionId: z.ZodOptional<z.ZodString>;
95
+ sdk: z.ZodObject<{
96
+ name: z.ZodEnum<{
97
+ "everframe-react": "everframe-react";
98
+ "everframe-web": "everframe-web";
99
+ "everframe-react-native": "everframe-react-native";
100
+ "everframe-flutter": "everframe-flutter";
101
+ "everframe-kmp": "everframe-kmp";
102
+ "everframe-ios": "everframe-ios";
103
+ "everframe-android": "everframe-android";
104
+ "everframe-roku": "everframe-roku";
105
+ "everframe-vega": "everframe-vega";
106
+ }>;
107
+ version: z.ZodString;
108
+ platform: z.ZodEnum<{
109
+ web: "web";
110
+ tizen: "tizen";
111
+ webos: "webos";
112
+ vega: "vega";
113
+ vidaa: "vidaa";
114
+ titanos: "titanos";
115
+ roku: "roku";
116
+ android: "android";
117
+ ios: "ios";
118
+ tvos: "tvos";
119
+ androidtv: "androidtv";
120
+ }>;
121
+ formFactor: z.ZodEnum<{
122
+ phone: "phone";
123
+ tablet: "tablet";
124
+ desktop: "desktop";
125
+ tv: "tv";
126
+ }>;
127
+ }, z.core.$loose>;
128
+ reporter: z.ZodObject<{
129
+ title: z.ZodString;
130
+ description: z.ZodString;
131
+ user: z.ZodOptional<z.ZodObject<{
132
+ id: z.ZodOptional<z.ZodString>;
133
+ email: z.ZodOptional<z.ZodString>;
134
+ displayName: z.ZodOptional<z.ZodString>;
135
+ }, z.core.$loose>>;
136
+ }, z.core.$loose>;
137
+ captures: z.ZodObject<{
138
+ screenshot: z.ZodBoolean;
139
+ uiTree: z.ZodBoolean;
140
+ focus: z.ZodBoolean;
141
+ logs: z.ZodBoolean;
142
+ network: z.ZodBoolean;
143
+ breadcrumbs: z.ZodOptional<z.ZodBoolean>;
144
+ }, z.core.$loose>;
145
+ captureControl: z.ZodObject<{
146
+ included: z.ZodArray<z.ZodString>;
147
+ excluded: z.ZodArray<z.ZodString>;
148
+ degradedReason: z.ZodOptional<z.ZodString>;
149
+ }, z.core.$loose>;
150
+ payload: z.ZodObject<{
151
+ focus: z.ZodOptional<z.ZodObject<{
152
+ path: z.ZodArray<z.ZodNumber>;
153
+ componentPath: z.ZodString;
154
+ source: z.ZodEnum<{
155
+ mouse: "mouse";
156
+ keyboard: "keyboard";
157
+ remote: "remote";
158
+ touch: "touch";
159
+ programmatic: "programmatic";
160
+ }>;
161
+ cursor: z.ZodOptional<z.ZodObject<{
162
+ x: z.ZodNumber;
163
+ y: z.ZodNumber;
164
+ }, z.core.$strip>>;
165
+ }, z.core.$strip>>;
166
+ logs: z.ZodOptional<z.ZodArray<z.ZodUnknown>>;
167
+ network: z.ZodOptional<z.ZodArray<z.ZodUnknown>>;
168
+ breadcrumbs: z.ZodOptional<z.ZodArray<z.ZodObject<{
169
+ t: z.ZodNumber;
170
+ seq: z.ZodNumber;
171
+ kind: z.ZodEnum<{
172
+ error: "error";
173
+ custom: "custom";
174
+ navigation: "navigation";
175
+ tap: "tap";
176
+ console: "console";
177
+ network: "network";
178
+ lifecycle: "lifecycle";
179
+ }>;
180
+ level: z.ZodOptional<z.ZodEnum<{
181
+ error: "error";
182
+ debug: "debug";
183
+ info: "info";
184
+ warn: "warn";
185
+ }>>;
186
+ message: z.ZodString;
187
+ data: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
188
+ truncated: z.ZodOptional<z.ZodBoolean>;
189
+ }, z.core.$loose>>>;
190
+ state: z.ZodOptional<z.ZodObject<{
191
+ startedAt: z.ZodNumber;
192
+ initial: z.ZodObject<{
193
+ custom: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>;
194
+ automatic: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>;
195
+ }, z.core.$strict>;
196
+ checkpoint: z.ZodOptional<z.ZodObject<{
197
+ t: z.ZodNumber;
198
+ throughSeq: z.ZodNumber;
199
+ values: z.ZodObject<{
200
+ custom: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>;
201
+ automatic: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>;
202
+ }, z.core.$strict>;
203
+ }, z.core.$strict>>;
204
+ changes: z.ZodArray<z.ZodObject<{
205
+ t: z.ZodNumber;
206
+ seq: z.ZodNumber;
207
+ namespace: z.ZodEnum<{
208
+ custom: "custom";
209
+ automatic: "automatic";
210
+ }>;
211
+ key: z.ZodString;
212
+ op: z.ZodEnum<{
213
+ set: "set";
214
+ clear: "clear";
215
+ }>;
216
+ value: z.ZodOptional<z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>;
217
+ }, z.core.$strict>>;
218
+ current: z.ZodObject<{
219
+ custom: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>;
220
+ automatic: z.ZodPipe<z.ZodTransform<unknown, unknown>, z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>;
221
+ }, z.core.$strict>;
222
+ capturedAt: z.ZodNumber;
223
+ droppedChanges: z.ZodNumber;
224
+ }, z.core.$strict>>;
225
+ networkBodies: z.ZodOptional<z.ZodArray<z.ZodObject<{
226
+ ref: z.ZodNumber;
227
+ t: z.ZodNumber;
228
+ reqBody: z.ZodOptional<z.ZodString>;
229
+ resBody: z.ZodOptional<z.ZodString>;
230
+ reqBodyTruncated: z.ZodOptional<z.ZodBoolean>;
231
+ resBodyTruncated: z.ZodOptional<z.ZodBoolean>;
232
+ reqBodyBytes: z.ZodOptional<z.ZodNumber>;
233
+ resBodyBytes: z.ZodOptional<z.ZodNumber>;
234
+ reqHeaders: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
235
+ resHeaders: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
236
+ reqBodySkipped: z.ZodOptional<z.ZodEnum<{
237
+ error: "error";
238
+ unsupported: "unsupported";
239
+ "content-type": "content-type";
240
+ }>>;
241
+ resBodySkipped: z.ZodOptional<z.ZodEnum<{
242
+ error: "error";
243
+ unsupported: "unsupported";
244
+ "content-type": "content-type";
245
+ }>>;
246
+ }, z.core.$loose>>>;
247
+ vitals: z.ZodOptional<z.ZodArray<z.ZodDiscriminatedUnion<[z.ZodObject<{
248
+ kind: z.ZodLiteral<"sample">;
249
+ t: z.ZodNumber;
250
+ cpu: z.ZodOptional<z.ZodNumber>;
251
+ mem: z.ZodNumber;
252
+ extras: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
253
+ }, z.core.$strip>, z.ZodObject<{
254
+ kind: z.ZodLiteral<"player">;
255
+ t: z.ZodNumber;
256
+ type: z.ZodEnum<{
257
+ error: "error";
258
+ play: "play";
259
+ pause: "pause";
260
+ seek: "seek";
261
+ buffer_start: "buffer_start";
262
+ buffer_end: "buffer_end";
263
+ bitrate_change: "bitrate_change";
264
+ rate_change: "rate_change";
265
+ startup: "startup";
266
+ dropped_frames: "dropped_frames";
267
+ source_change: "source_change";
268
+ player_attach: "player_attach";
269
+ player_detach: "player_detach";
270
+ drm: "drm";
271
+ quality_change: "quality_change";
272
+ stats: "stats";
273
+ }>;
274
+ playerId: z.ZodOptional<z.ZodString>;
275
+ data: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
276
+ truncated: z.ZodOptional<z.ZodBoolean>;
277
+ }, z.core.$strip>, z.ZodObject<{
278
+ kind: z.ZodLiteral<"custom">;
279
+ t: z.ZodNumber;
280
+ name: z.ZodString;
281
+ data: z.ZodOptional<z.ZodUnknown>;
282
+ truncated: z.ZodOptional<z.ZodBoolean>;
283
+ playerId: z.ZodOptional<z.ZodString>;
284
+ }, z.core.$strip>], "kind">>>;
285
+ resources: z.ZodOptional<z.ZodArray<z.ZodObject<{
286
+ t: z.ZodNumber;
287
+ cpu: z.ZodOptional<z.ZodNumber>;
288
+ mem: z.ZodNumber;
289
+ extras: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodNumber>>;
290
+ }, z.core.$strip>>>;
291
+ annotations: z.ZodOptional<z.ZodArray<z.ZodUnknown>>;
292
+ redactions: z.ZodOptional<z.ZodArray<z.ZodUnknown>>;
293
+ extra: z.ZodOptional<z.ZodString>;
294
+ crash: z.ZodOptional<z.ZodObject<{
295
+ causeChain: z.ZodOptional<z.ZodObject<{
296
+ causes: z.ZodArray<z.ZodObject<{
297
+ exceptionType: z.ZodString;
298
+ message: z.ZodString;
299
+ frames: z.ZodArray<z.ZodObject<{
300
+ raw: z.ZodString;
301
+ file: z.ZodOptional<z.ZodString>;
302
+ function: z.ZodOptional<z.ZodString>;
303
+ line: z.ZodOptional<z.ZodNumber>;
304
+ col: z.ZodOptional<z.ZodNumber>;
305
+ }, z.core.$strip>>;
306
+ framesTruncated: z.ZodBoolean;
307
+ }, z.core.$strip>>;
308
+ truncated: z.ZodBoolean;
309
+ }, z.core.$strip>>;
310
+ details: z.ZodOptional<z.ZodObject<{
311
+ severity: z.ZodOptional<z.ZodEnum<{
312
+ error: "error";
313
+ info: "info";
314
+ warning: "warning";
315
+ }>>;
316
+ context: z.ZodOptional<z.ZodString>;
317
+ metadata: z.ZodOptional<z.ZodType<JsonObject, unknown, z.core.$ZodTypeInternals<JsonObject, unknown>>>;
318
+ truncated: z.ZodOptional<z.ZodBoolean>;
319
+ }, z.core.$strict>>;
320
+ jsBundle: z.ZodOptional<z.ZodObject<{
321
+ engine: z.ZodLiteral<"hermes">;
322
+ platform: z.ZodEnum<{
323
+ vega: "vega";
324
+ android: "android";
325
+ ios: "ios";
326
+ }>;
327
+ buildId: z.ZodString;
328
+ bundleName: z.ZodString;
329
+ }, z.core.$strip>>;
330
+ jvm: z.ZodOptional<z.ZodObject<{
331
+ mappingId: z.ZodOptional<z.ZodString>;
332
+ causes: z.ZodArray<z.ZodObject<{
333
+ exceptionType: z.ZodString;
334
+ message: z.ZodString;
335
+ frames: z.ZodArray<z.ZodObject<{
336
+ raw: z.ZodString;
337
+ file: z.ZodOptional<z.ZodString>;
338
+ function: z.ZodOptional<z.ZodString>;
339
+ line: z.ZodOptional<z.ZodNumber>;
340
+ col: z.ZodOptional<z.ZodNumber>;
341
+ }, z.core.$loose>>;
342
+ framesTruncated: z.ZodBoolean;
343
+ }, z.core.$strip>>;
344
+ causesTruncated: z.ZodBoolean;
345
+ }, z.core.$strip>>;
346
+ native: z.ZodOptional<z.ZodObject<{
347
+ releaseHealthEvidence: z.ZodOptional<z.ZodObject<{
348
+ version: z.ZodLiteral<1>;
349
+ attribution: z.ZodLiteral<"immutable_fatal_context">;
350
+ contextId: z.ZodString;
351
+ exposure: z.ZodObject<{
352
+ loadedBuildId: z.ZodNullable<z.ZodString>;
353
+ loadedBundleStatus: z.ZodEnum<{
354
+ unknown: "unknown";
355
+ known: "known";
356
+ not_applicable: "not_applicable";
357
+ }>;
358
+ exposureId: z.ZodString;
359
+ processLaunchId: z.ZodString;
360
+ startedAt: z.ZodISODateTime;
361
+ app: z.ZodObject<{
362
+ version: z.ZodString;
363
+ build: z.ZodNullable<z.ZodString>;
364
+ debug: z.ZodBoolean;
365
+ }, z.core.$strict>;
366
+ }, z.core.$strict>;
367
+ }, z.core.$strict>>;
368
+ platform: z.ZodLiteral<"apple">;
369
+ timestampMicros: z.ZodString;
370
+ crashedThreadIndex: z.ZodNumber;
371
+ framesIncomplete: z.ZodBoolean;
372
+ imagesIncomplete: z.ZodBoolean;
373
+ images: z.ZodArray<z.ZodObject<{
374
+ uuid: z.ZodString;
375
+ name: z.ZodString;
376
+ loadAddress: z.ZodString;
377
+ vmAddress: z.ZodOptional<z.ZodString>;
378
+ size: z.ZodString;
379
+ cpuType: z.ZodNumber;
380
+ cpuSubtype: z.ZodNumber;
381
+ architecture: z.ZodEnum<{
382
+ unknown: "unknown";
383
+ arm64e: "arm64e";
384
+ arm64: "arm64";
385
+ x86_64: "x86_64";
386
+ x86_64h: "x86_64h";
387
+ }>;
388
+ }, z.core.$strip>>;
389
+ frames: z.ZodArray<z.ZodObject<{
390
+ instructionAddress: z.ZodString;
391
+ imageIndex: z.ZodOptional<z.ZodNumber>;
392
+ imageOffset: z.ZodOptional<z.ZodString>;
393
+ }, z.core.$strip>>;
394
+ error: z.ZodObject<{
395
+ signalNumber: z.ZodOptional<z.ZodNumber>;
396
+ signalCode: z.ZodOptional<z.ZodNumber>;
397
+ machException: z.ZodOptional<z.ZodNumber>;
398
+ machCode: z.ZodOptional<z.ZodString>;
399
+ machSubcode: z.ZodOptional<z.ZodString>;
400
+ faultAddress: z.ZodOptional<z.ZodString>;
401
+ }, z.core.$strip>;
402
+ }, z.core.$strip>>;
403
+ androidNative: z.ZodOptional<z.ZodObject<{
404
+ source: z.ZodEnum<{
405
+ "android-exit-info": "android-exit-info";
406
+ "android-native-handler": "android-native-handler";
407
+ }>;
408
+ abi: z.ZodEnum<{
409
+ x86_64: "x86_64";
410
+ "armeabi-v7a": "armeabi-v7a";
411
+ "arm64-v8a": "arm64-v8a";
412
+ x86: "x86";
413
+ riscv64: "riscv64";
414
+ }>;
415
+ crashedThreadId: z.ZodNumber;
416
+ framesIncomplete: z.ZodBoolean;
417
+ frames: z.ZodArray<z.ZodObject<{
418
+ pc: z.ZodString;
419
+ relativePc: z.ZodString;
420
+ module: z.ZodOptional<z.ZodString>;
421
+ buildId: z.ZodOptional<z.ZodString>;
422
+ }, z.core.$strip>>;
423
+ signalNumber: z.ZodOptional<z.ZodNumber>;
424
+ signalCode: z.ZodOptional<z.ZodNumber>;
425
+ }, z.core.$strip>>;
426
+ exceptionType: z.ZodString;
427
+ message: z.ZodString;
428
+ frames: z.ZodArray<z.ZodObject<{
429
+ raw: z.ZodString;
430
+ file: z.ZodOptional<z.ZodString>;
431
+ function: z.ZodOptional<z.ZodString>;
432
+ line: z.ZodOptional<z.ZodNumber>;
433
+ col: z.ZodOptional<z.ZodNumber>;
434
+ }, z.core.$loose>>;
435
+ threadName: z.ZodOptional<z.ZodString>;
436
+ mechanism: z.ZodString;
437
+ handled: z.ZodBoolean;
438
+ fatal: z.ZodOptional<z.ZodBoolean>;
439
+ occurredAt: z.ZodString;
440
+ fingerprint: z.ZodString;
441
+ }, z.core.$loose>>;
442
+ diagnostic: z.ZodOptional<z.ZodObject<{
443
+ version: z.ZodLiteral<1>;
444
+ evidenceId: z.ZodString;
445
+ processLaunchId: z.ZodString;
446
+ nativeExposure: z.ZodOptional<z.ZodObject<{
447
+ loadedBuildId: z.ZodNullable<z.ZodString>;
448
+ loadedBundleStatus: z.ZodEnum<{
449
+ unknown: "unknown";
450
+ known: "known";
451
+ not_applicable: "not_applicable";
452
+ }>;
453
+ exposureId: z.ZodString;
454
+ processLaunchId: z.ZodString;
455
+ startedAt: z.ZodISODateTime;
456
+ app: z.ZodObject<{
457
+ version: z.ZodString;
458
+ build: z.ZodNullable<z.ZodString>;
459
+ debug: z.ZodBoolean;
460
+ }, z.core.$strict>;
461
+ }, z.core.$strict>>;
462
+ kind: z.ZodLiteral<"process_exit">;
463
+ provenance: z.ZodLiteral<"android_application_exit_info">;
464
+ scope: z.ZodLiteral<"os_process">;
465
+ outcome: z.ZodLiteral<"terminated">;
466
+ cause: z.ZodEnum<{
467
+ unknown: "unknown";
468
+ anr: "anr";
469
+ native_crash: "native_crash";
470
+ java_crash: "java_crash";
471
+ system_low_memory: "system_low_memory";
472
+ user_requested: "user_requested";
473
+ system_other: "system_other";
474
+ }>;
475
+ occurredAt: z.ZodString;
476
+ collectedAt: z.ZodString;
477
+ attribution: z.ZodObject<{
478
+ process: z.ZodLiteral<"exact_os_token">;
479
+ release: z.ZodLiteral<"frozen">;
480
+ session: z.ZodLiteral<"unavailable">;
481
+ webExposure: z.ZodLiteral<"unavailable">;
482
+ }, z.core.$strict>;
483
+ android: z.ZodObject<{
484
+ apiLevel: z.ZodNumber;
485
+ reason: z.ZodNumber;
486
+ pid: z.ZodNumber;
487
+ importance: z.ZodOptional<z.ZodNumber>;
488
+ pssKb: z.ZodOptional<z.ZodNumber>;
489
+ rssKb: z.ZodOptional<z.ZodNumber>;
490
+ description: z.ZodOptional<z.ZodString>;
491
+ mappingId: z.ZodOptional<z.ZodString>;
492
+ }, z.core.$strict>;
493
+ trace: z.ZodObject<{
494
+ status: z.ZodEnum<{
495
+ unavailable: "unavailable";
496
+ available: "available";
497
+ malformed: "malformed";
498
+ unsupported: "unsupported";
499
+ not_requested: "not_requested";
500
+ }>;
501
+ format: z.ZodEnum<{
502
+ none: "none";
503
+ android_anr_text: "android_anr_text";
504
+ android_tombstone: "android_tombstone";
505
+ }>;
506
+ truncated: z.ZodBoolean;
507
+ frames: z.ZodArray<z.ZodObject<{
508
+ function: z.ZodString;
509
+ file: z.ZodOptional<z.ZodString>;
510
+ line: z.ZodOptional<z.ZodNumber>;
511
+ }, z.core.$strict>>;
512
+ }, z.core.$strict>;
513
+ }, z.core.$strict>>;
514
+ appleDiagnostic: z.ZodOptional<z.ZodObject<{
515
+ version: z.ZodLiteral<1>;
516
+ evidenceId: z.ZodString;
517
+ ownershipId: z.ZodString;
518
+ kind: z.ZodEnum<{
519
+ hang_batch: "hang_batch";
520
+ app_exit_summary: "app_exit_summary";
521
+ }>;
522
+ provenance: z.ZodLiteral<"apple_metrickit">;
523
+ scope: z.ZodLiteral<"reporting_interval">;
524
+ outcome: z.ZodLiteral<"unknown">;
525
+ interval: z.ZodObject<{
526
+ begin: z.ZodString;
527
+ end: z.ZodString;
528
+ }, z.core.$strict>;
529
+ collectedAt: z.ZodString;
530
+ attribution: z.ZodObject<{
531
+ process: z.ZodLiteral<"unavailable">;
532
+ release: z.ZodLiteral<"frozen">;
533
+ session: z.ZodLiteral<"unavailable">;
534
+ webExposure: z.ZodLiteral<"unavailable">;
535
+ }, z.core.$strict>;
536
+ apple: z.ZodObject<{
537
+ applicationVersion: z.ZodString;
538
+ applicationBuild: z.ZodString;
539
+ osVersion: z.ZodString;
540
+ }, z.core.$strict>;
541
+ truncated: z.ZodBoolean;
542
+ hangs: z.ZodOptional<z.ZodArray<z.ZodObject<{
543
+ durationMs: z.ZodNumber;
544
+ stack: z.ZodObject<{
545
+ status: z.ZodEnum<{
546
+ unavailable: "unavailable";
547
+ available: "available";
548
+ malformed: "malformed";
549
+ oversized: "oversized";
550
+ }>;
551
+ truncated: z.ZodBoolean;
552
+ frames: z.ZodArray<z.ZodObject<{
553
+ binaryUUID: z.ZodString;
554
+ binaryName: z.ZodString;
555
+ address: z.ZodString;
556
+ offset: z.ZodString;
557
+ }, z.core.$strict>>;
558
+ }, z.core.$strict>;
559
+ }, z.core.$strict>>>;
560
+ exits: z.ZodOptional<z.ZodArray<z.ZodObject<{
561
+ state: z.ZodEnum<{
562
+ background: "background";
563
+ foreground: "foreground";
564
+ }>;
565
+ reason: z.ZodEnum<{
566
+ normal: "normal";
567
+ memory_resource_limit: "memory_resource_limit";
568
+ bad_access: "bad_access";
569
+ abnormal: "abnormal";
570
+ illegal_instruction: "illegal_instruction";
571
+ watchdog: "watchdog";
572
+ cpu_resource_limit: "cpu_resource_limit";
573
+ memory_pressure: "memory_pressure";
574
+ suspended_locked_file: "suspended_locked_file";
575
+ background_task_timeout: "background_task_timeout";
576
+ }>;
577
+ count: z.ZodNumber;
578
+ }, z.core.$strict>>>;
579
+ }, z.core.$strict>>;
580
+ recoveredStall: z.ZodOptional<z.ZodObject<{
581
+ version: z.ZodLiteral<1>;
582
+ evidenceId: z.ZodString;
583
+ kind: z.ZodLiteral<"recovered_main_thread_stall">;
584
+ provenance: z.ZodLiteral<"android_main_looper_probe">;
585
+ outcome: z.ZodLiteral<"recovered">;
586
+ scope: z.ZodLiteral<"main_looper">;
587
+ queuedAt: z.ZodString;
588
+ recoveredAt: z.ZodString;
589
+ probeDelayMs: z.ZodNumber;
590
+ thresholdMs: z.ZodLiteral<5000>;
591
+ sampleIntervalMs: z.ZodLiteral<1000>;
592
+ clock: z.ZodLiteral<"uptime">;
593
+ eligibility: z.ZodLiteral<"foreground-debugger-checked-v1">;
594
+ trace: z.ZodLiteral<"not_collected">;
595
+ attribution: z.ZodObject<{
596
+ release: z.ZodLiteral<"frozen">;
597
+ session: z.ZodLiteral<"unavailable">;
598
+ webExposure: z.ZodLiteral<"unavailable">;
599
+ nativeExposure: z.ZodLiteral<"unavailable">;
600
+ }, z.core.$strict>;
601
+ android: z.ZodObject<{
602
+ apiLevel: z.ZodNumber;
603
+ }, z.core.$strict>;
604
+ }, z.core.$strict>>;
605
+ inferredTermination: z.ZodOptional<z.ZodObject<{
606
+ version: z.ZodLiteral<1>;
607
+ evidenceId: z.ZodString;
608
+ processLaunchId: z.ZodString;
609
+ nativeExposure: z.ZodOptional<z.ZodObject<{
610
+ loadedBuildId: z.ZodNullable<z.ZodString>;
611
+ loadedBundleStatus: z.ZodEnum<{
612
+ unknown: "unknown";
613
+ known: "known";
614
+ not_applicable: "not_applicable";
615
+ }>;
616
+ exposureId: z.ZodString;
617
+ processLaunchId: z.ZodString;
618
+ startedAt: z.ZodISODateTime;
619
+ app: z.ZodObject<{
620
+ version: z.ZodString;
621
+ build: z.ZodNullable<z.ZodString>;
622
+ debug: z.ZodBoolean;
623
+ }, z.core.$strict>;
624
+ }, z.core.$strict>>;
625
+ kind: z.ZodLiteral<"process_exit">;
626
+ provenance: z.ZodEnum<{
627
+ apple_next_launch_inference: "apple_next_launch_inference";
628
+ }>;
629
+ scope: z.ZodLiteral<"os_process">;
630
+ outcome: z.ZodLiteral<"terminated">;
631
+ rules: z.ZodEnum<{
632
+ "apple-foreground-v1": "apple-foreground-v1";
633
+ }>;
634
+ cause: z.ZodEnum<{
635
+ low_memory: "low_memory";
636
+ unresponsive: "unresponsive";
637
+ unexplained: "unexplained";
638
+ }>;
639
+ lastSeenAt: z.ZodString;
640
+ collectedAt: z.ZodString;
641
+ attribution: z.ZodObject<{
642
+ process: z.ZodEnum<{
643
+ sdk_run_record: "sdk_run_record";
644
+ }>;
645
+ release: z.ZodLiteral<"frozen">;
646
+ session: z.ZodLiteral<"unavailable">;
647
+ webExposure: z.ZodLiteral<"unavailable">;
648
+ }, z.core.$strict>;
649
+ apple: z.ZodObject<{
650
+ appState: z.ZodEnum<{
651
+ active: "active";
652
+ inactive: "inactive";
653
+ launching: "launching";
654
+ }>;
655
+ footprintKb: z.ZodOptional<z.ZodNumber>;
656
+ availableKb: z.ZodOptional<z.ZodNumber>;
657
+ memorySampledAt: z.ZodOptional<z.ZodString>;
658
+ memoryWarnings: z.ZodNumber;
659
+ lastMemoryWarningAt: z.ZodOptional<z.ZodString>;
660
+ memoryPressure: z.ZodEnum<{
661
+ warning: "warning";
662
+ normal: "normal";
663
+ critical: "critical";
664
+ }>;
665
+ mainThreadStallMs: z.ZodOptional<z.ZodNumber>;
666
+ thermalState: z.ZodEnum<{
667
+ critical: "critical";
668
+ nominal: "nominal";
669
+ fair: "fair";
670
+ serious: "serious";
671
+ }>;
672
+ }, z.core.$strict>;
673
+ }, z.core.$strict>>;
674
+ }, z.core.$loose>;
675
+ context: z.ZodObject<{
676
+ app: z.ZodObject<{
677
+ name: z.ZodString;
678
+ version: z.ZodString;
679
+ build: z.ZodOptional<z.ZodString>;
680
+ jsBundle: z.ZodOptional<z.ZodObject<{
681
+ engine: z.ZodLiteral<"hermes">;
682
+ platform: z.ZodEnum<{
683
+ vega: "vega";
684
+ android: "android";
685
+ ios: "ios";
686
+ }>;
687
+ buildId: z.ZodString;
688
+ bundleName: z.ZodString;
689
+ }, z.core.$strip>>;
690
+ debug: z.ZodOptional<z.ZodBoolean>;
691
+ }, z.core.$loose>;
692
+ device: z.ZodObject<{
693
+ os: z.ZodString;
694
+ osVersion: z.ZodString;
695
+ model: z.ZodOptional<z.ZodString>;
696
+ screenSize: z.ZodObject<{
697
+ width: z.ZodNumber;
698
+ height: z.ZodNumber;
699
+ }, z.core.$strip>;
700
+ pixelRatio: z.ZodNumber;
701
+ locale: z.ZodString;
702
+ timezone: z.ZodString;
703
+ userAgent: z.ZodOptional<z.ZodString>;
704
+ }, z.core.$loose>;
705
+ route: z.ZodOptional<z.ZodString>;
706
+ }, z.core.$loose>;
707
+ attachments: z.ZodArray<z.ZodObject<{
708
+ partName: z.ZodString;
709
+ kind: z.ZodEnum<{
710
+ screenshot: "screenshot";
711
+ "annotated-screenshot": "annotated-screenshot";
712
+ video: "video";
713
+ audio: "audio";
714
+ "session-replay": "session-replay";
715
+ "dom-snapshot": "dom-snapshot";
716
+ other: "other";
717
+ }>;
718
+ contentType: z.ZodString;
719
+ byteLength: z.ZodNumber;
720
+ sha256: z.ZodString;
721
+ width: z.ZodOptional<z.ZodNumber>;
722
+ height: z.ZodOptional<z.ZodNumber>;
723
+ format: z.ZodOptional<z.ZodEnum<{
724
+ rrweb: "rrweb";
725
+ "everframe-vtree-v1": "everframe-vtree-v1";
726
+ "everframe-video-v1": "everframe-video-v1";
727
+ "traceitx-vtree-v1": "traceitx-vtree-v1";
728
+ "traceitx-video-v1": "traceitx-video-v1";
729
+ }>>;
730
+ durationMs: z.ZodOptional<z.ZodNumber>;
731
+ replayStartEpochMs: z.ZodOptional<z.ZodNumber>;
732
+ }, z.core.$strip>>;
733
+ }, z.core.$loose>;
734
+ type ReportEnvelope = z.infer<typeof ReportEnvelope>;
735
+
736
+ interface UINode {
737
+ componentType: string;
738
+ componentName?: string | undefined;
739
+ identifiers: Record<string, string>;
740
+ rect: {
741
+ x: number;
742
+ y: number;
743
+ width: number;
744
+ height: number;
745
+ };
746
+ safeProps: Record<string, string | number | boolean>;
747
+ children: UINode[];
748
+ sensitive?: boolean | undefined;
749
+ nodeKind?: 'compose' | 'view' | 'dom' | undefined;
750
+ }
751
+ declare const UINode: z.ZodType<UINode>;
752
+ declare const UITree: z.ZodObject<{
753
+ root: z.ZodType<UINode, unknown, z.core.$ZodTypeInternals<UINode, unknown>>;
754
+ capturedAt: z.ZodString;
755
+ rendererHint: z.ZodEnum<{
756
+ android: "android";
757
+ dom: "dom";
758
+ "rn-paper": "rn-paper";
759
+ "rn-fabric": "rn-fabric";
760
+ uikit: "uikit";
761
+ }>;
762
+ truncated: z.ZodOptional<z.ZodBoolean>;
763
+ }, z.core.$strip>;
764
+ type UITree = z.infer<typeof UITree>;
765
+ declare const AttachmentRef: z.ZodObject<{
766
+ partName: z.ZodString;
767
+ kind: z.ZodEnum<{
768
+ screenshot: "screenshot";
769
+ "annotated-screenshot": "annotated-screenshot";
770
+ video: "video";
771
+ audio: "audio";
772
+ "session-replay": "session-replay";
773
+ "dom-snapshot": "dom-snapshot";
774
+ other: "other";
775
+ }>;
776
+ contentType: z.ZodString;
777
+ byteLength: z.ZodNumber;
778
+ sha256: z.ZodString;
779
+ width: z.ZodOptional<z.ZodNumber>;
780
+ height: z.ZodOptional<z.ZodNumber>;
781
+ format: z.ZodOptional<z.ZodEnum<{
782
+ rrweb: "rrweb";
783
+ "everframe-vtree-v1": "everframe-vtree-v1";
784
+ "everframe-video-v1": "everframe-video-v1";
785
+ "traceitx-vtree-v1": "traceitx-vtree-v1";
786
+ "traceitx-video-v1": "traceitx-video-v1";
787
+ }>>;
788
+ durationMs: z.ZodOptional<z.ZodNumber>;
789
+ replayStartEpochMs: z.ZodOptional<z.ZodNumber>;
790
+ }, z.core.$strip>;
791
+ type AttachmentRef = z.infer<typeof AttachmentRef>;
792
+ /** Producer contract. The envelope's open custom data and existing kind enum are unchanged. */
793
+ declare const InteractionEventSchema: z.ZodUnion<readonly [z.ZodObject<{
794
+ type: z.ZodLiteral<"text_edit">;
795
+ length: z.ZodNumber;
796
+ value: z.ZodOptional<z.ZodString>;
797
+ reason: z.ZodEnum<{
798
+ end: "end";
799
+ idle: "idle";
800
+ submit: "submit";
801
+ freeze: "freeze";
802
+ }>;
803
+ source: z.ZodEnum<{
804
+ app: "app";
805
+ native: "native";
806
+ }>;
807
+ observedAt: z.ZodNumber;
808
+ }, z.core.$strict>, z.ZodObject<{
809
+ type: z.ZodLiteral<"control_change">;
810
+ control: z.ZodEnum<{
811
+ switch: "switch";
812
+ checkbox: "checkbox";
813
+ }>;
814
+ checked: z.ZodBoolean;
815
+ source: z.ZodEnum<{
816
+ app: "app";
817
+ native: "native";
818
+ }>;
819
+ observedAt: z.ZodNumber;
820
+ }, z.core.$strict>, z.ZodObject<{
821
+ type: z.ZodLiteral<"control_change">;
822
+ control: z.ZodLiteral<"slider">;
823
+ position: z.ZodNumber;
824
+ source: z.ZodEnum<{
825
+ app: "app";
826
+ native: "native";
827
+ }>;
828
+ observedAt: z.ZodNumber;
829
+ }, z.core.$strict>, z.ZodObject<{
830
+ type: z.ZodLiteral<"control_change">;
831
+ control: z.ZodEnum<{
832
+ radio: "radio";
833
+ picker: "picker";
834
+ }>;
835
+ optionId: z.ZodString;
836
+ value: z.ZodOptional<z.ZodString>;
837
+ source: z.ZodEnum<{
838
+ app: "app";
839
+ native: "native";
840
+ }>;
841
+ observedAt: z.ZodNumber;
842
+ }, z.core.$strict>, z.ZodObject<{
843
+ type: z.ZodLiteral<"scroll">;
844
+ axis: z.ZodEnum<{
845
+ x: "x";
846
+ y: "y";
847
+ }>;
848
+ direction: z.ZodEnum<{
849
+ forward: "forward";
850
+ backward: "backward";
851
+ }>;
852
+ item: z.ZodOptional<z.ZodUnion<readonly [z.ZodObject<{
853
+ role: z.ZodOptional<z.ZodString>;
854
+ masked: z.ZodLiteral<true>;
855
+ }, z.core.$strict>, z.ZodObject<{
856
+ testId: z.ZodOptional<z.ZodString>;
857
+ role: z.ZodOptional<z.ZodString>;
858
+ container: z.ZodOptional<z.ZodObject<{
859
+ testId: z.ZodOptional<z.ZodString>;
860
+ name: z.ZodOptional<z.ZodString>;
861
+ role: z.ZodOptional<z.ZodString>;
862
+ index: z.ZodOptional<z.ZodNumber>;
863
+ count: z.ZodOptional<z.ZodNumber>;
864
+ }, z.core.$strict>>;
865
+ screen: z.ZodOptional<z.ZodString>;
866
+ }, z.core.$strict>, z.ZodObject<{
867
+ name: z.ZodString;
868
+ nameFrom: z.ZodEnum<{
869
+ testId: "testId";
870
+ annotation: "annotation";
871
+ accessibility: "accessibility";
872
+ text: "text";
873
+ className: "className";
874
+ }>;
875
+ testId: z.ZodOptional<z.ZodString>;
876
+ role: z.ZodOptional<z.ZodString>;
877
+ container: z.ZodOptional<z.ZodObject<{
878
+ testId: z.ZodOptional<z.ZodString>;
879
+ name: z.ZodOptional<z.ZodString>;
880
+ role: z.ZodOptional<z.ZodString>;
881
+ index: z.ZodOptional<z.ZodNumber>;
882
+ count: z.ZodOptional<z.ZodNumber>;
883
+ }, z.core.$strict>>;
884
+ screen: z.ZodOptional<z.ZodString>;
885
+ }, z.core.$strict>]>>;
886
+ source: z.ZodEnum<{
887
+ app: "app";
888
+ native: "native";
889
+ }>;
890
+ observedAt: z.ZodNumber;
891
+ }, z.core.$strict>, z.ZodObject<{
892
+ type: z.ZodLiteral<"deep_link">;
893
+ url: z.ZodString;
894
+ delivery: z.ZodEnum<{
895
+ initial: "initial";
896
+ subsequent: "subsequent";
897
+ }>;
898
+ source: z.ZodEnum<{
899
+ app: "app";
900
+ native: "native";
901
+ }>;
902
+ observedAt: z.ZodNumber;
903
+ }, z.core.$strict>, z.ZodObject<{
904
+ type: z.ZodLiteral<"permission">;
905
+ permission: z.ZodString;
906
+ phase: z.ZodLiteral<"requested">;
907
+ source: z.ZodEnum<{
908
+ app: "app";
909
+ native: "native";
910
+ }>;
911
+ observedAt: z.ZodNumber;
912
+ }, z.core.$strict>, z.ZodObject<{
913
+ type: z.ZodLiteral<"permission">;
914
+ permission: z.ZodString;
915
+ phase: z.ZodLiteral<"result">;
916
+ result: z.ZodEnum<{
917
+ unknown: "unknown";
918
+ unavailable: "unavailable";
919
+ granted: "granted";
920
+ denied: "denied";
921
+ blocked: "blocked";
922
+ limited: "limited";
923
+ }>;
924
+ source: z.ZodEnum<{
925
+ app: "app";
926
+ native: "native";
927
+ }>;
928
+ observedAt: z.ZodNumber;
929
+ }, z.core.$strict>, z.ZodObject<{
930
+ type: z.ZodLiteral<"launch">;
931
+ start: z.ZodEnum<{
932
+ cold: "cold";
933
+ warm: "warm";
934
+ }>;
935
+ trigger: z.ZodOptional<z.ZodEnum<{
936
+ link: "link";
937
+ notification: "notification";
938
+ }>>;
939
+ arguments: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodNumber, z.ZodBoolean]>>>;
940
+ source: z.ZodEnum<{
941
+ app: "app";
942
+ native: "native";
943
+ }>;
944
+ observedAt: z.ZodNumber;
945
+ }, z.core.$strict>]>;
946
+ type InteractionEvent = z.infer<typeof InteractionEventSchema>;
947
+ declare const InteractionTargetAnnotationSchema: z.ZodObject<{
948
+ reporterTrigger: z.ZodOptional<z.ZodEnum<{
949
+ button: "button";
950
+ menu: "menu";
951
+ }>>;
952
+ testId: z.ZodOptional<z.ZodString>;
953
+ role: z.ZodOptional<z.ZodString>;
954
+ name: z.ZodOptional<z.ZodString>;
955
+ container: z.ZodOptional<z.ZodObject<{
956
+ testId: z.ZodOptional<z.ZodString>;
957
+ name: z.ZodOptional<z.ZodString>;
958
+ role: z.ZodOptional<z.ZodString>;
959
+ index: z.ZodOptional<z.ZodNumber>;
960
+ count: z.ZodOptional<z.ZodNumber>;
961
+ }, z.core.$strict>>;
962
+ }, z.core.$strict>;
963
+ type InteractionTargetAnnotation = z.infer<typeof InteractionTargetAnnotationSchema>;
964
+ declare const VitalsPlayerEventType: z.ZodEnum<{
965
+ error: "error";
966
+ play: "play";
967
+ pause: "pause";
968
+ seek: "seek";
969
+ buffer_start: "buffer_start";
970
+ buffer_end: "buffer_end";
971
+ bitrate_change: "bitrate_change";
972
+ rate_change: "rate_change";
973
+ startup: "startup";
974
+ dropped_frames: "dropped_frames";
975
+ source_change: "source_change";
976
+ player_attach: "player_attach";
977
+ player_detach: "player_detach";
978
+ drm: "drm";
979
+ quality_change: "quality_change";
980
+ stats: "stats";
981
+ }>;
982
+ type VitalsPlayerEventType = z.infer<typeof VitalsPlayerEventType>;
983
+
984
+ /**
985
+ * Resolved by `useEverframe().open()` / top-level `open()`.
986
+ * Mirrors the native NSDictionary / WritableMap shape produced by the iOS
987
+ * (`EverframeBridge.openReporter`) and Android (`EverframeModule.openReporter`)
988
+ * bridges. The `status` field is one of:
989
+ * - 'submitted' — envelope shipped successfully (reportId populated)
990
+ * - 'queued' — envelope persisted for retry (reportId populated)
991
+ * - 'cancelled' — user dismissed the reporter without submitting
992
+ */
993
+ type ReporterResult = {
994
+ status: 'submitted';
995
+ reportId: string;
996
+ } | {
997
+ status: 'queued';
998
+ reportId: string;
999
+ } | {
1000
+ status: 'cancelled';
1001
+ reason?: string;
1002
+ };
1003
+ /**
1004
+ * Thrown when `open()` is called from a top-level (non-component) site
1005
+ * before a `<EverframeProvider>` has mounted. Components reading via
1006
+ * `useEverframe()` see a same-class error.
1007
+ */
1008
+ declare class EverframeNotMountedError extends Error {
1009
+ readonly name = "EverframeNotMountedError";
1010
+ constructor(message?: string);
1011
+ }
1012
+ /**
1013
+ * Rejected by `open()` when the host turned the reporter off
1014
+ * (`reporter: { disabled: true }`, a crash-only session). The session keeps
1015
+ * this for its whole life, including after a companion bond upgrades it:
1016
+ * reports then come through the companion, not through `open()`. Same name
1017
+ * as the web SDK's error of the same purpose.
1018
+ */
1019
+ declare class EverframeReporterDisabledError extends Error {
1020
+ readonly name = "EverframeReporterDisabledError";
1021
+ constructor(message?: string);
1022
+ }
1023
+ /** Explicit entry point attribution; never inferred from display text or a previous key. */
1024
+ type ReporterTrigger = 'button' | 'shake' | 'menu' | 'companion';
1025
+ interface ReporterOpenOptions {
1026
+ trigger?: ReporterTrigger;
1027
+ }
1028
+
1029
+ type RejectionReason = 'none' | 'opt-in-required' | 'crash-reporting-disabled' | 'platform' | 'runtime' | 'promise-identity' | 'hook-shape' | 'hook-install' | 'hook-displaced' | 'no-mount';
1030
+ interface PromiseRejectionCounters {
1031
+ pending: number;
1032
+ accepted: number;
1033
+ cancelled: number;
1034
+ capacityDropped: number;
1035
+ sizeDropped: number;
1036
+ expired: number;
1037
+ duplicateSuppressed: number;
1038
+ allowanceSuppressed: number;
1039
+ nativeRefused: number;
1040
+ captureFailed: number;
1041
+ /** Pending observations released when another owner replaced the hooks. */
1042
+ discarded: number;
1043
+ }
1044
+ interface PromiseRejectionStatus {
1045
+ status: 'disabled' | 'unsupported' | 'observing' | 'displaced' | 'install-failed' | 'not-mounted';
1046
+ reason: RejectionReason;
1047
+ adapterId?: string;
1048
+ previousCallbacksPresent: boolean;
1049
+ counters: PromiseRejectionCounters;
1050
+ }
1051
+
1052
+ interface InteractionPolicyOptions {
1053
+ disabled?: boolean;
1054
+ valueTestIds?: readonly string[];
1055
+ urlRules?: readonly {
1056
+ origin: string;
1057
+ queryKeys?: readonly string[];
1058
+ routes?: readonly string[];
1059
+ literalPaths?: readonly string[];
1060
+ }[];
1061
+ launchArgumentKeys?: readonly string[];
1062
+ }
1063
+
1064
+ /** Legacy helper declarations are accepted for compatibility; native observation retains ownership. */
1065
+ type HelperType = 'text_edit' | 'control_change' | 'scroll';
1066
+ interface InteractionHookOptions {
1067
+ target?: InteractionTargetAnnotation;
1068
+ /** Compatibility only. All helpers remain native-owned regardless of this list. */
1069
+ helperTypes?: readonly HelperType[];
1070
+ }
1071
+ type EventInput<T> = T extends unknown ? Omit<T, 'type' | 'source' | 'observedAt'> : never;
1072
+ type ControlChangeInput = EventInput<Extract<InteractionEvent, {
1073
+ type: 'control_change';
1074
+ }>>;
1075
+ type ScrollInput = EventInput<Extract<InteractionEvent, {
1076
+ type: 'scroll';
1077
+ }>>;
1078
+
1079
+ type PermissionResult = 'granted' | 'denied' | 'blocked' | 'limited' | 'unavailable' | 'unknown';
1080
+ /** With no mapper, accepts only PermissionsAndroid.RESULTS strings. */
1081
+ declare function observePermissionRequest<T>(permission: string, operation: () => Promise<T>, mapResult?: (result: T) => PermissionResult): Promise<T>;
1082
+
1083
+ interface LaunchContext {
1084
+ trigger?: 'link' | 'notification';
1085
+ arguments?: Record<string, string | number | boolean>;
1086
+ }
1087
+ /** Enriches only a still-pending native foreground entry; never creates a launch. */
1088
+ declare function recordLaunchContext(context: LaunchContext): void;
1089
+
1090
+ export { AttachmentRef as A, recordLaunchContext as B, type ControlChangeInput as C, type ErrorCaptureStatus as E, type HelperType as H, type InteractionPolicyOptions as I, type LaunchContext as L, type PromiseRejectionStatus as P, type ReportDeliveryStatus as R, type ScrollInput as S, UINode as U, VitalsPlayerEventType as V, type ReporterOpenOptions as a, type ReporterResult as b, type ReporterTrigger as c, type InteractionTargetAnnotation as d, type InteractionHookOptions as e, type ErrorCaptureCounters as f, type ErrorCaptureOutcome as g, type ErrorCapturePath as h, EverframeNotMountedError as i, EverframeReporterDisabledError as j, type PermissionResult as k, type PromiseRejectionCounters as l, type RejectionReason as m, type ReportCaptureOutcome as n, type ReportCapturePath as o, type ReportCapturePathStatus as p, type ReportDeliveryReason as q, ReportEnvelope as r, type ReportQueueOperation as s, type ReportQueueStatus as t, type ReportStorageFailure as u, type ReportTransportOrigin as v, type ReportTransportOutcome as w, type ReportTransportStatus as x, UITree as y, observePermissionRequest as z };