1 | import { Handler } from "../handler";
|
2 |
|
3 | export type SQSHandler = Handler<SQSEvent, void>;
|
4 |
|
5 |
|
6 |
|
7 | export 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 |
|
19 | export interface SQSEvent {
|
20 | Records: SQSRecord[];
|
21 | }
|
22 |
|
23 | export interface SQSRecordAttributes {
|
24 | AWSTraceHeader?: string | undefined;
|
25 | ApproximateReceiveCount: string;
|
26 | SentTimestamp: string;
|
27 | SenderId: string;
|
28 | ApproximateFirstReceiveTimestamp: string;
|
29 | SequenceNumber?: string | undefined;
|
30 | MessageGroupId?: string | undefined;
|
31 | MessageDeduplicationId?: string | undefined;
|
32 | }
|
33 |
|
34 | export type SQSMessageAttributeDataType = 'String' | 'Number' | 'Binary' | string;
|
35 |
|
36 | export interface SQSMessageAttribute {
|
37 | stringValue?: string | undefined;
|
38 | binaryValue?: string | undefined;
|
39 | stringListValues: never[];
|
40 | binaryListValues: never[];
|
41 | dataType: SQSMessageAttributeDataType;
|
42 | }
|
43 |
|
44 | export interface SQSMessageAttributes {
|
45 | [name: string]: SQSMessageAttribute;
|
46 | }
|