/** Result of an idempotent Pi file or configuration update. */ export interface PiConfigResult { /** File that was inspected or changed. */ path: string; /** Whether the desired content differs from the current content. */ changed: boolean; /** Whether the target existed before the operation. */ existed: boolean; /** Whether dry-run mode reported a change without writing it. */ planned: boolean; } /** Public Pi environment operations used by setup. */ export interface PiOperations { /** Find the Pi executable on the current PATH. */ executableCheck(): Promise; /** Return the text produced by `pi list`. */ packageList(executable: string): Promise; /** Match one package source against `pi list` output. */ packageCheck(listOutput: string, source: string): boolean; /** Install one Pi package source. */ packageInstall(executable: string, source: string): Promise; /** Resolve Pi's user-level agent directory. */ agentDir(homeDir?: string): string; /** Create or update one package-managed agent file. */ agentEnsure(filename: string, content: string, agentDir?: string, dryRun?: boolean): Promise; /** Report whether a skill exists in either supported global skill root. */ skillCheckGlobal(name: string, agentDir?: string, sharedSkillsDir?: string): Promise; /** Install selected upstream skills into Pi's global skill roots. */ skillInstallGlobal(miseExecutable: string, source: string, names: readonly string[]): Promise; /** Apply an idempotent update to one Pi JSON configuration file. */ configEnsure(path: string, update: (config: Record) => Record, dryRun?: boolean): Promise; } /** Focused operations for Pi packages, agents, skills, and JSON configuration. */ export declare const pi: PiOperations; //# sourceMappingURL=pi.d.ts.map