import { type Server } from 'node:net'; import { type MetalExec, type MetalProvisionProfile } from './metal-provision'; import type { ProvisionResult, RemoteProvisionClaim } from './provisioning-pull'; import { type MetalGuestResourceObservation, type MetalGuestResourceTarget } from '@forgezero/runtime/metal-resource-evidence'; import { type MetalInspectionIO } from './metal-resource-inspection'; export declare const DEFAULT_METAL_HELPER_SOCKET = "/run/forgezero-metal/helper.sock"; export declare const spawnMetalCommand: MetalExec; /** Root-owned server. Its fixed profile is never selectable by the caller. */ export declare function startMetalHelper(options: { profile: MetalProvisionProfile; socketPath?: string; exec?: MetalExec; /** Local test seam only; the socket can never provide paths, commands or a profile. */ inspectionIO?: MetalInspectionIO; }): { server: Server; stop(): Promise; }; /** One fixed read-only request, one bounded observation; there is no replay or apply fallback. */ export declare function requestMetalResourceInspection(target: MetalGuestResourceTarget, socketPath?: string): Promise; export declare function requestMetalProvision(claim: RemoteProvisionClaim, socketPath?: string): Promise;