package foo:bar; interface guest { type guest = u32; x: func() -> guest; } interface other-guest { guest: func(); } world another-guest { import guest; export guest; import other-guest; export other-guest; export i1; export i2; export i3; export i4; } interface i1 { enum guest { a, b, c, } x: func() -> guest; } interface i2 { use i1.{guest}; x: func() -> guest; } interface i3 { record guest { x: u32, } x: func() -> guest; } interface i4 { variant guest { x(u32), } x: func() -> guest; }