import { CommandParser } from '@redis/client/dist/lib/client/parser'; import { RedisArgument, MapReply, BlobStringReply, ArrayReply, UnwrapReply, Command } from '@redis/client/dist/lib/RESP/types'; export default { NOT_KEYED_COMMAND: true, IS_READ_ONLY: true, parseCommand(parser: CommandParser, index: RedisArgument) { parser.push('FT.SYNDUMP', index); }, transformReply: { 2: (reply: UnwrapReply>>) => { const result: Record> = {}; let i = 0; while (i < reply.length) { const key = (reply[i++] as unknown as UnwrapReply).toString(), value = reply[i++] as unknown as ArrayReply; result[key] = value; } return result; }, 3: undefined as unknown as () => MapReply> } } as const satisfies Command;