@transcend-io/airgap.js-types 13.0.0 → 14.0.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.
Files changed (123) hide show
  1. package/LICENSE +201 -21
  2. package/dist/index.d.mts +2510 -0
  3. package/dist/index.d.mts.map +1 -0
  4. package/dist/index.mjs +1018 -0
  5. package/dist/index.mjs.map +1 -0
  6. package/package.json +41 -41
  7. package/.yarn/sdks/eslint/package.json +0 -14
  8. package/.yarn/sdks/prettier/package.json +0 -7
  9. package/.yarn/sdks/typescript/package.json +0 -10
  10. package/README.md +0 -12
  11. package/build/constants.d.ts +0 -16
  12. package/build/constants.d.ts.map +0 -1
  13. package/build/constants.js +0 -46
  14. package/build/constants.js.map +0 -1
  15. package/build/core.d.ts +0 -1083
  16. package/build/core.d.ts.map +0 -1
  17. package/build/core.js +0 -226
  18. package/build/core.js.map +0 -1
  19. package/build/enums/browserLanguage.d.ts +0 -311
  20. package/build/enums/browserLanguage.d.ts.map +0 -1
  21. package/build/enums/browserLanguage.js +0 -314
  22. package/build/enums/browserLanguage.js.map +0 -1
  23. package/build/enums/consentExpiry.d.ts +0 -14
  24. package/build/enums/consentExpiry.d.ts.map +0 -1
  25. package/build/enums/consentExpiry.js +0 -16
  26. package/build/enums/consentExpiry.js.map +0 -1
  27. package/build/enums/experience.d.ts +0 -12
  28. package/build/enums/experience.d.ts.map +0 -1
  29. package/build/enums/experience.js +0 -15
  30. package/build/enums/experience.js.map +0 -1
  31. package/build/enums/index.d.ts +0 -7
  32. package/build/enums/index.d.ts.map +0 -1
  33. package/build/enums/index.js +0 -23
  34. package/build/enums/index.js.map +0 -1
  35. package/build/enums/privacyRegime.d.ts +0 -25
  36. package/build/enums/privacyRegime.d.ts.map +0 -1
  37. package/build/enums/privacyRegime.js +0 -29
  38. package/build/enums/privacyRegime.js.map +0 -1
  39. package/build/enums/purpose.d.ts +0 -88
  40. package/build/enums/purpose.d.ts.map +0 -1
  41. package/build/enums/purpose.js +0 -62
  42. package/build/enums/purpose.js.map +0 -1
  43. package/build/enums/viewState.d.ts +0 -197
  44. package/build/enums/viewState.d.ts.map +0 -1
  45. package/build/enums/viewState.js +0 -98
  46. package/build/enums/viewState.js.map +0 -1
  47. package/build/experience.d.ts +0 -63
  48. package/build/experience.d.ts.map +0 -1
  49. package/build/experience.js +0 -136
  50. package/build/experience.js.map +0 -1
  51. package/build/iab.d.ts +0 -320
  52. package/build/iab.d.ts.map +0 -1
  53. package/build/iab.js +0 -188
  54. package/build/iab.js.map +0 -1
  55. package/build/index.d.ts +0 -8
  56. package/build/index.d.ts.map +0 -1
  57. package/build/index.js +0 -24
  58. package/build/index.js.map +0 -1
  59. package/build/mobile.d.ts +0 -44
  60. package/build/mobile.d.ts.map +0 -1
  61. package/build/mobile.js +0 -46
  62. package/build/mobile.js.map +0 -1
  63. package/build/tsbuildinfo +0 -1
  64. package/build/ui.d.ts +0 -645
  65. package/build/ui.d.ts.map +0 -1
  66. package/build/ui.js +0 -159
  67. package/build/ui.js.map +0 -1
  68. package/build-esm/constants.d.ts +0 -16
  69. package/build-esm/constants.d.ts.map +0 -1
  70. package/build-esm/constants.js +0 -43
  71. package/build-esm/constants.js.map +0 -1
  72. package/build-esm/core.d.ts +0 -1083
  73. package/build-esm/core.d.ts.map +0 -1
  74. package/build-esm/core.js +0 -200
  75. package/build-esm/core.js.map +0 -1
  76. package/build-esm/enums/browserLanguage.d.ts +0 -311
  77. package/build-esm/enums/browserLanguage.d.ts.map +0 -1
  78. package/build-esm/enums/browserLanguage.js +0 -311
  79. package/build-esm/enums/browserLanguage.js.map +0 -1
  80. package/build-esm/enums/consentExpiry.d.ts +0 -14
  81. package/build-esm/enums/consentExpiry.d.ts.map +0 -1
  82. package/build-esm/enums/consentExpiry.js +0 -13
  83. package/build-esm/enums/consentExpiry.js.map +0 -1
  84. package/build-esm/enums/experience.d.ts +0 -12
  85. package/build-esm/enums/experience.d.ts.map +0 -1
  86. package/build-esm/enums/experience.js +0 -12
  87. package/build-esm/enums/experience.js.map +0 -1
  88. package/build-esm/enums/index.d.ts +0 -7
  89. package/build-esm/enums/index.d.ts.map +0 -1
  90. package/build-esm/enums/index.js +0 -7
  91. package/build-esm/enums/index.js.map +0 -1
  92. package/build-esm/enums/privacyRegime.d.ts +0 -25
  93. package/build-esm/enums/privacyRegime.d.ts.map +0 -1
  94. package/build-esm/enums/privacyRegime.js +0 -26
  95. package/build-esm/enums/privacyRegime.js.map +0 -1
  96. package/build-esm/enums/purpose.d.ts +0 -88
  97. package/build-esm/enums/purpose.d.ts.map +0 -1
  98. package/build-esm/enums/purpose.js +0 -59
  99. package/build-esm/enums/purpose.js.map +0 -1
  100. package/build-esm/enums/viewState.d.ts +0 -197
  101. package/build-esm/enums/viewState.d.ts.map +0 -1
  102. package/build-esm/enums/viewState.js +0 -95
  103. package/build-esm/enums/viewState.js.map +0 -1
  104. package/build-esm/experience.d.ts +0 -63
  105. package/build-esm/experience.d.ts.map +0 -1
  106. package/build-esm/experience.js +0 -132
  107. package/build-esm/experience.js.map +0 -1
  108. package/build-esm/iab.d.ts +0 -320
  109. package/build-esm/iab.d.ts.map +0 -1
  110. package/build-esm/iab.js +0 -162
  111. package/build-esm/iab.js.map +0 -1
  112. package/build-esm/index.d.ts +0 -8
  113. package/build-esm/index.d.ts.map +0 -1
  114. package/build-esm/index.js +0 -8
  115. package/build-esm/index.js.map +0 -1
  116. package/build-esm/mobile.d.ts +0 -44
  117. package/build-esm/mobile.d.ts.map +0 -1
  118. package/build-esm/mobile.js +0 -20
  119. package/build-esm/mobile.js.map +0 -1
  120. package/build-esm/ui.d.ts +0 -645
  121. package/build-esm/ui.d.ts.map +0 -1
  122. package/build-esm/ui.js +0 -133
  123. package/build-esm/ui.js.map +0 -1
