@pulumi/aws 4.28.0-alpha.1637005539 → 4.29.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 (94) hide show
  1. package/alb/targetGroupAttachment.d.ts +3 -3
  2. package/applicationloadbalancing/targetGroupAttachment.d.ts +3 -3
  3. package/appstream/directoryConfig.d.ts +108 -0
  4. package/appstream/directoryConfig.js +93 -0
  5. package/appstream/directoryConfig.js.map +1 -0
  6. package/appstream/index.d.ts +1 -0
  7. package/appstream/index.js +5 -0
  8. package/appstream/index.js.map +1 -1
  9. package/autoscaling/group.d.ts +3 -3
  10. package/cloudfront/responseHeadersPolicy.d.ts +28 -4
  11. package/cloudfront/responseHeadersPolicy.js +25 -1
  12. package/cloudfront/responseHeadersPolicy.js.map +1 -1
  13. package/ec2/getInstanceType.d.ts +4 -0
  14. package/ec2/getInstanceType.js.map +1 -1
  15. package/elasticloadbalancingv2/targetGroupAttachment.d.ts +3 -3
  16. package/emr/cluster.d.ts +12 -0
  17. package/emr/cluster.js +2 -0
  18. package/emr/cluster.js.map +1 -1
  19. package/emr/getReleaseLabels.d.ts +53 -0
  20. package/emr/getReleaseLabels.js +42 -0
  21. package/emr/getReleaseLabels.js.map +1 -0
  22. package/emr/index.d.ts +1 -0
  23. package/emr/index.js +1 -0
  24. package/emr/index.js.map +1 -1
  25. package/iot/index.d.ts +2 -0
  26. package/iot/index.js +10 -0
  27. package/iot/index.js.map +1 -1
  28. package/iot/thingGroup.d.ts +153 -0
  29. package/iot/thingGroup.js +100 -0
  30. package/iot/thingGroup.js.map +1 -0
  31. package/iot/thingGroupMembership.d.ts +96 -0
  32. package/iot/thingGroupMembership.js +85 -0
  33. package/iot/thingGroupMembership.js.map +1 -0
  34. package/iot/thingType.d.ts +36 -0
  35. package/iot/thingType.js +4 -0
  36. package/iot/thingType.js.map +1 -1
  37. package/lambda/index.d.ts +1 -0
  38. package/lambda/index.js +5 -0
  39. package/lambda/index.js.map +1 -1
  40. package/lambda/layerVersion.d.ts +41 -83
  41. package/lambda/layerVersion.js +2 -45
  42. package/lambda/layerVersion.js.map +1 -1
  43. package/lambda/layerVersionPermission.d.ts +154 -0
  44. package/lambda/layerVersionPermission.js +110 -0
  45. package/lambda/layerVersionPermission.js.map +1 -0
  46. package/lb/targetGroupAttachment.d.ts +3 -3
  47. package/package.json +2 -2
  48. package/package.json.dev +1 -1
  49. package/quicksight/user.d.ts +1 -1
  50. package/quicksight/user.js +1 -1
  51. package/s3/accessPoint.d.ts +20 -28
  52. package/s3/accessPoint.js +4 -28
  53. package/s3/accessPoint.js.map +1 -1
  54. package/s3/bucket.d.ts +2 -0
  55. package/s3/bucket.js +2 -0
  56. package/s3/bucket.js.map +1 -1
  57. package/s3/bucketReplicationConfig.d.ts +190 -0
  58. package/s3/bucketReplicationConfig.js +181 -0
  59. package/s3/bucketReplicationConfig.js.map +1 -0
  60. package/s3/index.d.ts +1 -0
  61. package/s3/index.js +5 -0
  62. package/s3/index.js.map +1 -1
  63. package/s3control/accessPointPolicy.d.ts +77 -0
  64. package/s3control/accessPointPolicy.js +70 -0
  65. package/s3control/accessPointPolicy.js.map +1 -0
  66. package/s3control/index.d.ts +5 -0
  67. package/s3control/index.js +25 -0
  68. package/s3control/index.js.map +1 -1
  69. package/s3control/multiRegionAccessPoint.d.ts +123 -0
  70. package/s3control/multiRegionAccessPoint.js +103 -0
  71. package/s3control/multiRegionAccessPoint.js.map +1 -0
  72. package/s3control/multiRegionAccessPointPolicy.d.ts +115 -0
  73. package/s3control/multiRegionAccessPointPolicy.js +107 -0
  74. package/s3control/multiRegionAccessPointPolicy.js.map +1 -0
  75. package/s3control/objectLambdaAccessPoint.d.ts +105 -0
  76. package/s3control/objectLambdaAccessPoint.js +93 -0
  77. package/s3control/objectLambdaAccessPoint.js.map +1 -0
  78. package/s3control/objectLambdaAccessPointPolicy.d.ts +114 -0
  79. package/s3control/objectLambdaAccessPointPolicy.js +103 -0
  80. package/s3control/objectLambdaAccessPointPolicy.js.map +1 -0
  81. package/sagemaker/endpoint.d.ts +19 -6
  82. package/sagemaker/endpoint.js +2 -0
  83. package/sagemaker/endpoint.js.map +1 -1
  84. package/securityhub/findingAggregator.d.ts +124 -0
  85. package/securityhub/findingAggregator.js +120 -0
  86. package/securityhub/findingAggregator.js.map +1 -0
  87. package/securityhub/index.d.ts +1 -0
  88. package/securityhub/index.js +5 -0
  89. package/securityhub/index.js.map +1 -1
  90. package/types/enums/iam/index.d.ts +1 -0
  91. package/types/enums/iam/index.js +1 -0
  92. package/types/enums/iam/index.js.map +1 -1
  93. package/types/input.d.ts +463 -29
  94. package/types/output.d.ts +455 -28
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../s3control/index.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;;;;;;;;;;AAEjF,yCAAyC;AACzC,0CAA0C;AAE1C,kBAAkB;AAClB,2CAAyB;AACzB,iEAA+C;AAC/C,iDAA+B;AAE/B,gCAAgC;AAChC,qCAAkC;AAClC,iFAA8E;AAC9E,iDAA8C;AAE9C,MAAM,OAAO,GAAG;IACZ,OAAO,EAAE,SAAS,CAAC,UAAU,EAAE;IAC/B,SAAS,EAAE,CAAC,IAAY,EAAE,IAAY,EAAE,GAAW,EAAmB,EAAE;QACpE,QAAQ,IAAI,EAAE;YACV,KAAK,6BAA6B;gBAC9B,OAAO,IAAI,eAAM,CAAC,IAAI,EAAO,SAAS,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;YACpD,KAAK,yEAAyE;gBAC1E,OAAO,IAAI,2DAA4B,CAAC,IAAI,EAAO,SAAS,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;YAC1E,KAAK,yCAAyC;gBAC1C,OAAO,IAAI,2BAAY,CAAC,IAAI,EAAO,SAAS,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;YAC1D;gBACI,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;SACxD;IACL,CAAC;CACJ,CAAC;AACF,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,KAAK,EAAE,kBAAkB,EAAE,OAAO,CAAC,CAAA;AACzE,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,KAAK,EAAE,wCAAwC,EAAE,OAAO,CAAC,CAAA;AAC/F,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,KAAK,EAAE,wBAAwB,EAAE,OAAO,CAAC,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../s3control/index.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;;;;;;;;;;AAEjF,yCAAyC;AACzC,0CAA0C;AAE1C,kBAAkB;AAClB,sDAAoC;AACpC,2CAAyB;AACzB,iEAA+C;AAC/C,iDAA+B;AAC/B,2DAAyC;AACzC,iEAA+C;AAC/C,4DAA0C;AAC1C,kEAAgD;AAEhD,gCAAgC;AAChC,2DAAwD;AACxD,qCAAkC;AAClC,iFAA8E;AAC9E,iDAA8C;AAC9C,qEAAkE;AAClE,iFAA8E;AAC9E,uEAAoE;AACpE,mFAAgF;AAEhF,MAAM,OAAO,GAAG;IACZ,OAAO,EAAE,SAAS,CAAC,UAAU,EAAE;IAC/B,SAAS,EAAE,CAAC,IAAY,EAAE,IAAY,EAAE,GAAW,EAAmB,EAAE;QACpE,QAAQ,IAAI,EAAE;YACV,KAAK,mDAAmD;gBACpD,OAAO,IAAI,qCAAiB,CAAC,IAAI,EAAO,SAAS,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;YAC/D,KAAK,6BAA6B;gBAC9B,OAAO,IAAI,eAAM,CAAC,IAAI,EAAO,SAAS,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;YACpD,KAAK,yEAAyE;gBAC1E,OAAO,IAAI,2DAA4B,CAAC,IAAI,EAAO,SAAS,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;YAC1E,KAAK,yCAAyC;gBAC1C,OAAO,IAAI,2BAAY,CAAC,IAAI,EAAO,SAAS,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;YAC1D,KAAK,6DAA6D;gBAC9D,OAAO,IAAI,+CAAsB,CAAC,IAAI,EAAO,SAAS,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;YACpE,KAAK,yEAAyE;gBAC1E,OAAO,IAAI,2DAA4B,CAAC,IAAI,EAAO,SAAS,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;YAC1E,KAAK,+DAA+D;gBAChE,OAAO,IAAI,iDAAuB,CAAC,IAAI,EAAO,SAAS,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;YACrE,KAAK,2EAA2E;gBAC5E,OAAO,IAAI,6DAA6B,CAAC,IAAI,EAAO,SAAS,EAAE,EAAE,GAAG,EAAE,CAAC,CAAA;YAC3E;gBACI,MAAM,IAAI,KAAK,CAAC,yBAAyB,IAAI,EAAE,CAAC,CAAC;SACxD;IACL,CAAC;CACJ,CAAC;AACF,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,KAAK,EAAE,6BAA6B,EAAE,OAAO,CAAC,CAAA;AACpF,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,KAAK,EAAE,kBAAkB,EAAE,OAAO,CAAC,CAAA;AACzE,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,KAAK,EAAE,wCAAwC,EAAE,OAAO,CAAC,CAAA;AAC/F,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,KAAK,EAAE,wBAAwB,EAAE,OAAO,CAAC,CAAA;AAC/E,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,KAAK,EAAE,kCAAkC,EAAE,OAAO,CAAC,CAAA;AACzF,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,KAAK,EAAE,wCAAwC,EAAE,OAAO,CAAC,CAAA;AAC/F,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,KAAK,EAAE,mCAAmC,EAAE,OAAO,CAAC,CAAA;AAC1F,MAAM,CAAC,OAAO,CAAC,sBAAsB,CAAC,KAAK,EAAE,yCAAyC,EAAE,OAAO,CAAC,CAAA"}
@@ -0,0 +1,123 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ import { input as inputs, output as outputs } from "../types";
3
+ /**
4
+ * Provides a resource to manage an S3 Multi-Region Access Point associated with specified buckets.
5
+ *
6
+ * ## Example Usage
7
+ * ### Multiple AWS Buckets in Different Regions
8
+ *
9
+ * ```typescript
10
+ * import * as pulumi from "@pulumi/pulumi";
11
+ * import * as aws from "@pulumi/aws";
12
+ *
13
+ * const primaryRegion = new aws.Provider("primaryRegion", {region: "us-east-1"});
14
+ * const secondaryRegion = new aws.Provider("secondaryRegion", {region: "us-west-2"});
15
+ * const fooBucket = new aws.s3.Bucket("fooBucket", {}, {
16
+ * provider: aws.primary_region,
17
+ * });
18
+ * const barBucket = new aws.s3.Bucket("barBucket", {}, {
19
+ * provider: aws.secondary_region,
20
+ * });
21
+ * const example = new aws.s3control.MultiRegionAccessPoint("example", {details: {
22
+ * name: "example",
23
+ * regions: [
24
+ * {
25
+ * bucket: fooBucket.id,
26
+ * },
27
+ * {
28
+ * bucket: barBucket.id,
29
+ * },
30
+ * ],
31
+ * }});
32
+ * ```
33
+ *
34
+ * ## Import
35
+ *
36
+ * Multi-Region Access Points can be imported using the `account_id` and `name` of the Multi-Region Access Point separated by a colon (`:`), e.g.
37
+ *
38
+ * ```sh
39
+ * $ pulumi import aws:s3control/multiRegionAccessPoint:MultiRegionAccessPoint example 123456789012:example
40
+ * ```
41
+ */
42
+ export declare class MultiRegionAccessPoint extends pulumi.CustomResource {
43
+ /**
44
+ * Get an existing MultiRegionAccessPoint resource's state with the given name, ID, and optional extra
45
+ * properties used to qualify the lookup.
46
+ *
47
+ * @param name The _unique_ name of the resulting resource.
48
+ * @param id The _unique_ provider ID of the resource to lookup.
49
+ * @param state Any extra arguments used during the lookup.
50
+ * @param opts Optional settings to control the behavior of the CustomResource.
51
+ */
52
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: MultiRegionAccessPointState, opts?: pulumi.CustomResourceOptions): MultiRegionAccessPoint;
53
+ /**
54
+ * Returns true if the given object is an instance of MultiRegionAccessPoint. This is designed to work even
55
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
56
+ */
57
+ static isInstance(obj: any): obj is MultiRegionAccessPoint;
58
+ readonly accountId: pulumi.Output<string>;
59
+ /**
60
+ * The alias for the Multi-Region Access Point.
61
+ */
62
+ readonly alias: pulumi.Output<string>;
63
+ /**
64
+ * Amazon Resource Name (ARN) of the Multi-Region Access Point.
65
+ */
66
+ readonly arn: pulumi.Output<string>;
67
+ /**
68
+ * A configuration block containing details about the Multi-Region Access Point. See Details Configuration Block below for more details
69
+ */
70
+ readonly details: pulumi.Output<outputs.s3control.MultiRegionAccessPointDetails>;
71
+ /**
72
+ * The DNS domain name of the S3 Multi-Region Access Point in the format _`alias`_.accesspoint.s3-global.amazonaws.com. For more information, see the documentation on [Multi-Region Access Point Requests](https://docs.aws.amazon.com/AmazonS3/latest/userguide/MultiRegionAccessPointRequests.html).
73
+ */
74
+ readonly domainName: pulumi.Output<string>;
75
+ /**
76
+ * The current status of the Multi-Region Access Point. One of: `READY`, `INCONSISTENT_ACROSS_REGIONS`, `CREATING`, `PARTIALLY_CREATED`, `PARTIALLY_DELETED`, `DELETING`.
77
+ */
78
+ readonly status: pulumi.Output<string>;
79
+ /**
80
+ * Create a MultiRegionAccessPoint resource with the given unique name, arguments, and options.
81
+ *
82
+ * @param name The _unique_ name of the resource.
83
+ * @param args The arguments to use to populate this resource's properties.
84
+ * @param opts A bag of options that control this resource's behavior.
85
+ */
86
+ constructor(name: string, args: MultiRegionAccessPointArgs, opts?: pulumi.CustomResourceOptions);
87
+ }
88
+ /**
89
+ * Input properties used for looking up and filtering MultiRegionAccessPoint resources.
90
+ */
91
+ export interface MultiRegionAccessPointState {
92
+ accountId?: pulumi.Input<string>;
93
+ /**
94
+ * The alias for the Multi-Region Access Point.
95
+ */
96
+ alias?: pulumi.Input<string>;
97
+ /**
98
+ * Amazon Resource Name (ARN) of the Multi-Region Access Point.
99
+ */
100
+ arn?: pulumi.Input<string>;
101
+ /**
102
+ * A configuration block containing details about the Multi-Region Access Point. See Details Configuration Block below for more details
103
+ */
104
+ details?: pulumi.Input<inputs.s3control.MultiRegionAccessPointDetails>;
105
+ /**
106
+ * The DNS domain name of the S3 Multi-Region Access Point in the format _`alias`_.accesspoint.s3-global.amazonaws.com. For more information, see the documentation on [Multi-Region Access Point Requests](https://docs.aws.amazon.com/AmazonS3/latest/userguide/MultiRegionAccessPointRequests.html).
107
+ */
108
+ domainName?: pulumi.Input<string>;
109
+ /**
110
+ * The current status of the Multi-Region Access Point. One of: `READY`, `INCONSISTENT_ACROSS_REGIONS`, `CREATING`, `PARTIALLY_CREATED`, `PARTIALLY_DELETED`, `DELETING`.
111
+ */
112
+ status?: pulumi.Input<string>;
113
+ }
114
+ /**
115
+ * The set of arguments for constructing a MultiRegionAccessPoint resource.
116
+ */
117
+ export interface MultiRegionAccessPointArgs {
118
+ accountId?: pulumi.Input<string>;
119
+ /**
120
+ * A configuration block containing details about the Multi-Region Access Point. See Details Configuration Block below for more details
121
+ */
122
+ details: pulumi.Input<inputs.s3control.MultiRegionAccessPointDetails>;
123
+ }
@@ -0,0 +1,103 @@
1
+ "use strict";
2
+ // *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ // *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.MultiRegionAccessPoint = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("../utilities");
8
+ /**
9
+ * Provides a resource to manage an S3 Multi-Region Access Point associated with specified buckets.
10
+ *
11
+ * ## Example Usage
12
+ * ### Multiple AWS Buckets in Different Regions
13
+ *
14
+ * ```typescript
15
+ * import * as pulumi from "@pulumi/pulumi";
16
+ * import * as aws from "@pulumi/aws";
17
+ *
18
+ * const primaryRegion = new aws.Provider("primaryRegion", {region: "us-east-1"});
19
+ * const secondaryRegion = new aws.Provider("secondaryRegion", {region: "us-west-2"});
20
+ * const fooBucket = new aws.s3.Bucket("fooBucket", {}, {
21
+ * provider: aws.primary_region,
22
+ * });
23
+ * const barBucket = new aws.s3.Bucket("barBucket", {}, {
24
+ * provider: aws.secondary_region,
25
+ * });
26
+ * const example = new aws.s3control.MultiRegionAccessPoint("example", {details: {
27
+ * name: "example",
28
+ * regions: [
29
+ * {
30
+ * bucket: fooBucket.id,
31
+ * },
32
+ * {
33
+ * bucket: barBucket.id,
34
+ * },
35
+ * ],
36
+ * }});
37
+ * ```
38
+ *
39
+ * ## Import
40
+ *
41
+ * Multi-Region Access Points can be imported using the `account_id` and `name` of the Multi-Region Access Point separated by a colon (`:`), e.g.
42
+ *
43
+ * ```sh
44
+ * $ pulumi import aws:s3control/multiRegionAccessPoint:MultiRegionAccessPoint example 123456789012:example
45
+ * ```
46
+ */
47
+ class MultiRegionAccessPoint extends pulumi.CustomResource {
48
+ constructor(name, argsOrState, opts) {
49
+ let inputs = {};
50
+ opts = opts || {};
51
+ if (opts.id) {
52
+ const state = argsOrState;
53
+ inputs["accountId"] = state ? state.accountId : undefined;
54
+ inputs["alias"] = state ? state.alias : undefined;
55
+ inputs["arn"] = state ? state.arn : undefined;
56
+ inputs["details"] = state ? state.details : undefined;
57
+ inputs["domainName"] = state ? state.domainName : undefined;
58
+ inputs["status"] = state ? state.status : undefined;
59
+ }
60
+ else {
61
+ const args = argsOrState;
62
+ if ((!args || args.details === undefined) && !opts.urn) {
63
+ throw new Error("Missing required property 'details'");
64
+ }
65
+ inputs["accountId"] = args ? args.accountId : undefined;
66
+ inputs["details"] = args ? args.details : undefined;
67
+ inputs["alias"] = undefined /*out*/;
68
+ inputs["arn"] = undefined /*out*/;
69
+ inputs["domainName"] = undefined /*out*/;
70
+ inputs["status"] = undefined /*out*/;
71
+ }
72
+ if (!opts.version) {
73
+ opts = pulumi.mergeOptions(opts, { version: utilities.getVersion() });
74
+ }
75
+ super(MultiRegionAccessPoint.__pulumiType, name, inputs, opts);
76
+ }
77
+ /**
78
+ * Get an existing MultiRegionAccessPoint resource's state with the given name, ID, and optional extra
79
+ * properties used to qualify the lookup.
80
+ *
81
+ * @param name The _unique_ name of the resulting resource.
82
+ * @param id The _unique_ provider ID of the resource to lookup.
83
+ * @param state Any extra arguments used during the lookup.
84
+ * @param opts Optional settings to control the behavior of the CustomResource.
85
+ */
86
+ static get(name, id, state, opts) {
87
+ return new MultiRegionAccessPoint(name, state, Object.assign(Object.assign({}, opts), { id: id }));
88
+ }
89
+ /**
90
+ * Returns true if the given object is an instance of MultiRegionAccessPoint. This is designed to work even
91
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
92
+ */
93
+ static isInstance(obj) {
94
+ if (obj === undefined || obj === null) {
95
+ return false;
96
+ }
97
+ return obj['__pulumiType'] === MultiRegionAccessPoint.__pulumiType;
98
+ }
99
+ }
100
+ exports.MultiRegionAccessPoint = MultiRegionAccessPoint;
101
+ /** @internal */
102
+ MultiRegionAccessPoint.__pulumiType = 'aws:s3control/multiRegionAccessPoint:MultiRegionAccessPoint';
103
+ //# sourceMappingURL=multiRegionAccessPoint.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multiRegionAccessPoint.js","sourceRoot":"","sources":["../../s3control/multiRegionAccessPoint.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,115 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ import { input as inputs, output as outputs } from "../types";
3
+ /**
4
+ * Provides a resource to manage an S3 Multi-Region Access Point access control policy.
5
+ *
6
+ * ## Example Usage
7
+ * ### Basic Example
8
+ *
9
+ * ```typescript
10
+ * import * as pulumi from "@pulumi/pulumi";
11
+ * import * as aws from "@pulumi/aws";
12
+ *
13
+ * const currentCallerIdentity = aws.getCallerIdentity({});
14
+ * const currentPartition = aws.getPartition({});
15
+ * const fooBucket = new aws.s3.Bucket("fooBucket", {});
16
+ * const exampleMultiRegionAccessPoint = new aws.s3control.MultiRegionAccessPoint("exampleMultiRegionAccessPoint", {details: {
17
+ * name: "example",
18
+ * regions: [{
19
+ * bucket: fooBucket.id,
20
+ * }],
21
+ * }});
22
+ * const exampleMultiRegionAccessPointPolicy = new aws.s3control.MultiRegionAccessPointPolicy("exampleMultiRegionAccessPointPolicy", {details: {
23
+ * name: exampleMultiRegionAccessPoint.id.apply(id => id.split(":"))[1],
24
+ * policy: pulumi.all([currentCallerIdentity, currentPartition, currentCallerIdentity, exampleMultiRegionAccessPoint.alias]).apply(([currentCallerIdentity, currentPartition, currentCallerIdentity1, alias]) => JSON.stringify({
25
+ * Version: "2012-10-17",
26
+ * Statement: [{
27
+ * Sid: "Example",
28
+ * Effect: "Allow",
29
+ * Principal: {
30
+ * AWS: currentCallerIdentity.accountId,
31
+ * },
32
+ * Action: [
33
+ * "s3:GetObject",
34
+ * "s3:PutObject",
35
+ * ],
36
+ * Resource: `arn:${currentPartition.partition}:s3::${currentCallerIdentity1.accountId}:accesspoint/${alias}/object/*`,
37
+ * }],
38
+ * })),
39
+ * }});
40
+ * ```
41
+ *
42
+ * ## Import
43
+ *
44
+ * Multi-Region Access Point Policies can be imported using the `account_id` and `name` of the Multi-Region Access Point separated by a colon (`:`), e.g.
45
+ *
46
+ * ```sh
47
+ * $ pulumi import aws:s3control/multiRegionAccessPointPolicy:MultiRegionAccessPointPolicy example 123456789012:example
48
+ * ```
49
+ */
50
+ export declare class MultiRegionAccessPointPolicy extends pulumi.CustomResource {
51
+ /**
52
+ * Get an existing MultiRegionAccessPointPolicy resource's state with the given name, ID, and optional extra
53
+ * properties used to qualify the lookup.
54
+ *
55
+ * @param name The _unique_ name of the resulting resource.
56
+ * @param id The _unique_ provider ID of the resource to lookup.
57
+ * @param state Any extra arguments used during the lookup.
58
+ * @param opts Optional settings to control the behavior of the CustomResource.
59
+ */
60
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: MultiRegionAccessPointPolicyState, opts?: pulumi.CustomResourceOptions): MultiRegionAccessPointPolicy;
61
+ /**
62
+ * Returns true if the given object is an instance of MultiRegionAccessPointPolicy. This is designed to work even
63
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
64
+ */
65
+ static isInstance(obj: any): obj is MultiRegionAccessPointPolicy;
66
+ readonly accountId: pulumi.Output<string>;
67
+ /**
68
+ * A configuration block containing details about the policy for the Multi-Region Access Point. See Details Configuration Block below for more details
69
+ */
70
+ readonly details: pulumi.Output<outputs.s3control.MultiRegionAccessPointPolicyDetails>;
71
+ /**
72
+ * The last established policy for the Multi-Region Access Point.
73
+ */
74
+ readonly established: pulumi.Output<string>;
75
+ /**
76
+ * The proposed policy for the Multi-Region Access Point.
77
+ */
78
+ readonly proposed: pulumi.Output<string>;
79
+ /**
80
+ * Create a MultiRegionAccessPointPolicy resource with the given unique name, arguments, and options.
81
+ *
82
+ * @param name The _unique_ name of the resource.
83
+ * @param args The arguments to use to populate this resource's properties.
84
+ * @param opts A bag of options that control this resource's behavior.
85
+ */
86
+ constructor(name: string, args: MultiRegionAccessPointPolicyArgs, opts?: pulumi.CustomResourceOptions);
87
+ }
88
+ /**
89
+ * Input properties used for looking up and filtering MultiRegionAccessPointPolicy resources.
90
+ */
91
+ export interface MultiRegionAccessPointPolicyState {
92
+ accountId?: pulumi.Input<string>;
93
+ /**
94
+ * A configuration block containing details about the policy for the Multi-Region Access Point. See Details Configuration Block below for more details
95
+ */
96
+ details?: pulumi.Input<inputs.s3control.MultiRegionAccessPointPolicyDetails>;
97
+ /**
98
+ * The last established policy for the Multi-Region Access Point.
99
+ */
100
+ established?: pulumi.Input<string>;
101
+ /**
102
+ * The proposed policy for the Multi-Region Access Point.
103
+ */
104
+ proposed?: pulumi.Input<string>;
105
+ }
106
+ /**
107
+ * The set of arguments for constructing a MultiRegionAccessPointPolicy resource.
108
+ */
109
+ export interface MultiRegionAccessPointPolicyArgs {
110
+ accountId?: pulumi.Input<string>;
111
+ /**
112
+ * A configuration block containing details about the policy for the Multi-Region Access Point. See Details Configuration Block below for more details
113
+ */
114
+ details: pulumi.Input<inputs.s3control.MultiRegionAccessPointPolicyDetails>;
115
+ }
@@ -0,0 +1,107 @@
1
+ "use strict";
2
+ // *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ // *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.MultiRegionAccessPointPolicy = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("../utilities");
8
+ /**
9
+ * Provides a resource to manage an S3 Multi-Region Access Point access control policy.
10
+ *
11
+ * ## Example Usage
12
+ * ### Basic Example
13
+ *
14
+ * ```typescript
15
+ * import * as pulumi from "@pulumi/pulumi";
16
+ * import * as aws from "@pulumi/aws";
17
+ *
18
+ * const currentCallerIdentity = aws.getCallerIdentity({});
19
+ * const currentPartition = aws.getPartition({});
20
+ * const fooBucket = new aws.s3.Bucket("fooBucket", {});
21
+ * const exampleMultiRegionAccessPoint = new aws.s3control.MultiRegionAccessPoint("exampleMultiRegionAccessPoint", {details: {
22
+ * name: "example",
23
+ * regions: [{
24
+ * bucket: fooBucket.id,
25
+ * }],
26
+ * }});
27
+ * const exampleMultiRegionAccessPointPolicy = new aws.s3control.MultiRegionAccessPointPolicy("exampleMultiRegionAccessPointPolicy", {details: {
28
+ * name: exampleMultiRegionAccessPoint.id.apply(id => id.split(":"))[1],
29
+ * policy: pulumi.all([currentCallerIdentity, currentPartition, currentCallerIdentity, exampleMultiRegionAccessPoint.alias]).apply(([currentCallerIdentity, currentPartition, currentCallerIdentity1, alias]) => JSON.stringify({
30
+ * Version: "2012-10-17",
31
+ * Statement: [{
32
+ * Sid: "Example",
33
+ * Effect: "Allow",
34
+ * Principal: {
35
+ * AWS: currentCallerIdentity.accountId,
36
+ * },
37
+ * Action: [
38
+ * "s3:GetObject",
39
+ * "s3:PutObject",
40
+ * ],
41
+ * Resource: `arn:${currentPartition.partition}:s3::${currentCallerIdentity1.accountId}:accesspoint/${alias}/object/*`,
42
+ * }],
43
+ * })),
44
+ * }});
45
+ * ```
46
+ *
47
+ * ## Import
48
+ *
49
+ * Multi-Region Access Point Policies can be imported using the `account_id` and `name` of the Multi-Region Access Point separated by a colon (`:`), e.g.
50
+ *
51
+ * ```sh
52
+ * $ pulumi import aws:s3control/multiRegionAccessPointPolicy:MultiRegionAccessPointPolicy example 123456789012:example
53
+ * ```
54
+ */
55
+ class MultiRegionAccessPointPolicy extends pulumi.CustomResource {
56
+ constructor(name, argsOrState, opts) {
57
+ let inputs = {};
58
+ opts = opts || {};
59
+ if (opts.id) {
60
+ const state = argsOrState;
61
+ inputs["accountId"] = state ? state.accountId : undefined;
62
+ inputs["details"] = state ? state.details : undefined;
63
+ inputs["established"] = state ? state.established : undefined;
64
+ inputs["proposed"] = state ? state.proposed : undefined;
65
+ }
66
+ else {
67
+ const args = argsOrState;
68
+ if ((!args || args.details === undefined) && !opts.urn) {
69
+ throw new Error("Missing required property 'details'");
70
+ }
71
+ inputs["accountId"] = args ? args.accountId : undefined;
72
+ inputs["details"] = args ? args.details : undefined;
73
+ inputs["established"] = undefined /*out*/;
74
+ inputs["proposed"] = undefined /*out*/;
75
+ }
76
+ if (!opts.version) {
77
+ opts = pulumi.mergeOptions(opts, { version: utilities.getVersion() });
78
+ }
79
+ super(MultiRegionAccessPointPolicy.__pulumiType, name, inputs, opts);
80
+ }
81
+ /**
82
+ * Get an existing MultiRegionAccessPointPolicy resource's state with the given name, ID, and optional extra
83
+ * properties used to qualify the lookup.
84
+ *
85
+ * @param name The _unique_ name of the resulting resource.
86
+ * @param id The _unique_ provider ID of the resource to lookup.
87
+ * @param state Any extra arguments used during the lookup.
88
+ * @param opts Optional settings to control the behavior of the CustomResource.
89
+ */
90
+ static get(name, id, state, opts) {
91
+ return new MultiRegionAccessPointPolicy(name, state, Object.assign(Object.assign({}, opts), { id: id }));
92
+ }
93
+ /**
94
+ * Returns true if the given object is an instance of MultiRegionAccessPointPolicy. This is designed to work even
95
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
96
+ */
97
+ static isInstance(obj) {
98
+ if (obj === undefined || obj === null) {
99
+ return false;
100
+ }
101
+ return obj['__pulumiType'] === MultiRegionAccessPointPolicy.__pulumiType;
102
+ }
103
+ }
104
+ exports.MultiRegionAccessPointPolicy = MultiRegionAccessPointPolicy;
105
+ /** @internal */
106
+ MultiRegionAccessPointPolicy.__pulumiType = 'aws:s3control/multiRegionAccessPointPolicy:MultiRegionAccessPointPolicy';
107
+ //# sourceMappingURL=multiRegionAccessPointPolicy.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"multiRegionAccessPointPolicy.js","sourceRoot":"","sources":["../../s3control/multiRegionAccessPointPolicy.ts"],"names":[],"mappings":";AAAA,wFAAwF;AACxF,iFAAiF;;;AAEjF,yCAAyC;AAEzC,0CAA0C;AAE1C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8CG;AACH,MAAa,4BAA6B,SAAQ,MAAM,CAAC,cAAc;IAkDnE,YAAY,IAAY,EAAE,WAAkF,EAAE,IAAmC;QAC7I,IAAI,MAAM,GAAkB,EAAE,CAAC;QAC/B,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;QAClB,IAAI,IAAI,CAAC,EAAE,EAAE;YACT,MAAM,KAAK,GAAG,WAA4D,CAAC;YAC3E,MAAM,CAAC,WAAW,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;YAC1D,MAAM,CAAC,SAAS,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YACtD,MAAM,CAAC,aAAa,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC;YAC9D,MAAM,CAAC,UAAU,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC;SAC3D;aAAM;YACH,MAAM,IAAI,GAAG,WAA2D,CAAC;YACzE,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE;gBACpD,MAAM,IAAI,KAAK,CAAC,qCAAqC,CAAC,CAAC;aAC1D;YACD,MAAM,CAAC,WAAW,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;YACxD,MAAM,CAAC,SAAS,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YACpD,MAAM,CAAC,aAAa,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;YAC1C,MAAM,CAAC,UAAU,CAAC,GAAG,SAAS,CAAC,OAAO,CAAC;SAC1C;QACD,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE;YACf,IAAI,GAAG,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,EAAE,OAAO,EAAE,SAAS,CAAC,UAAU,EAAE,EAAC,CAAC,CAAC;SACxE;QACD,KAAK,CAAC,4BAA4B,CAAC,YAAY,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC;IACzE,CAAC;IAxED;;;;;;;;OAQG;IACI,MAAM,CAAC,GAAG,CAAC,IAAY,EAAE,EAA2B,EAAE,KAAyC,EAAE,IAAmC;QACvI,OAAO,IAAI,4BAA4B,CAAC,IAAI,EAAO,KAAK,kCAAO,IAAI,KAAE,EAAE,EAAE,EAAE,IAAG,CAAC;IACnF,CAAC;IAKD;;;OAGG;IACI,MAAM,CAAC,UAAU,CAAC,GAAQ;QAC7B,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,KAAK,IAAI,EAAE;YACnC,OAAO,KAAK,CAAC;SAChB;QACD,OAAO,GAAG,CAAC,cAAc,CAAC,KAAK,4BAA4B,CAAC,YAAY,CAAC;IAC7E,CAAC;;AA1BL,oEA0EC;AA5DG,gBAAgB;AACO,yCAAY,GAAG,yEAAyE,CAAC"}
@@ -0,0 +1,105 @@
1
+ import * as pulumi from "@pulumi/pulumi";
2
+ import { input as inputs, output as outputs } from "../types";
3
+ /**
4
+ * Provides a resource to manage an S3 Object Lambda Access Point.
5
+ * An Object Lambda access point is associated with exactly one standard access point and thus one Amazon S3 bucket.
6
+ *
7
+ * ## Example Usage
8
+ *
9
+ * ```typescript
10
+ * import * as pulumi from "@pulumi/pulumi";
11
+ * import * as aws from "@pulumi/aws";
12
+ *
13
+ * const exampleBucket = new aws.s3.Bucket("exampleBucket", {});
14
+ * const exampleAccessPoint = new aws.s3.AccessPoint("exampleAccessPoint", {bucket: exampleBucket.id});
15
+ * const exampleObjectLambdaAccessPoint = new aws.s3control.ObjectLambdaAccessPoint("exampleObjectLambdaAccessPoint", {configuration: {
16
+ * supportingAccessPoint: exampleAccessPoint.arn,
17
+ * transformationConfigurations: [{
18
+ * actions: ["GetObject"],
19
+ * contentTransformation: {
20
+ * awsLambda: {
21
+ * functionArn: aws_lambda_function.example.arn,
22
+ * },
23
+ * },
24
+ * }],
25
+ * }});
26
+ * ```
27
+ *
28
+ * ## Import
29
+ *
30
+ * Object Lambda Access Points can be imported using the `account_id` and `name`, separated by a colon (`:`), e.g.
31
+ *
32
+ * ```sh
33
+ * $ pulumi import aws:s3control/objectLambdaAccessPoint:ObjectLambdaAccessPoint example 123456789012:example
34
+ * ```
35
+ */
36
+ export declare class ObjectLambdaAccessPoint extends pulumi.CustomResource {
37
+ /**
38
+ * Get an existing ObjectLambdaAccessPoint resource's state with the given name, ID, and optional extra
39
+ * properties used to qualify the lookup.
40
+ *
41
+ * @param name The _unique_ name of the resulting resource.
42
+ * @param id The _unique_ provider ID of the resource to lookup.
43
+ * @param state Any extra arguments used during the lookup.
44
+ * @param opts Optional settings to control the behavior of the CustomResource.
45
+ */
46
+ static get(name: string, id: pulumi.Input<pulumi.ID>, state?: ObjectLambdaAccessPointState, opts?: pulumi.CustomResourceOptions): ObjectLambdaAccessPoint;
47
+ /**
48
+ * Returns true if the given object is an instance of ObjectLambdaAccessPoint. This is designed to work even
49
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
50
+ */
51
+ static isInstance(obj: any): obj is ObjectLambdaAccessPoint;
52
+ readonly accountId: pulumi.Output<string>;
53
+ /**
54
+ * Amazon Resource Name (ARN) of the Object Lambda Access Point.
55
+ */
56
+ readonly arn: pulumi.Output<string>;
57
+ /**
58
+ * A configuration block containing details about the Object Lambda Access Point. See Configuration below for more details.
59
+ */
60
+ readonly configuration: pulumi.Output<outputs.s3control.ObjectLambdaAccessPointConfiguration>;
61
+ /**
62
+ * The name for this Object Lambda Access Point.
63
+ */
64
+ readonly name: pulumi.Output<string>;
65
+ /**
66
+ * Create a ObjectLambdaAccessPoint resource with the given unique name, arguments, and options.
67
+ *
68
+ * @param name The _unique_ name of the resource.
69
+ * @param args The arguments to use to populate this resource's properties.
70
+ * @param opts A bag of options that control this resource's behavior.
71
+ */
72
+ constructor(name: string, args: ObjectLambdaAccessPointArgs, opts?: pulumi.CustomResourceOptions);
73
+ }
74
+ /**
75
+ * Input properties used for looking up and filtering ObjectLambdaAccessPoint resources.
76
+ */
77
+ export interface ObjectLambdaAccessPointState {
78
+ accountId?: pulumi.Input<string>;
79
+ /**
80
+ * Amazon Resource Name (ARN) of the Object Lambda Access Point.
81
+ */
82
+ arn?: pulumi.Input<string>;
83
+ /**
84
+ * A configuration block containing details about the Object Lambda Access Point. See Configuration below for more details.
85
+ */
86
+ configuration?: pulumi.Input<inputs.s3control.ObjectLambdaAccessPointConfiguration>;
87
+ /**
88
+ * The name for this Object Lambda Access Point.
89
+ */
90
+ name?: pulumi.Input<string>;
91
+ }
92
+ /**
93
+ * The set of arguments for constructing a ObjectLambdaAccessPoint resource.
94
+ */
95
+ export interface ObjectLambdaAccessPointArgs {
96
+ accountId?: pulumi.Input<string>;
97
+ /**
98
+ * A configuration block containing details about the Object Lambda Access Point. See Configuration below for more details.
99
+ */
100
+ configuration: pulumi.Input<inputs.s3control.ObjectLambdaAccessPointConfiguration>;
101
+ /**
102
+ * The name for this Object Lambda Access Point.
103
+ */
104
+ name?: pulumi.Input<string>;
105
+ }
@@ -0,0 +1,93 @@
1
+ "use strict";
2
+ // *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
3
+ // *** Do not edit by hand unless you're certain you know what you are doing! ***
4
+ Object.defineProperty(exports, "__esModule", { value: true });
5
+ exports.ObjectLambdaAccessPoint = void 0;
6
+ const pulumi = require("@pulumi/pulumi");
7
+ const utilities = require("../utilities");
8
+ /**
9
+ * Provides a resource to manage an S3 Object Lambda Access Point.
10
+ * An Object Lambda access point is associated with exactly one standard access point and thus one Amazon S3 bucket.
11
+ *
12
+ * ## Example Usage
13
+ *
14
+ * ```typescript
15
+ * import * as pulumi from "@pulumi/pulumi";
16
+ * import * as aws from "@pulumi/aws";
17
+ *
18
+ * const exampleBucket = new aws.s3.Bucket("exampleBucket", {});
19
+ * const exampleAccessPoint = new aws.s3.AccessPoint("exampleAccessPoint", {bucket: exampleBucket.id});
20
+ * const exampleObjectLambdaAccessPoint = new aws.s3control.ObjectLambdaAccessPoint("exampleObjectLambdaAccessPoint", {configuration: {
21
+ * supportingAccessPoint: exampleAccessPoint.arn,
22
+ * transformationConfigurations: [{
23
+ * actions: ["GetObject"],
24
+ * contentTransformation: {
25
+ * awsLambda: {
26
+ * functionArn: aws_lambda_function.example.arn,
27
+ * },
28
+ * },
29
+ * }],
30
+ * }});
31
+ * ```
32
+ *
33
+ * ## Import
34
+ *
35
+ * Object Lambda Access Points can be imported using the `account_id` and `name`, separated by a colon (`:`), e.g.
36
+ *
37
+ * ```sh
38
+ * $ pulumi import aws:s3control/objectLambdaAccessPoint:ObjectLambdaAccessPoint example 123456789012:example
39
+ * ```
40
+ */
41
+ class ObjectLambdaAccessPoint extends pulumi.CustomResource {
42
+ constructor(name, argsOrState, opts) {
43
+ let inputs = {};
44
+ opts = opts || {};
45
+ if (opts.id) {
46
+ const state = argsOrState;
47
+ inputs["accountId"] = state ? state.accountId : undefined;
48
+ inputs["arn"] = state ? state.arn : undefined;
49
+ inputs["configuration"] = state ? state.configuration : undefined;
50
+ inputs["name"] = state ? state.name : undefined;
51
+ }
52
+ else {
53
+ const args = argsOrState;
54
+ if ((!args || args.configuration === undefined) && !opts.urn) {
55
+ throw new Error("Missing required property 'configuration'");
56
+ }
57
+ inputs["accountId"] = args ? args.accountId : undefined;
58
+ inputs["configuration"] = args ? args.configuration : undefined;
59
+ inputs["name"] = args ? args.name : undefined;
60
+ inputs["arn"] = undefined /*out*/;
61
+ }
62
+ if (!opts.version) {
63
+ opts = pulumi.mergeOptions(opts, { version: utilities.getVersion() });
64
+ }
65
+ super(ObjectLambdaAccessPoint.__pulumiType, name, inputs, opts);
66
+ }
67
+ /**
68
+ * Get an existing ObjectLambdaAccessPoint resource's state with the given name, ID, and optional extra
69
+ * properties used to qualify the lookup.
70
+ *
71
+ * @param name The _unique_ name of the resulting resource.
72
+ * @param id The _unique_ provider ID of the resource to lookup.
73
+ * @param state Any extra arguments used during the lookup.
74
+ * @param opts Optional settings to control the behavior of the CustomResource.
75
+ */
76
+ static get(name, id, state, opts) {
77
+ return new ObjectLambdaAccessPoint(name, state, Object.assign(Object.assign({}, opts), { id: id }));
78
+ }
79
+ /**
80
+ * Returns true if the given object is an instance of ObjectLambdaAccessPoint. This is designed to work even
81
+ * when multiple copies of the Pulumi SDK have been loaded into the same process.
82
+ */
83
+ static isInstance(obj) {
84
+ if (obj === undefined || obj === null) {
85
+ return false;
86
+ }
87
+ return obj['__pulumiType'] === ObjectLambdaAccessPoint.__pulumiType;
88
+ }
89
+ }
90
+ exports.ObjectLambdaAccessPoint = ObjectLambdaAccessPoint;
91
+ /** @internal */
92
+ ObjectLambdaAccessPoint.__pulumiType = 'aws:s3control/objectLambdaAccessPoint:ObjectLambdaAccessPoint';
93
+ //# sourceMappingURL=objectLambdaAccessPoint.js.map