@tantainnovative/ndpr-toolkit 1.0.7 → 1.0.9

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 (105) hide show
  1. package/dist/index.d.mts +224 -32
  2. package/dist/index.d.ts +442 -18
  3. package/dist/index.js +190 -1
  4. package/dist/index.js.map +1 -1
  5. package/dist/index.mjs +190 -1
  6. package/dist/index.mjs.map +1 -1
  7. package/dist/unstyled.d.mts +4 -4
  8. package/dist/unstyled.d.ts +22 -2
  9. package/package.json +28 -32
  10. package/dist/components/breach-notification/BreachNotificationForm.d.ts +0 -18
  11. package/dist/components/breach-notification/BreachNotificationForm.d.ts.map +0 -1
  12. package/dist/components/consent/ConsentBanner.d.ts +0 -30
  13. package/dist/components/consent/ConsentBanner.d.ts.map +0 -1
  14. package/dist/components/consent/ConsentManager.d.ts +0 -51
  15. package/dist/components/consent/ConsentManager.d.ts.map +0 -1
  16. package/dist/components/consent/ConsentSettings.d.ts +0 -15
  17. package/dist/components/consent/ConsentSettings.d.ts.map +0 -1
  18. package/dist/components/consent/unstyled/UnstyledConsentBanner.d.ts +0 -7
  19. package/dist/components/consent/unstyled/UnstyledConsentBanner.d.ts.map +0 -1
  20. package/dist/components/consent/unstyled/UnstyledConsentSettings.d.ts +0 -7
  21. package/dist/components/consent/unstyled/UnstyledConsentSettings.d.ts.map +0 -1
  22. package/dist/components/consent/unstyled/UnstyledConsentToggle.d.ts +0 -8
  23. package/dist/components/consent/unstyled/UnstyledConsentToggle.d.ts.map +0 -1
  24. package/dist/components/consent/unstyled/index.d.ts +0 -4
  25. package/dist/components/consent/unstyled/index.d.ts.map +0 -1
  26. package/dist/components/data-subject-rights/DataSubjectRequestForm.d.ts +0 -14
  27. package/dist/components/data-subject-rights/DataSubjectRequestForm.d.ts.map +0 -1
  28. package/dist/components/docs/DocLayout.d.ts +0 -9
  29. package/dist/components/docs/DocLayout.d.ts.map +0 -1
  30. package/dist/components/docs/index.d.ts +0 -2
  31. package/dist/components/docs/index.d.ts.map +0 -1
  32. package/dist/components/dpia/DPIAQuestionnaire.d.ts +0 -9
  33. package/dist/components/dpia/DPIAQuestionnaire.d.ts.map +0 -1
  34. package/dist/components/privacy-policy/PolicyGenerator.d.ts +0 -12
  35. package/dist/components/privacy-policy/PolicyGenerator.d.ts.map +0 -1
  36. package/dist/components/privacy-policy/data.d.ts +0 -8
  37. package/dist/components/privacy-policy/data.d.ts.map +0 -1
  38. package/dist/components/privacy-policy/shared/CheckboxField.d.ts +0 -13
  39. package/dist/components/privacy-policy/shared/CheckboxField.d.ts.map +0 -1
  40. package/dist/components/privacy-policy/shared/CheckboxGroup.d.ts +0 -13
  41. package/dist/components/privacy-policy/shared/CheckboxGroup.d.ts.map +0 -1
  42. package/dist/components/privacy-policy/shared/FormField.d.ts +0 -13
  43. package/dist/components/privacy-policy/shared/FormField.d.ts.map +0 -1
  44. package/dist/components/privacy-policy/shared/StepIndicator.d.ts +0 -8
  45. package/dist/components/privacy-policy/shared/StepIndicator.d.ts.map +0 -1
  46. package/dist/components/privacy-policy/steps/CustomSectionsStep.d.ts +0 -15
  47. package/dist/components/privacy-policy/steps/CustomSectionsStep.d.ts.map +0 -1
  48. package/dist/components/privacy-policy/steps/DataCollectionStep.d.ts +0 -20
  49. package/dist/components/privacy-policy/steps/DataCollectionStep.d.ts.map +0 -1
  50. package/dist/components/privacy-policy/steps/DataSharingStep.d.ts +0 -34
  51. package/dist/components/privacy-policy/steps/DataSharingStep.d.ts.map +0 -1
  52. package/dist/components/privacy-policy/steps/OrganizationInfoStep.d.ts +0 -17
  53. package/dist/components/privacy-policy/steps/OrganizationInfoStep.d.ts.map +0 -1
  54. package/dist/components/privacy-policy/steps/PolicyPreviewStep.d.ts +0 -30
  55. package/dist/components/privacy-policy/steps/PolicyPreviewStep.d.ts.map +0 -1
  56. package/dist/components/ui/Badge.d.ts +0 -10
  57. package/dist/components/ui/Badge.d.ts.map +0 -1
  58. package/dist/components/ui/Button.d.ts +0 -11
  59. package/dist/components/ui/Button.d.ts.map +0 -1
  60. package/dist/components/ui/Card.d.ts +0 -10
  61. package/dist/components/ui/Card.d.ts.map +0 -1
  62. package/dist/components/ui/Checkbox.d.ts +0 -8
  63. package/dist/components/ui/Checkbox.d.ts.map +0 -1
  64. package/dist/components/ui/FormField.d.ts +0 -11
  65. package/dist/components/ui/FormField.d.ts.map +0 -1
  66. package/dist/components/ui/Input.d.ts +0 -6
  67. package/dist/components/ui/Input.d.ts.map +0 -1
  68. package/dist/components/ui/Select.d.ts +0 -6
  69. package/dist/components/ui/Select.d.ts.map +0 -1
  70. package/dist/components/ui/TextArea.d.ts +0 -6
  71. package/dist/components/ui/TextArea.d.ts.map +0 -1
  72. package/dist/components/ui/dialog.d.ts +0 -18
  73. package/dist/components/ui/dialog.d.ts.map +0 -1
  74. package/dist/components/ui/label.d.ts +0 -5
  75. package/dist/components/ui/label.d.ts.map +0 -1
  76. package/dist/components/ui/switch.d.ts +0 -5
  77. package/dist/components/ui/switch.d.ts.map +0 -1
  78. package/dist/components/ui/tabs.d.ts +0 -8
  79. package/dist/components/ui/tabs.d.ts.map +0 -1
  80. package/dist/contexts/ConsentContext.d.ts +0 -35
  81. package/dist/contexts/ConsentContext.d.ts.map +0 -1
  82. package/dist/contexts/GenericConsentContext.d.ts +0 -11
  83. package/dist/contexts/GenericConsentContext.d.ts.map +0 -1
  84. package/dist/hooks/useConsent.d.ts +0 -12
  85. package/dist/hooks/useConsent.d.ts.map +0 -1
  86. package/dist/hooks/useConsentActions.d.ts +0 -12
  87. package/dist/hooks/useConsentActions.d.ts.map +0 -1
  88. package/dist/hooks/useConsentManager.d.ts +0 -14
  89. package/dist/hooks/useConsentManager.d.ts.map +0 -1
  90. package/dist/hooks/useConsentState.d.ts +0 -10
  91. package/dist/hooks/useConsentState.d.ts.map +0 -1
  92. package/dist/index.d.ts.map +0 -1
  93. package/dist/lib/consentService.d.ts +0 -11
  94. package/dist/lib/consentService.d.ts.map +0 -1
  95. package/dist/lib/dpiaQuestions.d.ts +0 -3
  96. package/dist/lib/dpiaQuestions.d.ts.map +0 -1
  97. package/dist/lib/requestService.d.ts +0 -10
  98. package/dist/lib/requestService.d.ts.map +0 -1
  99. package/dist/lib/utils.d.ts +0 -3
  100. package/dist/lib/utils.d.ts.map +0 -1
  101. package/dist/types/consent.d.ts +0 -57
  102. package/dist/types/consent.d.ts.map +0 -1
  103. package/dist/types/index.d.ts +0 -91
  104. package/dist/types/index.d.ts.map +0 -1
  105. package/dist/unstyled.d.ts.map +0 -1
