Module Persistent_frontier.Instance

val assert_no_sync : Instance_type.t -> ( unit, [> `Sync_cannot_be_running ] ) Core._result
val assert_sync : Instance_type.t -> f: ( Persistent_frontier__Sync.t -> ( 'a, [> `Sync_must_be_running ] as 'b ) Core._result Async_kernel__Deferred.t ) -> ( 'a, 'b ) Core._result Async_kernel__Deferred.t
val start_sync : constraint_constants:Genesis_constants.Constraint_constants.t -> Instance_type.t -> persistent_root_instance:Persistent_root.Instance.t -> ( unit, [> `Sync_cannot_be_running ] ) Core_kernel__Result.t
val stop_sync : Instance_type.t -> ( unit, [> `Sync_must_be_running ] ) Core._result Async_kernel__Deferred.t
val notify_sync : Instance_type.t -> diffs:Frontier_base.Diff.Lite.E.t list -> ( unit, [> `Sync_must_be_running ] ) Core._result Async_kernel__Deferred.t
val destroy : Instance_type.t -> unit Async_kernel__Deferred.t
val check_database : Instance_type.t -> genesis_state_hash:Mina_base.State_hash.t -> ( Mina_base.Frozen_ledger_hash.t, [> `Corrupt of [> `Not_found of [> `Arcs of Mina_base.State_hash.t | `Best_tip | `Best_tip_transition | `Frontier_hash | `Protocol_states_for_root_scan_state | `Root | `Root_transition | `Transition of Mina_base.State_hash.t ] | `Raised of Core_kernel.Error.t ] | `Genesis_state_mismatch of Mina_base.State_hash.t | `Invalid_version | `Not_initialized ] ) Core_kernel.Result.t
val get_root_transition : Instance_type.t -> ( Mina_block.Validated.t, string ) Core.Result.t
val fast_forward : Instance_type.t -> Frontier_base.Root_identifier.Stable.Latest.t -> ( unit, [> `Bootstrap_required | `Failure of string | `Sync_cannot_be_running ] ) Core.Result.t
val load_full_frontier : Instance_type.t -> context:(module CONTEXT) -> root_ledger:Mina_ledger.Ledger.Db.t -> consensus_local_state:Consensus.Data.Local_state.t -> max_length:int -> ignore_consensus_local_state:bool -> persistent_root_instance:Persistent_root.Instance.t -> ( Full_frontier.t * Extensions.t, [> `Failure of string | `Sync_cannot_be_running ] ) Async_kernel__Deferred_result.t