Skip to content

@nestarc/audit-log ​

Published 0.7.0 API. Start with the runnable example, incremental adoption, or migration guidance. Signatures and source links below come from the immutable release.

Classes ​

AuditActorMiddleware ​

Defined in: src/middleware/audit-actor.middleware.ts:22

Implements ​

  • NestMiddleware

Constructors ​

Constructor ​
ts
new AuditActorMiddleware(options): AuditActorMiddleware;

Defined in: src/middleware/audit-actor.middleware.ts:23

Parameters ​
ParameterType
optionsAuditLogModuleOptions
Returns ​

AuditActorMiddleware

Methods ​

use() ​
ts
use(
   req,
   _res,
next): Promise<void>;

Defined in: src/middleware/audit-actor.middleware.ts:28

Parameters ​
ParameterType
reqany
_resany
next() => void
Returns ​

Promise<void>

Implementation of ​
ts
NestMiddleware.use

AuditContext ​

Defined in: src/services/audit-context.ts:12

Constructors ​

Constructor ​
ts
new AuditContext(): AuditContext;
Returns ​

AuditContext

Methods ​

getActionOverride() ​
ts
static getActionOverride(): string | undefined;

Defined in: src/services/audit-context.ts:35

Returns ​

string | undefined

getActor() ​
ts
static getActor(): AuditActor | null;

Defined in: src/services/audit-context.ts:27

Returns ​

AuditActor | null

getMetadata() ​
ts
static getMetadata(): Record<string, unknown> | undefined;

Defined in: src/services/audit-context.ts:48

Returns ​

Record<string, unknown> | undefined

getReason() ​
ts
static getReason(): string | undefined;

Defined in: src/services/audit-context.ts:58

Returns ​

string | undefined

getStore() ​
ts
static getStore(): AuditContextStore | undefined;

Defined in: src/services/audit-context.ts:23

Returns ​

AuditContextStore | undefined

isNoAudit() ​
ts
static isNoAudit(): boolean;

Defined in: src/services/audit-context.ts:31

Returns ​

boolean

run() ​
ts
static run<T>(store, fn): T;

Defined in: src/services/audit-context.ts:15

Type Parameters ​
Type Parameter
T
Parameters ​
ParameterType
storeAuditContextStore
fn() => T
Returns ​

T

runAs() ​
ts
static runAs<T>(actor, fn): T;

Defined in: src/services/audit-context.ts:19

Type Parameters ​
Type Parameter
T
Parameters ​
ParameterType
actorAuditActor
fn() => T
Returns ​

T

setMetadata() ​
ts
static setMetadata(metadata): void;

Defined in: src/services/audit-context.ts:39

Parameters ​
ParameterType
metadataRecord<string, unknown>
Returns ​

void

setReason() ​
ts
static setReason(reason): void;

Defined in: src/services/audit-context.ts:52

Parameters ​
ParameterType
reasonstring
Returns ​

void


AuditInterceptor ​

Defined in: src/interceptors/audit.interceptor.ts:16

Implements ​

  • NestInterceptor

Constructors ​

Constructor ​
ts
new AuditInterceptor(reflector): AuditInterceptor;

Defined in: src/interceptors/audit.interceptor.ts:17

Parameters ​
ParameterType
reflectorReflector
Returns ​

AuditInterceptor

Methods ​

intercept() ​
ts
intercept(context, next): Observable<any>;

Defined in: src/interceptors/audit.interceptor.ts:19

Method to implement a custom interceptor.

Parameters ​
ParameterTypeDescription
contextExecutionContextan ExecutionContext object providing methods to access the route handler and class about to be invoked.
nextCallHandlera reference to the CallHandler, which provides access to an Observable representing the response stream from the route handler.
Returns ​

Observable<any>

Implementation of ​
ts
NestInterceptor.intercept

AuditLogModule ​

Defined in: src/audit-log.module.ts:22

Implements ​

  • NestModule

Constructors ​

Constructor ​
ts
new AuditLogModule(options): AuditLogModule;

Defined in: src/audit-log.module.ts:23

Parameters ​
ParameterType
optionsAuditLogModuleOptions
Returns ​

AuditLogModule

Methods ​

configure() ​
ts
configure(consumer): void;

Defined in: src/audit-log.module.ts:28

Parameters ​
ParameterType
consumerMiddlewareConsumer
Returns ​

void

Implementation of ​
ts
NestModule.configure

forRoot() ​
ts
static forRoot(options): DynamicModule;

Defined in: src/audit-log.module.ts:35

Parameters ​
ParameterType
optionsAuditLogModuleOptions
Returns ​

DynamicModule

forRootAsync() ​
ts
static forRootAsync(options): DynamicModule;

Defined in: src/audit-log.module.ts:54

Parameters ​
ParameterType
optionsAuditLogModuleAsyncOptions
Returns ​

DynamicModule


AuditService ​

Defined in: src/services/audit.service.ts:49

Constructors ​

Constructor ​
ts
new AuditService(options): AuditService;

Defined in: src/services/audit.service.ts:57

Parameters ​
ParameterType
optionsAuditLogModuleOptions
Returns ​

AuditService

Methods ​

exportCsv() ​
ts
exportCsv(options): Readable;

Defined in: src/services/audit.service.ts:190

Parameters ​
ParameterType
optionsAuditCsvOptions
Returns ​

Readable

getById() ​
ts
getById(id, options?): Promise<AuditEntry | null>;

Defined in: src/services/audit.service.ts:179

Parameters ​
ParameterType
idstring
optionsAuditGetByIdOptions
Returns ​

Promise<AuditEntry | null>

log() ​
ts
log(input, tx?): Promise<void>;

Defined in: src/services/audit.service.ts:85

Parameters ​
ParameterType
inputManualAuditLogInput
tx?any
Returns ​

Promise<void>

prune() ​
ts
prune(options): Promise<AuditPruneResult>;

Defined in: src/services/audit.service.ts:196

Parameters ​
ParameterType
optionsAuditPruneOptions
Returns ​

Promise<AuditPruneResult>

query() ​
ts
query(options): Promise<AuditQueryResult>;

Defined in: src/services/audit.service.ts:175

Parameters ​
ParameterType
optionsAuditQueryOptions
Returns ​

Promise<AuditQueryResult>

scan() ​
ts
scan(options): AsyncIterable<AuditScanPage>;

Defined in: src/services/audit.service.ts:186

Parameters ​
ParameterType
optionsAuditScanOptions
Returns ​

AsyncIterable<AuditScanPage>


AuditStreamDeliveryError ​

Defined in: src/stream/audit-stream.ts:79

Extends ​

  • Error

Constructors ​

Constructor ​
ts
new AuditStreamDeliveryError(message, options): AuditStreamDeliveryError;

Defined in: src/stream/audit-stream.ts:84

Parameters ​
ParameterType
messagestring
options{ cause?: unknown; retryAfterMs?: number; status?: number; terminal: boolean; }
options.cause?unknown
options.retryAfterMs?number
options.status?number
options.terminalboolean
Returns ​

AuditStreamDeliveryError

Overrides ​
ts
Error.constructor

Properties ​

cause? ​
ts
optional cause?: unknown;

Defined in: node_modules/typescript/lib/lib.es2022.error.d.ts:26

Inherited from ​
ts
Error.cause

message ​
ts
message: string;

Defined in: node_modules/typescript/lib/lib.es5.d.ts:1077

Inherited from ​
ts
Error.message

name ​
ts
name: string;

Defined in: node_modules/typescript/lib/lib.es5.d.ts:1076

Inherited from ​
ts
Error.name

retryAfterMs? ​
ts
readonly optional retryAfterMs?: number;

Defined in: src/stream/audit-stream.ts:82

stack? ​
ts
optional stack?: string;

Defined in: node_modules/typescript/lib/lib.es5.d.ts:1078

Inherited from ​
ts
Error.stack

stackTraceLimit ​
ts
static stackTraceLimit: number;

Defined in: node_modules/@types/node/globals.d.ts:67

