Preserve type of function with metadata

Description

Currently, IWithMeta is implemented for functions by wrapping the function in a MetaFn type.

However, this breaks certain expectations about the typeof of the meta-fied value:

The primary case when this is not ideal is when interoping with JS code that does checks using typeof, like React does:

Ideally, with-meta would preserve the typeof value when possible.

Environment

N/A

Assignee

Unassigned

Reporter

Will Acton

Labels

Approval

None

Patch

None

Affects versions

Priority

Minor
Configure