Skip to main content

Core Types

SubaccountInfo

Represents a trading subaccount.
interface SubaccountInfo {
  address: string; // Wallet address
  subaccountNumber: number; // Subaccount index (0-127)
}

MarketData

Market information from the Indexer.
interface MarketData {
  clobPairId: string;
  ticker: string;
  status: string;
  oraclePrice: string;
  priceChange24H: string;
  volume24H: string;
  trades24H: number;
  nextFundingRate: string;
  initialMarginFraction: string;
  maintenanceMarginFraction: string;
  openInterest: string;
}

Orderbook Level

Price level in an orderbook.
interface OrderbookLevel {
  price: string; // Price as string
  size: string; // Size as string
}

Order

Order information.
interface Order {
  id: string;
  clientId: string;
  ticker: string;
  side: string; // "BUY" or "SELL"
  size: string;
  price: string;
  type: string;
  status: string;
  timeInForce: string;
  goodTilBlock?: number;
  goodTilBlockTime?: string;
}

BroadcastTxResponse

Transaction broadcast response.
interface BroadcastTxResponse {
  hash: Uint8Array; // Transaction hash
  // ... additional fields
}

Network Types

IndexerConfig

Indexer endpoint configuration.
class IndexerConfig {
  constructor(restEndpoint: string, websocketEndpoint: string);
}

ValidatorConfig

Validator endpoint configuration.
class ValidatorConfig {
  constructor(
    restEndpoint: string,
    chainId: string,
    denoms: DenomConfig,
    broadcastOptions?: any,
    userAgent?: string
  );
}

DenomConfig

Token denomination configuration.
interface DenomConfig {
  CHAINTOKEN_DENOM: string;
  USDC_DENOM: string;
  USDC_GAS_DENOM: string;
  USDC_DECIMALS: number;
  CHAINTOKEN_DECIMALS: number;
}