import type { AgentService } from '../agent-service.js'; import type { ActionProposalOutcome } from '../spi/action-proposal-outcome-store.js'; import type { Actor } from '../types.js'; import type { PoppyConnections } from './service.js'; import type { PoppyPendingConnect } from './store.js'; /** * A connect finished: decide the `connect` call the turn parked on, so the conversation resumes * with the account connected — a scoped proposal decision under `actionApprovalMode: 'independent'`, * an approval of the parked call otherwise. A call already decided (the person tapped first) is left. */ export declare function resumeAfterConnect(service: Pick & Partial>, pending: PoppyPendingConnect, /** * For a sign-in that finished after its card expired: the connection is stored all the same, and * the conversation is continued with a new turn ({@link PoppyConnectionsTexts.continueAfterConnect}) * instead of nothing happening. Without it, an expired card is left alone. */ late?: { connections: Pick; follow?: (address: unknown, run: { runId: string; threadId: string; actor: Actor; }) => Promise; }): Promise; /** * Independent approvals: deciding the `connect` proposal runs it, and its outcome is written to the * thread — but nothing asks the model to go on. Once that outcome is admitted (the * action-proposal worker's `onAdmitted`), this starts the next turn on the thread, in the person's * voice ({@link PoppyConnectionsTexts.continueAfterConnect}), so the model proceeds with what was * asked before the sign-in. A text channel's conversation gets that turn too (`follow`). * * Only for a connect this app's connect page completed (its pending connect is `connected`), and * only once: the outcome is admitted once. */ export declare function continueAfterConnect(service: Pick, connections: Pick, outcome: ActionProposalOutcome, options?: { prefix?: string; /** Deliver the new run to a text channel (`channels.follow`). */ follow?: (address: unknown, run: { runId: string; threadId: string; actor: Actor; }) => Promise; }): Promise<{ runId: string; } | null>; //# sourceMappingURL=resume.d.ts.map