@@ -2,6 +2,10 @@ use serde::{Deserialize, Serialize};
22use starknet_api:: block:: BlockNumber ;
33use starknet_api:: core:: { GlobalRoot , StateDiffCommitment } ;
44use starknet_api:: state:: ThinStateDiff ;
5+ #[ cfg( feature = "os_input" ) ]
6+ pub use starknet_committer:: block_committer:: input:: AccessedKeys ;
7+ #[ cfg( feature = "os_input" ) ]
8+ use starknet_committer:: patricia_merkle_tree:: types:: StarknetForestProofs ;
59
610#[ derive( Clone , Debug , Serialize , Deserialize ) ]
711pub struct CommitBlockRequest {
@@ -32,3 +36,19 @@ pub enum RevertBlockResponse {
3236 // Nothing to revert. A future block that has not been committed.
3337 Uncommitted ,
3438}
39+
40+ /// Commit a block and return merged Patricia witness proofs for OS input (pre- and post-commit
41+ /// paths).
42+ #[ cfg( feature = "os_input" ) ]
43+ #[ derive( Clone , Debug , Serialize , Deserialize ) ]
44+ pub struct ReadPathsAndCommitBlockRequest {
45+ pub commit : CommitBlockRequest ,
46+ pub accessed_keys : AccessedKeys ,
47+ }
48+
49+ #[ cfg( feature = "os_input" ) ]
50+ #[ derive( Clone , Debug , Serialize , Deserialize ) ]
51+ pub struct ReadPathsAndCommitBlockResponse {
52+ pub global_root : GlobalRoot ,
53+ pub patricia_proofs : StarknetForestProofs ,
54+ }
0 commit comments