@firebase/firestore

Funciones

Función Descripción
function(app, ...)
getFirestore(app) Muestra la instancia predeterminada existente de Firestore que está asociada con la FirebaseApp proporcionada. Si no existe ninguna instancia, inicializa una nueva con la configuración predeterminada.
getFirestore(app, databaseId) (BETA) Muestra la instancia de Firestore existente que está asociada con la FirebaseApp proporcionada. Si no existe ninguna instancia, inicializa una nueva con la configuración predeterminada.
inicializarFirestore(app, settings, databaseId) Inicializa una instancia nueva de Firestore con la configuración proporcionada. Solo se puede llamar antes que cualquier otra función, incluida getFirestore(). Si los parámetros de configuración personalizados están vacíos, esta función equivale a llamar a getFirestore().
function(firestore, ...)
clearIndexedDbPersistencia(firestore) Borra el almacenamiento persistente. Esto incluye las escrituras pendientes y los documentos almacenados en caché.Se debe llamar mientras no se inicia la instancia de Firestore (después de que se cierra la app o cuando esta se inicializa por primera vez). Al inicio, se debe llamar a esta función antes que a otras funciones (que no sean inicializarFirestore() o getFirestore())). Si la instancia de Firestore sigue en ejecución, la promesa se rechazará con el código de error de failed-precondition.Nota: El objetivo principal de clearIndexedDbPersistence() es escribir pruebas confiables que usen Cloud Firestore. Utiliza un mecanismo eficiente para descartar datos existentes, pero no intenta reemplazar de forma segura ni hacer que los datos almacenados en caché sean irrecuperables. En el caso de las aplicaciones que son sensibles a la divulgación de datos almacenados en caché entre sesiones de usuario, te recomendamos que no habilites la persistencia.
collection(firestore, path, pathSegments) Obtiene una instancia de CollectionReference que hace referencia a la colección en la ruta de acceso absoluta especificada.
collectionGroup(firestore, collectionId) Crea y muestra una nueva instancia de Query que incluye todos los documentos de la base de datos que se encuentran en una colección o subcolección con el collectionId especificado.
connectFirestoreEmulator(firestore, host, port, options) Modifica esta instancia para que se comunique con el emulador de Cloud Firestore.Nota: Se debe llamar a esta instancia antes de que se use para realizar operaciones.
disableNetwork(firestore) Inhabilita el uso de red para esta instancia. Puedes volver a habilitarla mediante enableNetwork(). Mientras la red esté inhabilitada, los objetos de escucha de instantáneas y las llamadas getDoc() o getDocs() mostrarán resultados de la caché, y las operaciones de escritura se pondrán en cola hasta que se restablezca la red.
doc(firestore, path, pathSegments) Obtiene una instancia de DocumentReference que hace referencia al documento en la ruta de acceso absoluta especificada.
enableIndexedDbPersistencia(firestore, persistenceSettings) Si es posible, intenta habilitar el almacenamiento persistente.Si falla, enableIndexedDbPersistence() rechazará la promesa o arrojará una excepción. Existen varios motivos por los que esto puede fallar, que se pueden identificar por el code del error.* error de condición previa: La app ya está abierta en otra pestaña del navegador. * Sin implementar: El navegador no es compatible con la implementación de la persistencia sin conexión.Ten en cuenta que, incluso después de una falla, la instancia de Firestore puede seguir usándose, pero la persistencia sin conexión se inhabilitará.Nota: Se debe llamar a enableIndexedDbPersistence() antes que a cualquier otra función (que no sea InitializeFirestore(), getFirestore() o clearIndexedDbPersistencia().La persistencia no se puede usar en un entorno de Node.js).
enableMultiTabIndexedDbPersistencia(firestore) Intenta habilitar el almacenamiento persistente de varias pestañas, si es posible. Si se habilita en todas las pestañas, todas las operaciones comparten el acceso a la persistencia local, incluida la ejecución compartida de consultas y las actualizaciones de documentos locales compensados por latencia en todas las instancias conectadas.Si se produce un error, enableMultiTabIndexedDbPersistence() rechazará la promesa o arrojará una excepción. Existen varios motivos por los que esto puede fallar, que se pueden identificar por el code del error.* error de condición previa: La app ya está abierta en otra pestaña del navegador y la función de varias pestañas no está habilitada. * Sin implementar: El navegador no es compatible con la implementación de la persistencia sin conexión.Ten en cuenta que, incluso después de una falla, la instancia de Firestore seguirá disponible, pero se inhabilitará la persistencia sin conexión.
enableNetwork(firestore) Vuelve a habilitar el uso de la red para esta instancia de Firestore después de una llamada anterior a disableNetwork().
getPersistentCacheIndexManager(firestore) Muestra el administrador del índice de PersistentCache que usa el objeto Firestore determinado. La instancia PersistentCacheIndexManager, o null si el almacenamiento persistente local no está en uso.
loadBundle(firestore, bundleData) Carga un paquete de Firestore en la caché local.
namesQuery(firestore, name) Lee una Query de Firestore desde una caché local, identificada con el nombre dado.Las consultas nombradas se empaquetan en paquetes en el lado del servidor (junto con los documentos resultantes) y se cargan en la caché local con loadBundle. Una vez que esté en la caché local, usa este método para extraer una Query por su nombre.
onSnapshotsInSync(firestore, observador) Adjunta un objeto de escucha para un evento de instantáneas sincronizadas. El evento de instantáneas en sincronización indica que se activaron todos los objetos de escucha afectados por un cambio determinado, incluso si un solo cambio generado por el servidor afecta a varios objetos de escucha.NOTA: El evento de instantáneas en sincronización solo indica que los objetos de escucha están sincronizados entre sí, pero no se relaciona con la sincronización de esas instantáneas con el servidor. Usa SnapshotMetadata en los objetos de escucha individuales para determinar si una instantánea proviene de la caché o del servidor.
onSnapshotsInSync(firestore, onSync) Adjunta un objeto de escucha para un evento de instantáneas sincronizadas. El evento de instantáneas en sincronización indica que se activaron todos los objetos de escucha afectados por un cambio determinado, incluso si un solo cambio generado por el servidor afecta a varios objetos de escucha.NOTA: El evento de instantáneas en sincronización solo indica que los objetos de escucha están sincronizados entre sí, pero no se relaciona con la sincronización de esas instantáneas con el servidor. Usa SnapshotMetadata en los objetos de escucha individuales para determinar si una instantánea es de la caché o del servidor.
runTransaction(firestore, updateFunction, options) Ejecuta el updateFunction determinado y, luego, intenta confirmar los cambios aplicados dentro de la transacción. Si se modificó algún documento leído en la transacción, Cloud Firestore vuelve a intentar el updateFunction. Si no se confirma después de 5 intentos, la transacción falla.La cantidad máxima de escrituras permitida en una sola transacción es 500.
setIndexConfiguration(firestore, configuration) (BETA) Configura la indexación para la ejecución de consultas locales. Se anulará cualquier configuración de índice anterior. Promise se resuelve una vez que se mantiene la configuración del índice.Las entradas del índice se crean de forma asíncrona. Puedes seguir usando consultas que requieren indexación, incluso si los índices aún no están disponibles. La ejecución de la consulta comenzará a usar el índice automáticamente una vez que se hayan escrito las entradas del índice.Los índices solo se admiten con persistencia IndexedDb. Si IndexedDb no está habilitado, se ignora cualquier configuración de índices.
setIndexConfiguration(firestore, json) (BETA) Configura la indexación para la ejecución de consultas locales. Se anulará cualquier configuración de índice anterior. Promise se resuelve una vez que se mantiene la configuración del índice.Las entradas del índice se crean de forma asíncrona. Puedes seguir usando consultas que requieren indexación, incluso si los índices aún no están disponibles. La ejecución de la consulta comenzará a usar el índice automáticamente una vez que se hayan escrito las entradas del índice.Los índices solo se admiten con persistencia IndexedDb. Invoca a enableIndexedDbPersistence() o enableMultiTabIndexedDbPersistence() antes de establecer una configuración de índice. Si IndexedDb no está habilitado, se ignora la configuración de índices.El método acepta el formato JSON exportado por Firebase CLI (firebase firestore:indexes). Si el formato JSON no es válido, este método arroja un error.
terminate(firestore) Finaliza la instancia de Firestore proporcionada.Después de llamar a terminate(), solo se puede usar la función clearIndexedDbPersistence(). Cualquier otra función arrojará una FirestoreError.Para reiniciarse después de la finalización, crea una instancia nueva de FirebaseFirestore con getFirestore().La finalización no cancela las escrituras pendientes, y no se resolverán las promesas que estén a la espera de una respuesta del servidor. Si tienes habilitada la persistencia, la próxima vez que inicies esta instancia, se reanudará el envío de estas escrituras al servidor.Nota: En circunstancias normales, no es necesario llamar a terminate(). Esta función es útil solo cuando deseas forzar a esta instancia a que libere todos sus recursos o en combinación con clearIndexedDbPersistence() para garantizar que se destruya todo el estado local entre las ejecuciones de pruebas.
waitForPendingWrites(firestore) Espera hasta que el backend confirme todas las escrituras pendientes actuales para el usuario activo.La promesa que se muestra se resuelve de inmediato si no hay escrituras pendientes. De lo contrario, la promesa espera todas las escrituras emitidas con anterioridad (incluidas las escritas en una sesión anterior de la app), pero no espera las escrituras que se agregaron después de llamar a la función. Si quieres esperar a que se produzcan escrituras adicionales, vuelve a llamar a waitForPendingWrites().Todas las promesas de waitForPendingWrites() pendientes se rechazan durante los cambios en el usuario.
writeBatch(firestore) Crea un lote de escrituras, que se usa para realizar múltiples escrituras como una sola operación atómica. La cantidad máxima de escrituras permitidas en un solo WriteBatch es de 500.A diferencia de las transacciones, los lotes de escritura persisten sin conexión y, por lo tanto, son preferibles cuando no necesitas acondicionar tus escrituras sobre los datos de lectura.
function()
count() Crea un objeto AggregateField que se pueda usar para calcular el recuento de documentos en el conjunto de resultados de una consulta.
deleteField(). Muestra un centinela para usar con updateDoc() o setDoc() con {merge: true} a fin de marcar un campo para su eliminación.
documentId() Devuelve un centinela especial FieldPath para hacer referencia al ID de un documento. Se puede usar en consultas para ordenar o filtrar por el ID de documento.
getFirestore() Muestra la instancia predeterminada existente de Firestore que está asociada con la FirebaseApp predeterminada. Si no existe ninguna instancia, inicializa una nueva con la configuración predeterminada.
memoryEagerGarbageCollector() Crea una instancia de MemoryEagerGarbageCollector. Este también es el recolector de elementos no utilizados predeterminado, a menos que se especifique explícitamente lo contrario.
persistentMultipleTabManager() Crea una instancia de PersistentMultipleTabManager.
serverTimestamp() Muestra un centinela usado con setDoc() o updateDoc() para incluir una marca de tiempo generada por el servidor en los datos escritos.
function(databaseId, ...)
getFirestore(databaseId) (BETA) Muestra la instancia de Firestore existente que está asociada con la App de Firebase predeterminada. Si no existe ninguna instancia, inicializa una nueva con la configuración predeterminada.
function(elements, ...)
arrayRemove(elementos) Muestra un valor especial que se puede usar con setDoc() o que le indica al servidor que quite los elementos especificados de cualquier valor de array que ya exista en el servidor. Todas las instancias de cada elemento especificado se quitarán del array. Si el campo que se modifica aún no es un array, se reemplazará por uno vacío.
arrayUnion(elementos) Muestra un valor especial que se puede usar con setDoc() o updateDoc() que le indica al servidor que una los elementos dados con cualquier valor de array que ya exista en el servidor. Cada elemento especificado que aún no existe en el array se agregará al final. Si el campo que se modifica aún no es un array, se reemplazará por uno que contenga exactamente los elementos especificados.
function(field, ...)
promedio(campo) Crea un objeto AggregateField que se pueda usar para calcular el promedio de un campo especificado en un rango de documentos en el conjunto de resultados de una consulta.
suma(campo) Crea un objeto AggregateField que se pueda usar para calcular la suma de un campo especificado en un rango de documentos en el conjunto de resultados de una consulta.
function(fieldPath, ...)
orderBy(fieldPath, addressStr) Crea una QueryOrderByConstraint que ordena el resultado de la consulta según el campo especificado, opcionalmente en orden descendente en lugar de ascendente.Nota: Los documentos que no contienen el campo especificado no estarán presentes en el resultado de la consulta.
where(fieldPath, opStr, valor) Crea una QueryFieldFilterConstraint que exige que los documentos contengan el campo especificado y que el valor debe cumplir con la restricción de relación proporcionada.
function(fieldValues, ...)
endAt(fieldValues) Crea una QueryEndAtConstraint que modifica el conjunto de resultados para que finalice en los campos proporcionados en relación con el orden de la consulta. El orden de los valores del campo debe coincidir con el orden de las cláusulas de la consulta.
endBefore(fieldValues) Crea una QueryEndAtConstraint que modifica el conjunto de resultados para que finalice antes de los campos proporcionados en relación con el orden de la consulta. El orden de los valores del campo debe coincidir con el orden de las cláusulas de la consulta.
startAfter(fieldValues) Crea una QueryStartAtConstraint que modifica el conjunto de resultados para que comience después de los campos proporcionados en relación con el orden de la consulta. El orden de los valores del campo debe coincidir con el orden de las cláusulas de la consulta.
startAt(fieldValues) Crea una QueryStartAtConstraint que modifica el conjunto de resultados para que comience en los campos proporcionados en relación con el orden de la consulta. El orden de los valores del campo debe coincidir con el orden de las cláusulas de la consulta.
function(indexManager, ...)
deleteAllPersistentCacheIndexes(indexManager) Quita todos los índices de caché persistente.Ten en cuenta que esta función también borrará los índices generados por setIndexConfiguration(), que dejó de estar disponible.
disablePersistentCacheIndexAutoCreation(indexManager) Deja de crear índices de caché persistentes de forma automática para la ejecución de consultas locales. Los índices que se crearon llamando a enablePersistentCacheIndexAutoCreation() aún tienen efecto.
enablePersistentCacheIndexAutoCreation(indexManager) Permite que el SDK cree índices de caché persistentes automáticamente para la ejecución de consultas locales cuando considere que los índices de caché pueden ayudar a mejorar el rendimiento.Esta función está inhabilitada de forma predeterminada.
función(izquierda, ...)
aggregateFieldEqual(izquierda, derecha) Compara dos instancias de "AggregateField" en busca de igualdad.
aggregateQuerySnapshotEqual(izquierda, derecha) Compara dos instancias de AggregateQuerySnapshot para determinar la igualdad.Dos instancias de AggregateQuerySnapshot se consideran "iguales". si tienen consultas subyacentes que comparan datos iguales y iguales.
queryEqual(izquierda, derecha) Muestra true si las consultas proporcionadas apuntan a la misma colección y aplican las mismas restricciones.
refEqual(izquierda, derecha) Muestra true si las referencias proporcionadas son iguales.
snapshotEqual(izquierda, derecha) Muestra true si las instantáneas proporcionadas son iguales.
function(limit, ...)
limit(limit) Crea una QueryLimitConstraint que solo muestra los primeros documentos que coinciden.
limitToLast(limit) Crea una QueryLimitConstraint que solo muestra los últimos documentos que coinciden.Debes especificar al menos una cláusula orderBy para las consultas limitToLast; de lo contrario, se arrojará una excepción durante la ejecución.
function(logLevel, ...)
setLogLevel(logLevel) Establece la verbosidad de los registros de Cloud Firestore (depuración, error o silencio).
function(n, ...)
increment(n) Muestra un valor especial que se puede usar con setDoc() o updateDoc() que le indica al servidor que incremente el valor actual del campo según el valor dado.Si el operando o el valor del campo actual usan la precisión de punto flotante, toda la aritmética sigue la semántica de IEEE 754. Si ambos valores son números enteros, los valores fuera del rango de números seguros de JavaScript (Number.MIN_SAFE_INTEGER a Number.MAX_SAFE_INTEGER) también están sujetos a pérdida de precisión. Además, una vez que el backend de Firestore las procesa, todas las operaciones de números enteros se limitan entre -2^63 y 2^63-1.Si el valor actual del campo no es del tipo number, o si el campo aún no existe, la transformación configura el campo en el valor dado.
function(query, ...)
getAggregateFromServer(query, aggregateSpec) Calcula las agregaciones especificadas en los documentos del conjunto de resultados de la consulta determinada sin descargar los documentos.Es eficiente usar esta función para realizar agregaciones porque solo se trata de los valores de agregación finales, no de los documentos. se descargan los datos. Esta función puede realizar agregaciones de documentos en casos en los que el conjunto de resultados sea extremadamente grande para descargarse por completo (miles de documentos).El resultado recibido del servidor se presenta, sin cambios, sin considerar ningún estado local. Es decir, no se tienen en cuenta los documentos almacenados en la caché local, ni tampoco las modificaciones locales aún no se sincronizan con el servidor. No se usan los resultados descargados anteriormente, si los hay. Cada invocación de esta función necesariamente implica un recorrido de ida y vuelta al servidor.
getCountFromServer(query) Calcula la cantidad de documentos en el conjunto de resultados de la consulta dada sin descargarlos realmente.El uso de esta función para contar los documentos es eficiente porque solo el recuento final, no los documentos ya se hayan descargado. Esta función puede contar los documentos en casos en los que el conjunto de resultados es demasiado grande para descargarse por completo (miles de documentos).El resultado recibido del servidor se presenta, sin cambios, sin considerar ningún estado local. Es decir, no se tienen en cuenta los documentos almacenados en la caché local, ni tampoco las modificaciones locales aún no se sincronizan con el servidor. No se usan los resultados descargados anteriormente, si los hay. Cada invocación de esta función necesariamente implica un recorrido de ida y vuelta al servidor.
getDocs(query) Ejecuta la consulta y muestra los resultados como QuerySnapshot.Nota: getDocs() intenta proporcionar datos actualizados cuando es posible esperando datos del servidor, pero puede mostrar datos almacenados en caché o fallar si estás sin conexión y no se puede acceder al servidor. Para especificar este comportamiento, invoca a getDocsFromCache() o getDocsFromServer().
getDocsFromCache(consulta) Ejecuta la consulta y muestra los resultados como una QuerySnapshot de la caché. Muestra un conjunto de resultados vacío si no se almacenan en caché ningún documento que coincida con la consulta.
getDocsFromServer(consulta) Ejecuta la consulta y muestra los resultados como una QuerySnapshot del servidor. Muestra un error si la red no está disponible.
onSnapshot(consulta, observador) Adjunta un objeto de escucha para los eventos QuerySnapshot. Puedes pasar devoluciones de llamada individuales onNext y onError o pasar un solo objeto de observador con devoluciones de llamada next y error. El objeto de escucha se puede cancelar llamando a la función que se muestra cuando se llama a onSnapshot.NOTA: Aunque se puede proporcionar una devolución de llamada onCompletion, nunca se llamará porque la transmisión de instantáneas es interminable.
onSnapshot(consulta, opciones, observador) Adjunta un objeto de escucha para los eventos QuerySnapshot. Puedes pasar devoluciones de llamada individuales onNext y onError o pasar un solo objeto de observador con devoluciones de llamada next y error. El objeto de escucha se puede cancelar llamando a la función que se muestra cuando se llama a onSnapshot.NOTA: Aunque se puede proporcionar una devolución de llamada onCompletion, nunca se llamará porque la transmisión de instantáneas es interminable.
onSnapshot(query, onNext, onError, onCompletion) Adjunta un objeto de escucha para los eventos QuerySnapshot. Puedes pasar devoluciones de llamada individuales onNext y onError o pasar un solo objeto de observador con devoluciones de llamada next y error. El objeto de escucha se puede cancelar llamando a la función que se muestra cuando se llama a onSnapshot.NOTA: Aunque se puede proporcionar una devolución de llamada onCompletion, nunca se llamará porque la transmisión de instantáneas es interminable.
onSnapshot(query, options, onNext, onError, onCompletion) Adjunta un objeto de escucha para los eventos QuerySnapshot. Puedes pasar devoluciones de llamada individuales onNext y onError o pasar un solo objeto de observador con devoluciones de llamada next y error. El objeto de escucha se puede cancelar llamando a la función que se muestra cuando se llama a onSnapshot.NOTA: Aunque se puede proporcionar una devolución de llamada onCompletion, nunca se llamará porque la transmisión de instantáneas es interminable.
query(query, compositeFilter, queryConstraints) Crea una nueva instancia inmutable de Query que se extiende para incluir también restricciones de consulta adicionales.
query(query, queryConstraints) Crea una nueva instancia inmutable de Query que se extiende para incluir también restricciones de consulta adicionales.
function(queryConstraints, ...)
and(queryConstraints) Crea una QueryCompositeFilterConstraint nueva que es una conjunción de las restricciones de filtro dadas. Un filtro de conjunción incluye un documento si satisface todos los filtros dados.
o(queryConstraints) Crea una QueryCompositeFilterConstraint nueva que es una disyunción de las restricciones de filtro dadas. Un filtro de disyunción incluye un documento si satisface alguno de los filtros dados.
function(reference, ...)
addDoc(referencia, datos) Agrega un documento nuevo a un CollectionReference especificado con los datos proporcionados y asígnale un ID de documento automáticamente.
collection(referencia, ruta, pathSegments) Obtiene una instancia de CollectionReference que hace referencia a una subcolección de reference en la ruta de acceso relativa especificada.
collection(referencia, ruta, pathSegments) Obtiene una instancia de CollectionReference que hace referencia a una subcolección de reference en la ruta de acceso relativa especificada.
deleteDoc(referencia) Borra el documento al que hace referencia el DocumentReference especificado.
doc(referencia, ruta, pathSegments) Obtiene una instancia de DocumentReference que hace referencia a un documento dentro de reference en la ruta de acceso relativa especificada. Si no se especifica una ruta de acceso, se usará un ID único generado automáticamente para el DocumentReference que se muestra.
doc(referencia, ruta, pathSegments) Obtiene una instancia de DocumentReference que hace referencia a un documento dentro de reference en la ruta de acceso relativa especificada.
getDoc(referencia) Lee el documento al que hace referencia este DocumentReference.Nota: getDoc() intenta proporcionar datos actualizados, cuando es posible, esperando datos del servidor, pero puede mostrar datos almacenados en caché o fallar si estás sin conexión y no se puede acceder al servidor. Para especificar este comportamiento, invoca getDocFromCache() o getDocFromServer().
getDocFromCache(referencia) Lee el documento al que hace referencia este DocumentReference desde la memoria caché. Muestra un error si el documento no está almacenado en caché actualmente.
getDocFromServer(referencia) Lee el documento al que hace referencia este DocumentReference desde el servidor. Muestra un error si la red no está disponible.
onSnapshot(referencia, observador) Adjunta un objeto de escucha para los eventos DocumentSnapshot. Puedes pasar devoluciones de llamada individuales onNext y onError o pasar un solo objeto de observador con devoluciones de llamada de next y error.NOTA: Aunque se puede proporcionar una devolución de llamada onCompletion, nunca se llamará porque la transmisión de instantáneas no tiene fin.
onSnapshot(referencia, opciones, observador) Adjunta un objeto de escucha para los eventos DocumentSnapshot. Puedes pasar devoluciones de llamada individuales onNext y onError o pasar un solo objeto de observador con devoluciones de llamada de next y error.NOTA: Aunque se puede proporcionar una devolución de llamada onCompletion, nunca se llamará porque la transmisión de instantáneas no tiene fin.
onSnapshot(reference, onNext, onError, onCompletion) Adjunta un objeto de escucha para los eventos DocumentSnapshot. Puedes pasar devoluciones de llamada individuales onNext y onError o pasar un solo objeto de observador con devoluciones de llamada de next y error.NOTA: Aunque se puede proporcionar una devolución de llamada onCompletion, nunca se llamará porque la transmisión de instantáneas no tiene fin.
onSnapshot(reference, options, onNext, onError, onCompletion) Adjunta un objeto de escucha para los eventos DocumentSnapshot. Puedes pasar devoluciones de llamada individuales onNext y onError o pasar un solo objeto de observador con devoluciones de llamada de next y error.NOTA: Si bien se puede proporcionar una devolución de llamada onCompletion, nunca se llamará porque la transmisión de instantáneas no tiene fin.
setDoc(referencia, datos) Escribe en el documento al que hace referencia este DocumentReference. Si el documento aún no existe, se creará.
setDoc(referencia, datos, opciones) Escribe en el documento al que hace referencia el DocumentReference especificado. Si el documento aún no existe, se creará. Si proporcionas merge o mergeFields, los datos proporcionados se pueden combinar en un documento existente.
updateDoc(referencia, datos) Actualiza los campos del documento al que hace referencia el DocumentReference especificado. La actualización fallará si se aplica a un documento que no existe.
updateDoc(referencia, campo, valor, moreFieldsAndValues) Actualiza los campos del documento al que hace referencia el DocumentReference especificado. La actualización fallará si se aplica a un documento que no existe.Los campos anidados se pueden actualizar con strings de rutas de campos separadas por puntos o con objetos FieldPath.
function(settings, ...)
memoryLocalCache(configuración) Crea una instancia de MemoryLocalCache. Se puede configurar la instancia en FirestoreSettings.cache para indicarle al SDK qué capa de caché usar.
memoryLruGarbageCollector(configuración) Crea una instancia de MemoryLruGarbageCollector.Se puede especificar un tamaño de destino como parte del parámetro de configuración. El recopilador comenzará a borrar los documentos una vez que el tamaño de la caché supere el tamaño determinado. El tamaño predeterminado de la caché es de 40 MB (40 * 1,024 * 1,024 bytes).
persistentLocalCache(configuración) Crea una instancia de PersistentLocalCache. La instancia se puede configurar como FirestoreSettings.cache para indicarle al SDK qué capa de caché usar.No se puede usar la caché persistente en un entorno de Node.js.
persistentSingleTabManager(configuración) Crea una instancia de PersistentSingleTabManager.
function(snapshot, ...)
endAt(instantánea) Crea una QueryEndAtConstraint que modifica el conjunto de resultados para que finalice en el documento proporcionado (inclusive). La posición de finalización es relativa al orden de la consulta. El documento debe contener todos los campos proporcionados en el campo orderBy de la consulta.
endBefore(resumen) Crea una QueryEndAtConstraint que modifica el conjunto de resultados para que finalice antes que el documento proporcionado (exclusivo). La posición de finalización es relativa al orden de la consulta. El documento debe contener todos los campos proporcionados en el campo orderBy de la consulta.
startAfter(instantánea) Crea una QueryStartAtConstraint que modifica el conjunto de resultados para que comience después del documento proporcionado (exclusivo). La posición inicial es relativa al orden de la consulta. El documento debe contener todos los campos proporcionados en el campo orderBy de la consulta.
startAt(instantánea) Crea una QueryStartAtConstraint que modifica el conjunto de resultados para que comience en el documento proporcionado (inclusive). La posición inicial es relativa al orden de la consulta. El documento debe contener todos los campos proporcionados en las orderBy de esta consulta.