The Error.stackTraceLimit property specifies the number of stack frames collected by a stack trace (whether generated by new Error().stack or Error.captureStackTrace(obj)).

The default value is 10 but may be set to any valid JavaScript number. Changes will affect any stack trace captured after the value has been changed.

If set to a non-number value, or set to a negative number, stack traces will not capture any frames.

Inherited from ​
ts
Error.stackTraceLimit

status? ​
ts
readonly optional status?: number;

Defined in: src/stream/audit-stream.ts:81

terminal ​
ts
readonly terminal: boolean;

Defined in: src/stream/audit-stream.ts:80

Methods ​

captureStackTrace() ​
ts
static captureStackTrace(targetObject, constructorOpt?): void;

Defined in: node_modules/@types/node/globals.d.ts:51

Creates a .stack property on targetObject, which when accessed returns a string representing the location in the code at which Error.captureStackTrace() was called.

js
const myObject = {};
Error.captureStackTrace(myObject);
myObject.stack;  // Similar to `new Error().stack`

The first line of the trace will be prefixed with ${myObject.name}: ${myObject.message}.

The optional constructorOpt argument accepts a function. If given, all frames above constructorOpt, including constructorOpt, will be omitted from the generated stack trace.

The constructorOpt argument is useful for hiding implementation details of error generation from the user. For instance:

js
function a() {
  b();
}

function b() {
  c();
}

function c() {
  // Create an error without stack trace to avoid calculating the stack trace twice.
  const { stackTraceLimit } = Error;
  Error.stackTraceLimit = 0;
  const error = new Error();
  Error.stackTraceLimit = stackTraceLimit;

  // Capture the stack trace above function b
  Error.captureStackTrace(error, b); // Neither function c, nor b is included in the stack trace
  throw error;
}

a();
Parameters ​
ParameterType
targetObjectobject
constructorOpt?Function
Returns ​

void

Inherited from ​
ts
Error.captureStackTrace

prepareStackTrace() ​
ts
static prepareStackTrace(err, stackTraces): any;

Defined in: node_modules/@types/node/globals.d.ts:55

Parameters ​
ParameterType
errError
stackTracesCallSite[]
Returns ​

any

See ​

https://v8.dev/docs/stack-trace-api#customizing-stack-traces

Inherited from ​
ts
Error.prepareStackTrace

AuditStreamRunner ​

Defined in: src/stream/audit-stream.ts:104

Constructors ​

Constructor ​
ts
new AuditStreamRunner(auditService, options): AuditStreamRunner;

Defined in: src/stream/audit-stream.ts:105

Parameters ​
ParameterType
auditServicePick<AuditService, "scan">
optionsAuditStreamRunnerOptions
Returns ​

AuditStreamRunner

Methods ​

runOnce() ​
ts
runOnce(input?): Promise<AuditStreamRunResult>;

Defined in: src/stream/audit-stream.ts:112

Parameters ​
ParameterType
input{ signal?: AbortSignal; }
input.signal?AbortSignal
Returns ​

Promise<AuditStreamRunResult>


DatadogAuditStreamSink ​

Defined in: src/stream/provider-sinks.ts:19

Implements ​

Constructors ​

Constructor ​
ts
new DatadogAuditStreamSink(options): DatadogAuditStreamSink;

Defined in: src/stream/provider-sinks.ts:22

Parameters ​
ParameterType
optionsDatadogAuditStreamSinkOptions
Returns ​

DatadogAuditStreamSink

Methods ​

deliver() ​
ts
deliver(entries, context): Promise<void>;

Defined in: src/stream/provider-sinks.ts:44

Parameters ​
ParameterType
entriesreadonly AuditEntry[]
contextAuditStreamBatchContext
Returns ​

Promise<void>

Implementation of ​

AuditStreamSink.deliver


HttpAuditStreamSink ​

Defined in: src/stream/http-sink.ts:22

Implements ​

Constructors ​

Constructor ​
ts
new HttpAuditStreamSink(options): HttpAuditStreamSink;

Defined in: src/stream/http-sink.ts:23

Parameters ​
ParameterType
optionsHttpAuditStreamSinkOptions
Returns ​

HttpAuditStreamSink

Methods ​

deliver() ​
ts
deliver(entries, context): Promise<void>;

Defined in: src/stream/http-sink.ts:35

Parameters ​
ParameterType
entriesreadonly AuditEntry[]
contextAuditStreamBatchContext
Returns ​

Promise<void>

Implementation of ​

AuditStreamSink.deliver


ObjectStorageAuditStreamSink ​

Defined in: src/stream/provider-sinks.ts:115

Implements ​

Constructors ​

Constructor ​
ts
new ObjectStorageAuditStreamSink(options): ObjectStorageAuditStreamSink;

Defined in: src/stream/provider-sinks.ts:116

Parameters ​
ParameterType
optionsObjectStorageAuditStreamSinkOptions
Returns ​

ObjectStorageAuditStreamSink

Methods ​

deliver() ​
ts
deliver(entries, context): Promise<void>;

Defined in: src/stream/provider-sinks.ts:122

Parameters ​
ParameterType
entriesreadonly AuditEntry[]
contextAuditStreamBatchContext
Returns ​

Promise<void>

Implementation of ​

AuditStreamSink.deliver


PostgresAuditStreamStore ​

Defined in: src/stream/postgres-store.ts:23

Implements ​

Constructors ​

Constructor ​
ts
new PostgresAuditStreamStore(options): PostgresAuditStreamStore;

Defined in: src/stream/postgres-store.ts:30

Parameters ​
ParameterType
optionsPostgresAuditStreamStoreOptions
Returns ​

PostgresAuditStreamStore

Methods ​

load() ​
ts
load(streamId): Promise<AuditStreamState | null>;

Defined in: src/stream/postgres-store.ts:40

Parameters ​
ParameterType
streamIdstring
Returns ​

Promise<AuditStreamState | null>

Implementation of ​

AuditStreamCheckpointStore.load

save() ​
ts
save(streamId, state): Promise<void>;

Defined in: src/stream/postgres-store.ts:51

Parameters ​
ParameterType
streamIdstring
stateAuditStreamState
Returns ​

Promise<void>

Implementation of ​

AuditStreamCheckpointStore.save

write() ​
ts
write(deadLetter): Promise<void>;

Defined in: src/stream/postgres-store.ts:65

Parameters ​
ParameterType
deadLetterAuditStreamDeadLetter
Returns ​

Promise<void>

Implementation of ​

AuditStreamDeadLetterStore.write


SplunkAuditStreamSink ​

Defined in: src/stream/provider-sinks.ts:66

Implements ​

Constructors ​

Constructor ​
ts
new SplunkAuditStreamSink(options): SplunkAuditStreamSink;

Defined in: src/stream/provider-sinks.ts:69

Parameters ​
ParameterType
optionsSplunkAuditStreamSinkOptions
Returns ​

SplunkAuditStreamSink

Methods ​

deliver() ​
ts
deliver(entries, context): Promise<void>;

Defined in: src/stream/provider-sinks.ts:92

Parameters ​
ParameterType
entriesreadonly AuditEntry[]
contextAuditStreamBatchContext
Returns ​

Promise<void>

Implementation of ​

AuditStreamSink.deliver

Interfaces ​

AuditActor ​

Defined in: src/interfaces/actor.interface.ts:1

Properties ​

id ​
ts
id: string | null;

Defined in: src/interfaces/actor.interface.ts:2

ip? ​
ts
optional ip?: string;

Defined in: src/interfaces/actor.interface.ts:4

type ​
ts
type: "user" | "system" | "api_key";

Defined in: src/interfaces/actor.interface.ts:3


AuditCapabilities ​

Defined in: src/prisma/audit-extension/audit-types.ts:7

Properties ​

atomicLifecycle ​
ts
readonly atomicLifecycle: boolean;

Defined in: src/prisma/audit-extension/audit-types.ts:9

consistency ​
ts
readonly consistency: AuditConsistency;

Defined in: src/prisma/audit-extension/audit-types.ts:8


AuditCapabilityMethods ​

