Files
agentic-dev/packages/core-dsr/src/index.ts
Danijel Martinek 46e575a5a6 feat(core-dsr): handlers, dsrRouter, integration tests
Add four protocol-agnostic handlers (export, delete, rectify, restrict)
returning normalized { status, body, headers } responses, and a tRPC
dsrRouter via createDsrRouter(binding) following the factory pattern.

Auth checks: requireAuthenticated middleware gates all four procedures;
cascade-hard delete additionally requires admin role. Integration tests
assert happy-path response shapes, UNAUTHORIZED/FORBIDDEN error codes,
and error passthrough from the DSR service layer.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
2026-05-19 20:34:51 +00:00

51 lines
2.0 KiB
TypeScript

export type {
DsrFormat,
DeletionMode,
DeletionReason,
DeletionAction,
SubjectReference,
CollectionDataBucket,
UserDataBundle,
DeletionAffected,
DeletionCertificate,
} from "./dsr-types";
export type { IDataExport } from "./data-export.interface";
export type { IDataDelete } from "./data-delete.interface";
export type { IDataRectify } from "./data-rectify.interface";
export type { IProcessingRestriction } from "./processing-restriction.interface";
export type {
DsrSubjectLinkKind,
DsrSubjectLinkage,
DsrCollectionCustom,
FieldPii,
} from "./dsr-collection-custom";
export { PayloadDataExport } from "./payload-data-export";
export { PayloadDataDelete } from "./payload-data-delete";
export { PayloadDataRectify } from "./payload-data-rectify";
export { PayloadProcessingRestriction } from "./payload-processing-restriction";
export { InMemoryDataExport } from "./in-memory-data-export";
export { InMemoryDataDelete } from "./in-memory-data-delete";
export { InMemoryDataRectify } from "./in-memory-data-rectify";
export { InMemoryProcessingRestriction } from "./in-memory-processing-restriction";
export { bindProductionDsr } from "./di/bind-production";
export type { DsrBinding, BindProductionDsrOpts } from "./di/bind-production";
export { bindDevSeedDsr } from "./di/bind-dev-seed";
export { createDsrRouter, dsrRouter } from "./dsr.router";
export type { DsrRouter, DsrTrpcUser } from "./dsr.router";
export type { HandlerResponse } from "./handlers/handler-types";
export { createExportHandler } from "./handlers/export-handler";
export type { ExportHandlerInput } from "./handlers/export-handler";
export { createDeleteHandler } from "./handlers/delete-handler";
export type { DeleteHandlerInput } from "./handlers/delete-handler";
export { createRectifyHandler } from "./handlers/rectify-handler";
export type { RectifyHandlerInput } from "./handlers/rectify-handler";
export { createRestrictHandler } from "./handlers/restrict-handler";
export type { RestrictHandlerInput } from "./handlers/restrict-handler";