git.delta.rocks / unique-network / refs/commits / a1bfaca8f147

difftreelog

source

primitives/pov-estimate-rpc/src/lib.rs1.4 KiBsourcehistory
1// Copyright 2019-2022 Unique Network (Gibraltar) Ltd.2// This file is part of Unique Network.34// Unique Network is free software: you can redistribute it and/or modify5// it under the terms of the GNU General Public License as published by6// the Free Software Foundation, either version 3 of the License, or7// (at your option) any later version.89// Unique Network is distributed in the hope that it will be useful,10// but WITHOUT ANY WARRANTY; without even the implied warranty of11// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the12// GNU General Public License for more details.1314// You should have received a copy of the GNU General Public License15// along with Unique Network. If not, see <http://www.gnu.org/licenses/>.1617#![cfg_attr(not(feature = "std"), no_std)]1819use scale_info::TypeInfo;20use sp_std::vec::Vec;2122#[cfg(feature = "std")]23use serde::Serialize;2425use sp_runtime::ApplyExtrinsicResult;2627#[cfg_attr(feature = "std", derive(Serialize))]28#[derive(Debug, TypeInfo)]29pub struct PovInfo {30	pub proof_size: u64,31	pub compact_proof_size: u64,32	pub compressed_proof_size: u64,33	pub results: Vec<ApplyExtrinsicResult>,34	pub key_values: Vec<TrieKeyValue>,35}3637#[cfg_attr(feature = "std", derive(Serialize))]38#[derive(Debug, TypeInfo)]39pub struct TrieKeyValue {40	pub key: Vec<u8>,41	pub value: Vec<u8>,42}4344sp_api::decl_runtime_apis! {45	pub trait PovEstimateApi {46		fn pov_estimate(uxt: Vec<u8>) -> ApplyExtrinsicResult;47	}48}