Clases

Clase Descripción
AggregateField Representa una agregación que Firestore puede realizar.
AggregateQuerySnapshot Los resultados de la ejecución de una consulta de agregación.
Bytes Es un objeto inmutable que representa un array de bytes.
CollectionReference Se puede usar un objeto CollectionReference para agregar documentos, obtener referencias y realizar consultas de documentos (con query()).
DocumentReference Un DocumentReference hace referencia a la ubicación de un documento en una base de datos de Firestore y se puede usar para escribir, leer o escuchar la ubicación. El documento en la ubicación indicada puede existir o no.
DocumentSnapshot Un DocumentSnapshot contiene datos leídos de un documento de tu base de datos de Firestore. Los datos se pueden extraer con .data() o .get(<field>) para obtener un campo específico.En el caso de un DocumentSnapshot que apunta a un documento inexistente, cualquier acceso a los datos mostrará el valor "undefined". Puedes usar el método exists() para verificar explícitamente la existencia de un documento.
Ruta de campo Un FieldPath hace referencia a un campo en un documento. La ruta puede consistir de un solo nombre de campo (que haga referencia a un campo de nivel superior del documento) o una lista de nombres de campo (que haga referencia a un campo anidado en el documento).Proporciona los nombres de campo para crear un FieldPath. Si se proporciona más de un nombre de campo, la ruta de acceso apuntará a un campo anidado en un documento.
Valor de campo Valores de Sentinel que se pueden usar cuando se escriben campos de documentos con set() o update().
Firestore La interfaz del servicio de Cloud Firestore.No llames directamente a este constructor. En su lugar, usa getFirestore().
FirestoreError Un error que muestra una operación de Firestore.
GeoPoint Un objeto inmutable que representa una ubicación geográfica en Firestore. La ubicación se representa como un par de latitud y longitud.Los valores de latitud se encuentran en el rango de [-90, 90]. Los valores de longitud se encuentran en el rango de [-180, 180].
LoadBundleTask; Representa la tarea de cargar un paquete de Firestore. Proporciona el progreso de la carga de paquetes, así como la finalización de tareas y los eventos de error.La API es compatible con Promise<LoadBundleTaskProgress>.
PersistentCacheIndexManager Un PersistentCacheIndexManager para configurar los índices de caché persistente que se usan en la ejecución de consultas locales.Si deseas usarlos, llama a getPersistentCacheIndexManager() para obtener una instancia.
Consulta Un Query hace referencia a una consulta que puedes leer o escuchar. También puedes crear objetos Query refinados agregando filtros y ordenando.
QueryCompositeFilterConstraint Un QueryCompositeFilterConstraint se usa para reducir el conjunto de documentos que muestra una consulta de Firestore. Para ello, realiza el operador lógico OR o AND de varias QueryFieldFilterConstraint o QueryCompositeFilterConstraint. Las QueryCompositeFilterConstraint se crean invocando or() o and() y, luego, se pueden pasar a query() para crear una instancia de consulta nueva que también contenga el QueryCompositeFilterConstraint.
QueryConstraint Se usa QueryConstraint para limitar el conjunto de documentos que muestra una consulta de Firestore. Las QueryConstraint se crean invocando where(), orderBy(), startAt(), startAfter(), endBefore(), endAt(), limit(), limitToLast() y, luego, se puede pasar a query().QueryConstraint
QueryDocumentSnapshot Un QueryDocumentSnapshot contiene datos leídos de un documento en tu base de datos de Firestore como parte de una consulta. Se garantiza que el documento exista y sus datos se pueden extraer con .data() o .get(<field>) para obtener un campo específico.Un QueryDocumentSnapshot ofrece la misma superficie de API que un DocumentSnapshot. Dado que los resultados de la consulta solo contienen documentos existentes, la propiedad exists siempre será verdadera y data() nunca mostrará "undefined".
QueryEndAtConstraint Se usa QueryEndAtConstraint para excluir documentos del final de un conjunto de resultados que muestra una consulta de Firestore. Los objetos QueryEndAtConstraint se crean invocando endAt() o endBefore() y, luego, se pueden pasar a query() para crear una nueva instancia de consulta que también contenga este QueryEndAtConstraint.
QueryFieldFilterConstraint Se usa QueryFieldFilterConstraint para limitar el conjunto de documentos que muestra una consulta de Firestore a través del filtrado de uno o más campos del documento. Los objetos QueryFieldFilterConstraint se crean invocando where() y, luego, se pueden pasar a query() para crear una nueva instancia de consulta que también contenga este QueryFieldFilterConstraint.
QueryLimitConstraint Se usa QueryLimitConstraint para limitar la cantidad de documentos que muestra una consulta de Firestore. Las QueryLimitConstraint se crean invocando limit() o limitToLast() y, luego, se pueden pasar a query() para crear una nueva instancia de consulta que también contenga este QueryLimitConstraint.
QueryOrderByConstraint Se usa QueryOrderByConstraint para ordenar el conjunto de documentos que muestra una consulta de Firestore. Los objetos QueryOrderByConstraint se crean mediante la invocación de orderBy() y, luego, se pueden pasar a query() para crear una nueva instancia de consulta que también contenga este QueryOrderByConstraint.Nota: Los documentos que no contienen el campo orderBy no aparecerán en el resultado de la consulta.
QuerySnapshot Una QuerySnapshot contiene cero o más objetos DocumentSnapshot que representan los resultados de una consulta. Se puede acceder a los documentos como un array a través de la propiedad docs o se pueden enumerar con el método forEach. La cantidad de documentos se puede determinar a través de las propiedades empty y size.
QueryStartAtConstraint Se usa QueryStartAtConstraint para excluir documentos del inicio de un conjunto de resultados que muestra una consulta de Firestore. Los objetos QueryStartAtConstraint se crean invocando startAt() o startAfter() y, luego, se pueden pasar a query() para crear una instancia de consulta nueva que también contenga este QueryStartAtConstraint.
SnapshotMetadata Metadatos sobre una instantánea, que describen su estado.
Marca de tiempo Un Timestamp representa un punto en el tiempo independiente de cualquier zona horaria o calendario, representado como segundos y fracciones de segundos a una resolución de nanosegundos en la época UTC.Se codifica con el calendario gregoriano proléptico, que extiende el calendario gregoriano hacia atrás hasta el primer año. Se codifica mediante la suposición de que todos los minutos duran 60 segundos, es decir, los segundos bisiestos se “extienden” a fin de que no se necesite una segunda tabla bisiesta para la interpretación. El rango es de 0001-01-01T00:00:00Z a 9999-12-31T23:59:59.999999999Z.Para ver ejemplos y más especificaciones, consulta la Definición de marca de tiempo.
Transacción Es una referencia a una transacción.El objeto Transaction que se pasa al updateFunction de una transacción proporciona los métodos para leer y escribir datos dentro del contexto de la transacción. Consulta runTransaction().
WriteBatch Un lote de escrituras, que se usa para realizar varias escrituras como una sola unidad atómica.Un objeto WriteBatch se puede adquirir llamando a writeBatch(). Proporciona métodos para agregar escrituras al lote de escrituras. Ninguna de las escrituras se confirmará (ni será visible de forma local) hasta que se llame a WriteBatch.commit().

