@@ -54,7 +54,12 @@ export type AnalyzerInfo =
5454 | StemAnalyzerInfo
5555 | NormAnalyzerInfo
5656 | NgramAnalyzerInfo
57- | TextAnalyzerInfo ;
57+ | TextAnalyzerInfo
58+ | PipelineAnalyzer
59+ | AqlAnalyzer
60+ | GeoJsonAnalyzer
61+ | GeoPointAnalyzer
62+ | StopwordsAnalyzer ;
5863
5964/**
6065 * Analyzer type and type-specific properties for an Identity Analyzer.
@@ -219,6 +224,10 @@ export type TextAnalyzerProperties = {
219224 * Default: `true`
220225 */
221226 stemming ?: boolean ;
227+ /**
228+ * If present, then edge n-grams are generated for each token (word).
229+ */
230+ edgeNgram ?: { min ?: number ; max ?: number ; preserveOriginal ?: boolean } ;
222231} ;
223232
224233/**
@@ -235,6 +244,181 @@ export type TextAnalyzerInfo = {
235244 properties : TextAnalyzerProperties ;
236245} ;
237246
247+ /**
248+ * Properties of a Pipeline Analyzer.
249+ */
250+ export type PipelineAnalyzerProperties = {
251+ /**
252+ * Definitions for Analyzers to chain in this Pipeline Analyzer.
253+ */
254+ pipeline : AnalyzerInfo [ ] ;
255+ } ;
256+
257+ /**
258+ * Analyzer type and type-specific properties for a Pipeline Analyzer
259+ */
260+ export type PipelineAnalyzer = {
261+ /**
262+ * Type of the Analyzer.
263+ */
264+ type : "pipeline" ;
265+ /**
266+ * Additional properties for the Analyzer.
267+ */
268+ properties : PipelineAnalyzerProperties ;
269+ } ;
270+
271+ /**
272+ * Properties of an AQL Analyzer.
273+ */
274+ export type AqlAnalyzerProperties = {
275+ /**
276+ * AQL query to be executed.
277+ */
278+ queryString : string ;
279+ /**
280+ * If set to `true`, the position is set to `0` for all members of the query result array.
281+ *
282+ * Default: `false`
283+ */
284+ collapsePositions ?: boolean ;
285+ /**
286+ * If set to `false`, `null` values will be discarded from the View index.
287+ *
288+ * Default: `true`
289+ */
290+ keepNull ?: boolean ;
291+ /**
292+ * Number between `1` and `1000` that determines the batch size for reading
293+ * data from the query.
294+ *
295+ * Default: `1`
296+ */
297+ batchSize ?: number ;
298+ /**
299+ * Memory limit for query execution in bytes.
300+ *
301+ * Default: `1048576` (1 MiB)
302+ */
303+ memoryLimit ?: number ;
304+ /**
305+ * Data type of the returned tokens.
306+ *
307+ * Default: `"string"`
308+ */
309+ returnType ?: "string" | "number" | "bool" ;
310+ } ;
311+
312+ /**
313+ * Analyzer type and type-specific properties for an AQL Analyzer
314+ */
315+ export type AqlAnalyzer = {
316+ /**
317+ * Type of the Analyzer.
318+ */
319+ type : "aql" ;
320+ /**
321+ * Additional properties for the Analyzer.
322+ */
323+ properties : AqlAnalyzerProperties ;
324+ } ;
325+
326+ /**
327+ * Properties of a GeoJSON Analyzer.
328+ */
329+ export type GeoJsonAnalyzerProperties = {
330+ /**
331+ * If set to `"centroid"`, only the centroid of the input geometry will be
332+ * computed and indexed.
333+ *
334+ * If set to `"point"` only GeoJSON objects of type Point will be indexed and
335+ * all other geometry types will be ignored.
336+ *
337+ * Default: `"shape"`
338+ */
339+ type ?: "shape" | "centroid" | "point" ;
340+ /**
341+ * Options for fine-tuning geo queries.
342+ *
343+ * Default: `{ maxCells: 20, minLevel: 4, maxLevel: 23 }`
344+ */
345+ options ?: { maxCells ?: number ; minLevel ?: number ; maxLevel ?: number } ;
346+ } ;
347+
348+ /**
349+ * Analyzer type and type-specific properties for a GeoJSON Analyzer
350+ */
351+ export type GeoJsonAnalyzer = {
352+ /**
353+ * Type of the Analyzer.
354+ */
355+ type : "geojson" ;
356+ /**
357+ * Additional properties for the Analyzer.
358+ */
359+ properties : GeoJsonAnalyzerProperties ;
360+ } ;
361+
362+ /**
363+ * Properties of a GeoPoint Analyzer.
364+ */
365+ export type GeoPointAnalyzerProperties = {
366+ /**
367+ * Attribute paths of the latitude value relative to the field for which the
368+ * Analyzer is defined in the View.
369+ */
370+ latitude ?: string [ ] ;
371+ /**
372+ * Attribute paths of the longitude value relative to the field for which the
373+ * Analyzer is defined in the View.
374+ */
375+ longitude ?: string [ ] ;
376+ /**
377+ * Options for fine-tuning geo queries.
378+ *
379+ * Default: `{ maxCells: 20, minLevel: 4, maxLevel: 23 }`
380+ */
381+ options ?: { minCells ?: number ; minLevel ?: number ; maxLevel ?: number } ;
382+ } ;
383+
384+ /**
385+ * Analyzer type and type-specific properties for a GeoPoint Analyzer
386+ */
387+ export type GeoPointAnalyzer = {
388+ /**
389+ * Type of the Analyzer.
390+ */
391+ type : "geopoint" ;
392+ /**
393+ * Additional properties for the Analyzer.
394+ */
395+ properties : GeoPointAnalyzerProperties ;
396+ } ;
397+
398+ /**
399+ * Properties of a Stopwords Analyzer.
400+ */
401+ export type StopwordsAnalyzerProperties = {
402+ /**
403+ * Hex-encoded strings that describe the tokens to be discarded.
404+ */
405+ stopwords : string [ ] ;
406+ } ;
407+
408+ /**
409+ * Analyzer type and type-specific properties for a Stopwords Analyzer
410+ */
411+ export type StopwordsAnalyzer = {
412+ /**
413+ * Type of the Analyzer.
414+ */
415+ type : "stopwords" ;
416+ /**
417+ * Additional properties for the Analyzer.
418+ */
419+ properties : StopwordsAnalyzerProperties ;
420+ } ;
421+
238422/**
239423 * Represents an Analyzer in a {@link Database}.
240424 */
0 commit comments