import type { MergeSettings } from '../../core/models/config-types.js'; import type { WorkflowPrListWhere } from '../../core/models/workflow-system-input-types.js'; import { type GitHubPullRequestTarget } from '../../infra/github/pull-request-target.js'; import type { PrListItem } from '../../infra/git/types.js'; import { type PrSelectionResult } from './selection.js'; import type { WorkflowExecutionOptions } from '../tasks/execute/types.js'; import { TaskRunner } from '../../infra/task/index.js'; import type { TaskInfo } from '../../infra/task/index.js'; export { resolveMergeSettings } from './settings.js'; type MergeDisplayOptions = Pick; interface MergeOptions { readonly projectCwd: string; readonly settings: MergeSettings; readonly concurrency: number; readonly prNumber?: number; readonly pullRequest?: GitHubPullRequestTarget; readonly selectionText?: string; readonly onSelectionResult?: (results: readonly PrSelectionResult[]) => void; readonly workflow?: string; readonly where?: WorkflowPrListWhere; readonly includeDraft?: boolean; readonly includeForks?: boolean; readonly abortSignal?: AbortSignal; readonly display?: MergeDisplayOptions; readonly parentTaskName?: string; } interface PrWorkflowRequest { readonly projectCwd: string; readonly prNumber: number; readonly pullRequest?: GitHubPullRequestTarget; readonly workflow: string; readonly settings: MergeSettings; readonly abortSignal?: AbortSignal; readonly display?: MergeDisplayOptions; readonly parentTaskName?: string; } interface MergeDependencies { readonly listOpenPrNumbers: (cwd: string) => number[]; readonly fetchPrListItem: (prNumber: number, cwd: string) => PrListItem | undefined; readonly executePrWorkflow: (request: PrWorkflowRequest) => Promise<{ merged: boolean; }>; } export declare function executePrWorkflow(request: PrWorkflowRequest): Promise<{ merged: boolean; }>; export declare function executePersistedPrMergeTask(task: TaskInfo, runner: TaskRunner, projectCwd: string, abortSignal?: AbortSignal, display?: MergeDisplayOptions): Promise<{ merged: boolean; }>; export declare function runMerge(options: MergeOptions, dependencies?: MergeDependencies): Promise<{ processedCount: number; mergedCount: number; exitCode: number; }>; export declare function runLinkedMergeSafely(projectCwd: string, prUrl: string, abortSignal?: AbortSignal, display?: MergeDisplayOptions, parentTaskName?: string): Promise; //# sourceMappingURL=index.d.ts.map