UNPKG

1.04 kBTypeScriptView Raw
1import { Callback, Handler } from "../handler";
2
3/**
4 * S3 Batch Operations event
5 * https://docs.aws.amazon.com/AmazonS3/latest/dev/batch-ops-invoke-lambda.html
6 */
7export type S3BatchHandler = Handler<S3BatchEvent, S3BatchResult>;
8export type S3BatchCallback = Callback<S3BatchResult>;
9
10export interface S3BatchEvent {
11 invocationSchemaVersion: string;
12 invocationId: string;
13 job: S3BatchEventJob;
14 tasks: S3BatchEventTask[];
15}
16
17export interface S3BatchEventJob {
18 id: string;
19}
20
21export interface S3BatchEventTask {
22 taskId: string;
23 s3Key: string;
24 s3VersionId: string | null;
25 s3BucketArn: string;
26}
27
28export interface S3BatchResult {
29 invocationSchemaVersion: string;
30 treatMissingKeysAs: S3BatchResultResultCode;
31 invocationId: string;
32 results: S3BatchResultResult[];
33}
34
35export type S3BatchResultResultCode = "Succeeded" | "TemporaryFailure" | "PermanentFailure";
36
37export interface S3BatchResultResult {
38 taskId: string;
39 resultCode: S3BatchResultResultCode;
40 resultString: string;
41}