diff options
Diffstat (limited to 'types/policy.ts')
| -rw-r--r-- | types/policy.ts | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/types/policy.ts b/types/policy.ts new file mode 100644 index 00000000..fbe0bb81 --- /dev/null +++ b/types/policy.ts @@ -0,0 +1,48 @@ +export interface PolicyData { + id: number + policyType: 'privacy_policy' | 'terms_of_service' + version: string + content: string + effectiveDate: string + isCurrent: boolean + createdAt: string + } + + export interface PolicyVersions { + privacy_policy: PolicyData + terms_of_service: PolicyData + } + + export interface ConsentData { + privacy: boolean + terms: boolean + marketing: boolean + } + + export interface ConsentRecord { + id: number + userId: number + consentType: 'privacy_policy' | 'terms_of_service' | 'marketing' | 'optional' + consentStatus: boolean + policyVersion: string + consentedAt: string + ipAddress?: string + userAgent?: string + revokedAt?: string + revokeReason?: string + } + + export interface ConsentLogRecord { + id: number + userId: number + consentType: 'privacy_policy' | 'terms_of_service' | 'marketing' | 'optional' + action: 'consent' | 'revoke' | 'update' + oldStatus?: boolean + newStatus: boolean + policyVersion: string + ipAddress?: string + userAgent?: string + actionTimestamp: string + additionalData?: any + } +
\ No newline at end of file |
