geofirestore-core
Version:
Lightweight location-based querying and encoding of Firebase Firestore Documents for geofirestore.
34 lines (33 loc) • 1.86 kB
TypeScript
import { GeoFirestoreTypes } from '../definitions';
/**
* Encodes a Firestore Document to be added as a GeoDocument.
*
* @param documentData The document being set.
* @param customKey The key of the document to use as the location. Otherwise we default to `coordinates`.
* @return The document encoded as GeoDocument object.
*/
export declare function encodeDocumentAdd(documentData: GeoFirestoreTypes.DocumentData, customKey?: string): GeoFirestoreTypes.GeoDocumentData;
/**
* Encodes a Firestore Document to be set as a GeoDocument.
*
* @param documentData A map of the fields and values for the document.
* @param options An object to configure the set behavior. Includes custom key for location in document.
* @return The document encoded as GeoDocument object.
*/
export declare function encodeDocumentSet(documentData: GeoFirestoreTypes.DocumentData, options?: GeoFirestoreTypes.SetOptions): GeoFirestoreTypes.GeoDocumentData | GeoFirestoreTypes.DocumentData;
/**
* Encodes a Firestore Document to be updated as a GeoDocument.
*
* @param documentData The document being updated.
* @param customKey The key of the document to use as the location. Otherwise we default to `coordinates`.
* @return The document encoded as GeoDocument object.
*/
export declare function encodeDocumentUpdate(documentData: GeoFirestoreTypes.UpdateData, customKey?: string): GeoFirestoreTypes.UpdateData;
/**
* Encodes a document with a GeoPoint as a GeoDocument.
*
* @param geopoint The location as a Firestore GeoPoint.
* @param documentData Document to encode.
* @return The document encoded as GeoDocument object.
*/
export declare function encodeGeoDocument(geopoint: GeoFirestoreTypes.cloud.GeoPoint | GeoFirestoreTypes.web.GeoPoint, documentData: GeoFirestoreTypes.DocumentData): GeoFirestoreTypes.GeoDocumentData;