import { type CanonicalStateMutationResources, type CanonicalStateMutationScopes } from "./mutation-transaction.js"; import type { TerminalCommandCliOptions } from "./terminal-command-cli-ports.js"; import { TerminalSubmissionRetryReconciliation, type TerminalSubmissionRetryFlowContext, type TerminalSubmissionRetryFlowState, type TerminalSubmissionRetryInvocation } from "./terminal-submission-retry-reconciliation.js"; import { TerminalSubmissionRetryTransport } from "./terminal-submission-retry-transport.js"; import type { TerminalSubmissionRetryApplicationPorts } from "./terminal-submission-retry-ports.js"; export declare class TerminalSubmissionRetryApplication { private readonly ports; private readonly reconciliation; private readonly transport; constructor(ports: TerminalSubmissionRetryApplicationPorts, reconciliation: TerminalSubmissionRetryReconciliation, transport: TerminalSubmissionRetryTransport); assertTerminalSubmissionRetryOptions(options: TerminalCommandCliOptions): string; terminalSubmissionRetryIsEligible(context: TerminalSubmissionRetryFlowContext, state: TerminalSubmissionRetryFlowState): boolean; recoverTerminalSubmissionRetryAcceptance(context: TerminalSubmissionRetryFlowContext, state: TerminalSubmissionRetryFlowState): Promise; finishPendingTerminalSubmissionRetry(context: TerminalSubmissionRetryFlowContext, state: TerminalSubmissionRetryFlowState, alreadyReconciled: boolean): boolean; terminalSubmissionRetryHasInputAuthority(context: TerminalSubmissionRetryFlowContext, state: TerminalSubmissionRetryFlowState): boolean; runTerminalSubmissionRetryNoInputRecovery(context: TerminalSubmissionRetryFlowContext, state: TerminalSubmissionRetryFlowState): Promise; runTerminalSubmissionRetryDecision(context: TerminalSubmissionRetryFlowContext, state: TerminalSubmissionRetryFlowState): Promise; runTerminalSubmissionRetryLocked(input: { invocation: TerminalSubmissionRetryInvocation; scopes: CanonicalStateMutationScopes; resources: CanonicalStateMutationResources; }): Promise; runTerminalSubmissionRetry(options: TerminalCommandCliOptions): Promise; }