sig
  type t
  type flag =
      AugSaveBackup
    | AugSaveNewFile
    | AugTypeCheck
    | AugNoStdinc
    | AugSaveNoop
    | AugNoLoad
    | AugNoModlAutoload
    | AugEnableSpan
    | AugNoErrClose
    | AugTraceModuleLoading
  type error_code =
      AugErrInternal
    | AugErrPathX
    | AugErrNoMatch
    | AugErrMMatch
    | AugErrSyntax
    | AugErrNoLens
    | AugErrMXfm
    | AugErrNoSpan
    | AugErrMvDesc
    | AugErrCmdRun
    | AugErrBadArg
    | AugErrLabel
    | AugErrCpDesc
    | AugErrUnknown of int
  type transform_mode = Include | Exclude
  exception Error of Augeas.error_code * string * string * string * string
  type path = string
  type value = string
  val create : string -> string option -> Augeas.flag list -> Augeas.t
  val close : Augeas.t -> unit
  val defnode : Augeas.t -> string -> string -> string option -> int * bool
  val defvar : Augeas.t -> string -> string option -> int option
  val get : Augeas.t -> Augeas.path -> Augeas.value option
  val exists : Augeas.t -> Augeas.path -> bool
  val insert : Augeas.t -> ?before:bool -> Augeas.path -> string -> unit
  val label : Augeas.t -> Augeas.path -> string option
  val rm : Augeas.t -> Augeas.path -> int
  val matches : Augeas.t -> Augeas.path -> Augeas.path list
  val mv : Augeas.t -> Augeas.path -> Augeas.path -> unit
  val count_matches : Augeas.t -> Augeas.path -> int
  val save : Augeas.t -> unit
  val load : Augeas.t -> unit
  val set : Augeas.t -> Augeas.path -> Augeas.value option -> unit
  val setm :
    Augeas.t -> Augeas.path -> string option -> Augeas.value option -> int
  val transform :
    Augeas.t -> string -> string -> Augeas.transform_mode -> unit
  val source : Augeas.t -> Augeas.path -> Augeas.path option
end