/** * GDPR Art. 18 (right to restriction of processing). * * Toggles and reads the `processingRestrictedAt` flag on the subject's user * record. When restricted, downstream use cases should call `isRestricted` * before processing personal data and short-circuit if true. * * Emits RESTRICT / UNRESTRICT audit entries on every state change. */ export interface IProcessingRestriction { /** * Grant or revoke processing restriction for the given subject. * * @param subjectId - The subject's canonical ID. * @param granted - true to restrict processing; false to lift restriction. */ setRestriction(subjectId: string, granted: boolean): Promise; /** * Return whether processing is currently restricted for the given subject. * * @param subjectId - The subject's canonical ID. */ isRestricted(subjectId: string): Promise; }