Module Vscode.TextDocument

include Interop.Js.T
type t
val t_of_js : Ojs.t -> t
val t_to_js : t -> Ojs.t
val uri : t -> Uri.t
val fileName : t -> string
val isUntitled : t -> bool
val languageId : t -> string
val version : t -> int
val isDirty : t -> bool
val isClosed : t -> bool
val save : t -> bool Promise.t
val eol : t -> EndOfLine.t
val lineCount : t -> int
val lineAt : t -> line:int -> TextLine.t
val lineAtPosition : t -> position:Position.t -> TextLine.t
val offsetAt : t -> position:Position.t -> int
val positionAt : t -> offset:int -> Position.t
val getText : t -> ?range:Range.t -> unit -> string
val getWordRangeAtPosition : t -> position:Position.t -> ?regex:Js_of_ocaml.Regexp.regexp -> unit -> Range.t option
val validateRange : t -> range:Range.t -> Range.t
val validatePosition : t -> position:Position.t -> Position.t