UNPKG

@hotmeshio/hotmesh

Version:

Serverless Workflow

169 lines (168 loc) 7.49 kB
import { KeyStoreParams } from '../../../../types/hotmesh'; import { PostgresClientType } from '../../../../types/postgres'; import { ProviderTransaction } from '../../../../types/provider'; import { stringModule } from './kvtypes/string'; import { hashModule } from './kvtypes/hash'; import { listModule } from './kvtypes/list'; import { zsetModule } from './kvtypes/zset'; /** * KVSQL is a class that provides a set of methods to interact with a Postgres database. * It is used to interact with the database in a key-value manner. */ export declare class KVSQL { pgClient: PostgresClientType; namespace: string; appId: string; string: ReturnType<typeof stringModule>; hash: ReturnType<typeof hashModule>; list: ReturnType<typeof listModule>; zset: ReturnType<typeof zsetModule>; constructor(pgClient: PostgresClientType, namespace: string, appId: string); isStatusOnly(fields: string[]): boolean; appendExpiryClause(baseQuery: string, tableAlias: string): string; appendJobExpiryClause(baseQuery: string, tableAlias: string): string; getMulti(): ProviderTransaction; transact(): ProviderTransaction; exec(...args: any[]): Promise<Array<any>>; mintKey(type: KeyType, params: KeyStoreParams): string; /** * Resolves the table name when provided a key */ tableForKey(key: string, stats_type?: 'hash' | 'sorted_set' | 'list'): string; safeName(input: string, prefix?: string): string; set: (key: string, value: string, options?: import("../../../../types/provider").SetOptions, multi?: ProviderTransaction) => Promise<boolean>; _set: (key: string, value: string, options?: import("../../../../types/provider").SetOptions) => { sql: string; params: any[]; }; get: (key: string, multi?: ProviderTransaction) => Promise<string>; _get: (key: string) => { sql: string; params: any[]; }; del: (key: string, multi?: ProviderTransaction) => Promise<number>; _del: (key: string) => { sql: string; params: any[]; }; setnx: (key: string, value: string, multi?: ProviderTransaction) => Promise<boolean>; setnxex: (key: string, value: string, delay: number, multi?: ProviderTransaction) => Promise<boolean>; hset: (key: string, fields: Record<string, string>, options?: import("../../../../types/provider").HSetOptions, multi?: ProviderTransaction) => Promise<number>; _hset: (key: string, fields: Record<string, string>, options?: import("../../../../types/provider").HSetOptions) => { sql: string; params: any[]; }; hsetnx: (key: string, field: string, value: string, multi?: ProviderTransaction) => Promise<number>; hget: (key: string, field: string, multi?: ProviderTransaction) => Promise<string>; _hget: (key: string, field: string) => { sql: string; params: any[]; }; hdel: (key: string, fields: string[], multi?: unknown) => Promise<number>; _hdel: (key: string, fields: string[]) => { sql: string; params: any[]; }; hmget: (key: string, fields: string[], multi?: ProviderTransaction) => Promise<string[]>; _hmget: (key: string, fields: string[]) => { sql: string; params: any[]; }; hgetall: (key: string, multi?: ProviderTransaction) => Promise<Record<string, string>>; hincrbyfloat: (key: string, field: string, increment: number, multi?: ProviderTransaction) => Promise<number>; _hincrbyfloat: (key: string, field: string, increment: number) => { sql: string; params: any[]; }; hscan: (key: string, cursor: string, count?: number, pattern?: string, multi?: ProviderTransaction) => Promise<import("../../../../types/provider").HScanResult>; _hscan: (key: string, cursor: string, count: number, pattern?: string) => { sql: string; params: any[]; }; expire: (key: string, seconds: number, multi?: ProviderTransaction) => Promise<boolean>; _expire: (key: string, seconds: number) => { sql: string; params: any[]; }; scan: (cursor: number, count?: number, pattern?: string, multi?: ProviderTransaction) => Promise<{ cursor: number; keys: string[]; }>; _scan: (cursor: number, count: number, pattern?: string) => { sql: string; params: any[]; }; lrange: (key: string, start: number, end: number, multi?: ProviderTransaction) => Promise<string[]>; _lrange: (key: string, start: number, end: number) => { sql: string; params: any[]; }; rpush: (key: string, value: string | string[], multi?: ProviderTransaction) => Promise<number>; _rpush: (key: string, value: string | string[]) => { sql: string; params: any[]; }; lpush: (key: string, value: string | string[], multi?: ProviderTransaction) => Promise<number>; _lpush: (key: string, value: string | string[]) => { sql: string; params: any[]; }; lpop: (key: string, multi?: ProviderTransaction) => Promise<string>; _lpop: (key: string) => { sql: string; params: any[]; }; lmove: (source: string, destination: string, srcPosition: "LEFT" | "RIGHT", destPosition: "LEFT" | "RIGHT", multi?: ProviderTransaction) => Promise<string>; _lmove: (source: string, destination: string, srcPosition: "LEFT" | "RIGHT", destPosition: "LEFT" | "RIGHT") => { sql: string; params: any[]; }; rename: (oldKey: string, newKey: string, multi?: ProviderTransaction) => Promise<void>; _rename: (oldKey: string, newKey: string) => { sql: string; params: any[]; }; zadd: (key: string, score: number, member: string, options?: import("../../../../types/provider").ZAddOptions, multi?: ProviderTransaction) => Promise<number>; _zadd: (key: string, score: number, member: string, options?: import("../../../../types/provider").ZAddOptions) => { sql: string; params: any[]; }; zrange: (key: string, start: number, stop: number, facet?: "WITHSCORES", multi?: ProviderTransaction) => Promise<string[]>; _zrange: (key: string, start: number, stop: number, facet?: "WITHSCORES") => { sql: string; params: any[]; }; zrangebyscore: (key: string, min: number, max: number, multi?: ProviderTransaction) => Promise<string[]>; _zrangebyscore: (key: string, min: number, max: number) => { sql: string; params: any[]; }; zrangebyscore_withscores: (key: string, min: number, max: number, multi?: ProviderTransaction) => Promise<{ member: string; score: number; }[]>; _zrangebyscore_withscores: (key: string, min: number, max: number) => { sql: string; params: any[]; }; zrem: (key: string, member: string, multi?: ProviderTransaction) => Promise<number>; _zrem: (key: string, member: string) => { sql: string; params: any[]; }; zrank: (key: string, member: string, multi?: ProviderTransaction) => Promise<number>; _zrank: (key: string, member: string) => { sql: string; params: any[]; }; zscore: (key: string, member: string, multi?: ProviderTransaction) => Promise<number>; _zscore: (key: string, member: string) => { sql: string; params: any[]; }; exists(key: string): Promise<string | 0>; _exists(key: string): { sql: string; params: any[]; }; }