Interfaces

Interfaz Descripción
AggregateSpec Especifica un conjunto de agregaciones y sus alias.
Cambio de documento Un DocumentChange representa un cambio en los documentos que coinciden con una consulta. Contiene el documento afectado y el tipo de cambio que se produjo.
Datos de documentos Los datos de documentos (para usar con setDoc()) consisten en campos asignados a valores.
ExperimentalLongPollingOptions Opciones que configuran el transporte de red subyacente (WebChannel) del SDK cuando se usa el sondeo largo.Nota: Esta interfaz es "experimental" y está sujeta a cambios.Consulta FirestoreSettings.experimentalAutoDetectLongPolling, FirestoreSettings.experimentalForceLongPolling y FirestoreSettings.experimentalLongPollingOptions.
FirestoreDataConverter Convertidor que usa withConverter() para transformar los objetos de usuario del tipo AppModelType en datos de Firestore de tipo DbModelType.El uso del conversor te permite especificar argumentos de tipo genérico cuando se almacenan y recuperan objetos de Firestore.En este contexto, se usa un “AppModel” es una clase que se usa en una aplicación para empaquetar información y funcionalidades relacionadas. Por ejemplo, esta clase podría tener propiedades con tipos de datos anidados complejos, propiedades usadas para la memorización, propiedades de tipos no compatibles con Firestore (como symbol y bigint) y funciones auxiliares que realizan operaciones compuestas. Estas clases no son adecuadas o no se pueden almacenar en una base de datos de Firestore. En cambio, las instancias de esas clases deben convertirse en "objetos antiguos y simples de JavaScript". (POJO) con propiedades exclusivamente primitivas, potencialmente anidadas dentro de otros POJO o arrays de POJO. En este contexto, el tipo se denomina "DbModel". y sería un objeto adecuado para permanecer en Firestore. Para mayor comodidad, las aplicaciones pueden implementar FirestoreDataConverter y registrar el convertidor con objetos de Firestore, como DocumentReference o Query, para convertir automáticamente AppModel en DbModel cuando se almacenan en Firestore, y convertir DbModel en AppModel cuando se recuperan desde Firestore.
FirestoreSettings Especifica la configuración personalizada para tu instancia de Cloud Firestore. Debes configurarlos antes de invocar cualquier otro método.
Índice (BETA) Es la definición del SDK de un índice de Firestore.
IndexConfiguration (BETA) Es una lista de índices de Firestore para acelerar la ejecución de consultas locales.Consulta el Formato JSON para ver una descripción del formato de la definición del índice.
IndexField. (BETA) Un elemento de campo único en una configuración de índice.
LoadBundleTaskProgress Representa una actualización de progreso o un estado final de la carga de paquetes.
Configuración de MemoryCache Un objeto de configuración para configurar una instancia de MemoryLocalCache.
MemoryEagerGarbageCollector Un recolector de elementos no utilizados borra documentos que no forman parte de ninguna consulta activa y no tienen mutaciones locales adjuntas.Este recopilador intenta garantizar la huella de memoria más baja del SDK, pero corre el riesgo de que los documentos no se almacenen en caché para consultas sin conexión o consultas directas a la caché.Usa la función de fábrica para crear una instancia de este recopilador.
MemoryLocalCache Proporciona una caché en la memoria al SDK. Esta es la caché predeterminada, a menos que se configure explícitamente lo contrario.Para usarla, crea una instancia con la función de fábrica y, luego, configúrala como FirestoreSettings.cache y llama a initializeFirestore con el objeto de configuración.
MemoryLruGarbageCollector Un recolector de elementos no utilizados borra los documentos que se usan con menor frecuencia en varios lotes.Este recolector está configurado con un tamaño de destino y solo realizará la recolección cuando los documentos almacenados en caché superen el tamaño objetivo. Evita consultar al backend repetida para la misma consulta o documento, en riesgo de tener una mayor huella de memoria.Usa la función de fábrica para crear una instancia de este recopilador.
Configuración de persistencia Configuración que se puede pasar a enableIndexedDbPersistence() para configurar la persistencia de Firestore.La persistencia no se puede usar en un entorno de Node.js.
PersistentCacheSettings Un objeto de configuración para configurar una instancia de PersistentLocalCache.No se puede usar la caché persistente en un entorno de Node.js.
PersistentLocalCache Proporciona una caché persistente respaldada por IndexedDb al SDK.Para usarla, crea una instancia con la función de fábrica , establece la instancia en FirestoreSettings.cache y llama a initializeFirestore con el objeto de configuración.
PersistentMultipleTabManager Un administrador de pestañas compatible con varias pestañas. El SDK sincronizará las consultas y las mutaciones que se realizan en todas las pestañas que lo usan.
PersistentSingleTabManager Un administrador de pestañas que solo admite una pestaña, por lo que no se sincronizará ninguna pestaña.
PersistentSingleTabManagerSettings Escribe para configurar una instancia PersistentSingleTabManager.
SnapshotListenOptions Un objeto de opciones que se puede pasar a onSnapshot() y QuerySnapshot.docChanges() para controlar qué tipos de cambios incluir en el conjunto de resultados.
SnapshotOptions Opciones que configuran cómo se recuperan los datos desde un DocumentSnapshot (por ejemplo, el comportamiento deseado para las marcas de tiempo del servidor que aún no se establecieron en su valor final).
TransactionOptions Opciones para personalizar el comportamiento de las transacciones.
Anular la suscripción Una función que muestra onSnapshot() que quita el objeto de escucha cuando se invoca.

Variables

Variable Descripción
CACHE_SIZE_UNLIMITED Constante para indicar que se debe inhabilitar la recolección de elementos no utilizados de LRU. Establece este valor como el cacheSizeBytes en la configuración que se pasó a la instancia de Firestore.

Escribe alias

Alias de tipo Descripción
AddPrefixToKeys Devuelve un mapa nuevo donde cada tecla tiene el prefijo con la tecla externa agregada a un punto.
AggregateFieldType La unión de todos los tipos AggregateField compatibles con Firestore.
AggregateSpecData Un tipo cuyas claves se toman de una AggregateSpec y cuyos valores son el resultado de la agregación realizada por el AggregateField correspondiente desde el AggregateSpec de entrada.
AggregateType Tipo de unión que representa el tipo de agregación que se realizará.
ChildUpdateFields Es una ayuda para calcular los campos anidados para un tipo T1 determinado. Esto es necesario para distribuir tipos de unión como undefined | {...} (sucede con props opcionales) o {a: A} | {b: B}.En este caso de uso, V se usa para distribuir los tipos de unión de T[K] en Record, ya que T[K] se evalúa como una expresión y no se distribuye.Consulta https://www.typescriptlang.org/docs/handbook/advanced-types.html#distributive-conditional-types.
Tipo de cambio de documento El tipo de DocumentChange se puede “agregar”, “quitar” o “modificar”.
FirestoreErrorCode Es el conjunto de códigos de estado de Firestore. Los códigos son los mismos que los que expone gRPC aquí: https://github.com/grpc/grpc/blob/master/doc/statuscodes.mdValores posibles: - “cancelled”: La operación fue cancelada (por lo general, por el llamador). - “desconocido”: un error desconocido o de un dominio de errores diferente. - 'invalid-argument': El cliente especificó un argumento no válido. Ten en cuenta que esto es diferente de “con error de condición previa”. "argumento no válido" indica los argumentos que son problemáticos independientemente del estado del sistema (p.ej., un nombre de campo no válido). - "deadline-exceeded": El plazo venció antes de que la operación se pudiera completar. En el caso de las operaciones que cambian el estado del sistema, es probable que se muestre este error incluso si la operación se completó correctamente. Por ejemplo, una respuesta correcta desde un servidor podría haberse retrasado lo suficiente como para que el plazo venciera. - “not-found”: no se encontró algún documento solicitado. - 'ya existe': Algún documento que intentamos crear ya existe. - “permission-denied”: El emisor no tiene permiso para ejecutar la operación especificada. - "resource-agotado": se agotaron algunos recursos, tal vez una cuota por usuario, o tal vez se agotó el espacio de todo el sistema de archivos. - 'failed-precondition': la operación se rechazó porque el sistema no se encuentra en un estado necesario para la ejecución de la operación. - “aborted”: la operación se anuló, por lo general debido a un problema de simultaneidad, como la anulación de transacciones, entre otros. - “fuera de rango”: la operación se intentó fuera del rango válido. - "unimplemented": La operación no se ha implementado, no está habilitada o no se admite. - "internal": errores internos. Indica que algunas variantes que espera el sistema subyacente no funcionan. Si ves uno de estos errores, significa que hay un problema grave. - "no disponible": el servicio no está disponible en este momento. Lo más probable es que esta sea una condición transitoria y se pueda corregir si vuelves a intentar con una retirada. - “data-loss”: pérdida o corrupción de datos irrecuperables. - "unauthenticated": La solicitud no tiene credenciales de autenticación válidas para la operación.
FirestoreLocalCache Tipo de unión de todas las capas de caché del SDK compatibles.
ListenSource Describe la fuente que escucha una consulta.Establece esta propiedad en default para escuchar los cambios en la caché y en el servidor. Configúralo en cache para escuchar los cambios solo en la caché.
Recopilador de residuos de memoria Tipo de unión de todos los recolectores de elementos no utilizados para la caché local de la memoria.
NestedUpdateFields. Para cada campo (p.ej., 'bar'), busca todas las claves anidadas (p.ej., {'bar.baz': T1, 'bar.qux': T2}). Se pueden cruzar entre sí para crear un único mapa con todas las claves posibles marcadas como opcionales.
OrderByDirections La dirección de una cláusula orderBy() se especifica como "desc". o "asc" (ascendente o descendente).
PartialWithFieldValue Es similar a Partial<T> de TypeScript, pero permite que se omitan los campos anidados y que se pasen FieldValues como valores de propiedad.
PersistentTabManager Una unión de todos los administradores de pestañas disponibles.
Primitivo Tipos primitivos.
QueryConstraintType Describe las diferentes restricciones de consultas disponibles en este SDK.
QueryFilterConstraint QueryFilterConstraint es un tipo de unión auxiliar que representa QueryFieldFilterConstraint y QueryCompositeFilterConstraint.
QueryNonFilterConstraint QueryNonFilterConstraint es un tipo de unión auxiliar que representa QueryConstraints que se usa para ordenar o limitar el conjunto de documentos, pero que no filtra de forma explícita en un campo de documento. Los objetos QueryNonFilterConstraint se crean invocando orderBy(), startAt(), startAfter(), endBefore(), endAt(), limit() o limitToLast() y, luego, se pueden pasar a query() para crear una nueva instancia de consulta que también contenga QueryConstraint.
SetOptions Un objeto de opciones que configura el comportamiento de setDoc() y las llamadas. Estas llamadas se pueden configurar para realizar combinaciones detalladas en lugar de reemplazar los documentos de destino por completo proporcionando un SetOptions con merge: true.
TaskState Representa el estado de las tareas de carga de paquetes.Ambos “Error” y “Listo” Están en estado de disminución: la tarea se anulará o se completará y no habrá más actualizaciones después de que se informen.
UnionToIntersection Dado un tipo de unión U = T1 | T2 | ..., muestra un tipo con intersección (T1 & T2 & ...).Usa tipos condicionales distributivos e inferencia de tipos condicionales. Esto funciona porque varios candidatos para la misma variable de tipo en posiciones contra variantes provocan que se infiera un tipo de intersección. https://www.typescriptlang.org/docs/handbook/advanced-types.html#type-inference-in-conditional-types https://stackoverflow.com/questions/50374908/transform-union-type-to-intersection-type
UpdateData Actualiza los datos (para usarlos con updateDoc()) que contengan rutas de campos (p.ej., "foo" o "foo.baz") asignadas a valores. Los campos que contienen puntos hacen referencia a campos anidados dentro del documento. FieldValues se pueden pasar como valores de propiedad.
WhereFilterOp Las condiciones del filtro en una cláusula where() se especifican con las cadenas “&lt;', '&lt;=', '==', '!=', '&gt;=', '&gt;', 'array-contains', 'in', 'array-contains-any' y 'not-in'.
WithFieldValue Permite que se pasen FieldValues como un valor de propiedad mientras se mantiene la seguridad de tipo.

función(app, ...)

getFirestore(aplicación)

Muestra la instancia predeterminada existente de Firestore que está asociada con la FirebaseApp proporcionada. Si no existe ninguna instancia, inicializa una nueva con la configuración predeterminada.

Firma:

export declare function getFirestore(app: FirebaseApp): Firestore;

Parámetros

Parámetro Tipo Descripción
app App de Firebase La instancia de FirebaseApp con la que está asociada la instancia de Firestore que se muestra.

Muestra:

Firestore

La instancia predeterminada de Firestore de la app proporcionada.

getFirestore(app, databaseId)

Esta API se proporciona como versión preliminar para los desarrolladores y puede cambiar según los comentarios que recibamos. No uses esta API en un entorno de producción.

Muestra la instancia existente de Firestore con nombre que está asociada con la FirebaseApp proporcionada. Si no existe ninguna instancia, inicializa una nueva con la configuración predeterminada.

Firma:

export declare function getFirestore(app: FirebaseApp, databaseId: string): Firestore;

Parámetros

