type buffer
val vimInit : unit -> unitval vimInput : string -> unitval vimCommand : string -> unitval vimGetMode : unit -> Vim__.Types.modeval vimBufferOpen : string -> bufferval vimBufferGetId : buffer -> intval vimBufferGetById : int -> buffer optionval vimBufferGetCurrent : unit -> bufferval vimBufferGetFilename : buffer -> string optionval vimBufferGetFiletype : buffer -> string optionval vimBufferGetLine : buffer -> int -> stringval vimBufferGetLineCount : buffer -> intval vimBufferGetModified : buffer -> boolval vimBufferGetChangedTick : buffer -> intval vimBufferSetCurrent : buffer -> unitval vimCursorGetLine : unit -> intval vimCursorGetColumn : unit -> intval vimSearchGetMatchingPair : unit -> (int * int) optionval vimSearchGetHighlights : int -> int -> (int * int * int * int) arrayval vimVisualGetRange : unit -> int * int * int * int
type bufferUpdateCallback = buffer -> int -> int -> int -> unit