redis-vl 0.1.0 → 0.2.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (72) hide show
  1. package/README.md +1 -1
  2. package/dist/index.d.ts +14 -13
  3. package/dist/index.d.ts.map +1 -1
  4. package/dist/index.js +7 -6
  5. package/dist/index.js.map +1 -1
  6. package/dist/indexes/search-index.d.ts +29 -4
  7. package/dist/indexes/search-index.d.ts.map +1 -1
  8. package/dist/indexes/search-index.js +43 -16
  9. package/dist/indexes/search-index.js.map +1 -1
  10. package/dist/query/{aggregation.d.ts → aggregate/aggregation.d.ts} +1 -1
  11. package/dist/query/aggregate/aggregation.d.ts.map +1 -0
  12. package/dist/query/{aggregation.js → aggregate/aggregation.js} +2 -2
  13. package/dist/query/aggregate/aggregation.js.map +1 -0
  14. package/dist/query/hybrid.d.ts +10 -4
  15. package/dist/query/hybrid.d.ts.map +1 -1
  16. package/dist/query/hybrid.js +14 -10
  17. package/dist/query/hybrid.js.map +1 -1
  18. package/dist/query/index.d.ts +7 -7
  19. package/dist/query/index.d.ts.map +1 -1
  20. package/dist/query/index.js +7 -7
  21. package/dist/query/index.js.map +1 -1
  22. package/dist/query/search/base.d.ts +166 -0
  23. package/dist/query/search/base.d.ts.map +1 -0
  24. package/dist/query/search/base.js +191 -0
  25. package/dist/query/search/base.js.map +1 -0
  26. package/dist/query/{count.d.ts → search/count.d.ts} +2 -6
  27. package/dist/query/search/count.d.ts.map +1 -0
  28. package/dist/query/{count.js → search/count.js} +3 -9
  29. package/dist/query/search/count.js.map +1 -0
  30. package/dist/query/{filter-query.d.ts → search/filter-query.d.ts} +3 -8
  31. package/dist/query/search/filter-query.d.ts.map +1 -0
  32. package/dist/query/{filter-query.js → search/filter-query.js} +10 -14
  33. package/dist/query/search/filter-query.js.map +1 -0
  34. package/dist/query/{range.d.ts → search/range.d.ts} +4 -16
  35. package/dist/query/search/range.d.ts.map +1 -0
  36. package/dist/query/{range.js → search/range.js} +8 -35
  37. package/dist/query/search/range.js.map +1 -0
  38. package/dist/query/{text.d.ts → search/text.d.ts} +5 -9
  39. package/dist/query/search/text.d.ts.map +1 -0
  40. package/dist/query/{text.js → search/text.js} +13 -14
  41. package/dist/query/search/text.js.map +1 -0
  42. package/dist/query/{vector.d.ts → search/vector.d.ts} +7 -33
  43. package/dist/query/search/vector.d.ts.map +1 -0
  44. package/dist/query/{vector.js → search/vector.js} +8 -37
  45. package/dist/query/search/vector.js.map +1 -0
  46. package/dist/redis/client-types.d.ts +1 -1
  47. package/dist/redis/client-types.js +1 -1
  48. package/dist/schema/schema.d.ts +2 -2
  49. package/dist/storage/base-storage.d.ts +0 -1
  50. package/dist/storage/base-storage.d.ts.map +1 -1
  51. package/dist/storage/base-storage.js.map +1 -1
  52. package/package.json +13 -13
  53. package/dist/query/aggregation.d.ts.map +0 -1
  54. package/dist/query/aggregation.js.map +0 -1
  55. package/dist/query/base.d.ts +0 -77
  56. package/dist/query/base.d.ts.map +0 -1
  57. package/dist/query/base.js +0 -14
  58. package/dist/query/base.js.map +0 -1
  59. package/dist/query/count.d.ts.map +0 -1
  60. package/dist/query/count.js.map +0 -1
  61. package/dist/query/filter-query.d.ts.map +0 -1
  62. package/dist/query/filter-query.js.map +0 -1
  63. package/dist/query/range.d.ts.map +0 -1
  64. package/dist/query/range.js.map +0 -1
  65. package/dist/query/text.d.ts.map +0 -1
  66. package/dist/query/text.js.map +0 -1
  67. package/dist/query/vector.d.ts.map +0 -1
  68. package/dist/query/vector.js.map +0 -1
  69. package/dist/redis/protocol.d.ts +0 -34
  70. package/dist/redis/protocol.d.ts.map +0 -1
  71. package/dist/redis/protocol.js +0 -47
  72. package/dist/redis/protocol.js.map +0 -1
@@ -1,7 +1,7 @@
1
- import { renderFilter } from './base.js';
2
- import { VectorDistanceMetric } from '../schema/types.js';
3
- import { QueryValidationError, SchemaValidationError } from '../errors.js';
4
- import { encodeVectorBuffer, normalizeVectorDataType } from '../redis/utils.js';
1
+ import { BaseVectorQuery, renderFilter, } from './base.js';
2
+ import { VectorDistanceMetric } from '../../schema/types.js';
3
+ import { QueryValidationError } from '../../errors.js';
4
+ import { encodeVectorBuffer } from '../../redis/utils.js';
5
5
  /**
6
6
  * Vector similarity search by distance threshold rather than top-K.
7
7
  *
@@ -22,27 +22,14 @@ import { encodeVectorBuffer, normalizeVectorDataType } from '../redis/utils.js';
22
22
  * const results = await index.search(q);
23
23
  * ```
24
24
  */
