import type { IntegrationContext } from '../base.js'; import type { GithubIssueFetcher, GithubRulesIntegration, GithubRulesOptions, ReconcileRepository } from './rules.js'; export interface GithubIssueReconcileSummary { /** Repositories included in the sweep. */ repositories: number; /** Issue cards whose live state was fetched. */ checked: number; /** Open issues with metadata patches. */ updated: number; /** Closed issues replayed through the rules ingress. */ closed: number; /** Errors encountered during the sweep. */ failed: number; /** Error samples with context. */ errors: Array<{ repository: string; issueNumber?: number; error: string; }>; } export type GithubIssueReconciler = (repositories: ReconcileRepository[]) => Promise; export declare function createGithubIssueReconciler(options: GithubRulesOptions, fetchIssue: GithubIssueFetcher): GithubIssueReconciler; export declare function attachGithubIssueReconciler(github: GithubRulesIntegration, context: IntegrationContext, fetchIssue: GithubIssueFetcher): GithubIssueReconciler | undefined; //# sourceMappingURL=issue-reconciler.d.ts.map