JavaScript API

Client

class Client(options)

znsocket client for connecting to a znsocket server

The Client class provides an interface to connect to and communicate with a znsocket server using websockets. It supports Redis-like commands and provides automatic reconnection capabilities.

exported from client

Create a new znsocket client

Arguments:
  • options (ClientOptions) – Configuration options for the client

async Client.adapterGet(key, method, ...args)
Arguments:
  • key (string)

  • method (string)

  • args (any[])

Returns:

Promise<any>

async Client.checkAdapter(key)
Arguments:
  • key (string)

Returns:

Promise<boolean>

async Client.connect()

Connect to the znsocket server

Returns:

Promise<string> – A promise that resolves when connected

async Client.del(key)
Arguments:
  • key (string)

Returns:

Promise<any>

Client.disconnect()

Disconnect from the server

async Client.emit<T>(event, data)

Emit an event to the server

Type parameters:

T – (extends string)

Arguments:
  • event (T) – The event name

  • data (any) – The data to send

Returns:

Promise<any> – A promise that resolves with the server response

async Client.flushAll()
Returns:

Promise<any>

async Client.hDel(key, field)
Arguments:
  • key (string)

  • field (string)

Returns:

Promise<any>

async Client.hExists(key, field)
Arguments:
  • key (string)

  • field (string)

Returns:

Promise<boolean>

async Client.hGet(key, field)
Arguments:
  • key (string)

  • field (string)

Returns:

Promise<null | string>

async Client.hGetAll(key)
Arguments:
  • key (string)

Returns:

Promise<Record<string, string>>

async Client.hKeys(key)
Arguments:
  • key (string)

Returns:

Promise<string[]>

async Client.hLen(key)
Arguments:
  • key (string)

Returns:

Promise<number>

async Client.hMSet(key, mapping)
Arguments:
  • key (string)

  • mapping (Record<string, string>)

Returns:

Promise<any>

async Client.hSet(key, field, value)
Arguments:
  • key (string)

  • field (string)

  • value (string)

Returns:

Promise<any>

async Client.hVals(key)
Arguments:
  • key (string)

Returns:

Promise<string[]>

async Client.lIndex(key, index)
Arguments:
  • key (string)

  • index (number)

Returns:

Promise<null | string>

async Client.lLen(key)
Arguments:
  • key (string)

Returns:

Promise<number>

async Client.lPush(key, value)
Arguments:
  • key (string)

  • value (string)

Returns:

Promise<any>

async Client.lRange(key, start, end)
Arguments:
  • key (string)

  • start (number)

  • end (number)

Returns:

Promise<string[]>

async Client.lRem(key, count, value)
Arguments:
  • key (string)

  • count (number)

  • value (string)

Returns:

Promise<any>

async Client.lSet(key, index, value)
Arguments:
  • key (string)

  • index (number)

  • value (string)

Returns:

Promise<any>

Client.off<T>(event, callback)

Remove an event listener

Type parameters:

T – (extends string)

Arguments:
  • event (T) – The event name

  • callback ((args: any[]) => void) – The callback function to remove

Client.on<T>(event, callback)

Register an event listener

Type parameters:

T – (extends string)

Arguments:
  • event (T) – The event name

  • callback ((args: any[]) => void) – The callback function

async Client.rPush(key, value)
Arguments:
  • key (string)

  • value (string)

Returns:

Promise<any>

createClient(options)

Create a new znsocket client

Arguments:
  • options (ClientOptions) – Configuration options for the client

Returns:

Client – A new Client instance

List

class List(__namedParameters)

exported from list

Arguments:
  • __namedParameters (ListOptions)

List._key

type: readonly string

List.[Symbol․asyncIterator]()
Returns:

AsyncIterator<any>

List._refreshCallback(data)
Arguments:
  • data ({ data: any; target: string; })

async List.clear()
Returns:

Promise<any>

async List.get(index)
Arguments:
  • index (number)

Returns:

Promise<any>

async List.length()
Returns:

Promise<number>

List.offRefresh()
List.onRefresh(callback)
Arguments:
  • callback ((data: { indices?: number[]; start?: number; }) => void)

async List.push(value)
Arguments:
  • value (any)

Returns:

Promise<any>

async List.set(index, value)
Arguments:
  • index (number)

  • value (any)

Returns:

Promise<any>

async List.slice(start, end, step=1)
Arguments:
  • start (number)

  • end (number)

  • step (number)

Returns:

Promise<any[]>

async List.toObject()
Returns:

Promise<any[]>

Dict

class Dict(__namedParameters)

exported from dict

Arguments:
  • __namedParameters (DictOptions)

Dict._key

type: readonly string

Dict._refreshCallback(data)
Arguments:
  • data ({ data: any; target: string; })

async Dict.clear()
Returns:

Promise<any>

async Dict.entries()
Returns:

Promise<[string, any][]>

async Dict.get(key)
Arguments:
  • key (string)

Returns:

Promise<any>

async Dict.keys()
Returns:

Promise<string[]>

async Dict.length()
Returns:

Promise<number>

Dict.offRefresh()
Dict.onRefresh(callback)
Arguments:
  • callback ((data: { indices?: number[]; keys?: string[]; }) => void)

async Dict.set(key, value)
Arguments:
  • key (string)

  • value (any)

Returns:

Promise<any>

async Dict.toObject()
Returns:

Promise<Record<string, any>>

async Dict.update(dict)
Arguments:
  • dict (Record<string, any>)

Returns:

Promise<any>

async Dict.values()
Returns:

Promise<any[]>

Segments

class Segments(__namedParameters)

exported from segments

Arguments:
  • __namedParameters (SegmentsOptions)

Segments.[Symbol․asyncIterator]()
Returns:

AsyncIterator<any>

async Segments.get(index)
Arguments:
  • index (number)

Returns:

Promise<any>

async Segments.length()
Returns:

Promise<number>