use chrono::Utc;
use http::StatusCode;
use std::collections::HashMap;
use fakecloud_core::query::query_response_xml;
use fakecloud_core::service::{AwsRequest, AwsResponse, AwsServiceError};
use crate::state::{
ConfigurationSet, EmailIdentity, EmailTemplate, EventDestination, IpFilter, ReceiptAction,
ReceiptFilter, ReceiptRule, ReceiptRuleSet, SentEmail, SesState, SharedSesState,
};
const SES_NS: &str = "http://ses.amazonaws.com/doc/2010-12-01/";
pub const V1_ACTIONS: &[&str] = &[
"VerifyEmailIdentity",
"VerifyDomainIdentity",
"VerifyDomainDkim",
"VerifyEmailAddress",
"ListVerifiedEmailAddresses",
"DeleteVerifiedEmailAddress",
"ListIdentities",
"GetIdentityVerificationAttributes",
"GetIdentityDkimAttributes",
"DeleteIdentity",
"SetIdentityDkimEnabled",
"SetIdentityNotificationTopic",
"SetIdentityFeedbackForwardingEnabled",
"GetIdentityNotificationAttributes",
"GetIdentityMailFromDomainAttributes",
"SetIdentityMailFromDomain",
"SendEmail",
"SendRawEmail",
"SendTemplatedEmail",
"SendBulkTemplatedEmail",
"SendBounce",
"CreateTemplate",
"GetTemplate",
"ListTemplates",
"DeleteTemplate",
"UpdateTemplate",
"CreateConfigurationSet",
"DeleteConfigurationSet",
"DescribeConfigurationSet",
"ListConfigurationSets",
"CreateConfigurationSetEventDestination",
"UpdateConfigurationSetEventDestination",
"DeleteConfigurationSetEventDestination",
"GetSendQuota",
"GetSendStatistics",
"GetAccountSendingEnabled",
"CreateReceiptRuleSet",
"DeleteReceiptRuleSet",
"DescribeReceiptRuleSet",
"ListReceiptRuleSets",
"CloneReceiptRuleSet",
"SetActiveReceiptRuleSet",
"ReorderReceiptRuleSet",
"CreateReceiptRule",
"DeleteReceiptRule",
"DescribeReceiptRule",
"UpdateReceiptRule",
"CreateReceiptFilter",
"DeleteReceiptFilter",
"ListReceiptFilters",
];
#[path = "v1_helpers.rs"]
mod v1_helpers;
pub use v1_helpers::*;
#[cfg(test)]
#[path = "v1_tests.rs"]
mod tests;