export declare function getSessionLedger(): {
    totalUsd: number;
    count: number;
    perAgent: Record<string, number>;
};
/**
 * Round a probability price onto the market's tick grid, CONSERVATIVELY by side:
 * a BUY rounds DOWN and a SELL rounds UP, so the signed order is never priced
 * worse than the user's stated limit. (Plain Math.round could round a buy at
 * 0.556 up to 0.56 — signing above the limit; near the grid floor a buy at
 * 0.0051 would round up to a full tick, doubling notional.) A sub-tick buy
 * floors to 0, which the caller's range check then rejects with a clear error
 * rather than silently lifting it to the first tick.
 */
export declare function roundToTick(price: number, tickSize: string, side?: "buy" | "sell"): number;
/** Map CLOB errors to actionable guidance. Exported for unit tests. */
export declare function mapClobError(err: unknown): Promise<string>;
export interface TradeInput {
    action: "buy" | "sell";
    token_id?: string;
    condition_id?: string;
    outcome?: string;
    price?: number;
    size?: number;
    amount_usd?: number;
    order_type?: "GTC" | "GTD" | "FOK" | "FAK";
    expires_at?: number;
    post_only?: boolean;
    confirm?: boolean;
    agent_id?: string;
}
export interface ToolResult {
    text: string;
    structured?: Record<string, unknown>;
    isError?: boolean;
}
export declare function executeTrade(input: TradeInput): Promise<ToolResult>;
export declare function listOpenOrders(input: {
    condition_id?: string;
}): Promise<ToolResult>;
export declare function cancelOrdersAction(input: {
    order_id?: string;
    all?: boolean;
}): Promise<ToolResult>;
