import { IssueRepository } from './adapter-interfaces/IssueRepository'; import { ProjectRepository } from './adapter-interfaces/ProjectRepository'; import { IssueCommentRepository } from './adapter-interfaces/IssueCommentRepository'; import { WebhookRepository } from './adapter-interfaces/WebhookRepository'; import { ConsoleTabsRepository } from './adapter-interfaces/ConsoleTabsRepository'; import { WorkflowIssueReporterSettings } from './reportSilentRedispatchWorkflowIssue'; import { Sleep } from '../services/commentCreateWithDedupRetry'; export declare class IssueNotFoundError extends Error { constructor(issueUrl: string); } export declare class IllegalIssueStatusError extends Error { constructor(issueUrl: string, currentStatus: string | null, expectedStatus: string | null); } export declare class RepositoryArchivedError extends Error { constructor(org: string, repo: string); } type NotifyFinishedIssuePreparationParams = { projectUrl: string; issueUrl: string; thresholdForAutoReject: number; thresholdForDispatchLoop?: number; workflowBlockerResolvedWebhookUrl: string | null; allowedIssueAuthors?: string[] | null; labelsAsLlmAgentName?: string[] | null; labelsNotRequiringPullRequest?: string[] | null; changeTargetPathAliases?: Record | null; agents?: string[] | null; fleetBannedAgents?: string[] | null; missingAgentName?: string | null; sessionErrorLine?: string | null; manager?: string | null; developerAgentNames?: string[] | null; defaultAgentName?: string | null; deferPreparation?: boolean | null; rateLimitRejected?: boolean | null; promptTooLongOnResume?: boolean | null; moveToFailedPreparation?: boolean | null; sessionEndedWithoutCompletingTurn?: boolean | null; workflowIssueReporterSettings?: WorkflowIssueReporterSettings | null; tdpmReportingRepository?: string | null; projectName?: string | null; dispatchStartedAt?: Date | null; }; export declare class NotifyFinishedIssuePreparationUseCase { private readonly projectRepository; private readonly issueRepository; private readonly issueCommentRepository; private readonly webhookRepository; private readonly consoleTabsRepository?; private readonly sleep; private readonly issueRejectionEvaluator; private readonly changeTargetPullRequestApprover; private readonly closeIssueAsRequestApplier; constructor(projectRepository: Pick, issueRepository: Pick, issueCommentRepository: Pick, webhookRepository: Pick, consoleTabsRepository?: (ConsoleTabsRepository | null) | undefined, sleep?: Sleep); run: (params: NotifyFinishedIssuePreparationParams) => Promise; private runInternal; private handleConsecutiveFailureMaxReached; private handleTransientFailureDeferral; private handleRateLimitRejected; private handlePromptTooLongOnResume; private handleMissingAgentDefinition; private handleUnregisteredNextStepAgent; private collectRejections; private setDependedIssueUrlForAllOpenPRs; private resolveLinkedPrWithCiFailure; private sendWorkflowBlockerNotification; private resolveConsoleTargetTab; private ensureAgentOptionAndGetId; private patchConsoleTab; private formatReactivationTriggerMessage; private createCommentWithDedup; } export {}; //# sourceMappingURL=NotifyFinishedIssuePreparationUseCase.d.ts.map