/** * Switch SDK — Main entry point * * Re-exports all types and constants for convenience. * * @example * ```ts * import { SWITCH_ROUTER, NATIVE_PLS, type BestPathResponse } from "@switch-win/sdk"; * ``` * * @example * ```ts * import { buildLimitOrder, submitLimitOrder, type LimitOrderParams } from "@switch-win/sdk"; * ``` */ // Types — Swap export type { BestPathResponse, SwapTransaction, SwapPath, SwapPathLeg, RouteAllocationPlan, SingleRouteAllocation, HopAllocationPlan, HopAdapterAllocationPlan, TokenTaxResponse, ErrorResponse, QuoteResponse, AdapterInfo, AdaptersResponse, CheckTaxResponse, CheckTaxResult, } from "./types.js"; // Types — Limit Orders export type { LimitOrderParams, SignedLimitOrder, CreateLimitOrderRequest, CancelLimitOrderRequest, LimitOrderStatus, LimitOrderRecord, CreateLimitOrderResponse, CancelLimitOrderResponse, ListLimitOrdersResponse, LimitOrderPair, LimitOrderStats, LimitOrderConfigResponse, LimitOrderMutationResponse, } from "./types.js"; export { isErrorResponse } from "./types.js"; // Constants — Swap export { API_BASE, QUOTE_ENDPOINT, ADAPTERS_ENDPOINT, CHECK_TAX_ENDPOINT, CHAIN_ID, SWITCH_ROUTER, NATIVE_PLS, WPLS, FINVESTA_V3_ADAPTER_INDEX, FINVESTA_V3_ADAPTER, FINVESTA_V3_FACTORY, FINVESTA_V3_FEE_TIERS, TRENCH_V2_ADAPTER_INDEX, TRENCH_V2_ADAPTER, TRENCH_V2_FACTORY, TRENCH_V3_ADAPTER_INDEX, TRENCH_V3_ADAPTER, TRENCH_V3_FACTORY, TRENCH_V3_FEE_TIERS, FEE_DENOMINATOR, MAX_FEE_BPS, MAX_SLIPPAGE_BPS, DEFAULT_SLIPPAGE_BPS, BLUE_CHIPS, ERC20_ABI, GO_SWITCH_ABI, SWITCH_ROUTER_ERRORS, SWITCH_ROUTER_ERROR_SELECTORS, } from "./constants.js"; // Constants — Limit Orders export { SWITCH_LIMIT_ORDER, SWITCH_LIMIT_ORDER_V1, SWITCH_LIMIT_ORDER_V2, SWITCH_PLS_FLOW, LIMIT_ORDER_API_BASE, LIMIT_ORDERS_ENDPOINT, LIMIT_ORDER_PAIRS_ENDPOINT, LIMIT_ORDER_STATS_ENDPOINT, LIMIT_ORDER_EIP712_DOMAIN, LIMIT_ORDER_EIP712_TYPES, LIMIT_ORDER_ABI, LIMIT_ORDER_ERRORS, LIMIT_ORDER_ERROR_SELECTORS, PLS_FLOW_ABI, PLS_FLOW_ERRORS, PLS_FLOW_ERROR_SELECTORS, } from "./constants.js"; // Limit Order helpers export { buildLimitOrder, getEIP712SigningParams, getNetworkEIP712SigningParams, getLimitOrderNetworkConfig, getLimitOrderApprovalTarget, getApprovalTarget, getRouterApprovalTarget, shouldUnwrapOutput, getPLSFlowAddress, getNativeFlowAddress, isNativePLS, isNativeCurrency, submitLimitOrder, cancelLimitOrder, fetchLimitOrders, fetchLimitOrder, fetchLimitOrderPairs, fetchLimitOrderConfig, fetchLimitOrderStats, LIMIT_ORDER_NETWORK_CONFIGS, } from "./limit-orders.js"; export type { BuildLimitOrderOptions, ListLimitOrdersOptions, LimitOrderNetwork, LimitOrderNetworkConfig, LimitOrderNetworkOptions, } from "./limit-orders.js"; // Network-specific swap configuration export { ROBINHOOD_NETWORK, ROBINHOOD_CHAIN, ROBINHOOD_NATIVE_ETH, ROBINHOOD_LIMIT_ORDER_EIP712_DOMAIN, ROBINHOOD_SWITCH_CONTRACTS, ROBINHOOD_ADAPTERS, ROBINHOOD_TAX_SAFE_ADAPTER_INDICES, ROBINHOOD_TAX_SAFE_ADAPTERS, ROBINHOOD_UNISWAP_CONTRACTS, ROBINHOOD_TOKENS, ROBINHOOD_FRONTEND_TOKEN_LIST, ROBINHOOD_FRONTEND_DEFAULT_TOKENS, ROBINHOOD_TRUSTED_INTERMEDIATES, ROBINHOOD_FEE_TOKEN_PRIORITY, selectRobinhoodFeeOnOutput, buildRobinhoodQuoteUrl, } from "./networks/robinhood.js"; export type { RobinhoodAdapter, RobinhoodToken, RobinhoodQuoteParams, RobinhoodTaxInfo, } from "./networks/robinhood.js";