Defined in: src/prisma/audit-extension/audit-types.ts:12

Methods ​

getAuditCapabilities() ​
ts
getAuditCapabilities(): AuditCapabilities;

Defined in: src/prisma/audit-extension/audit-types.ts:13

Returns ​

AuditCapabilities


AuditConfig ​

Defined in: src/define-audit-config.ts:33

Type Parameters ​

Type ParameterDefault type
T extends AuditExtensionOptions | undefinedAuditExtensionOptions | undefined

Properties ​

extensionOptions ​
ts
extensionOptions: T;

Defined in: src/define-audit-config.ts:35

moduleOptions ​
ts
moduleOptions: Omit<AuditLogModuleOptions, "prisma">;

Defined in: src/define-audit-config.ts:34

partitionOptions ​
ts
partitionOptions: Pick<EnsurePartitionsOptions, "tableName">;

Defined in: src/define-audit-config.ts:37

schemaOptions ​
ts
schemaOptions: AuditTableSQLOptions;

Defined in: src/define-audit-config.ts:36


AuditConfigInput ​

Defined in: src/define-audit-config.ts:26

Properties ​

extension? ​
ts
optional extension?: AuditConfigExtensionOptions;

Defined in: src/define-audit-config.ts:29

module ​
ts
module: AuditConfigModuleOptions;

Defined in: src/define-audit-config.ts:28

schema? ​
ts
optional schema?: AuditConfigSchemaOptions;

Defined in: src/define-audit-config.ts:30

shared? ​
ts
optional shared?: AuditConfigSharedOptions;

Defined in: src/define-audit-config.ts:27


AuditContextStore ​

Defined in: src/services/audit-context.ts:4

Properties ​

actionOverride? ​
ts
optional actionOverride?: string;

Defined in: src/services/audit-context.ts:7

actor ​
ts
actor: AuditActor | null;

Defined in: src/services/audit-context.ts:5

metadata? ​
ts
optional metadata?: Record<string, unknown>;

Defined in: src/services/audit-context.ts:8

noAudit ​
ts
noAudit: boolean;

Defined in: src/services/audit-context.ts:6

reason? ​
ts
optional reason?: string;

Defined in: src/services/audit-context.ts:9


AuditDatabaseMapping ​

Defined in: src/prisma/audit-extension/audit-types.ts:46

Properties ​

primaryKeyColumn? ​
ts
optional primaryKeyColumn?: string;

Defined in: src/prisma/audit-extension/audit-types.ts:52

Database column for the configured logical primary key field.

schema? ​
ts
optional schema?: string;

Defined in: src/prisma/audit-extension/audit-types.ts:50

PostgreSQL schema name. Defaults to the connection's current schema.

tableName ​
ts
tableName: string;

Defined in: src/prisma/audit-extension/audit-types.ts:48

PostgreSQL table name used by the Prisma model.


AuditEntry ​

Defined in: src/interfaces/audit-entry.interface.ts:1

Properties ​

action ​
ts
action: string;

Defined in: src/interfaces/audit-entry.interface.ts:7

actorId ​
ts
actorId: string | null;

Defined in: src/interfaces/audit-entry.interface.ts:4

actorIp ​
ts
actorIp: string | null;

Defined in: src/interfaces/audit-entry.interface.ts:6

actorType ​
ts
actorType: string;

Defined in: src/interfaces/audit-entry.interface.ts:5

changes ​
ts
changes:
  | Record<string, {
  after?: unknown;
  before?: unknown;
}>
  | null;

Defined in: src/interfaces/audit-entry.interface.ts:11

createdAt ​
ts
createdAt: Date;

Defined in: src/interfaces/audit-entry.interface.ts:14

id ​
ts
id: string;

Defined in: src/interfaces/audit-entry.interface.ts:2

metadata ​
ts
metadata: Record<string, unknown> | null;

Defined in: src/interfaces/audit-entry.interface.ts:12

result ​
ts
result: "success" | "failure";

Defined in: src/interfaces/audit-entry.interface.ts:13

source ​
ts
source: "auto" | "manual";

Defined in: src/interfaces/audit-entry.interface.ts:10

targetId ​
ts
targetId: string | null;

Defined in: src/interfaces/audit-entry.interface.ts:9

targetType ​
ts
targetType: string | null;

Defined in: src/interfaces/audit-entry.interface.ts:8

tenantId ​
ts
tenantId: string | null;

Defined in: src/interfaces/audit-entry.interface.ts:3


AuditErrorContext ​

Defined in: src/interfaces/audit-shared-options.interface.ts:14

Properties ​

action? ​
ts
optional action?: string;

Defined in: src/interfaces/audit-shared-options.interface.ts:18

model? ​
ts
optional model?: string;

Defined in: src/interfaces/audit-shared-options.interface.ts:16

operation? ​
ts
optional operation?: string;

Defined in: src/interfaces/audit-shared-options.interface.ts:17

phase ​
ts
phase: AuditErrorPhase;

Defined in: src/interfaces/audit-shared-options.interface.ts:15

targetId? ​
ts
optional targetId?: string | null;

Defined in: src/interfaces/audit-shared-options.interface.ts:19

tenantId? ​
ts
optional tenantId?: string | null;

Defined in: src/interfaces/audit-shared-options.interface.ts:20


AuditExtensionOptions ​

Defined in: src/prisma/audit-extension/audit-types.ts:55

Options shared by the Nest module and Prisma extension. Runtime merging is intentionally not performed; pass the same object to both call sites or use defineAuditConfig() when both paths should share behavior.

Extends ​

Properties ​

actorRequired? ​
ts
optional actorRequired?: boolean;

Defined in: src/interfaces/audit-shared-options.interface.ts:31

Require a non-blank string actor ID for audit writes. Defaults to false.

Inherited from ​

AuditSharedOptions.actorRequired

batchOverflow? ​
ts
optional batchOverflow?: AuditBatchOverflow;

Defined in: src/prisma/audit-extension/audit-types.ts:81

Behavior when deleteMany matches more than maxBatchRecords. Defaults to reject. Summary overflow is available only in best-effort mode.

consistency ​
ts
consistency: AuditConsistency;

Defined in: src/prisma/audit-extension/audit-types.ts:60

atomic-required rejects tracked writes outside withAuditTransaction(). best-effort preserves the legacy non-atomic behavior.

databaseMapping? ​
ts
optional databaseMapping?: Record<string, AuditDatabaseMapping>;

Defined in: src/prisma/audit-extension/audit-types.ts:72

Database identifiers used for atomic row locks. Required for models that use Prisma mapping attributes when the generated Prisma namespace does not expose public DMMF mapping metadata.

ignoredModels? ​
ts
optional ignoredModels?: string[];

Defined in: src/prisma/audit-extension/audit-types.ts:62

ignoreTimestampOnlyUpdates? ​
ts
optional ignoreTimestampOnlyUpdates?: boolean;

Defined in: src/prisma/audit-extension/audit-types.ts:83

logFailures? ​
ts
optional logFailures?: boolean;

Defined in: src/prisma/audit-extension/audit-types.ts:82

logger? ​
ts
optional logger?: AuditLogger;

Defined in: src/interfaces/audit-shared-options.interface.ts:35

Inherited from ​

AuditSharedOptions.logger

maxBatchRecords? ​
ts
optional maxBatchRecords?: number;

Defined in: src/prisma/audit-extension/audit-types.ts:76

Maximum records that deleteMany may audit individually. Defaults to 1000.

onAuditError? ​
ts
optional onAuditError?: (error, ctx) => void;

Defined in: src/interfaces/audit-shared-options.interface.ts:34

Parameters ​
ParameterType
errorunknown
ctxAuditErrorContext
Returns ​

void

Inherited from ​

AuditSharedOptions.onAuditError

primaryKey? ​
ts
optional primaryKey?: Record<string, string>;

Defined in: src/prisma/audit-extension/audit-types.ts:66

Map of model name to primary key field name. Defaults to 'id'.

prismaModule? ​
ts
optional prismaModule?: PrismaModuleLike;

