import { CreateTableOutput } from 'aws-sdk/clients/dynamodb'; import { AWSError } from 'aws-sdk/lib/error'; import { PromiseResult } from 'aws-sdk/lib/request'; import { DynamoDBClient, DynamoDBTableClient } from '../../shared/aws/dynamodb'; import { AlertDynamoItem } from '../alerts/types'; import { MonitorDynamoItem } from '../monitors/types'; import { MonitoringHashKey } from './types'; declare abstract class DynamoMonitoringDatasource { protected readonly dynamoClient: DynamoDBTableClient; protected readonly dynamoRawClient: DynamoDBClient; protected readonly tableName: string; constructor(dynamoClient?: DynamoDBClient); createTable: () => Promise>; static encodeHashKey({ userId }: MonitoringHashKey): string; static decodeHashKey(hashKey: string): MonitoringHashKey; private decodeAlertSortKey; protected alertFromDynamoItem: (Item: AlertDynamoItem) => import("@meshwatch/types/dist/common").WithCreated; private decodeMonitorSortKey; protected monitorFromDynamoItem: (Item: MonitorDynamoItem) => import("@meshwatch/types/dist/common").WithCreated; } export default DynamoMonitoringDatasource;