dynamodb-helpers 1.1.0 → 1.1.2

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.
@@ -0,0 +1,2 @@
1
+ export type * from "./types";
2
+ export * from "./utils";
package/dist/client.js ADDED
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./utils"), exports);
18
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../client.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AACA,0CAAwB"}
package/dist/index.d.ts CHANGED
@@ -1,46 +1,2 @@
1
- import { DynamoDBClient, DynamoDBClientConfig } from "@aws-sdk/client-dynamodb";
2
- import { DynamoDBDocumentClient, GetCommandInput, PutCommandInput, QueryCommandInput, UpdateCommandInput, DeleteCommandInput, BatchWriteCommandInput, BatchGetCommandInput, TransactWriteCommandInput, ScanCommandInput, TranslateConfig } from "@aws-sdk/lib-dynamodb";
3
- import { QueryOptions, UpdateItemOptions, UpdateItemParams } from "./types";
4
- export declare const DB_RESERVED_WORDS: Set<string>;
5
- declare const createDynamoDBHelpers: (dbConfig: DynamoDBClientConfig, translateConfig?: TranslateConfig) => {
6
- dynamodb: {
7
- client: DynamoDBDocumentClient;
8
- get: (params: GetCommandInput) => Promise<import("@aws-sdk/lib-dynamodb").GetCommandOutput>;
9
- getAWSFormat: (params: GetCommandInput) => Promise<import("@aws-sdk/lib-dynamodb").GetCommandOutput>;
10
- put: (params: PutCommandInput) => Promise<import("@aws-sdk/lib-dynamodb").PutCommandOutput>;
11
- query: (params: QueryCommandInput) => Promise<import("@aws-sdk/lib-dynamodb").QueryCommandOutput>;
12
- update: (params: UpdateCommandInput) => Promise<import("@aws-sdk/lib-dynamodb").UpdateCommandOutput>;
13
- delete: (params: DeleteCommandInput) => Promise<import("@aws-sdk/lib-dynamodb").DeleteCommandOutput>;
14
- batchWrite: (params: BatchWriteCommandInput) => Promise<import("@aws-sdk/lib-dynamodb").BatchWriteCommandOutput>;
15
- batchGet: (params: BatchGetCommandInput) => Promise<import("@aws-sdk/lib-dynamodb").BatchGetCommandOutput>;
16
- transactWrite: (params: TransactWriteCommandInput) => Promise<import("@aws-sdk/lib-dynamodb").TransactWriteCommandOutput>;
17
- ogUpdate: (params: any) => Promise<import("@aws-sdk/client-dynamodb").UpdateItemCommandOutput>;
18
- scan: (params: ScanCommandInput) => Promise<import("@aws-sdk/lib-dynamodb").ScanCommandOutput>;
19
- };
20
- getItem: (Key: Record<string, string>, TableName?: string | undefined) => Promise<Record<string, any> | undefined>;
21
- putItem: (Item: Record<string, any>, TableName?: string | undefined, options?: Omit<PutCommandInput, "Item" | "TableName">) => Promise<import("@aws-sdk/lib-dynamodb").PutCommandOutput>;
22
- queryStartsWith: (pk: {
23
- name: string;
24
- value: string | number;
25
- }, sk: {
26
- name: string;
27
- startsWith?: string;
28
- equals?: string;
29
- } | undefined, TableName: string, options?: QueryOptions) => Promise<Record<string, any>[] | undefined>;
30
- batchWriteAll: (params: BatchWriteCommandInput) => Promise<void>;
31
- queryAllItems: <T>(params: QueryCommandInput) => Promise<T[]>;
32
- scanAll: <T>(TableName: string, options?: Omit<ScanCommandInput, "TableName">) => Promise<T[]>;
33
- batchGetItem: (Keys: Record<string, any>[], TableName?: string, options?: {
34
- ProjectionExpression?: string;
35
- ExpressionAttributeNames?: {
36
- [x: string]: string;
37
- };
38
- maxGet?: number;
39
- }) => Promise<Record<string, any>[] | void>;
40
- updateItem: (TableName: string, Key: Record<string, string>, updates: UpdateItemParams, preventNewItem?: boolean, options?: UpdateItemOptions) => Promise<import("@aws-sdk/lib-dynamodb").UpdateCommandOutput | undefined>;
41
- client: DynamoDBClient;
42
- ddbDocClient: DynamoDBDocumentClient;
43
- };
44
- export { createDynamoDBHelpers };
45
- export type * from "./types";
46
- export { handleProjectionExpression, randomId } from "./utils";
1
+ export { createDynamoDBHelpers } from './server';
2
+ export * from "./client";
package/dist/index.js CHANGED
@@ -1,310 +1,21 @@
1
1
  "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.randomId = exports.handleProjectionExpression = exports.createDynamoDBHelpers = exports.DB_RESERVED_WORDS = void 0;
