iota_types/account_abstraction/
account.rs1use move_core_types::{ident_str, identifier::IdentStr, language_storage::StructTag};
5use serde::{Deserialize, Serialize};
6
7use crate::IOTA_FRAMEWORK_ADDRESS;
8
9pub const ACCOUNT_MODULE_NAME: &IdentStr = ident_str!("account");
10pub const AUTHENTICATOR_FUNCTION_REF_V1_KEY_STRUCT_NAME: &IdentStr =
11 ident_str!("AuthenticatorFunctionRefV1Key");
12
13#[derive(Debug, Default, Serialize, Deserialize, Clone, Eq, PartialEq)]
14pub struct AuthenticatorFunctionRefV1Key {
15 dummy_field: bool,
19}
20
21impl AuthenticatorFunctionRefV1Key {
22 pub fn tag() -> StructTag {
23 StructTag {
24 address: IOTA_FRAMEWORK_ADDRESS,
25 module: ACCOUNT_MODULE_NAME.to_owned(),
26 name: AUTHENTICATOR_FUNCTION_REF_V1_KEY_STRUCT_NAME.to_owned(),
27 type_params: Vec::new(),
28 }
29 }
30
31 pub fn to_bcs_bytes(&self) -> Vec<u8> {
32 bcs::to_bytes(&self).unwrap()
33 }
34}