import { AWSError } from 'aws-sdk'; import { BatchWriteItemOutput, DeleteItemOutput, DocumentClient, PutItemOutput, TransactWriteItemsOutput, UpdateItemOutput } from 'aws-sdk/clients/dynamodb'; import { PromiseResult } from 'aws-sdk/lib/request'; import { AnyObject, ConditionExpressionInput, Filter, TableConfig } from './types'; export declare class DynamoHelper { table: TableConfig; dbClient: DocumentClient; /** * Create a DynamoHelper object * @param {string} region - The name of the region where the table is present * @param {string} table - The table name and indexes available * @param {string} endpoint - The endpoint of the database */ constructor(table: TableConfig, region?: string, endpoint?: string); query(filter: Filter, indexName?: string): Promise>; queryWithCursor(filter: Filter, indexName?: string): Promise<{ items: Array; cursor?: string; scannedCount: number; }>; getItem(key: DocumentClient.Key, fields?: Array): Promise; batchGetItems(keys: Array<{ [name: string]: any; }>, fields?: Array): Promise>; exists(key: DocumentClient.Key): Promise; batchExists(keys: Array): Promise>; deleteItem(key: DocumentClient.Key): Promise>; batchDeleteItems(keys: Array): Promise>>; putItem(item: T): Promise>; batchPutItems(items: Array): Promise>>; transactPutItems(items: Array): Promise>; updateItem(key: DocumentClient.Key, item: T, conditions: ConditionExpressionInput[]): Promise>; }