@firebase/firestore/lite

Funções

Função Descrição
function(app, ...) (link em inglês)
getFirestore(app) Retorna a instância padrão do Firestore associada ao FirebaseApp fornecido. Se não houver nenhuma instância, uma nova instância será inicializada com as configurações padrão.
getFirestore(app, databaseId) (BETA) Retorna a instância do Firestore associada ao FirebaseApp fornecido. Se não houver nenhuma instância, uma nova instância será inicializada com as configurações padrão.
InitializeFirestore(app, settings) Inicializa uma nova instância do Cloud Firestore com as configurações fornecidas. Só pode ser chamada antes de qualquer outra função, incluindo getFirestore(). Se as configurações personalizadas estiverem vazias, essa função será equivalente a chamar getFirestore().
inicializarFirestore(app, configurações, databaseId) (BETA) Inicializa uma nova instância do Cloud Firestore com as configurações fornecidas. Só pode ser chamada antes de qualquer outra função, incluindo getFirestore(). Se as configurações personalizadas estiverem vazias, essa função será equivalente a chamar getFirestore().
function(firestore, ...)
collection(firestore, path, pathSegments) Recebe uma instância CollectionReference que se refere à coleção no caminho absoluto especificado.
collectionGroup(firestore, collectionsId) Cria e retorna uma nova instância de Query que inclui todos os documentos no banco de dados contidos em uma coleção ou subcoleção com o collectionId especificado.
connectFirestoreEmulator(firestore, host, porta, opções) Modifique esta instância para se comunicar com o emulador do Cloud Firestore.Observação: isso precisa ser chamado antes que a instância seja usada para fazer qualquer operação.
doc(firestore, path, pathSegments) Recebe uma instância DocumentReference que se refere ao documento no caminho absoluto especificado.
runTransaction(firestore, updateFunction, options) Executa o updateFunction especificado e tenta confirmar as alterações aplicadas dentro da transação. Se alguma leitura de documento dentro da transação tiver sido alterada, o Cloud Firestore tentará novamente o updateFunction. Se houver falha na confirmação após cinco tentativas, a transação vai falhar.O número máximo de gravações permitidas em uma única transação é 500.
terminate(firestore) Encerra a instância de Firestore fornecida.Depois de chamar terminate(), apenas as funções clearIndexedDbPersistence() podem ser usadas. Qualquer outra função vai gerar uma FirestoreError. O encerramento não cancela gravações pendentes, e as promessas que aguardam uma resposta do servidor não são resolvidas.Para reiniciar após o encerramento, crie uma nova instância de Firestore com getFirestore().Observação: em circunstâncias normais, não é necessário chamar terminate(). Essa função é útil somente quando você quer forçar a instância a liberar todos os recursos dela ou em combinação com clearIndexedDbPersistent() para garantir que todo o estado local seja destruído entre as execuções de teste.
writeBatch(firestore) Cria um lote de gravação, usado para realizar várias gravações como uma única operação atômica. O número máximo de gravações permitidas em um único WriteBatch é 500.O resultado dessas gravações só será refletido em leituras de documentos que ocorrerem após a resolução da promessa retornada. Se o cliente estiver off-line, a gravação falhará. Se você quiser ver modificações locais ou gravações em buffer até que o cliente esteja on-line, use o SDK completo do Firestore.
function().
count(). Criar um objeto AggregateField que pode ser usado para calcular a contagem de documentos no conjunto de resultados de uma consulta.
deleteField(). Retorna uma sentinela para uso com updateDoc() ou setDoc() com {merge: true} para marcar um campo para exclusão.
documentId() (link em inglês) Retorna uma sentinela especial FieldPath para se referir ao ID de um documento. Pode ser usada em consultas para classificar ou filtrar pelo ID do documento.
getFirestore() Retorna a instância padrão do Firestore associada ao FirebaseApp padrão. Se não houver nenhuma instância, uma nova instância será inicializada com as configurações padrão.
serverTimestamp(). Retorna uma sentinela usada com setDoc() ou updateDoc() para incluir um carimbo de data/hora gerado pelo servidor nos dados gravados.
function(databaseId, ...)
getFirestore(databaseId) (BETA) Retorna a instância do Firestore associada ao FirebaseApp padrão. Se não houver nenhuma instância, uma nova instância será inicializada com as configurações padrão.
função(elementos, ...)
arrayRemove(elements) Retorna um valor especial que pode ser usado com setDoc() ou que instrui o servidor a remover os elementos fornecidos de qualquer valor da matriz que já exista no servidor. Todas as instâncias de cada elemento especificado serão removidas da matriz. Se o campo que está sendo modificado ainda não for uma matriz, ele será substituído por uma matriz vazia.
arrayUnion(elementos) Retorna um valor especial que pode ser usado com setDoc() ou updateDoc(), que diz ao servidor para unir os elementos fornecidos com qualquer valor de matriz que já exista no servidor. Cada elemento especificado que ainda não existe na matriz será adicionado no final. Se o campo que está sendo modificado ainda não for uma matriz, ele será substituído por uma matriz que contenha exatamente os elementos especificados.
function(field, ...)
average(campo) Cria um objeto AggregateField que pode ser usado para calcular a média de um campo especificado em um intervalo de documentos no conjunto de resultados de uma consulta.
sum(field). Criar um objeto AggregateField que pode ser usado para calcular a soma de um campo especificado em um intervalo de documentos no conjunto de resultados de uma consulta.
function(fieldPath, ...) (link em inglês)
orderBy(fieldPath, rightStr) Cria uma QueryOrderByConstraint que classifica o resultado da consulta pelo campo especificado, opcionalmente em ordem decrescente em vez de crescente.Observação: os documentos que não contiverem o campo especificado não estarão presentes no resultado da consulta.
where(fieldPath, opStr, value) (link em inglês) Cria um QueryFieldFilterConstraint que impõe que os documentos contenham o campo especificado e que o valor atenda à restrição de relação fornecida.
function(fieldValues, ...)
endAt(fieldValues) (link em inglês) Cria uma QueryEndAtConstraint que modifica o conjunto de resultados para terminar nos campos fornecidos em relação à ordem da consulta. A ordem dos valores dos campos precisa corresponder à ordem da ordem por cláusulas da consulta.
endBefore(fieldValues) Cria uma QueryEndAtConstraint que modifica o conjunto de resultados para terminar antes dos campos fornecidos em relação à ordem da consulta. A ordem dos valores dos campos precisa corresponder à ordem da ordem por cláusulas da consulta.
startAfter(fieldValues) (link em inglês) Cria uma QueryStartAtConstraint que modifica o conjunto de resultados para começar depois dos campos fornecidos em relação à ordem da consulta. A ordem dos valores dos campos precisa corresponder à ordem da ordem por cláusulas da consulta.
startAt(fieldValues) (link em inglês) Cria uma QueryStartAtConstraint que modifica o conjunto de resultados para começar nos campos fornecidos em relação à ordem da consulta. A ordem dos valores dos campos precisa corresponder à ordem da ordem por cláusulas da consulta.
function(left; ...)
aggregateFieldEqual(left, right) Compara duas instâncias de "AggregateField" para verificar a igualdade.
aggregateQuerySnapshotEqual(esquerda, direita) Compara duas instâncias AggregateQuerySnapshot para verificar a igualdade.Duas instâncias de AggregateQuerySnapshot são consideradas "iguais" se eles têm consultas subjacentes que comparam dados iguais e iguais.
queryEqual(left, right) Retorna true se as consultas fornecidas apontarem para a mesma coleção e aplicarem as mesmas restrições.
refEqual(left, right) Retorna "true" se as referências fornecidas são iguais.
snapshotEqual(left, right) Retorna true se os snapshots fornecidos são iguais.
function(limit, ...)
limit(limit) (link em inglês) Cria um QueryLimitConstraint que retorna somente os primeiros documentos correspondentes.
limitToLast(limit) (link em inglês) Cria uma QueryLimitConstraint que retorna apenas os últimos documentos correspondentes.É preciso especificar pelo menos uma cláusula orderBy para consultas limitToLast. Caso contrário, uma exceção será gerada durante a execução.
function(logLevel, ...)
setLogLevel(logLevel) (link em inglês) Define o nível de detalhes dos registros do Cloud Firestore (depuração, erro ou silencioso).
function(n; ...)
increment(n) (link em inglês) Retorna um valor especial que pode ser usado com setDoc() ou updateDoc(), que diz ao servidor para incrementar o valor atual do campo pelo valor fornecido.Se o operando ou o valor do campo atual usar a precisão de ponto flutuante, toda a aritmética seguirá a semântica IEEE 754. Se os dois valores forem números inteiros, os valores fora do intervalo de números seguros do JavaScript (Number.MIN_SAFE_INTEGER a Number.MAX_SAFE_INTEGER) também estarão sujeitos a perda de precisão. Além disso, depois de processadas pelo back-end do Firestore, todas as operações com números inteiros são limitadas entre -2^63 e 2^63-1.Se o valor do campo atual não for do tipo number ou se o campo ainda não existir, a transformação definirá o campo como o valor determinado.
function(query, ...)
getAggregate(query, aggregateSpec) Calcula as agregações especificadas sobre os documentos no conjunto de resultados da consulta em questão, sem realmente fazer o download dos documentos.O uso dessa função para realizar agregações é eficiente porque apenas os valores finais de agregação, não os documentos os dados são transferidos por download. Essa função pode realizar agregações dos documentos nos casos em que o conjunto de resultados é extremamente grande para fazer o download (milhares de documentos).
getCount(query) Calcula o número de documentos no conjunto de resultados da consulta em questão sem realmente fazer o download dos documentos.O uso dessa função para contar os documentos é eficiente porque apenas a contagem final, não os documentos é feito o download dos dados. Essa função pode contar os documentos nos casos em que o conjunto de resultados é extremamente grande para fazer o download (milhares de documentos).
getDocs(query) Executa a consulta e retorna os resultados como um QuerySnapshot.Todas as consultas são executadas diretamente pelo servidor, mesmo que já tenham sido executadas anteriormente. As modificações recentes só são refletidas nos resultados recuperados se já tiverem sido aplicadas pelo back-end. Se o cliente estiver off-line, a operação falhará. Para conferir os resultados armazenados em cache e as modificações locais, use o SDK completo do Firestore.
query(query, compositeFilter, queryConstraints) Cria uma nova instância imutável de Query que é estendida para incluir outras restrições de consulta.
query(query, queryConstraints) Cria uma nova instância imutável de Query que é estendida para incluir outras restrições de consulta.
function(queryConstraints, ...)
and(queryConstraints) Cria um novo QueryCompositeFilterConstraint que é uma conjunção das restrições de filtro fornecidas. Um filtro de conjunção inclui um documento se ele atender a todos os filtros fornecidos.
or(queryConstraints) Cria um novo QueryCompositeFilterConstraint que é uma disjunção das restrições de filtro fornecidas. Um filtro de disjunção inclui um documento se ele atender a algum dos filtros fornecidos.
function(reference, ...)
addDoc(referência, dados) Adiciona um novo documento ao CollectionReference especificado com os dados fornecidos, atribuindo a ele um ID de documento automaticamente.O resultado dessa gravação só será refletido em leituras de documentos que ocorrerem depois que a promessa retornada for resolvida. Se o cliente estiver off-line, a gravação falhará. Se você quiser ver modificações locais ou gravações em buffer até que o cliente esteja on-line, use o SDK completo do Firestore.
collection(reference, path, pathSegments) Recebe uma instância CollectionReference que se refere a uma subcoleção de reference no caminho relativo especificado.
collection(reference, path, pathSegments) Recebe uma instância CollectionReference que se refere a uma subcoleção de reference no caminho relativo especificado.
deleteDoc(reference) (em inglês) Exclui o documento referido pelo DocumentReference especificado.A exclusão só será refletida em leituras de documentos que ocorrerem após a resolução da promessa retornada. Se o cliente estiver off-line, a exclusão falhará. Se você quiser ver modificações locais ou gravações em buffer até que o cliente esteja on-line, use o SDK completo do Firestore.
doc(reference, path, pathSegments) Recebe uma instância DocumentReference que se refere a um documento dentro de reference no caminho relativo especificado. Se nenhum caminho for especificado, um ID exclusivo gerado automaticamente será usado para o DocumentReference retornado.
doc(reference, path, pathSegments) Recebe uma instância DocumentReference que se refere a um documento dentro de reference no caminho relativo especificado.
getDoc(reference) (em inglês) Lê o documento referido pela referência especificada.Todos os documentos são buscados diretamente no servidor, mesmo que tenham sido lidos ou modificados anteriormente. As modificações recentes só são refletidas na DocumentSnapshot recuperada se já tiverem sido aplicadas pelo back-end. Se o cliente estiver off-line, a leitura falhará. Se você quiser usar o armazenamento em cache ou conferir modificações locais, use o SDK completo do Firestore.
setDoc(referência, dados) Grava no documento referenciado pelo DocumentReference especificado. Se o documento ainda não existir, ele será criado.O resultado dessa gravação só será refletido nas leituras de documentos que ocorrerem depois que a promessa retornada for resolvida. Se o cliente estiver off-line, a gravação falhará. Se você quiser ver modificações locais ou gravações em buffer até que o cliente esteja on-line, use o SDK completo do Firestore.
setDoc(referência, dados, opções) Grava no documento referenciado pelo DocumentReference especificado. Se o documento ainda não existir, ele será criado. Se você fornecer merge ou mergeFields, os dados fornecidos poderão ser mesclados em um documento existente.O resultado dessa gravação só será refletido em leituras de documentos que ocorrerem depois que a promessa retornada for resolvida. Se o cliente estiver off-line, a gravação falhará. Se você quiser ver modificações locais ou gravações em buffer até que o cliente esteja on-line, use o SDK completo do Firestore.
updateDoc(referência; dados) Atualiza campos no documento referenciados pelo DocumentReference especificado. A atualização falhará se aplicada a um documento que não existe.O resultado dessa atualização só será refletido em leituras de documentos que ocorrerem após a resolução da promessa retornada. Se o cliente estiver off-line, a atualização falhará. Se você quiser ver modificações locais ou gravações em buffer até que o cliente esteja on-line, use o SDK completo do Firestore.
updateDoc(referência, campo, valor, moreFieldsAndValues) Atualiza campos no documento referido pelo DocumentReference especificado. A atualização falhará se aplicada a um documento que não existe.Os campos aninhados podem ser atualizados fornecendo strings de caminho do campo separadas por ponto ou objetos FieldPath.O resultado dessa atualização só será refletido em leituras de documento que ocorrerem após a resolução da promessa retornada. Se o cliente estiver off-line, a atualização falhará. Se você quiser ver modificações locais ou gravações em buffer até que o cliente esteja on-line, use o SDK completo do Firestore.
function(snapshot, ...)
endAt(snapshot) (link em inglês) Cria uma QueryEndAtConstraint que modifica o conjunto de resultados para terminar no documento fornecido (inclusive). A posição final é relativa à ordem da consulta. O documento precisa conter todos os campos fornecidos no orderBy da consulta.
endBefore(snapshot) Cria uma QueryEndAtConstraint que modifica o conjunto de resultados para terminar antes do documento fornecido (exclusivo). A posição final é relativa à ordem da consulta. O documento precisa conter todos os campos fornecidos no orderBy da consulta.
startAfter(snapshot) (link em inglês) Cria uma QueryStartAtConstraint que modifica o conjunto de resultados para começar depois do documento fornecido (exclusivo). A posição inicial é relativa à ordem da consulta. O documento precisa conter todos os campos fornecidos no orderBy da consulta.
startAt(snapshot) (link em inglês) Cria uma QueryStartAtConstraint que modifica o conjunto de resultados para começar pelo documento fornecido (inclusive). A posição inicial é relativa à ordem da consulta. O documento precisa conter todos os campos fornecidos no orderBy dessa consulta.
function(values, ...)
vetor(valores) Cria um novo VectorValue criado com uma cópia da matriz de números fornecida.