13
- const client_dynamodb_1 = require("@aws-sdk/client-dynamodb");
14
- const lib_dynamodb_1 = require("@aws-sdk/lib-dynamodb"); // ES6 import
15
- const utils_1 = require("./utils");
16
- const updateExpressions_1 = require("./updateExpressions");
17
- exports.DB_RESERVED_WORDS = new Set([
18
- "name",
19
- "date",
20
- "count",
21
- "counter",
22
- // 'duration'
23
- ]);
24
- const createDynamoDBHelpers = (dbConfig, translateConfig) => {
25
- const client = new client_dynamodb_1.DynamoDBClient(dbConfig);
26
- const ddbDocClient = lib_dynamodb_1.DynamoDBDocumentClient.from(client, translateConfig); // client is DynamoDB client
27
- const update = (params) => __awaiter(void 0, void 0, void 0, function* () { return yield ddbDocClient.send(new lib_dynamodb_1.UpdateCommand(params)); });
28
- const batchWriteNative = (params) => __awaiter(void 0, void 0, void 0, function* () { return yield ddbDocClient.send(new lib_dynamodb_1.BatchWriteCommand(params)); });
29
- const dynamodb = {
30
- client: ddbDocClient,
31
- get: (params) => __awaiter(void 0, void 0, void 0, function* () { return yield ddbDocClient.send(new lib_dynamodb_1.GetCommand(params)); }),
32
- getAWSFormat: (params) => __awaiter(void 0, void 0, void 0, function* () { return yield client.send(new lib_dynamodb_1.GetCommand(params)); }),
33
- put: (params) => __awaiter(void 0, void 0, void 0, function* () { return yield ddbDocClient.send(new lib_dynamodb_1.PutCommand(params)); }),
34
- query: (params) => __awaiter(void 0, void 0, void 0, function* () { return yield ddbDocClient.send(new lib_dynamodb_1.QueryCommand(params)); }),
35
- update,
36
- delete: (params) => __awaiter(void 0, void 0, void 0, function* () { return yield ddbDocClient.send(new lib_dynamodb_1.DeleteCommand(params)); }),
37
- batchWrite: batchWriteNative,
38
- batchGet: (params) => __awaiter(void 0, void 0, void 0, function* () { return yield ddbDocClient.send(new lib_dynamodb_1.BatchGetCommand(params)); }),
39
- transactWrite: (params) => __awaiter(void 0, void 0, void 0, function* () { return yield ddbDocClient.send(new lib_dynamodb_1.TransactWriteCommand(params)); }),
40
- ogUpdate: (params) => __awaiter(void 0, void 0, void 0, function* () { return yield ddbDocClient.send(new client_dynamodb_1.UpdateItemCommand(params)); }),
41
- scan: (params) => __awaiter(void 0, void 0, void 0, function* () { return yield ddbDocClient.send(new lib_dynamodb_1.ScanCommand(params)); }),
42
- };
43
- const getItem = (Key_1, ...args_1) => __awaiter(void 0, [Key_1, ...args_1], void 0, function* (Key, TableName = process.env.TABLE_NAME) {
44
- try {
45
- const res = yield dynamodb.get({
46
- TableName,
47
- Key,
48
- });
49
- return res.Item;
50
- }
51
- catch (error) {
52
- if (!(error instanceof Error))
53
- throw new Error(String(error));
54
- console.log("get item");
55
- console.error(error.message);
56
- throw error;
57
- // return undefined
58
- }
59
- });
60
- const putItem = (Item_1, ...args_1) => __awaiter(void 0, [Item_1, ...args_1], void 0, function* (Item, TableName = process.env.TABLE_NAME, options) {
61
- try {
62
- return yield dynamodb.put(Object.assign({ TableName,
63
- Item }, options));
64
- }
65
- catch (error) {
66
- console.log("put item", Item);
67
- console.error(error);
68
- throw error;
69
- }
70
- });
71
- const queryByPkOnly = (pk, TableName, options) => __awaiter(void 0, void 0, void 0, function* () {
72
- try {
73
- let KeyConditionExpression = "#userId = :userId";
74
- const res = yield dynamodb.query(Object.assign({ TableName,
75
- KeyConditionExpression, ExpressionAttributeNames: {
76
- "#userId": pk.name,
77
- }, ExpressionAttributeValues: {
78
- ":userId": pk.value,
79
- } }, options));
80
- return res.Items;
81
- }
82
- catch (error) {
83
- if (!(error instanceof Error))
84
- throw new Error(String(error));
85
- console.log("queryByPkOnly error");
86
- console.error(error.message);
87
- throw error;
88
- // return undefined
89
- }
90
- });
91
- const queryStartsWith = (pk, sk, TableName, options) => __awaiter(void 0, void 0, void 0, function* () {
92
- if (!sk)
93
- return queryByPkOnly(pk, TableName, options);
94
- if (!sk.startsWith && !sk.equals)
95
- throw new Error("sk.startsWith or sk.equals is required");
96
- try {
97
- let KeyConditionExpression = "#userId = :userId";
98
- if (sk.startsWith) {
99
- KeyConditionExpression += " AND begins_with(#id, :idPrefix)";
100
- }
101
- if (sk.equals) {
102
- KeyConditionExpression += " AND #id = :idFull";
103
- }
104
- const res = yield dynamodb.query(Object.assign({ TableName,
105
- KeyConditionExpression, ExpressionAttributeNames: {
106
- "#userId": pk.name,
107
- "#id": sk.name,
108
- }, ExpressionAttributeValues: Object.assign(Object.assign({ ":userId": pk.value }, (sk.startsWith && { ":idPrefix": sk.startsWith })), (sk.equals && { ":idFull": sk.equals })) }, options));
109
- return res.Items;
110
- }
111
- catch (error) {
112
- if (!(error instanceof Error))
113
- throw new Error(String(error));
114
- console.log("queryStartsWith error");
115
- console.error(error.message);
116
- throw error;
117
- // return undefined
118
- }
119
- });
120
- function batchWriteAll(params) {
121
- return __awaiter(this, void 0, void 0, function* () {
122
- if (!params.RequestItems)
123
- return;
124
- const tables = Object.keys(params.RequestItems);
125
- let count = 0;
126
- let req = { RequestItems: {} };
127
- try {
128
- for (let table of tables) {
129
- const items = params.RequestItems[table];
130
- while (items.length >= 25) {
131
- const writeItems = items.splice(0, 25);
132
- try {
133
- yield batchWriteNative(Object.assign(Object.assign({}, params), { RequestItems: { [table]: writeItems } }));
134
- }
135
- catch (e) {
136
- console.log("in while", writeItems.length, items.length);
137
- console.error(e);
138
- }
139
- }
140
- if (items.length + count < 25) {
141
- if (items.length > 0)
142
- req.RequestItems[table] = items;
143
- count += items.length;
144
- continue;
145
- }
146
- try {
147
- req.RequestItems[table] = items.splice(0, 25 - count);
148
- yield batchWriteNative(Object.assign(Object.assign({}, params), req));
149
- count = items.length;
150
- }
151
- catch (e) {
152
- const query = Object.assign(Object.assign({}, params), req);
153
- console.log("in last", count, Object.keys(query.RequestItems).length, query);
154
- console.log(e);
155
- }
156
- if (items.length > 0)
157
- req.RequestItems[table] = items;
158
- }
159
- // last batch
160
- if (count > 0)
161
- yield batchWriteNative(Object.assign(Object.assign({}, params), req));
162
- }
163
- catch (error) {
164
- console.error(error);
165
- }
166
- });
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
167
7
  }
168
- const queryAllItems = (params) => __awaiter(void 0, void 0, void 0, function* () {
169
- let items = [];
170
- try {
171
- let LastEvaluatedKey;
172
- do {
173
- if (LastEvaluatedKey)
174
- params.ExclusiveStartKey = LastEvaluatedKey;
175
- const res = yield dynamodb.query(params);
176
- LastEvaluatedKey = res.LastEvaluatedKey;
177
- items = items.concat(res.Items || []);
178
- } while (LastEvaluatedKey);
179
- }
180
- catch (error) {
181
- console.error(error);
182
- }
183
- return items;
184
- });
185
- const scanAll = (TableName, options) => __awaiter(void 0, void 0, void 0, function* () {
186
- if (process.env.NODE_ENV !== "development")
187
- throw new Error("HOW DARE YOU SCAN MY TABLE");
188
- let items = [];
189
- try {
190
- let LastEvaluatedKey;
191
- do {
192
- let params = Object.assign({ TableName }, options);
193
- if (LastEvaluatedKey)
194
- params.ExclusiveStartKey = LastEvaluatedKey;
195
- const res = yield dynamodb.scan(params);
196
- LastEvaluatedKey = res.LastEvaluatedKey;
197
- items = items.concat(res.Items || []);
198
- } while (LastEvaluatedKey);
199
- }
200
- catch (error) {
201
- console.error(error);
202
- }
203
- return items;
204
- });
205
- const batchGetItem = (Keys_1, ...args_1) => __awaiter(void 0, [Keys_1, ...args_1], void 0, function* (Keys, TableName = process.env.TABLE_NAME, options) {
206
- if (Keys.length === 0)
207
- return;
208
- const { ProjectionExpression, ExpressionAttributeNames, maxGet } = options || {};
209
- if (maxGet && Keys.length > maxGet)
210
- throw new Error("Keys length exceeds maxGet");
211
- const currentKeys = Keys.slice(0, 25);
212
- const laterKeys = Keys.slice(25);
213
- const data = yield dynamodb.batchGet({
214
- RequestItems: {
215
- [TableName]: Object.assign(Object.assign({ Keys: currentKeys }, (ProjectionExpression !== undefined && {
216
- ProjectionExpression,
217
- })), (ExpressionAttributeNames !== undefined && {
218
- ExpressionAttributeNames,
219
- })),
220
- },
221
- });
222
- if (!(data.Responses && data.Responses[TableName]))
223
- return;
224
- const items = data.Responses[TableName];
225
- if (laterKeys.length > 0) {
226
- const otherItems = yield batchGetItem(laterKeys, TableName, options);
227
- if (otherItems)
228
- return items.concat(otherItems);
229
- }
230
- return items;
231
- });
232
- const updateItem = (TableName_1, Key_1, updates_1, ...args_1) => __awaiter(void 0, [TableName_1, Key_1, updates_1, ...args_1], void 0, function* (TableName, Key, updates, preventNewItem = true, options) {
233
- if ((0, utils_1.isEmpty)(updates))
234
- return;
235
- // console.log('in update')
236
- // console.log(updates)
237
- for (let key of Object.keys(Key)) {
238
- if (updates.set && key in updates.set) {
239
- delete updates.set[key];
240
- }
241
- }
242
- const primaryKey = (options === null || options === void 0 ? void 0 : options.primaryKey) || ("userId" in Key ? "userId" : "pk");
243
- const ExpressionAttributeValues = {};
244
- const ExpressionAttributeNames = {};
245
- const SetUpdateExpression = (updates.set || updates.listAppend || updates.setIfNotExists) &&
246
- (0, updateExpressions_1.updateSetExpressions)({
247
- set: Object.assign(Object.assign({}, updates.set), { updatedAt: Date.now() }),
248
- listAppend: updates.listAppend,
249
- setIfNotExists: updates.setIfNotExists,
250
- }, ExpressionAttributeValues, ExpressionAttributeNames);
251
- const RemoveUpdateExpression = updates.remove &&
252
- (0, updateExpressions_1.updateRemoveExpressions)(updates.remove, ExpressionAttributeNames);
253
- const AddUpdateExpression = updates.add &&
254
- (0, updateExpressions_1.updateAddDeleteExpressions)("add", updates.add, ExpressionAttributeValues, ExpressionAttributeNames);
255
- const DeleteUpdateExpression = updates.delete &&
256
- (0, updateExpressions_1.updateAddDeleteExpressions)("delete", updates.delete, ExpressionAttributeValues, ExpressionAttributeNames);
257
- const UpdateExpression = [
258
- SetUpdateExpression,
259
- RemoveUpdateExpression,
260
- AddUpdateExpression,
261
- DeleteUpdateExpression,
262
- ]
263
- .filter(Boolean)
264
- .join(" ");
265
- const params = Object.assign(Object.assign(Object.assign({ TableName,
266
- Key,
267
- UpdateExpression,
268
- ExpressionAttributeNames }, (!(0, utils_1.isEmpty)(ExpressionAttributeValues) && {
269
- ExpressionAttributeValues,
270
- })), (preventNewItem && {
271
- ConditionExpression: `attribute_exists(${primaryKey})`,
272
- })), ((options === null || options === void 0 ? void 0 : options.ReturnValues) && {
273
- ReturnValues: options.ReturnValues,
274
- }));
275
- if (options === null || options === void 0 ? void 0 : options.debug)
276
- console.log("params", params);
277
- try {
278
- return yield update(params);
279
- }
280
- catch (e) {
281
- if (!(e instanceof Error))
282
- throw e;
283
- if (e.message.startsWith("ConditionalCheckFailedException") &&
284
- !(options === null || options === void 0 ? void 0 : options.throwConditionalFail))
285
- return;
286
- console.log(e);
287
- console.log("params", params);
288
- // @ts-expect-error
289
- throw new Error(e);
290
- }
291
- });
292
- return {
293
- dynamodb,
294
- getItem,
295
- putItem,
296
- queryStartsWith,
297
- batchWriteAll,
298
- queryAllItems,
299
- scanAll,
300
- batchGetItem,
301
- updateItem,
302
- client,
303
- ddbDocClient,
304
- };
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
305
15
  };