package/dist/index.d.ts CHANGED
@@ -1,24 +1,448 @@
1
- export { ConsentProvider, useConsent, ConsentContext } from './contexts/ConsentContext';
2
- export type { ConsentCategories, ConsentState, ConsentActions, ConsentContextValue } from './contexts/ConsentContext';
3
- export { createConsentContext } from './contexts/GenericConsentContext';
4
- export type { BaseConsentCategories, DefaultConsentCategories, ConsentProviderProps, } from './types/consent';
5
- export { ConsentManager } from './components/consent/ConsentManager';
6
- export { ConsentBanner } from './components/consent/ConsentBanner';
7
- export { ConsentSettings } from './components/consent/ConsentSettings';
8
- export type { ConsentManagerProps, BannerProps, SettingsProps, RenderProps } from './components/consent/ConsentManager';
9
- export { UnstyledConsentBanner, UnstyledConsentSettings, UnstyledConsentToggle, } from './components/consent/unstyled';
10
- export { useConsentState } from './hooks/useConsentState';
11
- export { useConsentActions } from './hooks/useConsentActions';
12
- export { useConsentManager } from './hooks/useConsentManager';
13
- export { consentService } from './lib/consentService';
14
- export declare const cookieUtils: {
1
+ import * as React$1 from 'react';
2
+ import React__default, { ReactNode } from 'react';
3
+ export { ConsentBanner as UnstyledConsentBanner, ConsentSettings as UnstyledConsentSettings, ConsentToggle as UnstyledConsentToggle } from './unstyled.js';
4
+
5
+ interface ConsentCategories {
6
+ necessary: boolean;
7
+ analytics: boolean;
8
+ marketing: boolean;
9
+ functional: boolean;
10
+ [key: string]: boolean;
11
+ }
12
+ interface ConsentState$1 {
13
+ hasUserConsented: boolean;
14
+ consentState: ConsentCategories;
15
+ showBanner: boolean;
16
+ showSettings: boolean;
17
+ }
18
+ interface ConsentActions$1 {
19
+ acceptAll: () => void;
20
+ rejectAll: () => void;
21
+ savePreferences: (preferences: Partial<ConsentCategories>) => void;
22
+ openSettings: () => void;
23
+ closeSettings: () => void;
24
+ updateConsent: (category: keyof ConsentCategories, value: boolean) => void;
25
+ }
26
+ interface ConsentContextValue$1 extends ConsentState$1, ConsentActions$1 {
27
+ }
28
+ declare const ConsentContext: React__default.Context<ConsentContextValue$1 | undefined>;
29
+ interface ConsentProviderProps$1 {
30
+ children: ReactNode;
31
+ initialConsent?: Partial<ConsentCategories>;
32
+ onConsentChange?: (consent: ConsentCategories) => void;
33
+ storageKey?: string;
34
+ }
35
+ declare function ConsentProvider({ children, initialConsent, onConsentChange, storageKey, }: ConsentProviderProps$1): React__default.JSX.Element;
36
+ declare function useConsent(): ConsentContextValue$1;
37
+
38
+ /**
39
+ * Base consent categories interface that can be extended
40
+ */
41
+ interface BaseConsentCategories {
42
+ necessary: boolean;
43
+ [key: string]: boolean;
44
+ }
45
+ /**
46
+ * Default consent categories provided by the toolkit
47
+ */
48
+ interface DefaultConsentCategories extends BaseConsentCategories {
49
+ necessary: boolean;
50
+ analytics: boolean;
51
+ marketing: boolean;
52
+ functional: boolean;
53
+ }
54
+ /**
55
+ * Generic consent state interface
56
+ */
57
+ interface ConsentState<T extends BaseConsentCategories = DefaultConsentCategories> {
58
+ hasUserConsented: boolean;
59
+ consentState: T;
60
+ showBanner: boolean;
61
+ showSettings: boolean;
62
+ }
63
+ /**
64
+ * Generic consent actions interface
65
+ */
66
+ interface ConsentActions<T extends BaseConsentCategories = DefaultConsentCategories> {
67
+ acceptAll: () => void;
68
+ rejectAll: () => void;
69
+ savePreferences: (preferences: Partial<T>) => void;
70
+ openSettings: () => void;
71
+ closeSettings: () => void;
72
+ updateConsent: (category: keyof T, value: boolean) => void;
73
+ }
74
+ /**
75
+ * Combined consent context value
76
+ */
77
+ interface ConsentContextValue<T extends BaseConsentCategories = DefaultConsentCategories> extends ConsentState<T>, ConsentActions<T> {
78
+ }
79
+ /**
80
+ * Consent provider props with generic support
81
+ */
82
+ interface ConsentProviderProps<T extends BaseConsentCategories = DefaultConsentCategories> {
83
+ children: React.ReactNode;
84
+ initialConsent?: Partial<T>;
85
+ onConsentChange?: (consent: T) => void;
86
+ storageKey?: string;
87
+ categories?: Array<{
88
+ id: keyof T;
89
+ name: string;
90
+ description: string;
91
+ required?: boolean;
92
+ }>;
93
+ }
94
+
95
+ /**
96
+ * Factory function to create a typed consent context
97
+ */
98
+ declare function createConsentContext<T extends BaseConsentCategories = DefaultConsentCategories>(): {
99
+ ConsentContext: React__default.Context<ConsentContextValue<T> | undefined>;
100
+ ConsentProvider: ({ children, initialConsent, onConsentChange, storageKey, categories, }: ConsentProviderProps<T>) => React__default.JSX.Element;
101
+ useConsent: () => ConsentContextValue<T>;
102
+ };
103
+
104
+ interface ConsentBannerProps {
105
+ renderBanner?: (props: BannerProps) => ReactNode;
106
+ theme?: {
107
+ primaryColor?: string;
108
+ textColor?: string;
109
+ backgroundColor?: string;
110
+ };
111
+ position?: "top" | "bottom" | "center";
112
+ animation?: "slide" | "fade" | "none";
113
+ fullWidth?: boolean;
114
+ maxWidth?: string;
115
+ unstyled?: boolean;
116
+ className?: string;
117
+ children?: ReactNode;
118
+ }
119
+ interface ConsentBannerComponent extends React__default.FC<ConsentBannerProps> {
120
+ Message: React__default.FC<{
121
+ children: ReactNode;
122
+ className?: string;
123
+ }>;
124
+ Actions: React__default.FC<{
125
+ children: ReactNode;
126
+ className?: string;
127
+ }>;
128
+ }
129
+ declare const ConsentBanner: ConsentBannerComponent;
130
+
131
+ interface ConsentSettingsProps {
132
+ renderSettings?: (props: SettingsProps) => ReactNode;
133
+ theme?: {
134
+ primaryColor?: string;
135
+ textColor?: string;
136
+ backgroundColor?: string;
137
+ };
138
+ unstyled?: boolean;
139
+ className?: string;
140
+ children?: ReactNode;
141
+ }
142
+ declare const ConsentSettings: React__default.FC<ConsentSettingsProps>;
143
+
144
+ interface BannerProps {
145
+ onAcceptAll: () => void;
146
+ onRejectAll: () => void;
147
+ onOpenSettings: () => void;
148
+ }
149
+ interface SettingsProps {
150
+ consentState: ConsentCategories;
151
+ onUpdateConsent: (category: keyof ConsentCategories, value: boolean) => void;
152
+ onSave: () => void;
153
+ onClose: () => void;
154
+ }
155
+ interface RenderProps {
156
+ consents: ConsentCategories;
157
+ actions: ConsentActions$1;
158
+ ui: {
159
+ showBanner: boolean;
160
+ showSettings: boolean;
161
+ openSettings: () => void;
162
+ closeSettings: () => void;
163
+ };
164
+ }
165
+ interface ConsentManagerProps extends Omit<ConsentProviderProps$1, "children"> {
166
+ children?: ReactNode | ((props: RenderProps) => ReactNode);
167
+ headless?: boolean;
168
+ renderBanner?: (props: BannerProps) => ReactNode;
169
+ renderSettings?: (props: SettingsProps) => ReactNode;
170
+ components?: {
171
+ Banner?: React__default.ComponentType<unknown>;
172
+ Settings?: React__default.ComponentType<unknown>;
173
+ };
174
+ theme?: {
175
+ primaryColor?: string;
176
+ textColor?: string;
177
+ backgroundColor?: string;
178
+ };
179
+ position?: "top" | "bottom" | "center";
180
+ animation?: "slide" | "fade" | "none";
181
+ fullWidth?: boolean;
182
+ maxWidth?: string;
183
+ }
184
+ interface ConsentManagerComponent extends React__default.FC<ConsentManagerProps> {
185
+ Banner: typeof ConsentBanner;
186
+ Settings: typeof ConsentSettings;
187
+ }
188
+ declare const ConsentManager: ConsentManagerComponent;
189
+
190
+ /**
191
+ * Hook to access only the consent state without actions
192
+ */
193
+ declare function useConsentState(): {
194
+ hasUserConsented: boolean;
195
+ consentState: ConsentCategories;
196
+ showBanner: boolean;
197
+ showSettings: boolean;
198
+ };
199
+
200
+ /**
201
+ * Hook to access only the consent actions without state
202
+ */
203
+ declare function useConsentActions(): {
204
+ acceptAll: () => void;
205
+ rejectAll: () => void;
206
+ savePreferences: (preferences: Partial<ConsentCategories>) => void;
207
+ openSettings: () => void;
208
+ closeSettings: () => void;
209
+ updateConsent: (category: keyof ConsentCategories, value: boolean) => void;
210
+ };
211
+
212
+ type ConsentEventType = "consent:accepted" | "consent:rejected" | "consent:updated" | "banner:shown" | "banner:hidden" | "settings:opened" | "settings:closed";
213
+ type ConsentEventListener = (data?: unknown) => void;
214
+ interface ConsentEventManager {
215
+ on: (event: ConsentEventType, listener: ConsentEventListener) => () => void;
216
+ off: (event: ConsentEventType, listener: ConsentEventListener) => void;
217
+ emit: (event: ConsentEventType, data?: unknown) => void;
218
+ }
219
+ /**
220
+ * Advanced hook that provides event-driven consent management
221
+ */
222
+ declare function useConsentManager(): ConsentEventManager & ReturnType<typeof useConsent>;
223
+
224
+ type DSRStatus = "pending" | "in-progress" | "completed" | "rejected";
225
+ type DSRType = "access" | "rectification" | "erasure" | "portability" | "objection" | "restriction";
226
+ type RequestType = DSRType;
227
+ interface DSRRequestType {
228
+ id: string;
229
+ name: string;
230
+ description: string;
231
+ estimatedCompletionTime: number;
232
+ requiresAdditionalInfo: boolean;
233
+ }
234
+ interface ConsentOption {
235
+ id: string;
236
+ label: string;
237
+ description: string;
238
+ required?: boolean;
239
+ defaultValue?: boolean;
240
+ }
241
+ interface BreachReport {
242
+ id: string;
243
+ title: string;
244
+ description: string;
245
+ category: string;
246
+ discoveredAt: number;
247
+ reportedAt: number;
248
+ reporter: {
249
+ name: string;
250
+ email: string;
251
+ department: string;
252
+ };
253
+ affectedSystems: string[];
254
+ dataTypes: string[];
255
+ estimatedAffectedSubjects: number;
256
+ status: "ongoing" | "resolved" | "contained";
257
+ initialActions: string;
258
+ }
259
+ interface DPIAQuestion {
260
+ id: string;
261
+ text: string;
262
+ type: "yes-no" | "multiple-choice" | "text" | "number" | "textarea" | "select" | "radio" | "checkbox" | "scale";
263
+ options?: Array<{
264
+ id?: string;
265
+ label: string;
266
+ value: string;
267
+ riskLevel?: unknown;
268
+ }>;
269
+ required?: boolean;
270
+ category?: string;
271
+ guidance?: string;
272
+ minValue?: number;
273
+ maxValue?: number;
274
+ scaleLabels?: Record<string, string>;
275
+ }
276
+ type RiskAssessmentQuestion = DPIAQuestion;
277
+ type BreachSeverity = "low" | "medium" | "high" | "critical";
278
+ interface ConsentRecord {
279
+ id: string;
280
+ userId?: string;
281
+ consents: Record<string, boolean>;
282
+ timestamp: Date;
283
+ ipAddress?: string;
284
+ userAgent?: string;
285
+ version: string;
286
+ }
287
+ interface ConsentHistoryEntry {
288
+ timestamp: Date;
289
+ consents: Record<string, boolean>;
290
+ action: "granted" | "revoked" | "updated";
291
+ ipAddress?: string;
292
+ userAgent?: string;
293
+ version: string;
294
+ }
295
+ interface DSRRequest {
296
+ id: string;
297
+ type: DSRType;
298
+ status: DSRStatus;
299
+ createdAt: number;
300
+ updatedAt: number;
301
+ dueDate: number;
302
+ completedAt?: number;
303
+ subject: {
304
+ name: string;
305
+ email: string;
306
+ phone?: string;
307
+ };
308
+ description: string;
309
+ }
310
+ interface RiskAssessment {
311
+ id: string;
312
+ breachId: string;
313
+ riskLevel: "low" | "medium" | "high" | "critical";
314
+ assessment: string;
315
+ mitigationMeasures: string[];
316
+ assessedAt: number;
317
+ assessor: string;
318
+ }
319
+ interface DPIAResult {
320
+ id: string;
321
+ title: string;
322
+ processingDescription: string;
323
+ startedAt: number;
324
+ completedAt?: number;
325
+ assessor: {
326
+ name: string;
327
+ role: string;
328
+ email: string;
329
+ };
330
+ answers: Record<string, unknown>;
331
+ risks: Array<{
332
+ id: string;
333
+ description: string;
334
+ likelihood: number;
335
+ impact: number;
336
+ score: number;
337
+ level: string;
338
+ mitigationMeasures: string[];
339
+ mitigated?: boolean;
340
+ residualScore?: number;
341
+ relatedQuestionIds?: string[];
342
+ }>;
343
+ overallRiskLevel: "low" | "medium" | "high" | "critical";
344
+ canProceed: boolean;
345
+ conclusion: string;
346
+ recommendations: string[];
347
+ reviewDate: number;
348
+ version: string;
349
+ }
350
+ interface PolicyVariable {
351
+ name: string;
352
+ label: string;
353
+ type: "text" | "textarea" | "select" | "checkbox" | "date";
354
+ required?: boolean;
355
+ options?: string[];
356
+ defaultValue?: unknown;
357
+ }
358
+ interface PolicyTemplate {
359
+ id: string;
360
+ name: string;
361
+ description: string;
362
+ sections: PolicySection[];
363
+ variables: PolicyVariable[];
364
+ version: string;
365
+ }
366
+ interface PolicySection {
367
+ id: string;
368
+ title: string;
369
+ content: string;
370
+ template?: string;
371
+ required: boolean;
372
+ order: number;
373
+ included?: boolean;
374
+ variables?: string[];
375
+ }
376
+
377
+ declare const consentService: {
378
+ saveConsent: (consents: Record<string, boolean>, userId?: string) => ConsentRecord;
379
+ getCurrentConsent: () => ConsentRecord | null;
380
+ getConsentHistory: () => ConsentHistoryEntry[];
381
+ updateConsent: (consents: Record<string, boolean>, changeReason?: string, userId?: string) => ConsentRecord;
382
+ clearConsentData: () => boolean;
383
+ hasConsent: (type: string) => boolean;
384
+ };
385
+
386
+ interface BreachNotificationFormProps {
387
+ onSubmit: (data: {
388
+ title: string;
389
+ description: string;
390
+ discoveryDate: string;
391
+ affectedDataSubjects: number;
392
+ dataCategories: string[];
393
+ severity: BreachSeverity;
394
+ mitigationSteps: string[];
395
+ reportedToAuthorities: boolean;
396
+ reportedToDataSubjects: boolean;
397
+ }) => void;
398
+ className?: string;
399
+ }
400
+ declare function BreachNotificationForm({ onSubmit, className, }: BreachNotificationFormProps): React$1.JSX.Element;
401
+
402
+ interface DPIAQuestionnaireProps {
403
+ questions: RiskAssessmentQuestion[];
404
+ onSubmit: (answers: Record<string, number>, projectName: string) => void;
405
+ className?: string;
406
+ }
407
+ declare function DPIAQuestionnaire({ questions, onSubmit, className, }: DPIAQuestionnaireProps): React$1.JSX.Element;
408
+
409
+ interface DataSubjectRequestFormProps {
410
+ onSubmit: (data: {
411
+ requestType: RequestType;
412
+ name: string;
413
+ email: string;
414
+ details: string;
415
+ consent: boolean;
416
+ }) => void;
417
+ className?: string;
418
+ }
419
+ declare function DataSubjectRequestForm({ onSubmit, className, }: DataSubjectRequestFormProps): React$1.JSX.Element;
420
+
421
+ interface PolicyGeneratorProps {
422
+ onGenerate: (policy: {
423
+ organizationName: string;
424
+ organizationContact: string;
425
+ sections: PolicySection[];
426
+ }) => void;
427
+ className?: string;
428
+ }
429
+ declare function PolicyGenerator({ onGenerate, className, }: PolicyGeneratorProps): React__default.JSX.Element;
430
+
431
+ declare const cookieUtils: {
15
432
  set: (name: string, value: string, days: number) => void;
16
433
  get: (name: string) => string | null;
17
434
  delete: (name: string) => void;
18
435
  };
19
- export declare const consentStorage: {
20
- save: (key: string, data: any) => void;
21
- load: (key: string) => any | null;
436
+ declare const consentStorage: {
437
+ save: (key: string, data: unknown) => void;
438
+ load: <T = unknown>(key: string) => T | null;
439
+ remove: (key: string) => void;
440
+ };
441
+
442
+ declare const ConsentStorage: {
443
+ save: (key: string, data: unknown) => void;
444
+ load: <T = unknown>(key: string) => T | null;
22
445
  remove: (key: string) => void;
23
446
  };
24
- //# sourceMappingURL=index.d.ts.map
447
+
448
+ export { type BannerProps, type BaseConsentCategories, BreachNotificationForm as BreachNotificationManager, type BreachReport, BreachNotificationForm as BreachReportForm, BreachNotificationForm as BreachRiskAssessment, type BreachSeverity, type ConsentActions$1 as ConsentActions, ConsentBanner, type ConsentCategories, ConsentContext, type ConsentContextValue$1 as ConsentContextValue, type ConsentHistoryEntry, ConsentManager, type ConsentManagerProps, type ConsentOption, ConsentProvider, type ConsentProviderProps, type ConsentRecord, ConsentSettings, type ConsentState$1 as ConsentState, ConsentStorage, type DPIAQuestion, DPIAQuestionnaire, type DPIAResult, DataSubjectRequestForm as DSRDashboard, type DSRRequest, DataSubjectRequestForm as DSRRequestForm, type DSRRequestType, type DSRStatus, DataSubjectRequestForm as DSRTracker, type DSRType, type DefaultConsentCategories, PolicyGenerator as PolicyExporter, PolicyGenerator, PolicyGenerator as PolicyPreview, type PolicySection, type PolicyTemplate, type PolicyVariable, BreachNotificationForm as RegulatoryReportGenerator, type RenderProps, type RequestType, type RiskAssessment, type SettingsProps, consentService, consentStorage, cookieUtils, createConsentContext, useConsent, useConsentActions, useConsentManager, useConsentState };