export declare function checkForDesktopUpdate(options: CheckDesktopUpdateOptions): Promise; export declare function stageDesktopUpdate(manifest: DesktopUpdateManifest, destination: string, fetcher?: DesktopFetcher, trustedKeys?: Record): Promise; export declare function compareVersions(left: string, right: string): number; export declare function validateUpdateManifest(input: unknown): DesktopUpdateManifest; export declare function updateManifestPayload(manifest: DesktopUpdateManifest): Buffer; export declare function verifyUpdateManifestSignature(manifest: DesktopUpdateManifest, trustedKeys: Record): void; export declare interface DesktopUpdateManifest { version: string url: string sha256: string size: number sourceRevision: string platform: string architecture: string signingKeyId: string signature: string publishedAt?: string notes?: string } export declare interface CheckDesktopUpdateOptions { currentVersion: string manifestUrl: string trustedKeys: Record fetcher?: DesktopFetcher } export declare interface StagedDesktopUpdate { manifest: DesktopUpdateManifest path: string bytes: number } export type DesktopFetcher = (input: string | URL | Request, init?: RequestInit) => Promise;