@valon-technologies/gestalt
    Preparing search index...

    S3 models the shared Gestalt S3-provider protocol.

    Index

    Constructors

    • Parameters

      • transport: Transport
      • Optionaloptions: { timeoutMs?: number }

      Returns S3

    Methods

    • Parameters

      • Optionaloptions: { name?: string; timeoutMs?: number }

      Returns S3

    • Parameters

      • Optionalref: { key?: string; versionId?: string }

      Returns Promise<HeadObjectResponse>

    • Parameters

      • request: { ref?: { key?: string; versionId?: string } }

      Returns Promise<HeadObjectResponse>

    • Parameters

      • request: {
            ref?: { key?: string; versionId?: string };
            range?: { start?: bigint; end?: bigint };
            ifMatch?: string;
            ifNoneMatch?: string;
            ifModifiedSince?: Date;
            ifUnmodifiedSince?: Date;
        }

      Returns Promise<{ meta: S3ObjectMeta; data: ByteStream }>

    • The first response frame carries object metadata. All subsequent frames carry byte chunks. Zero-byte objects therefore emit exactly one frame.

      Parameters

      • request: {
            ref?: { key?: string; versionId?: string };
            range?: { start?: bigint; end?: bigint };
            ifMatch?: string;
            ifNoneMatch?: string;
            ifModifiedSince?: Date;
            ifUnmodifiedSince?: Date;
        }

      Returns AsyncIterable<ReadObjectChunk>

    • Parameters

      • open: {
            ref?: { key?: string; versionId?: string };
            contentType?: string;
            cacheControl?: string;
            contentDisposition?: string;
            contentEncoding?: string;
            contentLanguage?: string;
            metadata?: { [key: string]: string };
            ifMatch?: string;
            ifNoneMatch?: string;
        }
      • data: AsyncIterable<Uint8Array<ArrayBufferLike>>

      Returns Promise<WriteObjectResponse>

    • The first request frame must carry WriteObjectOpen metadata. All subsequent frames carry raw bytes. The response is emitted only after the object has been durably committed by the provider.

      Parameters

      • requests: AsyncIterable<
            {
                msg?: | { case: "data"; value: Uint8Array<ArrayBufferLike> }
                | { case: undefined; value?: undefined }
                | {
                    case: "open";
                    value: {
                        ref?: { key?: string; versionId?: string };
                        contentType?: string;
                        cacheControl?: string;
                        contentDisposition?: string;
                        contentEncoding?: string;
                        contentLanguage?: string;
                        metadata?: { [key: string]: string };
                        ifMatch?: string;
                        ifNoneMatch?: string;
                    };
                };
            },
        >

      Returns Promise<WriteObjectResponse>

    • Parameters

      • Optionalref: { key?: string; versionId?: string }

      Returns Promise<void>

    • Parameters

      • request: { ref?: { key?: string; versionId?: string } }

      Returns Promise<void>

    • Parameters

      • prefix: string
      • delimiter: string
      • continuationToken: string
      • startAfter: string
      • maxKeys: number

      Returns Promise<ListObjectsResponse>

    • Parameters

      • request: {
            prefix?: string;
            delimiter?: string;
            continuationToken?: string;
            startAfter?: string;
            maxKeys?: number;
        }

      Returns Promise<ListObjectsResponse>

    • Parameters

      • ifMatch: string
      • ifNoneMatch: string
      • Optionalsource: { key?: string; versionId?: string }
      • Optionaldestination: { key?: string; versionId?: string }

      Returns Promise<CopyObjectResponse>

    • Parameters

      • request: {
            source?: { key?: string; versionId?: string };
            destination?: { key?: string; versionId?: string };
            ifMatch?: string;
            ifNoneMatch?: string;
        }

      Returns Promise<CopyObjectResponse>

    • Parameters

      • method: number
      • expiresSeconds: bigint
      • Optionalref: { key?: string; versionId?: string }
      • Optionaloptions: { contentType?: string; contentDisposition?: string }

      Returns Promise<PresignObjectResponse>

    • Parameters

      • request: {
            ref?: { key?: string; versionId?: string };
            method?: number;
            expiresSeconds?: bigint;
            contentType?: string;
            contentDisposition?: string;
            headers?: { [key: string]: string };
        }

      Returns Promise<PresignObjectResponse>