/** * A value or a promise of one. * * In its own file rather than beside either contract that uses it: `module-ui.ts` and * `contribution.ts` both need it, and `module-ui.ts` reaches `host-context.ts`, which reaches * `contribution.ts` — so declaring it in either would close a source cycle that * `scripts/check-boundaries.ts` rejects, including one formed only by `import type`. */ export type Awaitable = Value | PromiseLike;