`sig
exception Invalid_char
exception Invalid_table
type encoding_table = char array
type decoding_table = int array
val str_encode : ?tbl:encoding_table -> string -> string
val str_decode : ?tbl:decoding_table -> string -> string
val encode : ?tbl:encoding_table -> 'a BatIO.output -> 'a BatIO.output
val decode : ?tbl:decoding_table -> BatIO.input -> BatIO.input
val make_decoding_table : encoding_table -> decoding_table
end`