1use crate::types::{
4 AccelerateConfiguration, AccessControlPolicy, BucketCannedACL, BucketLifecycleConfiguration,
5 BucketLoggingStatus, CORSConfiguration, ChecksumAlgorithm, NotificationConfiguration,
6 ObjectAttributes, ObjectCannedACL, ObjectLockConfiguration, ObjectLockLegalHold,
7 ObjectLockRetention, OwnershipControls, PublicAccessBlockConfiguration, RequestPayer,
8 RequestPaymentConfiguration, ServerSideEncryptionConfiguration, Tagging,
9 TransitionDefaultMinimumObjectSize, VersioningConfiguration, WebsiteConfiguration,
10};
11
12#[derive(Debug, Clone, Default)]
14pub struct DeleteBucketCorsInput {
15 pub bucket: String,
17 pub expected_bucket_owner: Option<String>,
19}
20
21#[derive(Debug, Clone, Default)]
23pub struct DeleteBucketEncryptionInput {
24 pub bucket: String,
26 pub expected_bucket_owner: Option<String>,
28}
29
30#[derive(Debug, Clone, Default)]
32pub struct DeleteBucketLifecycleInput {
33 pub bucket: String,
35 pub expected_bucket_owner: Option<String>,
37}
38
39#[derive(Debug, Clone, Default)]
41pub struct DeleteBucketOwnershipControlsInput {
42 pub bucket: String,
44 pub expected_bucket_owner: Option<String>,
46}
47
48#[derive(Debug, Clone, Default)]
50pub struct DeleteBucketPolicyInput {
51 pub bucket: String,
53 pub expected_bucket_owner: Option<String>,
55}
56
57#[derive(Debug, Clone, Default)]
59pub struct DeleteBucketTaggingInput {
60 pub bucket: String,
62 pub expected_bucket_owner: Option<String>,
64}
65
66#[derive(Debug, Clone, Default)]
68pub struct DeleteBucketWebsiteInput {
69 pub bucket: String,
71 pub expected_bucket_owner: Option<String>,
73}
74
75#[derive(Debug, Clone, Default)]
77pub struct DeleteObjectTaggingInput {
78 pub bucket: String,
80 pub expected_bucket_owner: Option<String>,
82 pub key: String,
84 pub version_id: Option<String>,
86}
87
88#[derive(Debug, Clone, Default)]
90pub struct DeletePublicAccessBlockInput {
91 pub bucket: String,
93 pub expected_bucket_owner: Option<String>,
95}
96
97#[derive(Debug, Clone, Default)]
99pub struct GetBucketAccelerateConfigurationInput {
100 pub bucket: String,
102 pub expected_bucket_owner: Option<String>,
104 pub request_payer: Option<RequestPayer>,
106}
107
108#[derive(Debug, Clone, Default)]
110pub struct GetBucketAclInput {
111 pub bucket: String,
113 pub expected_bucket_owner: Option<String>,
115}
116
117#[derive(Debug, Clone, Default)]
119pub struct GetBucketCorsInput {
120 pub bucket: String,
122 pub expected_bucket_owner: Option<String>,
124}
125
126#[derive(Debug, Clone, Default)]
128pub struct GetBucketEncryptionInput {
129 pub bucket: String,
131 pub expected_bucket_owner: Option<String>,
133}
134
135#[derive(Debug, Clone, Default)]
137pub struct GetBucketLifecycleConfigurationInput {
138 pub bucket: String,
140 pub expected_bucket_owner: Option<String>,
142}
143
144#[derive(Debug, Clone, Default)]
146pub struct GetBucketLoggingInput {
147 pub bucket: String,
149 pub expected_bucket_owner: Option<String>,
151}
152
153#[derive(Debug, Clone, Default)]
155pub struct GetBucketNotificationConfigurationInput {
156 pub bucket: String,
158 pub expected_bucket_owner: Option<String>,
160}
161
162#[derive(Debug, Clone, Default)]
164pub struct GetBucketOwnershipControlsInput {
165 pub bucket: String,
167 pub expected_bucket_owner: Option<String>,
169}
170
171#[derive(Debug, Clone, Default)]
173pub struct GetBucketPolicyInput {
174 pub bucket: String,
176 pub expected_bucket_owner: Option<String>,
178}
179
180#[derive(Debug, Clone, Default)]
182pub struct GetBucketPolicyStatusInput {
183 pub bucket: String,
185 pub expected_bucket_owner: Option<String>,
187}
188
189#[derive(Debug, Clone, Default)]
191pub struct GetBucketRequestPaymentInput {
192 pub bucket: String,
194 pub expected_bucket_owner: Option<String>,
196}
197
198#[derive(Debug, Clone, Default)]
200pub struct GetBucketTaggingInput {
201 pub bucket: String,
203 pub expected_bucket_owner: Option<String>,
205}
206
207#[derive(Debug, Clone, Default)]
209pub struct GetBucketVersioningInput {
210 pub bucket: String,
212 pub expected_bucket_owner: Option<String>,
214}
215
216#[derive(Debug, Clone, Default)]
218pub struct GetBucketWebsiteInput {
219 pub bucket: String,
221 pub expected_bucket_owner: Option<String>,
223}
224
225#[derive(Debug, Clone, Default)]
227pub struct GetObjectAclInput {
228 pub bucket: String,
230 pub expected_bucket_owner: Option<String>,
232 pub key: String,
234 pub request_payer: Option<RequestPayer>,
236 pub version_id: Option<String>,
238}
239
240#[derive(Debug, Clone, Default)]
242pub struct GetObjectAttributesInput {
243 pub bucket: String,
245 pub expected_bucket_owner: Option<String>,
247 pub key: String,
249 pub max_parts: Option<i32>,
251 pub object_attributes: Vec<ObjectAttributes>,
253 pub part_number_marker: Option<String>,
255 pub request_payer: Option<RequestPayer>,
257 pub sse_customer_algorithm: Option<String>,
259 pub sse_customer_key: Option<String>,
261 pub sse_customer_key_md5: Option<String>,
263 pub version_id: Option<String>,
265}
266
267#[derive(Debug, Clone, Default)]
269pub struct GetObjectLegalHoldInput {
270 pub bucket: String,
272 pub expected_bucket_owner: Option<String>,
274 pub key: String,
276 pub request_payer: Option<RequestPayer>,
278 pub version_id: Option<String>,
280}
281
282#[derive(Debug, Clone, Default)]
284pub struct GetObjectLockConfigurationInput {
285 pub bucket: String,
287 pub expected_bucket_owner: Option<String>,
289}
290
291#[derive(Debug, Clone, Default)]
293pub struct GetObjectRetentionInput {
294 pub bucket: String,
296 pub expected_bucket_owner: Option<String>,
298 pub key: String,
300 pub request_payer: Option<RequestPayer>,
302 pub version_id: Option<String>,
304}
305
306#[derive(Debug, Clone, Default)]
308pub struct GetObjectTaggingInput {
309 pub bucket: String,
311 pub expected_bucket_owner: Option<String>,
313 pub key: String,
315 pub request_payer: Option<RequestPayer>,
317 pub version_id: Option<String>,
319}
320
321#[derive(Debug, Clone, Default)]
323pub struct GetPublicAccessBlockInput {
324 pub bucket: String,
326 pub expected_bucket_owner: Option<String>,
328}
329
330#[derive(Debug, Clone, Default)]
332pub struct PutBucketAccelerateConfigurationInput {
333 pub accelerate_configuration: AccelerateConfiguration,
335 pub bucket: String,
337 pub checksum_algorithm: Option<ChecksumAlgorithm>,
339 pub expected_bucket_owner: Option<String>,
341}
342
343#[derive(Debug, Clone, Default)]
345pub struct PutBucketAclInput {
346 pub acl: Option<BucketCannedACL>,
348 pub access_control_policy: Option<AccessControlPolicy>,
350 pub bucket: String,
352 pub checksum_algorithm: Option<ChecksumAlgorithm>,
354 pub content_md5: Option<String>,
356 pub expected_bucket_owner: Option<String>,
358 pub grant_full_control: Option<String>,
360 pub grant_read: Option<String>,
362 pub grant_read_acp: Option<String>,
364 pub grant_write: Option<String>,
366 pub grant_write_acp: Option<String>,
368}
369
370#[derive(Debug, Clone, Default)]
372pub struct PutBucketCorsInput {
373 pub bucket: String,
375 pub cors_configuration: CORSConfiguration,
377 pub checksum_algorithm: Option<ChecksumAlgorithm>,
379 pub content_md5: Option<String>,
381 pub expected_bucket_owner: Option<String>,
383}
384
385#[derive(Debug, Clone, Default)]
387pub struct PutBucketEncryptionInput {
388 pub bucket: String,
390 pub checksum_algorithm: Option<ChecksumAlgorithm>,
392 pub content_md5: Option<String>,
394 pub expected_bucket_owner: Option<String>,
396 pub server_side_encryption_configuration: ServerSideEncryptionConfiguration,
398}
399
400#[derive(Debug, Clone, Default)]
402pub struct PutBucketLifecycleConfigurationInput {
403 pub bucket: String,
405 pub checksum_algorithm: Option<ChecksumAlgorithm>,
407 pub expected_bucket_owner: Option<String>,
409 pub lifecycle_configuration: Option<BucketLifecycleConfiguration>,
411 pub transition_default_minimum_object_size: Option<TransitionDefaultMinimumObjectSize>,
413}
414
415#[derive(Debug, Clone, Default)]
417pub struct PutBucketLoggingInput {
418 pub bucket: String,
420 pub bucket_logging_status: BucketLoggingStatus,
422 pub checksum_algorithm: Option<ChecksumAlgorithm>,
424 pub content_md5: Option<String>,
426 pub expected_bucket_owner: Option<String>,
428}
429
430#[derive(Debug, Clone, Default)]
432pub struct PutBucketNotificationConfigurationInput {
433 pub bucket: String,
435 pub expected_bucket_owner: Option<String>,
437 pub notification_configuration: NotificationConfiguration,
439 pub skip_destination_validation: Option<bool>,
441}
442
443#[derive(Debug, Clone, Default)]
445pub struct PutBucketOwnershipControlsInput {
446 pub bucket: String,
448 pub checksum_algorithm: Option<ChecksumAlgorithm>,
450 pub content_md5: Option<String>,
452 pub expected_bucket_owner: Option<String>,
454 pub ownership_controls: OwnershipControls,
456}
457
458#[derive(Debug, Clone, Default)]
460pub struct PutBucketPolicyInput {
461 pub bucket: String,
463 pub checksum_algorithm: Option<ChecksumAlgorithm>,
465 pub confirm_remove_self_bucket_access: Option<bool>,
467 pub content_md5: Option<String>,
469 pub expected_bucket_owner: Option<String>,
471 pub policy: String,
473}
474
475#[derive(Debug, Clone, Default)]
477pub struct PutBucketRequestPaymentInput {
478 pub bucket: String,
480 pub checksum_algorithm: Option<ChecksumAlgorithm>,
482 pub content_md5: Option<String>,
484 pub expected_bucket_owner: Option<String>,
486 pub request_payment_configuration: RequestPaymentConfiguration,
488}
489
490#[derive(Debug, Clone, Default)]
492pub struct PutBucketTaggingInput {
493 pub bucket: String,
495 pub checksum_algorithm: Option<ChecksumAlgorithm>,
497 pub content_md5: Option<String>,
499 pub expected_bucket_owner: Option<String>,
501 pub tagging: Tagging,
503}
504
505#[derive(Debug, Clone, Default)]
507pub struct PutBucketVersioningInput {
508 pub bucket: String,
510 pub checksum_algorithm: Option<ChecksumAlgorithm>,
512 pub content_md5: Option<String>,
514 pub expected_bucket_owner: Option<String>,
516 pub mfa: Option<String>,
518 pub versioning_configuration: VersioningConfiguration,
520}
521
522#[derive(Debug, Clone, Default)]
524pub struct PutBucketWebsiteInput {
525 pub bucket: String,
527 pub checksum_algorithm: Option<ChecksumAlgorithm>,
529 pub content_md5: Option<String>,
531 pub expected_bucket_owner: Option<String>,
533 pub website_configuration: WebsiteConfiguration,
535}
536
537#[derive(Debug, Clone, Default)]
539pub struct PutObjectAclInput {
540 pub acl: Option<ObjectCannedACL>,
542 pub access_control_policy: Option<AccessControlPolicy>,
544 pub bucket: String,
546 pub checksum_algorithm: Option<ChecksumAlgorithm>,
548 pub content_md5: Option<String>,
550 pub expected_bucket_owner: Option<String>,
552 pub grant_full_control: Option<String>,
554 pub grant_read: Option<String>,
556 pub grant_read_acp: Option<String>,
558 pub grant_write: Option<String>,
560 pub grant_write_acp: Option<String>,
562 pub key: String,
564 pub request_payer: Option<RequestPayer>,
566 pub version_id: Option<String>,
568}
569
570#[derive(Debug, Clone, Default)]
572pub struct PutObjectLegalHoldInput {
573 pub bucket: String,
575 pub checksum_algorithm: Option<ChecksumAlgorithm>,
577 pub content_md5: Option<String>,
579 pub expected_bucket_owner: Option<String>,
581 pub key: String,
583 pub legal_hold: Option<ObjectLockLegalHold>,
585 pub request_payer: Option<RequestPayer>,
587 pub version_id: Option<String>,
589}
590
591#[derive(Debug, Clone, Default)]
593pub struct PutObjectLockConfigurationInput {
594 pub bucket: String,
596 pub checksum_algorithm: Option<ChecksumAlgorithm>,
598 pub content_md5: Option<String>,
600 pub expected_bucket_owner: Option<String>,
602 pub object_lock_configuration: Option<ObjectLockConfiguration>,
604 pub request_payer: Option<RequestPayer>,
606 pub token: Option<String>,
608}
609
610#[derive(Debug, Clone, Default)]
612pub struct PutObjectRetentionInput {
613 pub bucket: String,
615 pub bypass_governance_retention: Option<bool>,
617 pub checksum_algorithm: Option<ChecksumAlgorithm>,
619 pub content_md5: Option<String>,
621 pub expected_bucket_owner: Option<String>,
623 pub key: String,
625 pub request_payer: Option<RequestPayer>,
627 pub retention: Option<ObjectLockRetention>,
629 pub version_id: Option<String>,
631}
632
633#[derive(Debug, Clone, Default)]
635pub struct PutObjectTaggingInput {
636 pub bucket: String,
638 pub checksum_algorithm: Option<ChecksumAlgorithm>,
640 pub content_md5: Option<String>,
642 pub expected_bucket_owner: Option<String>,
644 pub key: String,
646 pub request_payer: Option<RequestPayer>,
648 pub tagging: Tagging,
650 pub version_id: Option<String>,
652}
653
654#[derive(Debug, Clone, Default)]
656pub struct PutPublicAccessBlockInput {
657 pub bucket: String,
659 pub checksum_algorithm: Option<ChecksumAlgorithm>,
661 pub content_md5: Option<String>,
663 pub expected_bucket_owner: Option<String>,
665 pub public_access_block_configuration: PublicAccessBlockConfiguration,
667}