# Constants
After specifies that findAndUpdate should return the document as it is after the update.
Before specifies that findAndUpdate should return the document as it was before the update.
NonTailable specifies that a cursor should close after retrieving the last data.
Tailable specifies that a cursor should not close when the last data is retrieved.
TailableAwait specifies that a cursor should not close when the last data is retrieved and that it should block for a certain amount of time for new data before returning no data.
# Structs
Collation allows users to specify language-specific rules for string comparison, such as rules for lettercase and accent marks.
OptCollation is for internal use.
OptHint is for internal use.
OptMax is for internal use.
OptMin is for internal use.
OptProjection is for internal use.
OptReadConcern is for internal use.
OptResumeAfter is for internal use.
OptSort is for internal use.
OptWriteConcern is for internal use.
# Interfaces
AggregateOptioner is the interface implemented by types that can be used as Options for an Aggregate command.
ChangeStreamOptioner is the interface implemented by types that can be used as Options for change stream operations.
CountOptioner is the interface implemented by types that can be used as Options for Count commands.
DeleteOptioner is the interface implemented by types that can be used as Options for Delete commands.
DistinctOptioner is the interface implemented by types that can be used as Options for Distinct commands.
FindOneAndDeleteOptioner is the interface implemented by types that can be used as Options for FindOneAndDelete commands.
FindOneAndReplaceOptioner is the interface implemented by types that can be used as Options for FindOneAndReplace commands.
FindOneAndUpdateOptioner is the interface implemented by types that can be used as Options for FindOneAndUpdate commands.
FindOneOptioner is the interface implemented by types that can be used as Options for FindOne operations.
FindOptioner is the interface implemented by types that can be used as Options for Find commands.
InsertManyOptioner is the interface implemented by types that can be used as Options for InsertMany commands.
InsertOneOptioner is the interface implemented by types that can be used as Options for InsertOne commands.
InsertOptioner is the interface implemented by types that can be used as Options for insert commands.
Optioner is the interface implemented by types that can be used as options to a command.
ReplaceOptioner is the interface implemented by types that can be used as Options for Update commands.
UpdateOptioner is the interface implemented by types that can be used as Options for Update commands.
# Type aliases
CursorType specifies whether a cursor should close when the last data is retrieved.
OptAllowDiskUse is for internal use.
OptAllowPartialResults is for internal use.
OptArrayFilters is for internal use.
OptBatchSize is for internal use.
OptBypassDocumentValidation is for internal use.
OptComment is for internal use.
OptCursorType is for internal use.
OptFullDocument is for internal use.
OptLimit is for internal use.
OptMaxAwaitTime is for internal use.
OptMaxScan is for internal use.
OptMaxTime is for internal use.
OptNoCursorTimeout is for internal use.
OptOplogReplay is for internal use.
OptOrdered is for internal use.
OptReturnDocument is for internal use.
OptReturnKey is for internal use.
OptShowRecordID is for internal use.
OptSkip is for internal use.
OptSnapshot is for internal use.
OptUpsert is for internal use.
ReturnDocument specifies whether a findAndUpdate operation should return the document as it was before the update or as it is after the update.