Classes

Turma Descrição
AggregateField. Representa uma agregação que pode ser realizada pelo Firestore.
AggregateQuerySnapshot (em inglês) Os resultados da execução de uma consulta de agregação.
Bytes Um objeto imutável que representa uma matriz de bytes.
CollectionReference Um objeto CollectionReference pode ser usado para adicionar documentos, receber referências de documentos e consultar documentos (usando query()).
DocumentReference (em inglês) Um DocumentReference refere-se ao local do documento em um banco de dados do Firestore e pode ser usado para gravar, ler ou detectar o local. O documento no local referenciado pode ou não existir.
DocumentSnapshot (em inglês) Um DocumentSnapshot contém dados lidos de um documento no seu banco de dados do Firestore. Os dados podem ser extraídos com .data() ou .get(<field>) para receber um campo específico.Para uma DocumentSnapshot que aponta para um documento inexistente, qualquer acesso aos dados retorna "undefined". Use o método exists() para verificar explicitamente a existência de um documento.
FieldPath (link em inglês) Um FieldPath refere-se a um campo em um documento. O caminho pode consistir em um único nome de campo (referindo-se a um campo de nível superior no documento) ou uma lista de nomes de campo (referindo-se a um campo aninhado no documento).Crie uma FieldPath fornecendo nomes de campo. Se mais de um nome de campo for fornecido, o caminho apontará para um campo aninhado em um documento.
FieldValue (em inglês) Valores de sentinela que podem ser usados ao gravar campos do documento com set() ou update().
Firestore A interface de serviço do Cloud Firestore.Não chame esse construtor diretamente. Em vez disso, use getFirestore().
FirestoreError (link em inglês) Um erro retornado por uma operação do Firestore.
GeoPoint Um objeto imutável que representa uma localização geográfica no Firestore. O local é representado como um par de latitude/longitude.Os valores de latitude estão no intervalo de [-90, 90]. Os valores de longitude estão no intervalo de [-180, 180].
Consulta Uma Query refere-se a uma consulta que você pode ler ou detectar. Também é possível construir objetos Query refinados adicionando filtros e ordenando.
QueryCompositeFilterConstraint Um QueryCompositeFilterConstraint é usado para restringir o conjunto de documentos retornados por uma consulta do Firestore executando a lógica OR ou AND de vários QueryFieldFilterConstraints ou QueryCompositeFilterConstraints. QueryCompositeFilterConstraints são criadas invocando or() ou and() e podem ser transmitidas para query() para criar uma nova instância de consulta que também contém a QueryCompositeFilterConstraint.
QueryConstraint (link em inglês) Um QueryConstraint é usado para restringir o conjunto de documentos retornados por uma consulta do Firestore. QueryConstraints são criadas invocando where(), orderBy(), startAt(), startAfter(), endBefore(), endAt(), limit(), limitToLast() e podem ser transmitidos para query().QueryConstraint
QueryDocumentSnapshot (em inglês) Um QueryDocumentSnapshot contém dados lidos de um documento no seu banco de dados do Firestore como parte de uma consulta. O documento existe, e os dados dele podem ser extraídos com .data() ou .get(<field>) para receber um campo específico.Um QueryDocumentSnapshot oferece a mesma plataforma de API que um DocumentSnapshot. Como os resultados da consulta contêm apenas documentos existentes, a propriedade exists sempre será verdadeira e data() nunca retornará "undefined".
QueryEndAtConstraint (link em inglês) Um QueryEndAtConstraint é usado para excluir documentos do final de um conjunto de resultados retornado por uma consulta do Firestore. QueryEndAtConstraints são criadas invocando endAt() ou endBefore() e podem ser transmitidas para query() para criar uma nova instância de consulta que também contenha esse QueryEndAtConstraint.
QueryFieldFilterConstraint (link em inglês) Um QueryFieldFilterConstraint é usado para restringir o conjunto de documentos retornados por uma consulta do Firestore filtrando um ou mais campos do documento. QueryFieldFilterConstraints são criadas invocando where() e depois podem ser transmitidas para query() para criar uma nova instância de consulta que também contém esse QueryFieldFilterConstraint.
QueryLimitConstraint (link em inglês) Um QueryLimitConstraint é usado para limitar o número de documentos retornados por uma consulta do Firestore. QueryLimitConstraints são criadas invocando limit() ou limitToLast() e podem ser transmitidas para query() para criar uma nova instância de consulta que também contenha esse QueryLimitConstraint.
QueryOrderByConstraint (link em inglês) Um QueryOrderByConstraint é usado para classificar o conjunto de documentos retornados por uma consulta do Firestore. QueryOrderByConstraints são criados invocando orderBy(). Em seguida, eles podem ser transmitidos a query() para criar uma nova instância de consulta que também contenha esse QueryOrderByConstraint.Observação: os documentos que não tiverem o campo orderBy não estarão presentes no resultado da consulta.
QuerySnapshot (em inglês) Um QuerySnapshot contém zero ou mais objetos DocumentSnapshot que representam os resultados de uma consulta. Eles podem ser acessados como uma matriz usando a propriedade docs ou enumerados usando o método forEach. O número de documentos pode ser determinado pelas propriedades empty e size.
QueryStartAtConstraint (link em inglês) Um QueryStartAtConstraint é usado para excluir documentos do início de um conjunto de resultados retornado por uma consulta do Firestore. QueryStartAtConstraints são criadas invocando startAt() ou startAfter() e podem ser transmitidas para query() para criar uma nova instância de consulta que também contenha esse QueryStartAtConstraint.
Carimbo de data/hora Um Timestamp representa um ponto no tempo independente de qualquer fuso horário ou calendário, representado como segundos e frações de segundos na resolução de nanossegundos no horário UTC.Ele é codificado usando o calendário gregoriano proléptico, que estende o calendário gregoriano de volta ao primeiro ano. Essa codificação supõe que todos os minutos tenham 60 segundos de duração, ou seja, segundos bissextos são "indistinguíveis", assim não é preciso ter uma tabela de segundos adicionais para interpretação. O intervalo é de 0001-01-01T00:00:00Z a 9999-12-31T23:59:59.999999999Z.Para exemplos e mais especificações, consulte a Definição de carimbo de data/hora.
Transação Uma referência a uma transação.O objeto Transaction transmitido para o updateFunction de uma transação fornece os métodos para ler e gravar dados no contexto da transação. Consulte runTransaction().
VectorValue (em inglês) Representa um tipo de vetor nos documentos do Firestore. Crie uma instância com . ValorDeVetor
WriteBatch (em inglês) Um lote de gravação, usado para executar várias gravações como uma única unidade atômica.Um objeto WriteBatch pode ser adquirido chamando writeBatch(). Ele fornece métodos para adicionar gravações ao lote de gravação. Nenhuma das gravações será confirmada (nem visível localmente) até que WriteBatch.commit() seja chamado.

