DataRightsManager

class DataRightsManager(context: Context, telemetry: EncryptedTelemetryStore, audit: AuditTrail, queue: QueueRepository? = null, persistentAudit: PersistentAuditTrail? = null, requireAuthorization: Boolean = false)

GDPR and data rights management.

Provides APIs for data export (Art. 20), erasure (Art. 17), and full device wipe.

When a DataRightsAuthorizer is configured, all destructive operations require authorization before proceeding. If requireAuthorization is true and no authorizer is set, operations return DataDeletionResult.Unauthorized or DataExportResult.Unauthorized.

Since

0.5.0 Rewritten with QueueRepository and PersistentAuditTrail support.

1.0.0 Authorization callback support.

Constructors

Link copied to clipboard
constructor(context: Context, telemetry: EncryptedTelemetryStore, audit: AuditTrail, queue: QueueRepository? = null, persistentAudit: PersistentAuditTrail? = null, requireAuthorization: Boolean = false)

Functions

Link copied to clipboard

Delete all data for a specific user (GDPR Art. 17 erasure).

Link copied to clipboard

Export all local SDK data (not user-specific).

Link copied to clipboard
suspend fun exportUserData(userId: String): DataExportResult

Export all local data for a specific user (GDPR Art. 20 portability).

Link copied to clipboard
Link copied to clipboard

Set the authorization callback for data rights operations.

Link copied to clipboard

Wipe all SDK data from the device.