Do not edit this file. It is a report generated by API Extractor.
import { FirebaseApp } from '@firebase/app';
// @beta
export function add(first: Expr, second: Expr | unknown, ...others: Array<Expr | unknown>): FunctionExpr;
// @beta
export function add(fieldName: string, second: Expr | unknown, ...others: Array<Expr | unknown>): FunctionExpr;
// @beta (undocumented)
export class AddFields implements Stage {
constructor(fields: Map<string, Expr>);
// (undocumented)
name: string;
}
// @beta (undocumented)
export class Aggregate implements Stage {
constructor(accumulators: Map<string, AggregateFunction>, groups: Map<string, Expr>);
// (undocumented)
name: string;
}
// @beta
export class AggregateFunction {
constructor(name: string, params: Expr[]);
as(name: string): AggregateWithAlias;
// (undocumented)
exprType: ExprType;
}
// @beta
export class AggregateWithAlias {
constructor(aggregate: AggregateFunction, alias: string);
// (undocumented)
readonly aggregate: AggregateFunction;
// (undocumented)
readonly alias: string;
}
// @beta
export function and(first: BooleanExpr, second: BooleanExpr, ...more: BooleanExpr[]): BooleanExpr;
// @beta
export function array(elements: unknown[]): FunctionExpr;
// @beta
export function arrayConcat(firstArray: Expr, secondArray: Expr | unknown[], ...otherArrays: Array<Expr | unknown[]>): FunctionExpr;
// @beta
export function arrayConcat(firstArrayField: string, secondArray: Expr | unknown[], ...otherArrays: Array<Expr | unknown[]>): FunctionExpr;
// @beta
export function arrayContains(array: Expr, element: Expr): FunctionExpr;
// @beta
export function arrayContains(array: Expr, element: unknown): FunctionExpr;
// @beta
export function arrayContains(fieldName: string, element: Expr): FunctionExpr;
// @beta
export function arrayContains(fieldName: string, element: unknown): BooleanExpr;
// @beta
export function arrayContainsAll(array: Expr, values: Array<Expr | unknown>): BooleanExpr;
// @beta
export function arrayContainsAll(fieldName: string, values: Array<Expr | unknown>): BooleanExpr;
// @beta
export function arrayContainsAll(array: Expr, arrayExpression: Expr): BooleanExpr;
// @beta
export function arrayContainsAll(fieldName: string, arrayExpression: Expr): BooleanExpr;
// @beta
export function arrayContainsAny(array: Expr, values: Array<Expr | unknown>): BooleanExpr;
// @beta
export function arrayContainsAny(fieldName: string, values: Array<Expr | unknown>): BooleanExpr;
// @beta
export function arrayContainsAny(array: Expr, values: Expr): BooleanExpr;
// @beta
export function arrayContainsAny(fieldName: string, values: Expr): BooleanExpr;
// @beta
export function arrayLength(array: Expr): FunctionExpr;
// @beta
export function arrayOffset(arrayField: string, offset: number): FunctionExpr;
// @beta
export function arrayOffset(arrayField: string, offsetExpr: Expr): FunctionExpr;
// @beta
export function arrayOffset(arrayExpression: Expr, offset: number): FunctionExpr;
// @beta
export function arrayOffset(arrayExpression: Expr, offsetExpr: Expr): FunctionExpr;
// @beta
export function ascending(expr: Expr): Ordering;
// @beta
export function ascending(fieldName: string): Ordering;
// @beta
export function avg(expression: Expr): AggregateFunction;
// @beta
export function avg(fieldName: string): AggregateFunction;
// Warning: (ae-forgotten-export) The symbol "Bytes" needs to be exported by the entry point pipelines.d.ts
//
// @beta
export function bitAnd(field: string, otherBits: number | Bytes): FunctionExpr;
// @beta
export function bitAnd(field: string, bitsExpression: Expr): FunctionExpr;
// @beta
export function bitAnd(bitsExpression: Expr, otherBits: number | Bytes): FunctionExpr;
// @beta
export function bitAnd(bitsExpression: Expr, otherBitsExpression: Expr): FunctionExpr;
// @beta
export function bitLeftShift(field: string, y: number): FunctionExpr;
// @beta
export function bitLeftShift(field: string, numberExpr: Expr): FunctionExpr;
// @beta
export function bitLeftShift(xValue: Expr, y: number): FunctionExpr;
// @beta
export function bitLeftShift(xValue: Expr, numberExpr: Expr): FunctionExpr;
// @beta
export function bitNot(field: string): FunctionExpr;
// @beta
export function bitNot(bitsValueExpression: Expr): FunctionExpr;
// @beta
export function bitOr(field: string, otherBits: number | Bytes): FunctionExpr;
// @beta
export function bitOr(field: string, bitsExpression: Expr): FunctionExpr;
// @beta
export function bitOr(bitsExpression: Expr, otherBits: number | Bytes): FunctionExpr;
// @beta
export function bitOr(bitsExpression: Expr, otherBitsExpression: Expr): FunctionExpr;
// @beta
export function bitRightShift(field: string, y: number): FunctionExpr;
// @beta
export function bitRightShift(field: string, numberExpr: Expr): FunctionExpr;
// @beta
export function bitRightShift(xValue: Expr, y: number): FunctionExpr;
// @beta
export function bitRightShift(xValue: Expr, numberExpr: Expr): FunctionExpr;
// @beta
export function bitXor(field: string, otherBits: number | Bytes): FunctionExpr;
// @beta
export function bitXor(field: string, bitsExpression: Expr): FunctionExpr;
// @beta
export function bitXor(bitsExpression: Expr, otherBits: number | Bytes): FunctionExpr;
// @beta
export function bitXor(bitsExpression: Expr, otherBitsExpression: Expr): FunctionExpr;
// @beta
export class BooleanExpr extends FunctionExpr {
countIf(): AggregateFunction;
// (undocumented)
filterable: true;
not(): BooleanExpr;
}
// @beta
export function byteLength(expr: Expr): FunctionExpr;
// @beta
export function byteLength(fieldName: string): FunctionExpr;
// @beta
export function charLength(fieldName: string): FunctionExpr;
// @beta
export function charLength(stringExpression: Expr): FunctionExpr;
// @beta (undocumented)
export class CollectionGroupSource implements Stage {
constructor(collectionId: string);
// (undocumented)
name: string;
}
// @beta (undocumented)
export class CollectionSource implements Stage {
constructor(collectionPath: string);
// (undocumented)
name: string;
}
// @beta
export function cond(condition: BooleanExpr, thenExpr: Expr, elseExpr: Expr): FunctionExpr;
// @beta
export class Constant extends Expr {
// (undocumented)
readonly exprType: ExprType;
}
// Warning: (ae-incompatible-release-tags) The symbol "constant" is marked as @public, but its signature references "Constant" which is marked as @beta
//
// @public
export function constant(value: number): Constant;
// Warning: (ae-incompatible-release-tags) The symbol "constant" is marked as @public, but its signature references "Constant" which is marked as @beta
//
// @public
export function constant(value: string): Constant;
// Warning: (ae-incompatible-release-tags) The symbol "constant" is marked as @public, but its signature references "Constant" which is marked as @beta
//
// @public
export function constant(value: boolean): Constant;
// Warning: (ae-incompatible-release-tags) The symbol "constant" is marked as @public, but its signature references "Constant" which is marked as @beta
//
// @public
export function constant(value: null): Constant;
// Warning: (ae-forgotten-export) The symbol "GeoPoint" needs to be exported by the entry point pipelines.d.ts
// Warning: (ae-incompatible-release-tags) The symbol "constant" is marked as @public, but its signature references "Constant" which is marked as @beta
//
// @public
export function constant(value: GeoPoint): Constant;
// Warning: (ae-forgotten-export) The symbol "Timestamp" needs to be exported by the entry point pipelines.d.ts
// Warning: (ae-incompatible-release-tags) The symbol "constant" is marked as @public, but its signature references "Constant" which is marked as @beta
//
// @public
export function constant(value: Timestamp): Constant;
// Warning: (ae-incompatible-release-tags) The symbol "constant" is marked as @public, but its signature references "Constant" which is marked as @beta
//
// @public
export function constant(value: Date): Constant;
// Warning: (ae-incompatible-release-tags) The symbol "constant" is marked as @public, but its signature references "Constant" which is marked as @beta
//
// @public
export function constant(value: Bytes): Constant;
// Warning: (ae-forgotten-export) The symbol "DocumentReference" needs to be exported by the entry point pipelines.d.ts
// Warning: (ae-incompatible-release-tags) The symbol "constant" is marked as @public, but its signature references "Constant" which is marked as @beta
//
// @public
export function constant(value: DocumentReference): Constant;
// Warning: (ae-forgotten-export) The symbol "VectorValue" needs to be exported by the entry point pipelines.d.ts
// Warning: (ae-incompatible-release-tags) The symbol "constant" is marked as @public, but its signature references "Constant" which is marked as @beta
//
// @public
export function constant(value: VectorValue): Constant;
// @beta
export function cosineDistance(fieldName: string, vector: number[] | VectorValue): FunctionExpr;
// @beta
export function cosineDistance(fieldName: string, vectorExpression: Expr): FunctionExpr;
// @beta
export function cosineDistance(vectorExpression: Expr, vector: number[] | Expr): FunctionExpr;
// @beta
export function cosineDistance(vectorExpression: Expr, otherVectorExpression: Expr): FunctionExpr;
// @beta
export function count(expression: Expr): AggregateFunction;
// Warning: (ae-incompatible-release-tags) The symbol "count" is marked as @public, but its signature references "AggregateFunction" which is marked as @beta
//
// @public
export function count(fieldName: string): AggregateFunction;
// @beta
export function countAll(): AggregateFunction;
// @beta
export function countIf(booleanExpr: BooleanExpr): AggregateFunction;
// @beta
export function currentContext(): FunctionExpr;
// @beta (undocumented)
export class DatabaseSource implements Stage {
// (undocumented)
name: string;
}
// @beta
export function descending(expr: Expr): Ordering;
// @beta
export function descending(fieldName: string): Ordering;
// @beta (undocumented)
export class Distinct implements Stage {
constructor(groups: Map<string, Expr>);
// (undocumented)
name: string;
}
// @beta
export function divide(left: Expr, right: Expr): FunctionExpr;
// @beta
export function divide(expression: Expr, value: unknown): FunctionExpr;
// @beta
export function divide(fieldName: string, expressions: Expr): FunctionExpr;
// @beta
export function divide(fieldName: string, value: unknown): FunctionExpr;
// @beta
export function documentId(documentPath: string | DocumentReference): FunctionExpr;
// @beta
export function documentId(documentPathExpr: Expr): FunctionExpr;
// @beta (undocumented)
export class DocumentsSource implements Stage {
constructor(docPaths: string[]);
// (undocumented)
name: string;
// (undocumented)
static of(refs: Array<string | DocumentReference>): DocumentsSource;
}
// @beta
export function dotProduct(fieldName: string, vector: number[] | VectorValue): FunctionExpr;
// @beta
export function dotProduct(fieldName: string, vectorExpression: Expr): FunctionExpr;
// @beta
export function dotProduct(vectorExpression: Expr, vector: number[] | VectorValue): FunctionExpr;
// @beta
export function dotProduct(vectorExpression: Expr, otherVectorExpression: Expr): FunctionExpr;
// @beta
export function endsWith(fieldName: string, suffix: string): BooleanExpr;
// @beta
export function endsWith(fieldName: string, suffix: Expr): BooleanExpr;
// @beta
export function endsWith(stringExpression: Expr, suffix: string): BooleanExpr;
// @beta
export function endsWith(stringExpression: Expr, suffix: Expr): BooleanExpr;
// @beta
export function eq(left: Expr, right: Expr): BooleanExpr;
// @beta
export function eq(expression: Expr, value: unknown): BooleanExpr;
// @beta
export function eq(fieldName: string, expression: Expr): BooleanExpr;
// @beta
export function eq(fieldName: string, value: unknown): BooleanExpr;
// @beta
export function eqAny(expression: Expr, values: Array<Expr | unknown>): BooleanExpr;
// @beta
export function eqAny(expression: Expr, arrayExpression: Expr): BooleanExpr;
// @beta
export function eqAny(fieldName: string, values: Array<Expr | unknown>): BooleanExpr;
// @beta
export function eqAny(fieldName: string, arrayExpression: Expr): BooleanExpr;
// @beta
export function euclideanDistance(fieldName: string, vector: number[] | VectorValue): FunctionExpr;
// @beta
export function euclideanDistance(fieldName: string, vectorExpression: Expr): FunctionExpr;
// @beta
export function euclideanDistance(vectorExpression: Expr, vector: number[] | VectorValue): FunctionExpr;
// @beta
export function euclideanDistance(vectorExpression: Expr, otherVectorExpression: Expr): FunctionExpr;
// @public
export function execute(pipeline: Pipeline): Promise<PipelineSnapshot>;
// @beta
export function exists(value: Expr): BooleanExpr;
// @beta
export function exists(fieldName: string): BooleanExpr;
// @beta
export abstract class Expr {
add(second: Expr | unknown, ...others: Array<Expr | unknown>): FunctionExpr;
/* Excluded from this release type: _readUserData */
arrayConcat(secondArray: Expr | unknown[], ...otherArrays: Array<Expr | unknown[]>): FunctionExpr;
/* Excluded from this release type: _readUserData */
arrayContains(expression: Expr): BooleanExpr;
/* Excluded from this release type: _readUserData */
arrayContains(value: unknown): BooleanExpr;
/* Excluded from this release type: _readUserData */
arrayContainsAll(values: Array<Expr | unknown>): BooleanExpr;
/* Excluded from this release type: _readUserData */
arrayContainsAll(arrayExpression: Expr): BooleanExpr;
/* Excluded from this release type: _readUserData */
arrayContainsAny(values: Array<Expr | unknown>): BooleanExpr;
/* Excluded from this release type: _readUserData */
arrayContainsAny(arrayExpression: Expr): BooleanExpr;
/* Excluded from this release type: _readUserData */
arrayLength(): FunctionExpr;
/* Excluded from this release type: _readUserData */
arrayOffset(offset: number): FunctionExpr;
/* Excluded from this release type: _readUserData */
arrayOffset(offsetExpr: Expr): FunctionExpr;
/* Excluded from this release type: _readUserData */
as(name: string): ExprWithAlias;
/* Excluded from this release type: _readUserData */
ascending(): Ordering;
/* Excluded from this release type: _readUserData */
avg(): AggregateFunction;
/* Excluded from this release type: _readUserData */
bitAnd(otherBits: number | Bytes): FunctionExpr;
/* Excluded from this release type: _readUserData */
bitAnd(bitsExpression: Expr): FunctionExpr;
/* Excluded from this release type: _readUserData */
bitLeftShift(y: number): FunctionExpr;
/* Excluded from this release type: _readUserData */
bitLeftShift(numberExpr: Expr): FunctionExpr;
/* Excluded from this release type: _readUserData */
bitNot(): FunctionExpr;
/* Excluded from this release type: _readUserData */
bitOr(otherBits: number | Bytes): FunctionExpr;
/* Excluded from this release type: _readUserData */
bitOr(bitsExpression: Expr): FunctionExpr;
/* Excluded from this release type: _readUserData */
bitRightShift(y: number): FunctionExpr;
/* Excluded from this release type: _readUserData */
bitRightShift(numberExpr: Expr): FunctionExpr;
/* Excluded from this release type: _readUserData */
bitXor(otherBits: number | Bytes): FunctionExpr;
/* Excluded from this release type: _readUserData */
bitXor(bitsExpression: Expr): FunctionExpr;
/* Excluded from this release type: _readUserData */
byteLength(): FunctionExpr;
/* Excluded from this release type: _readUserData */
charLength(): FunctionExpr;
/* Excluded from this release type: _readUserData */
cosineDistance(vectorExpression: Expr): FunctionExpr;
/* Excluded from this release type: _readUserData */
cosineDistance(vector: VectorValue | number[]): FunctionExpr;
/* Excluded from this release type: _readUserData */
count(): AggregateFunction;
/* Excluded from this release type: _readUserData */
descending(): Ordering;
/* Excluded from this release type: _readUserData */
divide(other: Expr): FunctionExpr;
/* Excluded from this release type: _readUserData */
divide(other: unknown): FunctionExpr;
/* Excluded from this release type: _readUserData */
documentId(): FunctionExpr;
/* Excluded from this release type: _readUserData */
dotProduct(vectorExpression: Expr): FunctionExpr;
/* Excluded from this release type: _readUserData */
dotProduct(vector: VectorValue | number[]): FunctionExpr;
/* Excluded from this release type: _readUserData */
endsWith(suffix: string): BooleanExpr;
/* Excluded from this release type: _readUserData */
endsWith(suffix: Expr): BooleanExpr;
/* Excluded from this release type: _readUserData */
eq(expression: Expr): BooleanExpr;
/* Excluded from this release type: _readUserData */
eq(value: unknown): BooleanExpr;
/* Excluded from this release type: _readUserData */
eqAny(values: Array<Expr | unknown>): BooleanExpr;
/* Excluded from this release type: _readUserData */
eqAny(arrayExpression: Expr): BooleanExpr;
/* Excluded from this release type: _readUserData */
euclideanDistance(vectorExpression: Expr): FunctionExpr;
/* Excluded from this release type: _readUserData */
euclideanDistance(vector: VectorValue | number[]): FunctionExpr;
/* Excluded from this release type: _readUserData */
exists(): BooleanExpr;
/* Excluded from this release type: _readUserData */
// (undocumented)
abstract readonly exprType: ExprType;
/* Excluded from this release type: _readUserData */
gt(expression: Expr): BooleanExpr;
/* Excluded from this release type: _readUserData */
gt(value: unknown): BooleanExpr;
/* Excluded from this release type: _readUserData */
gte(expression: Expr): BooleanExpr;
/* Excluded from this release type: _readUserData */
gte(value: unknown): BooleanExpr;
/* Excluded from this release type: _readUserData */
ifError(catchExpr: Expr): FunctionExpr;
/* Excluded from this release type: _readUserData */
ifError(catchValue: unknown): FunctionExpr;
/* Excluded from this release type: _readUserData */
isAbsent(): BooleanExpr;
/* Excluded from this release type: _readUserData */
isError(): BooleanExpr;
/* Excluded from this release type: _readUserData */
isNan(): BooleanExpr;
/* Excluded from this release type: _readUserData */
isNotNan(): BooleanExpr;
/* Excluded from this release type: _readUserData */
isNotNull(): BooleanExpr;
/* Excluded from this release type: _readUserData */
isNull(): BooleanExpr;
/* Excluded from this release type: _readUserData */
like(pattern: string): FunctionExpr;
/* Excluded from this release type: _readUserData */
like(pattern: Expr): FunctionExpr;
/* Excluded from this release type: _readUserData */
logicalMaximum(second: Expr | unknown, ...others: Array<Expr | unknown>): FunctionExpr;
/* Excluded from this release type: _readUserData */
logicalMinimum(second: Expr | unknown, ...others: Array<Expr | unknown>): FunctionExpr;
/* Excluded from this release type: _readUserData */
lt(experession: Expr): BooleanExpr;
/* Excluded from this release type: _readUserData */
lt(value: unknown): BooleanExpr;
/* Excluded from this release type: _readUserData */
lte(expression: Expr): BooleanExpr;
/* Excluded from this release type: _readUserData */
lte(value: unknown): BooleanExpr;
/* Excluded from this release type: _readUserData */
manhattanDistance(vector: VectorValue | number[]): FunctionExpr;
/* Excluded from this release type: _readUserData */
manhattanDistance(vectorExpression: Expr): FunctionExpr;
/* Excluded from this release type: _readUserData */
mapGet(subfield: string): FunctionExpr;
/* Excluded from this release type: _readUserData */
mapMerge(secondMap: Record<string, unknown> | Expr, ...otherMaps: Array<Record<string, unknown> | Expr>): FunctionExpr;
/* Excluded from this release type: _readUserData */
mapRemove(key: string): FunctionExpr;
/* Excluded from this release type: _readUserData */
mapRemove(keyExpr: Expr): FunctionExpr;
/* Excluded from this release type: _readUserData */
maximum(): AggregateFunction;
/* Excluded from this release type: _readUserData */
minimum(): AggregateFunction;
/* Excluded from this release type: _readUserData */
mod(expression: Expr): FunctionExpr;
/* Excluded from this release type: _readUserData */
mod(value: unknown): FunctionExpr;
/* Excluded from this release type: _readUserData */
multiply(second: Expr | unknown, ...others: Array<Expr | unknown>): FunctionExpr;
/* Excluded from this release type: _readUserData */
neq(expression: Expr): BooleanExpr;
/* Excluded from this release type: _readUserData */
neq(value: unknown): BooleanExpr;
/* Excluded from this release type: _readUserData */
notEqAny(values: Array<Expr | unknown>): BooleanExpr;
/* Excluded from this release type: _readUserData */
notEqAny(arrayExpression: Expr): BooleanExpr;
/* Excluded from this release type: _readUserData */
regexContains(pattern: string): BooleanExpr;
/* Excluded from this release type: _readUserData */
regexContains(pattern: Expr): BooleanExpr;
/* Excluded from this release type: _readUserData */
regexMatch(pattern: string): BooleanExpr;
/* Excluded from this release type: _readUserData */
regexMatch(pattern: Expr): BooleanExpr;
/* Excluded from this release type: _readUserData */
replaceAll(find: string, replace: string): FunctionExpr;
/* Excluded from this release type: _readUserData */
replaceAll(find: Expr, replace: Expr): FunctionExpr;
/* Excluded from this release type: _readUserData */
replaceFirst(find: string, replace: string): FunctionExpr;
/* Excluded from this release type: _readUserData */
replaceFirst(find: Expr, replace: Expr): FunctionExpr;
/* Excluded from this release type: _readUserData */
reverse(): FunctionExpr;
/* Excluded from this release type: _readUserData */
startsWith(prefix: string): BooleanExpr;
/* Excluded from this release type: _readUserData */
startsWith(prefix: Expr): BooleanExpr;
/* Excluded from this release type: _readUserData */
strConcat(secondString: Expr | string, ...otherStrings: Array<Expr | string>): FunctionExpr;
/* Excluded from this release type: _readUserData */
strContains(substring: string): BooleanExpr;
/* Excluded from this release type: _readUserData */
strContains(expr: Expr): BooleanExpr;
/* Excluded from this release type: _readUserData */
substr(position: number, length?: number): FunctionExpr;
/* Excluded from this release type: _readUserData */
substr(position: Expr, length?: Expr): FunctionExpr;
/* Excluded from this release type: _readUserData */
subtract(other: Expr): FunctionExpr;
/* Excluded from this release type: _readUserData */
subtract(other: unknown): FunctionExpr;
/* Excluded from this release type: _readUserData */
sum(): AggregateFunction;
/* Excluded from this release type: _readUserData */
timestampAdd(unit: Expr, amount: Expr): FunctionExpr;
/* Excluded from this release type: _readUserData */
timestampAdd(unit: 'microsecond' | 'millisecond' | 'second' | 'minute' | 'hour' | 'day', amount: number): FunctionExpr;
/* Excluded from this release type: _readUserData */
timestampSub(unit: Expr, amount: Expr): FunctionExpr;
/* Excluded from this release type: _readUserData */
timestampSub(unit: 'microsecond' | 'millisecond' | 'second' | 'minute' | 'hour' | 'day', amount: number): FunctionExpr;
/* Excluded from this release type: _readUserData */
timestampToUnixMicros(): FunctionExpr;
/* Excluded from this release type: _readUserData */
timestampToUnixMillis(): FunctionExpr;
/* Excluded from this release type: _readUserData */
timestampToUnixSeconds(): FunctionExpr;
/* Excluded from this release type: _readUserData */
toLower(): FunctionExpr;
/* Excluded from this release type: _readUserData */
toUpper(): FunctionExpr;
/* Excluded from this release type: _readUserData */
trim(): FunctionExpr;
/* Excluded from this release type: _readUserData */
unixMicrosToTimestamp(): FunctionExpr;
/* Excluded from this release type: _readUserData */
unixMillisToTimestamp(): FunctionExpr;
/* Excluded from this release type: _readUserData */
unixSecondsToTimestamp(): FunctionExpr;
/* Excluded from this release type: _readUserData */
vectorLength(): FunctionExpr;
}
// @beta
export type ExprType = 'Field' | 'Constant' | 'Function' | 'AggregateFunction' | 'ListOfExprs' | 'ExprWithAlias';
// @beta (undocumented)
export class ExprWithAlias implements Selectable {
constructor(expr: Expr, alias: string);
// (undocumented)
readonly alias: string;
// (undocumented)
readonly expr: Expr;
// (undocumented)
exprType: ExprType;
// (undocumented)
selectable: true;
}
// @beta
export class Field extends Expr implements Selectable {
// (undocumented)
get alias(): string;
// (undocumented)
get expr(): Expr;
// (undocumented)
readonly exprType: ExprType;
// (undocumented)
fieldName(): string;
// (undocumented)
selectable: true;
}
// Warning: (ae-incompatible-release-tags) The symbol "field" is marked as @public, but its signature references "Field" which is marked as @beta
//
// @public
export function field(name: string): Field;
// Warning: (ae-forgotten-export) The symbol "FieldPath" needs to be exported by the entry point pipelines.d.ts
// Warning: (ae-incompatible-release-tags) The symbol "field" is marked as @public, but its signature references "Field" which is marked as @beta
//
// @public (undocumented)
export function field(path: FieldPath): Field;
// @beta (undocumented)
export class FindNearest implements Stage {
// (undocumented)
name: string;
}
// @beta (undocumented)
export interface FindNearestOptions {
// (undocumented)
distanceField?: string;
// (undocumented)
distanceMeasure: 'euclidean' | 'cosine' | 'dot_product';
// (undocumented)
field: Field | string;
// (undocumented)
limit?: number;
// (undocumented)
vectorValue: VectorValue | number[];
}
// @beta
export class FunctionExpr extends Expr {
constructor(name: string, params: Expr[]);
// (undocumented)
readonly exprType: ExprType;
}
// @beta (undocumented)
export class GenericStage implements Stage {
// (undocumented)
name: string;
}
// @beta
export function gt(left: Expr, right: Expr): BooleanExpr;
// @beta
export function gt(expression: Expr, value: unknown): BooleanExpr;
// @beta
export function gt(fieldName: string, expression: Expr): BooleanExpr;
// @beta
export function gt(fieldName: string, value: unknown): BooleanExpr;
// @beta
export function gte(left: Expr, right: Expr): BooleanExpr;
// @beta
export function gte(expression: Expr, value: unknown): BooleanExpr;
// @beta
export function gte(fieldName: string, value: Expr): BooleanExpr;
// @beta
export function gte(fieldName: string, value: unknown): BooleanExpr;
// @beta
export function ifError(tryExpr: Expr, catchExpr: Expr): FunctionExpr;
// @beta
export function ifError(tryExpr: Expr, catchValue: unknown): FunctionExpr;
// @beta
export function isAbsent(value: Expr): BooleanExpr;
// @beta
export function isAbsent(field: string): BooleanExpr;
// @beta
export function isError(value: Expr): BooleanExpr;
// @beta
export function isNan(value: Expr): BooleanExpr;
// @beta
export function isNan(fieldName: string): BooleanExpr;
// @beta
export function isNotNan(value: Expr): BooleanExpr;
// @beta
export function isNotNan(value: string): BooleanExpr;
// @beta
export function isNotNull(value: Expr): BooleanExpr;
// @beta
export function isNotNull(value: string): BooleanExpr;
// @beta
export function isNull(value: Expr): BooleanExpr;
// @beta
export function isNull(value: string): BooleanExpr;
// @beta
export function like(fieldName: string, pattern: string): BooleanExpr;
// @beta
export function like(fieldName: string, pattern: Expr): BooleanExpr;
// @beta
export function like(stringExpression: Expr, pattern: string): BooleanExpr;
// @beta
export function like(stringExpression: Expr, pattern: Expr): BooleanExpr;
// @beta (undocumented)
export class Limit implements Stage {
constructor(limit: number, convertedFromLimitTolast?: boolean);
// (undocumented)
readonly convertedFromLimitTolast: boolean;
// (undocumented)
readonly limit: number;
// (undocumented)
name: string;
}
// @beta
export function logicalMaximum(first: Expr, second: Expr | unknown, ...others: Array<Expr | unknown>): FunctionExpr;
// @beta
export function logicalMaximum(fieldName: string, second: Expr | unknown, ...others: Array<Expr | unknown>): FunctionExpr;
// @beta
export function logicalMinimum(first: Expr, second: Expr | unknown, ...others: Array<Expr | unknown>): FunctionExpr;
// @beta
export function logicalMinimum(fieldName: string, second: Expr | unknown, ...others: Array<Expr | unknown>): FunctionExpr;
// @beta
export function lt(left: Expr, right: Expr): BooleanExpr;
// @beta
export function lt(expression: Expr, value: unknown): BooleanExpr;
// @beta
export function lt(fieldName: string, expression: Expr): BooleanExpr;
// @beta
export function lt(fieldName: string, value: unknown): BooleanExpr;
// @beta
export function lte(left: Expr, right: Expr): BooleanExpr;
// @beta
export function lte(expression: Expr, value: unknown): BooleanExpr;
// Warning: (ae-incompatible-release-tags) The symbol "lte" is marked as @public, but its signature references "Expr" which is marked as @beta
// Warning: (ae-incompatible-release-tags) The symbol "lte" is marked as @public, but its signature references "BooleanExpr" which is marked as @beta
//
// @public
export function lte(fieldName: string, expression: Expr): BooleanExpr;
// @beta
export function lte(fieldName: string, value: unknown): BooleanExpr;
// @beta
export function manhattanDistance(fieldName: string, vector: number[] | VectorValue): FunctionExpr;
// @beta
export function manhattanDistance(fieldName: string, vectorExpression: Expr): FunctionExpr;
// @beta
export function manhattanDistance(vectorExpression: Expr, vector: number[] | VectorValue): FunctionExpr;
// @beta
export function manhattanDistance(vectorExpression: Expr, otherVectorExpression: Expr): FunctionExpr;
// @beta
export function map(elements: Record<string, unknown>): FunctionExpr;
// @beta
export function mapGet(fieldName: string, subField: string): FunctionExpr;
// @beta
export function mapGet(mapExpression: Expr, subField: string): FunctionExpr;
// @beta
export function mapMerge(mapField: string, secondMap: Record<string, unknown> | Expr, ...otherMaps: Array<Record<string, unknown> | Expr>): FunctionExpr;
// @beta
export function mapMerge(firstMap: Record<string, unknown> | Expr, secondMap: Record<string, unknown> | Expr, ...otherMaps: Array<Record<string, unknown> | Expr>): FunctionExpr;
// @beta
export function mapRemove(mapField: string, key: string): FunctionExpr;
// @beta
export function mapRemove(mapExpr: Expr, key: string): FunctionExpr;
// @beta
export function mapRemove(mapField: string, keyExpr: Expr): FunctionExpr;
// @beta
export function mapRemove(mapExpr: Expr, keyExpr: Expr): FunctionExpr;
// @beta
export function maximum(expression: Expr): AggregateFunction;
// @beta
export function maximum(fieldName: string): AggregateFunction;
// @beta
export function minimum(expression: Expr): AggregateFunction;
// @beta
export function minimum(fieldName: string): AggregateFunction;
// @beta
export function mod(left: Expr, right: Expr): FunctionExpr;
// @beta
export function mod(expression: Expr, value: unknown): FunctionExpr;
// @beta
export function mod(fieldName: string, expression: Expr): FunctionExpr;
// @beta
export function mod(fieldName: string, value: unknown): FunctionExpr;
// @beta
export function multiply(first: Expr, second: Expr | unknown, ...others: Array<Expr | unknown>): FunctionExpr;
// @beta
export function multiply(fieldName: string, second: Expr | unknown, ...others: Array<Expr | unknown>): FunctionExpr;
// @beta
export function neq(left: Expr, right: Expr): BooleanExpr;
// @beta
export function neq(expression: Expr, value: unknown): BooleanExpr;
// @beta
export function neq(fieldName: string, expression: Expr): BooleanExpr;
// @beta
export function neq(fieldName: string, value: unknown): BooleanExpr;
// @beta
export function not(booleanExpr: BooleanExpr): BooleanExpr;
// @beta
export function notEqAny(element: Expr, values: Array<Expr | unknown>): BooleanExpr;
// @beta
export function notEqAny(fieldName: string, values: Array<Expr | unknown>): BooleanExpr;
// @beta
export function notEqAny(element: Expr, arrayExpression: Expr): BooleanExpr;
// @beta
export function notEqAny(fieldName: string, arrayExpression: Expr): BooleanExpr;
// @beta (undocumented)
export class Offset implements Stage {
constructor(offset: number);
// (undocumented)
name: string;
}
// @beta
export function or(first: BooleanExpr, second: BooleanExpr, ...more: BooleanExpr[]): BooleanExpr;
// @beta
export class Ordering {
constructor(expr: Expr, direction: 'ascending' | 'descending');
// (undocumented)
readonly direction: 'ascending' | 'descending';
// (undocumented)
readonly expr: Expr;
}
// @public (undocumented)
export class Pipeline {
// Warning: (ae-incompatible-release-tags) The symbol "addFields" is marked as @public, but its signature references "Selectable" which is marked as @beta
addFields(field: Selectable, ...additionalFields: Selectable[]): Pipeline;
// Warning: (ae-incompatible-release-tags) The symbol "aggregate" is marked as @public, but its signature references "AggregateWithAlias" which is marked as @beta
aggregate(accumulator: AggregateWithAlias, ...additionalAccumulators: AggregateWithAlias[]): Pipeline;
aggregate(options: { accumulators: AggregateWithAlias[]; groups?: Array<string | Selectable>; }): Pipeline;
// Warning: (ae-incompatible-release-tags) The symbol "distinct" is marked as @public, but its signature references "Selectable" which is marked as @beta
distinct(group: string | Selectable, ...additionalGroups: Array<string | Selectable>): Pipeline;
// Warning: (ae-incompatible-release-tags) The symbol "findNearest" is marked as @public, but its signature references "FindNearestOptions" which is marked as @beta
//
// (undocumented)
findNearest(options: FindNearestOptions): Pipeline;
genericStage(name: string, params: unknown[]): Pipeline;
limit(limit: number): Pipeline;
offset(offset: number): Pipeline;
readUserData: any;
// Warning: (ae-incompatible-release-tags) The symbol "removeFields" is marked as @public, but its signature references "Field" which is marked as @beta
removeFields(fieldValue: Field | string, ...additionalFields: Array<Field | string>): Pipeline;
// Warning: (ae-incompatible-release-tags) The symbol "replaceWith" is marked as @public, but its signature references "Field" which is marked as @beta
replaceWith(fieldValue: Field | string): Pipeline;
sample(documents: number): Pipeline;
sample(options: { percentage: number; } | { documents: number; }): Pipeline;
// Warning: (ae-incompatible-release-tags) The symbol "select" is marked as @public, but its signature references "Selectable" which is marked as @beta
select(selection: Selectable | string, ...additionalSelections: Array<Selectable | string>): Pipeline;
// (undocumented)
selectablesToMap: any;
// Warning: (ae-incompatible-release-tags) The symbol "sort" is marked as @public, but its signature references "Ordering" which is marked as @beta
sort(ordering: Ordering, ...additionalOrderings: Ordering[]): Pipeline;
// (undocumented)
stages: any;
union(other: Pipeline): Pipeline;
// Warning: (ae-incompatible-release-tags) The symbol "unnest" is marked as @public, but its signature references "Selectable" which is marked as @beta
unnest(selectable: Selectable, indexField?: string): Pipeline;
// (undocumented)
userDataReader: any;
// Warning: (ae-incompatible-release-tags) The symbol "where" is marked as @public, but its signature references "BooleanExpr" which is marked as @beta
where(condition: BooleanExpr): Pipeline;
}
// Warning: (ae-forgotten-export) The symbol "DocumentData" needs to be exported by the entry point pipelines.d.ts
//
// @beta
export class PipelineResult<AppModelType = DocumentData> {
/* Excluded from this release type: _ref */
/* Excluded from this release type: _fields */
/* Excluded from this release type: __constructor */
get createTime(): Timestamp | undefined;
data(): AppModelType | undefined;
get(fieldPath: string | FieldPath | Field): any;
get id(): string | undefined;
get ref(): DocumentReference | undefined;
get updateTime(): Timestamp | undefined;
}
// @public (undocumented)
export class PipelineSnapshot {
// Warning: (ae-incompatible-release-tags) The symbol "__constructor" is marked as @public, but its signature references "PipelineResult" which is marked as @beta
constructor(pipeline: Pipeline, results: PipelineResult[], executionTime?: Timestamp);
get executionTime(): Timestamp;
get pipeline(): Pipeline;
// Warning: (ae-incompatible-release-tags) The symbol "results" is marked as @public, but its signature references "PipelineResult" which is marked as @beta
get results(): PipelineResult[];
}
// @beta
export class PipelineSource<PipelineType> {
collection(collectionPath: string): PipelineType;
/* Excluded from this release type: _createPipeline */
/* Excluded from this release type: __constructor */
// Warning: (ae-forgotten-export) The symbol "Query" needs to be exported by the entry point pipelines.d.ts
collection(collectionReference: Query): PipelineType;
/* Excluded from this release type: _createPipeline */
/* Excluded from this release type: __constructor */
collectionGroup(collectionId: string): PipelineType;
/* Excluded from this release type: _createPipeline */
/* Excluded from this release type: __constructor */
createFrom(query: Query): Pipeline;
/* Excluded from this release type: _createPipeline */
/* Excluded from this release type: __constructor */
database(): PipelineType;
/* Excluded from this release type: _createPipeline */
/* Excluded from this release type: __constructor */
documents(docs: Array<string | DocumentReference>): PipelineType;
}
// @beta
export function rand(): FunctionExpr;
// @beta
export function regexContains(fieldName: string, pattern: string): BooleanExpr;
// @beta
export function regexContains(fieldName: string, pattern: Expr): BooleanExpr;
// @beta
export function regexContains(stringExpression: Expr, pattern: string): BooleanExpr;
// @beta
export function regexContains(stringExpression: Expr, pattern: Expr): BooleanExpr;
// @beta
export function regexMatch(fieldName: string, pattern: string): BooleanExpr;
// @beta
export function regexMatch(fieldName: string, pattern: Expr): BooleanExpr;
// @beta
export function regexMatch(stringExpression: Expr, pattern: string): BooleanExpr;
// @beta
export function regexMatch(stringExpression: Expr, pattern: Expr): BooleanExpr;
// @beta
export function replaceAll(value: Expr, find: string, replace: string): FunctionExpr;
// @beta
export function replaceAll(value: Expr, find: Expr, replace: Expr): FunctionExpr;
// @beta
export function replaceAll(fieldName: string, find: string, replace: string): FunctionExpr;
// @beta
export function replaceFirst(value: Expr, find: string, replace: string): FunctionExpr;
// @beta
export function replaceFirst(value: Expr, find: Expr, replace: Expr): FunctionExpr;
// @beta
export function replaceFirst(fieldName: string, find: string, replace: string): FunctionExpr;
// @beta
export function reverse(stringExpression: Expr): FunctionExpr;
// @beta
export function reverse(field: string): FunctionExpr;
// @beta (undocumented)
export class Select implements Stage {
constructor(projections: Map<string, Expr>);
// (undocumented)
name: string;
}
// @beta
export interface Selectable {
// (undocumented)
readonly alias: string;
// (undocumented)
readonly expr: Expr;
// (undocumented)
selectable: true;
}
// @beta (undocumented)
export class Sort implements Stage {
constructor(orders: Ordering[]);
// (undocumented)
name: string;
}
// @beta (undocumented)
export interface Stage {
// (undocumented)
name: string;
}
// @beta
export function startsWith(fieldName: string, prefix: string): BooleanExpr;
// @beta
export function startsWith(fieldName: string, prefix: Expr): BooleanExpr;
// @beta
export function startsWith(stringExpression: Expr, prefix: string): BooleanExpr;
// @beta
export function startsWith(stringExpression: Expr, prefix: Expr): BooleanExpr;
// @beta
export function strConcat(fieldName: string, secondString: Expr | string, ...otherStrings: Array<Expr | string>): FunctionExpr;
// @beta
export function strConcat(firstString: Expr, secondString: Expr | string, ...otherStrings: Array<Expr | string>): FunctionExpr;
// @beta
export function strContains(fieldName: string, substring: string): BooleanExpr;
// @beta
export function strContains(fieldName: string, substring: Expr): BooleanExpr;
// @beta
export function strContains(stringExpression: Expr, substring: string): BooleanExpr;
// @beta
export function strContains(stringExpression: Expr, substring: Expr): BooleanExpr;
// @beta
export function substr(field: string, position: number, length?: number): FunctionExpr;
// @beta
export function substr(input: Expr, position: number, length?: number): FunctionExpr;
// @beta
export function substr(field: string, position: Expr, length?: Expr): FunctionExpr;
// @beta
export function substr(input: Expr, position: Expr, length?: Expr): FunctionExpr;
// @beta
export function subtract(left: Expr, right: Expr): FunctionExpr;
// @beta
export function subtract(expression: Expr, value: unknown): FunctionExpr;
// @beta
export function subtract(fieldName: string, expression: Expr): FunctionExpr;
// @beta
export function subtract(fieldName: string, value: unknown): FunctionExpr;
// @beta
export function sum(expression: Expr): AggregateFunction;
// @beta
export function sum(fieldName: string): AggregateFunction;
// @beta
export function timestampAdd(timestamp: Expr, unit: Expr, amount: Expr): FunctionExpr;
// @beta
export function timestampAdd(timestamp: Expr, unit: 'microsecond' | 'millisecond' | 'second' | 'minute' | 'hour' | 'day', amount: number): FunctionExpr;
// @beta
export function timestampAdd(fieldName: string, unit: 'microsecond' | 'millisecond' | 'second' | 'minute' | 'hour' | 'day', amount: number): FunctionExpr;
// @beta
export function timestampSub(timestamp: Expr, unit: Expr, amount: Expr): FunctionExpr;
// @beta
export function timestampSub(timestamp: Expr, unit: 'microsecond' | 'millisecond' | 'second' | 'minute' | 'hour' | 'day', amount: number): FunctionExpr;
// @beta
export function timestampSub(fieldName: string, unit: 'microsecond' | 'millisecond' | 'second' | 'minute' | 'hour' | 'day', amount: number): FunctionExpr;
// @beta
export function timestampToUnixMicros(expr: Expr): FunctionExpr;
// @beta
export function timestampToUnixMicros(fieldName: string): FunctionExpr;
// @beta
export function timestampToUnixMillis(expr: Expr): FunctionExpr;
// @beta
export function timestampToUnixMillis(fieldName: string): FunctionExpr;
// @beta
export function timestampToUnixSeconds(expr: Expr): FunctionExpr;
// @beta
export function timestampToUnixSeconds(fieldName: string): FunctionExpr;
// @beta
export function toLower(fieldName: string): FunctionExpr;
// @beta
export function toLower(stringExpression: Expr): FunctionExpr;
// @beta
export function toUpper(fieldName: string): FunctionExpr;
// @beta
export function toUpper(stringExpression: Expr): FunctionExpr;
// @beta
export function trim(fieldName: string): FunctionExpr;
// @beta
export function trim(stringExpression: Expr): FunctionExpr;
// @beta
export function unixMicrosToTimestamp(expr: Expr): FunctionExpr;
// @beta
export function unixMicrosToTimestamp(fieldName: string): FunctionExpr;
// @beta
export function unixMillisToTimestamp(expr: Expr): FunctionExpr;
// @beta
export function unixMillisToTimestamp(fieldName: string): FunctionExpr;
// @beta
export function unixSecondsToTimestamp(expr: Expr): FunctionExpr;
// @beta
export function unixSecondsToTimestamp(fieldName: string): FunctionExpr;
// @beta
export function vectorLength(vectorExpression: Expr): FunctionExpr;
// @beta
export function vectorLength(fieldName: string): FunctionExpr;
// @beta (undocumented)
export class Where implements Stage {
constructor(condition: BooleanExpr);
// (undocumented)
name: string;
}
// @beta
export function xor(first: BooleanExpr, second: BooleanExpr, ...additionalConditions: BooleanExpr[]): BooleanExpr;
// Warnings were encountered during analysis:
//
// /Users/markduckworth/projects/firebase-js-sdk/packages/firestore/dist/pipelines.d.ts:4552:26 - (ae-incompatible-release-tags) The symbol "accumulators" is marked as @public, but its signature references "AggregateWithAlias" which is marked as @beta
// /Users/markduckworth/projects/firebase-js-sdk/packages/firestore/dist/pipelines.d.ts:4552:62 - (ae-incompatible-release-tags) The symbol "groups" is marked as @public, but its signature references "Selectable" which is marked as @beta
// (No @packageDocumentation comment for this package)