monzo_webhook/
metadata.rs

1pub mod faster_payment;
2pub mod flex_transaction;
3pub mod ledger;
4pub mod merchant_transaction;
5pub mod money_transfer;
6pub mod monzo_to_monzo;
7pub mod shared_metadata;
8
9// no_extra is safe here as spare data is picked up elsewhere
10struct_with_extra! { no_extra WebhookMetadata,
11    #[serde(flatten)]
12    subtype: WebhookMetadataSubtype,
13}
14
15enum_with_extra! {
16    untagged WebhookMetadataSubtype,
17    FasterPayment(faster_payment::FasterPayment),
18    MonzoToMonzoTransfer(monzo_to_monzo::MonzoToMonzoTransfer),
19    MoneyTransfer(money_transfer::MoneyTransfer),
20    MerchantTransaction(merchant_transaction::MerchantTransaction),
21    FlexTransaction(flex_transaction::FlexTransaction),
22}