import type { PackageManagerKind } from "../../package-manager.js";
import type { NodeEngineOverride } from "../../node-engine.js";
import { type EvePackageContract } from "./project.js";
export interface AddAgentToProjectOptions {
    projectRoot: string;
    model: string;
    /**
     * The host project's package manager, which owns any manager-specific
     * generated project configuration. Defaults to pnpm.
     */
    packageManager?: PackageManagerKind;
    evePackage?: EvePackageContract;
    aiPackageVersion?: string;
    connectPackageVersion?: string;
    zodPackageVersion?: string;
}
export interface AddAgentToProjectResult {
    filesWritten: string[];
    /** Dependencies added to package.json; ones the project already declares anywhere are left untouched. */
    dependenciesAdded: string[];
    /** Present when an incompatible package.json engines.node value was replaced. */
    nodeEngineOverride?: NodeEngineOverride;
}
/**
 * Adds an eve agent to an existing package: writes the `agent/` files, adds
 * missing runtime dependencies, reconciles `engines.node` with eve's
 * requirement, and applies the selected package manager's project
 * configuration. Other host configuration (tsconfig, scripts, ignore files)
 * remains untouched. All conflicts are gathered and reported before anything
 * is written.
 */
export declare function addAgentToProject(options: AddAgentToProjectOptions): Promise<AddAgentToProjectResult>;
