@opcotech/gulp-s3-upload
Version:
A gulp task to asynchronous upload/update assets to an AWS S3 Bucket.
33 lines (32 loc) • 1.12 kB
TypeScript
import { AwsCredentialIdentity } from "@aws-sdk/types";
import { MapStream } from "event-stream";
interface S3UploadOptions {
Bucket?: string;
bucket?: string;
keyTransform?: (filename: string) => string;
nameTransform?: (filename: string) => string;
mimeTypeLookup?: (keyname: string) => string;
charset?: string;
metadataMap?: Record<string, string> | ((keyname: string) => Record<string, string>);
manualContentEncoding?: string | ((keyname: string) => string);
etag_hash?: string;
uploadNewFilesOnly?: boolean;
onNoChange?: (keyname: string) => void;
onNew?: (keyname: string) => void;
maps?: Record<string, (keyname: string) => any>;
verbose?: boolean;
[key: string]: any;
}
interface S3Credentials extends AwsCredentialIdentity {
useIAM?: boolean;
region?: string;
}
interface S3Config {
region?: string;
[key: string]: any;
}
/**
* Main export function that creates an S3 upload gulp plugin
*/
export default function (credentialsOrConfig?: Partial<S3Credentials>, s3Config?: S3Config): (options: S3UploadOptions) => MapStream;
export {};