Interfaces

Interface Descrição
AggregateSpec (link em inglês) Especifica um conjunto de agregações e os aliases delas.
DocumentData (em inglês) Os dados do documento (para uso com setDoc()) consistem em campos mapeados para valores.
FirestoreDataConverter (em inglês) Conversor usado pelo withConverter() para transformar objetos de usuário do tipo AppModelType em dados do Firestore do tipo DbModelType.O uso do conversor permite especificar argumentos de tipo genérico ao armazenar e recuperar objetos do Firestore.Neste contexto, um "AppModel" é uma classe usada em um aplicativo para empacotar informações e funcionalidades relacionadas. Essa classe poderia, por exemplo, ter propriedades com tipos de dados complexos e aninhados, propriedades usadas para memorização, propriedades de tipos não compatíveis com o Firestore (como symbol e bigint) e funções auxiliares que executam operações compostas. Essas classes não são adequadas e/ou possíveis de armazenar em um banco de dados do Firestore. Em vez disso, instâncias dessas classes precisam ser convertidas em "objetos JavaScript simples e antigos". (POJOs) com propriedades exclusivamente primitivas, possivelmente aninhadas dentro de outros POJOs ou matrizes de POJOs. Nesse contexto, esse tipo é chamado de "DbModel" e seriam adequados para armazenamento no Firestore. Por conveniência, os aplicativos podem implementar FirestoreDataConverter e registrar o conversor com objetos do Firestore, como DocumentReference ou Query, para converter automaticamente AppModel em DbModel ao armazenar no Firestore e converter DbModel em AppModel ao extrair do Firestore.
Configurações Especifica as configurações personalizadas para sua instância do Cloud Firestore. É necessário defini-los antes de invocar qualquer outro método.
TransactionOptions Opções para personalizar o comportamento da transação.

Aliases de tipos

