UNPKG

@channel.io/be-user-chat-mcp

Version:

Backend UserChat Model Context Protocol server for Channel.io

29 lines 1.83 kB
import { GetItemCommandInput, QueryCommandInput } from "@aws-sdk/client-dynamodb"; import { NativeAttributeValue } from "@aws-sdk/util-dynamodb"; import type { RequestContext } from "../config/index.js"; /** * Fetches a single item from a DynamoDB table by its key. * * @template T The expected type of the unmarshalled item. * @param tableName The name of the DynamoDB table. * @param key The primary key of the item to fetch (use NativeAttributeValue format). * @param options Optional GetItemCommandInput options (e.g., ProjectionExpression). * @param context RequestContext containing AWS credentials. * @returns The requested item, unmarshalled to type T, or null if not found. */ export declare function getDynamoDBItem<T = Record<string, NativeAttributeValue>>(tableName: string, key: Record<string, NativeAttributeValue>, options: Partial<GetItemCommandInput> | undefined, context: RequestContext): Promise<T | null>; /** * Queries a DynamoDB table or index. * * @template T The expected type of the unmarshalled items. * @param tableName The name of the DynamoDB table. * @param queryInput Query parameters (KeyConditionExpression, etc.). * Use ExpressionAttributeValues with NativeAttributeValue format for easier use. * Example: ExpressionAttributeValues: { ':val': 'someValue', ':num': 123 } * @param context RequestContext containing AWS credentials. * @returns An array of items matching the query, unmarshalled to type T[]. */ export declare function queryDynamoDB<T = Record<string, NativeAttributeValue>>(tableName: string, queryInput: Omit<QueryCommandInput, "TableName" | "ExpressionAttributeValues"> & { ExpressionAttributeValues?: Record<string, NativeAttributeValue>; }, context: RequestContext): Promise<T[]>; //# sourceMappingURL=dynamodb.service.d.ts.map