package test:async-server; interface async { record sync { foo: string, } variant var { a(stream>>), b(future), c(list), } record rec { a: stream, b: future, } with-streams: func(complete: bool) -> (bytes: stream, lists: stream>); with-future: func(s: stream) -> future>; with-nested: func(r: rec, f: future) -> rec; } world async-server { export async; }