Defined in: src/prisma/audit-extension/audit-types.ts:84

sensitiveFields? ​
ts
optional sensitiveFields?: string[];

Defined in: src/prisma/audit-extension/audit-types.ts:63

sensitiveFieldsByModel? ​
ts
optional sensitiveFieldsByModel?: Record<string, string[]>;

Defined in: src/prisma/audit-extension/audit-types.ts:64

tableName? ​
ts
optional tableName?: string;

Defined in: src/interfaces/audit-shared-options.interface.ts:29

Inherited from ​

AuditSharedOptions.tableName

tenantRequired? ​
ts
optional tenantRequired?: boolean;

Defined in: src/interfaces/audit-shared-options.interface.ts:32

Inherited from ​

AuditSharedOptions.tenantRequired

tenantResolver? ​
ts
optional tenantResolver?: () => string | null;

Defined in: src/interfaces/audit-shared-options.interface.ts:33

Returns ​

string | null

Inherited from ​

AuditSharedOptions.tenantResolver

trackedModels? ​
ts
optional trackedModels?: string[];

Defined in: src/prisma/audit-extension/audit-types.ts:61


AuditGetByIdOptions ​

Defined in: src/interfaces/audit-entry.interface.ts:42

Properties ​

allTenants? ​
ts
optional allTenants?: boolean;

Defined in: src/interfaces/audit-entry.interface.ts:44

tenantId? ​
ts
optional tenantId?: string;

Defined in: src/interfaces/audit-entry.interface.ts:43


AuditLifecycleInput ​

Defined in: src/prisma/audit-extension/audit-types.ts:37

Properties ​

action ​
ts
action: string;

Defined in: src/prisma/audit-extension/audit-types.ts:39

Deterministic lifecycle action, for example User.softDeleted.

metadata? ​
ts
optional metadata?: Record<string, unknown>;

Defined in: src/prisma/audit-extension/audit-types.ts:41

Metadata merged into the ambient audit context for this mutation.

suppressOuterOperation? ​
ts
optional suppressOuterOperation?: {
  model: string;
  operation: "delete" | "deleteMany";
};

Defined in: src/prisma/audit-extension/audit-types.ts:43

Internal extension-composition signal for a rewritten outer operation.

model ​
ts
model: string;
operation ​
ts
operation: "delete" | "deleteMany";

AuditLogger ​

Defined in: src/interfaces/audit-shared-options.interface.ts:2

Minimal logger compatible with console and NestJS LoggerService.

Methods ​

error() ​
ts
error(message): void;

Defined in: src/interfaces/audit-shared-options.interface.ts:4

Parameters ​
ParameterType
messagestring
Returns ​

void

warn() ​
ts
warn(message): void;

Defined in: src/interfaces/audit-shared-options.interface.ts:3

Parameters ​
ParameterType
messagestring
Returns ​

void


AuditLogModuleAsyncOptions ​

Defined in: src/interfaces/audit-log-options.interface.ts:26

Extends ​

  • Pick<ModuleMetadata, "imports">

Properties ​

imports? ​
ts
optional imports?: (
  | DynamicModule
  | Type<any>
  | Promise<DynamicModule>
  | ForwardReference<any>)[];

Defined in: node_modules/@nestjs/common/interfaces/modules/module-metadata.interface.d.ts:18

Optional list of imported modules that export the providers which are required in this module.

Inherited from ​
ts
Pick.imports

inject? ​
ts
optional inject?: any[];

Defined in: src/interfaces/audit-log-options.interface.ts:31

useFactory ​
ts
useFactory: (...args) =>
  | AuditLogModuleOptions
| Promise<AuditLogModuleOptions>;

Defined in: src/interfaces/audit-log-options.interface.ts:28

Parameters ​
ParameterType
...argsany[]
Returns ​

| AuditLogModuleOptions | Promise<AuditLogModuleOptions>


AuditLogModuleOptions ​

Defined in: src/interfaces/audit-log-options.interface.ts:7

Options shared by the Nest module and Prisma extension. Runtime merging is intentionally not performed; pass the same object to both call sites or use defineAuditConfig() when both paths should share behavior.

Extends ​

Properties ​

actorExtractionStage? ​
ts
optional actorExtractionStage?: "middleware" | "interceptor";

Defined in: src/interfaces/audit-log-options.interface.ts:16

When to invoke actorExtractor (once per request). Defaults to middleware. Choose interceptor when an authentication guard populates req.user. Interceptor extraction requires AuditInterceptor and runs after guards; writes inside guards therefore do not yet have an extracted actor.

actorExtractor ​
ts
actorExtractor: ActorExtractor;

Defined in: src/interfaces/audit-log-options.interface.ts:9

actorRequired? ​
ts
optional actorRequired?: boolean;

Defined in: src/interfaces/audit-shared-options.interface.ts:31

Require a non-blank string actor ID for audit writes. Defaults to false.

Inherited from ​

AuditSharedOptions.actorRequired

correlationIdGetter? ​
ts
optional correlationIdGetter?: (req) => string | undefined;

Defined in: src/interfaces/audit-log-options.interface.ts:23

Parameters ​
ParameterType
reqany
Returns ​

string | undefined

correlationIdHeader? ​
ts
optional correlationIdHeader?: string;

Defined in: src/interfaces/audit-log-options.interface.ts:22

excludeRoutes? ​
ts
optional excludeRoutes?: RouteInfo[];

Defined in: src/interfaces/audit-log-options.interface.ts:20

logger? ​
ts
optional logger?: AuditLogger;

Defined in: src/interfaces/audit-shared-options.interface.ts:35

Inherited from ​

AuditSharedOptions.logger

onAuditError? ​
ts
optional onAuditError?: (error, ctx) => void;

Defined in: src/interfaces/audit-shared-options.interface.ts:34

Parameters ​
ParameterType
errorunknown
ctxAuditErrorContext
Returns ​

void

Inherited from ​

AuditSharedOptions.onAuditError

prisma ​
ts
prisma: any;

Defined in: src/interfaces/audit-log-options.interface.ts:8

prismaModule? ​
ts
optional prismaModule?: PrismaModuleLike;

Defined in: src/interfaces/audit-log-options.interface.ts:17

registerGlobalInterceptor? ​
ts
optional registerGlobalInterceptor?: boolean;

Defined in: src/interfaces/audit-log-options.interface.ts:21

sensitiveFields? ​
ts
optional sensitiveFields?: string[];

Defined in: src/interfaces/audit-log-options.interface.ts:18

sensitiveFieldsByModel? ​
ts
optional sensitiveFieldsByModel?: Record<string, string[]>;

Defined in: src/interfaces/audit-log-options.interface.ts:19

tableName? ​
ts
optional tableName?: string;

Defined in: src/interfaces/audit-shared-options.interface.ts:29

Inherited from ​

AuditSharedOptions.tableName

tenantRequired? ​
ts
optional tenantRequired?: boolean;

Defined in: src/interfaces/audit-shared-options.interface.ts:32

Inherited from ​

AuditSharedOptions.tenantRequired

tenantResolver? ​
ts
optional tenantResolver?: () => string | null;

Defined in: src/interfaces/audit-shared-options.interface.ts:33

Returns ​

string | null

Inherited from ​

AuditSharedOptions.tenantResolver


AuditObjectStorageClient ​

Defined in: src/stream/provider-sinks.ts:105

Methods ​

putObject() ​
ts
putObject(input): Promise<void>;

Defined in: src/stream/provider-sinks.ts:106

Parameters ​
ParameterType
inputAuditObjectStoragePutInput
Returns ​

Promise<void>


AuditObjectStoragePutInput ​

Defined in: src/stream/provider-sinks.ts:97

Properties ​

body ​
ts
body: string;

Defined in: src/stream/provider-sinks.ts:99

contentType ​
ts
contentType: string;

Defined in: src/stream/provider-sinks.ts:100

ifNoneMatch ​
ts
ifNoneMatch: "*";

Defined in: src/stream/provider-sinks.ts:101

key ​
ts
key: string;

