# Pallet ISMP RPC Exports a jsonrpsee handler implementation which provides the neccessary RPC interface for handling ISMP RPC requests. ## Usage ```rust,ignore /// Full client dependencies pub struct FullDeps { /// The client instance to use. pub client: Arc, /// Transaction pool instance. pub pool: Arc

, /// Whether to deny unsafe calls pub deny_unsafe: DenyUnsafe, /// Backend used by the node. pub backend: Arc, } /// Instantiate all full RPC extensions. pub fn create_full( deps: FullDeps, ) -> Result, Box> where C: ProvideRuntimeApi, C: HeaderBackend + HeaderMetadata + 'static, C: Send + Sync + 'static, C::Api: substrate_frame_rpc_system::AccountNonceApi, C::Api: pallet_transaction_payment_rpc::TransactionPaymentRuntimeApi, C::Api: BlockBuilder, // pallet_ismp_runtime_api bound C::Api: pallet_ismp_runtime_api::IsmpRuntimeApi, P: TransactionPool + 'static, { use pallet_transaction_payment_rpc::{TransactionPayment, TransactionPaymentApiServer}; use substrate_frame_rpc_system::{System, SystemApiServer}; let mut module = RpcModule::new(()); let FullDeps { client, pool, deny_unsafe, backend } = deps; module.merge(System::new(client.clone(), pool, deny_unsafe).into_rpc())?; module.merge(TransactionPayment::new(client.clone()).into_rpc())?; // IsmpRpcHander goes here module.merge(IsmpRpcHandler::new(client, backend)?.into_rpc())?; Ok(module) } ``` ## License This library is licensed under the Apache 2.0 License, Copyright (c) 2024 Polytope Labs.