import { type Hex } from "viem"; import type { ToolResult } from "./orders.js"; /** * Redeem call for the pUSD collateral adapter (standard or neg-risk). Exported * for unit tests — the target/calldata pair is the money-critical part of this * file. The CTF-mirror arguments besides conditionId are ignored by the * adapter; we pass the canonical values anyway so the calldata reads sanely on * a block explorer. */ export declare function buildRedeemCall(negRisk: boolean, conditionId: Hex): { target: Hex; data: Hex; }; /** * Did the redeem actually consume something we held? * * A transaction hash is not proof: redeeming through the wrong collateral path * burns a positionId nobody holds, which SUCCEEDS on-chain having done nothing * (CTF redeemPositions never reverts on a zero balance). Only a DECREASE in a * balance that was non-zero before proves the position was consumed. * * Conservative on length mismatch: a missing `after` entry reads as unchanged, * i.e. "not redeemed", so a truncated read can never fake success. * * Pure and exported for tests. Design from @KillerQueen-Z's #66. */ export declare function didRedeemAnyHeldPosition(before: readonly bigint[], after: readonly bigint[]): boolean; export declare function redeemPosition(input: { condition_id?: string; confirm?: boolean; }): Promise;