From 37b5183be296979d5be5d00bc6d64509a481983b Mon Sep 17 00:00:00 2001 From: Stela Augustinova Date: Thu, 11 Dec 2025 15:02:32 +0100 Subject: [PATCH] Add ChangeSetRedis interfaces for Redis data types --- packages/datalib/src/ChangeSetRedis.ts | 55 ++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100644 packages/datalib/src/ChangeSetRedis.ts diff --git a/packages/datalib/src/ChangeSetRedis.ts b/packages/datalib/src/ChangeSetRedis.ts new file mode 100644 index 000000000..d1db265d2 --- /dev/null +++ b/packages/datalib/src/ChangeSetRedis.ts @@ -0,0 +1,55 @@ +export interface ChangeSetRedis_String { + key: string; + type: 'string'; + value: string; +} + +export interface ChangeSetRedis_JSON { + key: string; + type: 'json'; + value: string; +} + +export interface ChangeSetRedis_Hash { + key: string; + type: 'hash'; + inserts: { field: string; value: string, ttl: number }[]; + updates: { field: string; value: string, ttl: number }[]; + deletes: string[]; +} + +export interface ChangeSetRedis_List { + key: string; + type: 'list'; + inserts: { index: number; value: string }[]; + updates: { index: number; value: string }[]; + deletes: number[]; +} + +export interface ChangeSetRedis_Set { + key: string; + type: 'set'; + inserts: string[]; + deletes: string[]; +} + +export interface ChangeSetRedis_ZSet { + key: string; + type: 'zset'; + inserts: { member: string; score: number }[]; + updates: { member: string; score: number }[]; + deletes: string[]; +} + +export type ChangeSetRedisType = + | ChangeSetRedis_String + | ChangeSetRedis_JSON + | ChangeSetRedis_Hash + | ChangeSetRedis_List + | ChangeSetRedis_Set + | ChangeSetRedis_ZSet; + + +export interface ChangeSetRedis { + changes: ChangeSetRedisType[]; +}