/** * Release-channel primitives shared by the self-update command and the * startup update check. * * Kept in the config layer (no shell, theme, or updater imports) so the * startup path in main.ts can resolve the channel without pulling in the * updater implementation. */ import type { Settings } from "./settings"; export declare const UPDATE_CHANNELS: readonly ["stable", "nightly"]; export type UpdateChannel = (typeof UPDATE_CHANNELS)[number]; export declare function isUpdateChannel(value: string): value is UpdateChannel; /** npm dist-tag backing each release channel. `latest` is the stable tag; nightly publishes never move it. */ export declare function distTagForChannel(channel: UpdateChannel): string; /** * Resolve the machine-local update channel: read the user/global layer only (a * project `.gjc/config.yml` `startup.updateChannel` override must never pick * the global release channel) and fall back to the stable schema default when * the global value is unset or invalid. Used by both the `gjc update` command * and the startup update check so a nightly notification can always be * satisfied by the same default invocation. */ export declare function resolveMachineLocalUpdateChannel(settings: Settings): UpdateChannel;