@itwin/object-storage-s3
Version:
Object storage implementation base for S3 compatible providers
21 lines • 1.28 kB
TypeScript
import { S3Client } from "@aws-sdk/client-s3";
import { BaseDirectory, FrontendMultipartUploadData, Metadata, MultipartUploadOptions, ObjectProperties, ObjectReference } from "@itwin/object-storage-core/lib/frontend";
export declare class FrontendS3ClientWrapper {
protected readonly _client: S3Client;
protected readonly _bucket: string;
constructor(_client: S3Client, _bucket: string);
download(reference: ObjectReference): Promise<ReadableStream>;
upload(reference: ObjectReference, data: ArrayBuffer, metadata?: Metadata): Promise<void>;
uploadInMultipleParts(reference: ObjectReference, data: FrontendMultipartUploadData, options?: MultipartUploadOptions): Promise<void>;
list(directory: BaseDirectory, options?: {
maxResults?: number;
includeEmptyFiles?: boolean;
}): Promise<ObjectReference[]>;
deleteObject(reference: ObjectReference): Promise<void>;
updateMetadata(reference: ObjectReference, metadata: Metadata): Promise<void>;
getObjectProperties(reference: ObjectReference): Promise<ObjectProperties>;
objectExists(reference: ObjectReference): Promise<boolean>;
prefixExists(directory: BaseDirectory): Promise<boolean>;
releaseResources(): void;
}
//# sourceMappingURL=FrontendS3ClientWrapper.d.ts.map