reshuffle-aws-connectors
Version:
A set of Reshuffle connectors for AWS services
36 lines (35 loc) • 1.74 kB
TypeScript
/// <reference types="node" />
import { CoreEventHandler, EventConfiguration, Options, Reshuffle } from './CoreConnector';
import { AWS, BaseAWSConnector } from './BaseAWSConnector';
interface EventOptions {
type: string;
}
export declare class AWSS3Connector extends BaseAWSConnector {
private bucket;
private s3;
private rs3?;
constructor(app: Reshuffle, options: Options, id?: string);
private getRegionalClient;
on(options: EventOptions, handler: CoreEventHandler, eventId?: string): EventConfiguration;
protected onInterval(): Promise<void>;
private getObjectsInBucket;
private diffBuckets;
getBucket(): Promise<string>;
listBuckets(): Promise<Record<string, any>[] | undefined>;
listBucketNames(): Promise<string[]>;
createBucket(bucket: string, region: string): Promise<any>;
deleteBucket(bucket: string): Promise<void>;
listObjects(bucket?: string): Promise<Record<string, any>[]>;
listObjectKeys(bucket?: string): Promise<string[]>;
copyObject(sourceBucket: string, sourceKey: string, targetBucket: string, targetKey: string): Promise<any>;
deleteObject(key: string, bucket?: string): Promise<void>;
getObject(key: string, bucket?: string): Promise<any>;
putObject(key: string, buffer: Buffer, bucket?: string): Promise<any>;
getSignedURL(operation: string, key: string, expires?: number): Promise<string>;
getSignedObjectGetURL(key: string, expires: number): Promise<string>;
getSignedObjectPutURL(key: string, expires: number): Promise<string>;
getS3URL(key: string, bucket?: string): Promise<string>;
getWebURL(key: string, bucket?: string): Promise<string>;
sdk(options?: Record<string, any>): AWS.S3;
}
export {};