-type type() :: #{'__type__' => 'clojerl.Cons', first => any(), more => any(), meta => undefined | any()}.
-spec '__new__'(any(), any()) -> type().