interface asset { resource handle { set-watched: func(watched: bool); version: func() -> u64; uuid: func() -> string; path: func() -> string; is-watched: func() -> bool; is-loaded: func() -> bool; wait-for-load: func(); wait-recurse-dependencies-load: func(); } resource asset-manager { constructor(); request: func(path: string) -> handle; } }