module Ouroboros.Network.Handshake (HandshakeCallbacks (..)) where

import Ouroboros.Network.Handshake.Acceptable (Accept)

-- | A record that holds handshake callbacks.
--
data HandshakeCallbacks vData = HandshakeCallbacks {
    forall vData.
HandshakeCallbacks vData -> vData -> vData -> Accept vData
acceptCb :: vData -> vData -> Accept vData
  , forall vData. HandshakeCallbacks vData -> vData -> Bool
queryCb  :: vData -> Bool
  }