Alias de tipo Descrição
AddPrefixToKeys (link em inglês) Retorna um novo mapa em que cada chave é prefixada com a chave externa anexada a um ponto.
AggregateFieldType (em inglês) A união de todos os tipos de AggregateField com suporte do Firestore.
AggregateSpecData (link em inglês) Um tipo com chaves que são extraídas de um AggregateSpec e com valores que são o resultado da agregação realizada pelo AggregateField correspondente da AggregateSpec de entrada.
AggregateType (em inglês) Tipo de união que representa o tipo de agregação a ser realizado.
ChildUpdateFields Auxiliar para calcular os campos aninhados de um determinado tipo T1. Isso é necessário para distribuir tipos de união como undefined | {...} (ocorre em propriedades opcionais) ou {a: A} | {b: B}.Neste caso de uso, V é usado para distribuir os tipos de união de T[K] em Record, já que T[K] é avaliado como uma expressão e não distribuído.Consulte https://www.typescriptlang.org/docs/handbook/advanced-types.html#distributive-conditional-types
FirestoreErrorCode (em inglês) O conjunto de códigos de status do Firestore. Os códigos são os mesmos expostos pelo gRPC aqui: https://github.com/grpc/grpc/blob/master/doc/statuscodes.mdValores possíveis: - 'cancelled': a operação foi cancelada, normalmente pelo autor da chamada. - "Desconhecido": erro desconhecido ou um erro de um domínio de erro diferente. - "invalid-argument": o cliente especificou um argumento inválido. Observe que isso é diferente de "precondição com falha". "argumento inválido" indica argumentos problemáticos, independentemente do estado do sistema (por exemplo, um nome de campo inválido). - "prazo excedido": o prazo expirou antes que a operação fosse concluída. Para operações que alteram o estado do sistema, este erro pode ser retornado mesmo que a operação tenha sido concluída com sucesso. Por exemplo, uma resposta bem-sucedida de um servidor pode ter atrasado tempo suficiente para que o prazo expirasse. - "not-found": algum documento solicitado não foi encontrado. - "já-existe": algum documento que tentamos criar já existe. - "permission-denied": o autor da chamada não tem permissão para executar a operação especificada. - 'resource-exhausted': algum recurso foi esgotado, talvez uma cota por usuário, ou talvez todo o sistema de arquivos esteja sem espaço. - 'failed-precondition': a operação foi rejeitada porque o sistema não está no estado necessário para a execução dela. - 'aborted': a operação foi cancelada, normalmente devido a um problema de simultaneidade, como cancelamentos de transações etc. - 'out-of-range': a operação foi tentada depois do intervalo válido. - "não implementado": a operação não foi implementada ou não é compatível/ativada. - 'internal': erros internos. Significa que algumas invariantes esperadas pelo sistema subjacente foram corrompidas. Se você encontrar um desses erros, significa que há algo muito errado. - "indisponível": o serviço não está disponível no momento. Provavelmente, essa é uma condição temporária e poderá ser corrigida ao tentar novamente com uma espera. - 'data-loss': perda ou corrupção de dados irrecuperável. - "unauthenticated": a solicitação não tem credenciais de autenticação válidas para a operação.
NestedUpdateFields (link em inglês) Para cada campo (por exemplo, "bar"), encontre todas as chaves aninhadas (por exemplo, {'bar.baz': T1, 'bar.qux': T2}). Faça a interseção entre eles para criar um único mapa com todas as chaves possíveis marcadas como opcionais.
OrderByDirection (link em inglês) A direção de uma cláusula orderBy() é especificada como "desc". ou "asc" (decrescente ou crescente).
PartialWithFieldValue (link em inglês) Semelhante ao Partial<T> do TypeScript, mas permite que campos aninhados sejam omitidos e FieldValues sejam transmitidos como valores de propriedade.
Primitivo Tipos primitivos.
QueryConstraintType (em inglês) Descreve as diferentes restrições de consulta disponíveis neste SDK.
QueryFilterConstraint (link em inglês) QueryFilterConstraint é um tipo de união auxiliar que representa QueryFieldFilterConstraint e QueryCompositeFilterConstraint.
QueryNonFilterConstraint (link em inglês) QueryNonFilterConstraint é um tipo de união auxiliar que representa QueryConstraints usadas para restringir ou ordenar o conjunto de documentos, mas que não filtram explicitamente em um campo de documento. QueryNonFilterConstraints são criadas invocando orderBy(), startAt(), startAfter(), endBefore(), endAt(), limit() ou limitToLast() e podem ser transmitidos para query() para criar uma nova instância de consulta que também contenha o {18/query().QueryConstraint
SetOptions (em inglês) Um objeto de opções que configura o comportamento de setDoc() e chama. Essas chamadas podem ser configuradas para realizar mesclagens granulares em vez de substituir os documentos de destino por completo, fornecendo um SetOptions com merge: true.
UnionToIntersection (link em inglês) Dado um tipo de união U = T1 | T2 | ..., retorna um tipo interseccionado (T1 & T2 & ...).Usa tipos condicionais distributivos e inferência de tipos condicionais. Isso funciona porque vários candidatos para a mesma variável de tipo em posições de contravariantes fazem com que um tipo de interseção seja inferido. 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 (link em inglês) Atualize dados (para uso com updateDoc()) que consistem em caminhos de campo (por exemplo, "foo" ou "foo.baz") mapeados para valores. Os campos que contêm pontos fazem referência a campos aninhados no documento. Os valores de campo podem ser transmitidos como valores de propriedade.
OndeFilterOp As condições de filtro em uma cláusula where() são especificadas usando as strings '&lt;', '&lt;=', '==', '!=', '&gt;=', '&gt;', 'array-contains', 'in', 'array-contains-any' e 'not-in'.
WithFieldValue (em inglês) Permite que FieldValues sejam passados como um valor de propriedade, mantendo a segurança de tipo.

função(app, ...)

getFirestore(app)

Retorna a instância padrão do Firestore associada ao FirebaseApp fornecido. Se não houver nenhuma instância, uma nova instância será inicializada com as configurações padrão.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
app FirebaseApp A instância FirebaseApp à qual a instância do Firestore retornada está associada.

Retorna:

Firestore

A instância Firestore do aplicativo fornecido.

getFirestore(app, databaseId)

Essa API é fornecida como uma prévia para desenvolvedores e pode mudar com base no feedback que recebermos. Não use essa API em um ambiente de produção.

Retorna a instância do Firestore associada ao FirebaseApp fornecido. Se não houver nenhuma instância, uma nova instância será inicializada com as configurações padrão.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
app FirebaseApp A instância FirebaseApp à qual a instância do Firestore retornada está associada.
IDdobanco de dados string : o nome do banco de dados.

Retorna:

Firestore

A instância Firestore do aplicativo fornecido.

inicializarFirestore(app, configurações)

Inicializa uma nova instância do Cloud Firestore com as configurações fornecidas. Só pode ser chamada antes de qualquer outra função, incluindo getFirestore(). Se as configurações personalizadas estiverem vazias, essa função será equivalente a chamar getFirestore().

Assinatura:

export declare function initializeFirestore(app: FirebaseApp, settings: Settings): Firestore;

Parâmetros

Parâmetro Tipo Descrição
app FirebaseApp O FirebaseApp ao qual a instância Firestore será associada.
configurações Configurações Um objeto de configurações para configurar a instância de Firestore.

Retorna:

Firestore

Uma instância de Firestore recém-inicializada.

inicializarFirestore(app, configurações, databaseId)

Essa API é fornecida como uma prévia para desenvolvedores e pode mudar com base no feedback que recebermos. Não use essa API em um ambiente de produção.

Inicializa uma nova instância do Cloud Firestore com as configurações fornecidas. Só pode ser chamada antes de qualquer outra função, incluindo getFirestore(). Se as configurações personalizadas estiverem vazias, essa função será equivalente a chamar getFirestore().

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
app FirebaseApp O FirebaseApp ao qual a instância Firestore será associada.
configurações Configurações Um objeto de configurações para configurar a instância de Firestore.
IDdobanco de dados string : o nome do banco de dados.

Retorna:

Firestore

Uma instância de Firestore recém-inicializada.

function(firestore, ...)

coleção(firestore, caminho, pathSegments)

Recebe uma instância CollectionReference que se refere à coleção no caminho absoluto especificado.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
firestore Firestore Uma referência à instância raiz Firestore.
path string Um caminho separado por barras para uma coleção.
pathSegments string[] Outros segmentos de caminho a serem aplicados em relação ao primeiro argumento.

Retorna:

CollectionReference<DocumentData, DocumentData>

A instância CollectionReference.

Exceções

Se o caminho final tiver um número par de segmentos e não apontar para uma coleção.

collectionsGroup(firestore, collectionsId)

Cria e retorna uma nova instância de Query que inclui todos os documentos do banco de dados contidos em uma coleção ou subcoleção com o collectionId especificado.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
firestore Firestore Uma referência à instância raiz Firestore.
ID da coleção string Identifica as coleções a serem consultadas. Todas as coleções ou subcoleções que tiverem esse ID como último segmento do caminho serão incluídas. Não pode conter uma barra.

Retorna:

Consulta<DocumentData, DocumentData>

O Query criado.

connectFirestoreEmulator(firestore, host, porta, opções)

Modifique esta instância para se comunicar com o emulador do Cloud Firestore.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
firestore Firestore A instância Firestore a ser configurada para se conectar ao emulador.
host string host do emulador (por exemplo: localhost).
porta number na porta do emulador (por exemplo: 9000).
options { mockUserToken? EmulatorMockTokenOptions | string }

Retorna:

void

doc(firestore, path, pathSegments)

Recebe uma instância DocumentReference que se refere ao documento no caminho absoluto especificado.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
firestore Firestore Uma referência à instância raiz Firestore.
path string Um caminho separado por barras para um documento.
pathSegments string[] Segmentos de caminho adicionais que serão aplicados em relação ao primeiro argumento.

Retorna:

DocumentReference<DocumentData, DocumentData>

A instância DocumentReference.

Exceções

Se o caminho final tiver um número ímpar de segmentos e não apontar para um documento.

runTransaction(firestore, updateFunction, options)

Executa o updateFunction especificado e tenta confirmar as alterações aplicadas dentro da transação. Se alguma leitura de documento dentro da transação tiver sido alterada, o Cloud Firestore repetirá a operação updateFunction. Se houver falha na confirmação após cinco tentativas, a transação vai falhar.

O número máximo de gravações permitidas em uma única transação é 500.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
firestore Firestore Uma referência ao banco de dados do Firestore em que essa transação será executada.
updateFunction (transação: Transação) => Promessa<T> A função a ser executada no contexto da transação.
options TransactionOptions Um objeto de opções para configurar o número máximo de tentativas de confirmação.

Retorna:

Promessa<T>

Se a transação foi concluída ou cancelada explicitamente (o updateFunction retornou uma promessa com falha), a promessa retornada pelo updateFunction é retornada aqui. Caso contrário, se a transação falhar, uma promessa rejeitada com o erro de falha correspondente será retornada.

Terminar(firestore)

Encerra a instância de Firestore fornecida.

Depois de chamar terminate(), apenas as funções clearIndexedDbPersistence() podem ser usadas. Qualquer outra função vai gerar uma FirestoreError. A terminação não cancela as gravações pendentes, e qualquer promessa que esteja aguardando uma resposta do servidor não será resolvida.

Para reiniciar após o encerramento, crie uma nova instância de Firestore com getFirestore().

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
firestore Firestore A instância Firestore a ser encerrada.

Retorna:

Promessa<void>

Uma Promise que é resolvida quando a instância é encerrada com sucesso.

writeBatch(firestore)

Cria um lote de gravação, usado para realizar várias gravações como uma única operação atômica. O número máximo de gravações permitidas em um único WriteBatch é 500.

O resultado dessas gravações só será refletido em leituras de documentos que ocorrerem após a resolução da promessa retornada. Se o cliente estiver off-line, a gravação falhará. Se você quiser ver modificações locais ou gravações em buffer até que o cliente esteja on-line, use o SDK completo do Firestore.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
firestore Firestore

Retorna:

WriteBatch (em inglês)

Um WriteBatch que pode ser usado para executar várias gravações atomicamente.

função()

count().

Criar um objeto AggregateField que pode ser usado para calcular a contagem de documentos no conjunto de resultados de uma consulta.

Assinatura:

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

Retorna:

AggregateField<number>

deleteField()

Retorna uma sentinela para uso com updateDoc() ou setDoc() com {merge: true} para marcar um campo para exclusão.

Assinatura:

export declare function deleteField(): FieldValue;

Retorna:

FieldValue (em inglês)

documentId().

Retorna uma sentinela especial FieldPath para se referir ao ID de um documento. Pode ser usada em consultas para classificar ou filtrar pelo ID do documento.

Assinatura:

export declare function documentId(): FieldPath;

Retorna:

FieldPath (link em inglês)

getFirestore()

Retorna a instância padrão do Firestore associada ao FirebaseApp padrão. Se não houver nenhuma instância, uma nova instância será inicializada com as configurações padrão.

Assinatura:

export declare function getFirestore(): Firestore;

Retorna:

Firestore

A instância Firestore do aplicativo fornecido.

serverTimestamp()

Retorna uma sentinela usada com setDoc() ou updateDoc() para incluir um carimbo de data/hora gerado pelo servidor nos dados gravados.

Assinatura:

export declare function serverTimestamp(): FieldValue;

Retorna:

FieldValue (em inglês)

função(databaseId, ...)

getFirestore(databaseId)

Essa API é fornecida como uma prévia para desenvolvedores e pode mudar com base no feedback que recebermos. Não use essa API em um ambiente de produção.

Retorna a instância do Firestore associada ao FirebaseApp padrão. Se não houver nenhuma instância, uma nova instância será inicializada com as configurações padrão.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
IDdobanco de dados string : o nome do banco de dados.

Retorna:

Firestore

A instância Firestore do aplicativo fornecido.

função(elementos, ...)

matrizRemove(elementos)

Retorna um valor especial que pode ser usado com setDoc() ou que instrui o servidor a remover os elementos fornecidos de qualquer valor da matriz que já exista no servidor. Todas as instâncias de cada elemento especificado serão removidas da matriz. Se o campo que está sendo modificado ainda não for uma matriz, ele será substituído por uma matriz vazia.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
elements desconhecido[] Os elementos a serem removidos da matriz.

Retorna:

FieldValue (em inglês)

A sentinela FieldValue para uso em uma chamada para setDoc() ou updateDoc()

MatrizUnion(elementos)

Retorna um valor especial que pode ser usado com setDoc() ou updateDoc(), que diz ao servidor para unir os elementos fornecidos com qualquer valor de matriz que já exista no servidor. Cada elemento especificado que ainda não existe na matriz será adicionado no final. Se o campo que está sendo modificado ainda não for uma matriz, ele será substituído por uma matriz que contenha exatamente os elementos especificados.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
elements desconhecido[] Os elementos que serão unidos na matriz.

Retorna:

FieldValue (em inglês)

A sentinela FieldValue para uso em uma chamada para setDoc() ou updateDoc().

função(campo; ...)

average(field)

Cria um objeto AggregateField que pode ser usado para calcular a média de um campo especificado em um intervalo de documentos no conjunto de resultados de uma consulta.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
campo string | FieldPath (link em inglês) Especifica o campo do qual fazer a média no conjunto de resultados.

Retorna:

AggregateField<number | nulo>

sum(campo)

Criar um objeto AggregateField que pode ser usado para calcular a soma de um campo especificado em um intervalo de documentos no conjunto de resultados de uma consulta.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
campo string | FieldPath (link em inglês) Especifica o campo a ser somado em todo o conjunto de resultados.

Retorna:

AggregateField<number>

function(fieldPath, ...)

orderBy(fieldPath, rightStr)

Cria um QueryOrderByConstraint que classifica o resultado da consulta pelo campo especificado, opcionalmente em ordem decrescente em vez de crescente.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
campoPath string | FieldPath (link em inglês) O campo a ser classificado.
director OrderByDirection (link em inglês) Direção opcional pela qual classificar ("asc" ou "desc"). Se não for especificada, a ordem será crescente.

Retorna:

QueryOrderByConstraint (link em inglês)

A QueryOrderByConstraint criada.

where(fieldPath, opStr, value)

Cria um QueryFieldFilterConstraint que impõe que os documentos contenham o campo especificado e que o valor atenda à restrição de relação fornecida.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
campoPath string | FieldPath (link em inglês) O caminho a ser comparado
opStr OndeFilterOp A string de operação (por exemplo, "&lt;", "&lt;=", "==", "&lt;", "&lt;=", "!=").
valor desconhecido O valor para comparação

Retorna:

QueryFieldFilterConstraint (link em inglês)

O QueryFieldFilterConstraint criado.

function(fieldValues, ...)

endAt(fieldValues)

Cria uma QueryEndAtConstraint que modifica o conjunto de resultados para terminar nos campos fornecidos em relação à ordem da consulta. A ordem dos valores dos campos precisa corresponder à ordem da ordem por cláusulas da consulta.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
fieldValues desconhecido[] Os valores de campo em que a consulta será encerrada, em ordem de acordo com a ordem da consulta.

Retorna:

QueryEndAtConstraint (link em inglês)

Um QueryEndAtConstraint a ser transmitido para query()

endBefore(fieldValues)

Cria uma QueryEndAtConstraint que modifica o conjunto de resultados para terminar antes dos campos fornecidos em relação à ordem da consulta. A ordem dos valores dos campos precisa corresponder à ordem da ordem por cláusulas da consulta.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
fieldValues desconhecido[] Os valores de campo para finalizar a consulta antes, em ordem de ordem da consulta.

Retorna:

QueryEndAtConstraint (link em inglês)

Um QueryEndAtConstraint a ser transmitido para query()

startAfter(fieldValues)

Cria uma QueryStartAtConstraint que modifica o conjunto de resultados para começar depois dos campos fornecidos em relação à ordem da consulta. A ordem dos valores dos campos precisa corresponder à ordem da ordem por cláusulas da consulta.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
fieldValues desconhecido[] Os valores do campo em que a consulta será iniciada, em ordem de acordo com a ordem da consulta.

Retorna:

QueryStartAtConstraint (link em inglês)

Uma QueryStartAtConstraint a ser transmitida para query()

startAt(fieldValues)

Cria uma QueryStartAtConstraint que modifica o conjunto de resultados para começar nos campos fornecidos em relação à ordem da consulta. A ordem dos valores dos campos precisa corresponder à ordem da ordem por cláusulas da consulta.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
fieldValues desconhecido[] Os valores do campo em que a consulta será iniciada, em ordem de acordo com a ordem da consulta.

Retorna:

QueryStartAtConstraint (link em inglês)

Uma QueryStartAtConstraint a ser transmitida para query().

função(esquerda, ...)

agregadoFieldEqual(left, right)

Compara duas instâncias de "AggregateField" para verificar a igualdade.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
esquerda AggregateField<desconhecido> Compare esse AggregateField com o right.
direita AggregateField<desconhecido> Compare esse AggregateField com o left.

Retorna:

booleano

agregadoQuerySnapshotEqual(esquerda, direita)

Compara duas instâncias AggregateQuerySnapshot para verificar a igualdade.

Duas instâncias AggregateQuerySnapshot são consideradas "iguais" se eles têm consultas subjacentes que comparam dados iguais e iguais.

Assinatura:

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 Descrição
esquerda AggregateQuerySnapshot<AggregateSpecType, AppModelType, DBMModelType> O primeiro AggregateQuerySnapshot para comparar.
direita AggregateQuerySnapshot<AggregateSpecType, AppModelType, DBMModelType> O segundo AggregateQuerySnapshot para comparar.

Retorna:

booleano

true se os objetos forem "iguais", conforme definido acima. Caso contrário, serão false.

queryEqual(esquerda, direita)

Retorna true se as consultas fornecidas apontarem para a mesma coleção e aplicarem as mesmas restrições.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
esquerda Consulta<AppModelType, DBMModelType> Um Query para comparar.
direita Consulta<AppModelType, DBMModelType> Um Query para comparar.

Retorna:

booleano

verdadeiro se as referências apontarem para o mesmo local no mesmo banco de dados do Firestore.

refEqual(left, right)

Retorna "true" se as referências fornecidas são iguais.

Assinatura:

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 Descrição
esquerda DocumentReference<AppModelType, DBMModelType> | CollectionReference<AppModelType, DBMModelType> Uma referência para comparação.
direita DocumentReference<AppModelType, DBMModelType> | CollectionReference<AppModelType, DBMModelType> Uma referência para comparação.

Retorna:

booleano

verdadeiro se as referências apontarem para o mesmo local no mesmo banco de dados do Firestore.

snapshotEqual(esquerda, direita)

Retorna true se os snapshots fornecidos são iguais.

Assinatura:

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 Descrição
esquerda DocumentSnapshot<AppModelType, DBMModelType> | QuerySnapshot<AppModelType, DBMModelType> Um snapshot para comparar.
direita DocumentSnapshot<AppModelType, DBMModelType> | QuerySnapshot<AppModelType, DBMModelType> Um snapshot para comparar.

Retorna:

booleano

true se os snapshots forem iguais.

função(limit; ...)

limit(limit)

Cria um QueryLimitConstraint que retorna somente os primeiros documentos correspondentes.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
limite number O número máximo de itens para retornar.

Retorna:

QueryLimitConstraint (link em inglês)

O QueryLimitConstraint criado.

limitToLast(limit)

Cria um QueryLimitConstraint que retorna apenas os últimos documentos correspondentes.

Especifique pelo menos uma cláusula orderBy para consultas limitToLast. Caso contrário, uma exceção será gerada durante a execução.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
limite number O número máximo de itens para retornar.

Retorna:

QueryLimitConstraint (link em inglês)

O QueryLimitConstraint criado.

function(logLevel, ...)

setLogLevel(logLevel)

Define o nível de detalhes dos registros do Cloud Firestore (depuração, erro ou silencioso).

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
logLevel LogLevel O nível de detalhes definido para a geração de registros de atividades e erros. Pode ser qualquer um dos seguintes valores:
  • debug para o nível de registro mais detalhado, principalmente para depuração.
  • error para registrar apenas erros.
  • silent to turn off logging.

Retorna:

void

função(n; ...)

incremento(n)

Retorna um valor especial que pode ser usado com setDoc() ou updateDoc() que informa ao servidor para incrementar o valor atual do campo pelo valor fornecido.

Se o operando ou o valor do campo atual usar a precisão de ponto flutuante, toda a aritmética seguirá a semântica IEEE 754. Se os dois valores forem números inteiros, os valores fora do intervalo de números seguros do JavaScript (Number.MIN_SAFE_INTEGER a Number.MAX_SAFE_INTEGER) também estarão sujeitos a perda de precisão. Além disso, depois de processadas pelo back-end do Firestore, todas as operações de números inteiros ficam limitadas entre -2^63 e 2^63-1.

Se o valor do campo atual não for do tipo number ou se o campo ainda não existir, a transformação o definirá como o valor fornecido.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
n number O valor a ser incrementado.

Retorna:

FieldValue (em inglês)

A sentinela FieldValue para uso em uma chamada para setDoc() ou updateDoc()

função(consulta, ...)

getAggregate(query, aggregateSpec)

Calcula as agregações especificadas sobre os documentos no conjunto de resultados da consulta em questão, sem realmente fazer o download dos documentos.

Usar essa função para realizar agregações é eficiente porque apenas os valores finais de agregação, não os documentos os dados são transferidos por download. Essa função pode realizar agregações dos documentos nos casos em que o conjunto de resultados é extremamente grande para fazer o download (milhares de documentos).

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
consulta Consulta<AppModelType, DBMModelType> A consulta cujo conjunto de resultados é agregado.
agregadoSpec Tipo de especificação de agregação Um objeto AggregateSpec que especifica os agregados a serem executados no conjunto de resultados. O AggregateSpec especifica aliases para cada agregado, que podem ser usados para recuperar o resultado agregado.

Retorna:

Promessa<AggregateQuerySnapshot<AggregateSpecType, AppModelType, DBMModelType>>

Exemplo

const aggregateSnapshot = await getAggregate(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;

getCount(query)

Calcula o número de documentos no conjunto de resultados da consulta especificada sem realmente fazer o download dos documentos.

Usar essa função para contar os documentos é eficiente porque apenas a contagem final, não os documentos é feito o download dos dados. Essa função pode contar os documentos nos casos em que o conjunto de resultados é extremamente grande para fazer o download (milhares de documentos).

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
consulta Consulta<AppModelType, DBMModelType> A consulta cujo tamanho do conjunto de resultados é calculado.

Retorna:

Promessa<AggregateQuerySnapshot<{ count: AggregateField<number>; }, AppModelType, DBMModelType>>

Uma promessa que será resolvida com a contagem. a contagem pode ser recuperada de snapshot.data().count, em que snapshot é o AggregateQuerySnapshot para o qual a promessa retornada é resolvida.

getDocs(consulta)

executa a consulta e retorna os resultados como um QuerySnapshot.

Todas as consultas são executadas diretamente pelo servidor, mesmo que tenham sido executadas anteriormente. As modificações recentes só são refletidas nos resultados recuperados se já tiverem sido aplicadas pelo back-end. Se o cliente estiver off-line, a operação falhará. Para conferir os resultados armazenados em cache e as modificações locais, use o SDK completo do Firestore.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
consulta Consulta<AppModelType, DBMModelType> O Query a ser executado.

Retorna:

Promessa<QuerySnapshot<AppModelType, DBMModelType>>

Uma promessa que será resolvida com os resultados da consulta.

query(query, compositeFilter, queryConstraints)

Cria uma nova instância imutável de Query que é estendida para incluir outras restrições de consulta.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
consulta Consulta<AppModelType, DBMModelType> A instância Query a ser usada como base para as novas restrições.
compositeFilter QueryCompositeFilterConstraint O QueryCompositeFilterConstraint a ser aplicado. Crie QueryCompositeFilterConstraint usando and() ou or().
queryConstraints QueryNonFilterConstraint[] QueryNonFilterConstraint adicionais a serem aplicados (por exemplo, orderBy(), limit()).

Retorna:

Consulta<AppModelType, DBMModelType>

Exceções

se alguma das restrições de consulta fornecidas não puder ser combinada com as restrições atuais ou novas.

query(query, queryConstraints)

Cria uma nova instância imutável de Query que é estendida para incluir outras restrições de consulta.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
consulta Consulta<AppModelType, DBMModelType> A instância Query a ser usada como base para as novas restrições.
queryConstraints QueryConstraint[] A lista de QueryConstraints a serem aplicados.

Retorna:

Consulta<AppModelType, DBMModelType>

Exceções

se alguma das restrições de consulta fornecidas não puder ser combinada com as restrições atuais ou novas.

função(queryConstraints, ...)

e(queryConstraints)

Cria um novo QueryCompositeFilterConstraint que é uma conjunção das restrições de filtro fornecidas. Um filtro de conjunção inclui um documento se ele atender a todos os filtros fornecidos.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
queryConstraints QueryFilterConstraint[] Opcional. A lista de QueryFilterConstraints para execução de uma conjunção. Eles precisam ser criados com chamadas para where(), or() ou and().

Retorna:

QueryCompositeFilterConstraint

O recém-criado QueryCompositeFilterConstraint.

ou(queryConstraints)

Cria um novo QueryCompositeFilterConstraint que é uma disjunção das restrições de filtro fornecidas. Um filtro de disjunção inclui um documento se ele atender a algum dos filtros fornecidos.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
queryConstraints QueryFilterConstraint[] Opcional. A lista de QueryFilterConstraints para executar uma disjunção. Eles precisam ser criados com chamadas para where(), or() ou and().

Retorna:

QueryCompositeFilterConstraint

O recém-criado QueryCompositeFilterConstraint.

função(referência, ...)

addDoc(referência; dados)

Adiciona um novo documento ao CollectionReference especificado com os dados fornecidos, atribuindo um ID de documento automaticamente a ele.

O resultado dessa gravação só será refletido em leituras de documentos que ocorrerem depois que a promessa retornada for resolvida. Se o cliente estiver off-line, a gravação falhará. Se você quiser ver modificações locais ou gravações em buffer até que o cliente esteja on-line, use o SDK completo do Firestore.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
Referência CollectionReference<AppModelType, DBMModelType> Uma referência à coleção à qual adicionar este documento.
dados WithFieldValue<AppModelType> Um objeto que contém os dados do novo documento.

Retorna:

Promessa<DocumentReference<AppModelType, DBMModelType>>

Um Promise resolvido com um DocumentReference apontando para o documento recém-criado depois que ele foi gravado no back-end.

Exceções

Erro: se a entrada fornecida não for um documento válido do Firestore.

coleção(referência, caminho, pathSegments)

Recebe uma instância CollectionReference que se refere a uma subcoleção de reference no caminho relativo especificado.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
Referência CollectionReference<AppModelType, DBMModelType> Uma referência a uma coleção.
path string Um caminho separado por barras para uma coleção.
pathSegments string[] Outros segmentos de caminho a serem aplicados em relação ao primeiro argumento.

Retorna:

CollectionReference<DocumentData, DocumentData>

A instância CollectionReference.

Exceções

Se o caminho final tiver um número par de segmentos e não apontar para uma coleção.

coleção(referência, caminho, pathSegments)

Recebe uma instância CollectionReference que se refere a uma subcoleção de reference no caminho relativo especificado.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
Referência DocumentReference<AppModelType, DBMModelType> Uma referência a um documento do Firestore.
path string Um caminho separado por barras para uma coleção.
pathSegments string[] Segmentos de caminho adicionais que serão aplicados em relação ao primeiro argumento.

Retorna:

CollectionReference<DocumentData, DocumentData>

A instância CollectionReference.

Exceções

Se o caminho final tiver um número par de segmentos e não apontar para uma coleção.

deleteDoc(referência)

Exclui o documento referido pelo DocumentReference especificado.

A exclusão será refletida somente em leituras de documentos que ocorrerem após a resolução da promessa retornada. Se o cliente estiver off-line, a exclusão falhará. Se você quiser ver modificações locais ou gravações em buffer até que o cliente esteja on-line, use o SDK completo do Firestore.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
Referência DocumentReference<AppModelType, DBMModelType> Uma referência ao documento a ser excluído.

Retorna:

Promessa<void>

Um Promise resolvido assim que o documento é excluído do back-end.

doc(reference, path, pathSegments)

Recebe uma instância DocumentReference que se refere a um documento dentro de reference no caminho relativo especificado. Se nenhum caminho for especificado, um ID exclusivo gerado automaticamente será usado para o DocumentReference retornado.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
Referência CollectionReference<AppModelType, DBMModelType> Uma referência a uma coleção.
path string Um caminho separado por barras para um documento. Precisa ser omitido para usar IDs gerados automaticamente.
pathSegments string[] Segmentos de caminho adicionais que serão aplicados em relação ao primeiro argumento.

Retorna:

DocumentReference<AppModelType, DBMModelType>

A instância DocumentReference.

Exceções

Se o caminho final tiver um número ímpar de segmentos e não apontar para um documento.

doc(reference, path, pathSegments)

Recebe uma instância DocumentReference que se refere a um documento dentro de reference no caminho relativo especificado.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
Referência DocumentReference<AppModelType, DBMModelType> Uma referência a um documento do Firestore.
path string Um caminho separado por barras para um documento.
pathSegments string[] Segmentos de caminho adicionais que serão aplicados em relação ao primeiro argumento.

Retorna:

DocumentReference<DocumentData, DocumentData>

A instância DocumentReference.

Exceções

Se o caminho final tiver um número ímpar de segmentos e não apontar para um documento.

getDoc(referência)

Lê o documento referido pela referência de documento especificada.

Todos os documentos são buscados diretamente no servidor, mesmo que tenham sido lidos ou modificados anteriormente. As modificações recentes só são refletidas na DocumentSnapshot recuperada se já tiverem sido aplicadas pelo back-end. Se o cliente estiver off-line, a leitura falhará. Se você quiser usar o armazenamento em cache ou conferir modificações locais, use o SDK completo do Firestore.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
Referência DocumentReference<AppModelType, DBMModelType> A referência do documento a ser buscado.

Retorna:

Promessa<DocumentSnapshot<AppModelType, DBMModelType>>

Uma promessa resolvida com uma DocumentSnapshot contendo o conteúdo atual do documento.

setDoc(referência; dados)

Grava no documento referenciado pelo DocumentReference especificado. Se o documento ainda não existir, ele será criado.

O resultado dessa gravação só será refletido em leituras de documentos que ocorrerem depois que a promessa retornada for resolvida. Se o cliente estiver off-line, a gravação falhará. Se você quiser ver modificações locais ou gravações em buffer até que o cliente esteja on-line, use o SDK completo do Firestore.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
Referência DocumentReference<AppModelType, DBMModelType> Uma referência ao documento a ser gravado.
dados WithFieldValue<AppModelType> Um mapa dos campos e valores do documento.

Retorna:

Promessa<void>

Uma Promise resolvida depois que os dados foram gravados no back-end.

Exceções

Erro: se a entrada fornecida não for um documento válido do Firestore.

setDoc(referência; dados; opções)

Grava no documento referenciado pelo DocumentReference especificado. Se o documento ainda não existir, ele será criado. Se você fornecer merge ou mergeFields, os dados fornecidos poderão ser mesclados em um documento existente.

O resultado dessa gravação só será refletido em leituras de documentos que ocorrerem depois que a promessa retornada for resolvida. Se o cliente estiver off-line, a gravação falhará. Se você quiser ver modificações locais ou gravações em buffer até que o cliente esteja on-line, use o SDK completo do Firestore.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
Referência DocumentReference<AppModelType, DBMModelType> Uma referência ao documento a ser gravado.
dados PartialWithFieldValue<AppModelType> Um mapa dos campos e valores do documento.
options SetOptions (em inglês) Um objeto para configurar o comportamento definido.

Retorna:

Promessa<void>

Uma Promise resolvida depois que os dados foram gravados no back-end.

Exceções

Erro: se a entrada fornecida não for um documento válido do Firestore.

updateDoc(referência; dados)

Atualiza os campos no documento referidos pelo DocumentReference especificado. A atualização falhará se aplicada a um documento que não existe.

O resultado dessa atualização só será refletido em leituras de documentos que ocorrerem após a resolução da promessa retornada. Se o cliente estiver off-line, a atualização falhará. Se você quiser ver modificações locais ou gravações em buffer até que o cliente esteja on-line, use o SDK completo do Firestore.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
Referência DocumentReference<AppModelType, DBMModelType> Uma referência ao documento a ser atualizado.
dados UpdateData<DbModelType> Um objeto que contém os campos e valores com os quais atualizar o documento. Os campos podem conter pontos para fazer referência a campos aninhados no documento.

Retorna:

Promessa<void>

Uma Promise resolvida depois que os dados foram gravados no back-end.

Exceções

Erro: se a entrada fornecida não for um dado válido do Firestore.

updateDoc(referência; campo; valor; moreFieldsAndValues)

Atualiza campos no documento referenciados pelo DocumentReference especificado. A atualização falhará se aplicada a um documento que não existe.

Os campos aninhados podem ser atualizados fornecendo strings de caminho de campo separadas por pontos ou com objetos FieldPath.

O resultado dessa atualização só será refletido em leituras de documentos que ocorrerem após a resolução da promessa retornada. Se o cliente estiver off-line, a atualização falhará. Se você quiser ver modificações locais ou gravações em buffer até que o cliente esteja on-line, use o SDK completo do Firestore.

Assinatura:

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 Descrição
Referência DocumentReference<AppModelType, DBMModelType> Uma referência ao documento a ser atualizado.
campo string | FieldPath (link em inglês) O primeiro campo a ser atualizado.
valor desconhecido O primeiro valor.
maisCamposAndValores desconhecido[] Outros pares de chave-valor.

Retorna:

Promessa<void>

Uma Promise resolvida depois que os dados foram gravados no back-end.

Exceções

Erro: se a entrada fornecida não for um dado válido do Firestore.

function(snapshot, ...)

endAt(snapshot)

Cria uma QueryEndAtConstraint que modifica o conjunto de resultados para terminar no documento fornecido (inclusive). A posição final é relativa à ordem da consulta. O documento precisa conter todos os campos fornecidos no orderBy da consulta.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
snapshot DocumentSnapshot<AppModelType, DBMModelType> O snapshot do documento a terminar.

Retorna:

QueryEndAtConstraint (link em inglês)

Um QueryEndAtConstraint a ser transmitido para query()

endBefore(instantâneo)

Cria uma QueryEndAtConstraint que modifica o conjunto de resultados para terminar antes do documento fornecido (exclusivo). A posição final é relativa à ordem da consulta. O documento precisa conter todos os campos fornecidos no orderBy da consulta.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
snapshot DocumentSnapshot<AppModelType, DBMModelType> O snapshot do documento que será finalizado antes.

Retorna:

QueryEndAtConstraint (link em inglês)

Um QueryEndAtConstraint a ser transmitido para query()

startAfter(snapshot)

Cria uma QueryStartAtConstraint que modifica o conjunto de resultados para começar depois do documento fornecido (exclusivo). A posição inicial é relativa à ordem da consulta. O documento precisa conter todos os campos fornecidos no orderBy da consulta.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
snapshot DocumentSnapshot<AppModelType, DBMModelType> O snapshot do documento a ser iniciado.

Retorna:

QueryStartAtConstraint (link em inglês)

Uma QueryStartAtConstraint a ser transmitida para query()

startAt(snapshot)

Cria uma QueryStartAtConstraint que modifica o conjunto de resultados para começar pelo documento fornecido (inclusive). A posição inicial é relativa à ordem da consulta. O documento precisa conter todos os campos fornecidos no orderBy dessa consulta.

Assinatura:

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

Parâmetros

Parâmetro Tipo Descrição
snapshot DocumentSnapshot<AppModelType, DBMModelType> O snapshot do documento para começar.

Retorna:

QueryStartAtConstraint (link em inglês)

Uma QueryStartAtConstraint a ser transmitida para query().

função(valores, ...)

vetor(valores)

Cria um novo VectorValue criado com uma cópia da matriz de números fornecida.

Assinatura:

export declare function vector(values?: number[]): VectorValue;

Parâmetros

Parâmetro Tipo Descrição
values número[] Crie uma instância de VectorValue com uma cópia dessa matriz de números.

Retorna:

VectorValue (em inglês)

Um novo VectorValue criado com uma cópia da matriz de números fornecida.

AddPrefixToKeys

Retorna um novo mapa em que cada chave é prefixada com a chave externa anexada a um ponto.

Assinatura:

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];
};

