sig
  module State :
    sig
      type t = Stdlib.Random.State.t
      val make : int array -> BatRandom.Incubator.Private_state_enums.State.t
      val make_self_init :
        unit -> BatRandom.Incubator.Private_state_enums.State.t
      val copy :
        BatRandom.Incubator.Private_state_enums.State.t ->
        BatRandom.Incubator.Private_state_enums.State.t
      val bits : BatRandom.Incubator.Private_state_enums.State.t -> int
      val int : BatRandom.Incubator.Private_state_enums.State.t -> int -> int
      val int32 :
        BatRandom.Incubator.Private_state_enums.State.t ->
        Stdlib.Int32.t -> Stdlib.Int32.t
      val nativeint :
        BatRandom.Incubator.Private_state_enums.State.t ->
        Stdlib.Nativeint.t -> Stdlib.Nativeint.t
      val int64 :
        BatRandom.Incubator.Private_state_enums.State.t ->
        Stdlib.Int64.t -> Stdlib.Int64.t
      val float :
        BatRandom.Incubator.Private_state_enums.State.t -> float -> float
      val bool : BatRandom.Incubator.Private_state_enums.State.t -> bool
      val char : BatRandom.Incubator.Private_state_enums.State.t -> char
      val enum_bits :
        BatRandom.Incubator.Private_state_enums.State.t ->
        unit -> int BatEnum.t
      val enum_int :
        BatRandom.Incubator.Private_state_enums.State.t ->
        int -> int BatEnum.t
      val enum_bool :
        BatRandom.Incubator.Private_state_enums.State.t ->
        unit -> bool BatEnum.t
      val enum_float :
        BatRandom.Incubator.Private_state_enums.State.t ->
        float -> float BatEnum.t
      val enum_int32 :
        BatRandom.Incubator.Private_state_enums.State.t ->
        Stdlib.Int32.t -> Stdlib.Int32.t BatEnum.t
      val enum_int64 :
        BatRandom.Incubator.Private_state_enums.State.t ->
        Stdlib.Int64.t -> Stdlib.Int64.t BatEnum.t
      val enum_nativeint :
        BatRandom.Incubator.Private_state_enums.State.t ->
        Stdlib.Nativeint.t -> Stdlib.Nativeint.t BatEnum.t
      val enum_char :
        BatRandom.Incubator.Private_state_enums.State.t ->
        unit -> char BatEnum.t
      val perturb :
        BatRandom.Incubator.Private_state_enums.State.t ->
        BatRandom.Incubator.Private_state_enums.State.t
    end
  val enum_bits : unit -> int BatEnum.t
  val enum_int : int -> int BatEnum.t
  val enum_bool : unit -> bool BatEnum.t
  val enum_float : float -> float BatEnum.t
  val enum_int32 : Stdlib.Int32.t -> Stdlib.Int32.t BatEnum.t
  val enum_int64 : Stdlib.Int64.t -> Stdlib.Int64.t BatEnum.t
  val enum_nativeint : Stdlib.Nativeint.t -> Stdlib.Nativeint.t BatEnum.t
  val enum_char : unit -> char BatEnum.t
end