Parámetro Tipo Descripción
app App de Firebase La instancia de FirebaseApp con la que está asociada la instancia de Firestore que se muestra.
IDdebasededatos string Es el nombre de la base de datos.

Muestra:

Firestore

La instancia con nombre de Firestore de la app proporcionada.

inicializaFirestore(app, configuración, databaseId)

Inicializa una instancia nueva de Firestore con la configuración proporcionada. Solo se puede llamar antes que cualquier otra función, incluida getFirestore(). Si los parámetros de configuración personalizados están vacíos, esta función equivale a llamar a getFirestore().

Firma:

export declare function initializeFirestore(app: FirebaseApp, settings: FirestoreSettings, databaseId?: string): Firestore;

Parámetros

Parámetro Tipo Descripción
app App de Firebase La FirebaseApp con la que se asociará la instancia de Firestore.
configuración FirestoreSettings Un objeto de configuración para configurar la instancia de Firestore.
IDdebasededatos string Es el nombre de la base de datos.

Muestra:

Firestore

Una instancia de Firestore recién inicializada.

function(firestore, ...)

clearIndexedDbPersistencia(firestore)

Borra el almacenamiento persistente. Esto incluye las escrituras pendientes y los documentos almacenados en caché.

Se debe llamar mientras no se inicia la instancia de Firestore (después de que se cierra la app o cuando esta se inicializa por primera vez). Al inicio, se debe llamar a esta función antes que a otras funciones (que no sean inicializarFirestore() o getFirestore())). Si la instancia de Firestore sigue en ejecución, la promesa se rechazará con el código de error failed-precondition.

Firma:

export declare function clearIndexedDbPersistence(firestore: Firestore): Promise<void>;

Parámetros

Parámetro Tipo Descripción
firestore Firestore La instancia de Firestore para la que se quiere borrar la persistencia.

Muestra:

Promise&lt;void&gt;

Un Promise que se resuelve cuando se borra el almacenamiento persistente. De lo contrario, la promesa se rechaza con un error.

collection(firestore, path, pathSegments)

Obtiene una instancia de CollectionReference que hace referencia a la colección en la ruta de acceso absoluta especificada.

Firma:

export declare function collection(firestore: Firestore, path: string, ...pathSegments: string[]): CollectionReference<DocumentData, DocumentData>;

Parámetros

Parámetro Tipo Descripción
firestore Firestore Una referencia a la instancia raíz Firestore.
ruta string Es una ruta separada por barras a una colección.
Segmentosderuta string[] Segmentos de ruta adicionales que se aplicarán en relación con el primer argumento.

Muestra:

CollectionReference<DocumentData y DocumentData>

La instancia CollectionReference

Excepciones

Si la ruta final tiene una cantidad par de segmentos y no apunta a una colección.

collectionGroup(firestore, collectionId)

Crea y muestra una nueva instancia de Query que incluye todos los documentos de la base de datos que se encuentran en una colección o subcolección con el collectionId especificado.

Firma:

export declare function collectionGroup(firestore: Firestore, collectionId: string): Query<DocumentData, DocumentData>;

Parámetros

Parámetro Tipo Descripción
firestore Firestore Una referencia a la instancia raíz Firestore.
ID de colección string Identifica las colecciones que se consultarán. Se incluirán todas las colecciones o subcolecciones que tengan este ID como último segmento de su ruta de acceso. No puede contener una barra.

Muestra:

Consulta<DocumentData, DocumentData>

El Query creado.

connectFirestoreEmulator(firestore, host, port, opciones)

Modifica esta instancia para que se comunique con el emulador de Cloud Firestore.

Firma:

export declare function connectFirestoreEmulator(firestore: Firestore, host: string, port: number, options?: {
    mockUserToken?: EmulatorMockTokenOptions | string;
}): void;

Parámetros

Parámetro Tipo Descripción
firestore Firestore Es la instancia Firestore que se debe configurar para conectarse al emulador.
host string el host del emulador (p. ej., localhost).
puerto número el puerto del emulador (p. ej., 9000).
opciones { falsoUserToken?: EmulatorMockTokenOptions | cadena; }.

Muestra:

void

inhabilitarNetwork(firestore)

Inhabilita el uso de red para esta instancia. Puedes volver a habilitarla mediante enableNetwork(). Mientras la red esté inhabilitada, los objetos de escucha de instantáneas y las llamadas getDoc() o getDocs() mostrarán resultados de la caché, y las operaciones de escritura se pondrán en cola hasta que se restablezca la red.

Firma:

export declare function disableNetwork(firestore: Firestore): Promise<void>;

Parámetros

Parámetro Tipo Descripción
firestore Firestore

Muestra:

Promise&lt;void&gt;

Una Promise que se resuelve una vez que se inhabilita la red.

doc(firestore, path, pathSegments)

Obtiene una instancia de DocumentReference que hace referencia al documento en la ruta de acceso absoluta especificada.

Firma:

export declare function doc(firestore: Firestore, path: string, ...pathSegments: string[]): DocumentReference<DocumentData, DocumentData>;

Parámetros

Parámetro Tipo Descripción
firestore Firestore Una referencia a la instancia raíz Firestore.
ruta string Es una ruta de acceso separada por barras a un documento.
Segmentosderuta string[] Segmentos de ruta adicionales que se aplicarán en relación con el primer argumento.

Muestra:

DocumentReference<DocumentData y DocumentData>

La instancia DocumentReference

Excepciones

Si la ruta final tiene un número impar de segmentos y no dirige a un documento.

enableIndexedDbPersistencia(firestore, persistenceSettings)

Esta función se quitará en una versión importante futura. En su lugar, establece FirestoreSettings.localCache en una instancia de PersistentLocalCache para activar la caché IndexedDb. Si llamas a esta función cuando ya se especificó FirestoreSettings.localCache, se arrojará una excepción.

Si es posible, intenta habilitar el almacenamiento persistente.

Si se produce un error, enableIndexedDbPersistence() rechazará la promesa o arroja una excepción. Existen varias razones por las que esto puede fallar, que se pueden identificar por el code del error.

* failed-precondition: La app ya está abierta en otra pestaña del navegador. * sin implementar: El navegador no es compatible con la implementación de persistencia sin conexión.

Ten en cuenta que, incluso después de una falla, la instancia de Firestore seguirá siendo utilizable, pero la persistencia sin conexión estará inhabilitada.

La persistencia no se puede usar en un entorno de Node.js.

Firma:

export declare function enableIndexedDbPersistence(firestore: Firestore, persistenceSettings?: PersistenceSettings): Promise<void>;

Parámetros

Parámetro Tipo Descripción
firestore Firestore La instancia de Firestore para la que se habilita la persistencia.
Configuración de persistencia Configuración de persistencia Objeto de configuración opcional para configurar la persistencia.

Muestra:

Promise&lt;void&gt;

Una Promise que representa la habilitación correcta del almacenamiento persistente.

enableMultiTabIndexedDbPersistencia(firestore)

Esta función se quitará en una versión importante futura. En su lugar, establece FirestoreSettings.localCache en una instancia de PersistentLocalCache para activar la caché de indexdb. Si llamas a esta función cuando ya se especificó FirestoreSettings.localCache, se arrojará una excepción.

Intenta habilitar el almacenamiento persistente de varias pestañas, si es posible. Si se habilita en todas las pestañas, todas las operaciones comparten el acceso a la persistencia local, incluida la ejecución compartida de consultas y las actualizaciones de documentos locales compensadas por latencia en todas las instancias conectadas.

Si se produce un error, enableMultiTabIndexedDbPersistence() rechazará la promesa o arroja una excepción. Existen varias razones por las que esto puede fallar, que se pueden identificar por el code del error.

* error-condición previa: La app ya está abierta en otra pestaña del navegador y la función de varias pestañas no está habilitada. * sin implementar: El navegador no es compatible con la implementación de persistencia sin conexión.

Ten en cuenta que, incluso después de una falla, la instancia de Firestore seguirá siendo utilizable, pero la persistencia sin conexión estará inhabilitada.

Firma:

export declare function enableMultiTabIndexedDbPersistence(firestore: Firestore): Promise<void>;

Parámetros

Parámetro Tipo Descripción
firestore Firestore La instancia de Firestore para la que se habilita la persistencia.

Muestra:

Promise&lt;void&gt;

Una Promise que representa la habilitación correcta del almacenamiento persistente.

enableNetwork(firestore)

Vuelve a habilitar el uso de la red para esta instancia de Firestore después de una llamada anterior a disableNetwork().

Firma:

export declare function enableNetwork(firestore: Firestore): Promise<void>;

Parámetros

Parámetro Tipo Descripción
firestore Firestore

Muestra:

Promise&lt;void&gt;

Una Promise que se resuelve una vez que se habilita la red.

getPersistentCacheIndexManager(firestore)

Muestra el administrador del índice de PersistentCache que usa el objeto Firestore determinado.

La instancia PersistentCacheIndexManager, o null si el almacenamiento persistente local no está en uso.

Firma:

export declare function getPersistentCacheIndexManager(firestore: Firestore): PersistentCacheIndexManager | null;

Parámetros

Parámetro Tipo Descripción
firestore Firestore

Muestra:

PersistentCacheIndexManager | nulo

loadBundle(firestore, bundleData)

Carga un paquete de Firestore en la caché local.

Firma:

export declare function loadBundle(firestore: Firestore, bundleData: ReadableStream<Uint8Array> | ArrayBuffer | string): LoadBundleTask;

Parámetros

Parámetro Tipo Descripción
firestore Firestore La instancia de Firestore para cargar los paquetes.
datos de paquete ReadableStream<Uint8Array> | ArrayBuffer | cadena Un objeto que representa el paquete que se cargará. Los objetos válidos son ArrayBuffer, ReadableStream<Uint8Array> o string.

Muestra:

LoadBundleTask;

Un objeto LoadBundleTask, que notifica a los emisores con actualizaciones de progreso y eventos de finalización o de error Se puede usar como Promise<LoadBundleTaskProgress>.

llamadoQuery(firestore, name)

Lee una Query de Firestore desde la caché local, identificada con el nombre dado.

Las consultas con nombre se empaquetan en paquetes en el servidor (junto con los documentos resultantes) y se cargan en la caché local mediante loadBundle. Una vez que esté en la caché local, usa este método para extraer una Query por su nombre.

Firma:

export declare function namedQuery(firestore: Firestore, name: string): Promise<Query | null>;

Parámetros

Parámetro Tipo Descripción
firestore Firestore La instancia de Firestore desde la que se lee la consulta.
nombre string El nombre de la consulta.

Muestra:

Promesa<Consulta | null>

Una Promise que se resuelve con la consulta o null.

onSnapshotsInSync(firestore, observador)

Adjunta un objeto de escucha para un evento de instantáneas sincronizadas. El evento de instantáneas en sincronización indica que se activaron todos los objetos de escucha afectados por un cambio determinado, incluso si un solo cambio generado por el servidor afecta a varios objetos de escucha.

NOTA: El evento de instantáneas en sincronización solo indica que los objetos de escucha están sincronizados entre sí, pero no tiene relación con si esas instantáneas están sincronizadas con el servidor. Usa SnapshotMetadata en los objetos de escucha individuales para determinar si una instantánea proviene de la caché o del servidor.

Firma:

export declare function onSnapshotsInSync(firestore: Firestore, observer: {
    next?: (value: void) => void;
    error?: (error: FirestoreError) => void;
    complete?: () => void;
}): Unsubscribe;

Parámetros

Parámetro Tipo Descripción
firestore Firestore La instancia de Firestore para sincronizar instantáneas.
observador { ¿Siguiente?: (valor: nulo) => nulo; ?: (error: FirestoreError) => nulo; completos?: () => nulo; }. Un solo objeto que contiene devoluciones de llamada next y error.

Muestra:

Anular la suscripción

Una función de anulación de suscripción a la que se puede llamar para cancelar el objeto de escucha de instantáneas.

onSnapshotsInSync(firestore, onSync)

Adjunta un objeto de escucha para un evento de instantáneas sincronizadas. El evento de instantáneas en sincronización indica que se activaron todos los objetos de escucha afectados por un cambio determinado, incluso si un solo cambio generado por el servidor afecta a varios objetos de escucha.

NOTA: El evento de instantáneas en sincronización solo indica que los objetos de escucha están sincronizados entre sí, pero no tiene relación con si esas instantáneas están sincronizadas con el servidor. Usa SnapshotMetadata en los objetos de escucha individuales para determinar si una instantánea es de la caché o del servidor.

Firma:

export declare function onSnapshotsInSync(firestore: Firestore, onSync: () => void): Unsubscribe;

Parámetros

Parámetro Tipo Descripción
firestore Firestore La instancia Firestore para sincronizar instantáneas.
onSync () => anular Una devolución de llamada que se llamará cada vez que todos los objetos de escucha de instantáneas estén sincronizados entre sí.

Muestra:

Anular la suscripción

Una función de anulación de suscripción a la que se puede llamar para cancelar el objeto de escucha de instantáneas.

runTransaction(firestore, updateFunction, opciones)

Ejecuta el updateFunction determinado y, luego, intenta confirmar los cambios aplicados dentro de la transacción. Si se modificó algún documento leído en la transacción, Cloud Firestore vuelve a intentar ejecutar updateFunction. Si no se confirma después de 5 intentos, la transacción falla.

La cantidad máxima de operaciones de escritura permitidas en una sola transacción es 500.

Firma:

export declare function runTransaction<T>(firestore: Firestore, updateFunction: (transaction: Transaction) => Promise<T>, options?: TransactionOptions): Promise<T>;

Parámetros

Parámetro Tipo Descripción
firestore Firestore Una referencia a la base de datos de Firestore con la que se ejecutará esta transacción.
Función update (transacción: Transacción) => Promesa<T> La función que se ejecutará dentro del contexto de la transacción.
opciones TransactionOptions Un objeto de opciones para configurar la cantidad máxima de intentos de confirmación.

Muestra:

Promesa<T>

Si la transacción se completó correctamente o se anuló de forma explícita (la updateFunction mostró una promesa con errores), la promesa que mostró updateFunction se muestra aquí. De lo contrario, si la transacción falló, se muestra una promesa rechazada con el error de falla correspondiente.

setIndexConfiguration(firestore, configuración)

Esta API se proporciona como versión preliminar para los desarrolladores y puede cambiar según los comentarios que recibamos. No uses esta API en un entorno de producción.

En lugar de crear índices de caché de forma manual, considera usar enablePersistentCacheIndexAutoCreation() para permitir que el SDK decida si desea crear índices de caché para las consultas que se ejecutan de forma local.

Configura la indexación para la ejecución de consultas locales. Se anulará cualquier configuración de índice anterior. El Promise se resuelve una vez que se mantiene la configuración del índice.

Las entradas de índice se crean de forma asíncrona. Puedes seguir usando consultas que requieren indexación, incluso si los índices aún no están disponibles. La ejecución de la consulta comenzará a usar el índice automáticamente una vez que se hayan escrito las entradas del índice.

Los índices solo se admiten con persistencia IndexedDb. Si IndexedDb no está habilitado, se ignora cualquier configuración de índices.

Firma:

export declare function setIndexConfiguration(firestore: Firestore, configuration: IndexConfiguration): Promise<void>;

Parámetros

Parámetro Tipo Descripción
firestore Firestore La instancia de Firestore para la que se configurarán los índices.
configuración IndexConfiguration La definición del índice.

Muestra:

Promise&lt;void&gt;

Una Promise que se resuelve una vez que todos los índices se configuran correctamente.

Excepciones

FirestoreError si el formato JSON no es válido.

setIndexConfiguration(firestore, json)

Esta API se proporciona como versión preliminar para los desarrolladores y puede cambiar según los comentarios que recibamos. No uses esta API en un entorno de producción.

En lugar de crear índices de caché de forma manual, considera usar enablePersistentCacheIndexAutoCreation() para permitir que el SDK decida si desea crear índices de caché para las consultas que se ejecutan de forma local.