@@ -0,0 +1,2510 @@
1
+ import * as _transcend_io_type_utils0 from "@transcend-io/type-utils";
2
+ import { ObjByString } from "@transcend-io/type-utils";
3
+ import * as t from "io-ts";
4
+ import { IsoCountryCode } from "@transcend-io/privacy-types";
5
+ import { ConsentManagerSupportedTranslationValue, LocaleValue } from "@transcend-io/internationalization";
6
+
7
+ //#region src/core.d.ts
8
+ /** Transcend logger items */
9
+ type LogItem = {
10
+ /** Log item content */content: any; /** Log item styles */
11
+ styles: string[];
12
+ };
13
+ /** Transcend logger entry tag */
14
+ type LogTag = LogItem & {
15
+ /** Log tag content must be a string */content: string; /** Log tags must have only one style */
16
+ styles: string[1];
17
+ };
18
+ /** Transcend logger entry message */
19
+ type LogMessage = LogItem;
20
+ /** Console-safe log levels */
21
+ declare const ConsoleSafeLogLevel: t.KeyofC<{
22
+ info: null;
23
+ log: null;
24
+ warn: null;
25
+ debug: null;
26
+ error: null;
27
+ trace: null;
28
+ group: null;
29
+ groupCollapsed: null;
30
+ groupEnd: null;
31
+ }>;
32
+ /** Override type */
33
+ type ConsoleSafeLogLevel = t.TypeOf<typeof ConsoleSafeLogLevel>;
34
+ /** Airgap log levels */
35
+ declare const LogLevel: t.UnionC<[t.KeyofC<{
36
+ info: null;
37
+ log: null;
38
+ warn: null;
39
+ debug: null;
40
+ error: null;
41
+ trace: null;
42
+ group: null;
43
+ groupCollapsed: null;
44
+ groupEnd: null;
45
+ }>, t.LiteralC<"fatal">]>;
46
+ /** Override type */
47
+ type LogLevel = t.TypeOf<typeof LogLevel>;
48
+ /** Airgap logger entry types */
49
+ type LogEntryType = LogLevel;
50
+ /** Airgap logger entries */
51
+ type LogEntry = {
52
+ /** Log entry tag */tag: LogTag; /** Log entry message */
53
+ message: LogMessage;
54
+ };
55
+ /**
56
+ * Log emitter function
57
+ */
58
+ type LogEmitter = {
59
+ /** Styled log emitter function */styled(styles?: null | string | string[], ...entries: any[]): void;
60
+ } & ((...entries: any[]) => void);
61
+ /** Transcend Logger API */
62
+ type Logger = {
63
+ /**
64
+ * Set log tag during callback execution or from
65
+ * this point on if no callback is provided.
66
+ */
67
+ tag(logTag: string, callback?: () => any): void;
68
+ } & { [method in LogLevel]: LogEmitter };
69
+ /** AirgapAuth auth options */
70
+ type AirgapAuthMap = {
71
+ /** A `load` event from a just-loaded airgap.js script element (which implies auth by being loaded before airgap.js) */load?: Event; /** A user-initiated interaction event that was just dispatched. */
72
+ interaction?: Event; /** Automatically reload the page if needed to remove CSP. `false` by default. */
73
+ autoReload?: boolean;
74
+ /**
75
+ * Additional authorization key automatically conferred by airgap.js via setAuth() API for UI modules.
76
+ * Required when optional strict authorization mode is enabled.
77
+ */
78
+ key?: symbol;
79
+ };
80
+ /** Airgap authorization proof */
81
+ type AirgapAuth = null | AirgapAuthMap
82
+ /**
83
+ * A user-initiated interaction event that was just dispatched, or
84
+ * a `load` event from a just-loaded airgap.js script element (which implies auth by being loaded before airgap.js).
85
+ */
86
+ | Event;
87
+ /** A boolean value represented as either `'on'` or `'off'` */
88
+ declare const BooleanString: t.KeyofC<{
89
+ on: null;
90
+ off: null;
91
+ }>;
92
+ /** Type override */
93
+ type BooleanString = t.TypeOf<typeof BooleanString>;
94
+ /** Data privacy legal regimes */
95
+ type PrivacyRegime = string;
96
+ interface GetPurposeTypesOptions {
97
+ /** Regimes to include */
98
+ regimes?: PrivacyRegime[];
99
+ /** Privacy signals to include */
100
+ signals?: UserPrivacySignal[];
101
+ }
102
+ /**
103
+ * Regime to purpose scope map
104
+ */
105
+ type RegimeToPurposeScopes = [PrivacyRegime[], TrackingPurpose[]][];
106
+ /** Reserved metadata, currently used for airgap module data syncing */
107
+ interface ReservedMetadata {
108
+ /** Top-level key to avoid polluting the metadata key space */
109
+ tcmp?: Record<string, unknown>;
110
+ }
111
+ /**
112
+ * Extra metadata to be synced along with consent
113
+ */
114
+ type Metadata = Record<string, unknown>;
115
+ /** setConsent() options */
116
+ interface ConsentOptions {
117
+ /** Was consent confirmed by the user? */
118
+ confirmed?: boolean;
119
+ /**
120
+ * Was the UI shown to the user?
121
+ * @deprecated It was discovered that this value was not being set reliably in some versions, and was not being used.
122
+ */
123
+ prompted?: boolean;
124
+ /**
125
+ * Extra metadata to be synced along with consent
126
+ *
127
+ * Special values:
128
+ * - `null` - Do not change metadata
129
+ * - `false` - Clear metadata
130
+ */
131
+ metadata?: (Metadata & ReservedMetadata) | null | false;
132
+ /** Last updated for metadata */
133
+ metadataTimestamp?: string;
134
+ /** Whether or not to return a Promise so that the caller can wait for sync to complete. By default, we do not wait for sync */
135
+ waitForSync?: boolean;
136
+ /** Last updated */
137
+ timestamp?: string;
138
+ }
139
+ /** airgap.toggle() options */
140
+ type AirgapToggleOptions = /** Protection state */boolean | {
141
+ /** Protection state */protection?: boolean;
142
+ };
143
+ /** airgap.status format */
144
+ interface AirgapSystemStatus {
145
+ /** Protection system active state */
146
+ protection: boolean;
147
+ /** Have any CSPs been activated? */
148
+ csp: boolean;
149
+ /** Monitoring system active state */
150
+ monitoring: boolean;
151
+ /** Telemetry system active state */
152
+ telemetry: boolean;
153
+ }
154
+ /**
155
+ * Request override config
156
+ */
157
+ interface RequestOverride {
158
+ /** Optional tracking purposes to gate the override with lack of consent */
159
+ unconsented?: TrackingPurpose[];
160
+ /**
161
+ * Optional request matcher. This is a RegExp object (or string input
162
+ * for the RegExp constructor). Overrides apply to all requests
163
+ * when this is undefined.
164
+ */
165
+ matcher?: RegExp | string;
166
+ /** Override executor function or replacement string */
167
+ override: string | ((request: IPendingEvent, matcher?: RegExp) => void);
168
+ /** Name */
169
+ name?: string;
170
+ /** Note */
171
+ note?: string;
172
+ /** Description */
173
+ description?: string;
174
+ }
175
+ /** Airgap watcher */
176
+ type AirgapWatcher = (request: IPendingEvent) => void;
177
+ /**
178
+ * Cookie override handler. This function can modify attempted cookie mutations.
179
+ */
180
+ type CookieOverride = (event: IPendingCookieMutation) => void;
181
+ /**
182
+ * Passive cookie watcher. This function can view attempted cookie mutations in a read-only state.
183
+ */
184
+ type CookieWatcher = (event: IPendingCookieMutation) => void;
185
+ /** Event types (for purpose resolution) */
186
+ type TrackingEventType = 'request' | 'cookie';
187
+ /** Airgap sync types */
188
+ type AirgapSyncType = 'consent' | 'quarantine';
189
+ /** airgap.sync() options */
190
+ interface SyncOptions {
191
+ /** types of data to sync */
192
+ sync?: AirgapSyncType[];
193
+ /** reset synchronized data (default: false) */
194
+ reset?: boolean;
195
+ /** sync locally (i.e. XDI) */
196
+ local?: boolean;
197
+ /** sync with remote endpoint */
198
+ backend?: boolean;
199
+ /** signed authentication token to link consent with encrypted identifier */
200
+ auth?: string;
201
+ }
202
+ /** airgap.js API */
203
+ type AirgapAPI = Readonly<{
204
+ /** Embedded request watchers */watchers?: AirgapWatcher[]; /** Embedded request overrides (must specify pre-init) */
205
+ overrides?: RequestOverride[]; /** Embedded request overrides (must specify pre-init) */
206
+ cookieOverrides?: CookieOverride[]; /** Airgap ready event subscriber */
207
+ ready(callback: (airgap: AirgapAPI) => void): void; /** Queue of callbacks to dispatch once airgap is ready */
208
+ readyQueue?: ((airgap: AirgapAPI) => void)[]; /** Enqueue cross-domain data sync across all airgap bundle domains */
209
+ sync(options?: SyncOptions): Promise<void>;
210
+ /**
211
+ * Resolve URL input reserialization post-regulation.
212
+ * @param resolveOverrides - Resolve overrides. Defaults to true.
213
+ */
214
+ resolve(url: Stringifiable, resolveOverrides?: boolean): Stringifiable;
215
+ /**
216
+ * Resolve consent status for given tracking purposes. Essential purposes override opted out unessential purposes.
217
+ *
218
+ * If `use` is not provided, consent is resolved for both request and cookie tracking event types.
219
+ * @param trackingPurposes - Tracking purposes to resolve
220
+ * @param use - Optional event type to use for tracking purpose resolution
221
+ * @returns `true` if the applicable tracking purposes are consented.
222
+ */
223
+ isConsented(trackingPurposes: TrackingPurposes, use?: TrackingEventType): boolean; /** Get tracking consent */
224
+ getConsent(): TrackingConsentDetails; /** Set tracking consent */
225
+ setConsent(/** Airgap auth proof */
226
+
227
+ auth: AirgapAuth, /** The tracking consent options. */
228
+
229
+ consent: TrackingConsent, /** Consent options */
230
+
231
+ options?: ConsentOptions): Promise<boolean> | boolean;
232
+ /**
233
+ * Sets whether or not the Consent UI has been shown to the user
234
+ * @deprecated It was discovered that this function was not working reliably in some versions, and that the value it set was not being used.
235
+ */
236
+ setPrompted(state: boolean): Promise<void>; /** Consents the user to all tracking purposes (requires recent UI interaction) */
237
+ optIn(/** Airgap auth proof */
238
+
239
+ auth: AirgapAuth): boolean; /** Revokes consent for all tracking purposes (requires recent UI interaction) */
240
+ optOut(/** Airgap auth proof */
241
+
242
+ auth: AirgapAuth): boolean; /** Returns true if the user is fully-opted in to all first-order tracking purposes */
243
+ isOptedIn(): boolean; /** Returns true if the user is fully-opted out to all first-order tracking purposes */
244
+ isOptedOut(): boolean; /** Resolve regime tracking purposes. If no regimes are provided, then the user's detected regimes are used */
245
+ getRegimePurposes(regimes?: Set<PrivacyRegime>): Set<TrackingPurpose>; /** Get initialized tracking purposes config */
246
+ getPurposeTypes(): TrackingPurposesTypes; /** Override pending requests */
247
+ override(auth: AirgapAuth, ...overrides: RequestOverride[]): Removable; /** Override cookies */
248
+ overrideCookies(auth: AirgapAuth, handler: (event: IPendingCookieMutation) => void): Removable; /** Listen to pending requests passively */
249
+ watch(watcher: AirgapWatcher): Removable; /** Listen to cookies passively */
250
+ watchCookies(watcher: CookieWatcher): Removable; /** Clear airgap queue & caches. Returns `true` on success. */
251
+ clear(auth: AirgapAuth): boolean; /** Reset airgap queue and consent. Returns `true` on success. */
252
+ reset(/** An airgap auth proof */
253
+
254
+ auth: AirgapAuth, /** Automatically reload the page if needed to remove CSP. */
255
+
256
+ autoReload?: boolean): boolean; /** Check whether a URL is allowed to be loaded */
257
+ isAllowed(/** URL to evaluate */
258
+
259
+ url: Stringifiable, /** Should overrides be resolved? true by default */
260
+
261
+ resolveOverrides?: boolean): Promise<boolean>; /** Check whether a cookie is allowed to be set */
262
+ isCookieAllowed(/** IPendingCookieMutation-like object to evaluate */
263
+
264
+ cookie: string | IPendingCookieMutation | PendingCookieMutationInit, /** Should overrides be resolved? true by default */
265
+
266
+ resolveOverrides?: boolean): Promise<boolean>; /** Check whether a IPendingRequest is allowed to be loaded */
267
+ isRequestAllowed(/** IPendingEvent to inspect */
268
+
269
+ request: IPendingEvent, /** Should overrides be resolved? true by default */
270
+
271
+ resolveOverrides?: boolean): Promise<boolean>; /** Get purposes of URL */
272
+ getPurposes(/** URL to evaluate */
273
+
274
+ url: Stringifiable, /** Should overrides be resolved? true by default */
275
+
276
+ resolveOverrides?: boolean): Promise<TrackingPurposes>; /** Get purposes of IPendingRequest */
277
+ getRequestPurposes(/** IPendingEvent-like object to inspect */
278
+
279
+ request: string | IPendingEvent | PendingRequestInit, /** Should overrides be resolved? true by default */
280
+
281
+ resolveOverrides?: boolean): Promise<TrackingPurposes>; /** Get purposes of a cookie */
282
+ getCookiePurposes(/** IPendingCookieMutation-like object to evaluate */
283
+
284
+ cookie: string | IPendingCookieMutation | PendingCookieMutationInit, /** Should overrides be resolved? true by default */
285
+
286
+ resolveOverrides?: boolean): Promise<TrackingPurposes>; /** Export queues */
287
+ export(options?: AirgapExportOptions): AirgapQueues; /** Get a list of legal regimes that are potentially applicable to the user */
288
+ getRegimes(): Set<PrivacyRegime>; /** Get a list of detected active user agent privacy signals */
289
+ getPrivacySignals(): Set<UserPrivacySignal>; /** Toggle all airgap.js protections. Auth must be a pre-airgap.js or airgap.js script 'load' event. Returns success status */
290
+ toggle(auth: AirgapAuth, options?: AirgapToggleOptions): boolean; /** Current airgap.js system flags */
291
+ status: AirgapSystemStatus; /** airgap.js version number */
292
+ version: string; /** override the event listener signature for consent change events */
293
+ addEventListener: (type: AirgapConsentEventType, callback: ((evt: ConsentChangeEventPayload) => void) | null, options?: boolean | AddEventListenerOptions | undefined) => void;
294
+ }> & EventTarget;
295
+ /** airgap.export() options */
296
+ interface AirgapExportOptions {
297
+ /** Send output to web endpoint */
298
+ endpoint?: string;
299
+ /** JSON pretty-print indentation (default: 0) */
300
+ space?: number;
301
+ /** Save output to disk (default: off) */
302
+ save?: boolean;
303
+ /** Filename for saving to disk */
304
+ filename?: string;
305
+ }
306
+ /** Exported airgap queues & consent */
307
+ type AirgapQueues = Readonly<{
308
+ /** airgap.js version number */version: string; /** Current user consent details */
309
+ consent: TrackingConsentDetails; /** Navigation page URL */
310
+ url: Stringifiable; /** Pending requests */
311
+ requests: PendingRequestDescriptor[]; /** Pending mutations (same-session-only replay) */
312
+ mutations: PendingMutationDescriptor[]; /** Pending cookies */
313
+ cookies: PendingCookieMutationDescriptor[]; /** Pending cookies (same-session-only replay) */
314
+ cookieMutations: PendingCookieMutationDescriptor[]; /** Sent requests */
315
+ sentRequests?: PendingRequestDescriptor[]; /** Set cookies */
316
+ setCookies?: PendingCookieMutationDescriptor[];
317
+ }>;
318
+ /**
319
+ * Airgap event types that send the ConsentChangeEventDetails object with them
320
+ */
321
+ type AirgapConsentEventType = 'consent-change' | 'sync' | 'consent-resolution';
322
+ /**
323
+ * airgap.js event type
324
+ */
325
+ type AirgapEventType = AirgapConsentEventType | 'purpose-map-load';
326
+ interface ConsentChangeEventPayload {
327
+ /** consent change event details */
328
+ detail: ConsentChangeEventDetails;
329
+ }
330
+ /** 'consent-change' custom event details */
331
+ type ConsentChangeEventDetails = {
332
+ /** The old tracking consent */oldConsent: TrackingConsentDetails | null; /** The new tracking consent */
333
+ consent: TrackingConsentDetails | null; /** The tracking consent diff (what's changed in the new consent) */
334
+ changes: Record<string, boolean> | null; /** Applicable privacy signals contributing to this consent change event */
335
+ signals?: Set<UserPrivacySignal> | null;
336
+ };
337
+ /** Removable process (can remove watchers, overrides, and protections) */
338
+ type Removable = {
339
+ /** Remove/revoke process */remove(): void;
340
+ };
341
+ /** Any value which implements `toString()` */
342
+ type Stringifiable = string | (string & {
343
+ toString(): string;
344
+ });
345
+ /** Special `defaultConsent` automatic opt-out value for any potential reason */
346
+ declare const AutoOptOut: t.LiteralC<"Auto">;
347
+ /** Type override */
348
+ type AutoOptOut = t.TypeOf<typeof AutoOptOut>;
349
+ /** Special `defaultConsent` automatic opt-out value for GDPR-protected users */
350
+ declare const AutoOptOutForGDPR: t.LiteralC<"AutoGDPR">;
351
+ /** Type override */
352
+ type AutoOptOutForGDPR = t.TypeOf<typeof AutoOptOutForGDPR>;
353
+ /**
354
+ * Special `defaultConsent` automatic opt-out value for users with DNT enabled.
355
+ * Note that DNT is enabled by default for some browsers.
356
+ */
357
+ declare const AutoOptOutForDNT: t.LiteralC<"AutoDNT">;
358
+ /** Type override */
359
+ type AutoOptOutForDNT = t.TypeOf<typeof AutoOptOutForDNT>;
360
+ /**
361
+ * Special `defaultConsent` automatic opt-out value for users with GPC enabled.
362
+ */
363
+ declare const AutoOptOutForGPC: t.LiteralC<"AutoGPC">;
364
+ /** Type override */
365
+ type AutoOptOutForGPC = t.TypeOf<typeof AutoOptOutForGPC>;
366
+ /** Potential values for `defaultConsent` config token list */
367
+ declare const DefaultConsentConfigValue: t.UnionC<[t.BooleanC, t.LiteralC<"Auto">, t.LiteralC<"AutoGDPR">, t.LiteralC<"AutoDNT">, t.LiteralC<"AutoGPC">, t.KeyofC<{
368
+ on: null;
369
+ off: null;
370
+ }>]>;
371
+ /** Type override */
372
+ type DefaultConsentConfigValue = t.TypeOf<typeof DefaultConsentConfigValue>;
373
+ /** User-configurable user agent privacy signal */
374
+ declare const UserPrivacySignal: t.UnionC<[t.LiteralC<"GPC">, t.LiteralC<"DNT">]>;
375
+ /** type overload */
376
+ type UserPrivacySignal = t.TypeOf<typeof UserPrivacySignal>;
377
+ /** Tracking purpose metadata */
378
+ declare const TrackingPurposeDetails: t.IntersectionC<[t.TypeC<{
379
+ /** Tracking purpose name */name: t.StringC; /** Tracking purpose description (used in Consent Manager UI) */
380
+ description: t.StringC; /** Tracking purpose default consent (default: false) */
381
+ defaultConsent: t.UnionC<[t.BooleanC, t.LiteralC<"Auto">, t.LiteralC<"AutoGDPR">, t.LiteralC<"AutoDNT">, t.LiteralC<"AutoGPC">, t.KeyofC<{
382
+ on: null;
383
+ off: null;
384
+ }>]>;
385
+ /**
386
+ * Is this a first-order tracking purpose? If false, this is a
387
+ * second-order tracking purpose that should only be used for
388
+ * request overrides.
389
+ *
390
+ * This parameter previously meant:
391
+ * Show tracking purpose in consent manager UI.
392
+ *
393
+ * Default value: true
394
+ */
395
+ showInConsentManager: t.BooleanC; /** Allow user to configure their consent for this purpose (default: true) */
396
+ configurable: t.BooleanC; /** Is tracking purpose "essential" - i.e. consent is mandatory / equivalent to 'essential' permission (default: false) */
397
+ essential: t.BooleanC;
398
+ }>, t.PartialC<{
399
+ /** Tracking type */trackingType: t.StringC; /** Respected opt-out privacy signals */
400
+ optOutSignals: t.ArrayC<t.UnionC<[t.LiteralC<"GPC">, t.LiteralC<"DNT">]>>;
401
+ }>]>;
402
+ /** Type override */
403
+ type TrackingPurposeDetails = t.TypeOf<typeof TrackingPurposeDetails>;
404
+ /** Tracking purposes types configuration */
405
+ declare const TrackingPurposesTypes: t.RecordC<t.StringC, t.IntersectionC<[t.TypeC<{
406
+ /** Tracking purpose name */name: t.StringC; /** Tracking purpose description (used in Consent Manager UI) */
407
+ description: t.StringC; /** Tracking purpose default consent (default: false) */
408
+ defaultConsent: t.UnionC<[t.BooleanC, t.LiteralC<"Auto">, t.LiteralC<"AutoGDPR">, t.LiteralC<"AutoDNT">, t.LiteralC<"AutoGPC">, t.KeyofC<{
409
+ on: null;
410
+ off: null;
411
+ }>]>;
412
+ /**
413
+ * Is this a first-order tracking purpose? If false, this is a
414
+ * second-order tracking purpose that should only be used for
415
+ * request overrides.
416
+ *
417
+ * This parameter previously meant:
418
+ * Show tracking purpose in consent manager UI.
419
+ *
420
+ * Default value: true
421
+ */
422
+ showInConsentManager: t.BooleanC; /** Allow user to configure their consent for this purpose (default: true) */
423
+ configurable: t.BooleanC; /** Is tracking purpose "essential" - i.e. consent is mandatory / equivalent to 'essential' permission (default: false) */
424
+ essential: t.BooleanC;
425
+ }>, t.PartialC<{
426
+ /** Tracking type */trackingType: t.StringC; /** Respected opt-out privacy signals */
427
+ optOutSignals: t.ArrayC<t.UnionC<[t.LiteralC<"GPC">, t.LiteralC<"DNT">]>>;
428
+ }>]>>;
429
+ /** Type override */
430
+ type TrackingPurposesTypes = t.TypeOf<typeof TrackingPurposesTypes>;
431
+ /** Fully-resolved `defaultConsent` config */
432
+ declare const DefaultConsentConfig: t.RecordC<t.StringC, t.UnionC<[t.BooleanC, t.LiteralC<"Auto">, t.LiteralC<"AutoGDPR">, t.LiteralC<"AutoDNT">, t.LiteralC<"AutoGPC">, t.KeyofC<{
433
+ on: null;
434
+ off: null;
435
+ }>]>>;
436
+ /** Type override */
437
+ type DefaultConsentConfig = t.TypeOf<typeof DefaultConsentConfig>;
438
+ /** Tracking purposes configuration */
439
+ declare const TrackingPurposesConfig: t.IntersectionC<[t.TypeC<{
440
+ /** Inherit default tracking purposes config */useDefault: t.BooleanC;
441
+ types: t.RecordC<t.StringC, t.IntersectionC<[t.TypeC<{
442
+ /** Tracking purpose name */name: t.StringC; /** Tracking purpose description (used in Consent Manager UI) */
443
+ description: t.StringC; /** Tracking purpose default consent (default: false) */
444
+ defaultConsent: t.UnionC<[t.BooleanC, t.LiteralC<"Auto">, t.LiteralC<"AutoGDPR">, t.LiteralC<"AutoDNT">, t.LiteralC<"AutoGPC">, t.KeyofC<{
445
+ on: null;
446
+ off: null;
447
+ }>]>;
448
+ /**
449
+ * Is this a first-order tracking purpose? If false, this is a
450
+ * second-order tracking purpose that should only be used for
451
+ * request overrides.
452
+ *
453
+ * This parameter previously meant:
454
+ * Show tracking purpose in consent manager UI.
455
+ *
456
+ * Default value: true
457
+ */
458
+ showInConsentManager: t.BooleanC; /** Allow user to configure their consent for this purpose (default: true) */
459
+ configurable: t.BooleanC; /** Is tracking purpose "essential" - i.e. consent is mandatory / equivalent to 'essential' permission (default: false) */
460
+ essential: t.BooleanC;
461
+ }>, t.PartialC<{
462
+ /** Tracking type */trackingType: t.StringC; /** Respected opt-out privacy signals */
463
+ optOutSignals: t.ArrayC<t.UnionC<[t.LiteralC<"GPC">, t.LiteralC<"DNT">]>>;
464
+ }>]>>;
465
+ }>, t.PartialC<{
466
+ defaultConsent: t.UnionC<[t.UnionC<[t.BooleanC, t.LiteralC<"Auto">, t.LiteralC<"AutoGDPR">, t.LiteralC<"AutoDNT">, t.LiteralC<"AutoGPC">, t.KeyofC<{
467
+ on: null;
468
+ off: null;
469
+ }>]>, t.RecordC<t.StringC, t.UnionC<[t.BooleanC, t.LiteralC<"Auto">, t.LiteralC<"AutoGDPR">, t.LiteralC<"AutoDNT">, t.LiteralC<"AutoGPC">, t.KeyofC<{
470
+ on: null;
471
+ off: null;
472
+ }>]>>]>;
473
+ }>]>;
474
+ /** Type override */
475
+ type TrackingPurposesConfig = {
476
+ /** Inherit default tracking purposes config (Functional, Advertising, Analytics) */useDefault: boolean; /** Tracking purpose types */
477
+ types: TrackingPurposesTypes; /** Default consent states (takes precedence over `TrackingPurposesTypes[purpose].defaultConsent`) */
478
+ defaultConsent?: DefaultConsentConfigValue | DefaultConsentConfig;
479
+ };
480
+ declare const TrackingConsent: t.IntersectionC<[t.PartialC<{
481
+ Essential: t.LiteralC<true>;
482
+ Unknown: t.LiteralC<false>;
483
+ }>, t.RecordC<t.StringC, t.UnionC<[t.BooleanC, t.StringC, t.UndefinedC]>>]>;
484
+ /**
485
+ * Type override
486
+ */
487
+ type TrackingConsent = t.TypeOf<typeof TrackingConsent>;
488
+ declare const TrackingConsentWithNulls: t.RecordC<t.StringC, t.UnionC<[t.BooleanC, t.UndefinedC, t.NullC]>>;
489
+ /** Type override */
490
+ type TrackingConsentWithNulls = t.TypeOf<typeof TrackingConsentWithNulls>;
491
+ declare const CoreTrackingConsentDetails: t.IntersectionC<[t.TypeC<{
492
+ /**
493
+ * Was tracking consent confirmed by the user?
494
+ * If this is false, the consent was resolved from defaults & is not yet confirmed
495
+ */
496
+ confirmed: t.BooleanC; /** Consent resolution/last-modified timestamp (ISO 8601) */
497
+ timestamp: t.StringC;
498
+ }>, t.PartialC<{
499
+ /** Has the consent been updated (including no-change confirmation) since default resolution */updated: t.BooleanC;
500
+ /**
501
+ * Whether or not the UI has been shown to the end-user (undefined in older versions of airgap.js)
502
+ * @deprecated It was discovered that this value was not being set reliably in some versions, and was not being used.
503
+ */
504
+ prompted: t.BooleanC; /** Arbitrary metadata that customers want to be associated with consent state */
505
+ metadata: t.IntersectionC<[t.PartialC<{
506
+ tcmp: t.PartialC<{
507
+ tcf: t.PartialC<{
508
+ tcString: t.StringC;
509
+ }>;
510
+ }>;
511
+ }>, t.UnknownRecordC]>; /** When the metadata was last updated */
512
+ metadataTimestamp: t.StringC;
513
+ }>]>;
514
+ /** Type override */
515
+ type CoreTrackingConsentDetails = t.TypeOf<typeof CoreTrackingConsentDetails>;
516
+ declare const TrackingConsentDetails: t.IntersectionC<[t.IntersectionC<[t.TypeC<{
517
+ /**
518
+ * Was tracking consent confirmed by the user?
519
+ * If this is false, the consent was resolved from defaults & is not yet confirmed
520
+ */
521
+ confirmed: t.BooleanC; /** Consent resolution/last-modified timestamp (ISO 8601) */
522
+ timestamp: t.StringC;
523
+ }>, t.PartialC<{
524
+ /** Has the consent been updated (including no-change confirmation) since default resolution */updated: t.BooleanC;
525
+ /**
526
+ * Whether or not the UI has been shown to the end-user (undefined in older versions of airgap.js)
527
+ * @deprecated It was discovered that this value was not being set reliably in some versions, and was not being used.
528
+ */
529
+ prompted: t.BooleanC; /** Arbitrary metadata that customers want to be associated with consent state */
530
+ metadata: t.IntersectionC<[t.PartialC<{
531
+ tcmp: t.PartialC<{
532
+ tcf: t.PartialC<{
533
+ tcString: t.StringC;
534
+ }>;
535
+ }>;
536
+ }>, t.UnknownRecordC]>; /** When the metadata was last updated */
537
+ metadataTimestamp: t.StringC;
538
+ }>]>, t.TypeC<{
539
+ /** Tracking consent config */purposes: t.IntersectionC<[t.PartialC<{
540
+ Essential: t.LiteralC<true>;
541
+ Unknown: t.LiteralC<false>;
542
+ }>, t.RecordC<t.StringC, t.UnionC<[t.BooleanC, t.StringC, t.UndefinedC]>>]>;
543
+ }>]>;
544
+ /** Override types. */
545
+ type TrackingConsentDetails = t.TypeOf<typeof TrackingConsentDetails>;
546
+ declare const TrackingConsentOptionalData: t.PartialC<{
547
+ /** Transparency Consent (TCF) String */tcf: t.StringC; /** US Privacy (USP) String */
548
+ usp: t.StringC; /** Global Privacy Platform (GPP) String */
549
+ gpp: t.StringC; /** Consent Manager View State */
550
+ viewState: t.KeyofC<{
551
+ QuickOptions: unknown;
552
+ QuickOptions3: unknown;
553
+ AcceptAll: unknown;
554
+ AcceptAllRejectAllToggle: unknown;
555
+ AcceptAllOrMoreChoices: unknown;
556
+ AcceptOrRejectAll: unknown;
557
+ AcceptOrRejectAllOrMoreChoices: unknown;
558
+ AcceptOrRejectAnalytics: unknown;
559
+ AcceptOrRejectAdvertising: unknown;
560
+ NoticeAndDoNotSell: unknown;
561
+ DoNotSellExplainer: unknown;
562
+ CompleteOptionsToggles: unknown;
563
+ PrivacyPolicyNotice: unknown;
564
+ PrivacyPolicyNoticeWithCloseButton: unknown;
565
+ CompleteOptions: unknown;
566
+ CompleteOptionsInverted: unknown;
567
+ Hidden: unknown;
568
+ TCF_EU: unknown;
569
+ DoNotSellDisclosure: unknown;
570
+ OptOutDisclosure: unknown;
571
+ LanguageOptions: unknown;
572
+ Collapsed: unknown;
573
+ Closed: unknown;
574
+ }>; /** Airgap Version */
575
+ airgapVersion: t.StringC;
576
+ }>;
577
+ declare const FullTrackingConsentDetails: t.IntersectionC<[t.IntersectionC<[t.IntersectionC<[t.TypeC<{
578
+ /**
579
+ * Was tracking consent confirmed by the user?
580
+ * If this is false, the consent was resolved from defaults & is not yet confirmed
581
+ */
582
+ confirmed: t.BooleanC; /** Consent resolution/last-modified timestamp (ISO 8601) */
583
+ timestamp: t.StringC;
584
+ }>, t.PartialC<{
585
+ /** Has the consent been updated (including no-change confirmation) since default resolution */updated: t.BooleanC;
586
+ /**
587
+ * Whether or not the UI has been shown to the end-user (undefined in older versions of airgap.js)
588
+ * @deprecated It was discovered that this value was not being set reliably in some versions, and was not being used.
589
+ */
590
+ prompted: t.BooleanC; /** Arbitrary metadata that customers want to be associated with consent state */
591
+ metadata: t.IntersectionC<[t.PartialC<{
592
+ tcmp: t.PartialC<{
593
+ tcf: t.PartialC<{
594
+ tcString: t.StringC;
595
+ }>;
596
+ }>;
597
+ }>, t.UnknownRecordC]>; /** When the metadata was last updated */
598
+ metadataTimestamp: t.StringC;
599
+ }>]>, t.TypeC<{
600
+ /** Tracking consent config */purposes: t.IntersectionC<[t.PartialC<{
601
+ Essential: t.LiteralC<true>;
602
+ Unknown: t.LiteralC<false>;
603
+ }>, t.RecordC<t.StringC, t.UnionC<[t.BooleanC, t.StringC, t.UndefinedC]>>]>;
604
+ }>]>, t.PartialC<{
605
+ /** Transparency Consent (TCF) String */tcf: t.StringC; /** US Privacy (USP) String */
606
+ usp: t.StringC; /** Global Privacy Platform (GPP) String */
607
+ gpp: t.StringC; /** Consent Manager View State */
608
+ viewState: t.KeyofC<{
609
+ QuickOptions: unknown;
610
+ QuickOptions3: unknown;
611
+ AcceptAll: unknown;
612
+ AcceptAllRejectAllToggle: unknown;
613
+ AcceptAllOrMoreChoices: unknown;
614
+ AcceptOrRejectAll: unknown;
615
+ AcceptOrRejectAllOrMoreChoices: unknown;
616
+ AcceptOrRejectAnalytics: unknown;
617
+ AcceptOrRejectAdvertising: unknown;
618
+ NoticeAndDoNotSell: unknown;
619
+ DoNotSellExplainer: unknown;
620
+ CompleteOptionsToggles: unknown;
621
+ PrivacyPolicyNotice: unknown;
622
+ PrivacyPolicyNoticeWithCloseButton: unknown;
623
+ CompleteOptions: unknown;
624
+ CompleteOptionsInverted: unknown;
625
+ Hidden: unknown;
626
+ TCF_EU: unknown;
627
+ DoNotSellDisclosure: unknown;
628
+ OptOutDisclosure: unknown;
629
+ LanguageOptions: unknown;
630
+ Collapsed: unknown;
631
+ Closed: unknown;
632
+ }>; /** Airgap Version */
633
+ airgapVersion: t.StringC;
634
+ }>]>;
635
+ /** Override types. */
636
+ type FullTrackingConsentDetails = t.TypeOf<typeof FullTrackingConsentDetails>;
637
+ declare const FullTrackingConsentDetailsWithNulls: t.IntersectionC<[t.IntersectionC<[t.TypeC<{
638
+ /**
639
+ * Was tracking consent confirmed by the user?
640
+ * If this is false, the consent was resolved from defaults & is not yet confirmed
641
+ */
642
+ confirmed: t.BooleanC; /** Consent resolution/last-modified timestamp (ISO 8601) */
643
+ timestamp: t.StringC;
644
+ }>, t.PartialC<{
645
+ /** Has the consent been updated (including no-change confirmation) since default resolution */updated: t.BooleanC;
646
+ /**
647
+ * Whether or not the UI has been shown to the end-user (undefined in older versions of airgap.js)
648
+ * @deprecated It was discovered that this value was not being set reliably in some versions, and was not being used.
649
+ */
650
+ prompted: t.BooleanC; /** Arbitrary metadata that customers want to be associated with consent state */
651
+ metadata: t.IntersectionC<[t.PartialC<{
652
+ tcmp: t.PartialC<{
653
+ tcf: t.PartialC<{
654
+ tcString: t.StringC;
655
+ }>;
656
+ }>;
657
+ }>, t.UnknownRecordC]>; /** When the metadata was last updated */
658
+ metadataTimestamp: t.StringC;
659
+ }>]>, t.PartialC<{
660
+ /** Transparency Consent (TCF) String */tcf: t.StringC; /** US Privacy (USP) String */
661
+ usp: t.StringC; /** Global Privacy Platform (GPP) String */
662
+ gpp: t.StringC; /** Consent Manager View State */
663
+ viewState: t.KeyofC<{
664
+ QuickOptions: unknown;
665
+ QuickOptions3: unknown;
666
+ AcceptAll: unknown;
667
+ AcceptAllRejectAllToggle: unknown;
668
+ AcceptAllOrMoreChoices: unknown;
669
+ AcceptOrRejectAll: unknown;
670
+ AcceptOrRejectAllOrMoreChoices: unknown;
671
+ AcceptOrRejectAnalytics: unknown;
672
+ AcceptOrRejectAdvertising: unknown;
673
+ NoticeAndDoNotSell: unknown;
674
+ DoNotSellExplainer: unknown;
675
+ CompleteOptionsToggles: unknown;
676
+ PrivacyPolicyNotice: unknown;
677
+ PrivacyPolicyNoticeWithCloseButton: unknown;
678
+ CompleteOptions: unknown;
679
+ CompleteOptionsInverted: unknown;
680
+ Hidden: unknown;
681
+ TCF_EU: unknown;
682
+ DoNotSellDisclosure: unknown;
683
+ OptOutDisclosure: unknown;
684
+ LanguageOptions: unknown;
685
+ Collapsed: unknown;
686
+ Closed: unknown;
687
+ }>; /** Airgap Version */
688
+ airgapVersion: t.StringC;
689
+ }>, t.TypeC<{
690
+ /** Tracking consent config */purposes: t.RecordC<t.StringC, t.UnionC<[t.BooleanC, t.UndefinedC, t.NullC]>>;
691
+ }>]>;
692
+ /** Override types. */
693
+ type FullTrackingConsentDetailsWithNulls = t.TypeOf<typeof FullTrackingConsentDetailsWithNulls>;
694
+ declare const ConsentPreferencesBody: t.TypeC<{
695
+ /** token containing encrypted identifier */token: t.StringC; /** consent partition (defaults to bundle id) */
696
+ partition: t.StringC; /** user consent */
697
+ consent: t.IntersectionC<[t.IntersectionC<[t.TypeC<{
698
+ /**
699
+ * Was tracking consent confirmed by the user?
700
+ * If this is false, the consent was resolved from defaults & is not yet confirmed
701
+ */
702
+ confirmed: t.BooleanC; /** Consent resolution/last-modified timestamp (ISO 8601) */
703
+ timestamp: t.StringC;
704
+ }>, t.PartialC<{
705
+ /** Has the consent been updated (including no-change confirmation) since default resolution */updated: t.BooleanC;
706
+ /**
707
+ * Whether or not the UI has been shown to the end-user (undefined in older versions of airgap.js)
708
+ * @deprecated It was discovered that this value was not being set reliably in some versions, and was not being used.
709
+ */
710
+ prompted: t.BooleanC; /** Arbitrary metadata that customers want to be associated with consent state */
711
+ metadata: t.IntersectionC<[t.PartialC<{
712
+ tcmp: t.PartialC<{
713
+ tcf: t.PartialC<{
714
+ tcString: t.StringC;
715
+ }>;
716
+ }>;
717
+ }>, t.UnknownRecordC]>; /** When the metadata was last updated */
718
+ metadataTimestamp: t.StringC;
719
+ }>]>, t.TypeC<{
720
+ /** Tracking consent config */purposes: t.IntersectionC<[t.PartialC<{
721
+ Essential: t.LiteralC<true>;
722
+ Unknown: t.LiteralC<false>;
723
+ }>, t.RecordC<t.StringC, t.UnionC<[t.BooleanC, t.StringC, t.UndefinedC]>>]>;
724
+ }>]>;
725
+ }>;
726
+ /** Override types. */
727
+ type ConsentPreferencesBody = t.TypeOf<typeof ConsentPreferencesBody>;
728
+ declare const ConsentTokenPayload: t.IntersectionC<[t.TypeC<{
729
+ encryptedIdentifier: t.StringC;
730
+ }>, t.PartialC<{
731
+ deprecatedEncryptedIdentifiers: t.ArrayC<t.StringC>;
732
+ }>]>;
733
+ /** Type override */
734
+ type ConsentTokenPayload = t.TypeOf<typeof ConsentTokenPayload>;
735
+ /** Tracking purpose */
736
+ declare const TrackingPurpose: t.UnionC<[t.KeyofC<{
737
+ Unknown: "Unknown";
738
+ Essential: "Essential";
739
+ }>, t.StringC]>;
740
+ /** Type override */
741
+ type TrackingPurpose = t.TypeOf<typeof TrackingPurpose>;
742
+ /** Tracking purposes */
743
+ type TrackingPurposes = Set<TrackingPurpose>;
744
+ /** Tracking consent change diffs */
745
+ declare const ConsentChange: t.RecordC<t.UnionC<[t.KeyofC<{
746
+ Unknown: "Unknown";
747
+ Essential: "Essential";
748
+ }>, t.StringC]>, t.BooleanC>;
749
+ /** type overload */
750
+ type ConsentChange = t.TypeOf<typeof ConsentChange>;
751
+ /** Regime purpose scopes configuration */
752
+ declare const RegimePurposeScopesConfig: t.ArrayC<t.BrandC<t.ArrayC<t.ArrayC<t.StringC>>, _transcend_io_type_utils0.FixedLengthArrayBrand<t.ArrayC<t.StringC>>>>;
753
+ /** Type override */
754
+ type RegimePurposeScopesConfig = [/** Regimes */regimes: string[], /** In-scope purposes */purposes: TrackingPurpose[]][];
755
+ /** Request source types */
756
+ type AirgapRequestSource = 'unknown' | 'airgap.js' | 'fetch' | 'xhr' | 'websocket' | 'webtransport' | 'service-worker' | 'shared-worker' | 'worker' | 'module-worker' | 'shared-module-worker' | 'eventsource' | 'beacon' | 'CSPV' | 'navigation' | 'open' | 'script' | AirgapDOMRequestSource;
757
+ /** DOM-initiated request source types */
758
+ type AirgapDOMRequestSource = 'DOM:style' | 'DOM:image' | 'DOM:media' | 'DOM:video' | 'DOM:audio' | 'DOM:track' | 'DOM:link' | 'DOM:form' | 'DOM:form-action' | 'DOM:view' | 'DOM:ping' | 'DOM:unknown';
759
+ /**
760
+ * Airgap pending request descriptor init dictionary
761
+ */
762
+ interface PendingRequestInit {
763
+ /** Request initiator type */
764
+ type: AirgapRequestSource;
765
+ /** Request URL */
766
+ url: Stringifiable;
767
+ /** Persist request for cross-session replay (false by default) */
768
+ persist?: boolean;
769
+ /** Request initialization data */
770
+ requestInit?: RequestInit;
771
+ /** Request timestamp (ISO 8601) */
772
+ timestamp?: Stringifiable;
773
+ /** Request DOM target */
774
+ target?: Node | IDynamicNodeReference | null;
775
+ /** Mutator to apply changes associated with the request */
776
+ mutator?(): void;
777
+ /** Serialize request or mutation state back to DOM patcher parser input */
778
+ serialize?(): any;
779
+ /** Prevent credentials from being included in request */
780
+ omitCredentials?(): boolean;
781
+ }
782
+ /** Properties that are added to instantiated PendingRequests */
783
+ interface InstantiatedPendingRequestProps {
784
+ /** Primary or first associated request URL input */
785
+ url: Stringifiable;
786
+ /** All associated request URL inputs */
787
+ urls: Stringifiable[];
788
+ /** Request timestamp (ISO 8601) */
789
+ timestamp: Stringifiable;
790
+ /** Serialize request or mutation state back to DOM patcher parser input */
791
+ serialize(): any;
792
+ /** The following IPendingEvent APIs are only available to overrides: */
793
+ /**
794
+ * All associated resolved request URLs. null = invalid URL or data: URL (parsing
795
+ * skipped to optimize performance)
796
+ */
797
+ URLs: (URL | null)[];
798
+ /** Prevent credentials from being included in request */
799
+ omitCredentials(): boolean;
800
+ /** Whether or not request is currently allowed */
801
+ allowed: boolean;
802
+ /** Bypass our consent logic and force-allow request */
803
+ allow(): void;
804
+ /** Bypass our consent logic and force-deny request */
805
+ deny(): void;
806
+ /** Bypass our consent logic to force-deny request and also block it from entering the replay quarantine */
807
+ block(): void;
808
+ /** Resolved tracking purposes associated with this pending mutation */
809
+ purposes: Set<TrackingPurpose>;
810
+ }
811
+ /**
812
+ * Airgap pending request descriptor with script annotation
813
+ */
814
+ type PendingRequestDescriptor = PendingRequestInit & InstantiatedPendingRequestProps;
815
+ /** Airgap pending request descriptor init with multiple URLs */
816
+ type PendingMutationInit = Omit<PendingRequestInit, 'url'> & {
817
+ /** Request URLs */urls: Stringifiable[];
818
+ };
819
+ /** PendingEvent init input */
820
+ type PendingEventInit = PendingRequestInit | PendingMutationInit;
821
+ /** Pending mutation descriptor */
822
+ type PendingMutationDescriptor = PendingMutationInit & InstantiatedPendingRequestProps;
823
+ /** Pending event props that can't or won't be serialized to JSON */
824
+ type PendingEventUnserializableProps = 'persist' | 'target' | 'mutator' | 'serialize' | 'URLs' | 'omitCredentials' | 'allow' | 'deny' | 'purposes' | 'allowed' | 'blocked';
825
+ /** JSON-safe representation of pending event tracking purposes */
826
+ interface PendingEventPurposesJSON {
827
+ /** Tracking purposes list */
828
+ purposes?: TrackingPurpose[];
829
+ }
830
+ /** Pending request subset to JSON-safe properties */
831
+ type PendingRequestJSON = Omit<PendingRequestDescriptor, PendingEventUnserializableProps | 'urls'> & PendingEventPurposesJSON;
832
+ /** Pending mutation subset to JSON-safe properties */
833
+ type PendingMutationJSON = Omit<PendingMutationDescriptor, PendingEventUnserializableProps | 'url'> & PendingEventPurposesJSON;
834
+ /** Airgap pending request interface */
835
+ interface IPendingRequest extends PendingRequestDescriptor {
836
+ /** Convert PendingRequest to JSON-safe representation */
837
+ toJSON(): PendingRequestJSON;
838
+ }
839
+ /** Airgap pending mutation interface */
840
+ interface IPendingMutation extends PendingMutationDescriptor {
841
+ /** Convert PendingRequest to JSON-safe representation */
842
+ toJSON(): PendingMutationJSON;
843
+ }
844
+ /** Pending event descriptor */
845
+ type PendingEventDescriptor = PendingRequestDescriptor | PendingMutationDescriptor;
846
+ /** Pending request or mutation */
847
+ type IPendingEvent = IPendingMutation | IPendingRequest;
848
+ /** Unapproved request queue */
849
+ type PendingRequestQueue = IPendingRequest[];
850
+ /** Unapproved mutation queue */
851
+ type PendingMutationQueue = IPendingEvent[];
852
+ /** Unapproved event queue */
853
+ type PendingEventQueue = IPendingEvent[];
854
+ /** Cookie descriptor */
855
+ interface Cookie {
856
+ /** Cookie name */
857
+ name: Stringifiable;
858
+ /** Cookie value */
859
+ value?: Stringifiable;
860
+ /** Cookie change event timestamp (ISO 8601) */
861
+ timestamp?: string;
862
+ /** Expiry date (UTC date string or DOMTimeStamp) */
863
+ expires?: number | Stringifiable;
864
+ /** Max cookie age (seconds) */
865
+ maxAge?: number;
866
+ /** Optional cookie host scope */
867
+ domain?: Stringifiable;
868
+ /** Optional cookie path scope */
869
+ path?: Stringifiable;
870
+ /** Should cookie only be sent in secure contexts? */
871
+ secure?: boolean;
872
+ /**
873
+ * Should cookie be restricted to the same site?
874
+ * Values: https://developer.mozilla.org/en-US/docs/Web/HTTP/Headers/Set-Cookie/SameSite
875
+ */
876
+ sameSite?: Stringifiable;
877
+ /**
878
+ * Is the cookie partitioned (e.g. by CHIPS)?
879
+ * See https://developer.mozilla.org/en-US/docs/Web/Privacy/Partitioned_cookies
880
+ * and https://developer.mozilla.org/en-US/docs/Web/API/CookieStore/get#:~:text=of%20the%20cookie.-,partitioned,-A%20boolean%20indicating
881
+ */
882
+ partitioned?: boolean;
883
+ /** Target document / node */
884
+ target?: Node | null;
885
+ }
886
+ /**
887
+ * PendingCookieMutation constructor input
888
+ */
889
+ interface PendingCookieMutationInit extends Cookie {
890
+ /** Persist cookie for cross-session replay if quarantined (true by default) */
891
+ persist?: boolean;
892
+ /** Mutator to apply cookie mutation */
893
+ mutator?(): void | Promise<void>;
894
+ }
895
+ /** Properties that are added to instantiated PendingCookieMutations */
896
+ interface InstantiatedPendingCookieMutationProps {
897
+ /** Expiry date (DOMTimeStamp) */
898
+ expires?: number;
899
+ /** Cookie change event timestamp (Date.now() format) */
900
+ timestamp: string;
901
+ /** Whether or not cookie is currently allowed. null = passthrough */
902
+ allowed?: boolean | null;
903
+ /** Whether or not cookie is currently disallowed & blocked from entering the quarantine */
904
+ blocked?: boolean;
905
+ /** Bypass our consent logic and force-allow cookie */
906
+ allow(): void;
907
+ /** Bypass our consent logic and force-deny cookie */
908
+ deny(): void;
909
+ /** Bypass our consent logic to force-deny cookie and also block it from entering the quarantine */
910
+ block(): void;
911
+ /** Resolved tracking purposes associated with this pending mutation */
912
+ purposes: Set<TrackingPurpose>;
913
+ /** Mutator to apply cookie mutation */
914
+ mutator(): void | Promise<void>;
915
+ }
916
+ /** Pending cookie mutation descriptor */
917
+ type PendingCookieMutationDescriptor = Omit<PendingCookieMutationInit, 'expires'> & InstantiatedPendingCookieMutationProps;
918
+ /** Pending cookie mutation props that can't or won't be serialized to JSON */
919
+ type PendingCookieMutationUnserializableProps = 'persist' | 'mutator' | 'allow' | 'deny' | 'purposes' | 'allowed' | 'blocked';
920
+ /** JSON-safe representation of pending cookie mutation tracking purposes */
921
+ interface PendingCookieMutationPurposesJSON {
922
+ /** Tracking purposes list */
923
+ purposes?: TrackingPurpose[];
924
+ }
925
+ /** Pending request subset to JSON-safe properties */
926
+ type PendingCookieMutationJSON = Omit<PendingCookieMutationDescriptor, PendingCookieMutationUnserializableProps> & PendingCookieMutationPurposesJSON;
927
+ /** Airgap pending cookie mutation interface */
928
+ interface IPendingCookieMutation extends PendingCookieMutationDescriptor {
929
+ /** Convert PendingCookieMutation to JSON-safe representation */
930
+ toJSON(): PendingCookieMutationJSON;
931
+ }
932
+ /** Pending cookie mutation queue */
933
+ type PendingCookieQueue = IPendingCookieMutation[];
934
+ /** Interface for dynamic node references */
935
+ interface IDynamicNodeReference {
936
+ /**
937
+ * Current node getter. This should always be used in `handleLiveMutation()`.
938
+ * @returns current node
939
+ */
940
+ getNode(): Element;
941
+ /**
942
+ * Live node getter. Use this to apply mutations in `quarantine()`
943
+ * and `quarantineMutation()` handlers.
944
+ *
945
+ * `release()` must always be called after completing
946
+ * mutations using `getLiveNode()`.
947
+ * @returns live node
948
+ */
949
+ getLiveNode(): Element;
950
+ /** Release & garbage-collect internal node reference */
951
+ release(): void;
952
+ }
953
+ //#endregion
954
+ //#region src/iab.d.ts
955
+ /**
956
+ * TCF purpose configuration
957
+ */
958
+ declare const TcfPurpose: t.TypeC<{
959
+ id: t.NumberC;
960
+ name: t.StringC;
961
+ description: t.StringC;
962
+ descriptionLegal: t.StringC;
963
+ }>;
964
+ /**
965
+ * Type override
966
+ */
967
+ type TcfPurpose = t.TypeOf<typeof TcfPurpose>;
968
+ /**
969
+ * TCF stack configuration
970
+ */
971
+ declare const TcfStack: t.TypeC<{
972
+ id: t.NumberC;
973
+ purposes: t.ArrayC<t.NumberC>;
974
+ specialFeatures: t.ArrayC<t.NumberC>;
975
+ name: t.StringC;
976
+ description: t.StringC;
977
+ }>;
978
+ /**
979
+ * Type override
980
+ */
981
+ type TcfStack = t.TypeOf<typeof TcfStack>;
982
+ /**
983
+ * TCF stack configuration
984
+ */
985
+ declare const TcfVendor: t.IntersectionC<[t.TypeC<{
986
+ id: t.NumberC;
987
+ name: t.StringC;
988
+ purposes: t.ArrayC<t.NumberC>;
989
+ legIntPurposes: t.ArrayC<t.NumberC>;
990
+ flexiblePurposes: t.ArrayC<t.NumberC>;
991
+ specialPurposes: t.ArrayC<t.NumberC>;
992
+ features: t.ArrayC<t.NumberC>;
993
+ specialFeatures: t.ArrayC<t.NumberC>;
994
+ policyUrl: t.StringC;
995
+ cookieMaxAgeSeconds: t.UnionC<[t.NumberC, t.NullC]>;
996
+ usesCookies: t.BooleanC;
997
+ }>, t.PartialC<{
998
+ deletedDate: t.StringC;
999
+ overflow: t.TypeC<{
1000
+ httpGetLimit: t.NumberC;
1001
+ }>;
1002
+ cookieRefresh: t.BooleanC;
1003
+ usesNonCookieAccess: t.BooleanC;
1004
+ deviceStorageDisclosureUrl: t.StringC;
1005
+ }>]>;
1006
+ /**
1007
+ * Type override
1008
+ */
1009
+ type TcfVendor = t.TypeOf<typeof TcfVendor>;
1010
+ declare const TcfVendorListVersion: t.TypeC<{
1011
+ gvlSpecificationVersion: t.NumberC;
1012
+ vendorListVersion: t.NumberC;
1013
+ tcfPolicyVersion: t.NumberC;
1014
+ lastUpdated: t.StringC;
1015
+ }>;
1016
+ /**
1017
+ * Type override
1018
+ */
1019
+ type TcfVendorListVersion = t.TypeOf<typeof TcfVendorListVersion>;
1020
+ /**
1021
+ * TCF global vendor list version 2
1022
+ */
1023
+ declare const TcfV2VendorList: t.IntersectionC<[t.TypeC<{
1024
+ gvlSpecificationVersion: t.NumberC;
1025
+ vendorListVersion: t.NumberC;
1026
+ tcfPolicyVersion: t.NumberC;
1027
+ lastUpdated: t.StringC;
1028
+ }>, t.TypeC<{
1029
+ purposes: t.RecordC<t.StringC, t.TypeC<{
1030
+ id: t.NumberC;
1031
+ name: t.StringC;
1032
+ description: t.StringC;
1033
+ descriptionLegal: t.StringC;
1034
+ }>>;
1035
+ specialPurposes: t.RecordC<t.StringC, t.TypeC<{
1036
+ id: t.NumberC;
1037
+ name: t.StringC;
1038
+ description: t.StringC;
1039
+ descriptionLegal: t.StringC;
1040
+ }>>;
1041
+ features: t.RecordC<t.StringC, t.TypeC<{
1042
+ id: t.NumberC;
1043
+ name: t.StringC;
1044
+ description: t.StringC;
1045
+ descriptionLegal: t.StringC;
1046
+ }>>;
1047
+ specialFeatures: t.RecordC<t.StringC, t.TypeC<{
1048
+ id: t.NumberC;
1049
+ name: t.StringC;
1050
+ description: t.StringC;
1051
+ descriptionLegal: t.StringC;
1052
+ }>>;
1053
+ stacks: t.RecordC<t.StringC, t.TypeC<{
1054
+ id: t.NumberC;
1055
+ purposes: t.ArrayC<t.NumberC>;
1056
+ specialFeatures: t.ArrayC<t.NumberC>;
1057
+ name: t.StringC;
1058
+ description: t.StringC;
1059
+ }>>;
1060
+ vendors: t.RecordC<t.StringC, t.IntersectionC<[t.TypeC<{
1061
+ id: t.NumberC;
1062
+ name: t.StringC;
1063
+ purposes: t.ArrayC<t.NumberC>;
1064
+ legIntPurposes: t.ArrayC<t.NumberC>;
1065
+ flexiblePurposes: t.ArrayC<t.NumberC>;
1066
+ specialPurposes: t.ArrayC<t.NumberC>;
1067
+ features: t.ArrayC<t.NumberC>;
1068
+ specialFeatures: t.ArrayC<t.NumberC>;
1069
+ policyUrl: t.StringC;
1070
+ cookieMaxAgeSeconds: t.UnionC<[t.NumberC, t.NullC]>;
1071
+ usesCookies: t.BooleanC;
1072
+ }>, t.PartialC<{
1073
+ deletedDate: t.StringC;
1074
+ overflow: t.TypeC<{
1075
+ httpGetLimit: t.NumberC;
1076
+ }>;
1077
+ cookieRefresh: t.BooleanC;
1078
+ usesNonCookieAccess: t.BooleanC;
1079
+ deviceStorageDisclosureUrl: t.StringC;
1080
+ }>]>>;
1081
+ }>]>;
1082
+ /**
1083
+ * Overload TcfV2VendorList as a type
1084
+ */
1085
+ type TcfV2VendorList = t.TypeOf<typeof TcfV2VendorList>;
1086
+ /**
1087
+ * TCF GVL v3 purpose configuration (TCF features share the same type)
1088
+ */
1089
+ declare const TcfGvlV3Purpose: t.TypeC<{
1090
+ id: t.NumberC;
1091
+ name: t.StringC;
1092
+ description: t.StringC;
1093
+ illustrations: t.ArrayC<t.StringC>;
1094
+ }>;
1095
+ /**
1096
+ * Type override
1097
+ */
1098
+ type TcfGvlV3Purpose = t.TypeOf<typeof TcfGvlV3Purpose>;
1099
+ /**
1100
+ * TCF GVL v3 data categories configuration
1101
+ */
1102
+ declare const TcfGvlV3DataCategory: t.TypeC<{
1103
+ id: t.NumberC;
1104
+ name: t.StringC;
1105
+ description: t.StringC;
1106
+ }>;
1107
+ /**
1108
+ * Type override
1109
+ */
1110
+ type TcfGvlV3DataCategory = t.TypeOf<typeof TcfGvlV3DataCategory>;
1111
+ /**
1112
+ * TCF GVL v3 URL configuration
1113
+ */
1114
+ declare const TcfGvlV3Url: t.IntersectionC<[t.TypeC<{
1115
+ langId: t.StringC;
1116
+ privacy: t.StringC;
1117
+ }>, t.PartialC<{
1118
+ legIntClaim: t.StringC;
1119
+ }>]>;
1120
+ /**
1121
+ * Type override
1122
+ */
1123
+ type TcfGvlV3Url = t.TypeOf<typeof TcfGvlV3Url>;
1124
+ /**
1125
+ * TCF GVL v3 data retention configuration
1126
+ */
1127
+ declare const TcfGvlV3DataRetention: t.IntersectionC<[t.TypeC<{
1128
+ purposes: t.RecordC<t.StringC, t.NumberC>;
1129
+ specialPurposes: t.RecordC<t.StringC, t.NumberC>;
1130
+ }>, t.PartialC<{
1131
+ stdRetention: t.UnionC<[t.NumberC, t.NullC]>;
1132
+ }>]>;
1133
+ /**
1134
+ * Type override
1135
+ */
1136
+ type TcfGvlV3DataRetention = t.TypeOf<typeof TcfGvlV3DataRetention>;
1137
+ /**
1138
+ * TCF GVL v3 vendor configuration
1139
+ */
1140
+ declare const TcfGvlV3Vendor: t.IntersectionC<[t.TypeC<{
1141
+ id: t.NumberC;
1142
+ name: t.StringC;
1143
+ purposes: t.ArrayC<t.NumberC>;
1144
+ legIntPurposes: t.ArrayC<t.NumberC>;
1145
+ flexiblePurposes: t.ArrayC<t.NumberC>;
1146
+ specialPurposes: t.ArrayC<t.NumberC>;
1147
+ features: t.ArrayC<t.NumberC>;
1148
+ specialFeatures: t.ArrayC<t.NumberC>;
1149
+ cookieMaxAgeSeconds: t.UnionC<[t.NumberC, t.NullC]>;
1150
+ usesCookies: t.BooleanC;
1151
+ cookieRefresh: t.BooleanC;
1152
+ usesNonCookieAccess: t.BooleanC;
1153
+ dataRetention: t.IntersectionC<[t.TypeC<{
1154
+ purposes: t.RecordC<t.StringC, t.NumberC>;
1155
+ specialPurposes: t.RecordC<t.StringC, t.NumberC>;
1156
+ }>, t.PartialC<{
1157
+ stdRetention: t.UnionC<[t.NumberC, t.NullC]>;
1158
+ }>]>;
1159
+ urls: t.ArrayC<t.IntersectionC<[t.TypeC<{
1160
+ langId: t.StringC;
1161
+ privacy: t.StringC;
1162
+ }>, t.PartialC<{
1163
+ legIntClaim: t.StringC;
1164
+ }>]>>;
1165
+ deviceStorageDisclosureUrl: t.StringC;
1166
+ }>, t.PartialC<{
1167
+ deletedDate: t.StringC;
1168
+ overflow: t.TypeC<{
1169
+ httpGetLimit: t.NumberC;
1170
+ }>;
1171
+ dataDeclaration: t.ArrayC<t.NumberC>;
1172
+ }>]>;
1173
+ /**
1174
+ * Type override
1175
+ */
1176
+ type TcfGvlV3Vendor = t.TypeOf<typeof TcfGvlV3Vendor>;
1177
+ /**
1178
+ * TCF global vendor list version 3
1179
+ */
1180
+ declare const TcfV3VendorList: t.IntersectionC<[t.TypeC<{
1181
+ gvlSpecificationVersion: t.NumberC;
1182
+ vendorListVersion: t.NumberC;
1183
+ tcfPolicyVersion: t.NumberC;
1184
+ lastUpdated: t.StringC;
1185
+ }>, t.TypeC<{
1186
+ purposes: t.RecordC<t.StringC, t.TypeC<{
1187
+ id: t.NumberC;
1188
+ name: t.StringC;
1189
+ description: t.StringC;
1190
+ illustrations: t.ArrayC<t.StringC>;
1191
+ }>>;
1192
+ specialPurposes: t.RecordC<t.StringC, t.TypeC<{
1193
+ id: t.NumberC;
1194
+ name: t.StringC;
1195
+ description: t.StringC;
1196
+ illustrations: t.ArrayC<t.StringC>;
1197
+ }>>;
1198
+ features: t.RecordC<t.StringC, t.TypeC<{
1199
+ id: t.NumberC;
1200
+ name: t.StringC;
1201
+ description: t.StringC;
1202
+ illustrations: t.ArrayC<t.StringC>;
1203
+ }>>;
1204
+ specialFeatures: t.RecordC<t.StringC, t.TypeC<{
1205
+ id: t.NumberC;
1206
+ name: t.StringC;
1207
+ description: t.StringC;
1208
+ illustrations: t.ArrayC<t.StringC>;
1209
+ }>>;
1210
+ stacks: t.RecordC<t.StringC, t.TypeC<{
1211
+ id: t.NumberC;
1212
+ purposes: t.ArrayC<t.NumberC>;
1213
+ specialFeatures: t.ArrayC<t.NumberC>;
1214
+ name: t.StringC;
1215
+ description: t.StringC;
1216
+ }>>;
1217
+ dataCategories: t.RecordC<t.StringC, t.TypeC<{
1218
+ id: t.NumberC;
1219
+ name: t.StringC;
1220
+ description: t.StringC;
1221
+ }>>;
1222
+ vendors: t.RecordC<t.StringC, t.IntersectionC<[t.TypeC<{
1223
+ id: t.NumberC;
1224
+ name: t.StringC;
1225
+ purposes: t.ArrayC<t.NumberC>;
1226
+ legIntPurposes: t.ArrayC<t.NumberC>;
1227
+ flexiblePurposes: t.ArrayC<t.NumberC>;
1228
+ specialPurposes: t.ArrayC<t.NumberC>;
1229
+ features: t.ArrayC<t.NumberC>;
1230
+ specialFeatures: t.ArrayC<t.NumberC>;
1231
+ cookieMaxAgeSeconds: t.UnionC<[t.NumberC, t.NullC]>;
1232
+ usesCookies: t.BooleanC;
1233
+ cookieRefresh: t.BooleanC;
1234
+ usesNonCookieAccess: t.BooleanC;
1235
+ dataRetention: t.IntersectionC<[t.TypeC<{
1236
+ purposes: t.RecordC<t.StringC, t.NumberC>;
1237
+ specialPurposes: t.RecordC<t.StringC, t.NumberC>;
1238
+ }>, t.PartialC<{
1239
+ stdRetention: t.UnionC<[t.NumberC, t.NullC]>;
1240
+ }>]>;
1241
+ urls: t.ArrayC<t.IntersectionC<[t.TypeC<{
1242
+ langId: t.StringC;
1243
+ privacy: t.StringC;
1244
+ }>, t.PartialC<{
1245
+ legIntClaim: t.StringC;
1246
+ }>]>>;
1247
+ deviceStorageDisclosureUrl: t.StringC;
1248
+ }>, t.PartialC<{
1249
+ deletedDate: t.StringC;
1250
+ overflow: t.TypeC<{
1251
+ httpGetLimit: t.NumberC;
1252
+ }>;
1253
+ dataDeclaration: t.ArrayC<t.NumberC>;
1254
+ }>]>>;
1255
+ }>]>;
1256
+ /**
1257
+ * Type override
1258
+ */
1259
+ type TcfV3VendorList = t.TypeOf<typeof TcfV3VendorList>;
1260
+ declare const NonTcfVendor: t.IntersectionC<[t.TypeC<{
1261
+ /** The vendor name */name: t.StringC; /** The transcend purposes associated with each vendor */
1262
+ purposes: t.ArrayC<t.StringC>;
1263
+ }>, t.PartialC<{
1264
+ /** The vendor description */description: t.StringC; /** The privacy policy URL */
1265
+ privacyPolicyUrl: t.StringC;
1266
+ }>]>;
1267
+ /**
1268
+ * Type override
1269
+ */
1270
+ type NonTcfVendor = t.TypeOf<typeof NonTcfVendor>;
1271
+ //#endregion
1272
+ //#region src/enums/purpose.d.ts
1273
+ /**
1274
+ * The options for the type of purpose that airgap classifies requests into
1275
+ */
1276
+ declare const SpecialTrackingPurpose: {
1277
+ /** The request has an unknown tracking purpose */Unknown: "Unknown"; /** The request is necessary for the essential features of the website */
1278
+ Essential: "Essential";
1279
+ };
1280
+ /** Type override */
1281
+ type SpecialTrackingPurpose = (typeof SpecialTrackingPurpose)[keyof typeof SpecialTrackingPurpose];
1282
+ /**
1283
+ * Possible values for the default consent that can be given to a tracking purpose
1284
+ */
1285
+ declare const DefaultConsentValue: {
1286
+ /** Tracking purpose is NOT consented to by default */Off: "off";
1287
+ /**
1288
+ * Tracking purpose is consented to by default, unless user is protected by GDPR
1289
+ * or has DNT or GPC enabled
1290
+ */
1291
+ Auto: "Auto";
1292
+ };
1293
+ /** Type override */
1294
+ type DefaultConsentValue = (typeof DefaultConsentValue)[keyof typeof DefaultConsentValue];
1295
+ /**
1296
+ * Purposes that can be configured
1297
+ */
1298
+ declare const ConfigurablePurpose: {
1299
+ /** SaaS tools used for advertising purposes */Advertising: "Advertising"; /** SaaS tools used for analytics purposes */
1300
+ Analytics: "Analytics"; /** SaaS tools used for functional purposes */
1301
+ Functional: "Functional"; /** SaaS tools used for selling personal information */
1302
+ SaleOfInfo: "SaleOfInfo";
1303
+ };
1304
+ /** Type override */
1305
+ type ConfigurablePurpose = (typeof ConfigurablePurpose)[keyof typeof ConfigurablePurpose];
1306
+ /**
1307
+ * Purposes that can be configured
1308
+ */
1309
+ declare const KnownDefaultPurpose: {
1310
+ /** SaaS tools used for advertising purposes */Advertising: "Advertising"; /** SaaS tools used for analytics purposes */
1311
+ Analytics: "Analytics"; /** SaaS tools used for functional purposes */
1312
+ Functional: "Functional"; /** SaaS tools used for selling personal information */
1313
+ SaleOfInfo: "SaleOfInfo"; /** The request is necessary for the essential features of the website */
1314
+ Essential: "Essential";
1315
+ };
1316
+ /** Type override */
1317
+ type KnownDefaultPurpose = (typeof KnownDefaultPurpose)[keyof typeof KnownDefaultPurpose];
1318
+ /**
1319
+ * Purposes used by the purpose map
1320
+ */
1321
+ declare const Purpose: {
1322
+ /** SaaS tools used for advertising purposes */Advertising: "Advertising"; /** SaaS tools used for analytics purposes */
1323
+ Analytics: "Analytics"; /** SaaS tools used for functional purposes */
1324
+ Functional: "Functional"; /** SaaS tools used for selling personal information */
1325
+ SaleOfInfo: "SaleOfInfo"; /** The request has an unknown tracking purpose */
1326
+ Unknown: "Unknown"; /** The request is necessary for the essential features of the website */
1327
+ Essential: "Essential";
1328
+ };
1329
+ /** Type override */
1330
+ type Purpose = (typeof Purpose)[keyof typeof Purpose];
1331
+ /** User-configurable user agent privacy signal */
1332
+ declare const UserPrivacySignalEnum: {
1333
+ /** Global Privacy Control */GPC: "GPC"; /** Do Not Track */
1334
+ DNT: "DNT";
1335
+ };
1336
+ /**
1337
+ * Type override
1338
+ */
1339
+ type UserPrivacySignalEnum = (typeof UserPrivacySignalEnum)[keyof typeof UserPrivacySignalEnum];
1340
+ //#endregion
1341
+ //#region src/enums/privacyRegime.d.ts
1342
+ /**
1343
+ * Potentially applicable data privacy legal regimes
1344
+ * NOTE: Please make sure that new entries are compatible with GraphQL Enums
1345
+ */
1346
+ declare enum PrivacyRegimeEnum {
1347
+ /** Unable to determine any applicable regimes */
1348
+ Unknown = "Unknown",
1349
+ /** California Privacy Rights Act (and CCPA: California Consumer Privacy Act) */
1350
+ CPRA = "CPRA",
1351
+ /** EU General Data Protection Regulation */
1352
+ GDPR = "GDPR",
1353
+ /** Brazil Lei Geral de Proteção de Dados (General Personal Data Protection Law) */
1354
+ LGPD = "LGPD",
1355
+ /** Virginia Consumer Data Protection Act */
1356
+ CDPA = "CDPA",
1357
+ /** Colorado Privacy Act */
1358
+ CPA = "CPA",
1359
+ /** Nevada Senate Bill 220 */
1360
+ NEVADA_SB220 = "NEVADA_SB220",
1361
+ /** Switzerland New Federal Act on Data Protection */
1362
+ nFADP = "nFADP",
1363
+ /** US Do Not Sell/Share */
1364
+ US_DNSS = "US_DNSS"
1365
+ }
1366
+ //#endregion
1367
+ //#region src/enums/viewState.d.ts
1368
+ /**
1369
+ * Consent Manager view state for the Interactive Advertising Bureau
1370
+ */
1371
+ declare const IABViewState: {
1372
+ /** Transparency and Consent Framework for Europe */TCF_EU: "TCF_EU";
1373
+ };
1374
+ /**
1375
+ * View States for Transcend's Consent Manager UI
1376
+ */
1377
+ declare const InitialTranscendViewState: {
1378
+ /** expanded and showing quick select options */QuickOptions: "QuickOptions"; /** three option UI: essential, functional/analytics, advertising */
1379
+ QuickOptions3: "QuickOptions3"; /** accept all button call to action, with more options in the banner footer */
1380
+ AcceptAll: "AcceptAll"; /** toggle button that toggles on or off all active purposes in the current regime */
1381
+ AcceptAllRejectAllToggle: "AcceptAllRejectAllToggle"; /** accept all or more options, both as calls to action */
1382
+ AcceptAllOrMoreChoices: "AcceptAllOrMoreChoices"; /** accept all or reject all */
1383
+ AcceptOrRejectAll: "AcceptOrRejectAll"; /** accept all or reject all or more options */
1384
+ AcceptOrRejectAllOrMoreChoices: "AcceptOrRejectAllOrMoreChoices"; /** accept or reject the Analytics script tag */
1385
+ AcceptOrRejectAnalytics: "AcceptOrRejectAnalytics"; /** accept or reject the Advertising script tag */
1386
+ AcceptOrRejectAdvertising: "AcceptOrRejectAdvertising"; /** data collection notice with do not sell */
1387
+ NoticeAndDoNotSell: "NoticeAndDoNotSell"; /** open a modal that allows for an explanation of do not sell/share, before opting out */
1388
+ DoNotSellExplainer: "DoNotSellExplainer"; /** open a modal that allows for complete options toggling */
1389
+ CompleteOptionsToggles: "CompleteOptionsToggles"; /** open a modal that shows a notice that the privacy policy has changed, without any prompt to change consent */
1390
+ PrivacyPolicyNotice: "PrivacyPolicyNotice";
1391
+ /**
1392
+ * open a modal that shows a notice that the privacy policy has changed, without any prompt to change consent
1393
+ * and no button to close the modal. instead there is an X in the top right corner of the modal
1394
+ */
1395
+ PrivacyPolicyNoticeWithCloseButton: "PrivacyPolicyNoticeWithCloseButton"; /** expanded and showing full checkbox options */
1396
+ CompleteOptions: "CompleteOptions"; /** complete options, but selecting a checkbox means the user is opted out */
1397
+ CompleteOptionsInverted: "CompleteOptionsInverted"; /** hidden */
1398
+ Hidden: "Hidden";
1399
+ };
1400
+ /**
1401
+ * Type override
1402
+ */
1403
+ type InitialTranscendViewState = (typeof InitialTranscendViewState)[keyof typeof InitialTranscendViewState];
1404
+ /**
1405
+ * Consent Manager view states that can be used at launch
1406
+ */
1407
+ declare const InitialViewState: {
1408
+ /** Transparency and Consent Framework for Europe */TCF_EU: "TCF_EU"; /** expanded and showing quick select options */
1409
+ QuickOptions: "QuickOptions"; /** three option UI: essential, functional/analytics, advertising */
1410
+ QuickOptions3: "QuickOptions3"; /** accept all button call to action, with more options in the banner footer */
1411
+ AcceptAll: "AcceptAll"; /** toggle button that toggles on or off all active purposes in the current regime */
1412
+ AcceptAllRejectAllToggle: "AcceptAllRejectAllToggle"; /** accept all or more options, both as calls to action */
1413
+ AcceptAllOrMoreChoices: "AcceptAllOrMoreChoices"; /** accept all or reject all */
1414
+ AcceptOrRejectAll: "AcceptOrRejectAll"; /** accept all or reject all or more options */
1415
+ AcceptOrRejectAllOrMoreChoices: "AcceptOrRejectAllOrMoreChoices"; /** accept or reject the Analytics script tag */
1416
+ AcceptOrRejectAnalytics: "AcceptOrRejectAnalytics"; /** accept or reject the Advertising script tag */
1417
+ AcceptOrRejectAdvertising: "AcceptOrRejectAdvertising"; /** data collection notice with do not sell */
1418
+ NoticeAndDoNotSell: "NoticeAndDoNotSell"; /** open a modal that allows for an explanation of do not sell/share, before opting out */
1419
+ DoNotSellExplainer: "DoNotSellExplainer"; /** open a modal that allows for complete options toggling */
1420
+ CompleteOptionsToggles: "CompleteOptionsToggles"; /** open a modal that shows a notice that the privacy policy has changed, without any prompt to change consent */
1421
+ PrivacyPolicyNotice: "PrivacyPolicyNotice";
1422
+ /**
1423
+ * open a modal that shows a notice that the privacy policy has changed, without any prompt to change consent
1424
+ * and no button to close the modal. instead there is an X in the top right corner of the modal
1425
+ */
1426
+ PrivacyPolicyNoticeWithCloseButton: "PrivacyPolicyNoticeWithCloseButton"; /** expanded and showing full checkbox options */
1427
+ CompleteOptions: "CompleteOptions"; /** complete options, but selecting a checkbox means the user is opted out */
1428
+ CompleteOptionsInverted: "CompleteOptionsInverted"; /** hidden */
1429
+ Hidden: "Hidden";
1430
+ };
1431
+ /**
1432
+ * Type override
1433
+ */
1434
+ type InitialViewState = (typeof InitialViewState)[keyof typeof InitialViewState];
1435
+ /**
1436
+ * View states that are displayed in response to a user request (e.g. transcend.doNotSell() or )
1437
+ */
1438
+ declare const ResponseViewState: {
1439
+ /** notice that do not sell has been acknowledged properly */DoNotSellDisclosure: "DoNotSellDisclosure"; /** notice of a 1 click opt out for multiple consent purposes */
1440
+ OptOutDisclosure: "OptOutDisclosure";
1441
+ };
1442
+ /**
1443
+ * Type override
1444
+ */
1445
+ type ResponseViewState = (typeof ResponseViewState)[keyof typeof ResponseViewState];
1446
+ /**
1447
+ * Consent Manager view states that can be navigated to after initial view state
1448
+ */
1449
+ declare const DeepViewState: {
1450
+ /** language options */LanguageOptions: "LanguageOptions";
1451
+ };
1452
+ /**
1453
+ * Type override
1454
+ */
1455
+ type DeepViewState = (typeof DeepViewState)[keyof typeof DeepViewState];
1456
+ /**
1457
+ * Consent Manager view states after it's been dismissed
1458
+ */
1459
+ declare const DismissedViewState: {
1460
+ /** showing and collapsed */Collapsed: "Collapsed"; /** closed */
1461
+ Closed: "Closed";
1462
+ };
1463
+ /**
1464
+ * Type override
1465
+ */
1466
+ type DismissedViewState = (typeof DismissedViewState)[keyof typeof DismissedViewState];
1467
+ /**
1468
+ * All possible view states of the Consent Manager
1469
+ */
1470
+ declare const ViewState: {
1471
+ /** showing and collapsed */Collapsed: "Collapsed"; /** closed */
1472
+ Closed: "Closed"; /** language options */
1473
+ LanguageOptions: "LanguageOptions"; /** notice that do not sell has been acknowledged properly */
1474
+ DoNotSellDisclosure: "DoNotSellDisclosure"; /** notice of a 1 click opt out for multiple consent purposes */
1475
+ OptOutDisclosure: "OptOutDisclosure"; /** Transparency and Consent Framework for Europe */
1476
+ TCF_EU: "TCF_EU"; /** expanded and showing quick select options */
1477
+ QuickOptions: "QuickOptions"; /** three option UI: essential, functional/analytics, advertising */
1478
+ QuickOptions3: "QuickOptions3"; /** accept all button call to action, with more options in the banner footer */
1479
+ AcceptAll: "AcceptAll"; /** toggle button that toggles on or off all active purposes in the current regime */
1480
+ AcceptAllRejectAllToggle: "AcceptAllRejectAllToggle"; /** accept all or more options, both as calls to action */
1481
+ AcceptAllOrMoreChoices: "AcceptAllOrMoreChoices"; /** accept all or reject all */
1482
+ AcceptOrRejectAll: "AcceptOrRejectAll"; /** accept all or reject all or more options */
1483
+ AcceptOrRejectAllOrMoreChoices: "AcceptOrRejectAllOrMoreChoices"; /** accept or reject the Analytics script tag */
1484
+ AcceptOrRejectAnalytics: "AcceptOrRejectAnalytics"; /** accept or reject the Advertising script tag */
1485
+ AcceptOrRejectAdvertising: "AcceptOrRejectAdvertising"; /** data collection notice with do not sell */
1486
+ NoticeAndDoNotSell: "NoticeAndDoNotSell"; /** open a modal that allows for an explanation of do not sell/share, before opting out */
1487
+ DoNotSellExplainer: "DoNotSellExplainer"; /** open a modal that allows for complete options toggling */
1488
+ CompleteOptionsToggles: "CompleteOptionsToggles"; /** open a modal that shows a notice that the privacy policy has changed, without any prompt to change consent */
1489
+ PrivacyPolicyNotice: "PrivacyPolicyNotice";
1490
+ /**
1491
+ * open a modal that shows a notice that the privacy policy has changed, without any prompt to change consent
1492
+ * and no button to close the modal. instead there is an X in the top right corner of the modal
1493
+ */
1494
+ PrivacyPolicyNoticeWithCloseButton: "PrivacyPolicyNoticeWithCloseButton"; /** expanded and showing full checkbox options */
1495
+ CompleteOptions: "CompleteOptions"; /** complete options, but selecting a checkbox means the user is opted out */
1496
+ CompleteOptionsInverted: "CompleteOptionsInverted"; /** hidden */
1497
+ Hidden: "Hidden";
1498
+ };
1499
+ /**
1500
+ * Type override
1501
+ */
1502
+ type ViewState = (typeof ViewState)[keyof typeof ViewState];
1503
+ //#endregion
1504
+ //#region src/enums/browserLanguage.d.ts
1505
+ declare const BrowserLanguage: {
1506
+ '(Afan)/Oromoor/Oriya': "om";
1507
+ Abkhazian: "ab";
1508
+ Afar: "aa";
1509
+ Afrikaans: "af";
1510
+ Akan: "ak";
1511
+ Albanian: "sq";
1512
+ Amharic: "am";
1513
+ Arabic: "ar";
1514
+ 'Arabic (Algeria)': "ar-DZ";
1515
+ 'Arabic (Bahrain)': "ar-BH";
1516
+ 'Arabic (Egypt)': "ar-EG";
1517
+ 'Arabic (Iraq)': "ar-IQ";
1518
+ 'Arabic (Jordan)': "ar-JO";
1519
+ 'Arabic (Kuwait)': "ar-KW";
1520
+ 'Arabic (Lebanon)': "ar-LB";
1521
+ 'Arabic (Morocco)': "ar-MA";
1522
+ 'Arabic (Oman)': "ar-OM";
1523
+ 'Arabic (Qatar)': "ar-QA";
1524
+ 'Arabic (Saudi Arabia)': "ar-SA";
1525
+ 'Arabic (Syria)': "ar-SY";
1526
+ 'Arabic (Tunisia)': "ar-TN";
1527
+ 'Arabic (U.A.E.)': "ar-AE";
1528
+ 'Arabic (Yemen)': "ar-YE";
1529
+ 'Arabic (libya)': "ar-LY";
1530
+ Aragonese: "an";
1531
+ Armenian: "hy";
1532
+ Assamese: "as";
1533
+ Avaric: "av";
1534
+ Avestan: "ae";
1535
+ Aymara: "ay";
1536
+ Azeri: "az";
1537
+ Bambara: "bm";
1538
+ Bashkir: "ba";
1539
+ Basque: "eu";
1540
+ Belarusian: "be";
1541
+ Bengali: "bn";
1542
+ Bhutani: "dz";
1543
+ Bihari: "bh";
1544
+ Bislama: "bi";
1545
+ Bosnian: "bs";
1546
+ Breton: "br";
1547
+ 'Bulgarian (Bulgaria)': "bg-BG";
1548
+ Bulgarian: "bg";
1549
+ Burmese: "my";
1550
+ Cambodian: "km";
1551
+ Catalan: "ca";
1552
+ Chamorro: "ch";
1553
+ Chechen: "ce";
1554
+ Chinese: "zh";
1555
+ 'Chinese (China)': "zh-CN";
1556
+ 'Chinese (Hong Kong SAR)': "zh-HK";
1557
+ 'Chinese (Macau SAR)': "zh-MO";
1558
+ 'Chinese (Singapore)': "zh-SG";
1559
+ 'Chinese (Simplified)': "zh-Hans";
1560
+ 'Chinese (Taiwan)': "zh-TW";
1561
+ Chichewa: "ny";
1562
+ 'Church Slavonic': "cu";
1563
+ Cornish: "kw";
1564
+ Corsican: "co";
1565
+ Cree: "cr";
1566
+ 'Croatian (Bosnia and Herzegovina)': "hr-BA";
1567
+ 'Croatian (Croatia)': "hr-HR";
1568
+ Croatian: "hr";
1569
+ 'Czech (Czech Republic)': "cs-CZ";
1570
+ Czech: "cs";
1571
+ Danish: "da";
1572
+ 'Danish (Denmark)': "da-DK";
1573
+ Divehi: "div";
1574
+ DivehiDv: "dv";
1575
+ Dutch: "nl";
1576
+ 'Dutch (Belgium)': "nl-BE";
1577
+ 'Dutch (Netherlands)': "nl-NL";
1578
+ English: "us";
1579
+ 'English (Australia)': "en-AU";
1580
+ 'English (Belize)': "en-BZ";
1581
+ 'English (Canada)': "en-CA";
1582
+ 'English (Caribbean)': "en-CB";
1583
+ 'English (Ireland)': "en-IE";
1584
+ 'English (Jamaica)': "en-JM";
1585
+ 'English (New Zealand)': "en-NZ";
1586
+ 'English (Philippines)': "en-PH";
1587
+ 'English (South Africa)': "en-ZA";
1588
+ 'English (Switzerland)': "en-CH";
1589
+ 'English (Trinidad)': "en-TT";
1590
+ 'English (United Kingdom)': "en-GB";
1591
+ 'English (United States)': "en-US";
1592
+ 'English (Zimbabwe)': "en-ZW";
1593
+ Esperanto: "eo";
1594
+ Estonian: "et";
1595
+ 'Estonian (Estonia)': "et-EE";
1596
+ Ewe: "ee";
1597
+ Faeroese: "fo";
1598
+ Farsi: "fa";
1599
+ Fiji: "fj";
1600
+ Finnish: "fi";
1601
+ 'Finnish (Finland)': "fi-FI";
1602
+ French: "fr";
1603
+ 'French (Belgium)': "fr-BE";
1604
+ 'French (Canada)': "fr-CA";
1605
+ 'French (France)': "fr-FR";
1606
+ 'French (Luxembourg)': "fr-LU";
1607
+ 'French (Monaco)': "fr-MC";
1608
+ 'French (Switzerland)': "fr-CH";
1609
+ Frisian: "fy";
1610
+ 'FYRO Macedonian': "mk";
1611
+ Gaelic: "gd";
1612
+ Galician: "gl";
1613
+ Ganda: "lg";
1614
+ Georgian: "ka";
1615
+ German: "de";
1616
+ 'German (Austria)': "de-AT";
1617
+ 'German (Germany)': "de-DE";
1618
+ 'German (Liechtenstein)': "de-LI";
1619
+ 'German (Luxembourg)': "de-LU";
1620
+ 'German (Switzerland)': "de-CH";
1621
+ Greek: "el";
1622
+ 'Greek (Greece)': "el-GR";
1623
+ Greenlandic: "kl";
1624
+ Guarani: "gn";
1625
+ Gujarati: "gu";
1626
+ Haitian: "ht";
1627
+ Hausa: "ha";
1628
+ Hebrew: "iw";
1629
+ 'Hebrew (Israel)': "he-IL";
1630
+ 'Hebrew (Modern)': "he";
1631
+ Herero: "hz";
1632
+ Hindi: "hi";
1633
+ 'Hiri Motu': "ho";
1634
+ Hungarian: "hu";
1635
+ 'Hungarian (Hungary)': "hu-HU";
1636
+ Icelandic: "is";
1637
+ 'Icelandic (Iceland)': "is-IS";
1638
+ Igbo: "ig";
1639
+ Ido: "io";
1640
+ Indonesian: "in";
1641
+ 'Indonesian (Modern)': "id";
1642
+ Interlingua: "ia";
1643
+ Interlingue: "ie";
1644
+ Inuktitut: "iu";
1645
+ Inupiak: "ik";
1646
+ Irish: "ga";
1647
+ 'Irish (Ireland)': "ga-IE";
1648
+ Italian: "it";
1649
+ 'Italian (Italy)': "it-IT";
1650
+ 'Italian (Switzerland)': "it-CH";
1651
+ Japanese: "ja";
1652
+ Javanese: "jw";
1653
+ Kannada: "kn";
1654
+ Kanuri: "kr";
1655
+ Kashmiri: "ks";
1656
+ Kazakh: "kk";
1657
+ Kikuyu: "ki";
1658
+ Kinyarwanda: "rw";
1659
+ Kirghiz: "ky";
1660
+ Kirundi: "rn";
1661
+ Kongo: "kg";
1662
+ Konkani: "kok";
1663
+ Korean: "ko";
1664
+ Komi: "kv";
1665
+ Kuanyama: "kj";
1666
+ Kurdish: "ku";
1667
+ Kyrgyz: "kz";
1668
+ Laothian: "lo";
1669
+ Latin: "la";
1670
+ Latvian: "lv";
1671
+ 'Latvian (Latvia)': "lv-LV";
1672
+ Limburgan: "li";
1673
+ Lingala: "ln";
1674
+ 'Lithuanian (Lithuania)': "lt-LT";
1675
+ Lithuanian: "lt";
1676
+ 'Luba-Katanga': "lu";
1677
+ Luxembourgish: "lb";
1678
+ Malagasy: "mg";
1679
+ Malay: "ms";
1680
+ 'Malay (Brunei Darussalam)': "ms-BN";
1681
+ 'Malay (Malaysia)': "ms-MY";
1682
+ Malayalam: "ml";
1683
+ Maltese: "mt";
1684
+ 'Maltese (Malta)': "mt-MT";
1685
+ Manx: "gv";
1686
+ Maori: "mi";
1687
+ Marathi: "mr";
1688
+ Marshallese: "mh";
1689
+ Moldavian: "mo";
1690
+ Mongolian: "mn";
1691
+ Nauru: "na";
1692
+ Navajo: "nv";
1693
+ Ndonga: "ng";
1694
+ 'Nepali (India)': "ne";
1695
+ 'North Ndebele': "nd";
1696
+ 'Northern Sotho': "ns";
1697
+ Norwegian: "no";
1698
+ 'Norwegian (Norway)': "no-NO";
1699
+ 'Norwegian Bokm\u00E5l': "nb";
1700
+ 'Norwegian Bokm\u00E5l (Norway)': "nb-NO";
1701
+ 'Norwegian Nynorsk': "nn";
1702
+ 'Norwegian Nynorsk (Norway)': "nn-NO";
1703
+ 'South Ndebele': "nr";
1704
+ Occitan: "oc";
1705
+ Ojibwa: "oj";
1706
+ Oriya: "or";
1707
+ Ossetian: "os";
1708
+ Pali: "pi";
1709
+ 'Pashto/Pushto': "ps";
1710
+ Polish: "pl";
1711
+ 'Polish (Poland)': "pl-PL";
1712
+ Portuguese: "pt";
1713
+ 'Portuguese (Brazil)': "pt-BR";
1714
+ 'Portuguese (Portugal)': "pt-PT";
1715
+ 'Portuguese (Switzerland)': "pt-CH";
1716
+ Punjabi: "pa";
1717
+ Quechua: "qu";
1718
+ 'Quechua (Bolivia)': "qu-BO";
1719
+ 'Quechua (Ecuador)': "qu-EC";
1720
+ 'Quechua (Peru)': "qu-PE";
1721
+ 'Rhaeto-Romanic': "rm";
1722
+ Romanian: "ro";
1723
+ 'Romanian (Moldova)': "ro-MD";
1724
+ 'Romanian (Romania)': "ro-RO";
1725
+ Russian: "ru";
1726
+ 'Russian (Moldova)': "ru-MD";
1727
+ Sami: "se";
1728
+ 'Sami (Finland)': "se-FI";
1729
+ 'Sami (Norway)': "se-NO";
1730
+ 'Sami (Sweden)': "se-SE";
1731
+ Samoan: "sm";
1732
+ Sango: "sg";
1733
+ Sanskrit: "sa";
1734
+ Sardinian: "sc";
1735
+ Serbian: "sr";
1736
+ 'Serbian (Bosnia and Herzegovina)': "sr-BA";
1737
+ 'Serbian (Serbia and Montenegro)': "sr-SP";
1738
+ 'Serbo-Croatian': "sh";
1739
+ Sesotho: "st";
1740
+ Shona: "sn";
1741
+ 'Sichuan Yi': "ii";
1742
+ Sindhi: "sd";
1743
+ Singhalese: "si";
1744
+ Siswati: "ss";
1745
+ Slovak: "sk";
1746
+ 'Slovak (Slovakia)': "sk-SK";
1747
+ Slovenian: "sl";
1748
+ 'Slovenian (Slovenia)': "sl-SI";
1749
+ Somali: "so";
1750
+ Sorbian: "sb";
1751
+ Spanish: "es";
1752
+ 'Spanish (Argentina)': "es-AR";
1753
+ 'Spanish (Bolivia)': "es-BO";
1754
+ 'Spanish (Chile)': "es-CL";
1755
+ 'Spanish (Colombia)': "es-CO";
1756
+ 'Spanish (Costa Rica)': "es-CR";
1757
+ 'Spanish (Dominican Republic)': "es-DO";
1758
+ 'Spanish (Ecuador)': "es-EC";
1759
+ 'Spanish (El Salvador)': "es-SV";
1760
+ 'Spanish (Espa\u00F1a)': "es-ES";
1761
+ 'Spanish (Guatemala)': "es-GT";
1762
+ 'Spanish (Honduras)': "es-HN";
1763
+ 'Spanish (Mexico)': "es-MX";
1764
+ 'Spanish (Nicaragua)': "es-NI";
1765
+ 'Spanish (Panama)': "es-PA";
1766
+ 'Spanish (Paraguay)': "es-PY";
1767
+ 'Spanish (Peru)': "es-PE";
1768
+ 'Spanish (Puerto Rico)': "es-PR";
1769
+ 'Spanish (United States)': "es-US";
1770
+ 'Spanish (Uruguay)': "es-UY";
1771
+ 'Spanish (Venezuela)': "es-VE";
1772
+ Sundanese: "su";
1773
+ Sutu: "sx";
1774
+ Swahili: "sw";
1775
+ Swedish: "sv";
1776
+ 'Swedish (Finland)': "sv-FI";
1777
+ 'Swedish (Sweden)': "sv-SE";
1778
+ 'Swiss German': "gsw";
1779
+ 'Swiss German (Liechtenstein)': "gsw-LI";
1780
+ 'Swiss German (Switzerland)': "gsw-CH";
1781
+ Syriac: "syr";
1782
+ Tagalog: "tl";
1783
+ Tahitian: "ty";
1784
+ Tajik: "tg";
1785
+ Tamil: "ta";
1786
+ Tatar: "tt";
1787
+ Telugu: "te";
1788
+ Thai: "th";
1789
+ Tibetan: "bo";
1790
+ Tigrinya: "ti";
1791
+ Tonga: "to";
1792
+ Tsonga: "ts";
1793
+ Tswana: "tn";
1794
+ Turkish: "tr";
1795
+ Turkmen: "tk";
1796
+ Twi: "tw";
1797
+ Uighur: "ug";
1798
+ Ukrainian: "uk";
1799
+ Urdu: "ur";
1800
+ Uzbek: "uz";
1801
+ Venda: "ve";
1802
+ Vietnamese: "vi";
1803
+ Volapuk: "vo";
1804
+ Walloon: "wa";
1805
+ Welsh: "cy";
1806
+ Wolof: "wo";
1807
+ Xhosa: "xh";
1808
+ Yiddish: "yi";
1809
+ Yoruba: "yo";
1810
+ Zhuang: "za";
1811
+ Zulu: "zu";
1812
+ };
1813
+ /** Overrides type */
1814
+ type BrowserLanguage = (typeof BrowserLanguage)[keyof typeof BrowserLanguage];
1815
+ //#endregion
1816
+ //#region src/enums/experience.d.ts
1817
+ /**
1818
+ * Describes whether listed countries/country subdivisions are included in an experience
1819
+ */
1820
+ declare const RegionsOperator: {
1821
+ /** The listed countries/country subdivisions, time zones, and languages are included in this experience */In: "IN"; /** The listed countries/country subdivisions, time zones, and languages are NOT included in this experience */
1822
+ NotIn: "NOT_IN";
1823
+ };
1824
+ /** Override type */
1825
+ type RegionsOperator = (typeof RegionsOperator)[keyof typeof RegionsOperator];
1826
+ //#endregion
1827
+ //#region src/enums/consentExpiry.d.ts
1828
+ /**
1829
+ * Enum of options available for behavior to exhibit when the user's consent has expired
1830
+ */
1831
+ declare const OnConsentExpiry: {
1832
+ /** Reprompts the user to change or confirm their selection */Prompt: "Prompt"; /** Resets the user's consent and reprompts them */
1833
+ ResetAll: "ResetAll"; /** Resets the user's opted-in purposes and reprompts them */
1834
+ ResetOptIns: "ResetOptIns";
1835
+ };
1836
+ /** Override type */
1837
+ type OnConsentExpiry = (typeof OnConsentExpiry)[keyof typeof OnConsentExpiry];
1838
+ //#endregion
1839
+ //#region src/ui.d.ts
1840
+ /** Transcend Smart Quarantine API (window.transcend) */
1841
+ type PreInitTranscendAPI = {
1842
+ /** Ready event subscriber */ready(callback: (transcend: TranscendAPI) => void): void; /** Ready event dispatch queue */
1843
+ readyQueue: ((transcend: TranscendAPI) => void)[];
1844
+ };
1845
+ /** showConsentManager() */
1846
+ interface ShowConsentManagerOptions {
1847
+ /** View state */
1848
+ viewState?: ViewState;
1849
+ }
1850
+ /**
1851
+ * Input for fetching a policy from Transcend and inserting template variables
1852
+ */
1853
+ type GetTranscendPolicies = {
1854
+ /** The language to fetch policy for - defaults to currently selected language key */locale?: LocaleValue; /** Template variables to dynamically inject into the policy */
1855
+ variables?: ObjByString;
1856
+ /**
1857
+ * The UUID of the policies defined in Transcend to fetch
1858
+ *
1859
+ * This can be pulled from the URL
1860
+ * @see https://app.transcend.io/privacy-center/policies
1861
+ */
1862
+ policyIds?: string[];
1863
+ /**
1864
+ * The titles of the policies defined in Transcend to fetch
1865
+ *
1866
+ * This can be pulled from the URL
1867
+ * @see https://app.transcend.io/privacy-center/policies
1868
+ */
1869
+ policyTitles?: string[];
1870
+ };
1871
+ /**
1872
+ * The returning Transcend policy
1873
+ */
1874
+ type TranscendPolicy = {
1875
+ /** The policy UUID */id: string; /** The policy title */
1876
+ title: string; /** The policy content */
1877
+ content: string;
1878
+ };
1879
+ /**
1880
+ * Transcend Consent Manager external methods
1881
+ */
1882
+ type ConsentManagerAPI = Readonly<{
1883
+ /** Possible ViewState values */viewStates: Set<ViewState>; /** Expose an option to grab the current view state */
1884
+ getViewState: () => ViewState; /** Get the current active language */
1885
+ getPolicies: (input?: GetTranscendPolicies) => Promise<TranscendPolicy[]>; /** Callback that sets any dynamic variables that should be exposed to the consent UI messages */
1886
+ setUiVariables: (variables: ObjByString) => Promise<void>; /** Get the current value of Transcend UI variables */
1887
+ getUiVariables: () => ObjByString; /** Set consent change authorization key */
1888
+ setAuth?: (key: AirgapAuthMap['key']) => void; /** Change the current privacy policy URL */
1889
+ setPrivacyPolicy: (privacyPolicyLink: string) => void; /** Change the current secondary policy URL */
1890
+ setSecondaryPolicy: (privacyPolicyLink: string) => void; /** Show consent manager unless recently dismissed */
1891
+ autoShowConsentManager(options?: ShowConsentManagerOptions): Promise<void>; /** Show consent manager */
1892
+ showConsentManager(options?: ShowConsentManagerOptions): Promise<void>; /** Set the current active language */
1893
+ setActiveLocale(locale: ConsentManagerSupportedTranslationValue): Promise<void>; /** Get the currently active locale */
1894
+ getActiveLocale: () => ConsentManagerSupportedTranslationValue; /** Toggle consent manager */
1895
+ toggleConsentManager(options?: ShowConsentManagerOptions): Promise<void>; /** Hide consent manager */
1896
+ hideConsentManager(): Promise<void>; /** Opt out of the sale of personal info & show a disclosure */
1897
+ doNotSell(auth: AirgapAuth, options?: ShowConsentManagerOptions): Promise<void>; /** Opt out of all purposes */
1898
+ optOutNotice(auth: AirgapAuth, options?: ShowConsentManagerOptions): Promise<void>; /** Sets local tcf string (does not sync to xdi or preference store) */
1899
+ setTCFConsent?: (auth: AirgapAuth, tcString: string) => Promise<void>; /** UI version */
1900
+ version?: string;
1901
+ }> & EventTarget;
1902
+ /**
1903
+ * `transcend` event types
1904
+ */
1905
+ type TranscendEventType = 'view-state-change';
1906
+ /** 'view-state-change' custom event details */
1907
+ type ViewStateEventDetails = {
1908
+ /** The new, now-current view state */viewState: ViewState; /** The previous view state */
1909
+ previousViewState: ViewState | null;
1910
+ };
1911
+ /** Transcend Smart Quarantine API (window.transcend) */
1912
+ type TranscendAPI = PreInitTranscendAPI & ConsentManagerAPI;
1913
+ /**
1914
+ * Customer theming
1915
+ */
1916
+ declare const ConsentManagerTheme: t.TypeC<{
1917
+ /** Primary color */primaryColor: t.StringC; /** Font color */
1918
+ fontColor: t.StringC;
1919
+ }>;
1920
+ /** Type override */
1921
+ type ConsentManagerTheme = t.TypeOf<typeof ConsentManagerTheme>;
1922
+ /**
1923
+ * Mobile-first responsive breakpoints
1924
+ * No media query for mobile, which is the default
1925
+ */
1926
+ declare const ConsentManagerBreakpoints: t.TypeC<{
1927
+ /** In px, at or above this width is tablet */tablet: t.StringC; /** In px, at or above this width is desktop */
1928
+ desktop: t.StringC;
1929
+ }>;
1930
+ /** Type override */
1931
+ type ConsentManagerBreakpoints = t.TypeOf<typeof ConsentManagerBreakpoints>;
1932
+ /**
1933
+ * TODO: https://transcend.height.app/T-19149 - remove
1934
+ * @deprecated
1935
+ */
1936
+ declare const PrivacyRegimeToInitialViewStateInput: t.PartialC<{
1937
+ Unknown: t.KeyofC<{
1938
+ QuickOptions: unknown;
1939
+ QuickOptions3: unknown;
1940
+ AcceptAll: unknown;
1941
+ AcceptAllRejectAllToggle: unknown;
1942
+ AcceptAllOrMoreChoices: unknown;
1943
+ AcceptOrRejectAll: unknown;
1944
+ AcceptOrRejectAllOrMoreChoices: unknown;
1945
+ AcceptOrRejectAnalytics: unknown;
1946
+ AcceptOrRejectAdvertising: unknown;
1947
+ NoticeAndDoNotSell: unknown;
1948
+ DoNotSellExplainer: unknown;
1949
+ CompleteOptionsToggles: unknown;
1950
+ PrivacyPolicyNotice: unknown;
1951
+ PrivacyPolicyNoticeWithCloseButton: unknown;
1952
+ CompleteOptions: unknown;
1953
+ CompleteOptionsInverted: unknown;
1954
+ Hidden: unknown;
1955
+ }>;
1956
+ CPRA: t.KeyofC<{
1957
+ QuickOptions: unknown;
1958
+ QuickOptions3: unknown;
1959
+ AcceptAll: unknown;
1960
+ AcceptAllRejectAllToggle: unknown;
1961
+ AcceptAllOrMoreChoices: unknown;
1962
+ AcceptOrRejectAll: unknown;
1963
+ AcceptOrRejectAllOrMoreChoices: unknown;
1964
+ AcceptOrRejectAnalytics: unknown;
1965
+ AcceptOrRejectAdvertising: unknown;
1966
+ NoticeAndDoNotSell: unknown;
1967
+ DoNotSellExplainer: unknown;
1968
+ CompleteOptionsToggles: unknown;
1969
+ PrivacyPolicyNotice: unknown;
1970
+ PrivacyPolicyNoticeWithCloseButton: unknown;
1971
+ CompleteOptions: unknown;
1972
+ CompleteOptionsInverted: unknown;
1973
+ Hidden: unknown;
1974
+ }>;
1975
+ GDPR: t.KeyofC<{
1976
+ QuickOptions: unknown;
1977
+ QuickOptions3: unknown;
1978
+ AcceptAll: unknown;
1979
+ AcceptAllRejectAllToggle: unknown;
1980
+ AcceptAllOrMoreChoices: unknown;
1981
+ AcceptOrRejectAll: unknown;
1982
+ AcceptOrRejectAllOrMoreChoices: unknown;
1983
+ AcceptOrRejectAnalytics: unknown;
1984
+ AcceptOrRejectAdvertising: unknown;
1985
+ NoticeAndDoNotSell: unknown;
1986
+ DoNotSellExplainer: unknown;
1987
+ CompleteOptionsToggles: unknown;
1988
+ PrivacyPolicyNotice: unknown;
1989
+ PrivacyPolicyNoticeWithCloseButton: unknown;
1990
+ CompleteOptions: unknown;
1991
+ CompleteOptionsInverted: unknown;
1992
+ Hidden: unknown;
1993
+ }>;
1994
+ LGPD: t.KeyofC<{
1995
+ QuickOptions: unknown;
1996
+ QuickOptions3: unknown;
1997
+ AcceptAll: unknown;
1998
+ AcceptAllRejectAllToggle: unknown;
1999
+ AcceptAllOrMoreChoices: unknown;
2000
+ AcceptOrRejectAll: unknown;
2001
+ AcceptOrRejectAllOrMoreChoices: unknown;
2002
+ AcceptOrRejectAnalytics: unknown;
2003
+ AcceptOrRejectAdvertising: unknown;
2004
+ NoticeAndDoNotSell: unknown;
2005
+ DoNotSellExplainer: unknown;
2006
+ CompleteOptionsToggles: unknown;
2007
+ PrivacyPolicyNotice: unknown;
2008
+ PrivacyPolicyNoticeWithCloseButton: unknown;
2009
+ CompleteOptions: unknown;
2010
+ CompleteOptionsInverted: unknown;
2011
+ Hidden: unknown;
2012
+ }>;
2013
+ CDPA: t.KeyofC<{
2014
+ QuickOptions: unknown;
2015
+ QuickOptions3: unknown;
2016
+ AcceptAll: unknown;
2017
+ AcceptAllRejectAllToggle: unknown;
2018
+ AcceptAllOrMoreChoices: unknown;
2019
+ AcceptOrRejectAll: unknown;
2020
+ AcceptOrRejectAllOrMoreChoices: unknown;
2021
+ AcceptOrRejectAnalytics: unknown;
2022
+ AcceptOrRejectAdvertising: unknown;
2023
+ NoticeAndDoNotSell: unknown;
2024
+ DoNotSellExplainer: unknown;
2025
+ CompleteOptionsToggles: unknown;
2026
+ PrivacyPolicyNotice: unknown;
2027
+ PrivacyPolicyNoticeWithCloseButton: unknown;
2028
+ CompleteOptions: unknown;
2029
+ CompleteOptionsInverted: unknown;
2030
+ Hidden: unknown;
2031
+ }>;
2032
+ CPA: t.KeyofC<{
2033
+ QuickOptions: unknown;
2034
+ QuickOptions3: unknown;
2035
+ AcceptAll: unknown;
2036
+ AcceptAllRejectAllToggle: unknown;
2037
+ AcceptAllOrMoreChoices: unknown;
2038
+ AcceptOrRejectAll: unknown;
2039
+ AcceptOrRejectAllOrMoreChoices: unknown;
2040
+ AcceptOrRejectAnalytics: unknown;
2041
+ AcceptOrRejectAdvertising: unknown;
2042
+ NoticeAndDoNotSell: unknown;
2043
+ DoNotSellExplainer: unknown;
2044
+ CompleteOptionsToggles: unknown;
2045
+ PrivacyPolicyNotice: unknown;
2046
+ PrivacyPolicyNoticeWithCloseButton: unknown;
2047
+ CompleteOptions: unknown;
2048
+ CompleteOptionsInverted: unknown;
2049
+ Hidden: unknown;
2050
+ }>;
2051
+ NEVADA_SB220: t.KeyofC<{
2052
+ QuickOptions: unknown;
2053
+ QuickOptions3: unknown;
2054
+ AcceptAll: unknown;
2055
+ AcceptAllRejectAllToggle: unknown;
2056
+ AcceptAllOrMoreChoices: unknown;
2057
+ AcceptOrRejectAll: unknown;
2058
+ AcceptOrRejectAllOrMoreChoices: unknown;
2059
+ AcceptOrRejectAnalytics: unknown;
2060
+ AcceptOrRejectAdvertising: unknown;
2061
+ NoticeAndDoNotSell: unknown;
2062
+ DoNotSellExplainer: unknown;
2063
+ CompleteOptionsToggles: unknown;
2064
+ PrivacyPolicyNotice: unknown;
2065
+ PrivacyPolicyNoticeWithCloseButton: unknown;
2066
+ CompleteOptions: unknown;
2067
+ CompleteOptionsInverted: unknown;
2068
+ Hidden: unknown;
2069
+ }>;
2070
+ nFADP: t.KeyofC<{
2071
+ QuickOptions: unknown;
2072
+ QuickOptions3: unknown;
2073
+ AcceptAll: unknown;
2074
+ AcceptAllRejectAllToggle: unknown;
2075
+ AcceptAllOrMoreChoices: unknown;
2076
+ AcceptOrRejectAll: unknown;
2077
+ AcceptOrRejectAllOrMoreChoices: unknown;
2078
+ AcceptOrRejectAnalytics: unknown;
2079
+ AcceptOrRejectAdvertising: unknown;
2080
+ NoticeAndDoNotSell: unknown;
2081
+ DoNotSellExplainer: unknown;
2082
+ CompleteOptionsToggles: unknown;
2083
+ PrivacyPolicyNotice: unknown;
2084
+ PrivacyPolicyNoticeWithCloseButton: unknown;
2085
+ CompleteOptions: unknown;
2086
+ CompleteOptionsInverted: unknown;
2087
+ Hidden: unknown;
2088
+ }>;
2089
+ US_DNSS: t.KeyofC<{
2090
+ QuickOptions: unknown;
2091
+ QuickOptions3: unknown;
2092
+ AcceptAll: unknown;
2093
+ AcceptAllRejectAllToggle: unknown;
2094
+ AcceptAllOrMoreChoices: unknown;
2095
+ AcceptOrRejectAll: unknown;
2096
+ AcceptOrRejectAllOrMoreChoices: unknown;
2097
+ AcceptOrRejectAnalytics: unknown;
2098
+ AcceptOrRejectAdvertising: unknown;
2099
+ NoticeAndDoNotSell: unknown;
2100
+ DoNotSellExplainer: unknown;
2101
+ CompleteOptionsToggles: unknown;
2102
+ PrivacyPolicyNotice: unknown;
2103
+ PrivacyPolicyNoticeWithCloseButton: unknown;
2104
+ CompleteOptions: unknown;
2105
+ CompleteOptionsInverted: unknown;
2106
+ Hidden: unknown;
2107
+ }>;
2108
+ }>;
2109
+ /**
2110
+ * TODO: https://transcend.height.app/T-19149 - remove
2111
+ * @deprecated
2112
+ */
2113
+ type PrivacyRegimeToInitialViewStateInput = t.TypeOf<typeof PrivacyRegimeToInitialViewStateInput>;
2114
+ /**
2115
+ * TODO: https://transcend.height.app/T-19149 - remove
2116
+ * @deprecated
2117
+ */
2118
+ declare const PrivacyRegimeToInitialViewState: t.RecordC<t.KeyofC<{
2119
+ Unknown: unknown;
2120
+ CPRA: unknown;
2121
+ GDPR: unknown;
2122
+ LGPD: unknown;
2123
+ CDPA: unknown;
2124
+ CPA: unknown;
2125
+ NEVADA_SB220: unknown;
2126
+ nFADP: unknown;
2127
+ US_DNSS: unknown;
2128
+ }>, t.KeyofC<{
2129
+ QuickOptions: unknown;
2130
+ QuickOptions3: unknown;
2131
+ AcceptAll: unknown;
2132
+ AcceptAllRejectAllToggle: unknown;
2133
+ AcceptAllOrMoreChoices: unknown;
2134
+ AcceptOrRejectAll: unknown;
2135
+ AcceptOrRejectAllOrMoreChoices: unknown;
2136
+ AcceptOrRejectAnalytics: unknown;
2137
+ AcceptOrRejectAdvertising: unknown;
2138
+ NoticeAndDoNotSell: unknown;
2139
+ DoNotSellExplainer: unknown;
2140
+ CompleteOptionsToggles: unknown;
2141
+ PrivacyPolicyNotice: unknown;
2142
+ PrivacyPolicyNoticeWithCloseButton: unknown;
2143
+ CompleteOptions: unknown;
2144
+ CompleteOptionsInverted: unknown;
2145
+ Hidden: unknown;
2146
+ }>>;
2147
+ /**
2148
+ * TODO: https://transcend.height.app/T-19149 - remove
2149
+ * @deprecated
2150
+ */
2151
+ type PrivacyRegimeToInitialViewState = t.TypeOf<typeof PrivacyRegimeToInitialViewState>;
2152
+ declare const ExperienceToInitialViewState: t.RecordC<t.StringC, t.KeyofC<{
2153
+ QuickOptions: unknown;
2154
+ QuickOptions3: unknown;
2155
+ AcceptAll: unknown;
2156
+ AcceptAllRejectAllToggle: unknown;
2157
+ AcceptAllOrMoreChoices: unknown;
2158
+ AcceptOrRejectAll: unknown;
2159
+ AcceptOrRejectAllOrMoreChoices: unknown;
2160
+ AcceptOrRejectAnalytics: unknown;
2161
+ AcceptOrRejectAdvertising: unknown;
2162
+ NoticeAndDoNotSell: unknown;
2163
+ DoNotSellExplainer: unknown;
2164
+ CompleteOptionsToggles: unknown;
2165
+ PrivacyPolicyNotice: unknown;
2166
+ PrivacyPolicyNoticeWithCloseButton: unknown;
2167
+ CompleteOptions: unknown;
2168
+ CompleteOptionsInverted: unknown;
2169
+ Hidden: unknown;
2170
+ TCF_EU: unknown;
2171
+ }>>;
2172
+ /** type overload */
2173
+ type ExperienceToInitialViewState = t.TypeOf<typeof ExperienceToInitialViewState>;
2174
+ declare const RequiredConsentManagerConfig: t.TypeC<{
2175
+ /** Customer theming */theme: t.TypeC<{
2176
+ /** Primary color */primaryColor: t.StringC; /** Font color */
2177
+ fontColor: t.StringC;
2178
+ }>; /** A set of responsive breakpoints */
2179
+ breakpoints: t.TypeC<{
2180
+ /** In px, at or above this width is tablet */tablet: t.StringC; /** In px, at or above this width is desktop */
2181
+ desktop: t.StringC;
2182
+ }>; /** The privacy policy URL to redirect to */
2183
+ privacyPolicy: t.StringC; /** The secondary policy URL to redirect to */
2184
+ secondaryPolicy: t.StringC; /** Custom CSS stylesheet */
2185
+ css: t.StringC; /** Path to localizations directory */
2186
+ messages: t.StringC; /** What state the consent manager should launch in */
2187
+ initialViewStateByPrivacyRegime: t.RecordC<t.StringC, t.KeyofC<{
2188
+ QuickOptions: unknown;
2189
+ QuickOptions3: unknown;
2190
+ AcceptAll: unknown;
2191
+ AcceptAllRejectAllToggle: unknown;
2192
+ AcceptAllOrMoreChoices: unknown;
2193
+ AcceptOrRejectAll: unknown;
2194
+ AcceptOrRejectAllOrMoreChoices: unknown;
2195
+ AcceptOrRejectAnalytics: unknown;
2196
+ AcceptOrRejectAdvertising: unknown;
2197
+ NoticeAndDoNotSell: unknown;
2198
+ DoNotSellExplainer: unknown;
2199
+ CompleteOptionsToggles: unknown;
2200
+ PrivacyPolicyNotice: unknown;
2201
+ PrivacyPolicyNoticeWithCloseButton: unknown;
2202
+ CompleteOptions: unknown;
2203
+ CompleteOptionsInverted: unknown;
2204
+ Hidden: unknown;
2205
+ TCF_EU: unknown;
2206
+ }>>; /** What state the consent manager should go to when dismissed */
2207
+ dismissedViewState: t.KeyofC<{
2208
+ Collapsed: unknown;
2209
+ Closed: unknown;
2210
+ }>;
2211
+ }>;
2212
+ /** type overload */
2213
+ type RequiredConsentManagerConfig = t.TypeOf<typeof RequiredConsentManagerConfig>;
2214
+ declare const OptionalConsentManagerConfig: t.PartialC<{
2215
+ /** The set of enabled languages - CSV of ConsentManagerSupportedTranslationValue */languages: t.StringC; /** The override value for the consent banner z-index */
2216
+ uiZIndex: t.StringC;
2217
+ /**
2218
+ * The override value for the consent banner shadow root state
2219
+ *
2220
+ * Potential values: 'closed' (default) and 'open'
2221
+ */
2222
+ uiShadowRoot: t.StringC;
2223
+ /**
2224
+ * The override value for whether to focus on the first descendant of the root arg w/data-initialFocus attribute
2225
+ * Potential values: `'on'` (default) or `'off'`
2226
+ *
2227
+ */
2228
+ autofocus: t.KeyofC<{
2229
+ on: null;
2230
+ off: null;
2231
+ }>;
2232
+ }>;
2233
+ /** type overload */
2234
+ type OptionalConsentManagerConfig = t.TypeOf<typeof OptionalConsentManagerConfig>;
2235
+ /** Consent manager UI configuration */
2236
+ declare const ConsentManagerConfig: t.IntersectionC<[t.TypeC<{
2237
+ /** Customer theming */theme: t.TypeC<{
2238
+ /** Primary color */primaryColor: t.StringC; /** Font color */
2239
+ fontColor: t.StringC;
2240
+ }>; /** A set of responsive breakpoints */
2241
+ breakpoints: t.TypeC<{
2242
+ /** In px, at or above this width is tablet */tablet: t.StringC; /** In px, at or above this width is desktop */
2243
+ desktop: t.StringC;
2244
+ }>; /** The privacy policy URL to redirect to */
2245
+ privacyPolicy: t.StringC; /** The secondary policy URL to redirect to */
2246
+ secondaryPolicy: t.StringC; /** Custom CSS stylesheet */
2247
+ css: t.StringC; /** Path to localizations directory */
2248
+ messages: t.StringC; /** What state the consent manager should launch in */
2249
+ initialViewStateByPrivacyRegime: t.RecordC<t.StringC, t.KeyofC<{
2250
+ QuickOptions: unknown;
2251
+ QuickOptions3: unknown;
2252
+ AcceptAll: unknown;
2253
+ AcceptAllRejectAllToggle: unknown;
2254
+ AcceptAllOrMoreChoices: unknown;
2255
+ AcceptOrRejectAll: unknown;
2256
+ AcceptOrRejectAllOrMoreChoices: unknown;
2257
+ AcceptOrRejectAnalytics: unknown;
2258
+ AcceptOrRejectAdvertising: unknown;
2259
+ NoticeAndDoNotSell: unknown;
2260
+ DoNotSellExplainer: unknown;
2261
+ CompleteOptionsToggles: unknown;
2262
+ PrivacyPolicyNotice: unknown;
2263
+ PrivacyPolicyNoticeWithCloseButton: unknown;
2264
+ CompleteOptions: unknown;
2265
+ CompleteOptionsInverted: unknown;
2266
+ Hidden: unknown;
2267
+ TCF_EU: unknown;
2268
+ }>>; /** What state the consent manager should go to when dismissed */
2269
+ dismissedViewState: t.KeyofC<{
2270
+ Collapsed: unknown;
2271
+ Closed: unknown;
2272
+ }>;
2273
+ }>, t.PartialC<{
2274
+ /** The set of enabled languages - CSV of ConsentManagerSupportedTranslationValue */languages: t.StringC; /** The override value for the consent banner z-index */
2275
+ uiZIndex: t.StringC;
2276
+ /**
2277
+ * The override value for the consent banner shadow root state
2278
+ *
2279
+ * Potential values: 'closed' (default) and 'open'
2280
+ */
2281
+ uiShadowRoot: t.StringC;
2282
+ /**
2283
+ * The override value for whether to focus on the first descendant of the root arg w/data-initialFocus attribute
2284
+ * Potential values: `'on'` (default) or `'off'`
2285
+ *
2286
+ */
2287
+ autofocus: t.KeyofC<{
2288
+ on: null;
2289
+ off: null;
2290
+ }>;
2291
+ }>]>;
2292
+ /** Type override */
2293
+ type ConsentManagerConfig = t.TypeOf<typeof ConsentManagerConfig>;
2294
+ /** Input for Consent manager UI configuration */
2295
+ declare const ConsentManagerConfigInput: t.PartialC<{
2296
+ /** Customer theming */theme: t.TypeC<{
2297
+ /** Primary color */primaryColor: t.StringC; /** Font color */
2298
+ fontColor: t.StringC;
2299
+ }>; /** A set of responsive breakpoints */
2300
+ breakpoints: t.TypeC<{
2301
+ /** In px, at or above this width is tablet */tablet: t.StringC; /** In px, at or above this width is desktop */
2302
+ desktop: t.StringC;
2303
+ }>; /** The privacy policy URL to redirect to */
2304
+ privacyPolicy: t.StringC; /** The secondary policy URL to redirect to */
2305
+ secondaryPolicy: t.StringC; /** Custom CSS stylesheet */
2306
+ css: t.StringC; /** Path to localizations directory */
2307
+ messages: t.StringC; /** What state the consent manager should launch in */
2308
+ initialViewStateByPrivacyRegime: t.RecordC<t.StringC, t.KeyofC<{
2309
+ QuickOptions: unknown;
2310
+ QuickOptions3: unknown;
2311
+ AcceptAll: unknown;
2312
+ AcceptAllRejectAllToggle: unknown;
2313
+ AcceptAllOrMoreChoices: unknown;
2314
+ AcceptOrRejectAll: unknown;
2315
+ AcceptOrRejectAllOrMoreChoices: unknown;
2316
+ AcceptOrRejectAnalytics: unknown;
2317
+ AcceptOrRejectAdvertising: unknown;
2318
+ NoticeAndDoNotSell: unknown;
2319
+ DoNotSellExplainer: unknown;
2320
+ CompleteOptionsToggles: unknown;
2321
+ PrivacyPolicyNotice: unknown;
2322
+ PrivacyPolicyNoticeWithCloseButton: unknown;
2323
+ CompleteOptions: unknown;
2324
+ CompleteOptionsInverted: unknown;
2325
+ Hidden: unknown;
2326
+ TCF_EU: unknown;
2327
+ }>>; /** What state the consent manager should go to when dismissed */
2328
+ dismissedViewState: t.KeyofC<{
2329
+ Collapsed: unknown;
2330
+ Closed: unknown;
2331
+ }>; /** The set of enabled languages - CSV of ConsentManagerSupportedTranslationValue */
2332
+ languages: t.StringC; /** The override value for the consent banner z-index */
2333
+ uiZIndex: t.StringC;
2334
+ /**
2335
+ * The override value for the consent banner shadow root state
2336
+ *
2337
+ * Potential values: 'closed' (default) and 'open'
2338
+ */
2339
+ uiShadowRoot: t.StringC;
2340
+ /**
2341
+ * The override value for whether to focus on the first descendant of the root arg w/data-initialFocus attribute
2342
+ * Potential values: `'on'` (default) or `'off'`
2343
+ *
2344
+ */
2345
+ autofocus: t.KeyofC<{
2346
+ on: null;
2347
+ off: null;
2348
+ }>;
2349
+ }>;
2350
+ /** Type override */
2351
+ type ConsentManagerConfigInput = t.TypeOf<typeof ConsentManagerConfigInput>;
2352
+ declare const TCFConfig: t.TypeC<{
2353
+ /** Path to vendor-list.json */vendorList: t.StringC; /** Custom CSS stylesheet */
2354
+ css: t.StringC; /** Path to localizations directory */
2355
+ messages: t.StringC;
2356
+ }>;
2357
+ /** Type override */
2358
+ type TCFConfig = t.TypeOf<typeof TCFConfig>;
2359
+ /** Configuration that are passed directly to the TCF module, not via airgap.j */
2360
+ declare const TCFBundledDataConfig: t.PartialC<{
2361
+ /** Mapping of TCF Purpose ID to airgap tracking types */purposeMap: t.ArrayC<t.TupleC<[t.NumberC, t.ArrayC<t.StringC>]>>; /** These TCF purposes cannot be processed on the basis of legitimate interests */
2362
+ restrictLegitimateInterestPurposes: t.ArrayC<t.NumberC>; /** Vendors that Transcend Consent regulates because they haven't registered with IAB TCF */
2363
+ nonTcfVendors: t.ArrayC<t.IntersectionC<[t.TypeC<{
2364
+ name: t.StringC;
2365
+ purposes: t.ArrayC<t.StringC>;
2366
+ }>, t.PartialC<{
2367
+ description: t.StringC;
2368
+ privacyPolicyUrl: t.StringC;
2369
+ }>]>>; /** Comma separated list of languages to support in the UI */
2370
+ languages: t.StringC; /** Default locale to use for the UI internationalization */
2371
+ locale: t.StringC;
2372
+ /**
2373
+ * Whether or not to enable integration between Google Consent Mode and TCF.
2374
+ * More docs here https://developers.google.com/tag-platform/security/guides/implement-TCF-strings#cmp-api
2375
+ */
2376
+ enableAdvertiserConsentMode: t.BooleanC;
2377
+ }>;
2378
+ /** Type override */
2379
+ type TCFBundledDataConfig = t.TypeOf<typeof TCFBundledDataConfig>;
2380
+ /** Input for Consent manager UI configuration */
2381
+ declare const TCFConfigInput: t.PartialC<{
2382
+ /** Path to vendor-list.json */vendorList: t.StringC; /** Custom CSS stylesheet */
2383
+ css: t.StringC; /** Path to localizations directory */
2384
+ messages: t.StringC;
2385
+ }>;
2386
+ /** Type override */
2387
+ type TCFConfigInput = t.TypeOf<typeof TCFConfigInput>;
2388
+ /**
2389
+ * Properties exposed on `self` by the Transcend Smart Quarantine
2390
+ */
2391
+ type TranscendView = Window & {
2392
+ /** Transcend Smart Quarantine API */transcend: TranscendAPI;
2393
+ };
2394
+ declare const DEFAULT_VIEW_STATE_BY_PRIVACY_REGIME: ExperienceToInitialViewState;
2395
+ //#endregion
2396
+ //#region src/constants.d.ts
2397
+ declare const UNKNOWN_DEFAULT_EXPERIENCE = "Unknown";
2398
+ declare const GDPR_PURPOSES: [PrivacyRegime[], TrackingPurpose[]];
2399
+ declare const DEFAULT_REGIME_TRACKING_PURPOSE_SCOPES: RegimePurposeScopesConfig;
2400
+ declare const DEFAULT_REGIME_PURPOSE_OPT_OUTS: RegimePurposeScopesConfig;
2401
+ declare const DEFAULT_EXPERIENCE_PURPOSE_OPT_OUTS: any;
2402
+ declare const DEFAULT_EXPERIENCE_PURPOSE_SCOPES: any;
2403
+ declare const REGIME_TIMEZONES: Record<PrivacyRegime, string[]>;
2404
+ declare const REGIME_DISPLAY_PRIORITY: Record<PrivacyRegime, number>;
2405
+ /**
2406
+ * These TCF Purposes cannot be allowed to process under legitimate interest legal basis
2407
+ * Source:
2408
+ * https://iabeurope.eu/iab-europe-transparency-consent-framework-policies/#:~:text=Appendix%20A:%20Definitions%20Of%20Purposes,%20Features%20And%20Categories%20Of%20Data
2409
+ */
2410
+ declare const DEFAULT_RESTRICT_LEGIT_INTEREST_PROCESSING: number[];
2411
+ //#endregion
2412
+ //#region src/experience.d.ts
2413
+ interface Region {
2414
+ /** A country's ISO code */
2415
+ country: IsoCountryCode;
2416
+ /** A country subdivision ISO code */
2417
+ countrySubDivision?: string;
2418
+ }
2419
+ interface ExperiencePurposeInput {
2420
+ /** name of the purpose */
2421
+ purpose: Purpose;
2422
+ /** opt out by default */
2423
+ defaultOptOut: boolean;
2424
+ }
2425
+ interface ExperienceInput {
2426
+ /** The regime determining the default experience */
2427
+ name: PrivacyRegime;
2428
+ /** The display name of the experience */
2429
+ displayName: string;
2430
+ /** A list of regions to be included/not included in this experience */
2431
+ regions: Region[];
2432
+ /** A list of browser languages that this experience applies to */
2433
+ browserLanguages: string[];
2434
+ /** A list of browser time zones that this experience applies to */
2435
+ browserTimeZones: string[];
2436
+ /** Whether the listed regions are included or excluded from the experience */
2437
+ operator: RegionsOperator;
2438
+ /** If data subject linked to multiple experiences, display priority for experiences. Lower number, higher priority. */
2439
+ displayPriority: number;
2440
+ /** The view state to display on transcend.showConsentManager() */
2441
+ viewState: InitialViewState;
2442
+ /** experience purposes to be added */
2443
+ experiencePurposeInputs: ExperiencePurposeInput[];
2444
+ /** Time in months after which a user's opt-in consent should expire */
2445
+ consentExpiry: number;
2446
+ /** Behavior to exhibit when the user's consent has expired */
2447
+ onConsentExpiry: OnConsentExpiry;
2448
+ }
2449
+ declare const REGIME_REGIONS: Record<PrivacyRegime, Region[]>;
2450
+ declare const REGIME_LANGUAGES: Record<PrivacyRegime, string[]>;
2451
+ declare const REGIME_CONSENT_EXPIRY: Record<PrivacyRegime, number>;
2452
+ declare const REGIME_ON_CONSENT_EXPIRY: Record<PrivacyRegime, OnConsentExpiry>;
2453
+ /**
2454
+ * construct default experience for regime
2455
+ * @param regime - regime
2456
+ * @returns ExperienceInput
2457
+ */
2458
+ declare function defaultExperience(regime: PrivacyRegime): ExperienceInput;
2459
+ declare const DEFAULT_EXPERIENCES: {
2460
+ Unknown: ExperienceInput;
2461
+ CPRA: ExperienceInput;
2462
+ GDPR: ExperienceInput;
2463
+ LGPD: ExperienceInput;
2464
+ CDPA: ExperienceInput;
2465
+ CPA: ExperienceInput;
2466
+ NEVADA_SB220: ExperienceInput;
2467
+ nFADP: ExperienceInput;
2468
+ US_DNSS: ExperienceInput;
2469
+ };
2470
+ //#endregion
2471
+ //#region src/mobile.d.ts
2472
+ declare const ConsentSDK: t.TypeC<{
2473
+ /** Unique identifier for the SDK */id: t.StringC; /** airgap purposes applicable to this SDK */
2474
+ purposes: t.ArrayC<t.StringC>;
2475
+ }>;
2476
+ /**
2477
+ * Type override
2478
+ */
2479
+ type ConsentSDK = t.TypeOf<typeof ConsentSDK>;
2480
+ declare const ConsentService: t.IntersectionC<[t.TypeC<{
2481
+ name: t.StringC;
2482
+ }>, t.PartialC<{
2483
+ sdks: t.ArrayC<t.TypeC<{
2484
+ /** Unique identifier for the SDK */id: t.StringC; /** airgap purposes applicable to this SDK */
2485
+ purposes: t.ArrayC<t.StringC>;
2486
+ }>>;
2487
+ tcfId: t.NumberC;
2488
+ }>]>;
2489
+ /**
2490
+ * Type override
2491
+ */
2492
+ type ConsentService = t.TypeOf<typeof ConsentService>;
2493
+ declare const MobileConfig: t.TypeC<{
2494
+ services: t.ArrayC<t.IntersectionC<[t.TypeC<{
2495
+ name: t.StringC;
2496
+ }>, t.PartialC<{
2497
+ sdks: t.ArrayC<t.TypeC<{
2498
+ /** Unique identifier for the SDK */id: t.StringC; /** airgap purposes applicable to this SDK */
2499
+ purposes: t.ArrayC<t.StringC>;
2500
+ }>>;
2501
+ tcfId: t.NumberC;
2502
+ }>]>>;
2503
+ }>;
2504
+ /**
2505
+ * Type override
2506
+ */
2507
+ type MobileConfig = t.TypeOf<typeof MobileConfig>;
2508
+ //#endregion
2509
+ export { AirgapAPI, AirgapAuth, AirgapAuthMap, AirgapConsentEventType, AirgapDOMRequestSource, AirgapEventType, AirgapExportOptions, AirgapQueues, AirgapRequestSource, AirgapSyncType, AirgapSystemStatus, AirgapToggleOptions, AirgapWatcher, AutoOptOut, AutoOptOutForDNT, AutoOptOutForGDPR, AutoOptOutForGPC, BooleanString, BrowserLanguage, ConfigurablePurpose, ConsentChange, ConsentChangeEventDetails, ConsentChangeEventPayload, ConsentManagerAPI, ConsentManagerBreakpoints, ConsentManagerConfig, ConsentManagerConfigInput, ConsentManagerTheme, ConsentOptions, ConsentPreferencesBody, ConsentSDK, ConsentService, ConsentTokenPayload, ConsoleSafeLogLevel, Cookie, CookieOverride, CookieWatcher, CoreTrackingConsentDetails, DEFAULT_EXPERIENCES, DEFAULT_EXPERIENCE_PURPOSE_OPT_OUTS, DEFAULT_EXPERIENCE_PURPOSE_SCOPES, DEFAULT_REGIME_PURPOSE_OPT_OUTS, DEFAULT_REGIME_TRACKING_PURPOSE_SCOPES, DEFAULT_RESTRICT_LEGIT_INTEREST_PROCESSING, DEFAULT_VIEW_STATE_BY_PRIVACY_REGIME, DeepViewState, DefaultConsentConfig, DefaultConsentConfigValue, DefaultConsentValue, DismissedViewState, ExperienceInput, ExperiencePurposeInput, ExperienceToInitialViewState, FullTrackingConsentDetails, FullTrackingConsentDetailsWithNulls, GDPR_PURPOSES, GetPurposeTypesOptions, GetTranscendPolicies, IABViewState, IDynamicNodeReference, IPendingCookieMutation, IPendingEvent, IPendingMutation, IPendingRequest, InitialTranscendViewState, InitialViewState, InstantiatedPendingCookieMutationProps, InstantiatedPendingRequestProps, KnownDefaultPurpose, LogEmitter, LogEntry, LogEntryType, LogItem, LogLevel, LogMessage, LogTag, Logger, Metadata, MobileConfig, NonTcfVendor, OnConsentExpiry, OptionalConsentManagerConfig, PendingCookieMutationDescriptor, PendingCookieMutationInit, PendingCookieMutationJSON, PendingCookieQueue, PendingEventDescriptor, PendingEventInit, PendingEventQueue, PendingMutationDescriptor, PendingMutationInit, PendingMutationJSON, PendingMutationQueue, PendingRequestDescriptor, PendingRequestInit, PendingRequestJSON, PendingRequestQueue, PreInitTranscendAPI, PrivacyRegime, PrivacyRegimeEnum, PrivacyRegimeToInitialViewState, PrivacyRegimeToInitialViewStateInput, Purpose, REGIME_CONSENT_EXPIRY, REGIME_DISPLAY_PRIORITY, REGIME_LANGUAGES, REGIME_ON_CONSENT_EXPIRY, REGIME_REGIONS, REGIME_TIMEZONES, RegimePurposeScopesConfig, RegimeToPurposeScopes, Region, RegionsOperator, Removable, RequestOverride, RequiredConsentManagerConfig, ReservedMetadata, ResponseViewState, ShowConsentManagerOptions, SpecialTrackingPurpose, Stringifiable, SyncOptions, TCFBundledDataConfig, TCFConfig, TCFConfigInput, TcfGvlV3DataCategory, TcfGvlV3DataRetention, TcfGvlV3Purpose, TcfGvlV3Url, TcfGvlV3Vendor, TcfPurpose, TcfStack, TcfV2VendorList, TcfV3VendorList, TcfVendor, TcfVendorListVersion, TrackingConsent, TrackingConsentDetails, TrackingConsentOptionalData, TrackingConsentWithNulls, TrackingEventType, TrackingPurpose, TrackingPurposeDetails, TrackingPurposes, TrackingPurposesConfig, TrackingPurposesTypes, TranscendAPI, TranscendEventType, TranscendPolicy, TranscendView, UNKNOWN_DEFAULT_EXPERIENCE, UserPrivacySignal, UserPrivacySignalEnum, ViewState, ViewStateEventDetails, defaultExperience };
2510
+ //# sourceMappingURL=index.d.mts.map