sig
  val encode_sql_t :
    [< `Binary of 'a
     | `Blob of string
     | `Bool of bool
     | `Date of Dbi.date
     | `Decimal of Dbi.Decimal.t
     | `Float of float
     | `Int of int
     | `Interval of 'b
     | `Null
     | `String of string
     | `Time of Dbi.time
     | `Timestamp of 'c
     | `Unknown of string ] ->
    string
  class statement :
    Dbi.connection ->
    Sqlite.db ->
    string ->
    object
      val mutable cur_vm : Sqlite.vm option
      val mutable executed : bool
      val mutable next_row : string option array option
      method connection : Dbi.connection
      method execute : Dbi.sql_t list -> unit
      method fetch1 : unit -> Dbi.sql_t list
      method fetch1hash : unit -> (string * Dbi.sql_t) list
      method fetch1int : unit -> int
      method fetch1string : unit -> string
      method fetchall : unit -> Dbi.sql_t list list
      method finish : unit -> unit
      method fold_left : ('-> Dbi.sql_t list -> 'a) -> '-> 'a
      method fold_right : (Dbi.sql_t list -> '-> 'b) -> '-> 'b
      method iter : (Dbi.sql_t list -> unit) -> unit
      method map : (Dbi.sql_t list -> 'c) -> 'c list
      method names : string list
      method serial : string -> int
    end
  class connection :
    ?host:string ->
    ?port:string ->
    ?user:string ->
    ?password:string ->
    string ->
    object
      method close : unit -> unit
      method closed : bool
      method commit : unit -> unit
      method database : string
      method database_type : string
      method debug : bool
      method ex : string -> Dbi.sql_t list -> Dbi.statement
      method host : string option
      method id : int
      method password : string option
      method ping : unit -> bool
      method port : string option
      method prepare : string -> Dbi.statement
      method prepare_cached : string -> Dbi.statement
      method register_postrollback :
        (unit -> unit) -> Dbi.postrollback_handle
      method register_precommit : (unit -> unit) -> Dbi.precommit_handle
      method rollback : unit -> unit
      method set_debug : bool -> unit
      method unregister_postrollback : Dbi.postrollback_handle -> unit
      method unregister_precommit : Dbi.precommit_handle -> unit
      method user : string option
    end
  val connect :
    ?host:string ->
    ?port:string ->
    ?user:string -> ?password:string -> string -> Dbi_sqlite.connection
  val close : Dbi_sqlite.connection -> unit
  val closed : Dbi_sqlite.connection -> bool
  val commit : Dbi_sqlite.connection -> unit
  val ping : Dbi_sqlite.connection -> bool
  val rollback : Dbi_sqlite.connection -> unit
end