UNPKG

@meshwatch/backend-core

Version:

Meshwatch backend core services.

24 lines (23 loc) 1.31 kB
import { CreateTableOutput, DeleteItemOutput } from 'aws-sdk/clients/dynamodb'; import { AWSError } from 'aws-sdk/lib/error'; import { PromiseResult } from 'aws-sdk/lib/request'; import { DynamoDBClient } from '../../shared/aws/dynamodb'; declare type MonitorConnection = { connectionId: string; monitorId: string; }; export interface ConnectionDatasource { createConnection(monitorId: string): Promise<string>; deleteConnection(monitorId: string, connectionId: string): Promise<PromiseResult<DeleteItemOutput, AWSError>>; findConnectionsForMonitor(monitorId: string): Promise<MonitorConnection[]>; } export declare class DynamoConnectionDatasource implements ConnectionDatasource { private readonly dynamoClient; constructor(dynamoClient?: DynamoDBClient); createTable: () => Promise<PromiseResult<CreateTableOutput, AWSError>>; createConnection: (monitorId: string) => Promise<string>; deleteConnection: (monitorId: string, connectionId: string) => Promise<PromiseResult<import("aws-sdk/clients/dynamodb").DocumentClient.DeleteItemOutput, AWSError>>; findConnectionsForMonitor: (monitorId: string) => Promise<MonitorConnection[]>; } declare const dynamoConnectionDatasource: DynamoConnectionDatasource; export default dynamoConnectionDatasource;