UNPKG

mastercache

Version:

Multi-tier cache module for Node.js. Redis, Upstash, CloudfareKV, File, in-memory and others drivers

1 lines 1.58 kB
{"version":3,"sources":["../../../src/types/events.ts"],"sourcesContent":["import type { CacheHit } from '../events/cache/cache-hit';\nimport type { CacheMiss } from '../events/cache/cache-miss';\nimport type { CacheWritten } from '../events/cache/cache-written';\nimport type { CacheCleared } from '../events/cache/cache-cleared';\nimport type { CacheDeleted } from '../events/cache/cache-deleted';\nimport type { BusMessagePublished } from '../events/bus/bus-message-published';\n\n/**\n * Shape of the emitter accepted by MasterCache\n * Should be compatible with node's EventEmitter and Emittery\n */\nexport interface Emitter {\n on: (event: string, callback: (...values: any[]) => void) => void\n once: (event: string, callback: (...values: any[]) => void) => void\n off: (event: string, callback: (...values: any[]) => void) => void\n emit: (event: string, ...values: any[]) => void\n}\n\n/**\n * Name/payload of the events emitted by the cache emitter\n */\nexport type CacheEvents = {\n 'cache:cleared': ReturnType<CacheCleared['toJSON']>\n 'cache:deleted': ReturnType<CacheDeleted['toJSON']>\n 'cache:hit': ReturnType<CacheHit['toJSON']>\n 'cache:miss': ReturnType<CacheMiss['toJSON']>\n 'cache:written': ReturnType<CacheWritten['toJSON']>\n 'bus:message:published': ReturnType<BusMessagePublished['toJSON']>\n 'bus:message:received': ReturnType<BusMessagePublished['toJSON']>\n}\n\n/**\n * A cache event\n */\nexport interface CacheEvent {\n name: keyof CacheEvents\n toJSON: () => Record<string, any>\n}\n"],"mappings":";;;;;;;;;;;;;;;AAAA;AAAA;","names":[]}