import { type ResultFailure } from "../../runtime/result.js"; export declare const BUCKET_NAME_MIN_LENGTH = 3; export declare const BUCKET_NAME_MAX_LENGTH = 63; /** * A resolved and validated AWS partition: the region and the DNS suffix its * endpoints live under. V1 supports a bounded set of partitions and rejects * everything else rather than guessing a suffix. */ export type AwsPartition = { readonly region: string; readonly dnsSuffix: string; }; /** * Validate a region and resolve its partition suffix. ISO, GovCloud, and China * are checked before the broad commercial rule so their bounded prefixes are not * swallowed by the commercial `us-` match. */ export declare function resolveAwsPartition(region: string): AwsPartition | ResultFailure; export type BucketAddressing = "virtualHosted" | "pathStyle"; /** * A bucket name that has passed the general-purpose S3 naming rules, paired with * the addressing style it is safe for. Only `validateBucket` produces one, so a * raw, unchecked bucket string can never reach endpoint construction. */ export type ValidatedBucket = { readonly name: string; readonly addressing: BucketAddressing; }; /** Validate an S3 general-purpose bucket name and choose its addressing style. */ export declare function validateBucket(name: string): ValidatedBucket | ResultFailure;