UNPKG

@keyv/postgres

Version:

PostgreSQL storage adapter for Keyv

38 lines (34 loc) 1.33 kB
import EventEmitter from 'node:events'; import Keyv, { KeyvStoreAdapter, KeyvEntry } from 'keyv'; import { PoolConfig } from 'pg'; type KeyvPostgresOptions = { uri?: string; table?: string; keySize?: number; schema?: string; ssl?: any; dialect?: string; iterationLimit?: number; useUnloggedTable?: boolean; } & PoolConfig; type Query = (sqlString: string, values?: any) => Promise<any[]>; declare class KeyvPostgres extends EventEmitter implements KeyvStoreAdapter { ttlSupport: boolean; opts: KeyvPostgresOptions; query: Query; namespace?: string; constructor(options?: KeyvPostgresOptions | string); get(key: string): Promise<any>; getMany(keys: string[]): Promise<any[]>; set(key: string, value: any): Promise<void>; setMany(entries: KeyvEntry[]): Promise<void>; delete(key: string): Promise<boolean>; deleteMany(keys: string[]): Promise<boolean>; clear(): Promise<void>; iterator(namespace?: string): AsyncGenerator<any, void, any>; has(key: string): Promise<any>; connect(): Promise<(sql: string, values?: any) => Promise<any[]>>; disconnect(): Promise<void>; } declare const createKeyv: (options?: KeyvPostgresOptions) => Keyv<any>; export { KeyvPostgres, type KeyvPostgresOptions, createKeyv, KeyvPostgres as default };