import { S3ClientConfig } from '@aws-sdk/client-s3'; type CreateCloudflareClientParameters = { /** * Cloudflare R2 access key ID. */ accessKeyId: string; /** * Cloudflare account ID. */ accountId: string; /** * The jurisdiction where the data is stored. * * Only use this if you created your R2 bucket using a jurisdiction. */ jurisdiction?: "eu" | "fedramp"; /** * Cloudflare R2 secret access key. */ secretAccessKey: string; }; type CreateMinioClientParameters = { /** * Minio access key ID. */ accessKeyId: string; /** * Minio endpoint. */ endpoint: string; /** * Minio region. */ region: string; /** * Minio secret access key. */ secretAccessKey: string; }; type CreateBackblazeClientParameters = { /** * Backblaze B2 application key. */ applicationKey: string; /** * Backblaze B2 application key ID. */ applicationKeyId: string; /** * Backblaze B2 region. */ region: string; }; type CreateWasabiClientParameters = { /** * Wasabi access key ID. */ accessKeyId: string; /** * Wasabi region. */ region: string; /** * Wasabi secret access key. */ secretAccessKey: string; }; type CreateDigitalOceanClientParameters = { /** * DigitalOcean Spaces key. */ key: string; /** * DigitalOcean Spaces region. */ region: string; /** * DigitalOcean Spaces secret. */ secret: string; }; type CreateTigrisClientParameters = { /** * Tigris access key ID. */ accessKeyId: string; /** * Tigris endpoint. * @default `https://t3.storage.dev` */ endpoint?: string; /** * Tigris secret access key. */ secretAccessKey: string; }; type CreateHetznerClientParameters = { /** * Hetzner Object Storage access key ID. */ accessKeyId: string; /** * Hetzner Object Storage location. Used as both the region and the * subdomain of the endpoint (`https://{location}.your-objectstorage.com`). */ location: "fsn1" | "hel1" | "nbg1"; /** * Hetzner Object Storage secret access key. */ secretAccessKey: string; }; type CreateAkamaiClientParameters = { /** * Akamai Cloud Object Storage access key ID. */ accessKeyId: string; /** * Override the endpoint. When unset, defaults to * `https://${region}.linodeobjects.com`. The `linodeobjects.com` domain * is unchanged from the Linode era — only the product branding moved * to Akamai. */ endpoint?: string; /** * Akamai Cloud Object Storage region/cluster code (formerly Linode Object * Storage). Examples: `"us-iad-1"`, `"us-mia-1"`, `"us-ord-1"`, * `"nl-ams-1"`, `"fr-par-1"`, `"gb-lon-1"`, `"jp-osa-1"`, plus the older * `"us-east-1"` / `"eu-central-1"` / `"ap-south-1"` clusters. */ region: string; /** * Akamai Cloud Object Storage secret access key. */ secretAccessKey: string; }; type CreateStorjClientParameters = { /** * Storj S3 Gateway access key (derived from a Storj access grant). */ accessKeyId: string; /** * Override the Storj S3 Gateway endpoint. * @default `https://gateway.storjshare.io` */ endpoint?: string; /** * Storj S3 Gateway secret key (derived from a Storj access grant). */ secretAccessKey: string; }; type CreateScalewayClientParameters = { /** * Scaleway Object Storage access key ID. */ accessKeyId: string; /** * Override the endpoint. When unset, defaults to * `https://s3.${region}.scw.cloud`. */ endpoint?: string; /** * Scaleway region. Used as both the S3 region and the endpoint subdomain. */ region: "fr-par" | "nl-ams" | "pl-waw"; /** * Scaleway Object Storage secret access key. */ secretAccessKey: string; }; type CreateVultrClientParameters = { /** * Vultr Object Storage access key. */ accessKeyId: string; /** * Vultr Object Storage cluster/location code. Used as both the S3 region * and the endpoint subdomain (`https://{location}.vultrobjects.com`). * Examples: `"ewr1"`, `"sjc1"`, `"ams1"`, `"sgp1"`, `"del1"`, `"blr1"`. */ location: string; /** * Vultr Object Storage secret key. */ secretAccessKey: string; }; type CreateExoscaleClientParameters = { /** * Exoscale SOS API key. */ accessKeyId: string; /** * Exoscale SOS API secret. */ secretAccessKey: string; /** * Exoscale zone. Used as both the S3 region and the endpoint subdomain * (`https://sos-{zone}.exo.io`). Examples: `"ch-gva-2"`, `"ch-dk-2"`, * `"de-fra-1"`, `"de-muc-1"`, `"at-vie-1"`, `"at-vie-2"`, `"bg-sof-1"`. */ zone: string; }; type CreateFilebaseClientParameters = { /** * Filebase access key. */ accessKeyId: string; /** * Override the Filebase endpoint. * @default `https://s3.filebase.com` */ endpoint?: string; /** * Filebase secret key. */ secretAccessKey: string; }; type CreateIDriveE2ClientParameters = { /** * iDrive e2 access key ID. */ accessKeyId: string; /** * iDrive e2 endpoint. Account/region specific (assigned by iDrive), e.g. * `https://x9y8.va.idrivee2-12.com` — there is no deterministic default, * so the endpoint must be supplied. */ endpoint: string; /** * iDrive e2 region. * @default `us-east-1` */ region?: string; /** * iDrive e2 secret access key. */ secretAccessKey: string; }; type CreateIbmCosClientParameters = { /** * IBM Cloud Object Storage HMAC access key ID. */ accessKeyId: string; /** * Override the endpoint. When unset, defaults to * `https://s3.${region}.cloud-object-storage.appdomain.cloud`. */ endpoint?: string; /** * IBM COS region. Used as both the S3 region and the endpoint subdomain. * Examples: `"us-south"`, `"us-east"`, `"eu-gb"`, `"eu-de"`, `"jp-tok"`, * `"au-syd"`, `"ca-tor"`, `"br-sao"`. */ region: string; /** * IBM Cloud Object Storage HMAC secret access key. */ secretAccessKey: string; }; type CreateOracleCloudClientParameters = { /** * OCI Object Storage Customer Secret Key access key ID. */ accessKeyId: string; /** * Object Storage namespace (tenancy-specific). Forms part of the endpoint * host: `https://{namespace}.compat.objectstorage.{region}.oraclecloud.com`. */ namespace: string; /** * OCI region. Examples: `"us-ashburn-1"`, `"us-phoenix-1"`, * `"eu-frankfurt-1"`, `"uk-london-1"`, `"ap-tokyo-1"`. */ region: string; /** * OCI Object Storage Customer Secret Key. */ secretAccessKey: string; }; type CreateOvhCloudClientParameters = { /** * OVHcloud Object Storage access key. */ accessKeyId: string; /** * Override the endpoint. When unset, defaults to the High Performance * (S3) endpoint `https://s3.${region}.io.cloud.ovh.net`. For the * Standard (Swift) offering pass `https://s3.${region}.cloud.ovh.net`. */ endpoint?: string; /** * OVHcloud region. Used as both the S3 region and the endpoint subdomain. * Examples: `"gra"`, `"sbg"`, `"de"`, `"uk"`, `"waw"`, `"bhs"`, `"rbx"`. */ region: string; /** * OVHcloud Object Storage secret key. */ secretAccessKey: string; }; type CreateAlibabaClientParameters = { /** * Alibaba Cloud OSS access key ID. */ accessKeyId: string; /** * Override the endpoint. When unset, defaults to * `https://s3.oss-${region}.aliyuncs.com`. */ endpoint?: string; /** * Alibaba Cloud OSS region. Used as both the S3 region and the endpoint * subdomain. Examples: `"cn-hangzhou"`, `"cn-shanghai"`, `"cn-beijing"`, * `"ap-southeast-1"`, `"us-east-1"`, `"eu-central-1"`. */ region: string; /** * Alibaba Cloud OSS access key secret. */ secretAccessKey: string; }; type CreateTencentClientParameters = { /** * Tencent COS secret ID. */ accessKeyId: string; /** * Override the endpoint. When unset, defaults to * `https://cos.${region}.myqcloud.com`. */ endpoint?: string; /** * Tencent COS region. Used as both the S3 region and the endpoint * subdomain. Examples: `"ap-guangzhou"`, `"ap-shanghai"`, `"ap-beijing"`, * `"ap-singapore"`, `"na-siliconvalley"`, `"eu-frankfurt"`. */ region: string; /** * Tencent COS secret key. */ secretAccessKey: string; }; type CreateYandexClientParameters = { /** * Yandex Object Storage access key ID. */ accessKeyId: string; /** * Override the Yandex Object Storage endpoint. * @default `https://storage.yandexcloud.net` */ endpoint?: string; /** * SigV4 signing region. Yandex serves a single global endpoint, so this * does not drive routing. * @default `ru-central1` */ region?: string; /** * Yandex Object Storage secret access key. */ secretAccessKey: string; }; type CreateNeonClientParameters = { /** * Neon storage access key ID. Set it together with `secretAccessKey`; when both are * omitted (and unset in the environment) the AWS SDK credential chain resolves them. */ accessKeyId?: string; /** * S3 endpoint of the Neon branch (Neon injects it as `AWS_ENDPOINT_URL_S3`). */ endpoint?: string; /** * SigV4 signing region. * @default `us-east-1` */ region?: string; /** * Neon storage secret access key. */ secretAccessKey?: string; }; type CreateRustFsClientParameters = { /** * RustFS access key. */ accessKeyId: string; /** * RustFS S3 API endpoint. * @default `http://localhost:9000` */ endpoint?: string; /** * Use path-style addressing (`/{bucket}/{key}`). Pass `false` only after configuring * `RUSTFS_SERVER_DOMAINS` and wildcard DNS on the server. * @default true */ forcePathStyle?: boolean; /** * SigV4 signing region; must match the server's `RUSTFS_REGION`. * @default `us-east-1` */ region?: string; /** * RustFS secret key. */ secretAccessKey: string; }; /** * Create an Akamai Cloud Object Storage client, compatible with the S3 API. * * Akamai Cloud Object Storage is the rebranded Linode Object Storage; the * underlying `linodeobjects.com` domain is unchanged. * * Optionally, you can omit the parameters and use the following environment variables (the * first one set wins; a provider-specific variable wins over the generic `AWS_*` one): * - `AKAMAI_ACCESS_KEY_ID`, then `AWS_ACCESS_KEY_ID` * - `AKAMAI_SECRET_ACCESS_KEY`, then `AWS_SECRET_ACCESS_KEY` * - `AKAMAI_REGION` (e.g. `us-iad-1`) */ declare const akamai: (parameters?: Partial) => S3ClientConfig; /** * Create an Alibaba Cloud OSS client, compatible with the S3 API. * * The region is part of the default endpoint hostname, so it is not read * from `AWS_REGION` (which is commonly set to an AWS region in dev/CI and * would silently produce a broken endpoint). * * Optionally, you can omit the parameters and use the following environment variables (the * first one set wins; a provider-specific variable wins over the generic `AWS_*` one): * - `ALIBABA_ACCESS_KEY_ID`, then `AWS_ACCESS_KEY_ID` * - `ALIBABA_ENDPOINT` * - `ALIBABA_REGION` (e.g. `cn-hangzhou`, `ap-southeast-1`, `eu-central-1`) * - `ALIBABA_ACCESS_KEY_SECRET`, then `AWS_SECRET_ACCESS_KEY` */ declare const alibaba: (parameters?: CreateAlibabaClientParameters) => S3ClientConfig; /** * Create a Backblaze B2 client, compatible with the S3 API. * * Optionally, you can omit the parameters and use the following environment variables (the * first one set wins; a provider-specific variable wins over the generic `AWS_*` one): * - `B2_APP_KEY` / `BACKBLAZE_APP_KEY`, then `AWS_SECRET_ACCESS_KEY` * - `B2_APP_KEY_ID` / `BACKBLAZE_APP_KEY_ID`, then `AWS_ACCESS_KEY_ID` * - `B2_REGION` / `BACKBLAZE_REGION`, then `AWS_REGION` */ declare const backblaze: (parameters?: CreateBackblazeClientParameters) => S3ClientConfig; /** * Create a Cloudflare R2 client, compatible with the S3 API. * * Optionally, you can omit the parameters and use the following environment variables (the * first one set wins; a provider-specific variable wins over the generic `AWS_*` one): * - `CLOUDFLARE_ACCESS_KEY_ID` / `CLOUDFLARE_ACCESS_KEY`, then `AWS_ACCESS_KEY_ID` * - `CLOUDFLARE_ACCOUNT_ID` * - `CLOUDFLARE_JURISDICTION` / `CLOUDFLARE_R2_JURISDICTION` * - `CLOUDFLARE_SECRET_ACCESS_KEY` / `CLOUDFLARE_SECRET_KEY`, then `AWS_SECRET_ACCESS_KEY` */ declare const cloudflare: (parameters?: CreateCloudflareClientParameters) => S3ClientConfig; /** * Create a DigitalOcean Spaces client, compatible with the S3 API. * * Optionally, you can omit the parameters and use the following environment variables (the * first one set wins; a provider-specific variable wins over the generic `AWS_*` one): * - `SPACES_KEY`, then `AWS_ACCESS_KEY_ID` * - `SPACES_REGION`, then `AWS_REGION` * - `SPACES_SECRET`, then `AWS_SECRET_ACCESS_KEY` */ declare const digitalOcean: (parameters?: CreateDigitalOceanClientParameters) => S3ClientConfig; /** * Create an Exoscale SOS client, compatible with the S3 API. * * The zone is part of the endpoint hostname, so it is not read from * `AWS_REGION` (which is commonly set to an AWS region in dev/CI and would * silently produce a broken endpoint). * * Optionally, you can omit the parameters and use the following environment variables (the * first one set wins; a provider-specific variable wins over the generic `AWS_*` one): * - `EXOSCALE_ACCESS_KEY_ID` / `EXOSCALE_ACCESS_KEY`, then `AWS_ACCESS_KEY_ID` * - `EXOSCALE_SECRET_ACCESS_KEY` / `EXOSCALE_SECRET_KEY`, then `AWS_SECRET_ACCESS_KEY` * - `EXOSCALE_ZONE` (e.g. `ch-gva-2`, `de-fra-1`, `at-vie-1`) */ declare const exoscale: (parameters?: CreateExoscaleClientParameters) => S3ClientConfig; /** * Create a Filebase client, compatible with the S3 API. * * Filebase exposes a single global endpoint and ignores the region, so only * credentials are required. * * Optionally, you can omit the parameters and use the following environment variables (the * first one set wins; a provider-specific variable wins over the generic `AWS_*` one): * - `FILEBASE_ACCESS_KEY_ID` / `FILEBASE_ACCESS_KEY`, then `AWS_ACCESS_KEY_ID` * - `FILEBASE_ENDPOINT` (defaults to `https://s3.filebase.com`) * - `FILEBASE_SECRET_ACCESS_KEY` / `FILEBASE_SECRET_KEY`, then `AWS_SECRET_ACCESS_KEY` */ declare const filebase: (parameters?: CreateFilebaseClientParameters) => S3ClientConfig; /** * Create a Hetzner Object Storage client, compatible with the S3 API. * * Optionally, you can omit the parameters and use the following environment variables (the * first one set wins; a provider-specific variable wins over the generic `AWS_*` one): * - `HETZNER_ACCESS_KEY_ID` / `HETZNER_ACCESS_KEY`, then `AWS_ACCESS_KEY_ID` * - `HETZNER_LOCATION` (one of `fsn1`, `nbg1`, `hel1`) * - `HETZNER_SECRET_ACCESS_KEY` / `HETZNER_SECRET_KEY`, then `AWS_SECRET_ACCESS_KEY` */ declare const hetzner: (parameters?: CreateHetznerClientParameters) => S3ClientConfig; /** * Create an IBM Cloud Object Storage client, compatible with the S3 API. * * Requires HMAC credentials (a Customer Secret Key, not an IAM API key). * * The region is part of the default endpoint hostname, so it is not read * from `AWS_REGION` (which is commonly set to an AWS region in dev/CI and * would silently produce a broken endpoint). * * Optionally, you can omit the parameters and use the following environment variables (the * first one set wins; a provider-specific variable wins over the generic `AWS_*` one): * - `IBM_COS_ACCESS_KEY_ID` / `IBM_COS_ACCESS_KEY`, then `AWS_ACCESS_KEY_ID` * - `IBM_COS_ENDPOINT` * - `IBM_COS_REGION` (e.g. `us-south`, `eu-de`, `jp-tok`) * - `IBM_COS_SECRET_ACCESS_KEY` / `IBM_COS_SECRET_KEY`, then `AWS_SECRET_ACCESS_KEY` */ declare const ibmCos: (parameters?: CreateIbmCosClientParameters) => S3ClientConfig; /** * Create an iDrive e2 client, compatible with the S3 API. * * iDrive e2 endpoints are account/region specific and assigned by iDrive * (e.g. `https://x9y8.va.idrivee2-12.com`), so the endpoint must be supplied. * * Optionally, you can omit the parameters and use the following environment variables (the * first one set wins; a provider-specific variable wins over the generic `AWS_*` one): * - `IDRIVE_E2_ACCESS_KEY_ID` / `IDRIVE_E2_ACCESS_KEY`, then `AWS_ACCESS_KEY_ID` * - `IDRIVE_E2_ENDPOINT`, then `AWS_ENDPOINT` * - `IDRIVE_E2_REGION`, then `AWS_REGION` (defaults to `us-east-1`) * - `IDRIVE_E2_SECRET_ACCESS_KEY` / `IDRIVE_E2_SECRET_KEY`, then `AWS_SECRET_ACCESS_KEY` */ declare const idriveE2: (parameters?: CreateIDriveE2ClientParameters) => S3ClientConfig; /** * Create a Minio client, compatible with the S3 API. * * Optionally, you can omit the parameters and use the following environment variables (the * first one set wins; a provider-specific variable wins over the generic `AWS_*` one): * - `MINIO_ACCESS_KEY_ID` / `MINIO_ACCESS_KEY`, then `AWS_ACCESS_KEY_ID` * - `MINIO_ENDPOINT`, then `AWS_ENDPOINT` * - `MINIO_REGION`, then `AWS_REGION` * - `MINIO_SECRET_ACCESS_KEY` / `MINIO_SECRET_KEY`, then `AWS_SECRET_ACCESS_KEY` */ declare const minio: (parameters?: CreateMinioClientParameters) => S3ClientConfig; /** * Create a Neon (branchable object storage) client, compatible with the S3 API. * * Neon injects `AWS_ENDPOINT_URL_S3`, `AWS_ACCESS_KEY_ID` and `AWS_SECRET_ACCESS_KEY` into * the environment of a connected branch. Path-style addressing is always on: Neon's wildcard * TLS certificate covers a single subdomain level (`*.storage.{suffix}`), which the branch id * occupies, so the bucket has to travel in the request path. * * Optionally, you can omit the parameters and use the following environment variables: * - `AWS_ENDPOINT_URL_S3` / `NEON_STORAGE_ENDPOINT` * - `AWS_ACCESS_KEY_ID` / `NEON_STORAGE_ACCESS_KEY_ID` * - `AWS_SECRET_ACCESS_KEY` / `NEON_STORAGE_SECRET_ACCESS_KEY` * - `AWS_REGION` / `NEON_STORAGE_REGION` (defaults to `us-east-1`) * * When neither credential is set anywhere, they are left to the AWS SDK credential chain. */ declare const neon: (parameters?: CreateNeonClientParameters) => S3ClientConfig; /** * Create an Oracle Cloud Infrastructure (OCI) Object Storage client, using * the S3 Compatibility API. * * Requires a Customer Secret Key (generated under the user's API keys) and * the tenancy's Object Storage namespace. * * The region is part of the endpoint hostname, so it is not read from * `AWS_REGION` (commonly set to an AWS region in dev/CI, which would * silently produce a broken endpoint). * * Optionally, you can omit the parameters and use the following environment variables (the * first one set wins; a provider-specific variable wins over the generic `AWS_*` one): * - `ORACLE_CLOUD_ACCESS_KEY_ID` / `ORACLE_CLOUD_ACCESS_KEY`, then `AWS_ACCESS_KEY_ID` * - `ORACLE_CLOUD_NAMESPACE` * - `ORACLE_CLOUD_REGION` (e.g. `us-ashburn-1`, `eu-frankfurt-1`) * - `ORACLE_CLOUD_SECRET_ACCESS_KEY` / `ORACLE_CLOUD_SECRET_KEY`, then `AWS_SECRET_ACCESS_KEY` */ declare const oracleCloud: (parameters?: CreateOracleCloudClientParameters) => S3ClientConfig; /** * Create an OVHcloud Object Storage client, compatible with the S3 API. * * Defaults to the High Performance (S3) endpoint. For the Standard (Swift) * offering pass `endpoint: https://s3.{region}.cloud.ovh.net`. * * The region is part of the default endpoint hostname and the SigV4 signing * scope, both of which require lowercase, so the region is lowercased (the * OVH console displays it uppercase, e.g. `GRA`). It is not read from * `AWS_REGION` (commonly set to an AWS region in dev/CI, which would * silently produce a broken endpoint). * * Optionally, you can omit the parameters and use the following environment variables (the * first one set wins; a provider-specific variable wins over the generic `AWS_*` one): * - `OVHCLOUD_ACCESS_KEY_ID` / `OVHCLOUD_ACCESS_KEY`, then `AWS_ACCESS_KEY_ID` * - `OVHCLOUD_ENDPOINT` * - `OVHCLOUD_REGION` (e.g. `gra`, `sbg`, `de`, `uk`, `waw`, `bhs`) * - `OVHCLOUD_SECRET_ACCESS_KEY` / `OVHCLOUD_SECRET_KEY`, then `AWS_SECRET_ACCESS_KEY` */ declare const ovhCloud: (parameters?: CreateOvhCloudClientParameters) => S3ClientConfig; /** * Create a RustFS client, compatible with the S3 API. * * RustFS is a self-hosted, MinIO-compatible object store. Its S3 API listens on port 9000 * by default (the console on 9001). Path-style addressing is the default, because * virtual-hosted requests only work once `RUSTFS_SERVER_DOMAINS` and wildcard DNS are set up. * The region must match the server's `RUSTFS_REGION` (default `us-east-1`), or it rejects the * signature. * * Optionally, you can omit the parameters and use the following environment variables * (the server-side names are accepted too, so one `.env` configures both sides): * - `AWS_ACCESS_KEY_ID` / `RUSTFS_ACCESS_KEY_ID` / `RUSTFS_ACCESS_KEY` * - `AWS_SECRET_ACCESS_KEY` / `RUSTFS_SECRET_ACCESS_KEY` / `RUSTFS_SECRET_KEY` * - `RUSTFS_ENDPOINT` (defaults to `http://localhost:9000`) * - `RUSTFS_REGION` (defaults to `us-east-1`) */ declare const rustfs: (parameters?: CreateRustFsClientParameters) => S3ClientConfig; /** * Create a Scaleway Object Storage client, compatible with the S3 API. * * The region is part of the endpoint hostname, so it is not read from * `AWS_REGION` (which is commonly set to an AWS region in dev/CI and would * silently produce a broken endpoint). * * Optionally, you can omit the parameters and use the following environment variables (the * first one set wins; a provider-specific variable wins over the generic `AWS_*` one): * - `SCALEWAY_ACCESS_KEY_ID` / `SCALEWAY_ACCESS_KEY`, then `AWS_ACCESS_KEY_ID` * - `SCALEWAY_ENDPOINT` * - `SCALEWAY_REGION` (one of `fr-par`, `nl-ams`, `pl-waw`) * - `SCALEWAY_SECRET_ACCESS_KEY` / `SCALEWAY_SECRET_KEY`, then `AWS_SECRET_ACCESS_KEY` */ declare const scaleway: (parameters?: CreateScalewayClientParameters) => S3ClientConfig; /** * Create a Storj S3 Gateway client, compatible with the S3 API. * * Credentials are derived from a Storj access grant via the * `storj.io/uplink` CLI or web console. The default endpoint targets the * global Storj S3 Gateway; self-hosted gateways can override via `endpoint`. * * Optionally, you can omit the parameters and use the following environment variables (the * first one set wins; a provider-specific variable wins over the generic `AWS_*` one): * - `STORJ_ACCESS_KEY_ID` / `STORJ_ACCESS_KEY`, then `AWS_ACCESS_KEY_ID` * - `STORJ_ENDPOINT` (defaults to `https://gateway.storjshare.io`) * - `STORJ_SECRET_ACCESS_KEY` / `STORJ_SECRET_KEY`, then `AWS_SECRET_ACCESS_KEY` */ declare const storj: (parameters?: CreateStorjClientParameters) => S3ClientConfig; /** * Create a Tencent Cloud COS client, compatible with the S3 API. * * The bucket name must include the APPID suffix (e.g. * `uploads-1250000000`); the S3-compatible API expects the full form. * * The region is part of the default endpoint hostname, so it is not read * from `AWS_REGION` (which is commonly set to an AWS region in dev/CI and * would silently produce a broken endpoint). * * Optionally, you can omit the parameters and use the following environment variables (the * first one set wins; a provider-specific variable wins over the generic `AWS_*` one): * - `TENCENT_SECRET_ID`, then `AWS_ACCESS_KEY_ID` * - `TENCENT_ENDPOINT` * - `TENCENT_REGION` (e.g. `ap-guangzhou`, `ap-singapore`, `eu-frankfurt`) * - `TENCENT_SECRET_KEY`, then `AWS_SECRET_ACCESS_KEY` */ declare const tencent: (parameters?: CreateTencentClientParameters) => S3ClientConfig; /** * Create a Tigris client, compatible with the S3 API. * * Optionally, you can omit the parameters and use the following environment variables (the * first one set wins; a provider-specific variable wins over the generic `AWS_*` one): * - `TIGRIS_ACCESS_KEY_ID` / `TIGRIS_ACCESS_KEY`, then `AWS_ACCESS_KEY_ID` * - `TIGRIS_ENDPOINT` * - `TIGRIS_SECRET_ACCESS_KEY` / `TIGRIS_SECRET_KEY`, then `AWS_SECRET_ACCESS_KEY` */ declare const tigris: (parameters?: CreateTigrisClientParameters) => S3ClientConfig; /** * Create a Vultr Object Storage client, compatible with the S3 API. * * Optionally, you can omit the parameters and use the following environment variables (the * first one set wins; a provider-specific variable wins over the generic `AWS_*` one): * - `VULTR_ACCESS_KEY_ID` / `VULTR_ACCESS_KEY`, then `AWS_ACCESS_KEY_ID` * - `VULTR_LOCATION` (cluster code, e.g. `ewr1`, `sjc1`, `ams1`, `sgp1`) * - `VULTR_SECRET_ACCESS_KEY` / `VULTR_SECRET_KEY`, then `AWS_SECRET_ACCESS_KEY` */ declare const vultr: (parameters?: CreateVultrClientParameters) => S3ClientConfig; /** * Create a Wasabi client, compatible with the S3 API. * * Optionally, you can omit the parameters and use the following environment variables (the * first one set wins; a provider-specific variable wins over the generic `AWS_*` one): * - `WASABI_ACCESS_KEY_ID` / `WASABI_ACCESS_KEY`, then `AWS_ACCESS_KEY_ID` * - `WASABI_REGION`, then `AWS_REGION` * - `WASABI_SECRET_ACCESS_KEY` / `WASABI_SECRET_KEY`, then `AWS_SECRET_ACCESS_KEY` */ declare const wasabi: (parameters?: CreateWasabiClientParameters) => S3ClientConfig; /** * Create a Yandex Object Storage client, compatible with the S3 API. * * Yandex serves a single global endpoint (`https://storage.yandexcloud.net`) * and routes internally, so the region is only the SigV4 signing scope and * defaults to `ru-central1`. It does not drive the endpoint, so falling back * to `AWS_REGION` is safe here. * * Optionally, you can omit the parameters and use the following environment variables (the * first one set wins; a provider-specific variable wins over the generic `AWS_*` one): * - `YANDEX_ACCESS_KEY_ID`, then `AWS_ACCESS_KEY_ID` * - `YANDEX_ENDPOINT` * - `YANDEX_REGION`, then `AWS_REGION` (defaults to `ru-central1`) * - `YANDEX_SECRET_ACCESS_KEY`, then `AWS_SECRET_ACCESS_KEY` */ declare const yandex: (parameters?: CreateYandexClientParameters) => S3ClientConfig; export { akamai, alibaba, backblaze, cloudflare, digitalOcean, exoscale, filebase, hetzner, ibmCos, idriveE2, minio, neon, oracleCloud, ovhCloud, rustfs, scaleway, storj, tencent, tigris, vultr, wasabi, yandex };