import type { CheckpointReceipt, ReceiptV2, WorkflowConfig, WorkflowState, WorkflowStatus } from './types'; interface WorkflowCreateResponse { workflow_id: string; created_at: string; state?: WorkflowState; total_spend_usd?: number; outcome_count?: number; last_receipt_id?: string | null; last_checkpoint_id?: string | null; last_chain_hash?: string | null; receipts?: ReceiptV2[]; } export declare class WorkflowContext { readonly workflow_id: string; readonly user_id: string; readonly config: WorkflowConfig; readonly created_at: Date; private _total_spend_usd; private _outcome_count; private _last_receipt_id; private _last_checkpoint_id; private _last_chain_hash; private _state; private readonly _receipts; private constructor(); static create(config: WorkflowConfig): Promise; static fromCheckpoint(config: WorkflowConfig, existing: WorkflowCreateResponse, userId?: string): WorkflowContext; outcome(name: string, fn: () => Promise): Promise; checkpoint(label?: string): Promise; cancel(reason: string): Promise; finalize(): Promise; status(): WorkflowStatus; receipts(): ReceiptV2[]; private writeCheckpoint; private writeFinalReceipt; private assertActive; private assertOutcomeAllowed; private assertBudgetRemaining; private assertDurationRemaining; private checkPostCallCaps; private extractOutcomeCost; private postReceipt; } export declare function workflow(config: WorkflowConfig, fn: (ctx: WorkflowContext) => Promise): Promise; export {}; //# sourceMappingURL=context.d.ts.map