Defined in: src/stream/provider-sinks.ts:98

metadata ​
ts
metadata: Record<string, string>;

Defined in: src/stream/provider-sinks.ts:102


AuditPruneOptions ​

Defined in: src/services/audit.service.ts:26

Properties ​

client? ​
ts
optional client?: any;

Defined in: src/services/audit.service.ts:30

dryRun? ​
ts
optional dryRun?: boolean;

Defined in: src/services/audit.service.ts:29

maxWaitMs? ​
ts
optional maxWaitMs?: number;

Defined in: src/services/audit.service.ts:32

mode? ​
ts
optional mode?: "drop" | "detach";

Defined in: src/services/audit.service.ts:28

olderThan ​
ts
olderThan: Date;

Defined in: src/services/audit.service.ts:27

requiredCheckpoints? ​
ts
optional requiredCheckpoints?: readonly string[];

Defined in: src/services/audit.service.ts:37

Last ACKed checkpoints for every required stream. Pruning is rejected when it would pass any checkpoint and remove entries that stream has not ACKed.

timeoutMs? ​
ts
optional timeoutMs?: number;

Defined in: src/services/audit.service.ts:31


AuditPruneResult ​

Defined in: src/services/audit.service.ts:40

Properties ​

deletedRows ​
ts
deletedRows: number | null;

Defined in: src/services/audit.service.ts:44

dryRun ​
ts
dryRun: boolean;

Defined in: src/services/audit.service.ts:45

layout ​
ts
layout: "partitioned" | "flat";

Defined in: src/services/audit.service.ts:41

mode ​
ts
mode: "drop" | "detach" | "delete";

Defined in: src/services/audit.service.ts:42

prunedPartitions ​
ts
prunedPartitions: string[];

Defined in: src/services/audit.service.ts:43


AuditQueryOptions ​

Defined in: src/interfaces/audit-entry.interface.ts:17

Properties ​

action? ​
ts
optional action?: string;

Defined in: src/interfaces/audit-entry.interface.ts:20

actorId? ​
ts
optional actorId?: string;

Defined in: src/interfaces/audit-entry.interface.ts:18

actorType? ​
ts
optional actorType?: string;

Defined in: src/interfaces/audit-entry.interface.ts:19

allTenants? ​
ts
optional allTenants?: boolean;

Defined in: src/interfaces/audit-entry.interface.ts:30

cursor? ​
ts
optional cursor?: string;

Defined in: src/interfaces/audit-entry.interface.ts:31

from? ​
ts
optional from?: Date;

Defined in: src/interfaces/audit-entry.interface.ts:25

includeTotal? ​
ts
optional includeTotal?: boolean;

Defined in: src/interfaces/audit-entry.interface.ts:32

limit? ​
ts
optional limit?: number;

Defined in: src/interfaces/audit-entry.interface.ts:27

offset? ​
ts
optional offset?: number;

Defined in: src/interfaces/audit-entry.interface.ts:28

result? ​
ts
optional result?: "success" | "failure";

Defined in: src/interfaces/audit-entry.interface.ts:24

source? ​
ts
optional source?: "auto" | "manual";

Defined in: src/interfaces/audit-entry.interface.ts:23

targetId? ​
ts
optional targetId?: string;

Defined in: src/interfaces/audit-entry.interface.ts:22

targetType? ​
ts
optional targetType?: string;

Defined in: src/interfaces/audit-entry.interface.ts:21

tenantId? ​
ts
optional tenantId?: string;

Defined in: src/interfaces/audit-entry.interface.ts:29

to? ​
ts
optional to?: Date;

Defined in: src/interfaces/audit-entry.interface.ts:26


AuditQueryResult ​

Defined in: src/interfaces/audit-entry.interface.ts:35

Properties ​

entries ​
ts
entries: AuditEntry[];

Defined in: src/interfaces/audit-entry.interface.ts:36

hasMore ​
ts
hasMore: boolean;

Defined in: src/interfaces/audit-entry.interface.ts:39

nextCursor ​
ts
nextCursor: string | null;

Defined in: src/interfaces/audit-entry.interface.ts:38

total? ​
ts
optional total?: number;

Defined in: src/interfaces/audit-entry.interface.ts:37


AuditScanPage ​

Defined in: src/interfaces/audit-entry.interface.ts:64

Properties ​

checkpoint ​
ts
checkpoint: string | null;

Defined in: src/interfaces/audit-entry.interface.ts:66

entries ​
ts
entries: AuditEntry[];

Defined in: src/interfaces/audit-entry.interface.ts:65

highWatermark ​
ts
highWatermark: string;

Defined in: src/interfaces/audit-entry.interface.ts:67


AuditSharedOptions ​

Defined in: src/interfaces/audit-shared-options.interface.ts:28

Options shared by the Nest module and Prisma extension. Runtime merging is intentionally not performed; pass the same object to both call sites or use defineAuditConfig() when both paths should share behavior.

Extended by ​

Properties ​

actorRequired? ​
ts
optional actorRequired?: boolean;

Defined in: src/interfaces/audit-shared-options.interface.ts:31

Require a non-blank string actor ID for audit writes. Defaults to false.

logger? ​
ts
optional logger?: AuditLogger;

Defined in: src/interfaces/audit-shared-options.interface.ts:35

onAuditError? ​
ts
optional onAuditError?: (error, ctx) => void;

Defined in: src/interfaces/audit-shared-options.interface.ts:34

Parameters ​
ParameterType
errorunknown
ctxAuditErrorContext
Returns ​

void

tableName? ​
ts
optional tableName?: string;

Defined in: src/interfaces/audit-shared-options.interface.ts:29

tenantRequired? ​
ts
optional tenantRequired?: boolean;

Defined in: src/interfaces/audit-shared-options.interface.ts:32

tenantResolver? ​
ts
optional tenantResolver?: () => string | null;

Defined in: src/interfaces/audit-shared-options.interface.ts:33

Returns ​

string | null


AuditStreamBatchContext ​

Defined in: src/stream/audit-stream.ts:14

Properties ​

attempt ​
ts
attempt: number;

Defined in: src/stream/audit-stream.ts:19

batchId ​
ts
batchId: string;

Defined in: src/stream/audit-stream.ts:16

checkpoint ​
ts
checkpoint: string;

Defined in: src/stream/audit-stream.ts:17

highWatermark ​
ts
highWatermark: string;

Defined in: src/stream/audit-stream.ts:18

streamId ​
ts
streamId: string;

Defined in: src/stream/audit-stream.ts:15


AuditStreamCheckpointStore ​

Defined in: src/stream/audit-stream.ts:9

Methods ​

load() ​
ts
load(streamId): Promise<AuditStreamState | null>;

Defined in: src/stream/audit-stream.ts:10

Parameters ​
ParameterType
streamIdstring
Returns ​

Promise<AuditStreamState | null>

save() ​
ts
save(streamId, state): Promise<void>;

Defined in: src/stream/audit-stream.ts:11

Parameters ​
ParameterType
streamIdstring
stateAuditStreamState
Returns ​

Promise<void>


AuditStreamDeadLetter ​

Defined in: src/stream/audit-stream.ts:29

Properties ​

batchId ​
ts
batchId: string;

Defined in: src/stream/audit-stream.ts:31

checkpoint ​
ts
checkpoint: string;

Defined in: src/stream/audit-stream.ts:32

entries ​
ts
entries: readonly AuditEntry[];

Defined in: src/stream/audit-stream.ts:34

error ​
ts
error: AuditStreamDeliveryError;

Defined in: src/stream/audit-stream.ts:35

highWatermark ​
ts
highWatermark: string;

Defined in: src/stream/audit-stream.ts:33

streamId ​
ts
streamId: string;

Defined in: src/stream/audit-stream.ts:30


AuditStreamDeadLetterStore ​

Defined in: src/stream/audit-stream.ts:38

Methods ​

write() ​
ts
write(deadLetter): Promise<void>;

Defined in: src/stream/audit-stream.ts:39

Parameters ​
ParameterType
deadLetterAuditStreamDeadLetter
Returns ​

