Module Uptime_service

module Blake2 : sig ... end
module Uptime_snark_worker : sig ... end
type block_data = {
block : string;
created_at : string;
peer_id : string;
snark_work : string option;
}
val block_data_to_yojson : block_data -> Yojson.Safe.t
val _ : block_data -> Yojson.Safe.t
module Proof_data : sig ... end
val sign_blake2_hash : private_key:Signature_lib.Schnorr.Legacy.Private_key.t -> Core_kernel.String.t -> Signature_lib.Schnorr.Legacy.Signature.t
val send_uptime_data : logger:Logger.t -> interruptor:'a Async_kernel.Deferred.t -> submitter_keypair:Signature_lib.Keypair.t -> url:Uri.t -> state_hash:Mina_base.State_hash.t -> produced:bool -> block_data -> ( unit, 'a ) Interruptible.t
val block_base64_of_breadcrumb : Transition_frontier.Breadcrumb.t -> string
val send_produced_block_at : logger:Logger.t -> interruptor:'a Async_kernel.Deferred.t -> url:Uri.t -> peer_id:string -> submitter_keypair:Signature_lib.Keypair.t -> block_produced_bvar: ( Transition_frontier.Breadcrumb.t, [> Core_kernel.read ] ) Async.Bvar.t -> Core.Time.t -> ( unit, 'b ) Interruptible.t
val send_block_and_transaction_snark : logger:Logger.t -> interruptor:'a Async_kernel.Deferred.t -> url:Uri.t -> snark_worker:Uptime_snark_worker.t -> transition_frontier: Transition_frontier.t option Pipe_lib.Broadcast_pipe.Reader.t -> peer_id:string -> submitter_keypair:Signature_lib.Keypair.t -> snark_work_fee:Currency.Fee.t -> ( unit, 'b ) Interruptible.t
val start : logger:Logger.t -> uptime_url:Uri.t option -> snark_worker_opt:Uptime_snark_worker.t option -> transition_frontier: Transition_frontier.t option Pipe_lib.Broadcast_pipe.Reader.t -> time_controller:Block_time.Controller.t -> block_produced_bvar: ( Transition_frontier.Breadcrumb.t, [> Core_kernel.read ] ) Async.Bvar.t -> uptime_submitter_keypair:Signature_lib.Keypair.t option -> get_next_producer_timing: ( unit -> Daemon_rpcs.Types.Status.Next_producer_timing.t option ) -> get_snark_work_fee:( unit -> Currency.Fee.t ) -> get_peer:( unit -> Network_peer.Peer.t option ) -> unit