AggregateFieldType

A união de todos os tipos de AggregateField com suporte do Firestore.

Assinatura:

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

AggregateSpecData

Um tipo com chaves que são extraídas de uma AggregateSpec e com valores que são o resultado da agregação realizada pelo AggregateField correspondente da entrada AggregateSpec.

Assinatura:

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

Tipo de agregação

Tipo de união que representa o tipo de agregação a ser realizado.

Assinatura:

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

ChildUpdateFields

Auxiliar para calcular os campos aninhados de um determinado tipo T1. Isso é necessário para distribuir tipos de união, como undefined | {...} (acontece com propriedades opcionais) ou {a: A} | {b: B}.

Nesse caso de uso, V é usado para distribuir os tipos de união de T[K] em Record, já que T[K] é avaliado como uma expressão e não distribuído.

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

Assinatura:

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

FirestoreErrorCode

O conjunto de códigos de status do Firestore. Os códigos são os mesmos expostos pelo gRPC aqui: https://github.com/grpc/grpc/blob/master/doc/statuscodes.md

Valores possíveis: - 'cancelled': a operação foi cancelada (normalmente pelo autor da chamada). - "Desconhecido": erro desconhecido ou um erro de um domínio de erro diferente. - "invalid-argument": o cliente especificou um argumento inválido. Observe que isso é diferente de "precondição com falha". "argumento inválido" indica argumentos problemáticos, independentemente do estado do sistema (por exemplo, um nome de campo inválido). - "prazo excedido": o prazo expirou antes que a operação fosse concluída. Para operações que alteram o estado do sistema, este erro pode ser retornado mesmo que a operação tenha sido concluída com sucesso. Por exemplo, uma resposta bem-sucedida de um servidor pode ter atrasado tempo suficiente para que o prazo expirasse. - "not-found": algum documento solicitado não foi encontrado. - "já-existe": algum documento que tentamos criar já existe. - "permission-denied": o autor da chamada não tem permissão para executar a operação especificada. - 'resource-exhausted': algum recurso foi esgotado, talvez uma cota por usuário, ou talvez todo o sistema de arquivos esteja sem espaço. - 'failed-precondition': a operação foi rejeitada porque o sistema não está no estado necessário para a execução dela. - 'aborted': a operação foi cancelada, normalmente devido a um problema de simultaneidade, como cancelamentos de transações etc. - 'out-of-range': a operação foi tentada depois do intervalo válido. - "não implementado": a operação não foi implementada ou não é compatível/ativada. - 'internal': erros internos. Significa que algumas invariantes esperadas pelo sistema subjacente foram corrompidas. Se você encontrar um desses erros, significa que há algo muito errado. - "indisponível": o serviço não está disponível no momento. Provavelmente, essa é uma condição temporária e poderá ser corrigida ao tentar novamente com uma espera. - 'data-loss': perda ou corrupção de dados irrecuperável. - "unauthenticated": a solicitação não tem credenciais de autenticação válidas para a operação.

