Optional 2dsphereOptional authdbOptional backgroundOptional bitsOptional bsonreturn BSON regular expressions as BSONRegExp instances.
false
Optional bucketOptional checkthe serializer will check if keys are valid.
false
Optional collationCollation
Optional commentComment to apply to the operation.
In server versions pre-4.4, 'comment' must be string. A server error will be thrown if any other type is provided.
In server versions 4.4 and above, 'comment' can be any valid BSON type.
Optional commit(MongoDB 4.4. or higher) Specifies how many data-bearing members of a replica set, including the primary, must complete the index builds successfully before the primary marks the indexes as ready. This option accepts the same values for the "w" field in a write concern plus "votingMembers", which indicates all voting data-bearing nodes.
Optional dbOptional default_Optional enableEnable utf8 validation when deserializing BSON documents. Defaults to true.
Optional expireAllows you to expire data on indexes applied to a data (MongoDB 2.2 or higher)
Optional expiresexpires utilizes the ms module from guille allowing us to use a friendlier syntax:
const schema = new Schema({ prop1: Date });
// expire in 24 hours
schema.index({ prop1: 1 }, { expires: 60*60*24 })
// expire in 24 hours
schema.index({ prop1: 1 }, { expires: '24h' })
// expire in 1.5 hours
schema.index({ prop1: 1 }, { expires: '1.5h' })
// expire in 7 days
schema.index({ prop1: 1 }, { expires: '7d' })
Optional explainSpecifies the verbosity mode for the explain output.
Optional fieldsallow to specify if there what fields we wish to return as unserialized raw buffer.
null
Optional hiddenSpecifies that the index should exist on the target collection but should not be used by the query planner when executing operations. (MongoDB 4.4 or higher)
Optional ignoreserialize will not emit undefined fields
note that the driver sets this to false
true
Optional language_Optional maxFor geospatial indexes set the high bound for the co-ordinates.
Optional maxOptional minFor geospatial indexes set the lower bound for the co-ordinates.
Optional nameOverride the autogenerated index name (useful if the resulting name is larger than 128 bytes)
Optional noOptional omitOptional partialCreates a partial index based on the given filter object (MongoDB 3.2 or higher)
Optional promotewhen deserializing a Binary will return it as a node.js Buffer instance.
false
Optional promotewhen deserializing a Long will fit it into a Number if it's smaller than 53 bits.
true
Optional promotewhen deserializing will promote BSON values to their Node.js closest equivalent types.
true
Optional rawEnabling the raw option will return a Node.js Buffer which is allocated using allocUnsafe API. See this section from the Node.js Docs here for more detail about what "unsafe" refers to in this context. If you need to maintain your own editable clone of the bytes returned for an extended life time of the process, it is recommended you allocate your own buffer and clone the contents:
const raw = await collection.findOne({}, { raw: true });
const myBuffer = Buffer.alloc(raw.byteLength);
myBuffer.set(raw, 0);
// Only save and use `myBuffer` beyond this point
Please note there is a known limitation where this option cannot be used at the MongoClient level (see NODE-3946).
It does correctly work at Db, Collection, and per operation the same as other BSON options work.
Optional readSpecify a read concern and level for the collection. (only MongoDB 3.2 or higher supported)
Optional readThe preferred read preference (ReadPreference.primary, ReadPreference.primary_preferred, ReadPreference.secondary, ReadPreference.secondary_preferred, ReadPreference.nearest).
Optional retryShould retry failed writes
Optional serializeserialize the javascript functions
false
Optional sessionSpecify ClientSession for this command
Optional sparseCreates a sparse index.
Optional storageAllows users to configure the storage engine on a per-index basis when creating an index. (MongoDB 3.0 or higher)
Optional textOptional uniqueCreates an unique index.
Optional usewhen deserializing a Long return as a BigInt.
false
Optional versionSpecifies the index version number, either 0 or 1.
Optional weightsOptional wildcardOptional willGenerated using TypeDoc
Creates the index in the background, yielding whenever possible.