use serde::{Deserialize, Serialize};
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct ListSecretsRequest {
#[serde(skip_serializing_if = "Option::is_none")]
pub max_results: Option<i32>,
#[serde(skip_serializing_if = "Option::is_none")]
pub next_token: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub sort_order: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub sort_by: Option<String>,
}
impl ListSecretsRequest {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
max_results: Some(100),
next_token: Some("test-next_token".into()),
sort_order: Some("test-sort_order".into()),
sort_by: Some("test-sort_by".into()),
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct ListSecretsResponse {
#[serde(default)]
#[serde(skip_serializing_if = "Vec::is_empty")]
pub secret_list: Vec<SecretListEntry>,
#[serde(skip_serializing_if = "Option::is_none")]
pub next_token: Option<String>,
}
impl ListSecretsResponse {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
secret_list: vec![],
next_token: Some("test-next_token".into()),
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct SecretListEntry {
#[serde(rename = "ARN")]
#[serde(skip_serializing_if = "Option::is_none")]
pub arn: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub description: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub rotation_enabled: Option<bool>,
#[serde(skip_serializing_if = "Option::is_none")]
pub rotation_rules: Option<RotationRulesType>,
#[serde(skip_serializing_if = "Option::is_none")]
pub last_rotated_date: Option<f64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub last_changed_date: Option<f64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub last_accessed_date: Option<f64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub created_date: Option<f64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub deleted_date: Option<f64>,
}
impl SecretListEntry {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
arn: Some("test-arn".into()),
name: Some("test-name".into()),
description: Some("test-description".into()),
rotation_enabled: Some(false),
rotation_rules: Some(RotationRulesType::fixture()),
..Default::default()
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct RotationRulesType {
#[serde(skip_serializing_if = "Option::is_none")]
pub automatically_after_days: Option<i64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub schedule_expression: Option<String>,
}
impl RotationRulesType {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
automatically_after_days: Some(100),
schedule_expression: Some("test-schedule_expression".into()),
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct DeleteSecretRequest {
pub secret_id: String,
#[serde(skip_serializing_if = "Option::is_none")]
pub recovery_window_in_days: Option<i64>,
#[serde(skip_serializing_if = "Option::is_none")]
pub force_delete_without_recovery: Option<bool>,
}
impl DeleteSecretRequest {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
secret_id: "test-secret_id".into(),
recovery_window_in_days: Some(100),
force_delete_without_recovery: Some(false),
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct DeleteSecretResponse {
#[serde(rename = "ARN")]
#[serde(skip_serializing_if = "Option::is_none")]
pub arn: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub deletion_date: Option<f64>,
}
impl DeleteSecretResponse {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
arn: Some("test-arn".into()),
name: Some("test-name".into()),
..Default::default()
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct RotateSecretRequest {
pub secret_id: String,
#[serde(rename = "RotationLambdaARN")]
#[serde(skip_serializing_if = "Option::is_none")]
pub rotation_lambda_arn: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub rotation_rules: Option<RotationRulesType>,
#[serde(skip_serializing_if = "Option::is_none")]
pub rotate_immediately: Option<bool>,
}
impl RotateSecretRequest {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
secret_id: "test-secret_id".into(),
rotation_lambda_arn: Some("test-rotation_lambda_arn".into()),
rotation_rules: Some(RotationRulesType::fixture()),
rotate_immediately: Some(false),
}
}
}
#[derive(Debug, Clone, Default, Serialize, Deserialize)]
#[serde(rename_all = "PascalCase")]
pub struct RotateSecretResponse {
#[serde(rename = "ARN")]
#[serde(skip_serializing_if = "Option::is_none")]
pub arn: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub name: Option<String>,
#[serde(skip_serializing_if = "Option::is_none")]
pub version_id: Option<String>,
}
impl RotateSecretResponse {
#[cfg(any(test, feature = "test-support"))]
pub fn fixture() -> Self {
Self {
arn: Some("test-arn".into()),
name: Some("test-name".into()),
version_id: Some("test-version_id".into()),
}
}
}