@anpdgovbr/shared-types
Version:
Biblioteca central de tipos TypeScript compartilhados para os projetos da ANPD (BETA)
36 lines • 1.63 kB
TypeScript
import type { AcaoAuditoria } from "../enums/acao-auditoria.enum";
import type { BaseEntity } from "../base/base-entity.interface";
import type { AuditContext } from "../base/audit-context.interface";
/**
* @interface AuditLogDto
* @extends BaseEntity
* @extends AuditContext
*
* Representa um registro de auditoria, contendo informações sobre ações realizadas
* em entidades/tabelas do sistema, incluindo metadados de origem e correlação
* (traceId, requestId, etc.) herdados de {@link AuditContext}.
*
* @property {string} tabela - Nome da tabela/entidade afetada.
* @property {AcaoAuditoria} acao - Tipo da ação realizada (ex.: criação, atualização, exclusão).
* @property {number} [registroId] - Identificador do registro afetado.
* @property {string} [userId] - Identificador do usuário responsável (quando autenticado).
* @property {string} [email] - E-mail do usuário responsável (quando disponível).
* @property {unknown} [antes] - Estado anterior do registro antes da ação.
* @property {unknown} [depois] - Estado do registro após a ação.
* @property {Date} criadoEm - Data/hora de criação do log.
*
* @remarks
* Os campos de contexto (ex.: `ip`, `userAgent`, `contexto`) e de correlação
* (ex.: `traceId`, `requestId`, `spanId`, `correlationId`) são herdados de {@link AuditContext}.
*/
export interface AuditLogDto extends BaseEntity, AuditContext {
tabela: string;
acao: AcaoAuditoria;
registroId?: number;
userId?: string;
email?: string;
antes?: unknown;
depois?: unknown;
criadoEm: Date;
}
//# sourceMappingURL=audit-log.dto.d.ts.map