Promise<void>


AuditStreamErrorContext ​

Defined in: src/stream/audit-stream.ts:48

Properties ​

attempt ​
ts
attempt: number;

Defined in: src/stream/audit-stream.ts:52

batchId ​
ts
batchId: string;

Defined in: src/stream/audit-stream.ts:51

phase ​
ts
phase: "delivery";

Defined in: src/stream/audit-stream.ts:49

streamId ​
ts
streamId: string;

Defined in: src/stream/audit-stream.ts:50

terminal ​
ts
terminal: boolean;

Defined in: src/stream/audit-stream.ts:53


AuditStreamRunnerOptions ​

Defined in: src/stream/audit-stream.ts:56

Properties ​

checkpointStore ​
ts
checkpointStore: AuditStreamCheckpointStore;

Defined in: src/stream/audit-stream.ts:60

deadLetterStore? ​
ts
optional deadLetterStore?: AuditStreamDeadLetterStore;

Defined in: src/stream/audit-stream.ts:61

initialBackoffMs? ​
ts
optional initialBackoffMs?: number;

Defined in: src/stream/audit-stream.ts:63

maxBackoffMs? ​
ts
optional maxBackoffMs?: number;

Defined in: src/stream/audit-stream.ts:64

maxRetries? ​
ts
optional maxRetries?: number;

Defined in: src/stream/audit-stream.ts:62

onError? ​
ts
optional onError?: (error, context) => void;

Defined in: src/stream/audit-stream.ts:67

Parameters ​
ParameterType
errorunknown
contextAuditStreamErrorContext
Returns ​

void

onMetric? ​
ts
optional onMetric?: (metric) => void;

Defined in: src/stream/audit-stream.ts:66

Parameters ​
ParameterType
metricAuditStreamMetric
Returns ​

void

redact? ​
ts
optional redact?: (entry) => AuditEntry;

Defined in: src/stream/audit-stream.ts:65

Parameters ​
ParameterType
entryReadonly<AuditEntry>
Returns ​

AuditEntry

scan ​
ts
scan: Omit<AuditScanOptions, "after" | "until" | "signal">;

Defined in: src/stream/audit-stream.ts:58

sink ​
ts
sink: AuditStreamSink;

Defined in: src/stream/audit-stream.ts:59

sleep? ​
ts
optional sleep?: (delayMs, signal?) => Promise<void>;

Defined in: src/stream/audit-stream.ts:68

Parameters ​
ParameterType
delayMsnumber
signal?AbortSignal
Returns ​

Promise<void>

streamId ​
ts
streamId: string;

Defined in: src/stream/audit-stream.ts:57


AuditStreamRunResult ​

Defined in: src/stream/audit-stream.ts:71

Properties ​

batches ​
ts
batches: number;

Defined in: src/stream/audit-stream.ts:75

checkpoint ​
ts
checkpoint: string | null;

Defined in: src/stream/audit-stream.ts:76

deadLetteredEntries ​
ts
deadLetteredEntries: number;

Defined in: src/stream/audit-stream.ts:74

deliveredEntries ​
ts
deliveredEntries: number;

Defined in: src/stream/audit-stream.ts:73

status ​
ts
status: "delivered" | "idle";

Defined in: src/stream/audit-stream.ts:72


AuditStreamSink ​

Defined in: src/stream/audit-stream.ts:22

Methods ​

deliver() ​
ts
deliver(entries, context): Promise<void>;

Defined in: src/stream/audit-stream.ts:23

Parameters ​
ParameterType
entriesreadonly AuditEntry[]
contextAuditStreamBatchContext
Returns ​

Promise<void>


AuditStreamState ​

Defined in: src/stream/audit-stream.ts:4

Properties ​

checkpoint ​
ts
checkpoint: string | null;

Defined in: src/stream/audit-stream.ts:5

highWatermark ​
ts
highWatermark: string | null;

Defined in: src/stream/audit-stream.ts:6


AuditStreamStoreSQLOptions ​

Defined in: src/stream/postgres-store.ts:18

Properties ​

checkpointTable? ​
ts
optional checkpointTable?: string;

Defined in: src/stream/postgres-store.ts:19

deadLetterTable? ​
ts
optional deadLetterTable?: string;

Defined in: src/stream/postgres-store.ts:20


AuditTableSQLOptions ​

Defined in: src/sql/index.ts:3

Properties ​

enforcement? ​
ts
optional enforcement?: "trigger" | "rule";

Defined in: src/sql/index.ts:6

ginIndex? ​
ts
optional ginIndex?: boolean;

Defined in: src/sql/index.ts:7

partitioned? ​
ts
optional partitioned?: boolean;

Defined in: src/sql/index.ts:5

tableName? ​
ts
optional tableName?: string;

Defined in: src/sql/index.ts:4


AuditTransactionMethods ​

Defined in: src/prisma/audit-extension/audit-types.ts:26

Type Parameters ​

Type Parameter
TTransactionClient

Methods ​

withAuditLifecycle() ​
ts
withAuditLifecycle<TResult>(input, callback): Promise<TResult>;

Defined in: src/prisma/audit-extension/audit-types.ts:31

Type Parameters ​
Type Parameter
TResult
Parameters ​
ParameterType
inputAuditLifecycleInput
callback(tx) => Promise<TResult>
Returns ​

Promise<TResult>

withAuditTransaction() ​
ts
withAuditTransaction<TResult>(callback, options?): Promise<TResult>;

Defined in: src/prisma/audit-extension/audit-types.ts:27

Type Parameters ​
Type Parameter
TResult
Parameters ​
ParameterType
callback(tx) => Promise<TResult>
options?AuditTransactionOptions
Returns ​

Promise<TResult>


AuditTransactionOptions ​

Defined in: src/prisma/audit-extension/audit-types.ts:16

Properties ​

isolationLevel? ​
ts
optional isolationLevel?: "ReadUncommitted" | "ReadCommitted" | "RepeatableRead" | "Serializable";

Defined in: src/prisma/audit-extension/audit-types.ts:19

maxWait? ​
ts
optional maxWait?: number;

Defined in: src/prisma/audit-extension/audit-types.ts:17

timeout? ​
ts
optional timeout?: number;

Defined in: src/prisma/audit-extension/audit-types.ts:18


DatadogAuditStreamSinkOptions ​

Defined in: src/stream/provider-sinks.ts:9

Properties ​

apiKey ​
ts
apiKey: string;

Defined in: src/stream/provider-sinks.ts:11

fetch? ​
ts
optional fetch?: (input, init?) => Promise<Response>;

Defined in: src/stream/provider-sinks.ts:15

Parameters ​
ParameterType
inputstring | URL | Request
init?RequestInit
Returns ​

Promise<Response>

service? ​
ts
optional service?: string;

Defined in: src/stream/provider-sinks.ts:12

source? ​
ts
optional source?: string;

Defined in: src/stream/provider-sinks.ts:13

tags? ​
ts
optional tags?: string;

Defined in: src/stream/provider-sinks.ts:14

timeoutMs? ​
ts
optional timeoutMs?: number;

Defined in: src/stream/provider-sinks.ts:16

url ​
ts
url: string;

Defined in: src/stream/provider-sinks.ts:10


EnsurePartitionsOptions ​

Defined in: src/sql/index.ts:10

Properties ​

ahead? ​
ts
optional ahead?: number;

Defined in: src/sql/index.ts:12

tableName? ​
ts
optional tableName?: string;

Defined in: src/sql/index.ts:11


HttpAuditStreamSinkOptions ​

Defined in: src/stream/http-sink.ts:10

Properties ​

fetch? ​
ts
optional fetch?: (input, init?) => Promise<Response>;

Defined in: src/stream/http-sink.ts:14

Parameters ​
ParameterType
inputstring | URL | Request
init?RequestInit
Returns ​

Promise<Response>

format? ​
ts
optional format?: AuditHttpStreamFormat;

Defined in: src/stream/http-sink.ts:12

headers? ​
ts
optional headers?: Record<string, string>;

