UNPKG

1.59 kBTypeScriptView Raw
1import { DynamoDB } from "aws-sdk";
2import { CallbackType } from "./General";
3export declare enum TransactionReturnOptions {
4 request = "request",
5 documents = "documents"
6}
7declare enum TransactionType {
8 get = "get",
9 write = "write"
10}
11export interface TransactionSettings {
12 return: TransactionReturnOptions;
13 type?: TransactionType;
14}
15export declare type GetTransactionInput = {
16 Get: DynamoDB.GetItemInput;
17};
18export declare type CreateTransactionInput = {
19 Put: DynamoDB.PutItemInput;
20};
21export declare type DeleteTransactionInput = {
22 Delete: DynamoDB.DeleteItemInput;
23};
24export declare type UpdateTransactionInput = {
25 Update: DynamoDB.UpdateItemInput;
26};
27export declare type ConditionTransactionInput = {
28 ConditionCheck: DynamoDB.ConditionCheck;
29};
30declare type Transaction = GetTransactionInput | CreateTransactionInput | DeleteTransactionInput | UpdateTransactionInput | ConditionTransactionInput;
31declare type Transactions = (Transaction | Promise<Transaction>)[];
32declare type TransactionCallback = CallbackType<any, any>;
33declare type TransactionReturnType = any;
34declare function Transaction(transactions: Transactions): TransactionReturnType;
35declare function Transaction(transactions: Transactions, settings: TransactionSettings): TransactionReturnType;
36declare function Transaction(transactions: Transactions, callback: TransactionCallback): TransactionReturnType;
37declare function Transaction(transaction: Transactions, settings: TransactionSettings, callback: TransactionCallback): TransactionReturnType;
38export default Transaction;