@aws-sdk/client-s3 3.454.0 → 3.458.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (56) hide show
  1. package/README.md +93 -93
  2. package/dist-cjs/commands/AbortMultipartUploadCommand.js +1 -0
  3. package/dist-cjs/commands/CompleteMultipartUploadCommand.js +1 -0
  4. package/dist-cjs/commands/CreateMultipartUploadCommand.js +1 -0
  5. package/dist-cjs/commands/DeleteObjectCommand.js +1 -0
  6. package/dist-cjs/commands/GetObjectAclCommand.js +1 -0
  7. package/dist-cjs/commands/GetObjectCommand.js +1 -0
  8. package/dist-cjs/commands/HeadObjectCommand.js +1 -0
  9. package/dist-cjs/commands/ListMultipartUploadsCommand.js +1 -0
  10. package/dist-cjs/commands/ListObjectVersionsCommand.js +1 -0
  11. package/dist-cjs/commands/ListObjectsCommand.js +1 -0
  12. package/dist-cjs/commands/ListObjectsV2Command.js +1 -0
  13. package/dist-cjs/commands/ListPartsCommand.js +1 -0
  14. package/dist-cjs/commands/PutObjectAclCommand.js +1 -0
  15. package/dist-cjs/commands/PutObjectCommand.js +1 -0
  16. package/dist-cjs/commands/UploadPartCommand.js +1 -0
  17. package/dist-cjs/endpoint/ruleset.js +1 -1
  18. package/dist-cjs/models/models_0.js +6 -2
  19. package/dist-cjs/protocols/Aws_restXml.js +52 -0
  20. package/dist-es/commands/AbortMultipartUploadCommand.js +1 -0
  21. package/dist-es/commands/CompleteMultipartUploadCommand.js +1 -0
  22. package/dist-es/commands/CreateMultipartUploadCommand.js +1 -0
  23. package/dist-es/commands/DeleteObjectCommand.js +1 -0
  24. package/dist-es/commands/GetObjectAclCommand.js +1 -0
  25. package/dist-es/commands/GetObjectCommand.js +1 -0
  26. package/dist-es/commands/HeadObjectCommand.js +1 -0
  27. package/dist-es/commands/ListMultipartUploadsCommand.js +1 -0
  28. package/dist-es/commands/ListObjectVersionsCommand.js +1 -0
  29. package/dist-es/commands/ListObjectsCommand.js +1 -0
  30. package/dist-es/commands/ListObjectsV2Command.js +1 -0
  31. package/dist-es/commands/ListPartsCommand.js +1 -0
  32. package/dist-es/commands/PutObjectAclCommand.js +1 -0
  33. package/dist-es/commands/PutObjectCommand.js +1 -0
  34. package/dist-es/commands/UploadPartCommand.js +1 -0
  35. package/dist-es/endpoint/ruleset.js +1 -1
  36. package/dist-es/models/models_0.js +4 -0
  37. package/dist-es/protocols/Aws_restXml.js +52 -0
  38. package/dist-types/commands/DeleteObjectsCommand.d.ts +22 -22
  39. package/dist-types/commands/GetBucketLoggingCommand.d.ts +6 -0
  40. package/dist-types/commands/GetObjectCommand.d.ts +5 -4
  41. package/dist-types/commands/HeadObjectCommand.d.ts +14 -3
  42. package/dist-types/commands/ListObjectVersionsCommand.d.ts +0 -1
  43. package/dist-types/commands/PutBucketLoggingCommand.d.ts +6 -0
  44. package/dist-types/commands/PutObjectAclCommand.d.ts +1 -1
  45. package/dist-types/commands/PutObjectCommand.d.ts +41 -41
  46. package/dist-types/commands/PutObjectLegalHoldCommand.d.ts +1 -1
  47. package/dist-types/commands/PutObjectLockConfigurationCommand.d.ts +3 -2
  48. package/dist-types/endpoint/EndpointParameters.d.ts +2 -0
  49. package/dist-types/models/models_0.d.ts +77 -204
  50. package/dist-types/models/models_1.d.ts +189 -1
  51. package/dist-types/ts3.4/commands/PutObjectAclCommand.d.ts +1 -1
  52. package/dist-types/ts3.4/commands/PutObjectLegalHoldCommand.d.ts +1 -1
  53. package/dist-types/ts3.4/endpoint/EndpointParameters.d.ts +2 -0
  54. package/dist-types/ts3.4/models/models_0.d.ts +15 -32
  55. package/dist-types/ts3.4/models/models_1.d.ts +34 -0
  56. package/package.json +3 -3
@@ -1,4 +1,4 @@
1
1
  const bJ = "required", bK = "type", bL = "conditions", bM = "fn", bN = "argv", bO = "ref", bP = "assign", bQ = "url", bR = "properties", bS = "authSchemes", bT = "disableDoubleEncoding", bU = "signingName", bV = "signingRegion", bW = "headers";
