get_polymorphic_module(String.t() | atom() | map()) :: atom()
get_polymorphic_type(module() | struct()) :: atom()