Exclude Marks a field as excluded from the Database. 
IgnoreExtraProperties Properties that don't map to class fields are ignored when serializing to a class annotated with this annotation. 
PropertyName Marks a field to be renamed when serialized. 
ServerTimestamp Annotation used to mark a timestamp field to be populated with a server timestamp. 
ThrowOnExtraProperties Properties that don't map to class fields when serializing to a class annotated with this annotation cause an exception to be thrown. 


EventListener<T> An interface for event listeners. 
ListenerRegistration Represents a listener that can be removed by calling remove(). 
Transaction.Function<TResult> An interface for providing code to be executed within a transaction context. 


Blob Immutable class representing an array of bytes in Firestore. 
CollectionReference A CollectionReference can be used for adding documents, getting document references, and querying for documents (using the methods inherited from Query). 
DocumentChange A DocumentChange represents a change to the documents matching a query. 
DocumentReference A DocumentReference refers to a document location in a Firestore database and can be used to write, read, or listen to the location. 
DocumentSnapshot A DocumentSnapshot contains data read from a document in your Firestore database. 
FieldPath A FieldPath refers to a field in a document. 
FieldValue Sentinel values that can be used when writing document fields with set() or update(). 
FirebaseFirestore Represents a Firestore Database and is the entry point for all Firestore operations

Subclassing Note: Firestore classes are not meant to be subclassed except for use in test mocks. 

FirebaseFirestoreSettings Settings used to configure a FirebaseFirestore instance. 
FirebaseFirestoreSettings.Builder A Builder for creating FirebaseFirestoreSettings
GeoPoint Immutable class representing a GeoPoint in Firestore  
Query A Query which you can read or listen to. 
QueryDocumentSnapshot A QueryDocumentSnapshot contains data read from a document in your Firestore database as part of a query. 
QuerySnapshot A QuerySnapshot contains the results of a query. 
SetOptions An options object that configures the behavior of set() calls. 
SnapshotMetadata Metadata about a snapshot, describing the state of the snapshot. 
Transaction A Transaction is passed to a Function to provide the methods to read and write data within the transaction context. 
WriteBatch A write batch, used to perform multiple writes as a single atomic unit. 


DocumentChange.Type An enumeration of snapshot diff types. 
DocumentSnapshot.ServerTimestampBehavior Controls the return value for server timestamps that have not yet been set to their final value. 
FirebaseFirestoreException.Code The set of Firestore status codes. 
MetadataChanges Indicates whether metadata-only changes (i.e. 
Query.Direction An enum for the direction of a sort. 
Source Configures the behavior of get() calls on DocumentReference and Query


FirebaseFirestoreException A class of exceptions thrown by Firestore