2
2
  const a = false, b = true, c = "isSet", d = "booleanEquals", e = "error", f = "aws.partition", g = "stringEquals", h = "getAttr", i = "name", j = "substring", k = "hardwareType", l = "regionPrefix", m = "bucketAliasSuffix", n = "outpostId", o = "isValidHostLabel", p = "not", q = "parseURL", r = "s3-outposts", s = "endpoint", t = "tree", u = "aws.isVirtualHostableS3Bucket", v = "s3", w = "{url#scheme}://{url#authority}{url#normalizedPath}{Bucket}", x = "{url#scheme}://{Bucket}.{url#authority}{url#path}", y = "https://{Bucket}.s3-accelerate.{partitionResult#dnsSuffix}", z = "https://{Bucket}.s3.{partitionResult#dnsSuffix}", A = "aws.parseArn", B = "bucketArn", C = "arnType", D = "", E = "s3-object-lambda", F = "accesspoint", G = "accessPointName", H = "{url#scheme}://{accessPointName}-{bucketArn#accountId}.{url#authority}{url#path}", I = "mrapPartition", J = "outpostType", K = "arnPrefix", L = "{url#scheme}://{url#authority}{url#normalizedPath}{uri_encoded_bucket}", M = "https://s3.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", N = "{url#scheme}://{url#authority}{url#path}", O = "https://s3.{partitionResult#dnsSuffix}", P = { [bJ]: false, [bK]: "String" }, Q = { [bJ]: true, "default": false, [bK]: "Boolean" }, R = { [bJ]: false, [bK]: "Boolean" }, S = { [bM]: d, [bN]: [{ [bO]: "Accelerate" }, true] }, T = { [bM]: d, [bN]: [{ [bO]: "UseFIPS" }, true] }, U = { [bM]: d, [bN]: [{ [bO]: "UseDualStack" }, true] }, V = { [bM]: c, [bN]: [{ [bO]: "Endpoint" }] }, W = { [bM]: f, [bN]: [{ [bO]: "Region" }], [bP]: "partitionResult" }, X = { [bM]: g, [bN]: [{ [bM]: h, [bN]: [{ [bO]: "partitionResult" }, i] }, "aws-cn"] }, Y = { [bM]: c, [bN]: [{ [bO]: "Bucket" }] }, Z = { [bO]: "Bucket" }, aa = { [bO]: k }, ab = { [bL]: [{ [bM]: p, [bN]: [V] }], [e]: "Expected a endpoint to be specified but no endpoint was found", [bK]: e }, ac = { [bM]: p, [bN]: [V] }, ad = { [bM]: q, [bN]: [{ [bO]: "Endpoint" }], [bP]: "url" }, ae = { [bS]: [{ [bT]: true, [i]: "sigv4", [bU]: r, [bV]: "{Region}" }] }, af = {}, ag = { [bM]: d, [bN]: [{ [bO]: "ForcePathStyle" }, false] }, ah = { [bO]: "ForcePathStyle" }, ai = { [bM]: d, [bN]: [{ [bO]: "Accelerate" }, false] }, aj = { [bM]: g, [bN]: [{ [bO]: "Region" }, "aws-global"] }, ak = { [bS]: [{ [bT]: true, [i]: "sigv4", [bU]: v, [bV]: "us-east-1" }] }, al = { [bM]: p, [bN]: [aj] }, am = { [bM]: d, [bN]: [{ [bO]: "UseGlobalEndpoint" }, true] }, an = { [bQ]: "https://{Bucket}.s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}", [bR]: { [bS]: [{ [bT]: true, [i]: "sigv4", [bU]: v, [bV]: "{Region}" }] }, [bW]: {} }, ao = { [bS]: [{ [bT]: true, [i]: "sigv4", [bU]: v, [bV]: "{Region}" }] }, ap = { [bM]: d, [bN]: [{ [bO]: "UseGlobalEndpoint" }, false] }, aq = { [bM]: d, [bN]: [{ [bO]: "UseDualStack" }, false] }, ar = { [bQ]: "https://{Bucket}.s3-fips.{Region}.{partitionResult#dnsSuffix}", [bR]: ao, [bW]: {} }, as = { [bM]: d, [bN]: [{ [bO]: "UseFIPS" }, false] }, at = { [bQ]: "https://{Bucket}.s3-accelerate.dualstack.{partitionResult#dnsSuffix}", [bR]: ao, [bW]: {} }, au = { [bQ]: "https://{Bucket}.s3.dualstack.{Region}.{partitionResult#dnsSuffix}", [bR]: ao, [bW]: {} }, av = { [bM]: d, [bN]: [{ [bM]: h, [bN]: [{ [bO]: "url" }, "isIp"] }, true] }, aw = { [bO]: "url" }, ax = { [bM]: d, [bN]: [{ [bM]: h, [bN]: [aw, "isIp"] }, false] }, ay = { [bQ]: w, [bR]: ao, [bW]: {} }, az = { [bQ]: x, [bR]: ao, [bW]: {} }, aA = { [s]: az, [bK]: s }, aB = { [bQ]: y, [bR]: ao, [bW]: {} }, aC = { [bQ]: "https://{Bucket}.s3.{Region}.{partitionResult#dnsSuffix}", [bR]: ao, [bW]: {} }, aD = { [e]: "Invalid region: region was not a valid DNS name.", [bK]: e }, aE = { [bO]: B }, aF = { [bO]: C }, aG = { [bM]: h, [bN]: [aE, "service"] }, aH = { [bO]: G }, aI = { [bL]: [U], [e]: "S3 Object Lambda does not support Dual-stack", [bK]: e }, aJ = { [bL]: [S], [e]: "S3 Object Lambda does not support S3 Accelerate", [bK]: e }, aK = { [bL]: [{ [bM]: c, [bN]: [{ [bO]: "DisableAccessPoints" }] }, { [bM]: d, [bN]: [{ [bO]: "DisableAccessPoints" }, true] }], [e]: "Access points are not supported for this operation", [bK]: e }, aL = { [bL]: [{ [bM]: c, [bN]: [{ [bO]: "UseArnRegion" }] }, { [bM]: d, [bN]: [{ [bO]: "UseArnRegion" }, false] }, { [bM]: p, [bN]: [{ [bM]: g, [bN]: [{ [bM]: h, [bN]: [aE, "region"] }, "{Region}"] }] }], [e]: "Invalid configuration: region from ARN `{bucketArn#region}` does not match client region `{Region}` and UseArnRegion is `false`", [bK]: e }, aM = { [bM]: h, [bN]: [{ [bO]: "bucketPartition" }, i] }, aN = { [bM]: h, [bN]: [aE, "accountId"] }, aO = { [bS]: [{ [bT]: true, [i]: "sigv4", [bU]: E, [bV]: "{bucketArn#region}" }] }, aP = { [e]: "Invalid ARN: The access point name may only contain a-z, A-Z, 0-9 and `-`. Found: `{accessPointName}`", [bK]: e }, aQ = { [e]: "Invalid ARN: The account id may only contain a-z, A-Z, 0-9 and `-`. Found: `{bucketArn#accountId}`", [bK]: e }, aR = { [e]: "Invalid region in ARN: `{bucketArn#region}` (invalid DNS name)", [bK]: e }, aS = { [e]: "Client was configured for partition `{partitionResult#name}` but ARN (`{Bucket}`) has `{bucketPartition#name}`", [bK]: e }, aT = { [e]: "Invalid ARN: The ARN may only contain a single resource component after `accesspoint`.", [bK]: e }, aU = { [e]: "Invalid ARN: Expected a resource of the format `accesspoint:<accesspoint name>` but no name was provided", [bK]: e }, aV = { [bS]: [{ [bT]: true, [i]: "sigv4", [bU]: v, [bV]: "{bucketArn#region}" }] }, aW = { [bS]: [{ [bT]: true, [i]: "sigv4", [bU]: r, [bV]: "{bucketArn#region}" }] }, aX = { [bM]: A, [bN]: [Z] }, aY = { [bQ]: "https://s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", [bR]: ao, [bW]: {} }, aZ = { [bQ]: "https://s3-fips.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", [bR]: ao, [bW]: {} }, ba = { [bQ]: "https://s3.dualstack.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", [bR]: ao, [bW]: {} }, bb = { [bQ]: L, [bR]: ao, [bW]: {} }, bc = { [bQ]: "https://s3.{Region}.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", [bR]: ao, [bW]: {} }, bd = { [bO]: "UseObjectLambdaEndpoint" }, be = { [bS]: [{ [bT]: true, [i]: "sigv4", [bU]: E, [bV]: "{Region}" }] }, bf = { [bQ]: "https://s3-fips.dualstack.{Region}.{partitionResult#dnsSuffix}", [bR]: ao, [bW]: {} }, bg = { [bQ]: "https://s3-fips.{Region}.{partitionResult#dnsSuffix}", [bR]: ao, [bW]: {} }, bh = { [bQ]: "https://s3.dualstack.{Region}.{partitionResult#dnsSuffix}", [bR]: ao, [bW]: {} }, bi = { [bQ]: N, [bR]: ao, [bW]: {} }, bj = { [bQ]: "https://s3.{Region}.{partitionResult#dnsSuffix}", [bR]: ao, [bW]: {} }, bk = [{ [bO]: "Region" }], bl = [{ [bO]: "Endpoint" }], bm = [Z], bn = [{ [bM]: o, [bN]: [{ [bO]: n }, false] }], bo = [{ [bM]: g, [bN]: [{ [bO]: l }, "beta"] }], bp = [V, ad], bq = [Y], br = [W], bs = [{ [bM]: o, [bN]: [{ [bO]: "Region" }, false] }], bt = [{ [bM]: g, [bN]: [{ [bO]: "Region" }, "us-east-1"] }], bu = [{ [bM]: g, [bN]: [aF, F] }], bv = [{ [bM]: h, [bN]: [aE, "resourceId[1]"], [bP]: G }, { [bM]: p, [bN]: [{ [bM]: g, [bN]: [aH, D] }] }], bw = [aE, "resourceId[1]"], bx = [U], by = [S], bz = [{ [bM]: p, [bN]: [{ [bM]: g, [bN]: [{ [bM]: h, [bN]: [aE, "region"] }, D] }] }], bA = [{ [bM]: p, [bN]: [{ [bM]: c, [bN]: [{ [bM]: h, [bN]: [aE, "resourceId[2]"] }] }] }], bB = [aE, "resourceId[2]"], bC = [{ [bM]: f, [bN]: [{ [bM]: h, [bN]: [aE, "region"] }], [bP]: "bucketPartition" }], bD = [{ [bM]: g, [bN]: [aM, { [bM]: h, [bN]: [{ [bO]: "partitionResult" }, i] }] }], bE = [{ [bM]: o, [bN]: [{ [bM]: h, [bN]: [aE, "region"] }, true] }], bF = [{ [bM]: o, [bN]: [aN, false] }], bG = [{ [bM]: o, [bN]: [aH, false] }], bH = [T], bI = [{ [bM]: o, [bN]: [{ [bO]: "Region" }, true] }];
