import { CommandParser } from '@redis/client/dist/lib/client/parser'; import { RedisArgument, Command } from '@redis/client/dist/lib/RESP/types'; import { transformDoubleArrayReply } from '@redis/client/dist/lib/commands/generic-transformers'; export function transformByRankArguments( parser: CommandParser, key: RedisArgument, ranks: Array ) { parser.pushKey(key); for (const rank of ranks) { parser.push(rank.toString()); } } export default { IS_READ_ONLY: true, parseCommand(...args: Parameters) { args[0].push('TDIGEST.BYRANK'); transformByRankArguments(...args); }, transformReply: transformDoubleArrayReply } as const satisfies Command;