#![cfg_attr(docsrs, feature(doc_auto_cfg))] #![doc = include_str!("../README.md")] #![deny(missing_docs)] mod transaction; /* // The signers used by a Processor, key-scoped. struct KeySigners { transaction: AttemptManager, substrate: AttemptManager>, cosigner: AttemptManager>, } /// The signers used by a protocol. pub struct Signers(HashMap, KeySigners>); impl Signers { /// Create a new set of signers. pub fn new(db: D) -> Self { // TODO: Load the registered keys // TODO: Load the transactions being signed // TODO: Load the batches being signed todo!("TODO") } /// Register a transaction to sign. pub fn sign_transaction(&mut self) -> Vec { todo!("TODO") } /// Mark a transaction as signed. pub fn signed_transaction(&mut self) { todo!("TODO") } /// Register a batch to sign. pub fn sign_batch(&mut self, key: KeyFor, batch: Batch) -> Vec { todo!("TODO") } /// Mark a batch as signed. pub fn signed_batch(&mut self, batch: u32) { todo!("TODO") } /// Register a slash report to sign. pub fn sign_slash_report(&mut self) -> Vec { todo!("TODO") } /// Mark a slash report as signed. pub fn signed_slash_report(&mut self) { todo!("TODO") } /// Start a cosigning protocol. pub fn cosign(&mut self) { todo!("TODO") } /// Handle a message for a signing protocol. pub fn handle(&mut self, msg: CoordinatorMessage) -> Vec { todo!("TODO") } } */