/** * Which of a publish's URLs to put in front of the creator. * * `complete` hands back three (see `CompletePublishResponse`), and the one that used to be * printed — the versioned `games//indexN.html` key — is the one least worth sharing: the * next publish writes `indexN+1.html`, so a link handed out today is frozen on today's build. * The other two are both stable, and the choice between them is exactly the choice the portal's * own My Games page makes (`playPath` vs `directPlayUrl` in `portal/src/my-games-helpers.ts`). */ /** The fields of a completed publish this decision needs. */ export interface PromotableUrls { url: string; visibility: string; latestUrl?: string; playUrl?: string; } /** * The URL the creator should see and share. * * A public game gets its `/play/` page: that is the address with the game's name, cover and * comments on it, and the one every other Bitmagic surface links to. A private game has no such * page — `publishComplete` deliberately takes it down — so it gets the directory form, which is * what "private" actually means here: world-readable at its own URL, simply not listed. * * `playUrl` is honoured only for a public publish. A game that was public a moment ago can be * published private in the same breath, and a server that still sent a page URL alongside a * private verdict must not talk this into linking a page that was just unlisted. */ export declare function promotedPublishUrl(done: PromotableUrls): string;