UNPKG

1.2 kBTypeScriptView Raw
1import { Handler } from "../handler";
2
3export type SQSHandler = Handler<SQSEvent, void>;
4
5// SQS
6// https://docs.aws.amazon.com/lambda/latest/dg/invoking-lambda-function.html#supported-event-source-sqs
7export interface SQSRecord {
8 messageId: string;
9 receiptHandle: string;
10 body: string;
11 attributes: SQSRecordAttributes;
12 messageAttributes: SQSMessageAttributes;
13 md5OfBody: string;
14 eventSource: string;
15 eventSourceARN: string;
16 awsRegion: string;
17}
18
19export interface SQSEvent {
20 Records: SQSRecord[];
21}
22
23export interface SQSRecordAttributes {
24 AWSTraceHeader?: string;
25 ApproximateReceiveCount: string;
26 SentTimestamp: string;
27 SenderId: string;
28 ApproximateFirstReceiveTimestamp: string;
29}
30
31export type SQSMessageAttributeDataType = 'String' | 'Number' | 'Binary' | string;
32
33export interface SQSMessageAttribute {
34 stringValue?: string;
35 binaryValue?: string;
36 stringListValues: never[]; // Not implemented. Reserved for future use.
37 binaryListValues: never[]; // Not implemented. Reserved for future use.
38 dataType: SQSMessageAttributeDataType;
39}
40
41export interface SQSMessageAttributes {
42 [name: string]: SQSMessageAttribute;
43}