UNPKG

dynamoose

Version:

Dynamoose is a modeling tool for Amazon's DynamoDB (inspired by Mongoose)

39 lines (38 loc) 1.52 kB
import * as DynamoDB from "@aws-sdk/client-dynamodb"; import { CallbackType } from "./General"; export declare enum TransactionReturnOptions { request = "request", items = "items" } declare enum TransactionType { get = "get", write = "write" } export interface TransactionSettings { return: TransactionReturnOptions; type?: TransactionType; } export type GetTransactionInput = { Get: DynamoDB.GetItemInput; }; export type CreateTransactionInput = { Put: DynamoDB.PutItemInput; }; export type DeleteTransactionInput = { Delete: DynamoDB.DeleteItemInput; }; export type UpdateTransactionInput = { Update: DynamoDB.UpdateItemInput; }; export type ConditionTransactionInput = { ConditionCheck: DynamoDB.ConditionCheck; }; type Transaction = GetTransactionInput | CreateTransactionInput | DeleteTransactionInput | UpdateTransactionInput | ConditionTransactionInput; type Transactions = (Transaction | Promise<Transaction>)[]; type TransactionCallback = CallbackType<any, any>; type TransactionReturnType = any; declare function Transaction(transactions: Transactions): TransactionReturnType; declare function Transaction(transactions: Transactions, settings: TransactionSettings): TransactionReturnType; declare function Transaction(transactions: Transactions, callback: TransactionCallback): TransactionReturnType; declare function Transaction(transaction: Transactions, settings: TransactionSettings, callback: TransactionCallback): TransactionReturnType; export default Transaction;