You've already forked node-redis
mirror of
https://github.com/redis/node-redis.git
synced 2025-08-06 02:15:48 +03:00
V5 bringing RESP3, Sentinel and TypeMapping to node-redis
RESP3 Support - Some commands responses in RESP3 aren't stable yet and therefore return an "untyped" ReplyUnion. Sentinel TypeMapping Correctly types Multi commands Note: some API changes to be further documented in v4-to-v5.md
This commit is contained in:
31
packages/client/lib/commands/GEORADIUS_STORE.ts
Normal file
31
packages/client/lib/commands/GEORADIUS_STORE.ts
Normal file
@@ -0,0 +1,31 @@
|
||||
import { RedisArgument, NumberReply, Command } from '../RESP/types';
|
||||
import GEORADIUS, { transformGeoRadiusArguments } from './GEORADIUS';
|
||||
import { GeoCoordinates, GeoSearchOptions, GeoUnits } from './GEOSEARCH';
|
||||
|
||||
export interface GeoRadiusStoreOptions extends GeoSearchOptions {
|
||||
STOREDIST?: boolean;
|
||||
}
|
||||
|
||||
export default {
|
||||
FIRST_KEY_INDEX: GEORADIUS.FIRST_KEY_INDEX,
|
||||
IS_READ_ONLY: GEORADIUS.IS_READ_ONLY,
|
||||
transformArguments(
|
||||
key: RedisArgument,
|
||||
from: GeoCoordinates,
|
||||
radius: number,
|
||||
unit: GeoUnits,
|
||||
destination: RedisArgument,
|
||||
options?: GeoRadiusStoreOptions
|
||||
) {
|
||||
const args = transformGeoRadiusArguments('GEORADIUS', key, from, radius, unit, options);
|
||||
|
||||
if (options?.STOREDIST) {
|
||||
args.push('STOREDIST', destination);
|
||||
} else {
|
||||
args.push('STORE', destination);
|
||||
}
|
||||
|
||||
return args;
|
||||
},
|
||||
transformReply: undefined as unknown as () => NumberReply
|
||||
} as const satisfies Command;
|
Reference in New Issue
Block a user