import { AuthApiTransports } from "../../shared/transports.js"; import { PolyesterRequestOptions } from "../../shared/request-options.js"; import { SubaccountResolver } from "../subaccount-resolver.js"; import { PolyesterRealtime } from "../../realtime/types.js"; import { BaseSubscribeInput } from "../../shared/types.js"; import { SdkScales } from "../../shared/decimal-surface.js"; import { OrderTransfer } from "../orders/orders-output.schemas.js"; import { GetUserTradesInput, Trade } from "./trades.schemas.js"; //#region src/services/trades/trades.d.ts interface SubscribeTradesInput extends BaseSubscribeInput { accountId: string; } /** * Reads and streams authenticated user trade fills. */ declare class TradesService { #private; constructor(transports: AuthApiTransports, realtime: PolyesterRealtime, resolver: SubaccountResolver | undefined, scales: SdkScales); /** * Returns user trades for the resolved root account or subaccount, supporting symbol, side, time range, limit, page token, and after-match-ID replay cursor filters. The `afterMatchId` cursor requires `symbolId`, enforced at the type and validation level. Results include the next page token from GetUserTrades. * Scope executions to an order or lineage, optionally through a generation. Requested transfers * belong to matches on this page; deduplicate them across pages by txId. */ list(input?: GetUserTradesInput, options?: PolyesterRequestOptions): Promise<{ trades: Trade[]; transfers: OrderTransfer[]; nextPageToken: string; }>; /** * Subscribes to private user trade updates on private:spot:trades:{accountId}:proto and emits parsed fills. */ subscribe(input: SubscribeTradesInput): () => void; } //#endregion export { TradesService }; //# sourceMappingURL=trades.d.ts.map