Skip to content

MemoryTossPaymentsPostgresOptions — @gj-kit/toss-payments-postgresql

A public interface from @gj-kit/toss-payments-postgresql/testing. The signature below is taken directly from the 0.5.1 release declaration.

import { MemoryTossPaymentsPostgresOptions } from '@gj-kit/toss-payments-postgresql/testing';
interface MemoryTossPaymentsPostgresOptions {
/**
* At-rest protector applied exactly where the PostgreSQL stores apply it (billing key record,
* deposit secret, cancel retry record — same purpose/recordId context). Defaults to
* `unsafePlaintextSensitiveValueProtector`, which is acceptable only because this aggregate
* is a test double that never touches a database. Pass the protector your production wiring
* uses (for example `createAes256GcmSensitiveValueProtector`) to exercise AAD binding end to end.
*/
readonly sensitiveValueProtector?: SensitiveValueProtector;
/** Validated like the PostgreSQL aggregate for configuration parity; state is per instance. */
readonly schema?: string;
readonly dedupe?: {
/** Crash-recovery lease of processing dedupe rows in seconds. Default 60. */
readonly leaseSeconds?: number;
/** Retention of completed dedupe rows in seconds, applied by `cleanup()`. Default 432_000 (5 days). */
readonly completedTtlSeconds?: number;
};
readonly retention?: {
/** Retention of cancel retry records in days, applied by `cleanup()`. Default 15. */
readonly cancelRetryDays?: number;
};
/**
* Clock in epoch milliseconds for dedupe leases and retention. Defaults to `Date.now`, so
* fake timers that patch `Date.now` work without configuration.
*/
readonly now?: () => number;
}

This declaration is the source of truth for parameters, optionality, generics, return values, and public union/type contracts. Check the package golden path and this subpath’s import conditions for required environment, permission, and error boundaries before calling it.

  • Package: @gj-kit/toss-payments-postgresql
  • Version: 0.5.1
  • Public entry: ./testing
  • Source: GitHub