-module(fp_gl@models). -compile(no_auto_import). -export_type([semigroup/1, ord/1, monoid/1]). -type semigroup(ENZ) :: {semigroup, fun((ENZ, ENZ) -> ENZ)}. -type ord(EOA) :: {ord, fun((EOA, EOA) -> gleam@order:order())}. -type monoid(EOB) :: {monoid, fun((EOB, EOB) -> EOB), EOB}.