25
- export class VectorRangeQuery {
26
- vector;
27
- vectorField;
25
+ export class VectorRangeQuery extends BaseVectorQuery {
28
26
  distanceThreshold;
29
- filter;
30
- returnFields;
31
27
  distanceMetric;
32
- datatype;
33
- offset;
34
- limit;
35
28
  scoreAlias;
36
29
  hybridPolicy;
37
30
  batchSize;
38
- normalizeDistance;
39
31
  constructor(config) {
40
- if (!config.vector || config.vector.length === 0) {
41
- throw new QueryValidationError('Vector cannot be empty');
42
- }
43
- if (!config.vectorField) {
44
- throw new QueryValidationError('vectorField is required');
45
- }
32
+ super(config);
46
33
  if (config.distanceThreshold !== undefined && config.distanceThreshold < 0) {
47
34
  throw new QueryValidationError('distanceThreshold must be non-negative');
48
35
  }
@@ -59,27 +46,12 @@ export class VectorRangeQuery {
59
46
  throw new QueryValidationError('batchSize must be positive');
60
47
  }
61
48
  }
62
- this.vector = config.vector;
63
- this.vectorField = config.vectorField;
64
49
  this.distanceThreshold = config.distanceThreshold ?? 0.2;
65
- this.filter = config.filter;
66
- this.returnFields = config.returnFields;
67
50
  this.distanceMetric = config.distanceMetric ?? VectorDistanceMetric.COSINE;
68
- try {
69
- this.datatype = normalizeVectorDataType(config.datatype);
70
- }
71
- catch (error) {
72
- if (error instanceof SchemaValidationError) {
73
- throw new QueryValidationError(error.message);
74
- }
75
- throw error;
76
- }
77
- this.offset = config.offset;
78
- this.limit = config.limit;
79
51
  this.scoreAlias = config.scoreAlias ?? 'vector_distance';
80
52
  this.hybridPolicy = config.hybridPolicy;
81
53
  this.batchSize = config.batchSize;
82
- this.normalizeDistance = config.normalizeDistance ?? false;
54
+ this.sortBy(this.scoreAlias);
83
55
  }
84
56
  buildQuery() {
85
57
  const rangeClause = `@${this.vectorField}:[VECTOR_RANGE $distance_threshold $vector]=>{$yield_distance_as: ${this.scoreAlias}}`;
@@ -91,6 +63,7 @@ export class VectorRangeQuery {
91
63
  }
92
64
  buildParams() {
93
65
  const params = {
66
+ ...super.buildParams(),
94
67
  vector: encodeVectorBuffer(this.vector, this.datatype),
95
68
  distance_threshold: this.distanceThreshold,
96
69
  };
@@ -0,0 +1 @@
1
+ {"version":3,"file":"range.js","sourceRoot":"","sources":["../../../src/query/search/range.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { type BaseQuery, type FilterInput } from './base.js';
2
- import { type StopwordsInput } from '../utils/stopwords/resolve.js';
1
+ import { BaseQuery, type FilterInput } from './base.js';
2
+ import { type StopwordsInput } from '../../utils/stopwords/resolve.js';
3
3
  /**
4
4
  * A Redis Search built-in text scorer.
5
5
  * @see https://redis.io/docs/latest/develop/interact/search-and-query/advanced-concepts/scoring/
@@ -26,11 +26,11 @@ export interface TextQueryConfig {
26
26
  filter?: FilterInput;
27
27
  /** Fields to include in each result document. */
28
28
  returnFields?: string[];
29
- /** Number of results to return. Defaults to 10. */
29
+ /** Number of results to return. Default for `limit` (the `LIMIT` count). Defaults to 10. */
30
30
  numResults?: number;
31
31
  /** Pagination offset. */
32
32
  offset?: number;
33
- /** Pagination limit. Defaults to numResults. */
33
+ /** `LIMIT` count. Takes priority over `numResults`. */
34
34
  limit?: number;
35
35
  /**
36
36
  * Per-token weight map. Keys are individual words (no inner whitespace) and
@@ -96,7 +96,7 @@ export interface TextQueryConfig {
96
96
  * });
97
97
  * ```
98
98
  */
99
- export declare class TextQuery implements BaseQuery {
99
+ export declare class TextQuery extends BaseQuery {
100
100
  readonly text: string;
101
101
  /**
102
102
  * Per-field weights. Iteration follows insertion order, which determines
@@ -107,11 +107,7 @@ export declare class TextQuery implements BaseQuery {
107
107
  /** Per-token weights. Keys are normalised to lowercase, whitespace-trimmed single tokens. */
108
108
  readonly textWeights: Readonly<Record<string, number>>;
109
109
  readonly textScorer: TextScorer;
110
- readonly filter?: FilterInput;
111
- readonly returnFields?: string[];
112
110
  readonly numResults: number;
113
- readonly offset?: number;
114
- readonly limit?: number;
115
111
  readonly stopwords: ReadonlySet<string> | null;
116
112
  constructor(config: TextQueryConfig);
117
113
  buildQuery(): string;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text.d.ts","sourceRoot":"","sources":["../../../src/query/search/text.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAgB,KAAK,WAAW,EAAE,MAAM,WAAW,CAAC;AAGtE,OAAO,EAAoB,KAAK,cAAc,EAAE,MAAM,kCAAkC,CAAC;AAezF;;;GAGG;AACH,MAAM,MAAM,UAAU,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,GAAG,eAAe,GAAG,QAAQ,GAAG,UAAU,CAAC;AAEhG;;GAEG;AACH,MAAM,WAAW,eAAe;IAC5B,sIAAsI;IACtI,IAAI,EAAE,MAAM,CAAC;IAEb;;;;OAIG;IACH,aAAa,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAE/C;;;OAGG;IACH,UAAU,CAAC,EAAE,UAAU,CAAC;IAExB,wEAAwE;IACxE,MAAM,CAAC,EAAE,WAAW,CAAC;IAErB,iDAAiD;IACjD,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IAExB,4FAA4F;IAC5F,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,yBAAyB;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,uDAAuD;IACvD,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf;;;;;;;;;OASG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAErC;;;;;;;;;;OAUG;IACH,SAAS,CAAC,EAAE,cAAc,CAAC;CAC9B;AA+DD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAuCG;AACH,qBAAa,SAAU,SAAQ,SAAS;IACpC,SAAgB,IAAI,EAAE,MAAM,CAAC;IAC7B;;;;OAIG;IACH,SAAgB,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC/D,6FAA6F;IAC7F,SAAgB,WAAW,EAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IAC9D,SAAgB,UAAU,EAAE,UAAU,CAAC;IACvC,SAAgB,UAAU,EAAE,MAAM,CAAC;IACnC,SAAgB,SAAS,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,IAAI,CAAC;gBAE1C,MAAM,EAAE,eAAe;IAgBnC,UAAU,IAAI,MAAM;IAqCpB,WAAW,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAItC;;;;;OAKG;IACH,IAAI,aAAa,IAAI,MAAM,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAS7D;CACJ"}
@@ -1,7 +1,7 @@
1
- import { renderFilter } from './base.js';
2
- import { TokenEscaper } from '../utils/token-escaper.js';
3
- import { QueryValidationError } from '../errors.js';
4
- import { resolveStopwords } from '../utils/stopwords/resolve.js';
1
+ import { BaseQuery, renderFilter } from './base.js';
2
+ import { TokenEscaper } from '../../utils/token-escaper.js';
3
+ import { QueryValidationError } from '../../errors.js';
4
+ import { resolveStopwords } from '../../utils/stopwords/resolve.js';
5
5
  const escaper = new TokenEscaper();
6
6
  const STRIP_LEADING_TRAILING_COMMAS = /^,+|,+$/g;
7
7
  const TYPOGRAPHIC_QUOTES = /[“”]/g;
@@ -100,7 +100,7 @@ function parseTextWeights(weights) {
100
100
  * });
101
101
  * ```
102
102
  */
103
- export class TextQuery {
103
+ export class TextQuery extends BaseQuery {
104
104
  text;
105
105
  /**
106
106
  * Per-field weights. Iteration follows insertion order, which determines
@@ -111,22 +111,21 @@ export class TextQuery {
111
111
  /** Per-token weights. Keys are normalised to lowercase, whitespace-trimmed single tokens. */
112
112
  textWeights;
113
113
  textScorer;
114
- filter;
115
- returnFields;
116
114
  numResults;
117
- offset;
118
- limit;
119
115
  stopwords;
120
116
  constructor(config) {
117
+ const numResults = config.numResults ?? 10;
118
+ super({
119
+ filter: config.filter,
120
+ returnFields: config.returnFields,
121
+ offset: config.offset,
122
+ limit: config.limit ?? numResults,
123
+ });
121
124
  this.text = config.text;
122
125
  this.fieldWeights = parseFieldWeights(config.textFieldName);
123
126
  this.textWeights = parseTextWeights(config.textWeights);
124
127
  this.textScorer = config.textScorer ?? 'BM25STD';
125
- this.filter = config.filter;
126
- this.returnFields = config.returnFields;
127
- this.numResults = config.numResults ?? 10;
128
- this.offset = config.offset;
129
- this.limit = config.limit ?? this.numResults;
128
+ this.numResults = numResults;
130
129
  this.stopwords = resolveStopwords(config.stopwords);
131
130
  }
132
131
  buildQuery() {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"text.js","sourceRoot":"","sources":["../../../src/query/search/text.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { type BaseQuery, type FilterInput } from './base.js';
2
- import { VectorDataType, VectorDistanceMetric } from '../schema/types.js';
1
+ import { BaseVectorQuery, type BaseVectorQueryConfig } from './base.js';
2
+ import { VectorDistanceMetric } from '../../schema/types.js';
3
3
  /**
4
4
  * Hybrid policy options for vector search with filters
5
5
  */
@@ -11,32 +11,14 @@ export type UseSearchHistory = 'OFF' | 'ON' | 'AUTO';
11
11
  /**
12
12
  * Configuration for VectorQuery
13
13
  */
14
- export interface VectorQueryConfig {
15
- /** Vector to search with */
16
- vector: number[];
17
- /** Name of the vector field in the index */
18
- vectorField: string;
19
- /** Number of results to return */
20
- numResults?: number;
14
+ export interface VectorQueryConfig extends BaseVectorQueryConfig {
21
15
  /**
22
- * Filter expression — either a {@link FilterExpression} from the filter
23
- * DSL, or a raw Redis Search filter string (e.g. `'@category:{electronics}'`).
16
+ * Number of nearest neighbours to retrieve (the `KNN <k>` clause).
17
+ * Also the default for `limit`. Defaults to 10.
24
18
  */
25
- filter?: FilterInput;
26
- /** Fields to return in results */
27
- returnFields?: string[];
19
+ numResults?: number;
28
20
  /** Distance metric to use */
29
21
  distanceMetric?: VectorDistanceMetric;
30
- /**
31
- * Vector datatype to use when serializing the query vector.
32
- * Must match the datatype declared on the schema's vector field.
33
- * @default 'FLOAT32'
34
- */
35
- datatype?: VectorDataType | string;
36
- /** Pagination offset */
37
- offset?: number;
38
- /** Pagination limit */
39
- limit?: number;
40
22
  /**
41
23
  * Alias for the score field in results
42
24
  * @default 'vector_distance'
@@ -155,21 +137,13 @@ export interface VectorQueryConfig {
155
137
  * const results = await index.search(query);
156
138
  * ```
157
139
  */
158
- export declare class VectorQuery implements BaseQuery {
159
- readonly vector: number[];
160
- readonly vectorField: string;
140
+ export declare class VectorQuery extends BaseVectorQuery {
161
141
  readonly numResults: number;
162
- readonly filter?: FilterInput;
163
- readonly returnFields?: string[];
164
142
  readonly distanceMetric: VectorDistanceMetric;
165
- readonly datatype: VectorDataType;
166
- readonly offset?: number;
167
- readonly limit?: number;
168
143
  readonly scoreAlias: string;
169
144
  readonly efRuntime?: number;
170
145
  readonly hybridPolicy?: HybridPolicy;
171
146
  readonly batchSize?: number;
172
- readonly normalizeDistance: boolean;
173
147
  readonly searchWindowSize?: number;
174
148
  readonly useSearchHistory?: UseSearchHistory;
175
149
  readonly searchBufferCapacity?: number;
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vector.d.ts","sourceRoot":"","sources":["../../../src/query/search/vector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAgB,KAAK,qBAAqB,EAAE,MAAM,WAAW,CAAC;AACtF,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAI7D;;GAEG;AACH,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,UAAU,CAAC;AAElD;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,KAAK,GAAG,IAAI,GAAG,MAAM,CAAC;AAErD;;GAEG;AACH,MAAM,WAAW,iBAAkB,SAAQ,qBAAqB;IAC5D;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,6BAA6B;IAC7B,cAAc,CAAC,EAAE,oBAAoB,CAAC;IAEtC;;;OAGG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB;;;;OAIG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;;;OAKG;IACH,YAAY,CAAC,EAAE,YAAY,CAAC;IAE5B;;;;;OAKG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;;;;;;;;;;;;;;;OAgBG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAE5B;;;;;;;;;OASG;IACH,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAE1B;;;;;;;;;;;;;;OAcG;IACH,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IAEpC;;;;;;;;;;;;OAYG;IACH,oBAAoB,CAAC,EAAE,MAAM,CAAC;CACjC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,qBAAa,WAAY,SAAQ,eAAe;IAC5C,SAAgB,UAAU,EAAE,MAAM,CAAC;IACnC,SAAgB,cAAc,EAAE,oBAAoB,CAAC;IACrD,SAAgB,UAAU,EAAE,MAAM,CAAC;IACnC,SAAgB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnC,SAAgB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5C,SAAgB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnC,SAAgB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1C,SAAgB,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpD,SAAgB,oBAAoB,CAAC,EAAE,MAAM,CAAC;gBAElC,MAAM,EAAE,iBAAiB;IA4DrC;;;;;;;;OAQG;IACH,UAAU,IAAI,MAAM;IA6BpB;;;;;;;OAOG;IACH,WAAW,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;CAuBzC"}
@@ -1,7 +1,7 @@
1
- import { renderFilter } from './base.js';
2
- import { VectorDistanceMetric } from '../schema/types.js';
3
- import { QueryValidationError, SchemaValidationError } from '../errors.js';
4
- import { encodeVectorBuffer, normalizeVectorDataType } from '../redis/utils.js';
1
+ import { BaseVectorQuery, renderFilter } from './base.js';
2
+ import { VectorDistanceMetric } from '../../schema/types.js';
3
+ import { QueryValidationError } from '../../errors.js';
4
+ import { encodeVectorBuffer } from '../../redis/utils.js';
5
5
  /**
6
6
  * Vector similarity search query using KNN (K-Nearest Neighbors)
7
7
  *
@@ -35,33 +35,18 @@ import { encodeVectorBuffer, normalizeVectorDataType } from '../redis/utils.js';
35
35
  * const results = await index.search(query);
36
36
  * ```
37
37
  */
38
- export class VectorQuery {
39
- vector;
40
- vectorField;
38
+ export class VectorQuery extends BaseVectorQuery {
41
39
  numResults;
42
- filter;
43
- returnFields;
44
40
  distanceMetric;
45
- datatype;
46
- offset;
47
- limit;
48
41
  scoreAlias;
49
42
  efRuntime;
50
43
  hybridPolicy;
51
44
  batchSize;
52
- normalizeDistance;
53
45
  searchWindowSize;
54
46
  useSearchHistory;
55
47
  searchBufferCapacity;
56
48
  constructor(config) {
57
- // Validate vector
58
- if (!config.vector || config.vector.length === 0) {
59
- throw new QueryValidationError('Vector cannot be empty');
60
- }
61
- // Validate vectorField
62
- if (!config.vectorField) {
63
- throw new QueryValidationError('vectorField is required');
64
- }
49
+ super({ ...config, limit: config.limit ?? config.numResults ?? 10 });
65
50
  // Validate HNSW parameters
66
51
  if (config.efRuntime !== undefined && config.efRuntime <= 0) {
67
52
  throw new QueryValidationError('efRuntime must be positive');
@@ -98,31 +83,16 @@ export class VectorQuery {
98
83
  if (config.searchBufferCapacity !== undefined && config.searchBufferCapacity <= 0) {
99
84
  throw new QueryValidationError('searchBufferCapacity must be positive');
100
85
  }
101
- this.vector = config.vector;
102
- this.vectorField = config.vectorField;
103
86
  this.numResults = config.numResults ?? 10;
104
- this.filter = config.filter;
105
- this.returnFields = config.returnFields;
106
87
  this.distanceMetric = config.distanceMetric ?? VectorDistanceMetric.COSINE;
107
- try {
108
- this.datatype = normalizeVectorDataType(config.datatype);
109
- }
110
- catch (error) {
111
- if (error instanceof SchemaValidationError) {
112
- throw new QueryValidationError(error.message);
113
- }
114
- throw error;
115
- }
116
- this.offset = config.offset;
117
- this.limit = config.limit;
118
88
  this.scoreAlias = config.scoreAlias ?? 'vector_distance';
119
89
  this.efRuntime = config.efRuntime;
120
90
  this.hybridPolicy = config.hybridPolicy;
121
91
  this.batchSize = config.batchSize;
122
- this.normalizeDistance = config.normalizeDistance ?? false;
123
92
  this.searchWindowSize = config.searchWindowSize;
124
93
  this.useSearchHistory = config.useSearchHistory;
125
94
  this.searchBufferCapacity = config.searchBufferCapacity;
95
+ this.sortBy(this.scoreAlias);
126
96
  }
127
97
  /**
128
98
  * Build the Redis KNN query string
@@ -169,6 +139,7 @@ export class VectorQuery {
169
139
  buildParams() {
170
140
  const vectorBuffer = encodeVectorBuffer(this.vector, this.datatype);
171
141
  const params = {
142
+ ...super.buildParams(),
172
143
  vector: vectorBuffer,
173
144
  };
174
145
  // Add HNSW parameters if provided
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vector.js","sourceRoot":"","sources":["../../../src/query/search/vector.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,YAAY,EAA8B,MAAM,WAAW,CAAC;AACtF,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,iBAAiB,CAAC;AACvD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAsH1D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AACH,MAAM,OAAO,WAAY,SAAQ,eAAe;IAC5B,UAAU,CAAS;IACnB,cAAc,CAAuB;IACrC,UAAU,CAAS;IACnB,SAAS,CAAU;IACnB,YAAY,CAAgB;IAC5B,SAAS,CAAU;IACnB,gBAAgB,CAAU;IAC1B,gBAAgB,CAAoB;IACpC,oBAAoB,CAAU;IAE9C,YAAY,MAAyB;QACjC,KAAK,CAAC,EAAE,GAAG,MAAM,EAAE,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,UAAU,IAAI,EAAE,EAAE,CAAC,CAAC;QAErE,2BAA2B;QAC3B,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,IAAI,MAAM,CAAC,SAAS,IAAI,CAAC,EAAE,CAAC;YAC1D,MAAM,IAAI,oBAAoB,CAAC,4BAA4B,CAAC,CAAC;QACjE,CAAC;QAED,oCAAoC;QACpC,IAAI,MAAM,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YACpC,IAAI,MAAM,CAAC,YAAY,KAAK,SAAS,IAAI,MAAM,CAAC,YAAY,KAAK,UAAU,EAAE,CAAC;gBAC1E,MAAM,IAAI,oBAAoB,CAAC,iDAAiD,CAAC,CAAC;YACtF,CAAC;QACL,CAAC;QAED,IAAI,MAAM,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YACjC,IAAI,MAAM,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;gBACpC,MAAM,IAAI,oBAAoB,CAAC,8CAA8C,CAAC,CAAC;YACnF,CAAC;YACD,IAAI,MAAM,CAAC,SAAS,IAAI,CAAC,EAAE,CAAC;gBACxB,MAAM,IAAI,oBAAoB,CAAC,4BAA4B,CAAC,CAAC;YACjE,CAAC;QACL,CAAC;QAED,4CAA4C;QAC5C,IAAI,MAAM,CAAC,iBAAiB,IAAI,MAAM,CAAC,cAAc,KAAK,oBAAoB,CAAC,EAAE,EAAE,CAAC;YAChF,OAAO,CAAC,IAAI,CACR,yDAAyD;gBACrD,8EAA8E,CACrF,CAAC;QACN,CAAC;QAED,iCAAiC;QACjC,IAAI,MAAM,CAAC,gBAAgB,KAAK,SAAS,IAAI,MAAM,CAAC,gBAAgB,IAAI,CAAC,EAAE,CAAC;YACxE,MAAM,IAAI,oBAAoB,CAAC,mCAAmC,CAAC,CAAC;QACxE,CAAC;QAED,IAAI,MAAM,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;YACxC,MAAM,WAAW,GAAuB,CAAC,KAAK,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;YAC9D,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,MAAM,CAAC,gBAAgB,CAAC,EAAE,CAAC;gBACjD,MAAM,IAAI,oBAAoB,CAAC,gDAAgD,CAAC,CAAC;YACrF,CAAC;QACL,CAAC;QAED,IAAI,MAAM,CAAC,oBAAoB,KAAK,SAAS,IAAI,MAAM,CAAC,oBAAoB,IAAI,CAAC,EAAE,CAAC;YAChF,MAAM,IAAI,oBAAoB,CAAC,uCAAuC,CAAC,CAAC;QAC5E,CAAC;QAED,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,EAAE,CAAC;QAC1C,IAAI,CAAC,cAAc,GAAG,MAAM,CAAC,cAAc,IAAI,oBAAoB,CAAC,MAAM,CAAC;QAC3E,IAAI,CAAC,UAAU,GAAG,MAAM,CAAC,UAAU,IAAI,iBAAiB,CAAC;QACzD,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QAClC,IAAI,CAAC,YAAY,GAAG,MAAM,CAAC,YAAY,CAAC;QACxC,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC;QAClC,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC;QAChD,IAAI,CAAC,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC;QAChD,IAAI,CAAC,oBAAoB,GAAG,MAAM,CAAC,oBAAoB,CAAC;QACxD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACjC,CAAC;IAED;;;;;;;;OAQG;IACH,UAAU;QACN,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;QAC5C,MAAM,UAAU,GAAG,SAAS,KAAK,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,SAAS,GAAG,CAAC;QAE9D,0CAA0C;QAC1C,MAAM,KAAK,GAAa,CAAC,OAAO,IAAI,CAAC,UAAU,KAAK,IAAI,CAAC,WAAW,UAAU,CAAC,CAAC;QAEhF,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YAClC,KAAK,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;QACrD,CAAC;QACD,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,IAAI,IAAI,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YAClE,KAAK,CAAC,IAAI,CAAC,cAAc,IAAI,CAAC,SAAS,EAAE,CAAC,CAAC;QAC/C,CAAC;QACD,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YAC/B,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC;QACzC,CAAC;QACD,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;YACtC,KAAK,CAAC,IAAI,CAAC,wCAAwC,CAAC,CAAC;QACzD,CAAC;QACD,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;YACtC,KAAK,CAAC,IAAI,CAAC,sBAAsB,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC;QAC9D,CAAC;QACD,IAAI,IAAI,CAAC,oBAAoB,KAAK,SAAS,EAAE,CAAC;YAC1C,KAAK,CAAC,IAAI,CAAC,gDAAgD,CAAC,CAAC;QACjE,CAAC;QAED,OAAO,GAAG,UAAU,MAAM,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,CAAC,UAAU,GAAG,CAAC;IACvE,CAAC;IAED;;;;;;;OAOG;IACH,WAAW;QACP,MAAM,YAAY,GAAG,kBAAkB,CAAC,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC;QAEpE,MAAM,MAAM,GAA4B;YACpC,GAAG,KAAK,CAAC,WAAW,EAAE;YACtB,MAAM,EAAE,YAAY;SACvB,CAAC;QAEF,kCAAkC;QAClC,IAAI,IAAI,CAAC,SAAS,KAAK,SAAS,EAAE,CAAC;YAC/B,MAAM,CAAC,UAAU,GAAG,IAAI,CAAC,SAAS,CAAC;QACvC,CAAC;QAED,wCAAwC;QACxC,IAAI,IAAI,CAAC,gBAAgB,KAAK,SAAS,EAAE,CAAC;YACtC,MAAM,CAAC,kBAAkB,GAAG,IAAI,CAAC,gBAAgB,CAAC;QACtD,CAAC;QACD,IAAI,IAAI,CAAC,oBAAoB,KAAK,SAAS,EAAE,CAAC;YAC1C,MAAM,CAAC,sBAAsB,GAAG,IAAI,CAAC,oBAAoB,CAAC;QAC9D,CAAC;QAED,OAAO,MAAM,CAAC;IAClB,CAAC;CACJ"}
@@ -2,7 +2,7 @@
2
2
  * Redis Client Type Definitions
3
3
  *
4
4
  * The bare `RedisClientType` / `RedisClusterType` aliases re-exported from
5
- * the `redis` package default their `RESP` generic to `2`. When consumers
5
+ * the `redis` package default their `RESP` generic to `3`. When consumers
6
6
  * call `createClient(...)` without an explicit annotation, TypeScript
7
7
  * infers `RESP` as the full `RespVersions` union (`2 | 3`), making the
8
8
  * inferred client unassignable to APIs typed against the bare alias.
@@ -2,7 +2,7 @@
2
2
  * Redis Client Type Definitions
3
3
  *
4
4
  * The bare `RedisClientType` / `RedisClusterType` aliases re-exported from
5
- * the `redis` package default their `RESP` generic to `2`. When consumers
5
+ * the `redis` package default their `RESP` generic to `3`. When consumers
6
6
  * call `createClient(...)` without an explicit annotation, TypeScript
7
7
  * infers `RESP` as the full `RespVersions` union (`2 | 3`), making the
8
8
  * inferred client unassignable to APIs typed against the bare alias.
@@ -37,8 +37,8 @@ export declare class IndexInfo {
37
37
  * Zod schema for IndexSchema validation.
38
38
  */
39
39
  export declare const IndexSchemaOptionsSchema: z.ZodObject<{
40
- index: z.ZodCustom<IndexInfo, IndexInfo>;
41
- fields: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodCustom<BaseField, BaseField>>>;
40
+ index: z.ZodInstanceOf<IndexInfo>;
41
+ fields: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodInstanceOf<BaseField>>>;
42
42
  version: z.ZodOptional<z.ZodLiteral<"0.1.0">>;
43
43
  }, z.core.$strip>;
44
44
  /**
@@ -2,7 +2,6 @@ import type { RedisClientType, RedisClusterType } from 'redis';
2
2
  import type { IndexSchema } from '../schema/schema.js';
3
3
  /**
4
4
  * Redis client type (standalone or cluster) used internally by storage.
5
- * Matches the RESP=2 reply shapes this library is implemented against.
6
5
  */
7
6
  export type RedisClient = RedisClientType | RedisClusterType;
8
7
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"base-storage.d.ts","sourceRoot":"","sources":["../../src/storage/base-storage.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,gBAAgB,EAAE,MAAM,OAAO,CAAC;AAC/D,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAOvD;;;GAGG;AACH,MAAM,MAAM,WAAW,GAAG,eAAe,GAAG,gBAAgB,CAAC;AAE7D;;;GAGG;AACH,wBAAgB,YAAY,IAAI,MAAM,CAIrC;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IACzB;;OAEG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB;;OAEG;IACH,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC;IAEhB;;OAEG;IACH,GAAG,CAAC,EAAE,MAAM,CAAC;IAEb;;;OAGG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB;;OAEG;IACH,UAAU,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;IAEhF;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC5B;AAED;;;;GAIG;AACH,8BAAsB,WAAW;IAC7B,SAAS,CAAC,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC;IACvC,SAAS,CAAC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAO;gBAEtC,MAAM,EAAE,WAAW;IAI/B;;;OAGG;IACH,SAAS,CAAC,SAAS,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,YAAY,EAAE,MAAM,GAAG,MAAM;IAoBxF;;;;OAIG;IACH,SAAS,CAAC,oBAAoB,CAC1B,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5B,OAAO,EAAE,MAAM,GAAG,SAAS,EAC3B,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,EACzB,YAAY,EAAE,MAAM,GACrB,MAAM;IAeT;;OAEG;cACa,UAAU,CACtB,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAC5B,YAAY,CAAC,EAAE,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,GAClF,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAInC;;;OAGG;IACH,SAAS,CAAC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IAoBzE;;;OAGG;IACH,OAAO,CAAC,aAAa;IAiErB;;;OAGG;IACH,OAAO,CAAC,mBAAmB;IAsC3B;;;;;;;;;;;OAWG;cACa,8BAA8B,CAC1C,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAC/B,OAAO,EAAE,YAAY,GACtB,OAAO,CAAC,KAAK,CAAC;QAAE,GAAG,EAAE,MAAM,CAAC;QAAC,GAAG,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;KAAE,CAAC,CAAC;IAqChE;;OAEG;IACH,QAAQ,CAAC,KAAK,CACV,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAC/B,OAAO,CAAC,EAAE,YAAY,GACvB,OAAO,CAAC,MAAM,EAAE,CAAC;IAEpB;;OAEG;IACH,QAAQ,CAAC,GAAG,CACR,MAAM,EAAE,WAAW,EACnB,IAAI,EAAE,MAAM,EAAE,EACd,SAAS,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,IAAI,CAAC,EAAE,CAAC;CACjD"}
1
+ {"version":3,"file":"base-storage.d.ts","sourceRoot":"","sources":["../../src/storage/base-storage.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"base-storage.js","sourceRoot":"","sources":["../../src/storage/base-storage.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base-storage.js","sourceRoot":"","sources":["../../src/storage/base-storage.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "redis-vl",
3
- "version": "0.1.0",
3
+ "version": "0.2.2",
4
4
  "description": "The AI-native Redis TypeScript/Node.js client for vector operations",
5
5
  "main": "./dist/index.js",
6
6
  "types": "./dist/index.d.ts",
@@ -64,9 +64,9 @@
64
64
  "node": ">=22.0.0"
65
65
  },
66
66
  "dependencies": {
67
- "js-yaml": "^4.1.1",
68
- "redis": "^5.11.0",
69
- "zod": "^4.3.5"
67
+ "js-yaml": "^5.5.0",
68
+ "redis": "^6.3.0",
69
+ "zod": "^4.6.7"
70
70
  },
71
71
  "peerDependencies": {
72
72
  "@huggingface/transformers": "^3.0.0"
@@ -79,19 +79,19 @@
79
79
  "devDependencies": {
80
80
  "@huggingface/transformers": "^3.2.1",
81
81
  "@types/js-yaml": "^4.0.9",
82
- "@types/node": "^25.0.9",
83
- "@typescript-eslint/eslint-plugin": "^8.53.0",
84
- "@typescript-eslint/parser": "^8.53.0",
85
- "@vitest/coverage-v8": "^4.0.17",
86
- "eslint": "^9.39.2",
82
+ "@types/node": "^26.6.5",
83
+ "@typescript-eslint/eslint-plugin": "^8.72.0",
84
+ "@typescript-eslint/parser": "^8.72.0",
85
+ "@vitest/coverage-v8": "^5.0.5",
86
+ "eslint": "^9.39.5",
87
87
  "eslint-config-prettier": "^10.1.8",
88
88
  "husky": "^9.1.7",
89
89
  "lint-staged": "^16.2.7",
90
- "prettier": "^3.8.0",
91
- "testcontainers": "^11.14.0",
92
- "tsx": "^4.21.0",
90
+ "prettier": "^3.9.10",
91
+ "testcontainers": "^12.2.1",
92
+ "tsx": "^4.23.15",
93
93
  "typescript": "^5.9.3",
94
- "vitest": "^4.0.17"
94
+ "vitest": "^5.0.5"
95
95
  },
96
96
  "lint-staged": {
97
97
  "*.{ts,tsx}": [
@@ -1 +0,0 @@
1
- {"version":3,"file":"aggregation.d.ts","sourceRoot":"","sources":["../../src/query/aggregation.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"aggregation.js","sourceRoot":"","sources":["../../src/query/aggregation.ts"],"names":[],"mappings":"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"}
@@ -1,77 +0,0 @@
1
- /**
2
- * @module Query
3
- * Query builders for Redis search operations.
4
- */
5
- import type { FilterExpression } from './filter.js';
6
- /**
7
- * A filter clause supplied to a query — either a pre-built {@link FilterExpression}
8
- * or a raw Redis Search filter string (e.g. `'@category:{electronics}'`).
9
- */
10
- export type FilterInput = string | FilterExpression;
11
- /**
12
- * Render a {@link FilterInput} to its Redis Search string form, treating
13
- * `undefined` and the wildcard expression as "no filter" (`*`).
14
- */
15
- export declare function renderFilter(filter: FilterInput | undefined): string;
16
- /**
17
- * Base interface for all query types
18
- */
19
- export interface BaseQuery {
20
- /** Fields to return in results */
21
- returnFields?: string[];
22
- /** Number of results to return */
23
- limit?: number;
24
- /** Offset for pagination */
25
- offset?: number;
26
- /** When true, ask Redis to return only document ids/counts (FT.SEARCH NOCONTENT). */
27
- noContent?: boolean;
28
- /** Optional RediSearch scorer to apply when ranking text results. */
29
- textScorer?: string;
30
- /** Build the Redis query string */
31
- buildQuery(): string;
32
- /** Build the query parameters for Redis */
33
- buildParams(): Record<string, unknown>;
34
- }
35
- /**
36
- * Search result document with optional score
37
- */
38
- export interface SearchDocument<T = Record<string, unknown>> {
39
- /** Document fields */
40
- value: T;
41
- /** Relevance score (for vector search) */
42
- score?: number;
43
- /** Document ID */
44
- id: string;
45
- }
46
- /**
47
- * Search result structure
48
- */
49
- export interface SearchResult<T = Record<string, unknown>> {
50
- /** Total number of results */
51
- total: number;
52
- /** Retrieved documents */
53
- documents: SearchDocument<T>[];
54
- }
55
- /**
56
- * Result returned by {@link SearchIndex.hybridSearch}. Adds the FT.HYBRID
57
- * specific fields (`executionTime`, `warnings`) on top of the standard
58
- * {@link SearchResult} shape.
59
- */
60
- export interface HybridSearchResult<T = Record<string, unknown>> extends SearchResult<T> {
61
- /** Server-reported query execution time in milliseconds. */
62
- executionTime?: number;
63
- /** Warnings emitted by the server (e.g. truncated KNN, missing scorer). */
64
- warnings?: string[];
65
- }
66
- /**
67
- * Options for query execution
68
- */
69
- export interface QueryOptions {
70
- /** Redis DIALECT version (default: 2 for KNN) */
71
- dialect?: number;
72
- /** Sort by field */
73
- sortBy?: string;
74
- /** Sort order */
75
- sortOrder?: 'ASC' | 'DESC';
76
- }
77
- //# sourceMappingURL=base.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"base.d.ts","sourceRoot":"","sources":["../../src/query/base.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAEpD;;;GAGG;AACH,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,gBAAgB,CAAC;AAEpD;;;GAGG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,WAAW,GAAG,SAAS,GAAG,MAAM,CAGpE;AAED;;GAEG;AACH,MAAM,WAAW,SAAS;IACtB,kCAAkC;IAClC,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IAExB,kCAAkC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,4BAA4B;IAC5B,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,qFAAqF;IACrF,SAAS,CAAC,EAAE,OAAO,CAAC;IAEpB,qEAAqE;IACrE,UAAU,CAAC,EAAE,MAAM,CAAC;IAEpB,mCAAmC;IACnC,UAAU,IAAI,MAAM,CAAC;IAErB,2CAA2C;IAC3C,WAAW,IAAI,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;CAC1C;AAED;;GAEG;AACH,MAAM,WAAW,cAAc,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACvD,sBAAsB;IACtB,KAAK,EAAE,CAAC,CAAC;IAET,0CAA0C;IAC1C,KAAK,CAAC,EAAE,MAAM,CAAC;IAEf,kBAAkB;IAClB,EAAE,EAAE,MAAM,CAAC;CACd;AAED;;GAEG;AACH,MAAM,WAAW,YAAY,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC;IACrD,8BAA8B;IAC9B,KAAK,EAAE,MAAM,CAAC;IAEd,0BAA0B;IAC1B,SAAS,EAAE,cAAc,CAAC,CAAC,CAAC,EAAE,CAAC;CAClC;AAED;;;;GAIG;AACH,MAAM,WAAW,kBAAkB,CAAC,CAAC,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAE,SAAQ,YAAY,CAAC,CAAC,CAAC;IACpF,4DAA4D;IAC5D,aAAa,CAAC,EAAE,MAAM,CAAC;IAEvB,2EAA2E;IAC3E,QAAQ,CAAC,EAAE,MAAM,EAAE,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IACzB,iDAAiD;IACjD,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,oBAAoB;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,iBAAiB;IACjB,SAAS,CAAC,EAAE,KAAK,GAAG,MAAM,CAAC;CAC9B"}