import type { Review, VersionControl } from '../../capabilities/version-control.js'; import type { FactoryDismissStaleReviewsDecision } from '../../rules/types.js'; export declare function isFactoryApproveVerdict(body: string | null | undefined): boolean; export declare function isFactoryRequestChangesVerdict(body: string | null | undefined): boolean; /** * Factory change requests an approval has superseded. GitHub keeps a reviewer's * change request blocking until that same reviewer approves or it is dismissed, * so one left by Factory's app identity pins `reviewDecision` at * CHANGES_REQUESTED after a separate reviewer identity approves. * * A review is selected only when it is its author's latest verdict (comments * do not replace a verdict on GitHub), was submitted before the approval, is a * change request carrying Factory's verdict marker, and its author is verified * as Factory. Nothing is selected unless the approval is still in effect. */ export declare function selectStaleFactoryReviews(reviews: readonly Review[], approving: { reviewId: string; author: string; }, isFactoryAuthor: (login: string) => boolean): Review[]; /** Lists every review on the pull request and dismisses the stale Factory change requests. */ export declare function dismissStaleFactoryReviews(versionControl: Pick, decision: Omit, isFactoryAuthor: (login: string) => boolean, isTrustedApprover: (login: string) => Promise): Promise; //# sourceMappingURL=stale-reviews.d.ts.map