Configura la indexación para la ejecución de consultas locales. Se anulará cualquier configuración de índice anterior. El Promise se resuelve una vez que se mantiene la configuración del índice.

Las entradas de índice se crean de forma asíncrona. Puedes seguir usando consultas que requieren indexación, incluso si los índices aún no están disponibles. La ejecución de la consulta comenzará a usar el índice automáticamente una vez que se hayan escrito las entradas del índice.

Los índices solo se admiten con persistencia IndexedDb. Invoca a enableIndexedDbPersistence() o enableMultiTabIndexedDbPersistence() antes de establecer una configuración de índice. Si IndexedDb no está habilitado, se ignora cualquier configuración de índices.

El método acepta el formato JSON que exporta Firebase CLI (firebase firestore:indexes). Si el formato JSON no es válido, este método muestra un error.

Firma:

export declare function setIndexConfiguration(firestore: Firestore, json: string): Promise<void>;

Parámetros

Parámetro Tipo Descripción
firestore Firestore La instancia de Firestore para la que se configurarán los índices.
json string El formato JSON que exporta Firebase CLI.

Muestra:

Promise&lt;void&gt;

Una Promise que se resuelve una vez que todos los índices se configuran correctamente.

Excepciones

FirestoreError si el formato JSON no es válido.

terminar(firestore)

Finaliza la instancia de Firestore proporcionada.

Después de llamar a terminate(), solo se podrá usar la función clearIndexedDbPersistence(). Cualquier otra función arrojará una FirestoreError.

Para reiniciar después de la finalización, crea una instancia nueva de FirebaseFirestore con getFirestore().

La rescisión no cancela las escrituras pendientes, y no se resolverá ninguna promesa que esté a la espera de una respuesta del servidor. Si tienes habilitada la persistencia, la próxima vez que inicies esta instancia, se reanudará el envío de estas escrituras al servidor.

Firma:

export declare function terminate(firestore: Firestore): Promise<void>;

Parámetros

Parámetro Tipo Descripción
firestore Firestore

Muestra:

Promise&lt;void&gt;

Una Promise que se resuelve cuando la instancia se finaliza de forma correcta.

waitForPendingWrites(firestore)

Espera hasta que el backend confirme todas las escrituras pendientes que tiene el usuario activo.

La promesa que se muestra se resuelve de inmediato si no hay escrituras pendientes. De lo contrario, la promesa espera todas las escrituras emitidas con anterioridad (incluidas las escritas en una sesión anterior de la app), pero no espera las escrituras que se agregaron después de llamar a la función. Si quieres esperar operaciones de escritura adicionales, vuelve a llamar a waitForPendingWrites().

Cualquier promesa pendiente de waitForPendingWrites() se rechaza durante los cambios de usuario.

Firma:

export declare function waitForPendingWrites(firestore: Firestore): Promise<void>;

Parámetros

Parámetro Tipo Descripción
firestore Firestore

Muestra:

Promise&lt;void&gt;

Una Promise que se resuelve cuando el backend confirma todas las escrituras pendientes en la actualidad.

writeBatch(firestore)

Crea un lote de escrituras, que se usa para realizar múltiples escrituras como una sola operación atómica. La cantidad máxima de escrituras permitidas en un solo WriteBatch es de 500.

A diferencia de las transacciones, los lotes de escritura se conservan sin conexión y, por lo tanto, son preferibles cuando no necesitas condicionar tus escrituras sobre los datos de lectura.

Firma:

export declare function writeBatch(firestore: Firestore): WriteBatch;

Parámetros

Parámetro Tipo Descripción
firestore Firestore

Muestra:

WriteBatch

Un WriteBatch que se puede usar para ejecutar de forma atómica varias escrituras.

función()

count()

Crea un objeto AggregateField que se pueda usar para calcular el recuento de documentos en el conjunto de resultados de una consulta.

Firma:

export declare function count(): AggregateField<number>;

Muestra:

AggregateField<número>

deleteField()

Muestra un centinela para usar con updateDoc() o setDoc() con {merge: true} a fin de marcar un campo para su eliminación.

Firma:

export declare function deleteField(): FieldValue;

Muestra:

Valor de campo

IDdedocumento()

Devuelve un centinela especial FieldPath para hacer referencia al ID de un documento. Se puede usar en consultas para ordenar o filtrar por el ID de documento.

Firma:

export declare function documentId(): FieldPath;

Muestra:

Ruta de campo

getFirestore()

Muestra la instancia predeterminada existente de Firestore que está asociada con la FirebaseApp predeterminada. Si no existe ninguna instancia, inicializa una nueva con la configuración predeterminada.

Firma:

export declare function getFirestore(): Firestore;

Muestra:

Firestore

La instancia predeterminada de Firestore de la app predeterminada.

MemoryEagerGarbageCollector()

Crea una instancia de MemoryEagerGarbageCollector. Este también es el recolector de elementos no utilizados predeterminado, a menos que se especifique explícitamente lo contrario.

Firma:

export declare function memoryEagerGarbageCollector(): MemoryEagerGarbageCollector;

Muestra:

MemoryEagerGarbageCollector

persistenteMultipleTabManager()

Crea una instancia de PersistentMultipleTabManager.

Firma:

export declare function persistentMultipleTabManager(): PersistentMultipleTabManager;

Muestra:

PersistentMultipleTabManager

serverTimestamp()

Muestra un centinela usado con setDoc() o updateDoc() para incluir una marca de tiempo generada por el servidor en los datos escritos.

Firma:

export declare function serverTimestamp(): FieldValue;

Muestra:

Valor de campo

función(IDdebase_de_datos, ...)

getFirestore(databaseId)

Esta API se proporciona como versión preliminar para los desarrolladores y puede cambiar según los comentarios que recibamos. No uses esta API en un entorno de producción.

Muestra la instancia existente de Firestore con nombre que está asociada con la FirebaseApp predeterminada. Si no existe ninguna instancia, inicializa una nueva con la configuración predeterminada.

Firma:

export declare function getFirestore(databaseId: string): Firestore;

Parámetros

Parámetro Tipo Descripción
IDdebasededatos string Es el nombre de la base de datos.

Muestra:

Firestore

La instancia Firestore denominada de la app predeterminada.

función(elementos, ...)

arrayRemove(elementos)

Muestra un valor especial que se puede usar con setDoc() o que le indica al servidor que quite los elementos especificados de cualquier valor de array que ya exista en el servidor. Todas las instancias de cada elemento especificado se quitarán del array. Si el campo que se modifica aún no es un array, se reemplazará por uno vacío.

Firma:

export declare function arrayRemove(...elements: unknown[]): FieldValue;

Parámetros

Parámetro Tipo Descripción
elementos desconocido Los elementos que se quitarán del array.

Muestra:

Valor de campo

El centinela FieldValue para usar en una llamada a setDoc() o updateDoc()

arrayUnion(elementos)

Muestra un valor especial que se puede usar con setDoc() o updateDoc() que le indica al servidor que una los elementos dados con cualquier valor de array que ya exista en el servidor. Cada elemento especificado que aún no existe en el array se agregará al final. Si el campo que se modifica aún no es un array, se reemplazará por uno que contenga exactamente los elementos especificados.

Firma:

export declare function arrayUnion(...elements: unknown[]): FieldValue;

Parámetros

Parámetro Tipo Descripción
elementos desconocido Elementos que se unirán al array.

Muestra:

Valor de campo

El centinela FieldValue para usar en una llamada a setDoc() o updateDoc().

función(campo, ...)

promedio(campo)

Crea un objeto AggregateField que se pueda usar para calcular el promedio de un campo especificado en un rango de documentos en el conjunto de resultados de una consulta.

Firma:

export declare function average(field: string | FieldPath): AggregateField<number | null>;

Parámetros

Parámetro Tipo Descripción
campo cadena | Ruta de campo Especifica el campo que se debe promediar en el conjunto de resultados.

Muestra:

AggregateField<número | null>

suma(campo)

Crea un objeto AggregateField que se pueda usar para calcular la suma de un campo especificado en un rango de documentos en el conjunto de resultados de una consulta.

Firma:

export declare function sum(field: string | FieldPath): AggregateField<number>;

Parámetros

Parámetro Tipo Descripción
campo cadena | Ruta de campo Especifica el campo que se debe sumar en el conjunto de resultados.

Muestra:

AggregateField<número>

función(fieldPath, ...)

orderBy(fieldPath, addressStr)

Crea una QueryOrderByConstraint que ordena el resultado de la consulta según el campo especificado, opcionalmente en orden descendente en lugar de ascendente.

Firma:

export declare function orderBy(fieldPath: string | FieldPath, directionStr?: OrderByDirection): QueryOrderByConstraint;

Parámetros

Parámetro Tipo Descripción
fieldPath cadena | Ruta de campo El campo según el cual se va a ordenar.
direcciónStr OrderByDirections Indicación opcional para ordenar ("asc" o "desc"). Si no se especifica, el orden será ascendente.

Muestra:

QueryOrderByConstraint

La QueryOrderByConstraint creada.

donde(fieldPath, opStr, valor)

Crea una QueryFieldFilterConstraint que exige que los documentos contengan el campo especificado y que el valor debe cumplir con la restricción de relación proporcionada.

Firma:

export declare function where(fieldPath: string | FieldPath, opStr: WhereFilterOp, value: unknown): QueryFieldFilterConstraint;

Parámetros

Parámetro Tipo Descripción
fieldPath cadena | Ruta de campo La ruta para comparar
Ruta de trabajo WhereFilterOp La cadena de la operación (p. ej., "&lt;", "&lt;=", "==", "&lt;", "&lt;=", "!=").
valor desconocido El valor de la comparación

Muestra:

QueryFieldFilterConstraint

La QueryFieldFilterConstraint creada.

función(Valoresdecampo, ...)

endAt(fieldValues)

Crea una QueryEndAtConstraint que modifica el conjunto de resultados para que finalice en los campos proporcionados en relación con el orden de la consulta. El orden de los valores del campo debe coincidir con el orden de las cláusulas de la consulta.

Firma:

export declare function endAt(...fieldValues: unknown[]): QueryEndAtConstraint;

Parámetros

Parámetro Tipo Descripción
Valores de campo desconocido Los valores de campo en los que se terminará esta consulta, en el orden de la consulta.

Muestra:

QueryEndAtConstraint

Una QueryEndAtConstraint para pasar a query()

endBefore(fieldValues)

Crea una QueryEndAtConstraint que modifica el conjunto de resultados para que finalice antes de los campos proporcionados en relación con el orden de la consulta. El orden de los valores del campo debe coincidir con el orden de las cláusulas de la consulta.

Firma:

export declare function endBefore(...fieldValues: unknown[]): QueryEndAtConstraint;

Parámetros

Parámetro Tipo Descripción
Valores de campo desconocido Los valores de los campos en los que se finalizará esta consulta antes, en el orden de la consulta.

Muestra:

QueryEndAtConstraint

Una QueryEndAtConstraint para pasar a query()

startAfter(fieldValues)

Crea una QueryStartAtConstraint que modifica el conjunto de resultados para que comience después de los campos proporcionados en relación con el orden de la consulta. El orden de los valores del campo debe coincidir con el orden de las cláusulas de la consulta.

Firma:

export declare function startAfter(...fieldValues: unknown[]): QueryStartAtConstraint;

Parámetros

Parámetro Tipo Descripción
Valores de campo desconocido Los valores de campo después de comenzar esta consulta, en el orden de la consulta.

Muestra:

QueryStartAtConstraint

Una QueryStartAtConstraint para pasar a query()

iniciarEn(Valoresdecampo)

Crea una QueryStartAtConstraint que modifica el conjunto de resultados para que comience en los campos proporcionados en relación con el orden de la consulta. El orden de los valores del campo debe coincidir con el orden de las cláusulas de la consulta.

Firma:

export declare function startAt(...fieldValues: unknown[]): QueryStartAtConstraint;

Parámetros

Parámetro Tipo Descripción
Valores de campo desconocido Los valores de los campos en los que se debe iniciar esta consulta, en el orden de la consulta.

Muestra:

QueryStartAtConstraint

Una QueryStartAtConstraint para pasar a query().

función(indexManager, ...)

deleteAllPersistentCacheIndexes(indexManager)

Quita todos los índices de caché persistente.

Ten en cuenta que esta función también borrará los índices generados por setIndexConfiguration(), que dejó de estar disponible.

Firma:

export declare function deleteAllPersistentCacheIndexes(indexManager: PersistentCacheIndexManager): void;

Parámetros

Parámetro Tipo Descripción
indexManager PersistentCacheIndexManager

Muestra:

void

inhabilitarPersistentCacheIndexAutoCreation(indexManager)

Deja de crear índices de caché persistentes de forma automática para la ejecución de consultas locales. Los índices que se crearon llamando a enablePersistentCacheIndexAutoCreation() aún tienen efecto.

Firma:

export declare function disablePersistentCacheIndexAutoCreation(indexManager: PersistentCacheIndexManager): void;

Parámetros

Parámetro Tipo Descripción
indexManager PersistentCacheIndexManager

Muestra:

void

enablePersistentCacheIndexAutoCreation(indexManager)

Permite que el SDK cree índices de caché persistente automáticamente para la ejecución de consultas locales cuando el SDK considere que los índices de caché pueden ayudar a mejorar el rendimiento.

Esta función está inhabilitada de forma predeterminada.

Firma:

export declare function enablePersistentCacheIndexAutoCreation(indexManager: PersistentCacheIndexManager): void;

Parámetros

Parámetro Tipo Descripción
indexManager PersistentCacheIndexManager

Muestra:

void

función(izquierda, ...)

addFieldEqual(izquierda, derecha)

Compara dos instancias de "AggregateField" en busca de igualdad.

Firma:

export declare function aggregateFieldEqual(left: AggregateField<unknown>, right: AggregateField<unknown>): boolean;

Parámetros

Parámetro Tipo Descripción
izquierda AggregateField<desconocido> Compara este AggregateField con right.
derecha AggregateField<desconocido> Compara este AggregateField con left.

Muestra:

booleano

addQuerySnapshotEqual(izquierda, derecha)

Compara dos instancias de AggregateQuerySnapshot para determinar la igualdad.

Dos instancias de AggregateQuerySnapshot se consideran "iguales". si tienen consultas subyacentes que comparan datos iguales y iguales.

Firma:

export declare function aggregateQuerySnapshotEqual<AggregateSpecType extends AggregateSpec, AppModelType, DbModelType extends DocumentData>(left: AggregateQuerySnapshot<AggregateSpecType, AppModelType, DbModelType>, right: AggregateQuerySnapshot<AggregateSpecType, AppModelType, DbModelType>): boolean;

Parámetros

Parámetro Tipo Descripción
izquierda AggregateQuerySnapshot<AggregateSpecType, AppModelType, DBMModelType> El primer AggregateQuerySnapshot que se va a comparar.
derecha AggregateQuerySnapshot<AggregateSpecType, AppModelType, DBMModelType> El segundo AggregateQuerySnapshot que se va a comparar.

Muestra:

booleano

true si los objetos son "iguales", como se definió anteriormente, o false en caso contrario.

queryEqual(izquierda, derecha)

Muestra true si las consultas proporcionadas apuntan a la misma colección y aplican las mismas restricciones.

Firma:

export declare function queryEqual<AppModelType, DbModelType extends DocumentData>(left: Query<AppModelType, DbModelType>, right: Query<AppModelType, DbModelType>): boolean;

Parámetros

Parámetro Tipo Descripción
izquierda Consulta<AppModelType, DrModelType> Un Query para comparar
derecha Consulta<AppModelType, DrModelType> Un Query para comparar

Muestra:

booleano

true si las referencias apuntan a la misma ubicación en la misma base de datos de Firestore.

refEqual(izquierda, derecha)

Muestra true si las referencias proporcionadas son iguales.

Firma:

export declare function refEqual<AppModelType, DbModelType extends DocumentData>(left: DocumentReference<AppModelType, DbModelType> | CollectionReference<AppModelType, DbModelType>, right: DocumentReference<AppModelType, DbModelType> | CollectionReference<AppModelType, DbModelType>): boolean;

