sigil-node · mail_durable
Source declarations, signatures and documentation for mail_durable.
Source: sigil/node/sigil-node/src/mail_durable.rs. SHA-256: d3fc8654dda4fed777e4aebb1fab38b3dc7cd285e2a429b449718b9e2fe63ca4.
This reference follows declared source modules, retains conditional attributes, and includes public declarations and implementation methods. Private-module re-exports and trait resolution require the compiler; this is a source reference, not a claim that every listed item is a root import. Function bodies and constant values are omitted.
mail_durable::ArcMailStore
pub type ArcMailStore = Arc<DurableMailStore>;Source line: 18.
mail_durable::MailEvent
#[derive(Debug, Clone, serde::Serialize, serde::Deserialize)]
pub struct MailEvent {
pub block_height: u64,
pub seq: u64,
pub topic: String,
pub actor_did: String,
pub mailbox_id: Option<String>,
pub name: Option<String>,
pub payload: serde_json::Value
}Source line: 83.
mail_durable::MailBatchOp
#[derive(Debug, Clone)]
pub enum MailBatchOp {
PutMailbox(Arc<MailboxCapabilityRecord>),
IndexOwner {
owner_did: String,
mailbox_id: String,
},
IndexWallet {
wallet_address: String,
mailbox_id: String,
},
PutAlias(Arc<MailAliasRecord>),
PutPolicy(Arc<MailboxPolicyRecord>),
SetCurrentPolicy {
mailbox_id: String,
version: u64,
},
PutKey(Arc<MailPublicKeyRecord>),
SetCurrentKey {
mailbox_id: String,
purpose: String,
device_commitment: String,
key_id: String,
},
PutDelivery(Arc<DeliveryCommitmentRecord>),
IndexDeliveryRecipient {
mailbox_id: String,
height: u64,
delivery_id: String,
},
IndexDeliverySender {
sender_route_id: String,
height: u64,
delivery_id: String,
},
PutEconomics(Arc<SenderEconomicsRecord>),
PutDelegation(Arc<MailDelegationGrant>),
IndexDelegationMailbox {
mailbox_id: String,
grant_id: String,
},
PutAbuse(Arc<AbuseReport>),
PutSnsName(Arc<SnsNameRecord>),
IndexSnsOwner {
owner_did: String,
name_hash: String,
},
SetSnsPrimary {
subject_did: String,
name_hash: String,
},
PutSnsRecord(Arc<SnsResolverRecord>),
DeleteSnsRecord {
name_hash: String,
kind: String,
},
PutSnsDelegation(Arc<NameDelegation>),
PutSnsRegistrationCommitment(Arc<SnsNameRegistrationCommitment>),
PutSnsSealedBid(Arc<SnsSealedBidCommitment>),
PutSnsAuction(Arc<SnsAuctionRecord>),
PutNonce {
actor_did: String,
nonce: String,
},
AppendEvent(Arc<MailEvent>),
}Source line: 94.
mail_durable::MailWriteBatch
#[derive(Debug, Default, Clone)]
pub struct MailWriteBatch {
pub ops: Vec<MailBatchOp>
}Source line: 161.
mail_durable::MailWriteBatch::new
pub fn new() -> Self;Source line: 166.
mail_durable::MailWriteBatch::push
pub fn push(&mut self, op: MailBatchOp);Source line: 170.
mail_durable::DurableMailStore
pub struct DurableMailStore {
}Source line: 198.
mail_durable::DurableMailStore::open
pub fn open(path: &Path) -> Result<Self, NodeError>;Source line: 204.
mail_durable::DurableMailStore::get_mailbox
pub fn get_mailbox(
&self,
mailbox_id: &str,
) -> Result<Option<MailboxCapabilityRecord>, NodeError>;Source line: 258.
mail_durable::DurableMailStore::list_all_mailboxes
pub fn list_all_mailboxes(&self) -> Result<Vec<MailboxCapabilityRecord>, NodeError>;Source line: 267.
mail_durable::DurableMailStore::list_all_aliases
pub fn list_all_aliases(&self) -> Result<Vec<MailAliasRecord>, NodeError>;Source line: 276.
mail_durable::DurableMailStore::list_mailboxes_by_owner
pub fn list_mailboxes_by_owner(
&self,
subject_did: &str,
) -> Result<Vec<MailboxCapabilityRecord>, NodeError>;Source line: 285.
mail_durable::DurableMailStore::get_policy
pub fn get_policy(
&self,
mailbox_id: &str,
version: Option<u64>,
) -> Result<Option<MailboxPolicyRecord>, NodeError>;Source line: 302.
mail_durable::DurableMailStore::list_all_policies
pub fn list_all_policies(&self) -> Result<Vec<MailboxPolicyRecord>, NodeError>;Source line: 328.
mail_durable::DurableMailStore::list_keys
pub fn list_keys(
&self,
mailbox_id: &str,
purpose: Option<&str>,
) -> Result<Vec<MailPublicKeyRecord>, NodeError>;Source line: 337.
mail_durable::DurableMailStore::list_all_keys
pub fn list_all_keys(&self) -> Result<Vec<MailPublicKeyRecord>, NodeError>;Source line: 354.
mail_durable::DurableMailStore::get_key
pub fn get_key(
&self,
mailbox_id: &str,
key_id: &str,
) -> Result<Option<MailPublicKeyRecord>, NodeError>;Source line: 363.
mail_durable::DurableMailStore::get_delivery
pub fn get_delivery(
&self,
delivery_id: &str,
) -> Result<Option<DeliveryCommitmentRecord>, NodeError>;Source line: 373.
mail_durable::DurableMailStore::list_all_deliveries
pub fn list_all_deliveries(&self) -> Result<Vec<DeliveryCommitmentRecord>, NodeError>;Source line: 382.
mail_durable::DurableMailStore::list_deliveries_by_recipient
pub fn list_deliveries_by_recipient(
&self,
mailbox_id: &str,
) -> Result<Vec<DeliveryCommitmentRecord>, NodeError>;Source line: 391.
mail_durable::DurableMailStore::list_deliveries_by_sender
pub fn list_deliveries_by_sender(
&self,
sender_route_id: &str,
) -> Result<Vec<DeliveryCommitmentRecord>, NodeError>;Source line: 398.
mail_durable::DurableMailStore::get_economics
pub fn get_economics(
&self,
sender_route_id: &str,
recipient_mailbox_id: &str,
) -> Result<Option<SenderEconomicsRecord>, NodeError>;Source line: 421.
mail_durable::DurableMailStore::list_all_economics
pub fn list_all_economics(&self) -> Result<Vec<SenderEconomicsRecord>, NodeError>;Source line: 434.
mail_durable::DurableMailStore::get_delegation
pub fn get_delegation(&self, grant_id: &str) -> Result<Option<MailDelegationGrant>, NodeError>;Source line: 443.
mail_durable::DurableMailStore::list_all_delegations
pub fn list_all_delegations(&self) -> Result<Vec<MailDelegationGrant>, NodeError>;Source line: 449.
mail_durable::DurableMailStore::list_delegations
pub fn list_delegations(
&self,
mailbox_id: &str,
) -> Result<Vec<MailDelegationGrant>, NodeError>;Source line: 458.
mail_durable::DurableMailStore::get_abuse
pub fn get_abuse(&self, abuse_id: &str) -> Result<Option<AbuseReport>, NodeError>;Source line: 476.
mail_durable::DurableMailStore::list_all_abuse
pub fn list_all_abuse(&self) -> Result<Vec<AbuseReport>, NodeError>;Source line: 482.
mail_durable::DurableMailStore::has_nonce
pub fn has_nonce(&self, actor_did: &str, nonce: &str) -> Result<bool, NodeError>;Source line: 491.
mail_durable::DurableMailStore::get_sns_name
pub fn get_sns_name(&self, name_hash: &str) -> Result<Option<SnsNameRecord>, NodeError>;Source line: 497.
mail_durable::DurableMailStore::list_all_sns_names
pub fn list_all_sns_names(&self) -> Result<Vec<SnsNameRecord>, NodeError>;Source line: 503.
mail_durable::DurableMailStore::get_sns_records
pub fn get_sns_records(&self, name_hash: &str) -> Result<Vec<SnsResolverRecord>, NodeError>;Source line: 512.
mail_durable::DurableMailStore::list_all_sns_records
pub fn list_all_sns_records(&self) -> Result<Vec<SnsResolverRecord>, NodeError>;Source line: 522.
mail_durable::DurableMailStore::list_all_sns_delegations
pub fn list_all_sns_delegations(&self) -> Result<Vec<NameDelegation>, NodeError>;Source line: 531.
mail_durable::DurableMailStore::get_sns_registration_commitment
pub fn get_sns_registration_commitment(
&self,
commitment: &str,
) -> Result<Option<SnsNameRegistrationCommitment>, NodeError>;Source line: 540.
mail_durable::DurableMailStore::list_all_sns_registration_commitments
pub fn list_all_sns_registration_commitments(
&self,
) -> Result<Vec<SnsNameRegistrationCommitment>, NodeError>;Source line: 549.
mail_durable::DurableMailStore::get_sns_sealed_bid
pub fn get_sns_sealed_bid(
&self,
commitment: &str,
) -> Result<Option<SnsSealedBidCommitment>, NodeError>;Source line: 560.
mail_durable::DurableMailStore::list_all_sns_sealed_bids
pub fn list_all_sns_sealed_bids(&self) -> Result<Vec<SnsSealedBidCommitment>, NodeError>;Source line: 569.
mail_durable::DurableMailStore::get_sns_auction
pub fn get_sns_auction(&self, auction_id: &str) -> Result<Option<SnsAuctionRecord>, NodeError>;Source line: 578.
mail_durable::DurableMailStore::list_all_sns_auctions
pub fn list_all_sns_auctions(&self) -> Result<Vec<SnsAuctionRecord>, NodeError>;Source line: 584.
mail_durable::DurableMailStore::commit_batch
pub fn commit_batch(&self, batch: &MailWriteBatch) -> Result<(), NodeError>;Source line: 593.