1use saa_schema::saa_type;
2use crate::cfg_mod_use;
3
4cfg_mod_use!("passkeys", passkey);
5cfg_mod_use!("eth_typed_data", eip712);
6
7
8#[saa_type(no_deny)]
9#[non_exhaustive]
10pub enum InfoExtension {
11
12 #[cfg(feature = "passkeys")]
13 Passkey(passkey::PasskeyInfo),
14
15 #[cfg(feature = "eth_typed_data")]
16 EthTypedData(eip712::EthTypedInfo),
17
18 Custom(crate::Binary),
19}
20
21
22
23#[saa_type(no_deny)]
24#[non_exhaustive]
25pub enum PayloadExtension {
26
27 #[cfg(feature = "passkeys")]
28 Passkey(passkey::PasskeyPayload),
29
30 #[cfg(feature = "eth_typed_data")]
31 EthTypedData(eip712::EthTypedPayload),
32
33 Custom(crate::Binary),
34}
35