UNPKG

@itwin/object-storage-s3

Version:

Object storage implementation base for S3 compatible providers

30 lines 1.83 kB
import { Readable } from "stream"; import { S3Client } from "@aws-sdk/client-s3"; import type { HttpHandlerOptions } from "@aws-sdk/types"; import { BaseDirectory, ContentHeaders, Metadata, MultipartUploadData, MultipartUploadOptions, ObjectProperties, EntityCollectionPage, ObjectReference, TransferData } from "@itwin/object-storage-core"; export declare class S3ClientWrapper { protected readonly _client: S3Client; protected readonly _bucket: string; constructor(_client: S3Client, _bucket: string); download(reference: ObjectReference, options?: HttpHandlerOptions): Promise<Readable>; upload(reference: ObjectReference, data?: TransferData, metadata?: Metadata, headers?: ContentHeaders): Promise<void>; uploadInMultipleParts(reference: ObjectReference, data: MultipartUploadData, options?: MultipartUploadOptions, headers?: ContentHeaders): Promise<void>; getDirectoriesNextPage(options: { maxPageSize: number; continuationToken?: string; }): Promise<EntityCollectionPage<BaseDirectory>>; getObjectsNextPage(directory: BaseDirectory, options: { maxPageSize: number; continuationToken?: string; includeEmptyFiles?: boolean; }): Promise<EntityCollectionPage<ObjectReference>>; deleteObject(reference: ObjectReference): Promise<void>; copyObject(bucket: string, sourceReference: ObjectReference, targetReference: 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>; get bucketName(): string; releaseResources(): void; } //# sourceMappingURL=S3ClientWrapper.d.ts.map