Defined in: src/stream/http-sink.ts:13

serialize? ​
ts
optional serialize?: (entries, context) => {
  body: string;
  contentType: string;
};

Defined in: src/stream/http-sink.ts:16

Parameters ​
ParameterType
entriesreadonly AuditEntry[]
contextAuditStreamBatchContext
Returns ​
ts
{
  body: string;
  contentType: string;
}
NameTypeDefined in
bodystringsrc/stream/http-sink.ts:19
contentTypestringsrc/stream/http-sink.ts:19

timeoutMs? ​
ts
optional timeoutMs?: number;

Defined in: src/stream/http-sink.ts:15

url ​
ts
url: string;

Defined in: src/stream/http-sink.ts:11


ManualAuditLogInput ​

Defined in: src/interfaces/audit-entry.interface.ts:77

Properties ​

action ​
ts
action: string;

Defined in: src/interfaces/audit-entry.interface.ts:78

metadata? ​
ts
optional metadata?: Record<string, unknown>;

Defined in: src/interfaces/audit-entry.interface.ts:81

result? ​
ts
optional result?: "success" | "failure";

Defined in: src/interfaces/audit-entry.interface.ts:82

targetId? ​
ts
optional targetId?: string;

Defined in: src/interfaces/audit-entry.interface.ts:79

targetType? ​
ts
optional targetType?: string;

Defined in: src/interfaces/audit-entry.interface.ts:80


ObjectStorageAuditStreamSinkOptions ​

Defined in: src/stream/provider-sinks.ts:109

Properties ​

client ​
ts
client: AuditObjectStorageClient;

Defined in: src/stream/provider-sinks.ts:110

isAlreadyExists? ​
ts
optional isAlreadyExists?: (error) => boolean;

Defined in: src/stream/provider-sinks.ts:112

Parameters ​
ParameterType
errorunknown
Returns ​

boolean

prefix? ​
ts
optional prefix?: string;

Defined in: src/stream/provider-sinks.ts:111


PostgresAuditStreamStoreOptions ​

Defined in: src/stream/postgres-store.ts:11

Properties ​

checkpointTable? ​
ts
optional checkpointTable?: string;

Defined in: src/stream/postgres-store.ts:14

deadLetterTable? ​
ts
optional deadLetterTable?: string;

Defined in: src/stream/postgres-store.ts:15

prisma ​
ts
prisma: any;

Defined in: src/stream/postgres-store.ts:12

prismaModule? ​
ts
optional prismaModule?: PrismaModuleLike;

Defined in: src/stream/postgres-store.ts:13


PrismaModuleLike ​

Defined in: src/prisma/prisma-namespace.ts:1

Properties ​

Prisma ​
ts
Prisma: {
  defineExtension: (extension) => any;
  dmmf?: {
     datamodel?: {
        models?: readonly {
           dbName?: string | null;
           fields?: readonly {
              dbName?: ...;
              isUpdatedAt?: ...;
              kind?: ...;
              name: ...;
              type?: ...;
           }[];
           kind?: string;
           name: string;
           schema?: string | null;
        }[];
     };
  };
  empty?: unknown;
  join?: (values, separator?, prefix?, suffix?) => unknown;
  raw?: (value) => unknown;
  sql?: (strings, ...values) => unknown;
};

Defined in: src/prisma/prisma-namespace.ts:2

defineExtension ​
ts
defineExtension: (extension) => any;
Parameters ​
ParameterType
extensionany
Returns ​

any

dmmf? ​
ts
optional dmmf?: {
  datamodel?: {
     models?: readonly {
        dbName?: string | null;
        fields?: readonly {
           dbName?: ...;
           isUpdatedAt?: ...;
           kind?: ...;
           name: ...;
           type?: ...;
        }[];
        kind?: string;
        name: string;
        schema?: string | null;
     }[];
  };
};
dmmf.datamodel? ​
ts
optional datamodel?: {
  models?: readonly {
     dbName?: string | null;
     fields?: readonly {
        dbName?: ...;
        isUpdatedAt?: ...;
        kind?: ...;
        name: ...;
        type?: ...;
     }[];
     kind?: string;
     name: string;
     schema?: string | null;
  }[];
};
dmmf.datamodel.models? ​
ts
optional models?: readonly {
  dbName?: string | null;
  fields?: readonly {
     dbName?: ...;
     isUpdatedAt?: ...;
     kind?: ...;
     name: ...;
     type?: ...;
  }[];
  kind?: string;
  name: string;
  schema?: string | null;
}[];
empty? ​
ts
optional empty?: unknown;
join? ​
ts
optional join?: (values, separator?, prefix?, suffix?) => unknown;
Parameters ​
ParameterType
valuesreadonly any[]
separator?string
prefix?string
suffix?string
Returns ​

unknown

raw? ​
ts
optional raw?: (value) => unknown;
Parameters ​
ParameterType
valuestring
Returns ​

unknown

sql? ​
ts
optional sql?: (strings, ...values) => unknown;
Parameters ​
ParameterType
stringsTemplateStringsArray | readonly string[]
...valuesany[]
Returns ​

unknown


SplunkAuditStreamSinkOptions ​

Defined in: src/stream/provider-sinks.ts:55

Properties ​

fetch? ​
ts
optional fetch?: (input, init?) => Promise<Response>;

Defined in: src/stream/provider-sinks.ts:62

Parameters ​
ParameterType
inputstring | URL | Request
init?RequestInit
Returns ​

Promise<Response>

host? ​
ts
optional host?: string;

Defined in: src/stream/provider-sinks.ts:61

index? ​
ts
optional index?: string;

Defined in: src/stream/provider-sinks.ts:58

source? ​
ts
optional source?: string;

Defined in: src/stream/provider-sinks.ts:59

sourcetype? ​
ts
optional sourcetype?: string;

Defined in: src/stream/provider-sinks.ts:60

timeoutMs? ​
ts
optional timeoutMs?: number;

Defined in: src/stream/provider-sinks.ts:63

token ​
ts
token: string;

Defined in: src/stream/provider-sinks.ts:57

url ​
ts
url: string;

Defined in: src/stream/provider-sinks.ts:56

Type Aliases ​

ActorExtractor ​

ts
type ActorExtractor = (req) =>
  | AuditActor
| Promise<AuditActor>;

Defined in: src/interfaces/actor.interface.ts:7

Parameters ​

ParameterType
reqany

Returns ​

| AuditActor | Promise<AuditActor>


AuditBatchOverflow ​

ts
type AuditBatchOverflow = "reject" | "summary";

Defined in: src/prisma/audit-extension/audit-types.ts:5


AuditConfigExtensionOptions ​

ts
type AuditConfigExtensionOptions = ExtensionSettings & Forbidden<keyof AuditConfigSharedOptions>;

Defined in: src/define-audit-config.ts:21


AuditConfigModuleOptions ​

ts
type AuditConfigModuleOptions = ModuleSettings & Forbidden<
  | keyof AuditConfigSharedOptions
| "prisma">;

Defined in: src/define-audit-config.ts:19


AuditConfigSchemaOptions ​

ts
type AuditConfigSchemaOptions = SchemaSettings & Forbidden<keyof AuditConfigSharedOptions>;

Defined in: src/define-audit-config.ts:23


AuditConfigSharedOptions ​

ts
type AuditConfigSharedOptions = AuditSharedOptions & Pick<AuditLogModuleOptions, "prismaModule" | "sensitiveFields" | "sensitiveFieldsByModel">;

Defined in: src/define-audit-config.ts:9

Settings applied to both manual and automatic audit paths.


AuditConsistency ​

ts
type AuditConsistency = "atomic-required" | "best-effort";

Defined in: src/prisma/audit-extension/audit-types.ts:4


AuditCsvColumnVersion ​

ts
type AuditCsvColumnVersion = "v1";

Defined in: src/interfaces/audit-entry.interface.ts:70


AuditCsvOptions ​

ts
type AuditCsvOptions = AuditScanOptions & {
  columns?: AuditCsvColumnVersion;
  includeBom?: boolean;
};

