The S3 BACKEND surface this package drives — not an @aws-sdk/client-s3
client.
Renamed from IAwsS3Client because that name, and the docs around it,
promised something it never was: the real SDK's surface is
send(command), so injecting an actual S3Client was rejected with
Injected S3 client is missing required methods (X8-10). What this declares
is the shape adaptAwsS3Module PRODUCES from the SDK, so an
application supplying it is implementing the backend, not swapping in a
pre-configured client.
That makes it useful for a test double or a wholly different backend, and NOT a way to configure the underlying SDK client — there is no path today for a custom retry policy, timeout or proxy agent.
put(): Promise<void>
get(path: string): Promise<Uint8Array | null>
delete(path: string): Promise<boolean>
head(path: string): Promise<boolean>
getSignedUrl(path: string,expiresIn: number): Promise<string>
getStream(path: string): Promise<ReadableStream<Uint8Array> | null>