@ketch-sdk/ketch-types 1.3.3 → 1.4.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.editorconfig +13 -0
- package/.eslintignore +3 -0
- package/.eslintrc.json +31 -0
- package/.github/CODEOWNERS +1 -0
- package/.github/CONTRIBUTING.md +177 -0
- package/.github/ISSUE_TEMPLATE.md +19 -0
- package/.github/PULL_REQUEST_TEMPLATE.md +30 -0
- package/.github/dependabot.yml +18 -0
- package/.github/release.yml +18 -0
- package/.github/workflows/ci.yml +79 -0
- package/.prettierignore +3 -0
- package/.prettierrc +15 -0
- package/docs/.nojekyll +1 -0
- package/docs/assets/highlight.css +22 -0
- package/docs/assets/main.js +4 -0
- package/docs/assets/search.js +1 -0
- package/docs/assets/style.css +1280 -0
- package/docs/enums/BannerPosition.html +88 -0
- package/docs/enums/ConsentExperienceType.html +81 -0
- package/docs/enums/CookieCategory.html +88 -0
- package/docs/enums/CookieDuration.html +74 -0
- package/docs/enums/CookieProvenance.html +74 -0
- package/docs/enums/ExperienceButtonDestination.html +81 -0
- package/docs/enums/ExperienceClosedReason.html +91 -0
- package/docs/enums/ExperienceDefault.html +74 -0
- package/docs/enums/ExperiencePrimaryButtonAction.html +74 -0
- package/docs/enums/ExperienceType.html +74 -0
- package/docs/enums/IdentityFormat.html +102 -0
- package/docs/enums/IdentityType.html +116 -0
- package/docs/enums/MigrationOption.html +95 -0
- package/docs/enums/ModalPosition.html +81 -0
- package/docs/enums/SwitchTextRenderLogic.html +96 -0
- package/docs/functions/isTab.html +137 -0
- package/docs/index.html +126 -0
- package/docs/interfaces/AppDiv.html +78 -0
- package/docs/interfaces/Banner.html +129 -0
- package/docs/interfaces/CanonicalPurpose.html +85 -0
- package/docs/interfaces/Configuration.html +305 -0
- package/docs/interfaces/ConsentExperience.html +120 -0
- package/docs/interfaces/ConsentsTab.html +161 -0
- package/docs/interfaces/Cookie.html +134 -0
- package/docs/interfaces/DataSubject.html +152 -0
- package/docs/interfaces/DataSubjectType.html +87 -0
- package/docs/interfaces/Deployment.html +78 -0
- package/docs/interfaces/Environment.html +92 -0
- package/docs/interfaces/Experience.html +78 -0
- package/docs/interfaces/GetBootstrapConfigurationRequest.html +78 -0
- package/docs/interfaces/GetConsentRequest.html +137 -0
- package/docs/interfaces/GetConsentResponse.html +139 -0
- package/docs/interfaces/GetFullConfigurationRequest.html +113 -0
- package/docs/interfaces/GetLocationRequest.html +71 -0
- package/docs/interfaces/GetLocationResponse.html +71 -0
- package/docs/interfaces/GetPreferenceQRRequest.html +125 -0
- package/docs/interfaces/IPInfo.html +155 -0
- package/docs/interfaces/IPLanguage.html +85 -0
- package/docs/interfaces/IPLocation.html +120 -0
- package/docs/interfaces/Identity.html +110 -0
- package/docs/interfaces/InvokeRightRequest.html +139 -0
- package/docs/interfaces/JIT.html +129 -0
- package/docs/interfaces/JurisdictionInfo.html +97 -0
- package/docs/interfaces/Ketch.html +735 -0
- package/docs/interfaces/Loaded.html +73 -0
- package/docs/interfaces/Modal.html +176 -0
- package/docs/interfaces/Organization.html +71 -0
- package/docs/interfaces/OverviewTab.html +99 -0
- package/docs/interfaces/PluginClass.html +354 -0
- package/docs/interfaces/PolicyDocument.html +85 -0
- package/docs/interfaces/PreferenceExperience.html +120 -0
- package/docs/interfaces/Property.html +92 -0
- package/docs/interfaces/Purpose.html +179 -0
- package/docs/interfaces/PurposeAllowed.html +78 -0
- package/docs/interfaces/PurposeAllowedLegalBasis.html +78 -0
- package/docs/interfaces/PurposeLegalBasis.html +78 -0
- package/docs/interfaces/Pusher.html +83 -0
- package/docs/interfaces/Recaptcha.html +73 -0
- package/docs/interfaces/Right.html +95 -0
- package/docs/interfaces/RightsTab.html +106 -0
- package/docs/interfaces/SetConsentRequest.html +144 -0
- package/docs/interfaces/Stack.html +82 -0
- package/docs/interfaces/StorageProvider.html +117 -0
- package/docs/interfaces/Theme.html +262 -0
- package/docs/interfaces/Vendor.html +134 -0
- package/docs/interfaces/VendorPurpose.html +78 -0
- package/docs/interfaces/WebReportRequest.html +104 -0
- package/docs/modules.html +218 -0
- package/docs/types/Callback.html +141 -0
- package/docs/types/Consent.html +135 -0
- package/docs/types/Identities.html +133 -0
- package/docs/types/IdentityProvider.html +136 -0
- package/docs/types/InvokeRightEvent.html +137 -0
- package/docs/types/Plugin.html +128 -0
- package/docs/types/PluginFunction.html +143 -0
- package/docs/types/PurposeCategory.html +139 -0
- package/docs/types/ShowConsentOptions.html +135 -0
- package/docs/types/ShowPreferenceOptions.html +149 -0
- package/docs/types/Status.html +133 -0
- package/docs/types/Tab.html +128 -0
- package/docs/types/TabTuple.html +128 -0
- package/docs/variables/ALL_TABS.html +128 -0
- package/jest.config.js +174 -0
- package/package.json +1 -1
- package/src/index.ts +1339 -0
- package/tsconfig.json +8 -3
- package/tsfmt.json +19 -0
- package/dist/index.d.ts +0 -1137
- package/dist/index.js +0 -1
- package/test-reports/coverage/clover.xml +0 -6
- package/test-reports/coverage/coverage-final.json +0 -1
- package/test-reports/coverage/lcov-report/base.css +0 -224
- package/test-reports/coverage/lcov-report/block-navigation.js +0 -87
- package/test-reports/coverage/lcov-report/favicon.png +0 -0
- package/test-reports/coverage/lcov-report/index.html +0 -101
- package/test-reports/coverage/lcov-report/prettify.css +0 -1
- package/test-reports/coverage/lcov-report/prettify.js +0 -2
- package/test-reports/coverage/lcov-report/sort-arrow-sprite.png +0 -0
- package/test-reports/coverage/lcov-report/sorter.js +0 -196
- package/test-reports/coverage/lcov.info +0 -0
- package/test-reports/junit/junit.xml +0 -3
package/dist/index.d.ts
DELETED
|
@@ -1,1137 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Callback
|
|
3
|
-
*/
|
|
4
|
-
export declare type Callback = (arg0: any) => void;
|
|
5
|
-
/**
|
|
6
|
-
* Status
|
|
7
|
-
*/
|
|
8
|
-
export type Status = {
|
|
9
|
-
[key: string]: boolean;
|
|
10
|
-
};
|
|
11
|
-
/**
|
|
12
|
-
* Consent
|
|
13
|
-
*/
|
|
14
|
-
export type Consent = {
|
|
15
|
-
purposes: Status;
|
|
16
|
-
vendors?: string[];
|
|
17
|
-
};
|
|
18
|
-
/**
|
|
19
|
-
* Identities
|
|
20
|
-
*/
|
|
21
|
-
export type Identities = {
|
|
22
|
-
[key: string]: string;
|
|
23
|
-
};
|
|
24
|
-
/**
|
|
25
|
-
* Tabs
|
|
26
|
-
*/
|
|
27
|
-
export declare const ALL_TABS: readonly ["overviewTab", "rightsTab", "consentsTab"];
|
|
28
|
-
type TabTuple = typeof ALL_TABS;
|
|
29
|
-
export type Tab = TabTuple[number];
|
|
30
|
-
export declare function isTab(value: string): value is Tab;
|
|
31
|
-
/**
|
|
32
|
-
* Plugin class
|
|
33
|
-
*/
|
|
34
|
-
export interface PluginClass {
|
|
35
|
-
init?: (host: Ketch, config: Configuration) => void;
|
|
36
|
-
environmentLoaded?: (host: Ketch, config: Configuration, env: Environment) => void;
|
|
37
|
-
geoIPLoaded?: (host: Ketch, config: Configuration, ipInfo: IPInfo) => void;
|
|
38
|
-
identitiesLoaded?: (host: Ketch, config: Configuration, identities: Identities) => void;
|
|
39
|
-
jurisdictionLoaded?: (host: Ketch, config: Configuration, policyScope: string) => void;
|
|
40
|
-
regionInfoLoaded?: (host: Ketch, config: Configuration, region: string) => void;
|
|
41
|
-
consentChanged?: (host: Ketch, config: Configuration, consent: Consent) => void;
|
|
42
|
-
rightInvoked?: (host: Ketch, config: Configuration, request: InvokeRightRequest) => void;
|
|
43
|
-
showConsentExperience?: (host: Ketch, config: Configuration, consents: Consent, options?: ShowConsentOptions) => void;
|
|
44
|
-
showPreferenceExperience?: (host: Ketch, config: Configuration, consents: Consent, options?: ShowPreferenceOptions) => void;
|
|
45
|
-
willShowExperience?: (host: Ketch, config: Configuration, type: string) => void;
|
|
46
|
-
experienceHidden?: (host: Ketch, config: Configuration, reason: string) => void;
|
|
47
|
-
}
|
|
48
|
-
/**
|
|
49
|
-
* Plugin factory function signature
|
|
50
|
-
*/
|
|
51
|
-
export type PluginFunction = (host: Ketch, config?: any) => Promise<void>;
|
|
52
|
-
/**
|
|
53
|
-
* Plugin
|
|
54
|
-
*/
|
|
55
|
-
export type Plugin = PluginClass | PluginFunction;
|
|
56
|
-
/**
|
|
57
|
-
* Ketch host
|
|
58
|
-
*/
|
|
59
|
-
export interface Ketch {
|
|
60
|
-
getConfig(): Promise<Configuration>;
|
|
61
|
-
registerPlugin(plugin: Plugin, config?: any): Promise<void>;
|
|
62
|
-
registerIdentityProvider(name: string, provider: () => Promise<string[]>): Promise<void>;
|
|
63
|
-
hasConsent(): boolean;
|
|
64
|
-
getConsent(): Promise<Consent>;
|
|
65
|
-
setConsent(c: Consent): Promise<Consent>;
|
|
66
|
-
/**
|
|
67
|
-
* @deprecated use on('consent', callback)
|
|
68
|
-
* @param callback
|
|
69
|
-
*/
|
|
70
|
-
onConsent(callback: Callback): Promise<void>;
|
|
71
|
-
setShowConsentExperience(): Promise<void>;
|
|
72
|
-
showConsentExperience(): Promise<Consent>;
|
|
73
|
-
/**
|
|
74
|
-
* @deprecated use on('showConsentExperience', callback)
|
|
75
|
-
* @param callback
|
|
76
|
-
*/
|
|
77
|
-
onShowConsentExperience(callback: (consents: Consent, options?: ShowConsentOptions) => void): Promise<void>;
|
|
78
|
-
showPreferenceExperience(params: ShowPreferenceOptions): Promise<Consent>;
|
|
79
|
-
/**
|
|
80
|
-
* @deprecated use on('showPreferenceExperience', callback)
|
|
81
|
-
* @param callback
|
|
82
|
-
*/
|
|
83
|
-
onShowPreferenceExperience(callback: (consents: Consent, options?: ShowPreferenceOptions) => void): Promise<void>;
|
|
84
|
-
experienceClosed(reason: ExperienceClosedReason): Promise<Consent>;
|
|
85
|
-
/**
|
|
86
|
-
* @deprecated use on('experienceHidden', callback)
|
|
87
|
-
* @param callback
|
|
88
|
-
*/
|
|
89
|
-
onHideExperience(callback: Callback): Promise<void>;
|
|
90
|
-
/**
|
|
91
|
-
* @deprecated use on('willShowExperience', callback)
|
|
92
|
-
* @param callback
|
|
93
|
-
*/
|
|
94
|
-
onWillShowExperience(callback: Callback): Promise<void>;
|
|
95
|
-
invokeRight(eventData: InvokeRightEvent): Promise<void>;
|
|
96
|
-
/**
|
|
97
|
-
* @deprecated use on('rightInvoked', callback)
|
|
98
|
-
* @param callback
|
|
99
|
-
*/
|
|
100
|
-
onInvokeRight(callback: Callback): Promise<void>;
|
|
101
|
-
setEnvironment(env: Environment): Promise<Environment>;
|
|
102
|
-
getEnvironment(): Promise<Environment>;
|
|
103
|
-
/**
|
|
104
|
-
* @deprecated use on('environment', callback)
|
|
105
|
-
* @param callback
|
|
106
|
-
*/
|
|
107
|
-
onEnvironment(callback: Callback): Promise<void>;
|
|
108
|
-
setGeoIP(g: IPInfo): Promise<IPInfo>;
|
|
109
|
-
getGeoIP(): Promise<IPInfo>;
|
|
110
|
-
/**
|
|
111
|
-
* @deprecated use on('geoip', callback)
|
|
112
|
-
* @param callback
|
|
113
|
-
*/
|
|
114
|
-
onGeoIP(callback: Callback): Promise<void>;
|
|
115
|
-
setIdentities(id: Identities): Promise<Identities>;
|
|
116
|
-
getIdentities(): Promise<Identities>;
|
|
117
|
-
/**
|
|
118
|
-
* @deprecated use on('identities', callback)
|
|
119
|
-
* @param callback
|
|
120
|
-
*/
|
|
121
|
-
onIdentities(callback: Callback): Promise<void>;
|
|
122
|
-
setJurisdiction(ps: string): Promise<string>;
|
|
123
|
-
getJurisdiction(): Promise<string>;
|
|
124
|
-
/**
|
|
125
|
-
* @deprecated use on('jurisdiction', callback)
|
|
126
|
-
* @param callback
|
|
127
|
-
*/
|
|
128
|
-
onJurisdiction(callback: Callback): Promise<void>;
|
|
129
|
-
setRegionInfo(info: string): Promise<string>;
|
|
130
|
-
getRegionInfo(): Promise<string>;
|
|
131
|
-
/**
|
|
132
|
-
* @deprecated use on('region', callback)
|
|
133
|
-
* @param callback
|
|
134
|
-
*/
|
|
135
|
-
onRegionInfo(callback: Callback): Promise<void>;
|
|
136
|
-
emit(eventName: string | symbol, ...args: any[]): boolean;
|
|
137
|
-
addListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
|
|
138
|
-
removeListener(eventName: string | symbol, listener: (...args: any[]) => void): this;
|
|
139
|
-
on(eventName: string | symbol, listener: (...args: any[]) => void): this;
|
|
140
|
-
once(eventName: string | symbol, listener: (...args: any[]) => void): this;
|
|
141
|
-
off(eventName: string | symbol, listener: (...args: any[]) => void): this;
|
|
142
|
-
}
|
|
143
|
-
/**
|
|
144
|
-
* ShowPreferenceOptions
|
|
145
|
-
*/
|
|
146
|
-
export type ShowPreferenceOptions = {
|
|
147
|
-
tab?: Tab;
|
|
148
|
-
/**
|
|
149
|
-
* dataSubjectTypeCodes is the list of data subjects to display. If undefined, all data subjects are displayed.
|
|
150
|
-
*/
|
|
151
|
-
dataSubjectTypeCodes?: string[];
|
|
152
|
-
/**
|
|
153
|
-
* showRightsTab determines whether the rights tab will show. If undefined, the rights tab is displayed.
|
|
154
|
-
*/
|
|
155
|
-
showRightsTab?: boolean;
|
|
156
|
-
/**
|
|
157
|
-
* supportedCountries is the list of supported ISO 3166 ALPHA-2 country codes to show in the rights form
|
|
158
|
-
*/
|
|
159
|
-
supportedCountries?: string[];
|
|
160
|
-
/**
|
|
161
|
-
* showConsentsTab determines whether the consents tab will show. If undefined, the consents tab is displayed
|
|
162
|
-
*/
|
|
163
|
-
showConsentsTab?: boolean;
|
|
164
|
-
};
|
|
165
|
-
/**
|
|
166
|
-
* ExperienceType is the type of experience that will be shown
|
|
167
|
-
*/
|
|
168
|
-
export declare enum ExperienceType {
|
|
169
|
-
Consent = "experiences.consent",
|
|
170
|
-
Preference = "experiences.preference"
|
|
171
|
-
}
|
|
172
|
-
/**
|
|
173
|
-
* ConsentExperienceType is the type of consent experience that will be shown
|
|
174
|
-
*/
|
|
175
|
-
export declare enum ConsentExperienceType {
|
|
176
|
-
Banner = "experiences.consent.banner",
|
|
177
|
-
Modal = "experiences.consent.modal",
|
|
178
|
-
JIT = "experiences.consent.jit"
|
|
179
|
-
}
|
|
180
|
-
/**
|
|
181
|
-
* ShowConsentOptions
|
|
182
|
-
*/
|
|
183
|
-
export type ShowConsentOptions = {
|
|
184
|
-
displayHint: ConsentExperienceType;
|
|
185
|
-
purposes?: string[];
|
|
186
|
-
};
|
|
187
|
-
/**
|
|
188
|
-
* InvokeRightEvent
|
|
189
|
-
*/
|
|
190
|
-
export type InvokeRightEvent = {
|
|
191
|
-
right: string;
|
|
192
|
-
subject: DataSubject;
|
|
193
|
-
recaptchaToken?: string;
|
|
194
|
-
};
|
|
195
|
-
/**
|
|
196
|
-
* AppDiv
|
|
197
|
-
*/
|
|
198
|
-
export interface AppDiv {
|
|
199
|
-
id: string;
|
|
200
|
-
zIndex: string;
|
|
201
|
-
}
|
|
202
|
-
/**
|
|
203
|
-
* ExperienceClosedReason describes the reason the experience was closed.
|
|
204
|
-
*
|
|
205
|
-
* setConsent = consent was accepted/set
|
|
206
|
-
* invokeRight = the right was invoked
|
|
207
|
-
* close = the close/exit button was clicked
|
|
208
|
-
*/
|
|
209
|
-
export declare enum ExperienceClosedReason {
|
|
210
|
-
SET_CONSENT = "setConsent",
|
|
211
|
-
INVOKE_RIGHT = "invokeRight",
|
|
212
|
-
CLOSE = "close",
|
|
213
|
-
WILL_NOT_SHOW = "willNotShow"
|
|
214
|
-
}
|
|
215
|
-
/**
|
|
216
|
-
* ExperienceDefault
|
|
217
|
-
*/
|
|
218
|
-
export declare enum ExperienceDefault {
|
|
219
|
-
BANNER = 1,
|
|
220
|
-
MODAL = 2
|
|
221
|
-
}
|
|
222
|
-
/**
|
|
223
|
-
* ExperienceButtonDestination
|
|
224
|
-
*/
|
|
225
|
-
export declare enum ExperienceButtonDestination {
|
|
226
|
-
GOTO_MODAL = 1,
|
|
227
|
-
GOTO_PREFERENCE = 2,
|
|
228
|
-
REJECT_ALL = 3
|
|
229
|
-
}
|
|
230
|
-
/**
|
|
231
|
-
* ExperiencePrimaryButtonAction
|
|
232
|
-
*/
|
|
233
|
-
export declare enum ExperiencePrimaryButtonAction {
|
|
234
|
-
SAVE_CURRENT_STATE = 1,
|
|
235
|
-
ACCEPT_ALL = 2
|
|
236
|
-
}
|
|
237
|
-
/**
|
|
238
|
-
* MigrationOption
|
|
239
|
-
*/
|
|
240
|
-
export declare enum MigrationOption {
|
|
241
|
-
MIGRATE_DEFAULT = 0,
|
|
242
|
-
MIGRATE_NEVER = 1,
|
|
243
|
-
MIGRATE_FROM_ALLOW = 2,
|
|
244
|
-
MIGRATE_FROM_DENY = 3,
|
|
245
|
-
MIGRATE_ALWAYS = 4
|
|
246
|
-
}
|
|
247
|
-
/**
|
|
248
|
-
* CookieDuration
|
|
249
|
-
*/
|
|
250
|
-
export declare enum CookieDuration {
|
|
251
|
-
SESSION = 1,
|
|
252
|
-
PERSISTENT = 2
|
|
253
|
-
}
|
|
254
|
-
/**
|
|
255
|
-
* CookieProvenance
|
|
256
|
-
*/
|
|
257
|
-
export declare enum CookieProvenance {
|
|
258
|
-
FIRST_PARTY = 1,
|
|
259
|
-
THIRD_PARTY = 2
|
|
260
|
-
}
|
|
261
|
-
/**
|
|
262
|
-
* CookieCategory
|
|
263
|
-
*/
|
|
264
|
-
export declare enum CookieCategory {
|
|
265
|
-
STRICTLY_NECESSARY = 1,
|
|
266
|
-
FUNCTIONAL = 2,
|
|
267
|
-
PERFORMANCE = 3,
|
|
268
|
-
MARKETING = 4
|
|
269
|
-
}
|
|
270
|
-
/**
|
|
271
|
-
* IPLanguage
|
|
272
|
-
*/
|
|
273
|
-
export interface IPLanguage {
|
|
274
|
-
code: string;
|
|
275
|
-
name: string;
|
|
276
|
-
native: string;
|
|
277
|
-
}
|
|
278
|
-
/**
|
|
279
|
-
* IPLocation
|
|
280
|
-
*/
|
|
281
|
-
export interface IPLocation {
|
|
282
|
-
geonameId: number;
|
|
283
|
-
capital: string;
|
|
284
|
-
languages: IPLanguage[];
|
|
285
|
-
countryFlag: string;
|
|
286
|
-
countryFlagEmoji: string;
|
|
287
|
-
countryFlagEmojiUnicode: string;
|
|
288
|
-
callingCode: string;
|
|
289
|
-
isEU: boolean;
|
|
290
|
-
}
|
|
291
|
-
/**
|
|
292
|
-
* IPInfo
|
|
293
|
-
*/
|
|
294
|
-
export interface IPInfo {
|
|
295
|
-
ip: string;
|
|
296
|
-
hostname: string;
|
|
297
|
-
continentCode: string;
|
|
298
|
-
continentName: string;
|
|
299
|
-
countryCode: string;
|
|
300
|
-
countryName: string;
|
|
301
|
-
regionCode: string;
|
|
302
|
-
regionName: string;
|
|
303
|
-
city: string;
|
|
304
|
-
zip: string;
|
|
305
|
-
latitude: number;
|
|
306
|
-
longitude: number;
|
|
307
|
-
location: IPLocation;
|
|
308
|
-
}
|
|
309
|
-
/**
|
|
310
|
-
* GetLocationRequest
|
|
311
|
-
*/
|
|
312
|
-
export interface GetLocationRequest {
|
|
313
|
-
IP?: string;
|
|
314
|
-
}
|
|
315
|
-
/**
|
|
316
|
-
* GetLocationResponse
|
|
317
|
-
*/
|
|
318
|
-
export interface GetLocationResponse {
|
|
319
|
-
location: IPInfo;
|
|
320
|
-
}
|
|
321
|
-
/**
|
|
322
|
-
* PurposeLegalBasis
|
|
323
|
-
*/
|
|
324
|
-
export interface PurposeLegalBasis {
|
|
325
|
-
allowed?: string;
|
|
326
|
-
legalBasisCode: string;
|
|
327
|
-
}
|
|
328
|
-
/**
|
|
329
|
-
* PurposeAllowed
|
|
330
|
-
*/
|
|
331
|
-
export interface PurposeAllowed {
|
|
332
|
-
allowed: string;
|
|
333
|
-
legalBasisCode?: string;
|
|
334
|
-
}
|
|
335
|
-
/**
|
|
336
|
-
* PurposeAllowedLegalBasis
|
|
337
|
-
*/
|
|
338
|
-
export interface PurposeAllowedLegalBasis {
|
|
339
|
-
allowed: string;
|
|
340
|
-
legalBasisCode: string;
|
|
341
|
-
}
|
|
342
|
-
/**
|
|
343
|
-
* GetConsentRequest
|
|
344
|
-
*/
|
|
345
|
-
export interface GetConsentRequest {
|
|
346
|
-
organizationCode: string;
|
|
347
|
-
controllerCode?: string;
|
|
348
|
-
propertyCode: string;
|
|
349
|
-
environmentCode: string;
|
|
350
|
-
jurisdictionCode: string;
|
|
351
|
-
identities: {
|
|
352
|
-
[key: string]: string;
|
|
353
|
-
};
|
|
354
|
-
purposes: {
|
|
355
|
-
[key: string]: PurposeLegalBasis;
|
|
356
|
-
};
|
|
357
|
-
vendors?: string[];
|
|
358
|
-
collectedAt?: number;
|
|
359
|
-
}
|
|
360
|
-
/**
|
|
361
|
-
* GetConsentResponse
|
|
362
|
-
*/
|
|
363
|
-
export interface GetConsentResponse {
|
|
364
|
-
organizationCode: string;
|
|
365
|
-
controllerCode?: string;
|
|
366
|
-
propertyCode: string;
|
|
367
|
-
environmentCode: string;
|
|
368
|
-
jurisdictionCode: string;
|
|
369
|
-
identities: {
|
|
370
|
-
[key: string]: string;
|
|
371
|
-
};
|
|
372
|
-
purposes: {
|
|
373
|
-
[key: string]: PurposeAllowed | string;
|
|
374
|
-
};
|
|
375
|
-
/**
|
|
376
|
-
* list of vendor ids for which the user has opted out
|
|
377
|
-
*/
|
|
378
|
-
vendors?: string[];
|
|
379
|
-
collectedAt?: number;
|
|
380
|
-
}
|
|
381
|
-
/**
|
|
382
|
-
* SetConsentRequest
|
|
383
|
-
*/
|
|
384
|
-
export interface SetConsentRequest {
|
|
385
|
-
organizationCode: string;
|
|
386
|
-
controllerCode?: string;
|
|
387
|
-
propertyCode: string;
|
|
388
|
-
environmentCode: string;
|
|
389
|
-
jurisdictionCode: string;
|
|
390
|
-
identities: {
|
|
391
|
-
[key: string]: string;
|
|
392
|
-
};
|
|
393
|
-
collectedAt?: number;
|
|
394
|
-
migrationOption?: MigrationOption;
|
|
395
|
-
purposes: {
|
|
396
|
-
[key: string]: PurposeAllowedLegalBasis;
|
|
397
|
-
};
|
|
398
|
-
vendors?: string[];
|
|
399
|
-
}
|
|
400
|
-
/**
|
|
401
|
-
* DataSubject
|
|
402
|
-
*/
|
|
403
|
-
export interface DataSubject {
|
|
404
|
-
email: string;
|
|
405
|
-
firstName: string;
|
|
406
|
-
lastName: string;
|
|
407
|
-
country?: string;
|
|
408
|
-
stateRegion?: string;
|
|
409
|
-
description?: string;
|
|
410
|
-
phone?: string;
|
|
411
|
-
postalCode?: string;
|
|
412
|
-
addressLine1?: string;
|
|
413
|
-
addressLine2?: string;
|
|
414
|
-
/**
|
|
415
|
-
* typeCode is the identifier representing the data subject type specified by the user
|
|
416
|
-
*/
|
|
417
|
-
typeCode?: string;
|
|
418
|
-
/**
|
|
419
|
-
* typeRelationshipDetails is additional information provided by the user describing their relation to the business
|
|
420
|
-
*/
|
|
421
|
-
typeRelationshipDetails?: string;
|
|
422
|
-
}
|
|
423
|
-
/**
|
|
424
|
-
* InvokeRightRequest
|
|
425
|
-
*/
|
|
426
|
-
export interface InvokeRightRequest {
|
|
427
|
-
organizationCode: string;
|
|
428
|
-
controllerCode?: string;
|
|
429
|
-
propertyCode: string;
|
|
430
|
-
environmentCode: string;
|
|
431
|
-
identities: {
|
|
432
|
-
[key: string]: string;
|
|
433
|
-
};
|
|
434
|
-
invokedAt?: number;
|
|
435
|
-
jurisdictionCode: string;
|
|
436
|
-
rightCode: string;
|
|
437
|
-
user: DataSubject;
|
|
438
|
-
recaptchaToken?: string;
|
|
439
|
-
}
|
|
440
|
-
/**
|
|
441
|
-
* GetBootstrapConfigurationRequest
|
|
442
|
-
*/
|
|
443
|
-
export interface GetBootstrapConfigurationRequest {
|
|
444
|
-
organizationCode: string;
|
|
445
|
-
propertyCode: string;
|
|
446
|
-
}
|
|
447
|
-
/**
|
|
448
|
-
* GetFullConfigurationRequest
|
|
449
|
-
*/
|
|
450
|
-
export interface GetFullConfigurationRequest {
|
|
451
|
-
organizationCode: string;
|
|
452
|
-
propertyCode: string;
|
|
453
|
-
environmentCode?: string;
|
|
454
|
-
hash?: string;
|
|
455
|
-
deploymentID?: string;
|
|
456
|
-
jurisdictionCode?: string;
|
|
457
|
-
languageCode?: string;
|
|
458
|
-
}
|
|
459
|
-
/**
|
|
460
|
-
* GetPreferenceQRRequest
|
|
461
|
-
*/
|
|
462
|
-
export interface GetPreferenceQRRequest {
|
|
463
|
-
organizationCode: string;
|
|
464
|
-
propertyCode: string;
|
|
465
|
-
environmentCode?: string;
|
|
466
|
-
imageSize?: number;
|
|
467
|
-
path?: string;
|
|
468
|
-
backgroundColor?: string;
|
|
469
|
-
foregroundColor?: string;
|
|
470
|
-
parameters: {
|
|
471
|
-
[key: string]: string;
|
|
472
|
-
};
|
|
473
|
-
}
|
|
474
|
-
/**
|
|
475
|
-
* WebReportRequest
|
|
476
|
-
*/
|
|
477
|
-
export interface WebReportRequest {
|
|
478
|
-
type: string;
|
|
479
|
-
age: number;
|
|
480
|
-
url: string;
|
|
481
|
-
user_agent: string;
|
|
482
|
-
body: {
|
|
483
|
-
[key: string]: any;
|
|
484
|
-
};
|
|
485
|
-
}
|
|
486
|
-
/**
|
|
487
|
-
* Organization
|
|
488
|
-
*/
|
|
489
|
-
export interface Organization {
|
|
490
|
-
code: string;
|
|
491
|
-
}
|
|
492
|
-
/**
|
|
493
|
-
* JurisdictionInfo
|
|
494
|
-
*/
|
|
495
|
-
export interface JurisdictionInfo {
|
|
496
|
-
code?: string;
|
|
497
|
-
defaultScopeCode?: string;
|
|
498
|
-
variable?: string;
|
|
499
|
-
scopes?: {
|
|
500
|
-
[key: string]: string;
|
|
501
|
-
};
|
|
502
|
-
}
|
|
503
|
-
/**
|
|
504
|
-
* Property
|
|
505
|
-
*/
|
|
506
|
-
export interface Property {
|
|
507
|
-
code?: string;
|
|
508
|
-
name?: string;
|
|
509
|
-
platform?: string;
|
|
510
|
-
proxy?: string;
|
|
511
|
-
}
|
|
512
|
-
/**
|
|
513
|
-
* Environment
|
|
514
|
-
*/
|
|
515
|
-
export interface Environment {
|
|
516
|
-
code: string;
|
|
517
|
-
pattern?: string;
|
|
518
|
-
hash?: string;
|
|
519
|
-
domain?: string;
|
|
520
|
-
}
|
|
521
|
-
/**
|
|
522
|
-
* Deployment
|
|
523
|
-
*/
|
|
524
|
-
export interface Deployment {
|
|
525
|
-
code: string;
|
|
526
|
-
version: number;
|
|
527
|
-
}
|
|
528
|
-
/**
|
|
529
|
-
* Cookie
|
|
530
|
-
*/
|
|
531
|
-
export interface Cookie {
|
|
532
|
-
name: string;
|
|
533
|
-
code: string;
|
|
534
|
-
host: string;
|
|
535
|
-
duration: CookieDuration;
|
|
536
|
-
provenance: CookieProvenance;
|
|
537
|
-
category: CookieCategory;
|
|
538
|
-
description: string;
|
|
539
|
-
serviceProvider?: string;
|
|
540
|
-
latest?: boolean;
|
|
541
|
-
version?: number;
|
|
542
|
-
}
|
|
543
|
-
/**
|
|
544
|
-
* PurposeCategory
|
|
545
|
-
*/
|
|
546
|
-
export type PurposeCategory = {
|
|
547
|
-
name: string;
|
|
548
|
-
description: string;
|
|
549
|
-
retentionPeriod: string;
|
|
550
|
-
externalTransfers: string;
|
|
551
|
-
};
|
|
552
|
-
/**
|
|
553
|
-
* Purpose
|
|
554
|
-
*/
|
|
555
|
-
export interface Purpose {
|
|
556
|
-
code: string;
|
|
557
|
-
name?: string;
|
|
558
|
-
description?: string;
|
|
559
|
-
legalBasisCode: string;
|
|
560
|
-
requiresOptIn?: boolean;
|
|
561
|
-
allowsOptOut?: boolean;
|
|
562
|
-
requiresDisplay?: boolean;
|
|
563
|
-
requiresPrivacyPolicy?: boolean;
|
|
564
|
-
cookies?: Cookie[];
|
|
565
|
-
categories?: PurposeCategory[];
|
|
566
|
-
tcfType?: string;
|
|
567
|
-
tcfID?: string;
|
|
568
|
-
canonicalPurposeCode?: string;
|
|
569
|
-
legalBasisName?: string;
|
|
570
|
-
legalBasisDescription?: string;
|
|
571
|
-
/**
|
|
572
|
-
* the data subject types for which the purpose is relevant. If this list is empty then the purpose applies to all
|
|
573
|
-
* data subject types
|
|
574
|
-
*/
|
|
575
|
-
dataSubjectTypeCodes?: string[];
|
|
576
|
-
}
|
|
577
|
-
/**
|
|
578
|
-
* CanonicalPurpose
|
|
579
|
-
*/
|
|
580
|
-
export interface CanonicalPurpose {
|
|
581
|
-
code: string;
|
|
582
|
-
name: string;
|
|
583
|
-
purposeCodes?: string[];
|
|
584
|
-
}
|
|
585
|
-
/**
|
|
586
|
-
* IdentityLocation is the location on the page from which to retrieve identity information
|
|
587
|
-
*/
|
|
588
|
-
export declare enum IdentityType {
|
|
589
|
-
IDENTITY_TYPE_UNDEFINED = "",
|
|
590
|
-
IDENTITY_TYPE_DATA_LAYER = "dataLayer",
|
|
591
|
-
IDENTITY_TYPE_WINDOW = "window",
|
|
592
|
-
IDENTITY_TYPE_COOKIE = "cookie",
|
|
593
|
-
IDENTITY_TYPE_MANAGED = "managedCookie",
|
|
594
|
-
IDENTITY_TYPE_LOCAL_STORAGE = "localStorage",
|
|
595
|
-
IDENTITY_TYPE_SESSION_STORAGE = "sessionStorage",
|
|
596
|
-
IDENTITY_TYPE_QUERY_STRING = "queryString"
|
|
597
|
-
}
|
|
598
|
-
/**
|
|
599
|
-
* IdentityFormat is the encoding of the string identity value
|
|
600
|
-
*/
|
|
601
|
-
export declare enum IdentityFormat {
|
|
602
|
-
IDENTITY_FORMAT_UNDEFINED = "",
|
|
603
|
-
IDENTITY_FORMAT_STRING = "string",
|
|
604
|
-
IDENTITY_FORMAT_JSON = "json",
|
|
605
|
-
IDENTITY_FORMAT_JWT = "jwt",
|
|
606
|
-
IDENTITY_FORMAT_QUERY = "query",
|
|
607
|
-
IDENTITY_FORMAT_SEMICOLON = "semicolon"
|
|
608
|
-
}
|
|
609
|
-
/**
|
|
610
|
-
* Identity represents all the metadata for an identifier on the page
|
|
611
|
-
*/
|
|
612
|
-
export interface Identity {
|
|
613
|
-
/**
|
|
614
|
-
* type is the location on the page from which to retrieve identity information
|
|
615
|
-
*/
|
|
616
|
-
type: IdentityType;
|
|
617
|
-
/**
|
|
618
|
-
* variable is the name to look up the identity value in the specified location
|
|
619
|
-
*/
|
|
620
|
-
variable: string;
|
|
621
|
-
/**
|
|
622
|
-
* format is the encoding of the value
|
|
623
|
-
*/
|
|
624
|
-
format: IdentityFormat;
|
|
625
|
-
/**
|
|
626
|
-
* key is the identifier to find the identity within the value if the format is IDENTITY_FORMAT_STRING then key
|
|
627
|
-
* will be undefined
|
|
628
|
-
*/
|
|
629
|
-
key?: string;
|
|
630
|
-
/**
|
|
631
|
-
* priority of the identity for consent conflict resolution
|
|
632
|
-
*/
|
|
633
|
-
priority?: number;
|
|
634
|
-
}
|
|
635
|
-
/**
|
|
636
|
-
* PolicyDocument
|
|
637
|
-
*/
|
|
638
|
-
export interface PolicyDocument {
|
|
639
|
-
code: string;
|
|
640
|
-
version: number;
|
|
641
|
-
url: string;
|
|
642
|
-
}
|
|
643
|
-
/**
|
|
644
|
-
* SwitchTextRenderLogic
|
|
645
|
-
*/
|
|
646
|
-
export declare enum SwitchTextRenderLogic {
|
|
647
|
-
/**
|
|
648
|
-
* SWITCH_TEXT_RENDER_ALL always renders the switch text regardless of state
|
|
649
|
-
*/
|
|
650
|
-
SWITCH_TEXT_RENDER_ALL = 1,
|
|
651
|
-
/**
|
|
652
|
-
* SWITCH_TEXT_RENDER_LEGAL_BASIS renders the switch text only if different from the legal basis default
|
|
653
|
-
*/
|
|
654
|
-
SWITCH_TEXT_RENDER_LEGAL_BASIS = 2,
|
|
655
|
-
/**
|
|
656
|
-
* SWITCH_TEXT_RENDER_CHANGE renders the switch only if the user changes the state of the switch
|
|
657
|
-
*/
|
|
658
|
-
SWITCH_TEXT_RENDER_CHANGE = 3,
|
|
659
|
-
/**
|
|
660
|
-
* SWITCH_TEXT_RENDER_NEVER never renders the switch text
|
|
661
|
-
*/
|
|
662
|
-
SWITCH_TEXT_RENDER_NEVER = 4
|
|
663
|
-
}
|
|
664
|
-
/**
|
|
665
|
-
* Banner
|
|
666
|
-
*/
|
|
667
|
-
export interface Banner {
|
|
668
|
-
title?: string;
|
|
669
|
-
footerDescription: string;
|
|
670
|
-
buttonText: string;
|
|
671
|
-
primaryButtonAction?: ExperiencePrimaryButtonAction;
|
|
672
|
-
secondaryButtonText?: string;
|
|
673
|
-
secondaryButtonDestination?: ExperienceButtonDestination;
|
|
674
|
-
/**
|
|
675
|
-
* showCloseIcon determines whether the x out icon appears in the experience. Default do not show
|
|
676
|
-
*/
|
|
677
|
-
showCloseIcon?: boolean;
|
|
678
|
-
/**
|
|
679
|
-
* additional extensions
|
|
680
|
-
*/
|
|
681
|
-
extensions?: {
|
|
682
|
-
[key: string]: string;
|
|
683
|
-
};
|
|
684
|
-
}
|
|
685
|
-
/**
|
|
686
|
-
* Modal
|
|
687
|
-
*/
|
|
688
|
-
export interface Modal {
|
|
689
|
-
title: string;
|
|
690
|
-
bodyTitle?: string;
|
|
691
|
-
bodyDescription?: string;
|
|
692
|
-
footerDescription?: string;
|
|
693
|
-
buttonText: string;
|
|
694
|
-
/**
|
|
695
|
-
* consentTitle is the heading that goes above the list of purposes this optionally overrides the standard title
|
|
696
|
-
*/
|
|
697
|
-
consentTitle?: string;
|
|
698
|
-
/**
|
|
699
|
-
* hideConsentTitle determines whether the consent title should be hidden. Default is to show
|
|
700
|
-
*/
|
|
701
|
-
hideConsentTitle?: boolean;
|
|
702
|
-
/**
|
|
703
|
-
* hideLegalBases determines whether the legal bases should be hidden. Default is to show
|
|
704
|
-
*/
|
|
705
|
-
hideLegalBases?: boolean;
|
|
706
|
-
/**
|
|
707
|
-
* switchOnText overrides the standard text for a consent switch in the on state
|
|
708
|
-
*/
|
|
709
|
-
switchOnText?: string;
|
|
710
|
-
/**
|
|
711
|
-
* switchOffText overrides the standard text for a consent switch in the off state
|
|
712
|
-
*/
|
|
713
|
-
switchOffText?: string;
|
|
714
|
-
/**
|
|
715
|
-
* switchTextRenderLogic determines the logic for showing the switch text
|
|
716
|
-
*/
|
|
717
|
-
switchTextRenderLogic?: SwitchTextRenderLogic;
|
|
718
|
-
/**
|
|
719
|
-
* showCloseIcon determines whether the x out icon appears in the experience. Default do not show
|
|
720
|
-
*/
|
|
721
|
-
showCloseIcon?: boolean;
|
|
722
|
-
/**
|
|
723
|
-
* additional extensions
|
|
724
|
-
*/
|
|
725
|
-
extensions?: {
|
|
726
|
-
[key: string]: string;
|
|
727
|
-
};
|
|
728
|
-
}
|
|
729
|
-
/**
|
|
730
|
-
* JIT
|
|
731
|
-
*/
|
|
732
|
-
export interface JIT {
|
|
733
|
-
title?: string;
|
|
734
|
-
bodyDescription?: string;
|
|
735
|
-
acceptButtonText: string;
|
|
736
|
-
declineButtonText: string;
|
|
737
|
-
moreInfoText?: string;
|
|
738
|
-
moreInfoDestination?: ExperienceButtonDestination;
|
|
739
|
-
/**
|
|
740
|
-
* showCloseIcon determines whether the x out icon appears in the experience. Default do not show
|
|
741
|
-
*/
|
|
742
|
-
showCloseIcon?: boolean;
|
|
743
|
-
/**
|
|
744
|
-
* additional extensions
|
|
745
|
-
*/
|
|
746
|
-
extensions?: {
|
|
747
|
-
[key: string]: string;
|
|
748
|
-
};
|
|
749
|
-
}
|
|
750
|
-
/**
|
|
751
|
-
* RightsTab
|
|
752
|
-
*/
|
|
753
|
-
export interface RightsTab {
|
|
754
|
-
tabName: string;
|
|
755
|
-
bodyTitle?: string;
|
|
756
|
-
bodyDescription?: string;
|
|
757
|
-
buttonText: string;
|
|
758
|
-
/**
|
|
759
|
-
* additional extensions
|
|
760
|
-
*/
|
|
761
|
-
extensions?: {
|
|
762
|
-
[key: string]: string;
|
|
763
|
-
};
|
|
764
|
-
}
|
|
765
|
-
/**
|
|
766
|
-
* ConsentsTab
|
|
767
|
-
*/
|
|
768
|
-
export interface ConsentsTab {
|
|
769
|
-
tabName: string;
|
|
770
|
-
bodyTitle?: string;
|
|
771
|
-
bodyDescription?: string;
|
|
772
|
-
buttonText: string;
|
|
773
|
-
/**
|
|
774
|
-
* consentTitle is the heading that goes above the list of purposes
|
|
775
|
-
* this optionally overrides the standard title
|
|
776
|
-
*/
|
|
777
|
-
consentTitle?: string;
|
|
778
|
-
/**
|
|
779
|
-
* hideConsentTitle determines whether the consent title should be hidden. Default is to show
|
|
780
|
-
*/
|
|
781
|
-
hideConsentTitle?: boolean;
|
|
782
|
-
/**
|
|
783
|
-
* hideLegalBases determines whether the legal bases should be hidden. Default is to show
|
|
784
|
-
*/
|
|
785
|
-
hideLegalBases?: boolean;
|
|
786
|
-
/**
|
|
787
|
-
* switchOnText overrides the standard text for a consent switch in the on state
|
|
788
|
-
*/
|
|
789
|
-
switchOnText?: string;
|
|
790
|
-
/**
|
|
791
|
-
* switchOffText overrides the standard text for a consent switch in the off state
|
|
792
|
-
*/
|
|
793
|
-
switchOffText?: string;
|
|
794
|
-
/**
|
|
795
|
-
* switchTextRenderLogic determines the logic for showing the switch text
|
|
796
|
-
*/
|
|
797
|
-
switchTextRenderLogic?: SwitchTextRenderLogic;
|
|
798
|
-
/**
|
|
799
|
-
* additional extensions
|
|
800
|
-
*/
|
|
801
|
-
extensions?: {
|
|
802
|
-
[key: string]: string;
|
|
803
|
-
};
|
|
804
|
-
}
|
|
805
|
-
/**
|
|
806
|
-
* OverviewTab
|
|
807
|
-
*/
|
|
808
|
-
export interface OverviewTab {
|
|
809
|
-
tabName: string;
|
|
810
|
-
bodyTitle?: string;
|
|
811
|
-
bodyDescription: string;
|
|
812
|
-
/**
|
|
813
|
-
* additional extensions
|
|
814
|
-
* */
|
|
815
|
-
extensions?: {
|
|
816
|
-
[key: string]: string;
|
|
817
|
-
};
|
|
818
|
-
}
|
|
819
|
-
/**
|
|
820
|
-
* ConsentExperience
|
|
821
|
-
*/
|
|
822
|
-
export interface ConsentExperience {
|
|
823
|
-
code: string;
|
|
824
|
-
version: number;
|
|
825
|
-
banner: Banner;
|
|
826
|
-
modal: Modal;
|
|
827
|
-
jit?: JIT;
|
|
828
|
-
experienceDefault: ExperienceDefault;
|
|
829
|
-
/**
|
|
830
|
-
* additional extensions
|
|
831
|
-
*/
|
|
832
|
-
extensions?: {
|
|
833
|
-
[key: string]: string;
|
|
834
|
-
};
|
|
835
|
-
}
|
|
836
|
-
/**
|
|
837
|
-
* PreferenceExperience
|
|
838
|
-
*/
|
|
839
|
-
export interface PreferenceExperience {
|
|
840
|
-
code: string;
|
|
841
|
-
version: number;
|
|
842
|
-
title: string;
|
|
843
|
-
rights?: RightsTab;
|
|
844
|
-
consents?: ConsentsTab;
|
|
845
|
-
overview: OverviewTab;
|
|
846
|
-
/**
|
|
847
|
-
* additional extensions
|
|
848
|
-
*/
|
|
849
|
-
extensions?: {
|
|
850
|
-
[key: string]: string;
|
|
851
|
-
};
|
|
852
|
-
}
|
|
853
|
-
/**
|
|
854
|
-
* Right
|
|
855
|
-
*/
|
|
856
|
-
export interface Right {
|
|
857
|
-
code: string;
|
|
858
|
-
name: string;
|
|
859
|
-
description: string;
|
|
860
|
-
/**
|
|
861
|
-
* the data subject types for which the right is relevant. If this list is empty then the right applies to all
|
|
862
|
-
* data subject types
|
|
863
|
-
*/
|
|
864
|
-
dataSubjectTypeCodes?: string[];
|
|
865
|
-
}
|
|
866
|
-
/**
|
|
867
|
-
* Experience
|
|
868
|
-
*/
|
|
869
|
-
export interface Experience {
|
|
870
|
-
consent?: ConsentExperience;
|
|
871
|
-
preference?: PreferenceExperience;
|
|
872
|
-
}
|
|
873
|
-
/**
|
|
874
|
-
* BannerPosition
|
|
875
|
-
*/
|
|
876
|
-
export declare enum BannerPosition {
|
|
877
|
-
BOTTOM = 1,
|
|
878
|
-
TOP = 2,
|
|
879
|
-
BOTTOM_LEFT = 3,
|
|
880
|
-
BOTTOM_RIGHT = 4
|
|
881
|
-
}
|
|
882
|
-
/**
|
|
883
|
-
* ModalPosition
|
|
884
|
-
*/
|
|
885
|
-
export declare enum ModalPosition {
|
|
886
|
-
CENTER = 1,
|
|
887
|
-
LEFT_FULL_HEIGHT = 2,
|
|
888
|
-
RIGHT_FULL_HEIGHT = 3
|
|
889
|
-
}
|
|
890
|
-
/**
|
|
891
|
-
* Theme
|
|
892
|
-
*/
|
|
893
|
-
export interface Theme {
|
|
894
|
-
code?: string;
|
|
895
|
-
name?: string;
|
|
896
|
-
description?: string;
|
|
897
|
-
watermark?: boolean;
|
|
898
|
-
buttonBorderRadius: number;
|
|
899
|
-
font?: string;
|
|
900
|
-
bannerBackgroundColor: string;
|
|
901
|
-
bannerContentColor?: string;
|
|
902
|
-
bannerButtonColor: string;
|
|
903
|
-
bannerSecondaryButtonColor?: string;
|
|
904
|
-
bannerPosition?: BannerPosition;
|
|
905
|
-
modalHeaderBackgroundColor: string;
|
|
906
|
-
modalHeaderContentColor?: string;
|
|
907
|
-
modalContentColor: string;
|
|
908
|
-
modalButtonColor: string;
|
|
909
|
-
modalPosition?: ModalPosition;
|
|
910
|
-
/**
|
|
911
|
-
* modalSwitchOnColor is the color of the consent switch in the on state for the modal this overrides standard theme
|
|
912
|
-
* colors
|
|
913
|
-
*/
|
|
914
|
-
modalSwitchOnColor?: string;
|
|
915
|
-
/**
|
|
916
|
-
* modalSwitchOffColor is the color of the consent switch in the off state for the modal this overrides standard
|
|
917
|
-
* theme colors
|
|
918
|
-
*/
|
|
919
|
-
modalSwitchOffColor?: string;
|
|
920
|
-
formHeaderBackgroundColor: string;
|
|
921
|
-
formHeaderContentColor?: string;
|
|
922
|
-
formContentColor: string;
|
|
923
|
-
formButtonColor: string;
|
|
924
|
-
/**
|
|
925
|
-
* formSwitchOnColor is the color of the consent switch in the on state for the form this overrides standard theme
|
|
926
|
-
* colors
|
|
927
|
-
*/
|
|
928
|
-
formSwitchOnColor?: string;
|
|
929
|
-
/**
|
|
930
|
-
* formSwitchOffColor is the color of the consent switch in the off state for the form this overrides standard theme
|
|
931
|
-
* colors
|
|
932
|
-
*/
|
|
933
|
-
formSwitchOffColor?: string;
|
|
934
|
-
/**
|
|
935
|
-
* qrBackgroundColor is the override for the QR code background color
|
|
936
|
-
*/
|
|
937
|
-
qrBackgroundColor?: string;
|
|
938
|
-
/**
|
|
939
|
-
* qrForegroundColor is the override for the QR code foreground color
|
|
940
|
-
*/
|
|
941
|
-
qrForegroundColor?: string;
|
|
942
|
-
}
|
|
943
|
-
/**
|
|
944
|
-
* Vendor purpose
|
|
945
|
-
*/
|
|
946
|
-
export interface VendorPurpose {
|
|
947
|
-
name: string;
|
|
948
|
-
legalBasis?: string;
|
|
949
|
-
}
|
|
950
|
-
/**
|
|
951
|
-
* Vendor definition
|
|
952
|
-
*/
|
|
953
|
-
export interface Vendor {
|
|
954
|
-
id: string;
|
|
955
|
-
name: string;
|
|
956
|
-
purposes?: VendorPurpose[];
|
|
957
|
-
specialPurposes?: VendorPurpose[];
|
|
958
|
-
features?: VendorPurpose[];
|
|
959
|
-
specialFeatures?: VendorPurpose[];
|
|
960
|
-
policyUrl?: string;
|
|
961
|
-
cookieMaxAgeSeconds?: number;
|
|
962
|
-
usesCookies?: boolean;
|
|
963
|
-
usesNonCookieAccess?: boolean;
|
|
964
|
-
}
|
|
965
|
-
/**
|
|
966
|
-
* DataSubjectType represents user defined data subject types with code as the unique identifier
|
|
967
|
-
*/
|
|
968
|
-
export interface DataSubjectType {
|
|
969
|
-
code: string;
|
|
970
|
-
name: string;
|
|
971
|
-
/**
|
|
972
|
-
* requiresUserInput is true if additional information must be requested to describe the data subject relation
|
|
973
|
-
*/
|
|
974
|
-
requiresUserInput: boolean;
|
|
975
|
-
}
|
|
976
|
-
/**
|
|
977
|
-
* Stack represents a grouping of purposes to be displayed in an experience
|
|
978
|
-
*/
|
|
979
|
-
export interface Stack {
|
|
980
|
-
/**
|
|
981
|
-
* name of the stack to be displayed
|
|
982
|
-
*/
|
|
983
|
-
name: string;
|
|
984
|
-
/**
|
|
985
|
-
* list of purpose codes that are members of the stack
|
|
986
|
-
*/
|
|
987
|
-
purposeCodes: string[];
|
|
988
|
-
}
|
|
989
|
-
/**
|
|
990
|
-
* Configuration
|
|
991
|
-
*/
|
|
992
|
-
export interface Configuration {
|
|
993
|
-
/**
|
|
994
|
-
* Organization this configuration belongs to
|
|
995
|
-
*/
|
|
996
|
-
organization: Organization;
|
|
997
|
-
/**
|
|
998
|
-
* Property this configuration belongs to
|
|
999
|
-
*/
|
|
1000
|
-
property?: Property;
|
|
1001
|
-
/**
|
|
1002
|
-
* Language for all text
|
|
1003
|
-
*/
|
|
1004
|
-
language?: string;
|
|
1005
|
-
/**
|
|
1006
|
-
* Available environments. Only available in the "boot" configuration.
|
|
1007
|
-
*/
|
|
1008
|
-
environments?: Environment[];
|
|
1009
|
-
/**
|
|
1010
|
-
* Environment for this configuration. Only available in the "full" configuration.
|
|
1011
|
-
*/
|
|
1012
|
-
environment?: Environment;
|
|
1013
|
-
/**
|
|
1014
|
-
* Applicable jurisdiction.
|
|
1015
|
-
*/
|
|
1016
|
-
jurisdiction?: JurisdictionInfo;
|
|
1017
|
-
/**
|
|
1018
|
-
* Identity spaces defined for this property
|
|
1019
|
-
*/
|
|
1020
|
-
identities?: {
|
|
1021
|
-
[key: string]: Identity;
|
|
1022
|
-
};
|
|
1023
|
-
/**
|
|
1024
|
-
* Deployment information. Only available in the "full" configuration.
|
|
1025
|
-
*/
|
|
1026
|
-
deployment?: Deployment;
|
|
1027
|
-
/**
|
|
1028
|
-
* Regulations enabled for this jurisdiction.
|
|
1029
|
-
*/
|
|
1030
|
-
regulations?: string[];
|
|
1031
|
-
/**
|
|
1032
|
-
* Rights available in this jurisdiction.
|
|
1033
|
-
*/
|
|
1034
|
-
rights?: Right[];
|
|
1035
|
-
/**
|
|
1036
|
-
* Purposes in this jurisdiction.
|
|
1037
|
-
*/
|
|
1038
|
-
purposes?: Purpose[];
|
|
1039
|
-
/**
|
|
1040
|
-
* Mapping of purposes to canonical purposes.
|
|
1041
|
-
*/
|
|
1042
|
-
canonicalPurposes?: {
|
|
1043
|
-
[key: string]: CanonicalPurpose;
|
|
1044
|
-
};
|
|
1045
|
-
/**
|
|
1046
|
-
* Privacy policy document
|
|
1047
|
-
*/
|
|
1048
|
-
privacyPolicy?: PolicyDocument;
|
|
1049
|
-
/**
|
|
1050
|
-
* Terms of Service (ToS) policy document
|
|
1051
|
-
*/
|
|
1052
|
-
termsOfService?: PolicyDocument;
|
|
1053
|
-
/**
|
|
1054
|
-
* Theme
|
|
1055
|
-
*/
|
|
1056
|
-
theme?: Theme;
|
|
1057
|
-
/**
|
|
1058
|
-
* Experience definitions
|
|
1059
|
-
*/
|
|
1060
|
-
experiences?: Experience;
|
|
1061
|
-
/**
|
|
1062
|
-
* Vendors (TCF)
|
|
1063
|
-
*/
|
|
1064
|
-
vendors?: Vendor[];
|
|
1065
|
-
/**
|
|
1066
|
-
* Data subject types relevant for this configuration
|
|
1067
|
-
*/
|
|
1068
|
-
dataSubjectTypes?: DataSubjectType[];
|
|
1069
|
-
/**
|
|
1070
|
-
* Stacks to be displayed in an experience
|
|
1071
|
-
*/
|
|
1072
|
-
stacks?: Stack[];
|
|
1073
|
-
/**
|
|
1074
|
-
* Services
|
|
1075
|
-
*/
|
|
1076
|
-
services?: {
|
|
1077
|
-
[key: string]: string;
|
|
1078
|
-
};
|
|
1079
|
-
/**
|
|
1080
|
-
* Flexible options
|
|
1081
|
-
*/
|
|
1082
|
-
options?: {
|
|
1083
|
-
[key: string]: string;
|
|
1084
|
-
};
|
|
1085
|
-
/**
|
|
1086
|
-
* Scripts to load
|
|
1087
|
-
*/
|
|
1088
|
-
scripts?: string[];
|
|
1089
|
-
/**
|
|
1090
|
-
* Plugins configured for the configuration
|
|
1091
|
-
*/
|
|
1092
|
-
plugins?: {
|
|
1093
|
-
[key: string]: any;
|
|
1094
|
-
};
|
|
1095
|
-
/**
|
|
1096
|
-
* Recaptcha config
|
|
1097
|
-
*/
|
|
1098
|
-
recaptcha?: Recaptcha;
|
|
1099
|
-
}
|
|
1100
|
-
/**
|
|
1101
|
-
* Recaptcha interface defines the Recaptcha config
|
|
1102
|
-
*/
|
|
1103
|
-
export interface Recaptcha {
|
|
1104
|
-
/**
|
|
1105
|
-
* siteKey: Recaptcha site/public key used to exchange for a reCaptcha token
|
|
1106
|
-
*/
|
|
1107
|
-
siteKey?: string;
|
|
1108
|
-
}
|
|
1109
|
-
/**
|
|
1110
|
-
* Pusher interface defines a type that has a push function like an array
|
|
1111
|
-
*/
|
|
1112
|
-
export interface Pusher {
|
|
1113
|
-
/**
|
|
1114
|
-
* Pushes the given arguments.
|
|
1115
|
-
*
|
|
1116
|
-
* @param args The arguments to push.
|
|
1117
|
-
*/
|
|
1118
|
-
push(args: any[]): void;
|
|
1119
|
-
}
|
|
1120
|
-
/**
|
|
1121
|
-
* Loaded interface defines a type that has a loaded boolean property
|
|
1122
|
-
*/
|
|
1123
|
-
export interface Loaded {
|
|
1124
|
-
/**
|
|
1125
|
-
* Loaded is set to true if the object has fully loaded
|
|
1126
|
-
*/
|
|
1127
|
-
loaded: boolean;
|
|
1128
|
-
}
|
|
1129
|
-
declare global {
|
|
1130
|
-
interface Window {
|
|
1131
|
-
/**
|
|
1132
|
-
* Semaphore is the main entrypoint.
|
|
1133
|
-
*/
|
|
1134
|
-
semaphore: Pusher & Loaded;
|
|
1135
|
-
}
|
|
1136
|
-
}
|
|
1137
|
-
export {};
|