FIRDataSnapshot
@interface FIRDataSnapshot : NSObjectA DataSnapshot contains data from a Firebase Database location. Any time you read Firebase data, you receive the data as a DataSnapshot.
DataSnapshots are passed to the blocks you attach with
 observe(_:with:) or observeSingleEvent(of:with:). They are
 efficiently-generated immutable copies of the data at a Firebase Database
 location. They can’t be modified and will never change. To modify data at a
 location, use a DatabaseReference (e.g. with setValue(_:)).
- 
                  
                  Gets a DataSnapshot for the location at the specified relative path. The relative path can either be a simple child key (e.g. ‘fred’) or a deeper slash-separated path (e.g. ‘fred/name/first’). If the child location has no data, an empty DataSnapshot is returned. DeclarationObjective-C - (nonnull FIRDataSnapshot *)childSnapshotForPath: (nonnull NSString *)childPathString;ParameterschildPathStringA relative path to the location of child data. Return ValueThe DataSnapshot for the child location. 
- 
                  
                  Return true if the specified child exists. DeclarationObjective-C - (BOOL)hasChild:(nonnull NSString *)childPathString;ParameterschildPathStringA relative path to the location of a potential child. Return Valuetrue if data exists at the specified childPathString, else false. 
- 
                  
                  Return true if the DataSnapshot has any children. DeclarationObjective-C - (BOOL)hasChildren;Return Valuetrue if this snapshot has any children, else false. 
- 
                  
                  Return true if the DataSnapshot contains a non-null value. DeclarationObjective-C - (BOOL)exists;Return Valuetrue if this snapshot contains a non-null value, else false. 
- 
                  
                  Returns the raw value at this location, coupled with any metadata, such as priority. Priorities, where they exist, are accessible under the “.priority” key in instances of NSDictionary. For leaf locations with priorities, the value will be under the “.value” key. DeclarationObjective-C - (id _Nullable)valueInExportFormat;
- 
                  
                  Returns the contents of this data snapshot as native types. Data types returned: - Dictionary
- Array
- NSNumber-bridgeable types, including- Bool
- String
 DeclarationObjective-C @property (nonatomic, strong, readonly, nullable) id value;Return ValueThe data as a native object. 
- 
                  
                  Gets the number of children for this DataSnapshot. DeclarationObjective-C @property (nonatomic, readonly) NSUInteger childrenCount;Return ValueAn integer indicating the number of children. 
- 
                  
                  Gets a DatabaseReference for the location that this data came from. DeclarationObjective-C @property (nonatomic, strong, readonly) FIRDatabaseReference *_Nonnull ref;Return ValueA DatabaseReference instance for the location of this data. 
- 
                  
                  The key of the location that generated this DataSnapshot. DeclarationObjective-C @property (nonatomic, strong, readonly) NSString *_Nonnull key;Return ValueA Stringcontaining the key for the location of this DataSnapshot.
- 
                  
                  An iterator for snapshots of the child nodes in this snapshot. for var child in snapshot.children { // ... }DeclarationObjective-C @property (nonatomic, strong, readonly) NSEnumerator<FIRDataSnapshot *> *_Nonnull children;Return ValueAn NSEnumerator of the children. 
- 
                  
                  The priority of the data in this DataSnapshot. DeclarationObjective-C @property (nonatomic, strong, readonly, nullable) id priority;Return ValueThe priority as a String, ornilif no priority was set.