import type { NativeArtifactManifest } from "./artifact-manifest"; export type CommandResult = { exitCode: number; stdout: string; stderr: string; }; export type CommandRunner = (executable: string, args: readonly string[]) => Promise; export type RuntimeDependencies = { cacheRoot?: string; commandRunner?: CommandRunner; download?: (manifest: NativeArtifactManifest, destination: string) => Promise; lockPollMs?: number; lockTimeoutMs?: number; staleLockMs?: number; }; export declare function defaultCacheRoot(): string; export declare function runtimeDirectory(cacheRoot: string, manifest: NativeArtifactManifest): string; export declare function nativeExecutablePath(runtimeDir: string, manifest: NativeArtifactManifest): string; export declare function pruneObsoleteNativeRuntimes(currentExecutable: string, cacheRoot?: string): Promise; export declare const runCommand: CommandRunner; export declare function downloadNativeArtifact(manifest: NativeArtifactManifest, destination: string): Promise; export declare function inspectMachOExecutable(filePath: string): { architecture: "arm64"; minimumMacOSVersion: string; }; export declare function codeSignatureUsesHardenedRuntime(output: string): boolean; export declare function verifyNativeApp(appPath: string, manifest: NativeArtifactManifest, runner?: CommandRunner): Promise; export declare function ensureNativeRuntime(manifest: NativeArtifactManifest, dependencies?: RuntimeDependencies): Promise;