Parámetros

Parámetro Tipo Descripción
izquierda DocumentReference<AppModelType, DbModelType> | CollectionReference<AppModelType, DrModelType> Una referencia para comparar.
derecha DocumentReference<AppModelType, DrModelType> | CollectionReference<AppModelType, DrModelType> Una referencia para comparar.

Muestra:

booleano

true si las referencias apuntan a la misma ubicación en la misma base de datos de Firestore.

instantáneaEqual(izquierda, derecha)

Muestra true si las instantáneas proporcionadas son iguales.

Firma:

export declare function snapshotEqual<AppModelType, DbModelType extends DocumentData>(left: DocumentSnapshot<AppModelType, DbModelType> | QuerySnapshot<AppModelType, DbModelType>, right: DocumentSnapshot<AppModelType, DbModelType> | QuerySnapshot<AppModelType, DbModelType>): boolean;

Parámetros

Parámetro Tipo Descripción
izquierda DocumentSnapshot<AppModelType, DrModelType> | QuerySnapshot<AppModelType, DrModelType> Una instantánea para comparar
derecha DocumentSnapshot<AppModelType, DrModelType> | QuerySnapshot<AppModelType, DrModelType> Una instantánea para comparar

Muestra:

booleano

true si las instantáneas son iguales.

función(límite, ...)

límite(límite)

Crea una QueryLimitConstraint que solo muestra los primeros documentos que coinciden.

Firma:

export declare function limit(limit: number): QueryLimitConstraint;

Parámetros

Parámetro Tipo Descripción
límite número La cantidad máxima de elementos que se mostrarán.

Muestra:

QueryLimitConstraint

La QueryLimitConstraint creada.

limitToLast(límite)

Crea una QueryLimitConstraint que solo muestra los últimos documentos que coinciden.

Debes especificar al menos una cláusula orderBy para las consultas limitToLast; de lo contrario, se arrojará una excepción durante la ejecución.

Firma:

export declare function limitToLast(limit: number): QueryLimitConstraint;

Parámetros

Parámetro Tipo Descripción
límite número La cantidad máxima de elementos que se mostrarán.

Muestra:

QueryLimitConstraint

La QueryLimitConstraint creada.

función(logLevel, ...)

setLogLevel(logLevel)

Establece la verbosidad de los registros de Cloud Firestore (depuración, error o silencio).

Firma:

export declare function setLogLevel(logLevel: LogLevel): void;

Parámetros

Parámetro Tipo Descripción
logLevel LogLevel La verbosidad que estableces para los registros de actividad y errores. Puede ser cualquiera de los siguientes valores:
  • debug para el nivel de registro más detallado, principalmente para la depuración.
  • error para registrar solo errores.
  • silent to turn off logging.

Muestra:

void

función(n, ...)

incremento(n)

Muestra un valor especial que se puede usar con setDoc() o updateDoc() que le indica al servidor que incremente el valor actual del campo según el valor especificado.

Si el operando o el valor de campo actual usan la precisión de punto flotante, toda la aritmética sigue la semántica de IEEE 754. Si ambos valores son números enteros, los valores fuera del rango de números seguros de JavaScript (Number.MIN_SAFE_INTEGER a Number.MAX_SAFE_INTEGER) también están sujetos a pérdida de precisión. Además, una vez que el backend de Firestore las procesa, todas las operaciones de números enteros se limitan entre -2^63 y 2^63-1.

Si el valor actual del campo no es del tipo number, o si el campo aún no existe, la transformación establece el campo en el valor dado.

Firma:

export declare function increment(n: number): FieldValue;

Parámetros

Parámetro Tipo Descripción
n número Valor que se va a incrementar

Muestra:

Valor de campo

El centinela FieldValue para usar en una llamada a setDoc() o updateDoc()

función(consulta, ...)

getAggregateFromServer(query, aggregateSpec)

Calcula las agregaciones especificadas en los documentos del conjunto de resultados de la consulta dada sin descargarlos.

Usar esta función para realizar agregaciones es eficiente porque solo se trata de los valores de agregación finales, no de los valores de se descargan los datos. Esta función puede realizar agregaciones de documentos en los casos en que el conjunto de resultados sea extremadamente grande para descargarse por completo (miles de documentos).

El resultado recibido del servidor se presenta, sin alteraciones, sin considerar ningún estado local. Es decir, no se tienen en cuenta los documentos almacenados en la caché local, ni tampoco las modificaciones locales aún no se sincronizan con el servidor. No se usan los resultados descargados anteriormente, si los hay. Cada invocación de esta función necesariamente implica un recorrido de ida y vuelta al servidor.

Firma:

export declare function getAggregateFromServer<AggregateSpecType extends AggregateSpec, AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, aggregateSpec: AggregateSpecType): Promise<AggregateQuerySnapshot<AggregateSpecType, AppModelType, DbModelType>>;

Parámetros

Parámetro Tipo Descripción
consulta Consulta<AppModelType, DrModelType> La consulta cuyo conjunto de resultados se agrega.
Agrega Spec. Tipo de AggregateSpec Un objeto AggregateSpec que especifique los agregados que se realizarán sobre el conjunto de resultados. AggregateSpec especifica los alias de cada agregado, que se pueden usar a fin de recuperar el resultado agregado.

Muestra:

Promesa<AggregateQuerySnapshot<AggregateSpecType, AppModelType, DBMModelType>>

Ejemplo

const aggregateSnapshot = await getAggregateFromServer(query, {
  countOfDocs: count(),
  totalHours: sum('hours'),
  averageScore: average('score')
});

const countOfDocs: number = aggregateSnapshot.data().countOfDocs;
const totalHours: number = aggregateSnapshot.data().totalHours;
const averageScore: number | null = aggregateSnapshot.data().averageScore;

getCountFromServer(consulta)

Calcula el número de documentos en el conjunto de resultados de la consulta dada sin descargarlos realmente.

El uso de esta función para contar los documentos es eficiente porque solo el recuento final, no el de los documentos ya se hayan descargado. Esta función puede contar los documentos en casos en los que el conjunto de resultados es extremadamente grande para descargarse por completo (miles de documentos).

El resultado recibido del servidor se presenta, sin alteraciones, sin considerar ningún estado local. Es decir, no se tienen en cuenta los documentos almacenados en la caché local, ni tampoco las modificaciones locales aún no se sincronizan con el servidor. No se usan los resultados descargados anteriormente, si los hay. Cada invocación de esta función necesariamente implica un recorrido de ida y vuelta al servidor.

Firma:

export declare function getCountFromServer<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>): Promise<AggregateQuerySnapshot<{
    count: AggregateField<number>;
}, AppModelType, DbModelType>>;

Parámetros

Parámetro Tipo Descripción
consulta Consulta<AppModelType, DrModelType> La consulta para la cual se calcula el tamaño del conjunto de resultados.

Muestra:

Promesa<AggregateQuerySnapshot<{ count: AggregateField<number>; }, AppModelType, DrModelType>>.

Una promesa que se resolverá con el recuento el recuento se puede recuperar a partir de snapshot.data().count, donde snapshot es el AggregateQuerySnapshot en el que se resuelve la promesa que se muestra.

getDocs(consulta)

Ejecuta la consulta y muestra los resultados como una QuerySnapshot.

Firma:

export declare function getDocs<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>): Promise<QuerySnapshot<AppModelType, DbModelType>>;

Parámetros

Parámetro Tipo Descripción
consulta Consulta<AppModelType, DrModelType>

Muestra:

Promesa<QuerySnapshot<AppModelType, DrModelType>>

Una Promise que se resolverá con los resultados de la consulta.

getDocsFromCache(consulta)

Ejecuta la consulta y muestra los resultados como una QuerySnapshot de la caché. Muestra un conjunto de resultados vacío si no se almacenan en caché ningún documento que coincida con la consulta.

Firma:

export declare function getDocsFromCache<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>): Promise<QuerySnapshot<AppModelType, DbModelType>>;

Parámetros

Parámetro Tipo Descripción
consulta Consulta<AppModelType, DrModelType>

Muestra:

Promesa<QuerySnapshot<AppModelType, DrModelType>>

Una Promise que se resolverá con los resultados de la consulta.

getDocsFromServer(consulta)

Ejecuta la consulta y muestra los resultados como una QuerySnapshot del servidor. Muestra un error si la red no está disponible.

Firma:

export declare function getDocsFromServer<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>): Promise<QuerySnapshot<AppModelType, DbModelType>>;

Parámetros

Parámetro Tipo Descripción
consulta Consulta<AppModelType, DrModelType>

Muestra:

Promesa<QuerySnapshot<AppModelType, DrModelType>>

Una Promise que se resolverá con los resultados de la consulta.

onSnapshot(consulta, observador)

Adjunta un objeto de escucha para los eventos QuerySnapshot. Puedes pasar devoluciones de llamada individuales onNext y onError o pasar un solo objeto de observador con devoluciones de llamada next y error. El objeto de escucha se puede cancelar llamando a la función que se muestra cuando se llama a onSnapshot.

NOTA: Si bien se puede proporcionar una devolución de llamada onCompletion, nunca se la llamará porque la transmisión de instantáneas no tiene fin.

Firma:

export declare function onSnapshot<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, observer: {
    next?: (snapshot: QuerySnapshot<AppModelType, DbModelType>) => void;
    error?: (error: FirestoreError) => void;
    complete?: () => void;
}): Unsubscribe;

Parámetros

Parámetro Tipo Descripción
consulta Consulta<AppModelType, DrModelType> La consulta que se escuchará.
observador { ¿Siguiente?: (instantánea: QuerySnapshot<AppModelType, DrModelType>) => nulo; ?: (error: FirestoreError) => nulo; completos?: () => nulo; }. Un solo objeto que contiene devoluciones de llamada next y error.

Muestra:

Anular la suscripción

Una función de anulación de suscripción a la que se puede llamar para cancelar el objeto de escucha de instantáneas.

onSnapshot(consulta, opciones, observador)

Adjunta un objeto de escucha para los eventos QuerySnapshot. Puedes pasar devoluciones de llamada individuales onNext y onError o pasar un solo objeto de observador con devoluciones de llamada next y error. El objeto de escucha se puede cancelar llamando a la función que se muestra cuando se llama a onSnapshot.

NOTA: Si bien se puede proporcionar una devolución de llamada onCompletion, nunca se la llamará porque la transmisión de instantáneas no tiene fin.

Firma:

export declare function onSnapshot<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, options: SnapshotListenOptions, observer: {
    next?: (snapshot: QuerySnapshot<AppModelType, DbModelType>) => void;
    error?: (error: FirestoreError) => void;
    complete?: () => void;
}): Unsubscribe;

Parámetros

Parámetro Tipo Descripción
consulta Consulta<AppModelType, DrModelType> La consulta que se escuchará.
opciones SnapshotListenOptions Opciones que controlan el comportamiento de escucha.
observador { ¿Siguiente?: (instantánea: QuerySnapshot<AppModelType, DrModelType>) => nulo; ?: (error: FirestoreError) => nulo; completos?: () => nulo; }. Un solo objeto que contiene devoluciones de llamada next y error.

Muestra:

Anular la suscripción

Una función de anulación de suscripción a la que se puede llamar para cancelar el objeto de escucha de instantáneas.

onSnapshot(query, onNext, onError, onCompletion)

Adjunta un objeto de escucha para los eventos QuerySnapshot. Puedes pasar devoluciones de llamada individuales onNext y onError o pasar un solo objeto de observador con devoluciones de llamada next y error. El objeto de escucha se puede cancelar llamando a la función que se muestra cuando se llama a onSnapshot.

NOTA: Si bien se puede proporcionar una devolución de llamada onCompletion, nunca se la llamará porque la transmisión de instantáneas no tiene fin.

Firma:

export declare function onSnapshot<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, onNext: (snapshot: QuerySnapshot<AppModelType, DbModelType>) => void, onError?: (error: FirestoreError) => void, onCompletion?: () => void): Unsubscribe;

Parámetros

Parámetro Tipo Descripción
consulta Consulta<AppModelType, DrModelType> La consulta que se escuchará.
Siguiente (instantánea: QuerySnapshot<AppModelType, DrModelType>) => anular Una devolución de llamada que se llamará cada vez que un nuevo QuerySnapshot esté disponible.
OnError (error: FirestoreError) => anular Una devolución de llamada que se realizará si la escucha falla o se cancela. No se realizarán más devoluciones de llamada.
onFinalización () => anular Se puede proporcionar, pero no se llamará, ya que las transmisiones nunca terminan.

Muestra:

Anular la suscripción

Una función de anulación de suscripción a la que se puede llamar para cancelar el objeto de escucha de instantáneas.

onSnapshot(consulta, opciones, onNext, onError, onCompletion)

Adjunta un objeto de escucha para los eventos QuerySnapshot. Puedes pasar devoluciones de llamada individuales onNext y onError o pasar un solo objeto de observador con devoluciones de llamada next y error. El objeto de escucha se puede cancelar llamando a la función que se muestra cuando se llama a onSnapshot.

NOTA: Si bien se puede proporcionar una devolución de llamada onCompletion, nunca se la llamará porque la transmisión de instantáneas no tiene fin.

Firma:

export declare function onSnapshot<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, options: SnapshotListenOptions, onNext: (snapshot: QuerySnapshot<AppModelType, DbModelType>) => void, onError?: (error: FirestoreError) => void, onCompletion?: () => void): Unsubscribe;

Parámetros

Parámetro Tipo Descripción
consulta Consulta<AppModelType, DrModelType> La consulta que se escuchará.
opciones SnapshotListenOptions Opciones que controlan el comportamiento de escucha.
Siguiente (instantánea: QuerySnapshot<AppModelType, DrModelType>) => anular Una devolución de llamada que se llamará cada vez que un nuevo elemento QuerySnapshot esté disponible.
OnError (error: FirestoreError) => anular Una devolución de llamada que se realizará si la escucha falla o se cancela. No se realizarán más devoluciones de llamada.
onFinalización () => anular Se puede proporcionar, pero no se llamará, ya que las transmisiones nunca terminan.

Muestra:

Anular la suscripción

Una función de anulación de suscripción a la que se puede llamar para cancelar el objeto de escucha de instantáneas.

query(query, compositeFilter, queryConstraints)

Crea una nueva instancia inmutable de Query que se extiende para incluir también restricciones de consulta adicionales.

Firma:

export declare function query<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, compositeFilter: QueryCompositeFilterConstraint, ...queryConstraints: QueryNonFilterConstraint[]): Query<AppModelType, DbModelType>;

Parámetros

Parámetro Tipo Descripción
consulta Consulta<AppModelType, DrModelType> La instancia Query que se usará como base para las restricciones nuevas.
Filtro compuesto QueryCompositeFilterConstraint La QueryCompositeFilterConstraint que se debe aplicar. Crea QueryCompositeFilterConstraint con and() o or().
queryConstraints QueryNonFilterConstraint[] QueryNonFilterConstraint adicionales que se aplicarán (p.ej., orderBy(), limit()).

Muestra:

Consulta<AppModelType, DrModelType>

Excepciones

si alguna de las restricciones de consulta proporcionadas no se puede combinar con las restricciones existentes o nuevas.

query(query, queryConstraints)

Crea una nueva instancia inmutable de Query que se extiende para incluir también restricciones de consulta adicionales.

Firma:

export declare function query<AppModelType, DbModelType extends DocumentData>(query: Query<AppModelType, DbModelType>, ...queryConstraints: QueryConstraint[]): Query<AppModelType, DbModelType>;

Parámetros

Parámetro Tipo Descripción
consulta Consulta<AppModelType, DrModelType> La instancia Query que se usará como base para las restricciones nuevas.
queryConstraints QueryConstraint[] La lista de QueryConstraint que se debe aplicar.

Muestra:

Consulta<AppModelType, DrModelType>

Excepciones

