1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
/*
* Antimatter Public API
*
* Interact with the Antimatter Cloud API
*
* The version of the OpenAPI document: 2.0.13
* Contact: support@antimatter.io
* Generated by: https://openapi-generator.tech
*/
use crate::models;
use serde::{Deserialize, Serialize};
/// AntimatterDelegatedAwsKeyInfo : The details required to use an AWS KMS root encryption key that has been delegated to Antimatter's AWS account. This will use Antimatter's service account during set up of the AWS client.
#[derive(Clone, Default, Debug, PartialEq, Serialize, Deserialize)]
pub struct AntimatterDelegatedAwsKeyInfo {
/// The key ARN to be used.
#[serde(rename = "keyARN")]
pub key_arn: String,
#[serde(rename = "providerName", skip_serializing_if = "Option::is_none")]
pub provider_name: Option<ProviderName>,
}
impl AntimatterDelegatedAwsKeyInfo {
/// The details required to use an AWS KMS root encryption key that has been delegated to Antimatter's AWS account. This will use Antimatter's service account during set up of the AWS client.
pub fn new(key_arn: String) -> AntimatterDelegatedAwsKeyInfo {
AntimatterDelegatedAwsKeyInfo {
key_arn,
provider_name: None,
}
}
}
///
#[derive(Clone, Copy, Debug, Eq, PartialEq, Ord, PartialOrd, Hash, Serialize, Deserialize)]
pub enum ProviderName {
#[serde(rename = "aws_am")]
AwsAm,
}
impl Default for ProviderName {
fn default() -> ProviderName {
Self::AwsAm
}
}