That is really interesting, I'm building something with Proxies for any Type and async function proxified worked for me. Mind if I hit you up for a chat?
const handler = { apply: () => { console.log('ok') } };
const foo = new Proxy(() => {}, handler);
const bar = new Proxy({}, handler);
> foo()
< ok
> bar()
< VM313:1 Uncaught TypeError: bar is not a function
at <anonymous>:1:1