sig
  exception Lirc of string
  exception DaemonDown
  val connect :
    string ->
    ?config:string -> ?check:(string -> bool) -> (string -> bool) -> unit
  type t
  val init : string -> unit
  val deinit : unit -> unit
  val readconfig :
    ?check:(string -> bool) -> ?config:string -> unit -> Lirc.t
  val freeconfig : Lirc.t -> unit
  val nextcode : Lirc.t -> string list
end