val alist_lookup : string -> (string * 'a1) list -> 'a1 optionval alist_set : string -> 'a1 -> (string * 'a1) list -> (string * 'a1) listtype attr = (string * string) listmodule Attr : sig ... endtype spot = {spot_line : int;spot_rem : int;
}type span = {span_start : spot;span_stop : spot;
}type coq_InlineCursor = {cursor_start : spot;cursor_stop : spot;cursor_origin : spot;
}type syntax_role = | RAttrSpec| ROpenFence| RCloseFence
type 'a node = | Node of pos * attr * 'a
val node_contents : 'a1 node -> 'a1type coq_PosPolicy = {mkpos : provenance -> pos;pos_records : bool;
}type math_style = | DisplayMath| InlineMath
type target = | Direct of string| Reference of string
type quote_type = | SingleQuotes| DoubleQuotes
type list_spacing = | Tight| Loose
type ordered_list_style = | Decimal| LetterUpper| LetterLower| RomanUpper| RomanLower
type ordered_list_delim = | RightPeriod| RightParen| LeftRightParen
type task_status = | Complete| Incomplete
type callout_fold = | FoldExpanded| FoldCollapsed
type align = | AlignLeft| AlignRight| AlignCenter| AlignDefault
type cell_type = | HeadCell| BodyCell
val map_acc : ('a2 -> 'a1 -> 'a1 * 'a3) -> 'a2 list -> 'a1 -> 'a1 * 'a3 listval map_acc_node :
('a2 -> 'a1 -> 'a1 * 'a2) ->
'a2 node ->
'a1 ->
'a1 * 'a2 nodeval map_acc_snd :
('a3 -> 'a1 -> 'a1 * 'a3) ->
('a2 * 'a3) ->
'a1 ->
'a1 * ('a2 * 'a3)val invisible_block : block -> boolmodule Shift : sig ... endval rev_chars : char list -> stringval words : (char -> bool) -> string -> string listval is_label_ws : char -> boolval normalize_label : string -> stringtype note_map = (string * blocks) listtype reference_map = (string * (string * attr)) list