1pub mod errors;
2pub mod stores;
3
4use smart_account_auth::CredentialData;
5pub use smart_account_auth::{Expiration, cosmwasm_std};
6pub use smart_account_auth::{Credential, CredentialId, CredentialName, CredentialInfo, CredentialRecord};
7pub use smart_account_auth::msgs::{MsgDataToSign, MsgDataToVerify, SignedDataMsg, AuthPayload};
8pub use saa_schema::{saa_type, saa_error, serde, thiserror, schemars, strum, strum_macros};
9
10
11#[cfg(feature = "session")]
12mod sessions;
13#[cfg(feature = "session")]
14pub use {
15 protos::{session_action, session_query},
16 sessions::*
17};
18
19
20
21
22
23
24#[saa_type]
25pub struct StoredCredentials {
26 pub has_natives : bool,
28
29 pub verifying_id : CredentialId,
31
32 pub records : Vec<CredentialRecord>,
34
35 pub account_number : u64,
37
38 #[cfg(feature = "session")]
41 pub sessions : Option<CredentialId>,
42}
43
44
45
46#[saa_type]
47pub enum UpdateOperation<D : serde::Serialize = CredentialData> {
48 Add(D),
49 Remove(Vec<crate::CredentialId>),
50}
51