#![warn(missing_docs)]
#![cfg_attr(not(feature = "std"), no_std)]
use tp_runtime::{
generic, traits::{Verify, BlakeTwo256, IdentifyAccount}, OpaqueExtrinsic, MultiSignature
};
pub type BlockNumber = u32;
pub type Signature = MultiSignature;
pub type AccountId = <<Signature as Verify>::Signer as IdentifyAccount>::AccountId;
pub type AccountIndex = u32;
pub type Balance = u128;
pub type Moment = u64;
pub type Index = u32;
pub type Hash = tet_core::H256;
pub type Timestamp = u64;
pub type DigestItem = generic::DigestItem<Hash>;
pub type Header = generic::Header<BlockNumber, BlakeTwo256>;
pub type Block = generic::Block<Header, OpaqueExtrinsic>;
pub type BlockId = generic::BlockId<Block>;
pub mod report {
use super::{Signature, Verify};
use fabric_system::offchain::AppCrypto;
use tet_core::crypto::{key_types, KeyTypeId};
pub const KEY_TYPE: KeyTypeId = key_types::REPORTING;
mod app {
use tet_application_crypto::{app_crypto, sr25519};
app_crypto!(sr25519, super::KEY_TYPE);
}
pub type ReporterId = app::Public;
pub struct ReporterAppCrypto;
impl AppCrypto<<Signature as Verify>::Signer, Signature> for ReporterAppCrypto {
type RuntimeAppPublic = ReporterId;
type GenericSignature = tet_core::sr25519::Signature;
type GenericPublic = tet_core::sr25519::Public;
}
}