pub fn run_grandpa_observer<BE, Block: BlockT, Client, N, S, SC>(
    config: Config,
    link: LinkHalf<Block, Client, SC>,
    network: N,
    sync: S,
    notification_service: Box<dyn NotificationService>
) -> Result<impl Future<Output = ()> + Send>
where BE: Backend<Block> + Unpin + 'static, N: NetworkT<Block>, S: SyncingT<Block>, SC: SelectChain<Block>, NumberFor<Block>: BlockNumberOps, Client: ClientForGrandpa<Block, BE> + 'static,
Expand description

Run a GRANDPA observer as a task, the observer will finalize blocks only by listening for and validating GRANDPA commits instead of following the full protocol. Provide configuration and a link to a block import worker that has already been instantiated with block_import. NOTE: this is currently not part of the crate’s public API since we don’t consider it stable enough to use on a live network.