si alguna de las restricciones de consulta proporcionadas no se puede combinar con las restricciones existentes o nuevas.

función(queryConstraints, ...)

y(queryConstraints)

Crea una QueryCompositeFilterConstraint nueva que es una conjunción de las restricciones de filtro dadas. Un filtro de conjunción incluye un documento si satisface todos los filtros dados.

Firma:

export declare function and(...queryConstraints: QueryFilterConstraint[]): QueryCompositeFilterConstraint;

Parámetros

Parámetro Tipo Descripción
queryConstraints QueryFilterConstraint[] Opcional. La lista de QueryFilterConstraint para las que se realiza una conjunción. Estos deben crearse con llamadas a where(), or() o and().

Muestra:

QueryCompositeFilterConstraint

La QueryCompositeFilterConstraint recién creada.

o(queryConstraints)

Crea una QueryCompositeFilterConstraint nueva que es una disyunción de las restricciones de filtro dadas. Un filtro de disyunción incluye un documento si satisface alguno de los filtros dados.

Firma:

export declare function or(...queryConstraints: QueryFilterConstraint[]): QueryCompositeFilterConstraint;

Parámetros

Parámetro Tipo Descripción
queryConstraints QueryFilterConstraint[] Opcional. La lista de QueryFilterConstraint para realizar una disyunción. Estos deben crearse con llamadas a where(), or() o and().

Muestra:

QueryCompositeFilterConstraint

La QueryCompositeFilterConstraint recién creada.

función(referencia, ...)

addDoc(referencia, datos)

Agrega un documento nuevo a un CollectionReference especificado con los datos proporcionados y asígnale un ID de documento automáticamente.

Firma:

export declare function addDoc<AppModelType, DbModelType extends DocumentData>(reference: CollectionReference<AppModelType, DbModelType>, data: WithFieldValue<AppModelType>): Promise<DocumentReference<AppModelType, DbModelType>>;

Parámetros

Parámetro Tipo Descripción
referencia CollectionReference<AppModelType, DrModelType> Es una referencia a la colección a la que se agregará el documento.
datos WithFieldValue<AppModelType> Es un objeto que contiene los datos del documento nuevo.

Muestra:

Promesa<DocumentReference<AppModelType, DrModelType>>

Un Promise que se resuelve con un DocumentReference que apunta al documento recién creado después de que se escribió en el backend (ten en cuenta que no se resolverá mientras estés sin conexión).

collection(reference, path, pathSegments)

Obtiene una instancia de CollectionReference que hace referencia a una subcolección de reference en la ruta de acceso relativa especificada.

Firma:

export declare function collection<AppModelType, DbModelType extends DocumentData>(reference: CollectionReference<AppModelType, DbModelType>, path: string, ...pathSegments: string[]): CollectionReference<DocumentData, DocumentData>;

Parámetros

Parámetro Tipo Descripción
referencia CollectionReference<AppModelType, DrModelType> Es una referencia a una colección.
ruta string Es una ruta separada por barras a una colección.
Segmentosderuta string[] Segmentos de ruta adicionales que se aplicarán en relación con el primer argumento.

Muestra:

CollectionReference<DocumentData y DocumentData>

La instancia CollectionReference

Excepciones

Si la ruta final tiene una cantidad par de segmentos y no apunta a una colección.

collection(reference, path, pathSegments)

Obtiene una instancia de CollectionReference que hace referencia a una subcolección de reference en la ruta de acceso relativa especificada.

Firma:

export declare function collection<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, path: string, ...pathSegments: string[]): CollectionReference<DocumentData, DocumentData>;

Parámetros

Parámetro Tipo Descripción
referencia DocumentReference<AppModelType, DbModelType> Una referencia a un documento de Firestore.
ruta string Es una ruta separada por barras a una colección.
Segmentosderuta string[] Segmentos de ruta adicionales que se aplicarán en relación con el primer argumento.

Muestra:

CollectionReference<DocumentData y DocumentData>

La instancia CollectionReference

Excepciones

Si la ruta final tiene una cantidad par de segmentos y no apunta a una colección.

deleteDoc(referencia)

Borra el documento al que hace referencia el DocumentReference especificado.

Firma:

export declare function deleteDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>): Promise<void>;

Parámetros

Parámetro Tipo Descripción
referencia DocumentReference<AppModelType, DbModelType> Es una referencia al documento que se borrará.

Muestra:

Promise&lt;void&gt;

Se resuelve una promesa una vez que se borra correctamente el documento del backend (ten en cuenta que no se resolverá mientras estés sin conexión).

doc(referencia, ruta, pathSegments)

Obtiene una instancia de DocumentReference que hace referencia a un documento dentro de reference en la ruta de acceso relativa especificada. Si no se especifica ninguna ruta, se usará un ID único generado automáticamente para el DocumentReference que se muestra.

Firma:

export declare function doc<AppModelType, DbModelType extends DocumentData>(reference: CollectionReference<AppModelType, DbModelType>, path?: string, ...pathSegments: string[]): DocumentReference<AppModelType, DbModelType>;

Parámetros

Parámetro Tipo Descripción
referencia CollectionReference<AppModelType, DrModelType> Es una referencia a una colección.
ruta string Es una ruta de acceso separada por barras a un documento. Se debe omitir para usar IDs generados automáticamente.
Segmentosderuta string[] Segmentos de ruta adicionales que se aplicarán en relación con el primer argumento.

Muestra:

DocumentReference<AppModelType, DbModelType>

La instancia DocumentReference

Excepciones

Si la ruta final tiene un número impar de segmentos y no dirige a un documento.

doc(referencia, ruta, pathSegments)

Obtiene una instancia de DocumentReference que hace referencia a un documento dentro de reference en la ruta de acceso relativa especificada.

Firma:

export declare function doc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, path: string, ...pathSegments: string[]): DocumentReference<DocumentData, DocumentData>;

Parámetros

Parámetro Tipo Descripción
referencia DocumentReference<AppModelType, DbModelType> Una referencia a un documento de Firestore.
ruta string Es una ruta de acceso separada por barras a un documento.
Segmentosderuta string[] Segmentos de ruta adicionales que se aplicarán en relación con el primer argumento.

Muestra:

DocumentReference<DocumentData y DocumentData>

La instancia DocumentReference

Excepciones

Si la ruta final tiene un número impar de segmentos y no dirige a un documento.

getDoc(referencia)

Lee el documento al que hace referencia este DocumentReference.

Firma:

export declare function getDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>): Promise<DocumentSnapshot<AppModelType, DbModelType>>;

Parámetros

Parámetro Tipo Descripción
referencia DocumentReference<AppModelType, DbModelType> La referencia del documento que se recuperará.

Muestra:

Promesa<DocumentSnapshot<AppModelType, DrModelType>>

Se resuelve una promesa con una DocumentSnapshot que incluye el contenido del documento actual.

getDocFromCache(referencia)

Lee el documento al que hace referencia este DocumentReference desde la memoria caché. Muestra un error si el documento no está almacenado en caché actualmente.

Firma:

export declare function getDocFromCache<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>): Promise<DocumentSnapshot<AppModelType, DbModelType>>;

Parámetros

Parámetro Tipo Descripción
referencia DocumentReference<AppModelType, DbModelType>

Muestra:

Promesa<DocumentSnapshot<AppModelType, DrModelType>>

Una Promise se resuelve con una DocumentSnapshot que contiene el contenido del documento actual.

getDocFromServer(referencia)

Lee el documento al que hace referencia este DocumentReference desde el servidor. Muestra un error si la red no está disponible.

Firma:

export declare function getDocFromServer<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>): Promise<DocumentSnapshot<AppModelType, DbModelType>>;

Parámetros

Parámetro Tipo Descripción
referencia DocumentReference<AppModelType, DbModelType>

Muestra:

Promesa<DocumentSnapshot<AppModelType, DrModelType>>

Una Promise se resuelve con una DocumentSnapshot que contiene el contenido del documento actual.

onSnapshot(referencia, observador)

Adjunta un objeto de escucha para los eventos DocumentSnapshot. Puedes pasar devoluciones de llamada individuales onNext y onError o pasar un solo objeto de observador con devoluciones de llamada next y error.

NOTA: Si bien se puede proporcionar una devolución de llamada onCompletion, nunca se la llamará porque la transmisión de instantáneas no tiene fin.

Firma:

export declare function onSnapshot<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, observer: {
    next?: (snapshot: DocumentSnapshot<AppModelType, DbModelType>) => void;
    error?: (error: FirestoreError) => void;
    complete?: () => void;
}): Unsubscribe;

Parámetros

Parámetro Tipo Descripción
referencia DocumentReference<AppModelType, DbModelType> Es una referencia al documento que se debe escuchar.
observador { ¿Siguiente?: (instantánea: DocumentSnapshot<AppModelType, DrModelType>) => nulo; ?: (error: FirestoreError) => nulo; completos?: () => nulo; }. Un solo objeto que contiene devoluciones de llamada next y error.

Muestra:

Anular la suscripción

Una función de anulación de suscripción a la que se puede llamar para cancelar el objeto de escucha de instantáneas.

onSnapshot(referencia, opciones, observador)

Adjunta un objeto de escucha para los eventos DocumentSnapshot. Puedes pasar devoluciones de llamada individuales onNext y onError o pasar un solo objeto de observador con devoluciones de llamada next y error.

NOTA: Si bien se puede proporcionar una devolución de llamada onCompletion, nunca se la llamará porque la transmisión de instantáneas no tiene fin.

Firma:

export declare function onSnapshot<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, options: SnapshotListenOptions, observer: {
    next?: (snapshot: DocumentSnapshot<AppModelType, DbModelType>) => void;
    error?: (error: FirestoreError) => void;
    complete?: () => void;
}): Unsubscribe;

Parámetros

Parámetro Tipo Descripción
referencia DocumentReference<AppModelType, DbModelType> Es una referencia al documento que se debe escuchar.
opciones SnapshotListenOptions Opciones que controlan el comportamiento de escucha.
observador { ¿Siguiente?: (instantánea: DocumentSnapshot<AppModelType, DrModelType>) => nulo; ?: (error: FirestoreError) => nulo; completos?: () => nulo; }. Un solo objeto que contiene devoluciones de llamada next y error.

Muestra:

Anular la suscripción

Una función de anulación de suscripción a la que se puede llamar para cancelar el objeto de escucha de instantáneas.

onSnapshot(referencia, onNext, onError, onFinalización)

Adjunta un objeto de escucha para los eventos DocumentSnapshot. Puedes pasar devoluciones de llamada individuales onNext y onError o pasar un solo objeto de observador con devoluciones de llamada next y error.

NOTA: Si bien se puede proporcionar una devolución de llamada onCompletion, nunca se la llamará porque la transmisión de instantáneas no tiene fin.

Firma:

export declare function onSnapshot<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, onNext: (snapshot: DocumentSnapshot<AppModelType, DbModelType>) => void, onError?: (error: FirestoreError) => void, onCompletion?: () => void): Unsubscribe;

Parámetros

Parámetro Tipo Descripción
referencia DocumentReference<AppModelType, DbModelType> Es una referencia al documento que se debe escuchar.
Siguiente (instantánea: DocumentSnapshot<AppModelType, DrModelType>) => anular Una devolución de llamada que se llamará cada vez que un nuevo elemento DocumentSnapshot esté disponible.
OnError (error: FirestoreError) => anular Una devolución de llamada que se realizará si la escucha falla o se cancela. No se realizarán más devoluciones de llamada.
onFinalización () => anular Se puede proporcionar, pero no se llamará, ya que las transmisiones nunca terminan.

Muestra:

Anular la suscripción

Una función de anulación de suscripción a la que se puede llamar para cancelar el objeto de escucha de instantáneas.

onSnapshot(referencia, opciones, onNext, onError, onCompletion)

Adjunta un objeto de escucha para los eventos DocumentSnapshot. Puedes pasar devoluciones de llamada individuales onNext y onError o pasar un solo objeto de observador con devoluciones de llamada next y error.

NOTA: Si bien se puede proporcionar una devolución de llamada onCompletion, nunca se la llamará porque la transmisión de instantáneas no tiene fin.

Firma:

export declare function onSnapshot<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, options: SnapshotListenOptions, onNext: (snapshot: DocumentSnapshot<AppModelType, DbModelType>) => void, onError?: (error: FirestoreError) => void, onCompletion?: () => void): Unsubscribe;

Parámetros

Parámetro Tipo Descripción
referencia DocumentReference<AppModelType, DbModelType> Es una referencia al documento que se debe escuchar.
opciones SnapshotListenOptions Opciones que controlan el comportamiento de escucha.
Siguiente (instantánea: DocumentSnapshot<AppModelType, DrModelType>) => anular Una devolución de llamada que se llamará cada vez que un nuevo elemento DocumentSnapshot esté disponible.
OnError (error: FirestoreError) => anular Una devolución de llamada que se realizará si la escucha falla o se cancela. No se realizarán más devoluciones de llamada.
onFinalización () => anular Se puede proporcionar, pero no se llamará, ya que las transmisiones nunca terminan.

Muestra:

Anular la suscripción

Una función de anulación de suscripción a la que se puede llamar para cancelar el objeto de escucha de instantáneas.

setDoc(referencia, datos)

Escribe en el documento al que hace referencia este DocumentReference. Si el documento aún no existe, se creará.

Firma:

export declare function setDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, data: WithFieldValue<AppModelType>): Promise<void>;

Parámetros

Parámetro Tipo Descripción
referencia DocumentReference<AppModelType, DbModelType> Es una referencia al documento que se debe escribir.
datos WithFieldValue<AppModelType> Un mapa de los campos y valores del documento.

Muestra:

Promise&lt;void&gt;

Se resuelve un Promise una vez que los datos se escribieron de forma correcta en el backend (ten en cuenta que no se resolverá mientras estés sin conexión).

setDoc(referencia, datos, opciones)

Escribe en el documento al que hace referencia el DocumentReference especificado. Si el documento aún no existe, se creará. Si proporcionas merge o mergeFields, los datos proporcionados se pueden combinar en un documento existente.

Firma:

export declare function setDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, data: PartialWithFieldValue<AppModelType>, options: SetOptions): Promise<void>;

Parámetros

Parámetro Tipo Descripción
referencia DocumentReference<AppModelType, DbModelType> Es una referencia al documento que se debe escribir.
datos PartialWithFieldValue<AppModelType> Un mapa de los campos y valores del documento.
opciones SetOptions Un objeto para configurar el comportamiento establecido.

Muestra:

Promise&lt;void&gt;

Se resuelve una promesa una vez que los datos se escribieron de forma correcta en el backend (ten en cuenta que no se resolverá mientras estés sin conexión).

updateDoc(referencia, datos)

Actualiza los campos del documento a los que hace referencia el DocumentReference especificado. La actualización fallará si se aplica a un documento que no existe.

Firma:

export declare function updateDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, data: UpdateData<DbModelType>): Promise<void>;

Parámetros

Parámetro Tipo Descripción
referencia DocumentReference<AppModelType, DbModelType> Es una referencia al documento que se actualizará.
datos UpdateData<DbModelType> Un objeto que contiene los campos y valores con los que se actualiza el documento. Los campos pueden contener puntos que hagan referencia a campos anidados dentro del documento.

Muestra:

Promise&lt;void&gt;

Se resuelve un Promise una vez que los datos se escribieron de forma correcta en el backend (ten en cuenta que no se resolverá mientras estés sin conexión).

updateDoc(referencia, campo, valor, moreFieldsAndValues)

Actualiza los campos del documento al que hace referencia el DocumentReference especificado. La actualización fallará si se aplica a un documento que no existe.

Los campos anidados se pueden actualizar proporcionando strings de rutas de campos separadas por puntos o con objetos FieldPath.

Firma:

export declare function updateDoc<AppModelType, DbModelType extends DocumentData>(reference: DocumentReference<AppModelType, DbModelType>, field: string | FieldPath, value: unknown, ...moreFieldsAndValues: unknown[]): Promise<void>;

