let create: unit => t('a);let length: t('a) => int;let is_empty: t('a) => bool;let add: t('a) => elt('a) => unit;let add_iter: t('a) => ((elt('a) => unit) => 'x => unit) => 'x => unit;let max_elt: t('a) => option(elt('a));let get_max_elt: t('a) => elt('a);let pop_max: t('a) => option(elt('a));let remove_max: t('a) => unit;let clear: t('a) => unit;let copy: t('a) => t('a);let of_array: array(elt('a)) => t('a);let of_list: list(elt('a)) => t('a);let of_iter: ((elt('a) => unit) => 'x => unit) => 'x => t('a);let iter_unordered: (elt('a) => unit) => t('a) => unit;let fold_unordered: ('acc => elt('a) => 'acc) => 'acc => t('a) => 'acc;