@cloudbase/database 1.4.2 → 1.4.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/commonjs/index.d.ts +2 -0
- package/dist/commonjs/utils/utils.d.ts +2 -3
- package/dist/esm/ObjectId/index.d.ts +11 -0
- package/dist/esm/ObjectId/index.js +17 -0
- package/dist/esm/aggregate.d.ts +29 -0
- package/dist/esm/aggregate.js +121 -0
- package/dist/esm/collection.d.ts +17 -0
- package/dist/esm/collection.js +69 -0
- package/dist/esm/command.d.ts +175 -0
- package/dist/esm/command.js +281 -0
- package/dist/esm/commands/logic.d.ts +24 -0
- package/dist/esm/commands/logic.js +74 -0
- package/dist/esm/commands/query.d.ts +73 -0
- package/dist/esm/commands/query.js +141 -0
- package/dist/esm/commands/update.d.ts +29 -0
- package/dist/esm/commands/update.js +44 -0
- package/dist/esm/config/app.config.d.ts +6 -0
- package/dist/esm/config/app.config.js +5 -0
- package/dist/esm/config/error.config.d.ts +3 -0
- package/dist/esm/config/error.config.js +13 -0
- package/dist/esm/const/code.d.ts +34 -0
- package/dist/esm/const/code.js +34 -0
- package/dist/esm/constant.d.ts +54 -0
- package/dist/esm/constant.js +67 -0
- package/dist/esm/document.d.ts +14 -0
- package/dist/esm/document.js +214 -0
- package/dist/esm/geo/index.d.ts +6 -0
- package/dist/esm/geo/index.js +6 -0
- package/dist/esm/geo/interface.d.ts +24 -0
- package/dist/esm/geo/interface.js +0 -0
- package/dist/esm/geo/lineString.d.ts +19 -0
- package/dist/esm/geo/lineString.js +54 -0
- package/dist/esm/geo/multiLineString.d.ts +18 -0
- package/dist/esm/geo/multiLineString.js +53 -0
- package/dist/esm/geo/multiPoint.d.ts +18 -0
- package/dist/esm/geo/multiPoint.js +47 -0
- package/dist/esm/geo/multiPolygon.d.ts +18 -0
- package/dist/esm/geo/multiPolygon.js +59 -0
- package/dist/esm/geo/point.d.ts +19 -0
- package/dist/esm/geo/point.js +40 -0
- package/dist/esm/geo/polygon.d.ts +19 -0
- package/dist/esm/geo/polygon.js +67 -0
- package/dist/esm/helper/symbol.d.ts +15 -0
- package/dist/esm/helper/symbol.js +15 -0
- package/dist/esm/index.d.ts +52 -0
- package/dist/esm/index.js +35 -0
- package/dist/esm/operator-map.d.ts +4 -0
- package/dist/esm/operator-map.js +20 -0
- package/dist/esm/query.d.ts +38 -0
- package/dist/esm/query.js +246 -0
- package/dist/esm/realtime/error.d.ts +7 -0
- package/dist/esm/realtime/error.js +8 -0
- package/dist/esm/realtime/listener.d.ts +14 -0
- package/dist/esm/realtime/listener.js +14 -0
- package/dist/esm/realtime/message.d.ts +3 -0
- package/dist/esm/realtime/message.js +6 -0
- package/dist/esm/realtime/snapshot.d.ts +16 -0
- package/dist/esm/realtime/snapshot.js +39 -0
- package/dist/esm/realtime/virtual-websocket-client.d.ts +63 -0
- package/dist/esm/realtime/virtual-websocket-client.js +733 -0
- package/dist/esm/realtime/websocket-client.d.ts +78 -0
- package/dist/esm/realtime/websocket-client.js +564 -0
- package/dist/esm/realtime/ws-event.d.ts +126 -0
- package/dist/esm/realtime/ws-event.js +137 -0
- package/dist/esm/regexp/index.d.ts +18 -0
- package/dist/esm/regexp/index.js +26 -0
- package/dist/esm/serializer/common.d.ts +11 -0
- package/dist/esm/serializer/common.js +82 -0
- package/dist/esm/serializer/datatype.d.ts +7 -0
- package/dist/esm/serializer/datatype.js +95 -0
- package/dist/esm/serializer/query.d.ts +8 -0
- package/dist/esm/serializer/query.js +251 -0
- package/dist/esm/serializer/update.d.ts +16 -0
- package/dist/esm/serializer/update.js +139 -0
- package/dist/esm/serverDate/index.d.ts +13 -0
- package/dist/esm/serverDate/index.js +19 -0
- package/dist/esm/transaction/index.d.ts +30 -0
- package/dist/esm/transaction/index.js +100 -0
- package/dist/esm/transaction.d.ts +42 -0
- package/dist/esm/transaction.js +121 -0
- package/dist/esm/typings/index.d.ts +45 -0
- package/dist/esm/typings/index.js +0 -0
- package/dist/esm/typings/realtime.d.ts +219 -0
- package/dist/esm/typings/realtime.js +0 -0
- package/dist/esm/util.d.ts +9 -0
- package/dist/esm/util.js +98 -0
- package/dist/esm/utils/error.d.ts +37 -0
- package/dist/esm/utils/error.js +49 -0
- package/dist/esm/utils/msg.d.ts +0 -0
- package/dist/esm/utils/msg.js +0 -0
- package/dist/esm/utils/symbol.d.ts +8 -0
- package/dist/esm/utils/symbol.js +36 -0
- package/dist/esm/utils/type.d.ts +13 -0
- package/dist/esm/utils/type.js +20 -0
- package/dist/esm/utils/utils.d.ts +19 -0
- package/dist/esm/utils/utils.js +55 -0
- package/dist/esm/validate.d.ts +1 -0
- package/dist/esm/validate.js +152 -0
- package/package.json +3 -2
- package/src/index.ts +2 -0
- package/.trunk/configs/.markdownlint.yaml +0 -10
- package/.trunk/trunk.yaml +0 -26
package/dist/commonjs/index.d.ts
CHANGED
|
@@ -1,11 +1,10 @@
|
|
|
1
1
|
import { QueryOption, UpdateOption } from '../query';
|
|
2
|
-
import { EJSON } from 'bson';
|
|
3
2
|
export declare const sleep: (ms?: number) => Promise<unknown>;
|
|
4
3
|
export declare const autoCount: (domain?: string) => number;
|
|
5
4
|
export declare const getReqOpts: (apiOptions: QueryOption | UpdateOption) => any;
|
|
6
5
|
export declare const filterUndefined: (o: any) => any;
|
|
7
|
-
export declare const stringifyByEJSON: (params: any) =>
|
|
8
|
-
export declare const parseByEJSON: (params: any) =>
|
|
6
|
+
export declare const stringifyByEJSON: (params: any) => any;
|
|
7
|
+
export declare const parseByEJSON: (params: any) => any;
|
|
9
8
|
export declare class TcbError extends Error {
|
|
10
9
|
readonly code: string;
|
|
11
10
|
readonly message: string;
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export declare class ObjectId {
|
|
2
|
+
id: string;
|
|
3
|
+
constructor({ id }?: {
|
|
4
|
+
id?: string;
|
|
5
|
+
});
|
|
6
|
+
readonly _internalType: import("../utils/symbol").InternalSymbol;
|
|
7
|
+
parse(): {
|
|
8
|
+
$oid: string;
|
|
9
|
+
};
|
|
10
|
+
}
|
|
11
|
+
export declare function ObjectIdConstructor(opt: any): ObjectId;
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { SYMBOL_OBJECTID } from '../helper/symbol';
|
|
2
|
+
export class ObjectId {
|
|
3
|
+
constructor({ id = '' } = {}) {
|
|
4
|
+
this.id = id;
|
|
5
|
+
}
|
|
6
|
+
get _internalType() {
|
|
7
|
+
return SYMBOL_OBJECTID;
|
|
8
|
+
}
|
|
9
|
+
parse() {
|
|
10
|
+
return {
|
|
11
|
+
$oid: this.id
|
|
12
|
+
};
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
export function ObjectIdConstructor(opt) {
|
|
16
|
+
return new ObjectId(opt);
|
|
17
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
export default class Aggregation {
|
|
2
|
+
_db: any;
|
|
3
|
+
_request: any;
|
|
4
|
+
_stages: any[];
|
|
5
|
+
_collectionName: string;
|
|
6
|
+
constructor(db?: any, collectionName?: any, rawPipeline?: any);
|
|
7
|
+
end(): Promise<any>;
|
|
8
|
+
unwrap(): any[];
|
|
9
|
+
done(): {
|
|
10
|
+
[x: number]: any;
|
|
11
|
+
}[];
|
|
12
|
+
_pipe(stage: any, param: any, raw?: boolean): this;
|
|
13
|
+
addFields(param: any): this;
|
|
14
|
+
bucket(param: any): this;
|
|
15
|
+
bucketAuto(param: any): this;
|
|
16
|
+
count(param: any): this;
|
|
17
|
+
geoNear(param: any): this;
|
|
18
|
+
group(param: any): this;
|
|
19
|
+
limit(param: any): this;
|
|
20
|
+
match(param: any): this;
|
|
21
|
+
project(param: any): this;
|
|
22
|
+
lookup(param: any): this;
|
|
23
|
+
replaceRoot(param: any): this;
|
|
24
|
+
sample(param: any): this;
|
|
25
|
+
skip(param: any): this;
|
|
26
|
+
sort(param: any): this;
|
|
27
|
+
sortByCount(param: any): this;
|
|
28
|
+
unwind(param: any): this;
|
|
29
|
+
}
|
|
@@ -0,0 +1,121 @@
|
|
|
1
|
+
import { Db } from './index';
|
|
2
|
+
import { EJSON } from 'bson';
|
|
3
|
+
import { QuerySerializer } from './serializer/query';
|
|
4
|
+
import { stringifyByEJSON } from './utils/utils';
|
|
5
|
+
import { getType } from './utils/type';
|
|
6
|
+
import { Validate } from './validate';
|
|
7
|
+
import { Point } from './geo/point';
|
|
8
|
+
export default class Aggregation {
|
|
9
|
+
constructor(db, collectionName, rawPipeline) {
|
|
10
|
+
this._stages = [];
|
|
11
|
+
if (db && collectionName) {
|
|
12
|
+
this._db = db;
|
|
13
|
+
this._request = new Db.reqClass(this._db.config);
|
|
14
|
+
this._collectionName = collectionName;
|
|
15
|
+
if (rawPipeline && rawPipeline.length > 0) {
|
|
16
|
+
rawPipeline.forEach((stage) => {
|
|
17
|
+
Validate.isValidAggregation(stage);
|
|
18
|
+
const stageName = Object.keys(stage)[0];
|
|
19
|
+
this._pipe(stageName, stage[stageName], true);
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
async end() {
|
|
25
|
+
if (!this._collectionName || !this._db) {
|
|
26
|
+
throw new Error('Aggregation pipeline cannot send request');
|
|
27
|
+
}
|
|
28
|
+
const result = await this._request.send('database.aggregateDocuments', {
|
|
29
|
+
collectionName: this._collectionName,
|
|
30
|
+
stages: this._stages
|
|
31
|
+
});
|
|
32
|
+
if (result && result.data && result.data.list) {
|
|
33
|
+
return {
|
|
34
|
+
requestId: result.requestId,
|
|
35
|
+
data: result.data.list.map(EJSON.parse)
|
|
36
|
+
};
|
|
37
|
+
}
|
|
38
|
+
return result;
|
|
39
|
+
}
|
|
40
|
+
unwrap() {
|
|
41
|
+
return this._stages;
|
|
42
|
+
}
|
|
43
|
+
done() {
|
|
44
|
+
return this._stages.map(({ stageKey, stageValue }) => {
|
|
45
|
+
return {
|
|
46
|
+
[stageKey]: JSON.parse(stageValue)
|
|
47
|
+
};
|
|
48
|
+
});
|
|
49
|
+
}
|
|
50
|
+
_pipe(stage, param, raw = false) {
|
|
51
|
+
let transformParam = '';
|
|
52
|
+
if (getType(param) === 'object') {
|
|
53
|
+
transformParam = stringifyByEJSON(param);
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
transformParam = JSON.stringify(param);
|
|
57
|
+
}
|
|
58
|
+
this._stages.push({
|
|
59
|
+
stageKey: raw ? stage : `$${stage}`,
|
|
60
|
+
stageValue: transformParam
|
|
61
|
+
});
|
|
62
|
+
return this;
|
|
63
|
+
}
|
|
64
|
+
addFields(param) {
|
|
65
|
+
return this._pipe('addFields', param);
|
|
66
|
+
}
|
|
67
|
+
bucket(param) {
|
|
68
|
+
return this._pipe('bucket', param);
|
|
69
|
+
}
|
|
70
|
+
bucketAuto(param) {
|
|
71
|
+
return this._pipe('bucketAuto', param);
|
|
72
|
+
}
|
|
73
|
+
count(param) {
|
|
74
|
+
return this._pipe('count', param);
|
|
75
|
+
}
|
|
76
|
+
geoNear(param) {
|
|
77
|
+
if (param.query) {
|
|
78
|
+
param.query = QuerySerializer.encode(param.query);
|
|
79
|
+
}
|
|
80
|
+
if (param.distanceMultiplier && typeof (param.distanceMultiplier) === 'number') {
|
|
81
|
+
param.distanceMultiplier = param.distanceMultiplier;
|
|
82
|
+
}
|
|
83
|
+
if (param.near) {
|
|
84
|
+
param.near = new Point(param.near.longitude, param.near.latitude).toJSON();
|
|
85
|
+
}
|
|
86
|
+
return this._pipe('geoNear', param);
|
|
87
|
+
}
|
|
88
|
+
group(param) {
|
|
89
|
+
return this._pipe('group', param);
|
|
90
|
+
}
|
|
91
|
+
limit(param) {
|
|
92
|
+
return this._pipe('limit', param);
|
|
93
|
+
}
|
|
94
|
+
match(param) {
|
|
95
|
+
return this._pipe('match', QuerySerializer.encode(param));
|
|
96
|
+
}
|
|
97
|
+
project(param) {
|
|
98
|
+
return this._pipe('project', param);
|
|
99
|
+
}
|
|
100
|
+
lookup(param) {
|
|
101
|
+
return this._pipe('lookup', param);
|
|
102
|
+
}
|
|
103
|
+
replaceRoot(param) {
|
|
104
|
+
return this._pipe('replaceRoot', param);
|
|
105
|
+
}
|
|
106
|
+
sample(param) {
|
|
107
|
+
return this._pipe('sample', param);
|
|
108
|
+
}
|
|
109
|
+
skip(param) {
|
|
110
|
+
return this._pipe('skip', param);
|
|
111
|
+
}
|
|
112
|
+
sort(param) {
|
|
113
|
+
return this._pipe('sort', param);
|
|
114
|
+
}
|
|
115
|
+
sortByCount(param) {
|
|
116
|
+
return this._pipe('sortByCount', param);
|
|
117
|
+
}
|
|
118
|
+
unwind(param) {
|
|
119
|
+
return this._pipe('unwind', param);
|
|
120
|
+
}
|
|
121
|
+
}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { DocumentReference } from './document';
|
|
2
|
+
import { Query, QueryOption, UpdateOption } from './query';
|
|
3
|
+
import Aggregation from './aggregate';
|
|
4
|
+
export declare class CollectionReference extends Query {
|
|
5
|
+
protected _transactionId: string;
|
|
6
|
+
readonly name: string;
|
|
7
|
+
doc(docID: string | number): DocumentReference;
|
|
8
|
+
add(data: any): Promise<{
|
|
9
|
+
ids?: string[];
|
|
10
|
+
id?: string;
|
|
11
|
+
inserted?: number;
|
|
12
|
+
ok?: number;
|
|
13
|
+
requestId: string;
|
|
14
|
+
}>;
|
|
15
|
+
aggregate(rawPipeline?: object[]): Aggregation;
|
|
16
|
+
options(apiOptions: QueryOption | UpdateOption): CollectionReference;
|
|
17
|
+
}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
import { DocumentReference } from './document';
|
|
2
|
+
import { Query } from './query';
|
|
3
|
+
import Aggregation from './aggregate';
|
|
4
|
+
import { serialize } from './serializer/datatype';
|
|
5
|
+
import { getReqOpts, stringifyByEJSON } from './utils/utils';
|
|
6
|
+
import { Validate } from './validate';
|
|
7
|
+
import { isArray } from './utils/type';
|
|
8
|
+
export class CollectionReference extends Query {
|
|
9
|
+
constructor(db, coll, apiOptions, transactionId) {
|
|
10
|
+
super(db, coll, '', apiOptions, transactionId);
|
|
11
|
+
if (transactionId) {
|
|
12
|
+
this._transactionId = transactionId;
|
|
13
|
+
}
|
|
14
|
+
}
|
|
15
|
+
get name() {
|
|
16
|
+
return this._coll;
|
|
17
|
+
}
|
|
18
|
+
doc(docID) {
|
|
19
|
+
if (typeof docID !== 'string' && typeof docID !== 'number') {
|
|
20
|
+
throw new Error('docId必须为字符串或数字');
|
|
21
|
+
}
|
|
22
|
+
return new DocumentReference(this._db, this._coll, this._apiOptions, docID, this._transactionId);
|
|
23
|
+
}
|
|
24
|
+
async add(data) {
|
|
25
|
+
let transformData = data;
|
|
26
|
+
if (!isArray(data)) {
|
|
27
|
+
transformData = [data];
|
|
28
|
+
}
|
|
29
|
+
transformData = transformData.map(item => {
|
|
30
|
+
return stringifyByEJSON(serialize(item));
|
|
31
|
+
});
|
|
32
|
+
let params = {
|
|
33
|
+
collectionName: this._coll,
|
|
34
|
+
data: transformData
|
|
35
|
+
};
|
|
36
|
+
if (this._transactionId) {
|
|
37
|
+
params.transactionId = this._transactionId;
|
|
38
|
+
}
|
|
39
|
+
const res = await this._request.send('database.insertDocument', params, getReqOpts(this._apiOptions));
|
|
40
|
+
if (res.code) {
|
|
41
|
+
return res;
|
|
42
|
+
}
|
|
43
|
+
if (!isArray(data)) {
|
|
44
|
+
if (this._transactionId) {
|
|
45
|
+
return {
|
|
46
|
+
inserted: 1,
|
|
47
|
+
ok: 1,
|
|
48
|
+
id: res.data.insertedIds[0],
|
|
49
|
+
requestId: res.requestId
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
return {
|
|
53
|
+
id: res.data.insertedIds[0],
|
|
54
|
+
requestId: res.requestId
|
|
55
|
+
};
|
|
56
|
+
}
|
|
57
|
+
return {
|
|
58
|
+
ids: res.data.insertedIds,
|
|
59
|
+
requestId: res.requestId
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
aggregate(rawPipeline = []) {
|
|
63
|
+
return new Aggregation(this._db, this._coll, (this._apiOptions.raw || false) ? rawPipeline : []);
|
|
64
|
+
}
|
|
65
|
+
options(apiOptions) {
|
|
66
|
+
Validate.isValidOptions(apiOptions);
|
|
67
|
+
return new CollectionReference(this._db, this._coll, apiOptions, this._transactionId);
|
|
68
|
+
}
|
|
69
|
+
}
|
|
@@ -0,0 +1,175 @@
|
|
|
1
|
+
import { QueryCommand } from './commands/query';
|
|
2
|
+
import { LogicCommand } from './commands/logic';
|
|
3
|
+
import { UpdateCommand } from './commands/update';
|
|
4
|
+
import Aggregation from './aggregate';
|
|
5
|
+
export declare type IQueryCondition = Record<string, any> | LogicCommand;
|
|
6
|
+
export declare const Command: {
|
|
7
|
+
eq(val: any): QueryCommand;
|
|
8
|
+
neq(val: any): QueryCommand;
|
|
9
|
+
lt(val: any): QueryCommand;
|
|
10
|
+
lte(val: any): QueryCommand;
|
|
11
|
+
gt(val: any): QueryCommand;
|
|
12
|
+
gte(val: any): QueryCommand;
|
|
13
|
+
in(val: any): QueryCommand;
|
|
14
|
+
nin(val: any): QueryCommand;
|
|
15
|
+
all(val: any): QueryCommand;
|
|
16
|
+
elemMatch(val: any): QueryCommand;
|
|
17
|
+
exists(val: boolean): QueryCommand;
|
|
18
|
+
size(val: number): QueryCommand;
|
|
19
|
+
mod(): QueryCommand;
|
|
20
|
+
geoNear(val: any): QueryCommand;
|
|
21
|
+
geoWithin(val: any): QueryCommand;
|
|
22
|
+
geoIntersects(val: any): QueryCommand;
|
|
23
|
+
and(...__expressions__: import("./serializer/datatype").IQueryCondition[]): LogicCommand;
|
|
24
|
+
nor(...__expressions__: import("./serializer/datatype").IQueryCondition[]): LogicCommand;
|
|
25
|
+
or(...__expressions__: import("./serializer/datatype").IQueryCondition[]): LogicCommand;
|
|
26
|
+
not(...__expressions__: import("./serializer/datatype").IQueryCondition[]): LogicCommand;
|
|
27
|
+
set(val: any): UpdateCommand;
|
|
28
|
+
remove(): UpdateCommand;
|
|
29
|
+
inc(val: number): UpdateCommand;
|
|
30
|
+
mul(val: number): UpdateCommand;
|
|
31
|
+
push(...args: any[]): UpdateCommand;
|
|
32
|
+
pull(values: any): UpdateCommand;
|
|
33
|
+
pullAll(values: any): UpdateCommand;
|
|
34
|
+
pop(): UpdateCommand;
|
|
35
|
+
shift(): UpdateCommand;
|
|
36
|
+
unshift(...__values__: any[]): UpdateCommand;
|
|
37
|
+
addToSet(values: any): UpdateCommand;
|
|
38
|
+
rename(values: any): UpdateCommand;
|
|
39
|
+
bit(values: any): UpdateCommand;
|
|
40
|
+
max(values: any): UpdateCommand;
|
|
41
|
+
min(values: any): UpdateCommand;
|
|
42
|
+
expr(values: AggregationOperator): {
|
|
43
|
+
$expr: AggregationOperator;
|
|
44
|
+
};
|
|
45
|
+
jsonSchema(schema: any): {
|
|
46
|
+
$jsonSchema: any;
|
|
47
|
+
};
|
|
48
|
+
text(values: string | {
|
|
49
|
+
search: string;
|
|
50
|
+
language?: string;
|
|
51
|
+
caseSensitive?: boolean;
|
|
52
|
+
diacriticSensitive: boolean;
|
|
53
|
+
}): {
|
|
54
|
+
$search: {
|
|
55
|
+
(regexp: string | RegExp): number;
|
|
56
|
+
(searcher: {
|
|
57
|
+
[Symbol.search](string: string): number;
|
|
58
|
+
}): number;
|
|
59
|
+
};
|
|
60
|
+
$language?: undefined;
|
|
61
|
+
$caseSensitive?: undefined;
|
|
62
|
+
$diacriticSensitive?: undefined;
|
|
63
|
+
} | {
|
|
64
|
+
$search: string;
|
|
65
|
+
$language: string;
|
|
66
|
+
$caseSensitive: boolean;
|
|
67
|
+
$diacriticSensitive: boolean;
|
|
68
|
+
};
|
|
69
|
+
aggregate: {
|
|
70
|
+
pipeline(): Aggregation;
|
|
71
|
+
abs: (param: any) => AggregationOperator;
|
|
72
|
+
add: (param: any) => AggregationOperator;
|
|
73
|
+
ceil: (param: any) => AggregationOperator;
|
|
74
|
+
divide: (param: any) => AggregationOperator;
|
|
75
|
+
exp: (param: any) => AggregationOperator;
|
|
76
|
+
floor: (param: any) => AggregationOperator;
|
|
77
|
+
ln: (param: any) => AggregationOperator;
|
|
78
|
+
log: (param: any) => AggregationOperator;
|
|
79
|
+
log10: (param: any) => AggregationOperator;
|
|
80
|
+
mod: (param: any) => AggregationOperator;
|
|
81
|
+
multiply: (param: any) => AggregationOperator;
|
|
82
|
+
pow: (param: any) => AggregationOperator;
|
|
83
|
+
sqrt: (param: any) => AggregationOperator;
|
|
84
|
+
subtract: (param: any) => AggregationOperator;
|
|
85
|
+
trunc: (param: any) => AggregationOperator;
|
|
86
|
+
arrayElemAt: (param: any) => AggregationOperator;
|
|
87
|
+
arrayToObject: (param: any) => AggregationOperator;
|
|
88
|
+
concatArrays: (param: any) => AggregationOperator;
|
|
89
|
+
filter: (param: any) => AggregationOperator;
|
|
90
|
+
in: (param: any) => AggregationOperator;
|
|
91
|
+
indexOfArray: (param: any) => AggregationOperator;
|
|
92
|
+
isArray: (param: any) => AggregationOperator;
|
|
93
|
+
map: (param: any) => AggregationOperator;
|
|
94
|
+
range: (param: any) => AggregationOperator;
|
|
95
|
+
reduce: (param: any) => AggregationOperator;
|
|
96
|
+
reverseArray: (param: any) => AggregationOperator;
|
|
97
|
+
size: (param: any) => AggregationOperator;
|
|
98
|
+
slice: (param: any) => AggregationOperator;
|
|
99
|
+
zip: (param: any) => AggregationOperator;
|
|
100
|
+
and: (param: any) => AggregationOperator;
|
|
101
|
+
not: (param: any) => AggregationOperator;
|
|
102
|
+
or: (param: any) => AggregationOperator;
|
|
103
|
+
cmp: (param: any) => AggregationOperator;
|
|
104
|
+
eq: (param: any) => AggregationOperator;
|
|
105
|
+
gt: (param: any) => AggregationOperator;
|
|
106
|
+
gte: (param: any) => AggregationOperator;
|
|
107
|
+
lt: (param: any) => AggregationOperator;
|
|
108
|
+
lte: (param: any) => AggregationOperator;
|
|
109
|
+
neq: (param: any) => AggregationOperator;
|
|
110
|
+
cond: (param: any) => AggregationOperator;
|
|
111
|
+
ifNull: (param: any) => AggregationOperator;
|
|
112
|
+
switch: (param: any) => AggregationOperator;
|
|
113
|
+
dateFromParts: (param: any) => AggregationOperator;
|
|
114
|
+
dateFromString: (param: any) => AggregationOperator;
|
|
115
|
+
dayOfMonth: (param: any) => AggregationOperator;
|
|
116
|
+
dayOfWeek: (param: any) => AggregationOperator;
|
|
117
|
+
dayOfYear: (param: any) => AggregationOperator;
|
|
118
|
+
isoDayOfWeek: (param: any) => AggregationOperator;
|
|
119
|
+
isoWeek: (param: any) => AggregationOperator;
|
|
120
|
+
isoWeekYear: (param: any) => AggregationOperator;
|
|
121
|
+
millisecond: (param: any) => AggregationOperator;
|
|
122
|
+
minute: (param: any) => AggregationOperator;
|
|
123
|
+
month: (param: any) => AggregationOperator;
|
|
124
|
+
second: (param: any) => AggregationOperator;
|
|
125
|
+
hour: (param: any) => AggregationOperator;
|
|
126
|
+
week: (param: any) => AggregationOperator;
|
|
127
|
+
year: (param: any) => AggregationOperator;
|
|
128
|
+
literal: (param: any) => AggregationOperator;
|
|
129
|
+
mergeObjects: (param: any) => AggregationOperator;
|
|
130
|
+
objectToArray: (param: any) => AggregationOperator;
|
|
131
|
+
allElementsTrue: (param: any) => AggregationOperator;
|
|
132
|
+
anyElementTrue: (param: any) => AggregationOperator;
|
|
133
|
+
setDifference: (param: any) => AggregationOperator;
|
|
134
|
+
setEquals: (param: any) => AggregationOperator;
|
|
135
|
+
setIntersection: (param: any) => AggregationOperator;
|
|
136
|
+
setIsSubset: (param: any) => AggregationOperator;
|
|
137
|
+
setUnion: (param: any) => AggregationOperator;
|
|
138
|
+
concat: (param: any) => AggregationOperator;
|
|
139
|
+
dateToString: (param: any) => AggregationOperator;
|
|
140
|
+
indexOfBytes: (param: any) => AggregationOperator;
|
|
141
|
+
indexOfCP: (param: any) => AggregationOperator;
|
|
142
|
+
split: (param: any) => AggregationOperator;
|
|
143
|
+
strLenBytes: (param: any) => AggregationOperator;
|
|
144
|
+
strLenCP: (param: any) => AggregationOperator;
|
|
145
|
+
strcasecmp: (param: any) => AggregationOperator;
|
|
146
|
+
substr: (param: any) => AggregationOperator;
|
|
147
|
+
substrBytes: (param: any) => AggregationOperator;
|
|
148
|
+
substrCP: (param: any) => AggregationOperator;
|
|
149
|
+
toLower: (param: any) => AggregationOperator;
|
|
150
|
+
toUpper: (param: any) => AggregationOperator;
|
|
151
|
+
meta: (param: any) => AggregationOperator;
|
|
152
|
+
addToSet: (param: any) => AggregationOperator;
|
|
153
|
+
avg: (param: any) => AggregationOperator;
|
|
154
|
+
first: (param: any) => AggregationOperator;
|
|
155
|
+
last: (param: any) => AggregationOperator;
|
|
156
|
+
max: (param: any) => AggregationOperator;
|
|
157
|
+
min: (param: any) => AggregationOperator;
|
|
158
|
+
push: (param: any) => AggregationOperator;
|
|
159
|
+
stdDevPop: (param: any) => AggregationOperator;
|
|
160
|
+
stdDevSamp: (param: any) => AggregationOperator;
|
|
161
|
+
sum: (param: any) => AggregationOperator;
|
|
162
|
+
let: (param: any) => AggregationOperator;
|
|
163
|
+
};
|
|
164
|
+
project: {
|
|
165
|
+
slice: (param: any) => ProjectionOperator;
|
|
166
|
+
elemMatch: (param: any) => ProjectionOperator;
|
|
167
|
+
};
|
|
168
|
+
};
|
|
169
|
+
export declare class AggregationOperator {
|
|
170
|
+
constructor(name: any, param: any);
|
|
171
|
+
}
|
|
172
|
+
export declare class ProjectionOperator {
|
|
173
|
+
constructor(name: any, param: any);
|
|
174
|
+
}
|
|
175
|
+
export default Command;
|