Assinatura:

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';

NestedUpdateFields

Para cada campo (por exemplo, "bar"), encontre todas as chaves aninhadas (por exemplo, {'bar.baz': T1, 'bar.qux': T2}). Faça a interseção entre eles para criar um único mapa com todas as chaves possíveis marcadas como opcionais.

Assinatura:

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

Ordem por Direção

A direção de uma cláusula orderBy() é especificada como "desc". ou "asc" (decrescente ou crescente).

Assinatura:

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

ParcialWithFieldValue

Semelhante ao Partial<T> do TypeScript, mas permite que campos aninhados sejam omitidos e FieldValues sejam transmitidos como valores de propriedade.

Assinatura:

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

Primário

Tipos primitivos.

Assinatura:

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

QueryConstraintType

Descreve as diferentes restrições de consulta disponíveis neste SDK.

Assinatura:

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

QueryFilterConstraint

QueryFilterConstraint é um tipo de união auxiliar que representa QueryFieldFilterConstraint e QueryCompositeFilterConstraint.

Assinatura:

export declare type QueryFilterConstraint = QueryFieldFilterConstraint | QueryCompositeFilterConstraint;

QueryNonFilterConstraint

QueryNonFilterConstraint é um tipo de união auxiliar que representa QueryConstraints usadas para restringir ou ordenar o conjunto de documentos, mas que não filtram explicitamente em um campo de documento. QueryNonFilterConstraints são criados invocando orderBy(), startAt(), startAfter(), endBefore(), endAt(), limit() ou limitToLast() e podem ser transmitidos para query() para criar uma nova instância de consulta que também contenha a .18/query()QueryConstraint

