`sig
type t
val nil : Text_block.t
val fill : char -> width:int -> height:int -> Text_block.t
val space : width:int -> height:int -> Text_block.t
type valign = [ `Bottom | `Center | `Top ]
type halign = [ `Center | `Left | `Right ]
val text : ?align:Text_block.halign -> string -> Text_block.t
val vcat :
?align:Text_block.halign ->
?sep:Text_block.t -> Text_block.t list -> Text_block.t
val hcat :
?align:Text_block.valign ->
?sep:Text_block.t -> Text_block.t list -> Text_block.t
val width : Text_block.t -> int
val height : Text_block.t -> int
val valign : Text_block.valign -> Text_block.t list -> Text_block.t list
val halign : Text_block.halign -> Text_block.t list -> Text_block.t list
val hstrut : int -> Text_block.t
val vstrut : int -> Text_block.t
val render : Text_block.t -> string
val compress_table_header :
?sep_width:int ->
[ `Cols of (Text_block.t * Text_block.t list * Text_block.halign) list ] ->
[ `Header of Text_block.t ] * [ `Rows of Text_block.t list ]
end`