3
- const _data = { version: "1.0", parameters: { Bucket: P, Region: P, UseFIPS: Q, UseDualStack: Q, Endpoint: P, ForcePathStyle: Q, Accelerate: Q, UseGlobalEndpoint: Q, UseObjectLambdaEndpoint: R, DisableAccessPoints: R, DisableMultiRegionAccessPoints: Q, UseArnRegion: R }, rules: [{ [bL]: [{ [bM]: c, [bN]: bk }], rules: [{ [bL]: [S, T], error: "Accelerate cannot be used with FIPS", [bK]: e }, { [bL]: [U, V], error: "Cannot set dual-stack in combination with a custom endpoint.", [bK]: e }, { [bL]: [V, T], error: "A custom endpoint cannot be combined with FIPS", [bK]: e }, { [bL]: [V, S], error: "A custom endpoint cannot be combined with S3 Accelerate", [bK]: e }, { [bL]: [T, W, X], error: "Partition does not support FIPS", [bK]: e }, { [bL]: [Y, { [bM]: j, [bN]: [Z, 49, 50, b], [bP]: k }, { [bM]: j, [bN]: [Z, 8, 12, b], [bP]: l }, { [bM]: j, [bN]: [Z, 0, 7, b], [bP]: m }, { [bM]: j, [bN]: [Z, 32, 49, b], [bP]: n }, { [bM]: f, [bN]: bk, [bP]: "regionPartition" }, { [bM]: g, [bN]: [{ [bO]: m }, "--op-s3"] }], rules: [{ [bL]: bn, rules: [{ [bL]: [{ [bM]: g, [bN]: [aa, "e"] }], rules: [{ [bL]: bo, rules: [ab, { [bL]: bp, endpoint: { [bQ]: "https://{Bucket}.ec2.{url#authority}", [bR]: ae, [bW]: af }, [bK]: s }], [bK]: t }, { endpoint: { [bQ]: "https://{Bucket}.ec2.s3-outposts.{Region}.{regionPartition#dnsSuffix}", [bR]: ae, [bW]: af }, [bK]: s }], [bK]: t }, { [bL]: [{ [bM]: g, [bN]: [aa, "o"] }], rules: [{ [bL]: bo, rules: [ab, { [bL]: bp, endpoint: { [bQ]: "https://{Bucket}.op-{outpostId}.{url#authority}", [bR]: ae, [bW]: af }, [bK]: s }], [bK]: t }, { endpoint: { [bQ]: "https://{Bucket}.op-{outpostId}.s3-outposts.{Region}.{regionPartition#dnsSuffix}", [bR]: ae, [bW]: af }, [bK]: s }], [bK]: t }, { error: "Unrecognized hardware type: \"Expected hardware type o or e but got {hardwareType}\"", [bK]: e }], [bK]: t }, { error: "Invalid ARN: The outpost Id must only contain a-z, A-Z, 0-9 and `-`.", [bK]: e }], [bK]: t }, { [bL]: bq, rules: [{ [bL]: [V, { [bM]: p, [bN]: [{ [bM]: c, [bN]: [{ [bM]: q, [bN]: bl }] }] }], error: "Custom endpoint `{Endpoint}` was not a valid URI", [bK]: e }, { [bL]: [ag, { [bM]: u, [bN]: [Z, a] }], rules: [{ [bL]: br, rules: [{ [bL]: bs, rules: [{ [bL]: [S, X], error: "S3 Accelerate cannot be used in this region", [bK]: e }, { [bL]: [U, T, ai, ac, aj], endpoint: { [bQ]: "https://{Bucket}.s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}", [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [U, T, ai, ac, al, am], rules: [{ endpoint: an, [bK]: s }], [bK]: t }, { [bL]: [U, T, ai, ac, al, ap], endpoint: an, [bK]: s }, { [bL]: [aq, T, ai, ac, aj], endpoint: { [bQ]: "https://{Bucket}.s3-fips.us-east-1.{partitionResult#dnsSuffix}", [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [aq, T, ai, ac, al, am], rules: [{ endpoint: ar, [bK]: s }], [bK]: t }, { [bL]: [aq, T, ai, ac, al, ap], endpoint: ar, [bK]: s }, { [bL]: [U, as, S, ac, aj], endpoint: { [bQ]: "https://{Bucket}.s3-accelerate.dualstack.us-east-1.{partitionResult#dnsSuffix}", [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [U, as, S, ac, al, am], rules: [{ endpoint: at, [bK]: s }], [bK]: t }, { [bL]: [U, as, S, ac, al, ap], endpoint: at, [bK]: s }, { [bL]: [U, as, ai, ac, aj], endpoint: { [bQ]: "https://{Bucket}.s3.dualstack.us-east-1.{partitionResult#dnsSuffix}", [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [U, as, ai, ac, al, am], rules: [{ endpoint: au, [bK]: s }], [bK]: t }, { [bL]: [U, as, ai, ac, al, ap], endpoint: au, [bK]: s }, { [bL]: [aq, as, ai, V, ad, av, aj], endpoint: { [bQ]: w, [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [aq, as, ai, V, ad, ax, aj], endpoint: { [bQ]: x, [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [aq, as, ai, V, ad, av, al, am], rules: [{ [bL]: bt, endpoint: ay, [bK]: s }, { endpoint: ay, [bK]: s }], [bK]: t }, { [bL]: [aq, as, ai, V, ad, ax, al, am], rules: [{ [bL]: bt, endpoint: az, [bK]: s }, aA], [bK]: t }, { [bL]: [aq, as, ai, V, ad, av, al, ap], endpoint: ay, [bK]: s }, { [bL]: [aq, as, ai, V, ad, ax, al, ap], endpoint: az, [bK]: s }, { [bL]: [aq, as, S, ac, aj], endpoint: { [bQ]: y, [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [aq, as, S, ac, al, am], rules: [{ [bL]: bt, endpoint: aB, [bK]: s }, { endpoint: aB, [bK]: s }], [bK]: t }, { [bL]: [aq, as, S, ac, al, ap], endpoint: aB, [bK]: s }, { [bL]: [aq, as, ai, ac, aj], endpoint: { [bQ]: z, [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [aq, as, ai, ac, al, am], rules: [{ [bL]: bt, endpoint: { [bQ]: z, [bR]: ao, [bW]: af }, [bK]: s }, { endpoint: aC, [bK]: s }], [bK]: t }, { [bL]: [aq, as, ai, ac, al, ap], endpoint: aC, [bK]: s }], [bK]: t }, aD], [bK]: t }], [bK]: t }, { [bL]: [V, ad, { [bM]: g, [bN]: [{ [bM]: h, [bN]: [aw, "scheme"] }, "http"] }, { [bM]: u, [bN]: [Z, b] }, ag, as, aq, ai], rules: [{ [bL]: br, rules: [{ [bL]: bs, rules: [aA], [bK]: t }, aD], [bK]: t }], [bK]: t }, { [bL]: [ag, { [bM]: A, [bN]: bm, [bP]: B }], rules: [{ [bL]: [{ [bM]: h, [bN]: [aE, "resourceId[0]"], [bP]: C }, { [bM]: p, [bN]: [{ [bM]: g, [bN]: [aF, D] }] }], rules: [{ [bL]: [{ [bM]: g, [bN]: [aG, E] }], rules: [{ [bL]: bu, rules: [{ [bL]: bv, rules: [aI, aJ, { [bL]: bz, rules: [aK, { [bL]: bA, rules: [aL, { [bL]: bC, rules: [{ [bL]: br, rules: [{ [bL]: bD, rules: [{ [bL]: bE, rules: [{ [bL]: [{ [bM]: g, [bN]: [aN, D] }], error: "Invalid ARN: Missing account id", [bK]: e }, { [bL]: bF, rules: [{ [bL]: bG, rules: [{ [bL]: bp, endpoint: { [bQ]: H, [bR]: aO, [bW]: af }, [bK]: s }, { [bL]: bH, endpoint: { [bQ]: "https://{accessPointName}-{bucketArn#accountId}.s3-object-lambda-fips.{bucketArn#region}.{bucketPartition#dnsSuffix}", [bR]: aO, [bW]: af }, [bK]: s }, { endpoint: { [bQ]: "https://{accessPointName}-{bucketArn#accountId}.s3-object-lambda.{bucketArn#region}.{bucketPartition#dnsSuffix}", [bR]: aO, [bW]: af }, [bK]: s }], [bK]: t }, aP], [bK]: t }, aQ], [bK]: t }, aR], [bK]: t }, aS], [bK]: t }], [bK]: t }], [bK]: t }, aT], [bK]: t }, { error: "Invalid ARN: bucket ARN is missing a region", [bK]: e }], [bK]: t }, aU], [bK]: t }, { error: "Invalid ARN: Object Lambda ARNs only support `accesspoint` arn types, but found: `{arnType}`", [bK]: e }], [bK]: t }, { [bL]: bu, rules: [{ [bL]: bv, rules: [{ [bL]: bz, rules: [{ [bL]: bu, rules: [{ [bL]: bz, rules: [aK, { [bL]: bA, rules: [aL, { [bL]: bC, rules: [{ [bL]: br, rules: [{ [bL]: [{ [bM]: g, [bN]: [aM, "{partitionResult#name}"] }], rules: [{ [bL]: bE, rules: [{ [bL]: [{ [bM]: g, [bN]: [aG, v] }], rules: [{ [bL]: bF, rules: [{ [bL]: bG, rules: [{ [bL]: by, error: "Access Points do not support S3 Accelerate", [bK]: e }, { [bL]: [T, U], endpoint: { [bQ]: "https://{accessPointName}-{bucketArn#accountId}.s3-accesspoint-fips.dualstack.{bucketArn#region}.{bucketPartition#dnsSuffix}", [bR]: aV, [bW]: af }, [bK]: s }, { [bL]: [T, aq], endpoint: { [bQ]: "https://{accessPointName}-{bucketArn#accountId}.s3-accesspoint-fips.{bucketArn#region}.{bucketPartition#dnsSuffix}", [bR]: aV, [bW]: af }, [bK]: s }, { [bL]: [as, U], endpoint: { [bQ]: "https://{accessPointName}-{bucketArn#accountId}.s3-accesspoint.dualstack.{bucketArn#region}.{bucketPartition#dnsSuffix}", [bR]: aV, [bW]: af }, [bK]: s }, { [bL]: [as, aq, V, ad], endpoint: { [bQ]: H, [bR]: aV, [bW]: af }, [bK]: s }, { [bL]: [as, aq], endpoint: { [bQ]: "https://{accessPointName}-{bucketArn#accountId}.s3-accesspoint.{bucketArn#region}.{bucketPartition#dnsSuffix}", [bR]: aV, [bW]: af }, [bK]: s }], [bK]: t }, aP], [bK]: t }, aQ], [bK]: t }, { error: "Invalid ARN: The ARN was not for the S3 service, found: {bucketArn#service}", [bK]: e }], [bK]: t }, aR], [bK]: t }, aS], [bK]: t }], [bK]: t }], [bK]: t }, aT], [bK]: t }], [bK]: t }], [bK]: t }, { [bL]: [{ [bM]: o, [bN]: [aH, b] }], rules: [{ [bL]: bx, error: "S3 MRAP does not support dual-stack", [bK]: e }, { [bL]: bH, error: "S3 MRAP does not support FIPS", [bK]: e }, { [bL]: by, error: "S3 MRAP does not support S3 Accelerate", [bK]: e }, { [bL]: [{ [bM]: d, [bN]: [{ [bO]: "DisableMultiRegionAccessPoints" }, b] }], error: "Invalid configuration: Multi-Region Access Point ARNs are disabled.", [bK]: e }, { [bL]: [{ [bM]: f, [bN]: bk, [bP]: I }], rules: [{ [bL]: [{ [bM]: g, [bN]: [{ [bM]: h, [bN]: [{ [bO]: I }, i] }, { [bM]: h, [bN]: [aE, "partition"] }] }], rules: [{ endpoint: { [bQ]: "https://{accessPointName}.accesspoint.s3-global.{mrapPartition#dnsSuffix}", [bR]: { [bS]: [{ [bT]: b, name: "sigv4a", [bU]: v, signingRegionSet: ["*"] }] }, [bW]: af }, [bK]: s }], [bK]: t }, { error: "Client was configured for partition `{mrapPartition#name}` but bucket referred to partition `{bucketArn#partition}`", [bK]: e }], [bK]: t }], [bK]: t }, { error: "Invalid Access Point Name", [bK]: e }], [bK]: t }, aU], [bK]: t }, { [bL]: [{ [bM]: g, [bN]: [aG, r] }], rules: [{ [bL]: bx, error: "S3 Outposts does not support Dual-stack", [bK]: e }, { [bL]: bH, error: "S3 Outposts does not support FIPS", [bK]: e }, { [bL]: by, error: "S3 Outposts does not support S3 Accelerate", [bK]: e }, { [bL]: [{ [bM]: c, [bN]: [{ [bM]: h, [bN]: [aE, "resourceId[4]"] }] }], error: "Invalid Arn: Outpost Access Point ARN contains sub resources", [bK]: e }, { [bL]: [{ [bM]: h, [bN]: bw, [bP]: n }], rules: [{ [bL]: bn, rules: [aL, { [bL]: bC, rules: [{ [bL]: br, rules: [{ [bL]: bD, rules: [{ [bL]: bE, rules: [{ [bL]: bF, rules: [{ [bL]: [{ [bM]: h, [bN]: bB, [bP]: J }], rules: [{ [bL]: [{ [bM]: h, [bN]: [aE, "resourceId[3]"], [bP]: G }], rules: [{ [bL]: [{ [bM]: g, [bN]: [{ [bO]: J }, F] }], rules: [{ [bL]: bp, endpoint: { [bQ]: "https://{accessPointName}-{bucketArn#accountId}.{outpostId}.{url#authority}", [bR]: aW, [bW]: af }, [bK]: s }, { endpoint: { [bQ]: "https://{accessPointName}-{bucketArn#accountId}.{outpostId}.s3-outposts.{bucketArn#region}.{bucketPartition#dnsSuffix}", [bR]: aW, [bW]: af }, [bK]: s }], [bK]: t }, { error: "Expected an outpost type `accesspoint`, found {outpostType}", [bK]: e }], [bK]: t }, { error: "Invalid ARN: expected an access point name", [bK]: e }], [bK]: t }, { error: "Invalid ARN: Expected a 4-component resource", [bK]: e }], [bK]: t }, aQ], [bK]: t }, aR], [bK]: t }, aS], [bK]: t }], [bK]: t }], [bK]: t }, { error: "Invalid ARN: The outpost Id may only contain a-z, A-Z, 0-9 and `-`. Found: `{outpostId}`", [bK]: e }], [bK]: t }, { error: "Invalid ARN: The Outpost Id was not set", [bK]: e }], [bK]: t }, { error: "Invalid ARN: Unrecognized format: {Bucket} (type: {arnType})", [bK]: e }], [bK]: t }, { error: "Invalid ARN: No ARN type specified", [bK]: e }], [bK]: t }, { [bL]: [{ [bM]: j, [bN]: [Z, 0, 4, a], [bP]: K }, { [bM]: g, [bN]: [{ [bO]: K }, "arn:"] }, { [bM]: p, [bN]: [{ [bM]: c, [bN]: [aX] }] }], error: "Invalid ARN: `{Bucket}` was not a valid ARN", [bK]: e }, { [bL]: [{ [bM]: d, [bN]: [ah, b] }, aX], error: "Path-style addressing cannot be used with ARN buckets", [bK]: e }, { [bL]: [{ [bM]: "uriEncode", [bN]: bm, [bP]: "uri_encoded_bucket" }], rules: [{ [bL]: br, rules: [{ [bL]: [ai], rules: [{ [bL]: [U, ac, T, aj], endpoint: { [bQ]: "https://s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [U, ac, T, al, am], rules: [{ endpoint: aY, [bK]: s }], [bK]: t }, { [bL]: [U, ac, T, al, ap], endpoint: aY, [bK]: s }, { [bL]: [aq, ac, T, aj], endpoint: { [bQ]: "https://s3-fips.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [aq, ac, T, al, am], rules: [{ endpoint: aZ, [bK]: s }], [bK]: t }, { [bL]: [aq, ac, T, al, ap], endpoint: aZ, [bK]: s }, { [bL]: [U, ac, as, aj], endpoint: { [bQ]: "https://s3.dualstack.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [U, ac, as, al, am], rules: [{ endpoint: ba, [bK]: s }], [bK]: t }, { [bL]: [U, ac, as, al, ap], endpoint: ba, [bK]: s }, { [bL]: [aq, V, ad, as, aj], endpoint: { [bQ]: L, [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [aq, V, ad, as, al, am], rules: [{ [bL]: bt, endpoint: bb, [bK]: s }, { endpoint: bb, [bK]: s }], [bK]: t }, { [bL]: [aq, V, ad, as, al, ap], endpoint: bb, [bK]: s }, { [bL]: [aq, ac, as, aj], endpoint: { [bQ]: M, [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [aq, ac, as, al, am], rules: [{ [bL]: bt, endpoint: { [bQ]: M, [bR]: ao, [bW]: af }, [bK]: s }, { endpoint: bc, [bK]: s }], [bK]: t }, { [bL]: [aq, ac, as, al, ap], endpoint: bc, [bK]: s }], [bK]: t }, { error: "Path-style addressing cannot be used with S3 Accelerate", [bK]: e }], [bK]: t }], [bK]: t }], [bK]: t }, { [bL]: [{ [bM]: c, [bN]: [bd] }, { [bM]: d, [bN]: [bd, b] }], rules: [{ [bL]: br, rules: [{ [bL]: bI, rules: [aI, aJ, { [bL]: bp, endpoint: { [bQ]: N, [bR]: be, [bW]: af }, [bK]: s }, { [bL]: bH, endpoint: { [bQ]: "https://s3-object-lambda-fips.{Region}.{partitionResult#dnsSuffix}", [bR]: be, [bW]: af }, [bK]: s }, { endpoint: { [bQ]: "https://s3-object-lambda.{Region}.{partitionResult#dnsSuffix}", [bR]: be, [bW]: af }, [bK]: s }], [bK]: t }, aD], [bK]: t }], [bK]: t }, { [bL]: [{ [bM]: p, [bN]: bq }], rules: [{ [bL]: br, rules: [{ [bL]: bI, rules: [{ [bL]: [T, U, ac, aj], endpoint: { [bQ]: "https://s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}", [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [T, U, ac, al, am], rules: [{ endpoint: bf, [bK]: s }], [bK]: t }, { [bL]: [T, U, ac, al, ap], endpoint: bf, [bK]: s }, { [bL]: [T, aq, ac, aj], endpoint: { [bQ]: "https://s3-fips.us-east-1.{partitionResult#dnsSuffix}", [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [T, aq, ac, al, am], rules: [{ endpoint: bg, [bK]: s }], [bK]: t }, { [bL]: [T, aq, ac, al, ap], endpoint: bg, [bK]: s }, { [bL]: [as, U, ac, aj], endpoint: { [bQ]: "https://s3.dualstack.us-east-1.{partitionResult#dnsSuffix}", [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [as, U, ac, al, am], rules: [{ endpoint: bh, [bK]: s }], [bK]: t }, { [bL]: [as, U, ac, al, ap], endpoint: bh, [bK]: s }, { [bL]: [as, aq, V, ad, aj], endpoint: { [bQ]: N, [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [as, aq, V, ad, al, am], rules: [{ [bL]: bt, endpoint: bi, [bK]: s }, { endpoint: bi, [bK]: s }], [bK]: t }, { [bL]: [as, aq, V, ad, al, ap], endpoint: bi, [bK]: s }, { [bL]: [as, aq, ac, aj], endpoint: { [bQ]: O, [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [as, aq, ac, al, am], rules: [{ [bL]: bt, endpoint: { [bQ]: O, [bR]: ao, [bW]: af }, [bK]: s }, { endpoint: bj, [bK]: s }], [bK]: t }, { [bL]: [as, aq, ac, al, ap], endpoint: bj, [bK]: s }], [bK]: t }, aD], [bK]: t }], [bK]: t }], [bK]: t }, { error: "A region must be set when sending requests to S3.", [bK]: e }] };
3
+ const _data = { version: "1.0", parameters: { Bucket: P, Region: P, UseFIPS: Q, UseDualStack: Q, Endpoint: P, ForcePathStyle: Q, Accelerate: Q, UseGlobalEndpoint: Q, UseObjectLambdaEndpoint: R, Key: P, Prefix: P, DisableAccessPoints: R, DisableMultiRegionAccessPoints: Q, UseArnRegion: R }, rules: [{ [bL]: [{ [bM]: c, [bN]: bk }], rules: [{ [bL]: [S, T], error: "Accelerate cannot be used with FIPS", [bK]: e }, { [bL]: [U, V], error: "Cannot set dual-stack in combination with a custom endpoint.", [bK]: e }, { [bL]: [V, T], error: "A custom endpoint cannot be combined with FIPS", [bK]: e }, { [bL]: [V, S], error: "A custom endpoint cannot be combined with S3 Accelerate", [bK]: e }, { [bL]: [T, W, X], error: "Partition does not support FIPS", [bK]: e }, { [bL]: [Y, { [bM]: j, [bN]: [Z, 49, 50, b], [bP]: k }, { [bM]: j, [bN]: [Z, 8, 12, b], [bP]: l }, { [bM]: j, [bN]: [Z, 0, 7, b], [bP]: m }, { [bM]: j, [bN]: [Z, 32, 49, b], [bP]: n }, { [bM]: f, [bN]: bk, [bP]: "regionPartition" }, { [bM]: g, [bN]: [{ [bO]: m }, "--op-s3"] }], rules: [{ [bL]: bn, rules: [{ [bL]: [{ [bM]: g, [bN]: [aa, "e"] }], rules: [{ [bL]: bo, rules: [ab, { [bL]: bp, endpoint: { [bQ]: "https://{Bucket}.ec2.{url#authority}", [bR]: ae, [bW]: af }, [bK]: s }], [bK]: t }, { endpoint: { [bQ]: "https://{Bucket}.ec2.s3-outposts.{Region}.{regionPartition#dnsSuffix}", [bR]: ae, [bW]: af }, [bK]: s }], [bK]: t }, { [bL]: [{ [bM]: g, [bN]: [aa, "o"] }], rules: [{ [bL]: bo, rules: [ab, { [bL]: bp, endpoint: { [bQ]: "https://{Bucket}.op-{outpostId}.{url#authority}", [bR]: ae, [bW]: af }, [bK]: s }], [bK]: t }, { endpoint: { [bQ]: "https://{Bucket}.op-{outpostId}.s3-outposts.{Region}.{regionPartition#dnsSuffix}", [bR]: ae, [bW]: af }, [bK]: s }], [bK]: t }, { error: "Unrecognized hardware type: \"Expected hardware type o or e but got {hardwareType}\"", [bK]: e }], [bK]: t }, { error: "Invalid ARN: The outpost Id must only contain a-z, A-Z, 0-9 and `-`.", [bK]: e }], [bK]: t }, { [bL]: bq, rules: [{ [bL]: [V, { [bM]: p, [bN]: [{ [bM]: c, [bN]: [{ [bM]: q, [bN]: bl }] }] }], error: "Custom endpoint `{Endpoint}` was not a valid URI", [bK]: e }, { [bL]: [ag, { [bM]: u, [bN]: [Z, a] }], rules: [{ [bL]: br, rules: [{ [bL]: bs, rules: [{ [bL]: [S, X], error: "S3 Accelerate cannot be used in this region", [bK]: e }, { [bL]: [U, T, ai, ac, aj], endpoint: { [bQ]: "https://{Bucket}.s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}", [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [U, T, ai, ac, al, am], rules: [{ endpoint: an, [bK]: s }], [bK]: t }, { [bL]: [U, T, ai, ac, al, ap], endpoint: an, [bK]: s }, { [bL]: [aq, T, ai, ac, aj], endpoint: { [bQ]: "https://{Bucket}.s3-fips.us-east-1.{partitionResult#dnsSuffix}", [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [aq, T, ai, ac, al, am], rules: [{ endpoint: ar, [bK]: s }], [bK]: t }, { [bL]: [aq, T, ai, ac, al, ap], endpoint: ar, [bK]: s }, { [bL]: [U, as, S, ac, aj], endpoint: { [bQ]: "https://{Bucket}.s3-accelerate.dualstack.us-east-1.{partitionResult#dnsSuffix}", [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [U, as, S, ac, al, am], rules: [{ endpoint: at, [bK]: s }], [bK]: t }, { [bL]: [U, as, S, ac, al, ap], endpoint: at, [bK]: s }, { [bL]: [U, as, ai, ac, aj], endpoint: { [bQ]: "https://{Bucket}.s3.dualstack.us-east-1.{partitionResult#dnsSuffix}", [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [U, as, ai, ac, al, am], rules: [{ endpoint: au, [bK]: s }], [bK]: t }, { [bL]: [U, as, ai, ac, al, ap], endpoint: au, [bK]: s }, { [bL]: [aq, as, ai, V, ad, av, aj], endpoint: { [bQ]: w, [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [aq, as, ai, V, ad, ax, aj], endpoint: { [bQ]: x, [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [aq, as, ai, V, ad, av, al, am], rules: [{ [bL]: bt, endpoint: ay, [bK]: s }, { endpoint: ay, [bK]: s }], [bK]: t }, { [bL]: [aq, as, ai, V, ad, ax, al, am], rules: [{ [bL]: bt, endpoint: az, [bK]: s }, aA], [bK]: t }, { [bL]: [aq, as, ai, V, ad, av, al, ap], endpoint: ay, [bK]: s }, { [bL]: [aq, as, ai, V, ad, ax, al, ap], endpoint: az, [bK]: s }, { [bL]: [aq, as, S, ac, aj], endpoint: { [bQ]: y, [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [aq, as, S, ac, al, am], rules: [{ [bL]: bt, endpoint: aB, [bK]: s }, { endpoint: aB, [bK]: s }], [bK]: t }, { [bL]: [aq, as, S, ac, al, ap], endpoint: aB, [bK]: s }, { [bL]: [aq, as, ai, ac, aj], endpoint: { [bQ]: z, [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [aq, as, ai, ac, al, am], rules: [{ [bL]: bt, endpoint: { [bQ]: z, [bR]: ao, [bW]: af }, [bK]: s }, { endpoint: aC, [bK]: s }], [bK]: t }, { [bL]: [aq, as, ai, ac, al, ap], endpoint: aC, [bK]: s }], [bK]: t }, aD], [bK]: t }], [bK]: t }, { [bL]: [V, ad, { [bM]: g, [bN]: [{ [bM]: h, [bN]: [aw, "scheme"] }, "http"] }, { [bM]: u, [bN]: [Z, b] }, ag, as, aq, ai], rules: [{ [bL]: br, rules: [{ [bL]: bs, rules: [aA], [bK]: t }, aD], [bK]: t }], [bK]: t }, { [bL]: [ag, { [bM]: A, [bN]: bm, [bP]: B }], rules: [{ [bL]: [{ [bM]: h, [bN]: [aE, "resourceId[0]"], [bP]: C }, { [bM]: p, [bN]: [{ [bM]: g, [bN]: [aF, D] }] }], rules: [{ [bL]: [{ [bM]: g, [bN]: [aG, E] }], rules: [{ [bL]: bu, rules: [{ [bL]: bv, rules: [aI, aJ, { [bL]: bz, rules: [aK, { [bL]: bA, rules: [aL, { [bL]: bC, rules: [{ [bL]: br, rules: [{ [bL]: bD, rules: [{ [bL]: bE, rules: [{ [bL]: [{ [bM]: g, [bN]: [aN, D] }], error: "Invalid ARN: Missing account id", [bK]: e }, { [bL]: bF, rules: [{ [bL]: bG, rules: [{ [bL]: bp, endpoint: { [bQ]: H, [bR]: aO, [bW]: af }, [bK]: s }, { [bL]: bH, endpoint: { [bQ]: "https://{accessPointName}-{bucketArn#accountId}.s3-object-lambda-fips.{bucketArn#region}.{bucketPartition#dnsSuffix}", [bR]: aO, [bW]: af }, [bK]: s }, { endpoint: { [bQ]: "https://{accessPointName}-{bucketArn#accountId}.s3-object-lambda.{bucketArn#region}.{bucketPartition#dnsSuffix}", [bR]: aO, [bW]: af }, [bK]: s }], [bK]: t }, aP], [bK]: t }, aQ], [bK]: t }, aR], [bK]: t }, aS], [bK]: t }], [bK]: t }], [bK]: t }, aT], [bK]: t }, { error: "Invalid ARN: bucket ARN is missing a region", [bK]: e }], [bK]: t }, aU], [bK]: t }, { error: "Invalid ARN: Object Lambda ARNs only support `accesspoint` arn types, but found: `{arnType}`", [bK]: e }], [bK]: t }, { [bL]: bu, rules: [{ [bL]: bv, rules: [{ [bL]: bz, rules: [{ [bL]: bu, rules: [{ [bL]: bz, rules: [aK, { [bL]: bA, rules: [aL, { [bL]: bC, rules: [{ [bL]: br, rules: [{ [bL]: [{ [bM]: g, [bN]: [aM, "{partitionResult#name}"] }], rules: [{ [bL]: bE, rules: [{ [bL]: [{ [bM]: g, [bN]: [aG, v] }], rules: [{ [bL]: bF, rules: [{ [bL]: bG, rules: [{ [bL]: by, error: "Access Points do not support S3 Accelerate", [bK]: e }, { [bL]: [T, U], endpoint: { [bQ]: "https://{accessPointName}-{bucketArn#accountId}.s3-accesspoint-fips.dualstack.{bucketArn#region}.{bucketPartition#dnsSuffix}", [bR]: aV, [bW]: af }, [bK]: s }, { [bL]: [T, aq], endpoint: { [bQ]: "https://{accessPointName}-{bucketArn#accountId}.s3-accesspoint-fips.{bucketArn#region}.{bucketPartition#dnsSuffix}", [bR]: aV, [bW]: af }, [bK]: s }, { [bL]: [as, U], endpoint: { [bQ]: "https://{accessPointName}-{bucketArn#accountId}.s3-accesspoint.dualstack.{bucketArn#region}.{bucketPartition#dnsSuffix}", [bR]: aV, [bW]: af }, [bK]: s }, { [bL]: [as, aq, V, ad], endpoint: { [bQ]: H, [bR]: aV, [bW]: af }, [bK]: s }, { [bL]: [as, aq], endpoint: { [bQ]: "https://{accessPointName}-{bucketArn#accountId}.s3-accesspoint.{bucketArn#region}.{bucketPartition#dnsSuffix}", [bR]: aV, [bW]: af }, [bK]: s }], [bK]: t }, aP], [bK]: t }, aQ], [bK]: t }, { error: "Invalid ARN: The ARN was not for the S3 service, found: {bucketArn#service}", [bK]: e }], [bK]: t }, aR], [bK]: t }, aS], [bK]: t }], [bK]: t }], [bK]: t }, aT], [bK]: t }], [bK]: t }], [bK]: t }, { [bL]: [{ [bM]: o, [bN]: [aH, b] }], rules: [{ [bL]: bx, error: "S3 MRAP does not support dual-stack", [bK]: e }, { [bL]: bH, error: "S3 MRAP does not support FIPS", [bK]: e }, { [bL]: by, error: "S3 MRAP does not support S3 Accelerate", [bK]: e }, { [bL]: [{ [bM]: d, [bN]: [{ [bO]: "DisableMultiRegionAccessPoints" }, b] }], error: "Invalid configuration: Multi-Region Access Point ARNs are disabled.", [bK]: e }, { [bL]: [{ [bM]: f, [bN]: bk, [bP]: I }], rules: [{ [bL]: [{ [bM]: g, [bN]: [{ [bM]: h, [bN]: [{ [bO]: I }, i] }, { [bM]: h, [bN]: [aE, "partition"] }] }], rules: [{ endpoint: { [bQ]: "https://{accessPointName}.accesspoint.s3-global.{mrapPartition#dnsSuffix}", [bR]: { [bS]: [{ [bT]: b, name: "sigv4a", [bU]: v, signingRegionSet: ["*"] }] }, [bW]: af }, [bK]: s }], [bK]: t }, { error: "Client was configured for partition `{mrapPartition#name}` but bucket referred to partition `{bucketArn#partition}`", [bK]: e }], [bK]: t }], [bK]: t }, { error: "Invalid Access Point Name", [bK]: e }], [bK]: t }, aU], [bK]: t }, { [bL]: [{ [bM]: g, [bN]: [aG, r] }], rules: [{ [bL]: bx, error: "S3 Outposts does not support Dual-stack", [bK]: e }, { [bL]: bH, error: "S3 Outposts does not support FIPS", [bK]: e }, { [bL]: by, error: "S3 Outposts does not support S3 Accelerate", [bK]: e }, { [bL]: [{ [bM]: c, [bN]: [{ [bM]: h, [bN]: [aE, "resourceId[4]"] }] }], error: "Invalid Arn: Outpost Access Point ARN contains sub resources", [bK]: e }, { [bL]: [{ [bM]: h, [bN]: bw, [bP]: n }], rules: [{ [bL]: bn, rules: [aL, { [bL]: bC, rules: [{ [bL]: br, rules: [{ [bL]: bD, rules: [{ [bL]: bE, rules: [{ [bL]: bF, rules: [{ [bL]: [{ [bM]: h, [bN]: bB, [bP]: J }], rules: [{ [bL]: [{ [bM]: h, [bN]: [aE, "resourceId[3]"], [bP]: G }], rules: [{ [bL]: [{ [bM]: g, [bN]: [{ [bO]: J }, F] }], rules: [{ [bL]: bp, endpoint: { [bQ]: "https://{accessPointName}-{bucketArn#accountId}.{outpostId}.{url#authority}", [bR]: aW, [bW]: af }, [bK]: s }, { endpoint: { [bQ]: "https://{accessPointName}-{bucketArn#accountId}.{outpostId}.s3-outposts.{bucketArn#region}.{bucketPartition#dnsSuffix}", [bR]: aW, [bW]: af }, [bK]: s }], [bK]: t }, { error: "Expected an outpost type `accesspoint`, found {outpostType}", [bK]: e }], [bK]: t }, { error: "Invalid ARN: expected an access point name", [bK]: e }], [bK]: t }, { error: "Invalid ARN: Expected a 4-component resource", [bK]: e }], [bK]: t }, aQ], [bK]: t }, aR], [bK]: t }, aS], [bK]: t }], [bK]: t }], [bK]: t }, { error: "Invalid ARN: The outpost Id may only contain a-z, A-Z, 0-9 and `-`. Found: `{outpostId}`", [bK]: e }], [bK]: t }, { error: "Invalid ARN: The Outpost Id was not set", [bK]: e }], [bK]: t }, { error: "Invalid ARN: Unrecognized format: {Bucket} (type: {arnType})", [bK]: e }], [bK]: t }, { error: "Invalid ARN: No ARN type specified", [bK]: e }], [bK]: t }, { [bL]: [{ [bM]: j, [bN]: [Z, 0, 4, a], [bP]: K }, { [bM]: g, [bN]: [{ [bO]: K }, "arn:"] }, { [bM]: p, [bN]: [{ [bM]: c, [bN]: [aX] }] }], error: "Invalid ARN: `{Bucket}` was not a valid ARN", [bK]: e }, { [bL]: [{ [bM]: d, [bN]: [ah, b] }, aX], error: "Path-style addressing cannot be used with ARN buckets", [bK]: e }, { [bL]: [{ [bM]: "uriEncode", [bN]: bm, [bP]: "uri_encoded_bucket" }], rules: [{ [bL]: br, rules: [{ [bL]: [ai], rules: [{ [bL]: [U, ac, T, aj], endpoint: { [bQ]: "https://s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [U, ac, T, al, am], rules: [{ endpoint: aY, [bK]: s }], [bK]: t }, { [bL]: [U, ac, T, al, ap], endpoint: aY, [bK]: s }, { [bL]: [aq, ac, T, aj], endpoint: { [bQ]: "https://s3-fips.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [aq, ac, T, al, am], rules: [{ endpoint: aZ, [bK]: s }], [bK]: t }, { [bL]: [aq, ac, T, al, ap], endpoint: aZ, [bK]: s }, { [bL]: [U, ac, as, aj], endpoint: { [bQ]: "https://s3.dualstack.us-east-1.{partitionResult#dnsSuffix}/{uri_encoded_bucket}", [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [U, ac, as, al, am], rules: [{ endpoint: ba, [bK]: s }], [bK]: t }, { [bL]: [U, ac, as, al, ap], endpoint: ba, [bK]: s }, { [bL]: [aq, V, ad, as, aj], endpoint: { [bQ]: L, [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [aq, V, ad, as, al, am], rules: [{ [bL]: bt, endpoint: bb, [bK]: s }, { endpoint: bb, [bK]: s }], [bK]: t }, { [bL]: [aq, V, ad, as, al, ap], endpoint: bb, [bK]: s }, { [bL]: [aq, ac, as, aj], endpoint: { [bQ]: M, [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [aq, ac, as, al, am], rules: [{ [bL]: bt, endpoint: { [bQ]: M, [bR]: ao, [bW]: af }, [bK]: s }, { endpoint: bc, [bK]: s }], [bK]: t }, { [bL]: [aq, ac, as, al, ap], endpoint: bc, [bK]: s }], [bK]: t }, { error: "Path-style addressing cannot be used with S3 Accelerate", [bK]: e }], [bK]: t }], [bK]: t }], [bK]: t }, { [bL]: [{ [bM]: c, [bN]: [bd] }, { [bM]: d, [bN]: [bd, b] }], rules: [{ [bL]: br, rules: [{ [bL]: bI, rules: [aI, aJ, { [bL]: bp, endpoint: { [bQ]: N, [bR]: be, [bW]: af }, [bK]: s }, { [bL]: bH, endpoint: { [bQ]: "https://s3-object-lambda-fips.{Region}.{partitionResult#dnsSuffix}", [bR]: be, [bW]: af }, [bK]: s }, { endpoint: { [bQ]: "https://s3-object-lambda.{Region}.{partitionResult#dnsSuffix}", [bR]: be, [bW]: af }, [bK]: s }], [bK]: t }, aD], [bK]: t }], [bK]: t }, { [bL]: [{ [bM]: p, [bN]: bq }], rules: [{ [bL]: br, rules: [{ [bL]: bI, rules: [{ [bL]: [T, U, ac, aj], endpoint: { [bQ]: "https://s3-fips.dualstack.us-east-1.{partitionResult#dnsSuffix}", [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [T, U, ac, al, am], rules: [{ endpoint: bf, [bK]: s }], [bK]: t }, { [bL]: [T, U, ac, al, ap], endpoint: bf, [bK]: s }, { [bL]: [T, aq, ac, aj], endpoint: { [bQ]: "https://s3-fips.us-east-1.{partitionResult#dnsSuffix}", [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [T, aq, ac, al, am], rules: [{ endpoint: bg, [bK]: s }], [bK]: t }, { [bL]: [T, aq, ac, al, ap], endpoint: bg, [bK]: s }, { [bL]: [as, U, ac, aj], endpoint: { [bQ]: "https://s3.dualstack.us-east-1.{partitionResult#dnsSuffix}", [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [as, U, ac, al, am], rules: [{ endpoint: bh, [bK]: s }], [bK]: t }, { [bL]: [as, U, ac, al, ap], endpoint: bh, [bK]: s }, { [bL]: [as, aq, V, ad, aj], endpoint: { [bQ]: N, [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [as, aq, V, ad, al, am], rules: [{ [bL]: bt, endpoint: bi, [bK]: s }, { endpoint: bi, [bK]: s }], [bK]: t }, { [bL]: [as, aq, V, ad, al, ap], endpoint: bi, [bK]: s }, { [bL]: [as, aq, ac, aj], endpoint: { [bQ]: O, [bR]: ak, [bW]: af }, [bK]: s }, { [bL]: [as, aq, ac, al, am], rules: [{ [bL]: bt, endpoint: { [bQ]: O, [bR]: ao, [bW]: af }, [bK]: s }, { endpoint: bj, [bK]: s }], [bK]: t }, { [bL]: [as, aq, ac, al, ap], endpoint: bj, [bK]: s }], [bK]: t }, aD], [bK]: t }], [bK]: t }], [bK]: t }, { error: "A region must be set when sending requests to S3.", [bK]: e }] };
4
4
  export const ruleSet = _data;
@@ -251,6 +251,10 @@ export const BucketLogsPermission = {
251
251
  READ: "READ",
252
252
  WRITE: "WRITE",
253
253
  };
254
+ export const PartitionDateSource = {
255
+ DeliveryTime: "DeliveryTime",
256
+ EventTime: "EventTime",
257
+ };
254
258
  export var MetricsFilter;
255
259
  (function (MetricsFilter) {
256
260
  MetricsFilter.visit = (value, visitor) => {
@@ -6927,6 +6927,10 @@ const se_LoggingEnabled = (input, context) => {
6927
6927
  const node = __XmlNode.of("TargetPrefix", input.TargetPrefix).withName("TargetPrefix");
6928
6928
  bodyNode.addChildNode(node);
6929
6929
  }
6930
+ if (input.TargetObjectKeyFormat != null) {
6931
+ const node = se_TargetObjectKeyFormat(input.TargetObjectKeyFormat, context).withName("TargetObjectKeyFormat");
6932
+ bodyNode.addChildNode(node);
6933
+ }
6930
6934
  return bodyNode;
6931
6935
  };
6932
6936
  const se_MetadataEntry = (input, context) => {
@@ -7214,6 +7218,14 @@ const se_ParquetInput = (input, context) => {
7214
7218
  const bodyNode = new __XmlNode("ParquetInput");
7215
7219
  return bodyNode;
7216
7220
  };
7221
+ const se_PartitionedPrefix = (input, context) => {
7222
+ const bodyNode = new __XmlNode("PartitionedPrefix");
7223
+ if (input.PartitionDateSource != null) {
7224
+ const node = __XmlNode.of("PartitionDateSource", input.PartitionDateSource).withName("PartitionDateSource");
7225
+ bodyNode.addChildNode(node);
7226
+ }
7227
+ return bodyNode;
7228
+ };
7217
7229
  const se_PublicAccessBlockConfiguration = (input, context) => {
7218
7230
  const bodyNode = new __XmlNode("PublicAccessBlockConfiguration");
7219
7231
  if (input.BlockPublicAcls != null) {
@@ -7629,6 +7641,10 @@ const se_ServerSideEncryptionRules = (input, context) => {
7629
7641
  return node.withName("member");
7630
7642
  });
7631
7643
  };
7644
+ const se_SimplePrefix = (input, context) => {
7645
+ const bodyNode = new __XmlNode("SimplePrefix");
7646
+ return bodyNode;
7647
+ };
7632
7648
  const se_SourceSelectionCriteria = (input, context) => {
7633
7649
  const bodyNode = new __XmlNode("SourceSelectionCriteria");
7634
7650
  if (input.SseKmsEncryptedObjects != null) {
@@ -7736,6 +7752,18 @@ const se_TargetGrants = (input, context) => {
7736
7752
  return node.withName("Grant");
7737
7753
  });
7738
7754
  };
7755
+ const se_TargetObjectKeyFormat = (input, context) => {
7756
+ const bodyNode = new __XmlNode("TargetObjectKeyFormat");
7757
+ if (input.SimplePrefix != null) {
7758
+ const node = se_SimplePrefix(input.SimplePrefix, context).withName("SimplePrefix");
7759
+ bodyNode.addChildNode(node);
7760
+ }
7761
+ if (input.PartitionedPrefix != null) {
7762
+ const node = se_PartitionedPrefix(input.PartitionedPrefix, context).withName("PartitionedPrefix");
7763
+ bodyNode.addChildNode(node);
7764
+ }
7765
+ return bodyNode;
7766
+ };
7739
7767
  const se_Tiering = (input, context) => {
7740
7768
  const bodyNode = new __XmlNode("Tiering");
7741
7769
  if (input.Days != null) {
@@ -8664,6 +8692,9 @@ const de_LoggingEnabled = (output, context) => {
8664
8692
  if (output["TargetPrefix"] !== undefined) {
8665
8693
  contents.TargetPrefix = __expectString(output["TargetPrefix"]);
8666
8694
  }
8695
+ if (output["TargetObjectKeyFormat"] !== undefined) {
8696
+ contents.TargetObjectKeyFormat = de_TargetObjectKeyFormat(output["TargetObjectKeyFormat"], context);
8697
+ }
8667
8698
  return contents;
8668
8699
  };
8669
8700
  const de_Metrics = (output, context) => {
@@ -9003,6 +9034,13 @@ const de_Part = (output, context) => {
9003
9034
  }
9004
9035
  return contents;
9005
9036
  };
9037
+ const de_PartitionedPrefix = (output, context) => {
9038
+ const contents = {};
9039
+ if (output["PartitionDateSource"] !== undefined) {
9040
+ contents.PartitionDateSource = __expectString(output["PartitionDateSource"]);
9041
+ }
9042
+ return contents;
9043
+ };
9006
9044
  const de_Parts = (output, context) => {
9007
9045
  return (output || [])
9008
9046
  .filter((e) => e != null)
@@ -9290,6 +9328,10 @@ const de_ServerSideEncryptionRules = (output, context) => {
9290
9328
  return de_ServerSideEncryptionRule(entry, context);
9291
9329
  });
9292
9330
  };
9331
+ const de_SimplePrefix = (output, context) => {
9332
+ const contents = {};
9333
+ return contents;
9334
+ };
9293
9335
  const de_SourceSelectionCriteria = (output, context) => {
9294
9336
  const contents = {};
9295
9337
  if (output["SseKmsEncryptedObjects"] !== undefined) {
@@ -9382,6 +9424,16 @@ const de_TargetGrants = (output, context) => {
9382
9424
  return de_TargetGrant(entry, context);
9383
9425
  });
9384
9426
  };
9427
+ const de_TargetObjectKeyFormat = (output, context) => {
9428
+ const contents = {};
9429
+ if (output["SimplePrefix"] !== undefined) {
9430
+ contents.SimplePrefix = de_SimplePrefix(output["SimplePrefix"], context);
9431
+ }
9432
+ if (output["PartitionedPrefix"] !== undefined) {
9433
+ contents.PartitionedPrefix = de_PartitionedPrefix(output["PartitionedPrefix"], context);
9434
+ }
9435
+ return contents;
9436
+ };
9385
9437
  const de_Tiering = (output, context) => {
9386
9438
  const contents = {};
9387
9439
  if (output["Days"] !== undefined) {
@@ -131,20 +131,18 @@ export interface DeleteObjectsCommandOutput extends DeleteObjectsOutput, __Metad
131
131
  * @throws {@link S3ServiceException}
132
132
  * <p>Base exception class for all service exceptions from S3 service.</p>
133
133
  *
134
- * @example To delete multiple object versions from a versioned bucket
134
+ * @example To delete multiple objects from a versioned bucket
135
135
  * ```javascript
136
- * // The following example deletes objects from a bucket. The request specifies object versions. S3 deletes specific object versions and returns the key and versions of deleted objects in the response.
136
+ * // The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.
137
137
  * const input = {
138
138
  * "Bucket": "examplebucket",
139
139
  * "Delete": {
140
140
  * "Objects": [
141
141
  * {
142
- * "Key": "HappyFace.jpg",
143
- * "VersionId": "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b"
142
+ * "Key": "objectkey1"
144
143
  * },
145
144
  * {
146
- * "Key": "HappyFace.jpg",
147
- * "VersionId": "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd"
145
+ * "Key": "objectkey2"
148
146
  * }
149
147
  * ],
150
148
  * "Quiet": false
@@ -156,31 +154,35 @@ export interface DeleteObjectsCommandOutput extends DeleteObjectsOutput, __Metad
156
154
  * {
157
155
  * "Deleted": [
158
156
  * {
159
- * "Key": "HappyFace.jpg",
160
- * "VersionId": "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd"
157
+ * "DeleteMarker": "true",
158
+ * "DeleteMarkerVersionId": "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F",
159
+ * "Key": "objectkey1"
161
160
  * },
162
161
  * {
163
- * "Key": "HappyFace.jpg",
164
- * "VersionId": "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b"
162
+ * "DeleteMarker": "true",
163
+ * "DeleteMarkerVersionId": "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt",
164
+ * "Key": "objectkey2"
165
165
  * }
166
166
  * ]
167
167
  * }
168
168
  * *\/
169
- * // example id: to-delete-multiple-object-versions-from-a-versioned-bucket-1483147087737
169
+ * // example id: to-delete-multiple-objects-from-a-versioned-bucket-1483146248805
170
170
  * ```
171
171
  *
172
- * @example To delete multiple objects from a versioned bucket
172
+ * @example To delete multiple object versions from a versioned bucket
173
173
  * ```javascript
174
- * // The following example deletes objects from a bucket. The bucket is versioned, and the request does not specify the object version to delete. In this case, all versions remain in the bucket and S3 adds a delete marker.
174
+ * // The following example deletes objects from a bucket. The request specifies object versions. S3 deletes specific object versions and returns the key and versions of deleted objects in the response.
175
175
  * const input = {
176
176
  * "Bucket": "examplebucket",
177
177
  * "Delete": {
178
178
  * "Objects": [
179
179
  * {
180
- * "Key": "objectkey1"
180
+ * "Key": "HappyFace.jpg",
181
+ * "VersionId": "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b"
181
182
  * },
182
183
  * {
183
- * "Key": "objectkey2"
184
+ * "Key": "HappyFace.jpg",
185
+ * "VersionId": "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd"
184
186
  * }
185
187
  * ],
186
188
  * "Quiet": false
@@ -192,19 +194,17 @@ export interface DeleteObjectsCommandOutput extends DeleteObjectsOutput, __Metad
192
194
  * {
193
195
  * "Deleted": [
194
196
  * {
195
- * "DeleteMarker": "true",
196
- * "DeleteMarkerVersionId": "A._w1z6EFiCF5uhtQMDal9JDkID9tQ7F",
197
- * "Key": "objectkey1"
197
+ * "Key": "HappyFace.jpg",
198
+ * "VersionId": "yoz3HB.ZhCS_tKVEmIOr7qYyyAaZSKVd"
198
199
  * },
199
200
  * {
200
- * "DeleteMarker": "true",
201
- * "DeleteMarkerVersionId": "iOd_ORxhkKe_e8G8_oSGxt2PjsCZKlkt",
202
- * "Key": "objectkey2"
201
+ * "Key": "HappyFace.jpg",
202
+ * "VersionId": "2LWg7lQLnY41.maGB5Z6SWW.dcq0vx7b"
203
203
  * }
204
204
  * ]
205
205
  * }
206
206
  * *\/
207
- * // example id: to-delete-multiple-objects-from-a-versioned-bucket-1483146248805
207
+ * // example id: to-delete-multiple-object-versions-from-a-versioned-bucket-1483147087737
208
208
  * ```
209
209
  *
210
210
  */
@@ -66,6 +66,12 @@ export interface GetBucketLoggingCommandOutput extends GetBucketLoggingOutput, _
66
66
  * // },
67
67
  * // ],
68
68
  * // TargetPrefix: "STRING_VALUE", // required
69
+ * // TargetObjectKeyFormat: { // TargetObjectKeyFormat
70
+ * // SimplePrefix: {},
71
+ * // PartitionedPrefix: { // PartitionedPrefix
72
+ * // PartitionDateSource: "EventTime" || "DeliveryTime",
73
+ * // },
74
+ * // },
69
75
  * // },
70
76
  * // };
71
77
  *
@@ -100,7 +100,7 @@ export interface GetObjectCommandOutput extends Omit<GetObjectOutput, "Body">, _
100
100
  * <note>
101
101
  * <ul>
102
102
  * <li>
103
- * <p> If you supply a <code>versionId</code>, you need the
103
+ * <p>If you supply a <code>versionId</code>, you need the
104
104
  * <code>s3:GetObjectVersion</code> permission to access a specific
105
105
  * version of an object. If you request a specific version, you do not need
106
106
  * to have the <code>s3:GetObject</code> permission. If you request the
@@ -109,9 +109,10 @@ export interface GetObjectCommandOutput extends Omit<GetObjectOutput, "Body">, _
109
109
  * <code>s3:GetObjectVersion</code> permission won't be required.</p>
110
110
  * </li>
111
111
  * <li>
112
- * <p>If the current version of the object is a delete marker, Amazon S3 behaves
113
- * as if the object was deleted and includes <code>x-amz-delete-marker:
114
- * true</code> in the response.</p>
112
+ * <p>If the current version of the object is a delete marker, Amazon S3 behaves as if the object was deleted and includes <code>x-amz-delete-marker: true</code> in the response.</p>
113
+ * </li>
114
+ * <li>
115
+ * <p>If the specified version is a delete marker, the response returns a 405 (Method Not Allowed) error and the <code>Last-Modified: timestamp</code> response header.</p>
115
116
  * </li>
116
117
  * </ul>
117
118
  * </note>
@@ -29,9 +29,9 @@ export interface HeadObjectCommandOutput extends HeadObjectOutput, __MetadataBea
29
29
  * <p>A <code>HEAD</code> request has the same options as a <code>GET</code> action on an
30
30
  * object. The response is identical to the <code>GET</code> response except that there is no
31
31
  * response body. Because of this, if the <code>HEAD</code> request generates an error, it
32
- * returns a generic <code>400 Bad Request</code>, <code>403 Forbidden</code> or <code>404 Not
33
- * Found</code> code. It is not possible to retrieve the exact exception beyond these error
34
- * codes.</p>
32
+ * returns a generic code, such as <code>400 Bad Request</code>, <code>403 Forbidden</code>, <code>404 Not
33
+ * Found</code>, <code>405 Method Not Allowed</code>, <code>412 Precondition Failed</code>, or <code>304 Not Modified</code>.
34
+ * It's not possible to retrieve the exact exception of these error codes.</p>
35
35
  * <p>If you encrypt an object by using server-side encryption with customer-provided
36
36
  * encryption keys (SSE-C) when you store the object in Amazon S3, then when you retrieve the
37
37
  * metadata from the object, you must use the following headers:</p>
@@ -129,6 +129,17 @@ export interface HeadObjectCommandOutput extends HeadObjectOutput, __MetadataBea
129
129
  * </li>
130
130
  * </ul>
131
131
  * </dd>
132
+ * <dt>Versioning</dt>
133
+ * <dd>
134
+ * <ul>
135
+ * <li>
136
+ * <p>If the current version of the object is a delete marker, Amazon S3 behaves as if the object was deleted and includes <code>x-amz-delete-marker: true</code> in the response.</p>
137
+ * </li>
138
+ * <li>
139
+ * <p>If the specified version is a delete marker, the response returns a 405 (Method Not Allowed) error and the <code>Last-Modified: timestamp</code> response header.</p>
140
+ * </li>
141
+ * </ul>
142
+ * </dd>
132
143
  * </dl>
133
144
  * <p>The following actions are related to <code>HeadObject</code>:</p>
134
145
  * <ul>
@@ -36,7 +36,6 @@ export interface ListObjectVersionsCommandOutput extends ListObjectVersionsOutpu
36
36
  * appropriately.</p>
37
37
  * </note>
38
38
  * <p>To use this operation, you must have READ access to the bucket.</p>
39
- * <p>This action is not supported by Amazon S3 on Outposts.</p>
40
39
  * <p>The following operations are related to <code>ListObjectVersions</code>:</p>
41
40
  * <ul>
42
41
  * <li>
@@ -132,6 +132,12 @@ export interface PutBucketLoggingCommandOutput extends __MetadataBearer {
132
132
  * },
133
133
  * ],
134
134
  * TargetPrefix: "STRING_VALUE", // required
135
+ * TargetObjectKeyFormat: { // TargetObjectKeyFormat
136
+ * SimplePrefix: {},
137
+ * PartitionedPrefix: { // PartitionedPrefix
138
+ * PartitionDateSource: "EventTime" || "DeliveryTime",
139
+ * },
140
+ * },
135
141
  * },
136
142
  * },
137
143
  * ContentMD5: "STRING_VALUE",
@@ -1,7 +1,7 @@
1
1
  import { EndpointParameterInstructions } from "@smithy/middleware-endpoint";
2
2
  import { Command as $Command } from "@smithy/smithy-client";
3
3
  import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@smithy/types";
4
- import { PutObjectAclOutput, PutObjectAclRequest } from "../models/models_0";
4
+ import { PutObjectAclOutput, PutObjectAclRequest } from "../models/models_1";
5
5
  import { S3ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../S3Client";
6
6
  /**
7
7
  * @public
@@ -192,45 +192,27 @@ export interface PutObjectCommandOutput extends PutObjectOutput, __MetadataBeare
192
192
  * @throws {@link S3ServiceException}
193
193
  * <p>Base exception class for all service exceptions from S3 service.</p>
194
194
  *
195
- * @example To upload an object and specify server-side encryption and object tags
195
+ * @example To upload object and specify user-defined metadata
196
196
  * ```javascript
197
- * // The following example uploads an object. The request specifies the optional server-side encryption option. The request also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.
197
+ * // The following example creates an object. The request also specifies optional metadata. If the bucket is versioning enabled, S3 returns version ID in response.
198
198
  * const input = {
199
199
  * "Body": "filetoupload",
200
200
  * "Bucket": "examplebucket",
201
201
  * "Key": "exampleobject",
202
- * "ServerSideEncryption": "AES256",
203
- * "Tagging": "key1=value1&key2=value2"
204
- * };
205
- * const command = new PutObjectCommand(input);
206
- * const response = await client.send(command);
207
- * /* response ==
208
- * {
209
- * "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"",
210
- * "ServerSideEncryption": "AES256",
211
- * "VersionId": "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt"
212
- * }
213
- * *\/
214
- * // example id: to-upload-an-object-and-specify-server-side-encryption-and-object-tags-1483398331831
215
- * ```
216
- *
217
- * @example To create an object.
218
- * ```javascript
219
- * // The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.
220
- * const input = {
221
- * "Body": "filetoupload",
222
- * "Bucket": "examplebucket",
223
- * "Key": "objectkey"
202
+ * "Metadata": {
203
+ * "metadata1": "value1",
204
+ * "metadata2": "value2"
205
+ * }
224
206
  * };
225
207
  * const command = new PutObjectCommand(input);
226
208
  * const response = await client.send(command);
227
209
  * /* response ==
228
210
  * {
229
211
  * "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"",
230
- * "VersionId": "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ"
212
+ * "VersionId": "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0"
231
213
  * }
232
214
  * *\/
233
- * // example id: to-create-an-object-1483147613675
215
+ * // example id: to-upload-object-and-specify-user-defined-metadata-1483396974757
234
216
  * ```
235
217
  *
236
218
  * @example To upload an object (specify optional headers)
@@ -275,27 +257,42 @@ export interface PutObjectCommandOutput extends PutObjectOutput, __MetadataBeare
275
257
  * // example id: to-upload-an-object-and-specify-optional-tags-1481762310955
276
258
  * ```
277
259
  *
278
- * @example To upload object and specify user-defined metadata
260
+ * @example To create an object.
279
261
  * ```javascript
280
- * // The following example creates an object. The request also specifies optional metadata. If the bucket is versioning enabled, S3 returns version ID in response.
262
+ * // The following example creates an object. If the bucket is versioning enabled, S3 returns version ID in response.
281
263
  * const input = {
282
264
  * "Body": "filetoupload",
283
265
  * "Bucket": "examplebucket",
284
- * "Key": "exampleobject",
285
- * "Metadata": {
286
- * "metadata1": "value1",
287
- * "metadata2": "value2"
288
- * }
266
+ * "Key": "objectkey"
289
267
  * };
290
268
  * const command = new PutObjectCommand(input);
291
269
  * const response = await client.send(command);
292
270
  * /* response ==
293
271
  * {
294
272
  * "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"",
295
- * "VersionId": "pSKidl4pHBiNwukdbcPXAIs.sshFFOc0"
273
+ * "VersionId": "Bvq0EDKxOcXLJXNo_Lkz37eM3R4pfzyQ"
296
274
  * }
297
275
  * *\/
298
- * // example id: to-upload-object-and-specify-user-defined-metadata-1483396974757
276
+ * // example id: to-create-an-object-1483147613675
277
+ * ```
278
+ *
279
+ * @example To upload an object
280
+ * ```javascript
281
+ * // The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file syntax. S3 returns VersionId of the newly created object.
282
+ * const input = {
283
+ * "Body": "HappyFace.jpg",
284
+ * "Bucket": "examplebucket",
285
+ * "Key": "HappyFace.jpg"
286
+ * };
287
+ * const command = new PutObjectCommand(input);
288
+ * const response = await client.send(command);
289
+ * /* response ==
290
+ * {
291
+ * "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"",
292
+ * "VersionId": "tpf3zF08nBplQK1XLOefGskR7mGDwcDk"
293
+ * }
294
+ * *\/
295
+ * // example id: to-upload-an-object-1481760101010
299
296
  * ```
300
297
  *
301
298
  * @example To upload an object and specify canned ACL.
@@ -318,23 +315,26 @@ export interface PutObjectCommandOutput extends PutObjectOutput, __MetadataBeare
318
315
  * // example id: to-upload-an-object-and-specify-canned-acl-1483397779571
319
316
  * ```
320
317
  *
321
- * @example To upload an object
318
+ * @example To upload an object and specify server-side encryption and object tags
322
319
  * ```javascript
323
- * // The following example uploads an object to a versioning-enabled bucket. The source file is specified using Windows file syntax. S3 returns VersionId of the newly created object.
320
+ * // The following example uploads an object. The request specifies the optional server-side encryption option. The request also specifies optional object tags. If the bucket is versioning enabled, S3 returns version ID in response.
324
321
  * const input = {
325
- * "Body": "HappyFace.jpg",
322
+ * "Body": "filetoupload",
326
323
  * "Bucket": "examplebucket",
327
- * "Key": "HappyFace.jpg"
324
+ * "Key": "exampleobject",
325
+ * "ServerSideEncryption": "AES256",
326
+ * "Tagging": "key1=value1&key2=value2"
328
327
  * };
329
328
  * const command = new PutObjectCommand(input);
330
329
  * const response = await client.send(command);
331
330
  * /* response ==
332
331
  * {
333
332
  * "ETag": "\"6805f2cfc46c0f04559748bb039d69ae\"",
334
- * "VersionId": "tpf3zF08nBplQK1XLOefGskR7mGDwcDk"
333
+ * "ServerSideEncryption": "AES256",
334
+ * "VersionId": "Ri.vC6qVlA4dEnjgRV4ZHsHoFIjqEMNt"
335
335
  * }
336
336
  * *\/
337
- * // example id: to-upload-an-object-1481760101010
337
+ * // example id: to-upload-an-object-and-specify-server-side-encryption-and-object-tags-1483398331831
338
338
  * ```
339
339
  *
340
340
  */
@@ -1,7 +1,7 @@
1
1
  import { EndpointParameterInstructions } from "@smithy/middleware-endpoint";
2
2
  import { Command as $Command } from "@smithy/smithy-client";
3
3
  import { Handler, HttpHandlerOptions as __HttpHandlerOptions, MetadataBearer as __MetadataBearer, MiddlewareStack } from "@smithy/types";
4
- import { PutObjectLegalHoldOutput, PutObjectLegalHoldRequest } from "../models/models_0";
4
+ import { PutObjectLegalHoldOutput, PutObjectLegalHoldRequest } from "../models/models_1";
5
5
  import { S3ClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../S3Client";
6
6
  /**
7
7
  * @public
@@ -38,8 +38,9 @@ export interface PutObjectLockConfigurationCommandOutput extends PutObjectLockCo
38
38
  * <code>Days</code> and <code>Years</code> at the same time.</p>
39
39
  * </li>
40
40
  * <li>
41
- * <p>You can only enable Object Lock for new buckets. If you want to turn on Object
42
- * Lock for an existing bucket, contact Amazon Web Services Support.</p>
41
+ * <p>You can enable Object Lock for new or existing buckets. For more
42
+ * information, see <a href="https://docs.aws.amazon.com/AmazonS3/latest/userguide/object-lock-configure.html">Configuring Object
43
+ * Lock</a>.</p>
43
44
  * </li>
44
45
  * </ul>
45
46
  * </note>
@@ -29,6 +29,8 @@ export interface EndpointParameters extends __EndpointParameters {
29
29
  Accelerate?: boolean;
30
30
  UseGlobalEndpoint?: boolean;
31
31
  UseObjectLambdaEndpoint?: boolean;
32
+ Key?: string;
33
+ Prefix?: string;
32
34
  DisableAccessPoints?: boolean;
33
35
  DisableMultiRegionAccessPoints?: boolean;
34
36
  UseArnRegion?: boolean;