import { AbstractIndexCreationTaskBase } from "./AbstractIndexCreationTaskBase.js"; import { FieldStorage, FieldIndexing, FieldTermVector } from "./Enums.js"; import { SpatialOptions, SpatialOptionsFactory } from "./Spatial.js"; import { IndexDefinition } from "./IndexDefinition.js"; import { AdditionalAssembly } from "./AdditionalAssembly.js"; import { FieldVectorOptions } from "../Queries/VectorSearch/VectorSearchOptions.js"; type FieldOrAllFields = TField | "__all_fields"; /** * Base class for creating indexes */ export declare abstract class AbstractGenericIndexCreationTask extends AbstractIndexCreationTaskBase { protected storesStrings: Record, FieldStorage>; protected indexesStrings: Record, FieldIndexing>; protected analyzersStrings: Record, string>; protected indexSuggestions: Set>; protected termVectorsStrings: Record, FieldTermVector>; protected spatialOptionsStrings: Record, SpatialOptions>; protected vectorOptionsStrings: Record, FieldVectorOptions>; protected outputReduceToCollection: string; protected patternForOutputReduceToCollectionReferences: string; protected patternReferencesCollectionName: string; constructor(); abstract get isMapReduce(): boolean; /** * Register a field to be indexed */ protected index(field: FieldOrAllFields, indexing: FieldIndexing): void; /** * Register a field to be spatially indexed */ protected spatial(field: FieldOrAllFields, indexing: (spatialOptsFactory: SpatialOptionsFactory) => SpatialOptions): void; protected storeAllFields(storage: FieldStorage): void; /** * Register a field to be stored */ protected store(field: TField, storage: FieldStorage): void; /** * Register a field to be analyzed */ protected analyze(field: FieldOrAllFields, analyzer: string): void; /** * Register a field to have term vectors */ protected termVector(field: FieldOrAllFields, termVector: FieldTermVector): void; protected suggestion(field: FieldOrAllFields): void; protected addAssembly(assembly: AdditionalAssembly): void; protected vectorField(field: FieldOrAllFields, vector: FieldVectorOptions): void; } export {}; //# sourceMappingURL=AbstractGenericIndexCreationTask.d.ts.map