import type { Express, Request, RequestHandler } from "express"; import type { ModelCatalogService } from "./models.js"; import { type RuntimeConfigState } from "./runtime-config.js"; import type { WandStorage } from "./storage.js"; import type { WandConfig } from "./types.js"; interface SettingsDistributionPayload { androidApk: Record; macosDmg: Record; iosIpa: Record; } interface SettingsBuildInfo { commit: string | null; builtAt: string | null; channel: string | null; } export interface ServerSettingsRoutesDependencies { storage: WandStorage; config: WandConfig; runtimeConfig: RuntimeConfigState; configPath: string; configDir: string; requireAdmin: RequestHandler; requireAdminOrSessionPreferences: RequestHandler; packageInfo: { version: string; name: string; nodeVersion: string; repoUrl: string; }; buildInfo: SettingsBuildInfo; getCachedUpdateInfo(): { updateAvailable: boolean; latest: string | null; } | null; getUpdateChannel(): "stable" | "beta"; getDistributionSettings(): Promise; modelCatalog: ModelCatalogService; resolveAppConnectCode(req: Request): { code: string; url: string; }; } export declare function registerSettingsRoutes(app: Express, deps: ServerSettingsRoutesDependencies): void; export {};