#ifndef RNFirebaseFirestoreDocumentReference_h #define RNFirebaseFirestoreDocumentReference_h #import #if __has_include() #import #import #import "RNFirebaseEvents.h" #import "RNFirebaseFirestore.h" @interface RNFirebaseFirestoreDocumentReference : NSObject @property RCTEventEmitter *emitter; @property NSString *app; @property NSString *path; @property FIRDocumentReference *ref; - (id)initWithPath:(RCTEventEmitter *)emitter app:(NSString *)app path:(NSString *)path; - (void)delete:(RCTPromiseResolveBlock) resolve rejecter:(RCTPromiseRejectBlock) reject; - (void)get:(RCTPromiseResolveBlock) resolve rejecter:(RCTPromiseRejectBlock) reject; + (void)offSnapshot:(NSString *)listenerId; - (void)onSnapshot:(NSString *)listenerId docListenOptions:(NSDictionary *) docListenOptions; - (void)set:(NSDictionary *)data options:(NSDictionary *)options resolver:(RCTPromiseResolveBlock) resolve rejecter:(RCTPromiseRejectBlock) reject; - (void)update:(NSDictionary *)data resolver:(RCTPromiseResolveBlock) resolve rejecter:(RCTPromiseRejectBlock) reject; - (BOOL)hasListeners; + (NSDictionary *)snapshotToDictionary:(FIRDocumentSnapshot *)documentSnapshot; +(NSDictionary *)parseJSMap:(FIRFirestore *) firestore jsMap:(NSDictionary *) jsMap; @end #else @interface RNFirebaseFirestoreDocumentReference : NSObject @end #endif #endif