Assinatura:

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

SetOptions

Um objeto de opções que configura o comportamento de setDoc() e chama. Essas chamadas podem ser configuradas para realizar mesclagens granulares em vez de substituir os documentos de destino por completo, fornecendo um SetOptions com merge: true.

Assinatura:

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

UniãoToIntersecção

Dado um tipo de união U = T1 | T2 | ..., retorna um tipo interseccionado (T1 & T2 & ...).

Usa tipos condicionais distributivos e inferência de tipos condicionais. Isso funciona porque vários candidatos para a mesma variável de tipo em posições de contravariantes fazem com que um tipo de interseção seja inferido. 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

Assinatura:

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

Dados de atualização

Atualize dados (para uso com updateDoc()) que consistem em caminhos de campo (por exemplo, "foo" ou "foo.baz") mapeados para valores. Os campos que contêm pontos fazem referência a campos aninhados no documento. Os valores de campo podem ser transmitidos como valores de propriedade.

Assinatura:

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

OndeFilterOp

As condições de filtro em uma cláusula where() são especificadas usando as strings '&lt;', '&lt;=', '==', '!=', '&gt;=', '&gt;', 'array-contains', 'in', 'array-contains-any' e 'not-in'.

Assinatura:

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

ComValor do campo

Permite que FieldValues sejam passados como um valor de propriedade, mantendo a segurança de tipo.

Assinatura:

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