Defined in: src/interfaces/audit-entry.interface.ts:72

Type Declaration ​

NameTypeDefined in
columns?AuditCsvColumnVersionsrc/interfaces/audit-entry.interface.ts:73
includeBom?booleansrc/interfaces/audit-entry.interface.ts:74

AuditErrorPhase ​

ts
type AuditErrorPhase = "pre-read" | "insert" | "post-read" | "tenant-resolution" | "context";

Defined in: src/interfaces/audit-shared-options.interface.ts:7


AuditExportScope ​

ts
type AuditExportScope =
  | {
  allTenants?: never;
  tenantId: string;
}
  | {
  allTenants: true;
  tenantId?: never;
};

Defined in: src/interfaces/audit-entry.interface.ts:47


AuditHttpStreamFormat ​

ts
type AuditHttpStreamFormat = "json" | "ndjson";

Defined in: src/stream/http-sink.ts:8


AuditScanOptions ​

ts
type AuditScanOptions = AuditExportScope & {
  action?: string;
  actorId?: string;
  after?: string;
  batchSize?: number;
  from?: Date;
  signal?: AbortSignal;
  targetId?: string;
  targetType?: string;
  to?: Date;
  until?: string;
};

Defined in: src/interfaces/audit-entry.interface.ts:51

Type Declaration ​

NameTypeDefined in
action?stringsrc/interfaces/audit-entry.interface.ts:52
actorId?stringsrc/interfaces/audit-entry.interface.ts:53
after?stringsrc/interfaces/audit-entry.interface.ts:59
batchSize?numbersrc/interfaces/audit-entry.interface.ts:58
from?Datesrc/interfaces/audit-entry.interface.ts:56
signal?AbortSignalsrc/interfaces/audit-entry.interface.ts:61
targetId?stringsrc/interfaces/audit-entry.interface.ts:55
targetType?stringsrc/interfaces/audit-entry.interface.ts:54
to?Datesrc/interfaces/audit-entry.interface.ts:57
until?stringsrc/interfaces/audit-entry.interface.ts:60

AuditStreamMetric ​

ts
type AuditStreamMetric =
  | {
  attempt: number;
  entries: number;
  name: "batch_delivered";
  streamId: string;
}
  | {
  attempt: number;
  delayMs: number;
  entries: number;
  name: "batch_retried";
  streamId: string;
}
  | {
  entries: number;
  name: "batch_dead_lettered";
  streamId: string;
}
  | {
  name: "run_failed";
  streamId: string;
};

Defined in: src/stream/audit-stream.ts:42

Variables ​

AUDIT_ACTION_KEY ​

ts
const AUDIT_ACTION_KEY: "AUDIT_ACTION" = 'AUDIT_ACTION';

Defined in: src/decorators/audit-action.decorator.ts:3


AUDIT_CSV_COLUMNS_V1 ​

ts
const AUDIT_CSV_COLUMNS_V1: readonly ["schemaVersion", "id", "tenantId", "actorId", "actorType", "actorIp", "action", "targetType", "targetId", "source", "result", "changes", "metadata", "createdAt"];

Defined in: src/services/audit-csv.ts:3


AUDIT_LOG_OPTIONS ​

ts
const AUDIT_LOG_OPTIONS: typeof AUDIT_LOG_OPTIONS;

Defined in: src/audit-log.constants.ts:1


AUDIT_REASON_KEY ​

ts
const AUDIT_REASON_KEY: "AUDIT_REASON" = 'AUDIT_REASON';

Defined in: src/decorators/audit-reason.decorator.ts:3


NO_AUDIT_KEY ​

ts
const NO_AUDIT_KEY: "NO_AUDIT" = 'NO_AUDIT';

Defined in: src/decorators/no-audit.decorator.ts:3

Functions ​

applyAuditStreamStoreSchema() ​

ts
function applyAuditStreamStoreSchema(prisma, options?): Promise<void>;

Defined in: src/stream/postgres-store.ts:118

Parameters ​

ParameterType
prismaany
optionsAuditStreamStoreSQLOptions

Returns ​

Promise<void>


applyAuditTableSchema() ​

ts
function applyAuditTableSchema(prisma, options?): Promise<void>;

Defined in: src/sql/index.ts:251

Parameters ​

ParameterType
prismaany
optionsAuditTableSQLOptions

Returns ​

Promise<void>


AuditAction() ​

ts
function AuditAction(action): CustomDecorator<string>;

Defined in: src/decorators/audit-action.decorator.ts:4

Parameters ​

ParameterType
actionstring

Returns ​

CustomDecorator<string>


AuditReason() ​

ts
function AuditReason(reason): CustomDecorator<string>;

Defined in: src/decorators/audit-reason.decorator.ts:5

Parameters ​

ParameterType
reasonstring

Returns ​

CustomDecorator<string>


createAuditedClient() ​

ts
function createAuditedClient<TClient>(client, options): TClient & AuditTransactionMethods<TransactionClientOf<TClient>> & AuditCapabilityMethods;

Defined in: src/prisma/audit-extension.ts:232

Creates an audited Prisma client while preserving the base client and interactive transaction callback types.

Type Parameters ​

Type Parameter
TClient extends InteractiveTransactionHost

Parameters ​

ParameterType
clientTClient
optionsAuditExtensionOptions

Returns ​

TClient & AuditTransactionMethods<TransactionClientOf<TClient>> & AuditCapabilityMethods


createAuditExtension() ​

ts
function createAuditExtension(options): any;

Defined in: src/prisma/audit-extension.ts:80

Parameters ​

ParameterType
optionsAuditExtensionOptions

Returns ​

any


defineAuditConfig() ​

Build independent module, extension, DDL and partition options synchronously. Does not create clients, invoke callbacks, register Nest modules or perform I/O. Existing defaults are left to the consuming APIs.

Call Signature ​

ts
function defineAuditConfig(input): AuditConfig<AuditExtensionOptions>;

Defined in: src/define-audit-config.ts:95

Parameters ​
ParameterType
inputAuditConfigInput & { extension: AuditConfigExtensionOptions; }
Returns ​

AuditConfig<AuditExtensionOptions>

Call Signature ​

ts
function defineAuditConfig(input): AuditConfig<undefined>;

Defined in: src/define-audit-config.ts:96

Parameters ​
ParameterType
inputAuditConfigInput & { extension?: undefined; }
Returns ​

AuditConfig<undefined>

Call Signature ​

ts
function defineAuditConfig(input): AuditConfig;

Defined in: src/define-audit-config.ts:97

Parameters ​
ParameterType
inputAuditConfigInput
Returns ​

AuditConfig


ensurePartitions() ​

ts
function ensurePartitions(prisma, options?): Promise<string[]>;

Defined in: src/sql/index.ts:284

Parameters ​

ParameterType
prismaany
optionsEnsurePartitionsOptions

Returns ​

Promise<string[]>


getAuditStreamStoreStatements() ​

ts
function getAuditStreamStoreStatements(options?): string[];

Defined in: src/stream/postgres-store.ts:88

Parameters ​

ParameterType
optionsAuditStreamStoreSQLOptions

Returns ​

string[]


getAuditTableSQL() ​

ts
function getAuditTableSQL(options?): string;

Defined in: src/sql/index.ts:236

Parameters ​

ParameterType
optionsAuditTableSQLOptions

Returns ​

string


getAuditTableStatements() ​

ts
function getAuditTableStatements(options?): string[];

Defined in: src/sql/index.ts:217

Parameters ​

ParameterType
optionsAuditTableSQLOptions

Returns ​

string[]


mergeContextMetadata() ​

ts
function mergeContextMetadata(input?): Record<string, unknown> | undefined;

Defined in: src/services/audit-context.ts:63

Parameters ​

ParameterType
input?Record<string, unknown>

Returns ​

Record<string, unknown> | undefined


NoAudit() ​

ts
function NoAudit(): CustomDecorator<string>;

Defined in: src/decorators/no-audit.decorator.ts:4

Returns ​

CustomDecorator<string>

Released under the MIT License.