Type Alias GuestInterface<T>
GuestInterface<T>: { [K in keyof T]: T[K] extends ((...args: any[]) => Vow<infer R>) ? ((...args: Parameters<T[K]>) => Promise<R>) : T[K] extends HostAsyncFuncWrapper ? GuestOf<T[K]> : T[K] extends ((...args: any[]) => infer R) ? T[K] : T[K] extends object ? GuestInterface<T[K]> : T[K]}
Convert an entire Host interface into what the Guest will receive.