import type { CliRunResult } from "./bearshell.js"; type ProjectAutoUpdateBlockReason = "configuration-invalid" | "not-enabled" | "ownership-unavailable" | "registry-invalid" | "registry-unavailable" | "stale-plugin" | "unconfigured" | "write-failed"; export type ProjectAutoUpdateRegistryResult = { readonly kind: "available"; readonly version: string; } | { readonly kind: "unavailable"; }; export type ProjectAutoUpdateResult = { readonly kind: "blocked"; readonly reason: ProjectAutoUpdateBlockReason; } | { readonly kind: "current"; } | { readonly kind: "updated"; readonly version: string; }; export type ProjectAutoUpdateOptions = { readonly installedVersion: string; readonly projectDir: string; readonly readLatestVersion: () => Promise; }; export type ProjectAutoUpdateStatus = { readonly configuredVersion?: string; readonly state: "disabled" | "enabled" | "invalid" | "unconfigured"; }; export declare function readProjectAutoUpdateStatus(projectDir: string): ProjectAutoUpdateStatus; export declare function runProjectAutoUpdateCommand(args: readonly string[], options?: { readonly packageRoot?: string; readonly projectDir?: string; }, invocationName?: string): CliRunResult; export declare function applyProjectAutoUpdate(options: ProjectAutoUpdateOptions): Promise; export {};