Parámetros

Parámetro Tipo Descripción
referencia DocumentReference<AppModelType, DbModelType> Es una referencia al documento que se actualizará.
campo cadena | Ruta de campo El primer campo que se actualizará.
valor desconocido El primer valor.
MásCamposYValores desconocido Pares clave-valor adicionales.

Muestra:

Promise&lt;void&gt;

Se resuelve un Promise una vez que los datos se escribieron de forma correcta en el backend (ten en cuenta que no se resolverá mientras estés sin conexión).

función(configuración, ...)

MemoryLocalCache(configuración)

Crea una instancia de MemoryLocalCache. Se puede configurar la instancia en FirestoreSettings.cache para indicarle al SDK qué capa de caché usar.

Firma:

export declare function memoryLocalCache(settings?: MemoryCacheSettings): MemoryLocalCache;

Parámetros

Parámetro Tipo Descripción
configuración Configuración de MemoryCache

Muestra:

MemoryLocalCache

MemoryLruGarbageCollector(configuración)

Crea una instancia de MemoryLruGarbageCollector.

Se puede especificar un tamaño de destino como parte del parámetro de configuración. El recopilador comenzará a borrar los documentos una vez que el tamaño de la caché supere el tamaño determinado. El tamaño predeterminado de la caché es de 40 MB (40 * 1,024 * 1,024 bytes).

Firma:

export declare function memoryLruGarbageCollector(settings?: {
    cacheSizeBytes?: number;
}): MemoryLruGarbageCollector;

Parámetros

Parámetro Tipo Descripción
configuración { cacheSizeBytes?: número; }.

Muestra:

MemoryLruGarbageCollector

persistenteLocalCache(configuración)

Crea una instancia de PersistentLocalCache. Se puede configurar la instancia en FirestoreSettings.cache para indicarle al SDK qué capa de caché usar.

No se puede usar la caché persistente en un entorno de Node.js.

Firma:

export declare function persistentLocalCache(settings?: PersistentCacheSettings): PersistentLocalCache;

Parámetros

Parámetro Tipo Descripción
configuración PersistentCacheSettings

Muestra:

PersistentLocalCache

persistenteSingleTabManager(configuración)

Crea una instancia de PersistentSingleTabManager.

Firma:

export declare function persistentSingleTabManager(settings: PersistentSingleTabManagerSettings | undefined): PersistentSingleTabManager;

Parámetros

Parámetro Tipo Descripción
configuración PersistentSingleTabManagerSettings | indefinido Configura el administrador de pestañas creado.

Muestra:

PersistentSingleTabManager

función(instantánea, ...)

endAt(instantánea)

Crea una QueryEndAtConstraint que modifica el conjunto de resultados para que finalice en el documento proporcionado (inclusive). La posición de finalización es relativa al orden de la consulta. El documento debe contener todos los campos proporcionados en el campo orderBy de la consulta.

Firma:

export declare function endAt<AppModelType, DbModelType extends DocumentData>(snapshot: DocumentSnapshot<AppModelType, DbModelType>): QueryEndAtConstraint;

Parámetros

Parámetro Tipo Descripción
instantánea DocumentSnapshot<AppModelType, DrModelType> La instantánea del documento en el que se terminará.

Muestra:

QueryEndAtConstraint

Una QueryEndAtConstraint para pasar a query()

endBefore(instantánea)

Crea una QueryEndAtConstraint que modifica el conjunto de resultados para que finalice antes que el documento proporcionado (exclusivo). La posición final es relativa al orden de la consulta. El documento debe contener todos los campos proporcionados en el campo orderBy de la consulta.

Firma:

export declare function endBefore<AppModelType, DbModelType extends DocumentData>(snapshot: DocumentSnapshot<AppModelType, DbModelType>): QueryEndAtConstraint;

Parámetros

Parámetro Tipo Descripción
instantánea DocumentSnapshot<AppModelType, DrModelType> La instantánea del documento que finalizará antes.

Muestra:

QueryEndAtConstraint

Una QueryEndAtConstraint para pasar a query()

startAfter(instantánea)

Crea una QueryStartAtConstraint que modifica el conjunto de resultados para que comience después del documento proporcionado (exclusivo). La posición inicial es relativa al orden de la consulta. El documento debe contener todos los campos proporcionados en el campo orderBy de la consulta.

Firma:

export declare function startAfter<AppModelType, DbModelType extends DocumentData>(snapshot: DocumentSnapshot<AppModelType, DbModelType>): QueryStartAtConstraint;

Parámetros

Parámetro Tipo Descripción
instantánea DocumentSnapshot<AppModelType, DrModelType> La instantánea del documento que comienza después.

Muestra:

QueryStartAtConstraint

Una QueryStartAtConstraint para pasar a query()

startAt(instantánea)

Crea una QueryStartAtConstraint que modifica el conjunto de resultados para que comience en el documento proporcionado (inclusive). La posición inicial es relativa al orden de la consulta. El documento debe contener todos los campos proporcionados en las orderBy de esta consulta.

Firma:

export declare function startAt<AppModelType, DbModelType extends DocumentData>(snapshot: DocumentSnapshot<AppModelType, DbModelType>): QueryStartAtConstraint;

Parámetros

Parámetro Tipo Descripción
instantánea DocumentSnapshot<AppModelType, DrModelType> La instantánea del documento en el que se va a comenzar.

Muestra:

QueryStartAtConstraint

Una QueryStartAtConstraint para pasar a query().

CACHE_SIZE_ILIMITADO

Constante para indicar que se debe inhabilitar la recolección de elementos no utilizados de LRU. Establece este valor como el cacheSizeBytes en la configuración que se pasó a la instancia de Firestore.

Firma:

CACHE_SIZE_UNLIMITED = -1

AñadirPrefixToKeys

Devuelve un mapa nuevo donde cada tecla tiene el prefijo con la tecla externa agregada a un punto.

Firma:

export declare type AddPrefixToKeys<Prefix extends string, T extends Record<string, unknown>> = {
    [K in keyof T & string as `${Prefix}.${K}`]+?: string extends K ? any : T[K];
};

Tipo de campo agregado

La unión de todos los tipos AggregateField compatibles con Firestore.

Firma:

export declare type AggregateFieldType = ReturnType<typeof sum> | ReturnType<typeof average> | ReturnType<typeof count>;

AggregateSpecData

Un tipo cuyas claves se toman de un AggregateSpec y cuyos valores son el resultado de la agregación que realiza el AggregateField correspondiente del AggregateSpec de entrada.

Firma:

export declare type AggregateSpecData<T extends AggregateSpec> = {
    [P in keyof T]: T[P] extends AggregateField<infer U> ? U : never;
};

Tipo de agregación

Tipo de unión que representa el tipo de agregación que se realizará.

Firma:

export declare type AggregateType = 'count' | 'avg' | 'sum';

Camposdeactualizaciónsecundarios

Es una ayuda para calcular los campos anidados para un tipo T1 determinado. Esto es necesario para distribuir tipos de unión como undefined | {...} (sucede con props opcionales) o {a: A} | {b: B}.

En este caso de uso, V se usa para distribuir los tipos de unión de T[K] en Record, ya que T[K] se evalúa como una expresión y no se distribuye.

Consultar https://www.typescriptlang.org/docs/handbook/advanced-types.html#distributive-conditional-types

Firma:

export declare type ChildUpdateFields<K extends string, V> = V extends Record<string, unknown> ? AddPrefixToKeys<K, UpdateData<V>> : never;

DocumentChangeType

El tipo de DocumentChange se puede "agregar", "quitar" o "modificar".

Firma:

export declare type DocumentChangeType = 'added' | 'removed' | 'modified';

FirestoreErrorCode

Es el conjunto de códigos de estado de Firestore. Los códigos son los mismos que los que expone gRPC aquí: https://github.com/grpc/grpc/blob/master/doc/statuscodes.md

Valores posibles: - "cancelled": La operación se canceló (por lo general, la cancela el emisor). - “desconocido”: un error desconocido o de un dominio de errores diferente. - 'invalid-argument': El cliente especificó un argumento no válido. Ten en cuenta que esto es diferente de “con error de condición previa”. "argumento no válido" indica los argumentos que son problemáticos independientemente del estado del sistema (p.ej., un nombre de campo no válido). - "deadline-exceeded": El plazo venció antes de que la operación se pudiera completar. En el caso de las operaciones que cambian el estado del sistema, es probable que se muestre este error incluso si la operación se completó correctamente. Por ejemplo, una respuesta correcta desde un servidor podría haberse retrasado lo suficiente como para que el plazo venciera. - “not-found”: no se encontró algún documento solicitado. - 'ya existe': Algún documento que intentamos crear ya existe. - “permission-denied”: El emisor no tiene permiso para ejecutar la operación especificada. - "resource-agotado": se agotaron algunos recursos, tal vez una cuota por usuario, o tal vez se agotó el espacio de todo el sistema de archivos. - 'failed-precondition': la operación se rechazó porque el sistema no se encuentra en un estado necesario para la ejecución de la operación. - “aborted”: la operación se anuló, por lo general debido a un problema de simultaneidad, como la anulación de transacciones, entre otros. - “fuera de rango”: la operación se intentó fuera del rango válido. - "unimplemented": La operación no se ha implementado, no se admite o no está habilitada. - "internal": errores internos. Indica que algunas variantes que espera el sistema subyacente no funcionan. Si ves uno de estos errores, significa que hay un problema grave. - "no disponible": el servicio no está disponible en este momento. Lo más probable es que esta sea una condición transitoria y se pueda corregir si vuelves a intentar con una retirada. - “data-loss”: pérdida o corrupción de datos irrecuperables. - "unauthenticated": La solicitud no tiene credenciales de autenticación válidas para la operación.

Firma:

export declare type FirestoreErrorCode = 'cancelled' | 'unknown' | 'invalid-argument' | 'deadline-exceeded' | 'not-found' | 'already-exists' | 'permission-denied' | 'resource-exhausted' | 'failed-precondition' | 'aborted' | 'out-of-range' | 'unimplemented' | 'internal' | 'unavailable' | 'data-loss' | 'unauthenticated';

FirestoreLocalCache

Tipo de unión de todas las capas de caché del SDK compatibles.

Firma:

export declare type FirestoreLocalCache = MemoryLocalCache | PersistentLocalCache;

EscuchaFuente

Describe la fuente que escucha una consulta.

Configúralo en default para escuchar los cambios en la caché y en el servidor. Configúralo en cache para escuchar los cambios solo en la caché.

Firma:

export declare type ListenSource = 'default' | 'cache';

Recolector de residuos de memoria

Tipo de unión de todos los recolectores de elementos no utilizados para la caché local de la memoria.

Firma:

export declare type MemoryGarbageCollector = MemoryEagerGarbageCollector | MemoryLruGarbageCollector;

NestedUpdateFields

Para cada campo (p.ej., 'bar'), busca todas las claves anidadas (p.ej., {'bar.baz': T1, 'bar.qux': T2}). Se pueden cruzar entre sí para crear un único mapa con todas las claves posibles marcadas como opcionales.

Firma:

export declare type NestedUpdateFields<T extends Record<string, unknown>> = UnionToIntersection<{
    [K in keyof T & string]: ChildUpdateFields<K, T[K]>;
}[keyof T & string]>;

Orden por dirección

La dirección de una cláusula orderBy() se especifica como "desc". o "asc" (ascendente o descendente).

Firma:

export declare type OrderByDirection = 'desc' | 'asc';

Parcialconvalordelcampo

Es similar a Partial<T> de TypeScript, pero permite que se omitan los campos anidados y que se pasen FieldValues como valores de propiedad.

Firma:

export declare type PartialWithFieldValue<T> = Partial<T> | (T extends Primitive ? T : T extends {} ? {
    [K in keyof T]?: PartialWithFieldValue<T[K]> | FieldValue;
} : never);

PersistentTabManager

Una unión de todos los administradores de pestañas disponibles.

Firma:

export declare type PersistentTabManager = PersistentSingleTabManager | PersistentMultipleTabManager;

Básico

Tipos primitivos.

Firma:

export declare type Primitive = string | number | boolean | undefined | null;

Tipo de restricción de consultas

Describe las diferentes restricciones de consultas disponibles en este SDK.

Firma:

export declare type QueryConstraintType = 'where' | 'orderBy' | 'limit' | 'limitToLast' | 'startAt' | 'startAfter' | 'endAt' | 'endBefore';

QueryFilterConstraint

QueryFilterConstraint es un tipo de unión auxiliar que representa QueryFieldFilterConstraint y QueryCompositeFilterConstraint.

Firma:

export declare type QueryFilterConstraint = QueryFieldFilterConstraint | QueryCompositeFilterConstraint;

QueryNonFilterConstraint

QueryNonFilterConstraint es un tipo de unión auxiliar que representa QueryConstraints que se usa para ordenar o limitar el conjunto de documentos, pero que no filtra de forma explícita en un campo de documento. QueryNonFilterConstraintLos elementos se crean invocando orderBy(), startAt(), startAfter(), endBefore(), endAt(), limit() o limitToLast() y, luego, se pueden pasar a query() para crear una nueva instancia de consulta que también contenga la QueryConstraint.

Firma:

export declare type QueryNonFilterConstraint = QueryOrderByConstraint | QueryLimitConstraint | QueryStartAtConstraint | QueryEndAtConstraint;

SetOptions

Un objeto de opciones que configura el comportamiento de setDoc() y las llamadas. Estas llamadas se pueden configurar para realizar combinaciones detalladas en lugar de reemplazar los documentos de destino por completo proporcionando un SetOptions con merge: true.

Firma:

export declare type SetOptions = {
    readonly merge?: boolean;
} | {
    readonly mergeFields?: Array<string | FieldPath>;
};

Estado de tarea

Representa el estado de las tareas de carga de paquetes.

Ambos “Error” y “Listo” Se están hundiendo: la tarea se anulará o se completará y no habrá más actualizaciones después de que se informen.

Firma:

export declare type TaskState = 'Error' | 'Running' | 'Success';

Unión aIntersección

Con un tipo de unión U = T1 | T2 | ..., muestra un tipo de unión (T1 & T2 & ...) con intersección.

Usa tipos condicionales distributivos e inferencia a partir de tipos condicionales. Esto funciona porque varios candidatos para la misma variable de tipo en posiciones contra variantes provocan que se infiera un tipo de intersección. https://www.typescriptlang.org/docs/handbook/advanced-types.html#type-inference-in-conditional-types https://stackoverflow.com/questions/50374908/transform-union-type-to-intersection-type

Firma:

export declare type UnionToIntersection<U> = (U extends unknown ? (k: U) => void : never) extends (k: infer I) => void ? I : never;

UpdateData

Actualiza los datos (para usarlos con updateDoc()) que contengan rutas de campos (p.ej., "foo" o "foo.baz") asignadas a valores. Los campos que contienen puntos hacen referencia a campos anidados dentro del documento. FieldValues se pueden pasar como valores de propiedad.

Firma:

export declare type UpdateData<T> = T extends Primitive ? T : T extends {} ? {
    [K in keyof T]?: UpdateData<T[K]> | FieldValue;
} & NestedUpdateFields<T> : Partial<T>;

DondeFilterOp

Las condiciones del filtro en una cláusula where() se especifican con las cadenas “&lt;', '&lt;=', '==', '!=', '&gt;=', '&gt;', 'array-contains', 'in', 'array-contains-any' y 'not-in'.

Firma:

export declare type WhereFilterOp = '<' | '<=' | '==' | '!=' | '>=' | '>' | 'array-contains' | 'in' | 'array-contains-any' | 'not-in';

WithFieldValue

Permite que se pasen FieldValues como un valor de propiedad mientras se mantiene la seguridad de tipo.

Firma:

export declare type WithFieldValue<T> = T | (T extends Primitive ? T : T extends {} ? {
    [K in keyof T]: WithFieldValue<T[K]> | FieldValue;
} : never);