web3-0.9.0.0: src/Network/Polkadot/Api/Engine.hs
{-# LANGUAGE FlexibleContexts #-}
{-# LANGUAGE OverloadedStrings #-}
-- |
-- Module : Network.Polkadot.Api.Engine
-- Copyright : Alexander Krupenkin 2016
-- License : BSD3
--
-- Maintainer : mail@akru.me
-- Stability : experimental
-- Portability : portable
--
-- Polkadot RPC methods with `engine` prefix.
--
module Network.Polkadot.Api.Engine where
import Data.ByteArray.HexString (HexString)
import Network.JsonRpc.TinyClient (JsonRpc (..))
import Network.Polkadot.Api.Types (CreatedBlock)
-- | Instructs the manual-seal authorship task to create a new block.
createBlock :: JsonRpc m
=> Bool
-- ^ Create empty
-> Bool
-- ^ Finalize
-> Maybe HexString
-- ^ Parent hash
-> m CreatedBlock
{-# INLINE createBlock #-}
createBlock = remote "engine_createBlock"
-- | Instructs the manual-seal authorship task to finalize a block.
finalizeBlock :: JsonRpc m
=> HexString
-- ^ Block hash
-> Maybe HexString
-- ^ Justification
-> m Bool
{-# INLINE finalizeBlock #-}
finalizeBlock = remote "engine_finalizeBlock"