s3
Implementation of Amazon S3 object operations. There is no default interpreter because this plugin requires configured AWS client access.
Docs examples use an in-memory S3 mock so behavior is deterministic and runnable in-browser.
import { s3, wrapAwsSdk, createS3Interpreter } from "@mvfm/plugin-s3";
import { S3Client as AwsS3Client } from "@aws-sdk/client-s3";
// 1. Create an AWS SDK S3 client
const awsClient = new AwsS3Client({ region: "us-east-1" });
const client = wrapAwsSdk(awsClient);
// 2. Build the interpreter
const s3Interp = createS3Interpreter(client);
// 3. Merge and run
const app = mvfm(prelude, s3);
const baseInterp = defaults(app, { s3: s3Interp });
await fold(baseInterp, prog);