export interface MaterializedDaemonPackage { readonly piHome: string; readonly source: string; commit(): void; rollback(): void; } export interface DaemonPackageMaterializer { materialize(piHome: string, source: string): Promise; remove(source: string): void; ownsExecutable(path: string): boolean; } export declare class PassThroughDaemonPackageMaterializer implements DaemonPackageMaterializer { materialize(piHome: string, source: string): Promise; remove(_source: string): void; ownsExecutable(_path: string): boolean; } /** * Installs a daemon source into a private, versioned npm project. The project deliberately has * no `overrides` field, so a host-level Pi/Bun override cannot rewrite the daemon's transitive * dependency closure. npm's cache remains shared; only resolution metadata and node_modules are * private. A completed directory is published with one atomic rename and retained alongside one * prior version for rollback. */ export declare class IsolatedDaemonPackageMaterializer implements DaemonPackageMaterializer { private readonly stateDirectory; private readonly npmBin; constructor(stateDirectory: string, npmBin?: string); materialize(piHome: string, source: string): Promise; remove(source: string): void; ownsExecutable(path: string): boolean; private pruneTemporaryDirectories; private prune; } //# sourceMappingURL=isolated-service-install.d.ts.map