import type { Runner } from "../internals/proc.js"; import { type CertEntry, type GpuInfo, type HostAdapter, type VdiInfo } from "./base.js"; /** * Linux host adapter (implemented, fixture-tested, not smoke-tested on this box). * Trust-store matching is filename-based across the standard anchor dirs (no * openssl dependency); hardware facts come from /proc with runner fallbacks. */ export declare class LinuxAdapter implements HostAdapter { private readonly run; private readonly env; /** Override the trust-store anchor dirs (tests); defaults to the system set. */ private readonly anchorDirs; /** Override consolidated system CA bundles (tests); defaults to standard paths. */ private readonly caBundlePaths; readonly platform: "linux"; readonly verified = true; constructor(run: Runner, env: NodeJS.ProcessEnv, /** Override the trust-store anchor dirs (tests); defaults to the system set. */ anchorDirs?: readonly string[], /** Override consolidated system CA bundles (tests); defaults to standard paths. */ caBundlePaths?: readonly string[]); trustStoreCerts(pattern: string): Promise; trustStoreRoots(): Promise; /** Best-effort subject match via openssl; false when openssl is absent or errors. */ private subjectMatches; lockDownFileArgv(path: string): string[]; symlinkDirArgv(linkPath: string, targetPath: string): string[]; cpuPhysicalCores(): Promise; totalRamGb(): Promise; gpu(): Promise; detectVdi(): VdiInfo; scratchDir(user: string): string; shellProfilePaths(): string[]; envShell(): "posix"; persistentEnvArgv(): string[]; npmCliPath(): string | undefined; tlsProbeArgv(url: string): string[]; } /** Count distinct (physical id, core id) pairs in /proc/cpuinfo. */ export declare function countPhysicalCores(cpuinfo: string): number; /** Read MemTotal (kB) from /proc/meminfo. */ export declare function parseMemTotalKb(meminfo: string): number | undefined;