UNPKG

@anpdgovbr/shared-types

Version:

Biblioteca central de tipos TypeScript compartilhados para os projetos da ANPD (BETA)

56 lines 1.83 kB
/** * @description * Representa metadados de rastreamento e contexto de uma operação (auditoria). * * Captura quem executou, de onde, com qual agente de usuário e inclui * identificadores de correlação/trace distribuído (ex.: `traceId`, `requestId`). * * @remarks * - Pode ser usada isoladamente ou como parte de entidades auditáveis (ex.: `AuditedEntity`). * - Ideal para logs, microsserviços de auditoria e interceptadores de requisições. * - Estende {@link CorrelationIds} para suportar padrões como W3C Trace Context. * * @example * { * userId: "b3c2e3a9", * ip: "192.168.0.101", * userAgent: "Mozilla/5.0 (Windows NT 10.0)", * contexto: "Importação de processos via CSV", * requestId: "req-01HQZ0X9...", * traceId: "0af7651916cd43dd8448eb211c80319c" * } * * @public */ import type { CorrelationIds } from "./correlation-ids.interface"; export interface AuditContext extends CorrelationIds { /** * ID do usuário que executou a ação. * * @remarks * Pode ser `undefined` caso a ação não tenha sido realizada por um usuário autenticado. */ userId?: string; /** * Endereço IP de origem da requisição. * * @remarks * Pode ser útil para rastreamento de acessos e identificação de origem. */ ip?: string; /** * Identificação do agente de usuário (navegador, sistema, etc.). * * @remarks * Normalmente extraído do cabeçalho `User-Agent` da requisição HTTP. */ userAgent?: string; /** * Descrição opcional do contexto da ação (ex: nome do módulo ou operação). * * @remarks * Pode ser utilizada para detalhar o cenário em que a ação foi executada. */ contexto?: string; } //# sourceMappingURL=audit-context.interface.d.ts.map