306
- exports.createDynamoDBHelpers = createDynamoDBHelpers;
307
- var utils_2 = require("./utils");
308
- Object.defineProperty(exports, "handleProjectionExpression", { enumerable: true, get: function () { return utils_2.handleProjectionExpression; } });
309
- Object.defineProperty(exports, "randomId", { enumerable: true, get: function () { return utils_2.randomId; } });
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ exports.createDynamoDBHelpers = void 0;
18
+ var server_1 = require("./server");
19
+ Object.defineProperty(exports, "createDynamoDBHelpers", { enumerable: true, get: function () { return server_1.createDynamoDBHelpers; } });
20
+ __exportStar(require("./client"), exports);
310
21
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,mCAAiD;AAAxC,+GAAA,qBAAqB,OAAA;AAC9B,2CAAyB"}
@@ -0,0 +1,44 @@
1
+ import { DynamoDBClient, DynamoDBClientConfig } from "@aws-sdk/client-dynamodb";
2
+ import { DynamoDBDocumentClient, GetCommandInput, PutCommandInput, QueryCommandInput, UpdateCommandInput, DeleteCommandInput, BatchWriteCommandInput, BatchGetCommandInput, TransactWriteCommandInput, ScanCommandInput, TranslateConfig } from "@aws-sdk/lib-dynamodb";
3
+ import type { QueryOptions, UpdateItemOptions, UpdateItemParams } from "./types";
4
+ export declare const DB_RESERVED_WORDS: Set<string>;
5
+ declare const createDynamoDBHelpers: (dbConfig: DynamoDBClientConfig, translateConfig?: TranslateConfig) => {
6
+ dynamodb: {
7
+ client: DynamoDBDocumentClient;
8
+ get: (params: GetCommandInput) => Promise<import("@aws-sdk/lib-dynamodb").GetCommandOutput>;
9
+ getAWSFormat: (params: GetCommandInput) => Promise<import("@aws-sdk/lib-dynamodb").GetCommandOutput>;
10
+ put: (params: PutCommandInput) => Promise<import("@aws-sdk/lib-dynamodb").PutCommandOutput>;
11
+ query: (params: QueryCommandInput) => Promise<import("@aws-sdk/lib-dynamodb").QueryCommandOutput>;
12
+ update: (params: UpdateCommandInput) => Promise<import("@aws-sdk/lib-dynamodb").UpdateCommandOutput>;
13
+ delete: (params: DeleteCommandInput) => Promise<import("@aws-sdk/lib-dynamodb").DeleteCommandOutput>;
14
+ batchWrite: (params: BatchWriteCommandInput) => Promise<import("@aws-sdk/lib-dynamodb").BatchWriteCommandOutput>;
15
+ batchGet: (params: BatchGetCommandInput) => Promise<import("@aws-sdk/lib-dynamodb").BatchGetCommandOutput>;
16
+ transactWrite: (params: TransactWriteCommandInput) => Promise<import("@aws-sdk/lib-dynamodb").TransactWriteCommandOutput>;
17
+ ogUpdate: (params: any) => Promise<import("@aws-sdk/client-dynamodb").UpdateItemCommandOutput>;
18
+ scan: (params: ScanCommandInput) => Promise<import("@aws-sdk/lib-dynamodb").ScanCommandOutput>;
19
+ };
20
+ getItem: (Key: Record<string, string>, TableName?: string | undefined) => Promise<Record<string, any> | undefined>;
21
+ putItem: (Item: Record<string, any>, TableName?: string | undefined, options?: Omit<PutCommandInput, "Item" | "TableName">) => Promise<import("@aws-sdk/lib-dynamodb").PutCommandOutput>;
22
+ queryStartsWith: (pk: {
23
+ name: string;
24
+ value: string | number;
25
+ }, sk: {
26
+ name: string;
27
+ startsWith?: string;
28
+ equals?: string;
29
+ } | undefined, TableName: string, options?: QueryOptions) => Promise<Record<string, any>[] | undefined>;
30
+ batchWriteAll: (params: BatchWriteCommandInput) => Promise<void>;
31
+ queryAllItems: <T>(params: QueryCommandInput) => Promise<T[]>;
32
+ scanAll: <T>(TableName: string, options?: Omit<ScanCommandInput, "TableName">) => Promise<T[]>;
33
+ batchGetItem: (Keys: Record<string, any>[], TableName?: string, options?: {
34
+ ProjectionExpression?: string;
35
+ ExpressionAttributeNames?: {
36
+ [x: string]: string;
37
+ };
38
+ maxGet?: number;
39
+ }) => Promise<Record<string, any>[] | void>;
40
+ updateItem: (TableName: string, Key: Record<string, string>, updates: UpdateItemParams, preventNewItem?: boolean, options?: UpdateItemOptions) => Promise<import("@aws-sdk/lib-dynamodb").UpdateCommandOutput | undefined>;
41
+ client: DynamoDBClient;
42
+ ddbDocClient: DynamoDBDocumentClient;
43
+ };
44
+ export { createDynamoDBHelpers };