import type { FactoryRepoConfig, RepoOutcome } from '../types.js'; export interface ShipRepoInput { readonly slug: string; readonly branch: string; readonly title: string; readonly description: string; readonly repo: { readonly name: string; readonly path: string; }; readonly repoConfig: FactoryRepoConfig; readonly mergeWaitTimeoutMs: number; readonly mainGreenTimeoutMs: number; readonly waitForMainGreen: boolean; /** Halt this repo's ship if total added+deleted lines exceeds this. */ readonly maxDiffLines?: number; /** Halt this repo's ship if changed-file count exceeds this. */ readonly maxDiffFiles?: number; /** Optional logger for heartbeat ticks during long polls. */ readonly logger?: (msg: string) => void; /** Override the model for the merge-resolver subagent on conflict. */ readonly mergeResolverModel?: string; } export interface ShipRepoResult extends RepoOutcome { readonly halt?: 'merge-unresolvable' | 'main-green-timeout' | 'forbidden-paths' | 'diff-too-large'; } export declare function shipRepo(input: ShipRepoInput): Promise; //# sourceMappingURL=ship-repo.d.ts.map