@analyticscli/sdk 0.1.0-preview.4 → 0.1.0-preview.6
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.
- package/README.md +181 -63
- package/dist/browser.cjs +321 -133
- package/dist/browser.d.cts +1 -1
- package/dist/browser.d.ts +1 -1
- package/dist/browser.js +7 -13
- package/dist/{chunk-UILQQPVJ.js → chunk-RGEYDN6A.js} +318 -127
- package/dist/index.cjs +321 -133
- package/dist/index.d.cts +182 -92
- package/dist/index.d.ts +182 -92
- package/dist/index.js +7 -13
- package/dist/react-native.cjs +321 -133
- package/dist/react-native.d.cts +1 -1
- package/dist/react-native.d.ts +1 -1
- package/dist/react-native.js +7 -13
- package/package.json +1 -1
- package/dist/chunk-CY4KHPLT.js +0 -1455
- package/dist/chunk-NC6ANZ4H.js +0 -1455
- package/dist/chunk-W4RJPJLF.js +0 -1426
- package/dist/chunk-ZIOGPQNP.js +0 -1478
package/dist/index.d.cts
CHANGED
|
@@ -34,30 +34,24 @@ declare const PURCHASE_SUCCESS_EVENT_CANDIDATES: readonly ["purchase:success"];
|
|
|
34
34
|
* Arbitrary key/value payload sent with an event.
|
|
35
35
|
*/
|
|
36
36
|
type EventProperties = Record<string, unknown>;
|
|
37
|
+
type StorageGetItemCallback = (error?: Error | null, value?: string | null) => void;
|
|
38
|
+
type StorageMutationCallback = (error?: Error | null) => void;
|
|
37
39
|
type AnalyticsStorageAdapter = {
|
|
38
40
|
/**
|
|
39
41
|
* Storage APIs can be sync or async.
|
|
40
|
-
* This allows
|
|
42
|
+
* This allows passing AsyncStorage/localStorage directly, or custom adapters.
|
|
41
43
|
*/
|
|
42
|
-
getItem: (key: string) => string | null | Promise<string | null>;
|
|
43
|
-
setItem: (key: string, value: string) => void | Promise<void>;
|
|
44
|
-
removeItem?: (key: string) => void | Promise<void>;
|
|
44
|
+
getItem: (key: string, callback?: StorageGetItemCallback) => string | null | Promise<string | null>;
|
|
45
|
+
setItem: (key: string, value: string, callback?: StorageMutationCallback) => void | Promise<void>;
|
|
46
|
+
removeItem?: (key: string, callback?: StorageMutationCallback) => void | Promise<void>;
|
|
45
47
|
};
|
|
46
48
|
type EventContext = {
|
|
47
49
|
appBuild?: string;
|
|
48
50
|
osName?: string;
|
|
49
51
|
osVersion?: string;
|
|
50
|
-
deviceModel?: string;
|
|
51
|
-
deviceManufacturer?: string;
|
|
52
|
-
deviceType?: string;
|
|
53
|
-
locale?: string;
|
|
54
52
|
country?: string;
|
|
55
53
|
region?: string;
|
|
56
54
|
city?: string;
|
|
57
|
-
timezone?: string;
|
|
58
|
-
networkType?: string;
|
|
59
|
-
carrier?: string;
|
|
60
|
-
installSource?: string;
|
|
61
55
|
};
|
|
62
56
|
type OnboardingEventProperties = EventProperties & {
|
|
63
57
|
isNewUser?: boolean;
|
|
@@ -134,88 +128,115 @@ type PaywallTracker = {
|
|
|
134
128
|
purchaseFailed: (properties?: PaywallTrackerProperties) => void;
|
|
135
129
|
purchaseCancel: (properties?: PaywallTrackerProperties) => void;
|
|
136
130
|
};
|
|
131
|
+
type AnalyticsConsentState = 'granted' | 'denied' | 'unknown';
|
|
132
|
+
type IdentityTrackingMode = 'strict' | 'consent_gated' | 'always_on';
|
|
133
|
+
type SetConsentOptions = {
|
|
134
|
+
/**
|
|
135
|
+
* Whether consent state should be persisted to storage when enabled.
|
|
136
|
+
*/
|
|
137
|
+
persist?: boolean;
|
|
138
|
+
};
|
|
137
139
|
type AnalyticsClientOptions = {
|
|
138
140
|
/**
|
|
139
|
-
*
|
|
141
|
+
* Publishable ingest API key.
|
|
140
142
|
* If omitted, the client becomes a safe no-op until a valid key is provided.
|
|
141
143
|
*/
|
|
142
|
-
apiKey?: string;
|
|
144
|
+
apiKey?: string | null;
|
|
143
145
|
/**
|
|
144
146
|
* Optional collector override reserved for SDK/internal testing.
|
|
145
147
|
* Host app integrations should not set this option.
|
|
146
148
|
*/
|
|
147
|
-
endpoint?: string;
|
|
148
|
-
batchSize?: number;
|
|
149
|
-
flushIntervalMs?: number;
|
|
150
|
-
maxRetries?: number;
|
|
149
|
+
endpoint?: string | null;
|
|
150
|
+
batchSize?: number | null;
|
|
151
|
+
flushIntervalMs?: number | null;
|
|
152
|
+
maxRetries?: number | null;
|
|
151
153
|
/**
|
|
152
154
|
* Enables SDK debug logs (`console.debug`).
|
|
153
155
|
* Defaults to `false`.
|
|
154
156
|
*
|
|
155
157
|
* React Native/Expo recommendation:
|
|
156
|
-
* `debug:
|
|
158
|
+
* `debug: __DEV__`
|
|
157
159
|
*/
|
|
158
|
-
debug?: boolean;
|
|
159
|
-
platform?: string;
|
|
160
|
-
appVersion?: string;
|
|
161
|
-
context?: EventContext;
|
|
160
|
+
debug?: boolean | null;
|
|
162
161
|
/**
|
|
163
|
-
* Optional
|
|
164
|
-
*
|
|
162
|
+
* Optional platform hint.
|
|
163
|
+
* React Native/Expo: passing `Platform.OS` directly is supported.
|
|
165
164
|
*/
|
|
166
|
-
|
|
167
|
-
anonId?: string;
|
|
168
|
-
sessionId?: string;
|
|
169
|
-
sessionTimeoutMs?: number;
|
|
165
|
+
platform?: string | null;
|
|
170
166
|
/**
|
|
171
|
-
*
|
|
172
|
-
*
|
|
167
|
+
* Optional app version hint.
|
|
168
|
+
* Accepts nullable runtime values (for example Expo's `nativeApplicationVersion`).
|
|
173
169
|
*/
|
|
174
|
-
|
|
170
|
+
appVersion?: string | null;
|
|
175
171
|
/**
|
|
176
|
-
* Optional
|
|
177
|
-
*
|
|
172
|
+
* Optional project surface hint to separate product surfaces/channels
|
|
173
|
+
* (for example `landing`, `dashboard`, `app`) from runtime `platform`.
|
|
178
174
|
*/
|
|
179
|
-
|
|
180
|
-
cookieMaxAgeSeconds?: number;
|
|
175
|
+
projectSurface?: string | null;
|
|
181
176
|
/**
|
|
182
|
-
*
|
|
183
|
-
* Defaults to true when `
|
|
177
|
+
* Initial event-collection consent state.
|
|
178
|
+
* Defaults to `true` when `apiKey` is present.
|
|
179
|
+
* Set to `false` to enforce explicit `optIn()` / `setConsent(true)` before event collection.
|
|
184
180
|
*/
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
type InitFromEnvOptions = Omit<AnalyticsClientOptions, 'apiKey'> & {
|
|
181
|
+
initialConsentGranted?: boolean | null;
|
|
182
|
+
/**
|
|
183
|
+
* Controls identity persistence behavior.
|
|
184
|
+
* - `consent_gated` (default): starts in strict mode and enables persistence only after consent
|
|
185
|
+
* - `always_on`: enables persistence immediately
|
|
186
|
+
* - `strict`: disables persistence and identity linkage
|
|
187
|
+
*/
|
|
188
|
+
identityTrackingMode?: IdentityTrackingMode | null;
|
|
194
189
|
/**
|
|
195
|
-
*
|
|
196
|
-
*
|
|
190
|
+
* Boolean shortcut for `identityTrackingMode: 'always_on'`.
|
|
191
|
+
* Kept for host-app ergonomics.
|
|
197
192
|
*/
|
|
198
|
-
|
|
193
|
+
enableFullTrackingWithoutConsent?: boolean | null;
|
|
199
194
|
/**
|
|
200
|
-
*
|
|
195
|
+
* Initial consent state for identity persistence when `identityTrackingMode='consent_gated'`.
|
|
196
|
+
* Defaults to `false`.
|
|
197
|
+
*/
|
|
198
|
+
initialFullTrackingConsentGranted?: boolean | null;
|
|
199
|
+
/**
|
|
200
|
+
* Persist full-tracking consent in configured storage.
|
|
201
201
|
*/
|
|
202
|
-
|
|
202
|
+
persistConsentState?: boolean | null;
|
|
203
203
|
/**
|
|
204
|
-
*
|
|
204
|
+
* Storage key for persisted full-tracking consent state.
|
|
205
|
+
* Defaults to `analyticscli:consent:v1`.
|
|
205
206
|
*/
|
|
206
|
-
|
|
207
|
+
consentStorageKey?: string | null;
|
|
208
|
+
context?: EventContext | null;
|
|
207
209
|
/**
|
|
208
|
-
*
|
|
209
|
-
|
|
210
|
-
|
|
210
|
+
* Optional custom persistence adapter used when identity persistence is active.
|
|
211
|
+
*/
|
|
212
|
+
storage?: AnalyticsStorageAdapter | null;
|
|
213
|
+
/**
|
|
214
|
+
* Optional explicit anonymous device id when identity persistence is active.
|
|
215
|
+
*/
|
|
216
|
+
anonId?: string | null;
|
|
217
|
+
/**
|
|
218
|
+
* Optional explicit session id when identity persistence is active.
|
|
219
|
+
*/
|
|
220
|
+
sessionId?: string | null;
|
|
221
|
+
sessionTimeoutMs?: number | null;
|
|
222
|
+
/**
|
|
223
|
+
* Drops duplicate `onboarding:step_view` events for the same step within one session.
|
|
224
|
+
* This only affects the dedicated onboarding step-view event, not `screen(...)` or paywall events.
|
|
225
|
+
* Defaults to `true`. Set to `false` to disable this behavior.
|
|
211
226
|
*/
|
|
212
|
-
|
|
227
|
+
dedupeOnboardingStepViewsPerSession?: boolean | null;
|
|
213
228
|
/**
|
|
214
|
-
*
|
|
229
|
+
* Cookie domain for optional cookie-backed persistence.
|
|
215
230
|
*/
|
|
216
|
-
|
|
231
|
+
cookieDomain?: string | null;
|
|
232
|
+
cookieMaxAgeSeconds?: number | null;
|
|
233
|
+
/**
|
|
234
|
+
* Enables cookie-backed persistence in browsers.
|
|
235
|
+
*/
|
|
236
|
+
useCookieStorage?: boolean | null;
|
|
217
237
|
};
|
|
218
|
-
type
|
|
238
|
+
type InitOptions = AnalyticsClientOptions;
|
|
239
|
+
type InitInput = InitOptions | string | null | undefined;
|
|
219
240
|
|
|
220
241
|
declare class AnalyticsClient {
|
|
221
242
|
private readonly apiKey;
|
|
@@ -226,10 +247,17 @@ declare class AnalyticsClient {
|
|
|
226
247
|
private readonly maxRetries;
|
|
227
248
|
private readonly debug;
|
|
228
249
|
private readonly platform;
|
|
250
|
+
private readonly projectSurface;
|
|
229
251
|
private readonly appVersion;
|
|
252
|
+
private readonly identityTrackingMode;
|
|
230
253
|
private context;
|
|
231
|
-
private readonly
|
|
232
|
-
private
|
|
254
|
+
private readonly configuredStorage;
|
|
255
|
+
private storage;
|
|
256
|
+
private storageReadsAreAsync;
|
|
257
|
+
private readonly persistConsentState;
|
|
258
|
+
private readonly consentStorageKey;
|
|
259
|
+
private readonly hasExplicitInitialConsent;
|
|
260
|
+
private readonly hasExplicitInitialFullTrackingConsent;
|
|
233
261
|
private readonly sessionTimeoutMs;
|
|
234
262
|
private readonly dedupeOnboardingStepViewsPerSession;
|
|
235
263
|
private readonly runtimeEnv;
|
|
@@ -240,6 +268,7 @@ declare class AnalyticsClient {
|
|
|
240
268
|
private flushTimer;
|
|
241
269
|
private isFlushing;
|
|
242
270
|
private consentGranted;
|
|
271
|
+
private fullTrackingConsentGranted;
|
|
243
272
|
private userId;
|
|
244
273
|
private anonId;
|
|
245
274
|
private sessionId;
|
|
@@ -251,17 +280,18 @@ declare class AnalyticsClient {
|
|
|
251
280
|
private onboardingStepViewsSeen;
|
|
252
281
|
constructor(options: AnalyticsClientOptions);
|
|
253
282
|
/**
|
|
254
|
-
* Resolves once
|
|
255
|
-
* Useful in React Native when using async persistence (for example AsyncStorage).
|
|
283
|
+
* Resolves once client initialization work completes.
|
|
256
284
|
*/
|
|
257
285
|
ready(): Promise<void>;
|
|
258
286
|
/**
|
|
259
287
|
* Enables or disables event collection.
|
|
260
288
|
* When disabled, queued events are dropped immediately.
|
|
261
289
|
*/
|
|
262
|
-
setConsent(granted: boolean): void;
|
|
263
|
-
optIn(): void;
|
|
264
|
-
optOut(): void;
|
|
290
|
+
setConsent(granted: boolean, options?: SetConsentOptions): void;
|
|
291
|
+
optIn(options?: SetConsentOptions): void;
|
|
292
|
+
optOut(options?: SetConsentOptions): void;
|
|
293
|
+
getConsent(): boolean;
|
|
294
|
+
getConsentState(): AnalyticsConsentState;
|
|
265
295
|
/**
|
|
266
296
|
* Sets or updates shared event context fields (useful for mobile device/app metadata).
|
|
267
297
|
*/
|
|
@@ -277,6 +307,14 @@ declare class AnalyticsClient {
|
|
|
277
307
|
* - pass null/undefined/empty string to clear user linkage
|
|
278
308
|
*/
|
|
279
309
|
setUser(userId: string | null | undefined, traits?: EventProperties): void;
|
|
310
|
+
/**
|
|
311
|
+
* Sets consent specifically for persistent identity tracking.
|
|
312
|
+
* In `consent_gated` mode this toggles strict-vs-full identity behavior while generic event tracking can stay enabled.
|
|
313
|
+
*/
|
|
314
|
+
setFullTrackingConsent(granted: boolean, options?: SetConsentOptions): void;
|
|
315
|
+
optInFullTracking(options?: SetConsentOptions): void;
|
|
316
|
+
optOutFullTracking(options?: SetConsentOptions): void;
|
|
317
|
+
isFullTrackingEnabled(): boolean;
|
|
280
318
|
/**
|
|
281
319
|
* Clears the current identified user from in-memory SDK state.
|
|
282
320
|
*/
|
|
@@ -297,6 +335,8 @@ declare class AnalyticsClient {
|
|
|
297
335
|
/**
|
|
298
336
|
* Creates a scoped paywall tracker that applies shared paywall defaults to every journey event.
|
|
299
337
|
* Useful when a flow has a stable `source`, `paywallId`, `offering`, or experiment metadata.
|
|
338
|
+
* Reuse the returned tracker for that flow context; creating a new tracker per event resets
|
|
339
|
+
* paywall entry correlation.
|
|
300
340
|
*/
|
|
301
341
|
createPaywallTracker(defaults: PaywallTrackerDefaults): PaywallTracker;
|
|
302
342
|
/**
|
|
@@ -333,6 +373,10 @@ declare class AnalyticsClient {
|
|
|
333
373
|
private enqueue;
|
|
334
374
|
private scheduleFlush;
|
|
335
375
|
private sendWithRetry;
|
|
376
|
+
private parsePersistedConsent;
|
|
377
|
+
private readPersistedConsentSync;
|
|
378
|
+
private readPersistedConsentAsync;
|
|
379
|
+
private writePersistedConsent;
|
|
336
380
|
private startAutoFlush;
|
|
337
381
|
private ensureDeviceId;
|
|
338
382
|
private ensureSessionId;
|
|
@@ -356,47 +400,93 @@ declare class AnalyticsClient {
|
|
|
356
400
|
private hydrateOnboardingStepViewState;
|
|
357
401
|
private persistOnboardingStepViewState;
|
|
358
402
|
private parseOnboardingStepViewState;
|
|
403
|
+
private resolveIdentityTrackingModeOption;
|
|
404
|
+
private resolveConfiguredStorage;
|
|
405
|
+
private normalizeCookieMaxAgeSeconds;
|
|
406
|
+
private isFullTrackingActive;
|
|
407
|
+
private applyIdentityTrackingState;
|
|
408
|
+
private getEventUserId;
|
|
359
409
|
private withEventContext;
|
|
360
410
|
private normalizeOptions;
|
|
361
411
|
private readRequiredStringOption;
|
|
362
412
|
private normalizePlatformOption;
|
|
413
|
+
private normalizeProjectSurfaceOption;
|
|
363
414
|
private log;
|
|
364
415
|
private reportMissingApiKey;
|
|
365
416
|
}
|
|
366
417
|
|
|
367
|
-
|
|
418
|
+
type ContextClientInput = InitInput | AnalyticsClient | null | undefined;
|
|
419
|
+
type AnalyticsContextConsentControls = {
|
|
420
|
+
get: () => boolean;
|
|
421
|
+
getState: () => AnalyticsConsentState;
|
|
422
|
+
set: (granted: boolean, options?: SetConsentOptions) => void;
|
|
423
|
+
optIn: (options?: SetConsentOptions) => void;
|
|
424
|
+
optOut: (options?: SetConsentOptions) => void;
|
|
425
|
+
setFullTracking: (granted: boolean, options?: SetConsentOptions) => void;
|
|
426
|
+
optInFullTracking: (options?: SetConsentOptions) => void;
|
|
427
|
+
optOutFullTracking: (options?: SetConsentOptions) => void;
|
|
428
|
+
isFullTrackingEnabled: () => boolean;
|
|
429
|
+
};
|
|
430
|
+
type AnalyticsContextUserControls = {
|
|
431
|
+
identify: (userId: string, traits?: EventProperties) => void;
|
|
432
|
+
set: (userId: string | null | undefined, traits?: EventProperties) => void;
|
|
433
|
+
clear: () => void;
|
|
434
|
+
};
|
|
435
|
+
type AnalyticsContext = {
|
|
436
|
+
client: AnalyticsClient;
|
|
437
|
+
onboarding: OnboardingTracker;
|
|
438
|
+
paywall: PaywallTracker | null;
|
|
439
|
+
consent: AnalyticsContextConsentControls;
|
|
440
|
+
user: AnalyticsContextUserControls;
|
|
441
|
+
track: (eventName: string, properties?: EventProperties) => void;
|
|
442
|
+
trackOnboardingEvent: (eventName: OnboardingEventName, properties?: OnboardingEventProperties) => void;
|
|
443
|
+
trackOnboardingSurveyResponse: (input: OnboardingSurveyResponseInput, eventName?: OnboardingSurveyEventName) => void;
|
|
444
|
+
trackPaywallEvent: (eventName: PaywallJourneyEventName, properties: PaywallEventProperties) => void;
|
|
445
|
+
screen: (name: string, properties?: EventProperties) => void;
|
|
446
|
+
page: (name: string, properties?: EventProperties) => void;
|
|
447
|
+
feedback: (message: string, rating?: number, properties?: EventProperties) => void;
|
|
448
|
+
setContext: (context: EventContext) => void;
|
|
449
|
+
createOnboarding: (defaults: OnboardingTrackerDefaults) => OnboardingTracker;
|
|
450
|
+
createPaywall: (defaults: PaywallTrackerDefaults) => PaywallTracker;
|
|
451
|
+
configureOnboarding: (defaults: OnboardingTrackerDefaults) => OnboardingTracker;
|
|
452
|
+
configurePaywall: (defaults: PaywallTrackerDefaults) => PaywallTracker;
|
|
453
|
+
ready: () => Promise<void>;
|
|
454
|
+
flush: () => Promise<void>;
|
|
455
|
+
shutdown: () => void;
|
|
456
|
+
};
|
|
457
|
+
type CreateAnalyticsContextOptions = {
|
|
458
|
+
/**
|
|
459
|
+
* Either an existing client instance or standard `init(...)` input.
|
|
460
|
+
*/
|
|
461
|
+
client?: ContextClientInput;
|
|
462
|
+
/**
|
|
463
|
+
* Defaults used for the exported `context.onboarding` tracker instance.
|
|
464
|
+
*/
|
|
465
|
+
onboarding?: OnboardingTrackerDefaults | null;
|
|
466
|
+
/**
|
|
467
|
+
* Optional defaults used for the exported `context.paywall` tracker instance.
|
|
468
|
+
*/
|
|
469
|
+
paywall?: PaywallTrackerDefaults | null;
|
|
470
|
+
};
|
|
368
471
|
/**
|
|
369
|
-
*
|
|
370
|
-
*
|
|
472
|
+
* Host-app friendly SDK context with low boilerplate and rich defaults.
|
|
473
|
+
* Provides pre-wired onboarding + consent/user controls and optional paywall tracker binding.
|
|
371
474
|
*/
|
|
372
|
-
declare const
|
|
475
|
+
declare const createAnalyticsContext: (options?: CreateAnalyticsContextOptions) => AnalyticsContext;
|
|
373
476
|
|
|
374
477
|
/**
|
|
375
478
|
* Creates a browser analytics client instance.
|
|
376
479
|
*/
|
|
377
480
|
declare const init: (input?: InitInput) => AnalyticsClient;
|
|
378
481
|
/**
|
|
379
|
-
* Creates an analytics client
|
|
380
|
-
*
|
|
381
|
-
*/
|
|
382
|
-
declare const initAsync: (input?: InitInput) => Promise<AnalyticsClient>;
|
|
383
|
-
declare const BROWSER_API_KEY_ENV_KEYS: readonly ["ANALYTICSCLI_WRITE_KEY", "NEXT_PUBLIC_ANALYTICSCLI_WRITE_KEY", "PUBLIC_ANALYTICSCLI_WRITE_KEY", "VITE_ANALYTICSCLI_WRITE_KEY", "EXPO_PUBLIC_ANALYTICSCLI_WRITE_KEY"];
|
|
384
|
-
declare const REACT_NATIVE_API_KEY_ENV_KEYS: readonly ["ANALYTICSCLI_WRITE_KEY", "EXPO_PUBLIC_ANALYTICSCLI_WRITE_KEY"];
|
|
385
|
-
type BrowserInitFromEnvOptions = Omit<InitFromEnvOptions, 'apiKeyEnvKeys'> & {
|
|
386
|
-
apiKeyEnvKeys?: readonly string[];
|
|
387
|
-
};
|
|
388
|
-
type ReactNativeInitFromEnvOptions = Omit<InitFromEnvOptions, 'apiKeyEnvKeys'> & {
|
|
389
|
-
apiKeyEnvKeys?: readonly string[];
|
|
390
|
-
};
|
|
391
|
-
/**
|
|
392
|
-
* Browser-focused env bootstrap.
|
|
393
|
-
* Supports common env prefixes across Next.js, Astro/Vite and Expo web.
|
|
482
|
+
* Creates an analytics client with consent-first defaults.
|
|
483
|
+
* Tracking stays disabled until `optIn()` / `setConsent(true)` is called.
|
|
394
484
|
*/
|
|
395
|
-
declare const
|
|
485
|
+
declare const initConsentFirst: (input?: InitInput) => AnalyticsClient;
|
|
396
486
|
/**
|
|
397
|
-
*
|
|
398
|
-
* Defaults to native-friendly env keys while still allowing explicit overrides.
|
|
487
|
+
* Creates an analytics client and resolves once client initialization completes.
|
|
399
488
|
*/
|
|
400
|
-
declare const
|
|
489
|
+
declare const initAsync: (input?: InitInput) => Promise<AnalyticsClient>;
|
|
490
|
+
declare const initConsentFirstAsync: (input?: InitInput) => Promise<AnalyticsClient>;
|
|
401
491
|
|
|
402
|
-
export { AnalyticsClient, type AnalyticsClientOptions, type
|
|
492
|
+
export { AnalyticsClient, type AnalyticsClientOptions, type AnalyticsConsentState, type AnalyticsContext, type AnalyticsContextConsentControls, type AnalyticsContextUserControls, type AnalyticsStorageAdapter, type CreateAnalyticsContextOptions, type EventContext, type EventProperties, type IdentityTrackingMode, type InitInput, type InitOptions, ONBOARDING_EVENTS, ONBOARDING_PROGRESS_EVENT_ORDER, ONBOARDING_SCREEN_EVENT_PREFIXES, ONBOARDING_SURVEY_EVENTS, type OnboardingEventName, type OnboardingEventProperties, type OnboardingStepTracker, type OnboardingSurveyAnswerType, type OnboardingSurveyEventName, type OnboardingSurveyResponseInput, type OnboardingTracker, type OnboardingTrackerDefaults, type OnboardingTrackerSurveyInput, PAYWALL_ANCHOR_EVENT_CANDIDATES, PAYWALL_EVENTS, PAYWALL_JOURNEY_EVENT_ORDER, PAYWALL_SKIP_EVENT_CANDIDATES, PURCHASE_EVENTS, PURCHASE_SUCCESS_EVENT_CANDIDATES, type PaywallEventName, type PaywallEventProperties, type PaywallJourneyEventName, type PaywallTracker, type PaywallTrackerDefaults, type PaywallTrackerProperties, type PurchaseEventName, type SetConsentOptions, createAnalyticsContext, init, initAsync, initConsentFirst, initConsentFirstAsync };
|