export type LogFn = (level: "info" | "warn" | "error", message: string) => void; export type ToastFn = (variant: "success" | "warning" | "error", message: string) => void; export type ResolveConfig = { /** Prefix for user-facing messages. Default "sharedserver". */ label?: string; /** Minimum acceptable version. Defaults to pkgVersion (lockstep). */ minVersion?: string; /** Installer to fetch. Defaults to the release pinned to pkgVersion. */ installerUrl?: string; /** The host package's own version — only meaningful in lockstep mode. */ pkgVersion?: string; }; /** Resolve the sharedserver binary, fetching a release when nothing usable is present. * * Behaviourally identical to plugins/claude/bin/sharedserver — same ladder, floor, * lock and degrade-rather-than-die fallback, so a user running both clients gets the * same answer to "which sharedserver am I on, and why". */ export declare function resolveSharedserver(cfg: ResolveConfig, override: string | undefined, env: NodeJS.ProcessEnv, log?: LogFn, toast?: ToastFn): string | undefined; //# sourceMappingURL=sharedserver-resolve.d.ts.map