import { post } from './request' import type { ApiResponse } from './types' export type { ApiResponse } /** * 下单请求体(/clob/gateway/submitOrder) * tokenID 来自 market.clobTokenIds,outcomeIndex 0=Yes 1=No */ export interface ClobSubmitOrderRequest { expiration: number feeRateBps: number nonce: number orderType: number /** 价格(整数,已乘 10000) */ price: number side: number /** 数量(份额) */ size: number taker: boolean tokenID: string userID: number /** 市场 ID */ marketID: string } /** * POST /clob/gateway/submitOrder * 下单(买入/卖出 Yes 或 No),需鉴权 */ export async function pmOrderPlace( data: ClobSubmitOrderRequest, config?: { headers?: Record }, ): Promise { return post('/clob/gateway/submitOrder', data, config) } /** * 取消订单请求体(/clob/gateway/cancelOrder) */ export interface ClobCancelOrderRequest { orderID: number tokenID: string userID: number } /** * POST /clob/gateway/cancelOrder * 取消订单,需鉴权 */ export async function pmCancelOrder( data: ClobCancelOrderRequest, config?: { headers?: Record }, ): Promise { return post('/clob/gateway/cancelOrder', data, config) } /** * Split 请求体(/PmMarket/split) * 用 USDC 兑换该市场的 Yes+No 份额(1 USDC ≈ 1 Yes + 1 No) */ export interface PmMarketSplitRequest { /** 市场 ID */ marketID: string /** 要 split 的 USDC 金额(字符串) */ usdcAmount: string } /** * Merge 请求体(/PmMarket/merge) * 合并 Yes + No 份额得到 USDC(1 Yes + 1 No ≈ 1 USDC) */ export interface PmMarketMergeRequest { /** 市场 ID */ marketID: string /** 合并份额数量(字符串) */ amount: string } /** * POST /PmMarket/merge * 合并 Yes、No 份额为 USDC,需鉴权 */ export async function pmMarketMerge( data: PmMarketMergeRequest, config?: { headers?: Record }, ): Promise { return post('/PmMarket/merge', data, config) } /** * 调用测试服务器 /PmMarket/split 接口 * - 需鉴权:请求头 x-token、x-user-id * - 使用 VITE_API_BASE_URL 时可设为 http://192.168.3.21:8888 连接测试服 */ export async function pmMarketSplit( data: PmMarketSplitRequest, config?: { headers?: Record }, ): Promise { return post('/PmMarket/split', data, config) }