import { Issue } from '../entities/Issue'; import { IssueRepository } from './adapter-interfaces/IssueRepository'; import { Project } from '../entities/Project'; import { Sleep } from '../services/commentCreateWithDedupRetry'; /** * Restores a "Depended Issue URL separated by comma" project field entry * that `ClearDependedIssueURLUseCase` previously removed specifically * because the depended issue had entered Icebox status, once that * depended issue has since left Icebox and is not closed. * * A clear caused by the depended issue being closed, or by circular * dependency removal, is permanent and is never restored. Which cause * applies to a given depended issue URL is determined by the most recent * relevant comment on the depending issue that mentions that URL (an * Icebox-clear comment, a closed-clear comment, a circular-dependency * comment, or a prior restore comment posted by this use case) — an * earlier cycle's outcome is superseded by a later one. */ export declare class DependedIssueURLRestoreUseCase { private readonly issueRepository; private readonly sleep; constructor(issueRepository: Pick, sleep?: Sleep); run: (input: { project: Project; issues: Issue[]; allowedIssueAuthors?: string[] | null; }) => Promise; private restoreForDependingIssue; private createCommentWithDedup; private findRestorableDependedIssueUrls; private parseRelevantComments; private resolveClearCause; private extractBulletUrls; } //# sourceMappingURL=DependedIssueURLRestoreUseCase.d.ts.map