@kodiak-finance/orderly-types 2.9.0 → 2.9.1-alpha.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.mts CHANGED
@@ -278,6 +278,9 @@ interface BracketOrder extends AlgoOrder, OrderExt {
278
278
  tp_pnl?: string;
279
279
  tp_offset?: string;
280
280
  tp_offset_percentage?: string;
281
+ /** Offset from mark price (UI / internal; same semantics as offset but base = mark). */
282
+ tp_offset_from_mark?: string;
283
+ tp_offset_percentage_from_mark?: string;
281
284
  tp_ROI?: string;
282
285
  tp_trigger_price?: string;
283
286
  tp_order_price?: string;
@@ -288,6 +291,8 @@ interface BracketOrder extends AlgoOrder, OrderExt {
288
291
  sl_pnl?: string;
289
292
  sl_offset?: string;
290
293
  sl_offset_percentage?: string;
294
+ sl_offset_from_mark?: string;
295
+ sl_offset_percentage_from_mark?: string;
291
296
  sl_ROI?: string;
292
297
  sl_trigger_price?: string;
293
298
  sl_order_price?: string;
@@ -388,6 +393,11 @@ interface BaseAlgoOrderEntity<T extends AlgoOrderRootType> extends OrderEntity {
388
393
  tp_order_type?: OrderType;
389
394
  sl_order_price?: string | number;
390
395
  sl_order_type?: OrderType;
396
+ /** Mark-based TP/SL offsets (UI + API); mirrors `BracketOrder` when used on TP/SL algo forms. */
397
+ tp_offset_from_mark?: string | number;
398
+ tp_offset_percentage_from_mark?: string | number;
399
+ sl_offset_from_mark?: string | number;
400
+ sl_offset_percentage_from_mark?: string | number;
391
401
  position_type?: PositionType;
392
402
  }
393
403
  type AlgoOrderEntity<T extends AlgoOrderRootType = AlgoOrderRootType.STOP> = T extends AlgoOrderRootType.TP_SL ? Optional<BaseAlgoOrderEntity<T>, "side" | "type" | "trigger_price" | "order_type"> : T extends AlgoOrderRootType.POSITIONAL_TP_SL ? Optional<BaseAlgoOrderEntity<T>, "side" | "type" | "trigger_price" | "order_type" | "quantity" | "tp_order_price" | "tp_order_type" | "sl_order_price" | "sl_order_type" | "position_type"> : Omit<BaseAlgoOrderEntity<T>, "child_orders" | "order_type">;
@@ -403,6 +413,10 @@ declare enum AnnouncementType {
403
413
  Vote = "VOTE"
404
414
  }
405
415
  declare namespace API {
416
+ /**
417
+ * Symbol trading status returned by public symbol APIs.
418
+ */
419
+ type SymbolTradingStatus = "POST_ONLY" | "ACTIVE" | "REDUCE_ONLY" | "DELISTING";
406
420
  interface ConvertThreshold {
407
421
  ltv_threshold: number;
408
422
  negative_usdc_threshold: number;
@@ -445,6 +459,12 @@ declare namespace API {
445
459
  "24h_volumn": number;
446
460
  "24h_volume": number;
447
461
  "24h_amount": number;
462
+ /** Permissionless listing: display name e.g. PERP_BTC_USDC, without broker_id suffix */
463
+ display_symbol_name?: string;
464
+ /** Permissionless listing: broker id; null for non-community-listed symbols */
465
+ broker_id?: string | null;
466
+ /** Trading status: POST_ONLY / ACTIVE / REDUCE_ONLY / DELISTING */
467
+ status?: SymbolTradingStatus;
448
468
  }
449
469
  interface MarketInfoExt extends MarketInfo {
450
470
  change: number;
@@ -489,6 +509,12 @@ declare namespace API {
489
509
  imr_factor: number;
490
510
  base_mmr: number;
491
511
  base_imr: number;
512
+ /** Permissionless listing: display name e.g. PERP_BTC_USDC, without broker_id suffix */
513
+ display_symbol_name?: string;
514
+ /** Permissionless listing: broker id; null for non-community-listed symbols */
515
+ broker_id?: string | null;
516
+ /** Trading status: POST_ONLY / ACTIVE / REDUCE_ONLY / DELISTING */
517
+ status?: SymbolTradingStatus;
492
518
  }
493
519
  interface TokenItem {
494
520
  token: string;
@@ -642,6 +668,10 @@ declare namespace API {
642
668
  base_imr: number;
643
669
  imr_factor: number;
644
670
  deviation_factor: number;
671
+ /** Permissionless listing: display name e.g. PERP_BTC_USDC, without broker_id suffix */
672
+ display_symbol_name?: string;
673
+ /** Permissionless listing: broker id; null for non-community-listed symbols */
674
+ broker_id?: string | null;
645
675
  }
646
676
  interface FundingHistory {
647
677
  symbol: string;
@@ -684,6 +714,8 @@ declare namespace API {
684
714
  notional: number;
685
715
  unrealPnlROI: number;
686
716
  unrealPnlROI_index?: number;
717
+ total_unsettled_cross_pnl?: number;
718
+ total_unsettled_isolated_pnl?: number;
687
719
  }
688
720
  interface Position {
689
721
  account_id?: string;
package/dist/index.d.ts CHANGED
@@ -278,6 +278,9 @@ interface BracketOrder extends AlgoOrder, OrderExt {
278
278
  tp_pnl?: string;
279
279
  tp_offset?: string;
280
280
  tp_offset_percentage?: string;
281
+ /** Offset from mark price (UI / internal; same semantics as offset but base = mark). */
282
+ tp_offset_from_mark?: string;
283
+ tp_offset_percentage_from_mark?: string;
281
284
  tp_ROI?: string;
282
285
  tp_trigger_price?: string;
283
286
  tp_order_price?: string;
@@ -288,6 +291,8 @@ interface BracketOrder extends AlgoOrder, OrderExt {
288
291
  sl_pnl?: string;
289
292
  sl_offset?: string;
290
293
  sl_offset_percentage?: string;
294
+ sl_offset_from_mark?: string;
295
+ sl_offset_percentage_from_mark?: string;
291
296
  sl_ROI?: string;
292
297
  sl_trigger_price?: string;
293
298
  sl_order_price?: string;
@@ -388,6 +393,11 @@ interface BaseAlgoOrderEntity<T extends AlgoOrderRootType> extends OrderEntity {
388
393
  tp_order_type?: OrderType;
389
394
  sl_order_price?: string | number;
390
395
  sl_order_type?: OrderType;
396
+ /** Mark-based TP/SL offsets (UI + API); mirrors `BracketOrder` when used on TP/SL algo forms. */
397
+ tp_offset_from_mark?: string | number;
398
+ tp_offset_percentage_from_mark?: string | number;
399
+ sl_offset_from_mark?: string | number;
400
+ sl_offset_percentage_from_mark?: string | number;
391
401
  position_type?: PositionType;
392
402
  }
393
403
  type AlgoOrderEntity<T extends AlgoOrderRootType = AlgoOrderRootType.STOP> = T extends AlgoOrderRootType.TP_SL ? Optional<BaseAlgoOrderEntity<T>, "side" | "type" | "trigger_price" | "order_type"> : T extends AlgoOrderRootType.POSITIONAL_TP_SL ? Optional<BaseAlgoOrderEntity<T>, "side" | "type" | "trigger_price" | "order_type" | "quantity" | "tp_order_price" | "tp_order_type" | "sl_order_price" | "sl_order_type" | "position_type"> : Omit<BaseAlgoOrderEntity<T>, "child_orders" | "order_type">;
@@ -403,6 +413,10 @@ declare enum AnnouncementType {
403
413
  Vote = "VOTE"
404
414
  }
405
415
  declare namespace API {
416
+ /**
417
+ * Symbol trading status returned by public symbol APIs.
418
+ */
419
+ type SymbolTradingStatus = "POST_ONLY" | "ACTIVE" | "REDUCE_ONLY" | "DELISTING";
406
420
  interface ConvertThreshold {
407
421
  ltv_threshold: number;
408
422
  negative_usdc_threshold: number;
@@ -445,6 +459,12 @@ declare namespace API {
445
459
  "24h_volumn": number;
446
460
  "24h_volume": number;
447
461
  "24h_amount": number;
462
+ /** Permissionless listing: display name e.g. PERP_BTC_USDC, without broker_id suffix */
463
+ display_symbol_name?: string;
464
+ /** Permissionless listing: broker id; null for non-community-listed symbols */
465
+ broker_id?: string | null;
466
+ /** Trading status: POST_ONLY / ACTIVE / REDUCE_ONLY / DELISTING */
467
+ status?: SymbolTradingStatus;
448
468
  }
449
469
  interface MarketInfoExt extends MarketInfo {
450
470
  change: number;
@@ -489,6 +509,12 @@ declare namespace API {
489
509
  imr_factor: number;
490
510
  base_mmr: number;
491
511
  base_imr: number;
512
+ /** Permissionless listing: display name e.g. PERP_BTC_USDC, without broker_id suffix */
513
+ display_symbol_name?: string;
514
+ /** Permissionless listing: broker id; null for non-community-listed symbols */
515
+ broker_id?: string | null;
516
+ /** Trading status: POST_ONLY / ACTIVE / REDUCE_ONLY / DELISTING */
517
+ status?: SymbolTradingStatus;
492
518
  }
493
519
  interface TokenItem {
494
520
  token: string;
@@ -642,6 +668,10 @@ declare namespace API {
642
668
  base_imr: number;
643
669
  imr_factor: number;
644
670
  deviation_factor: number;
671
+ /** Permissionless listing: display name e.g. PERP_BTC_USDC, without broker_id suffix */
672
+ display_symbol_name?: string;
673
+ /** Permissionless listing: broker id; null for non-community-listed symbols */
674
+ broker_id?: string | null;
645
675
  }
646
676
  interface FundingHistory {
647
677
  symbol: string;
@@ -684,6 +714,8 @@ declare namespace API {
684
714
  notional: number;
685
715
  unrealPnlROI: number;
686
716
  unrealPnlROI_index?: number;
717
+ total_unsettled_cross_pnl?: number;
718
+ total_unsettled_isolated_pnl?: number;
687
719
  }
688
720
  interface Position {
689
721
  account_id?: string;
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/version.ts","../src/constants.ts","../src/types/api.ts","../src/order.ts","../src/withdraw.ts","../src/chains.ts","../src/track.ts","../src/wallet.ts","../src/storageKey.ts","../src/errors.ts","../src/sign.ts","../src/assetHistory.ts","../src/account.ts"],"sourcesContent":["export { default as version } from \"./version\";\nexport * from \"./constants\";\nexport * from \"./types/api\";\n// export * from \"./order\";\nexport {\n OrderType,\n OrderSide,\n OrderStatus,\n AlgoOrderRootType,\n PositionType,\n AlgoOrderType,\n TriggerPriceType,\n BBOOrderType,\n OrderLevel,\n DistributionType,\n TrailingCallbackType,\n MarginMode,\n} from \"./order\";\nexport type {\n OrderEntity,\n AlgoOrderEntity,\n TPSLOrderEntry,\n BaseAlgoOrderEntity,\n AlgoOrderChildOrders,\n Optional,\n PositionSide,\n BracketOrderEntry,\n RequireKeys,\n BaseOrder,\n RegularOrder,\n AlgoOrder,\n OrderlyOrder,\n ChildOrder,\n BracketOrder,\n} from \"./order\";\nexport * from \"./context\";\nexport * from \"./withdraw\";\nexport * from \"./chains\";\nexport * from \"./track\";\nexport type { Chain as ChainConfig, ChainInfo, NativeCurrency } from \"./chains\";\nexport * from \"./wallet\";\nexport * from \"./storageKey\";\nexport { ApiError, SDKError } from \"./errors\";\n\nexport { definedTypes } from \"./sign\";\nexport * as superstruct from \"superstruct\";\nexport * from \"./assetHistory\";\nexport * from \"./account\";\n","declare global {\n interface Window {\n __ORDERLY_VERSION__?: {\n [key: string]: string;\n };\n }\n}\nif (typeof window !== \"undefined\") {\n window.__ORDERLY_VERSION__ = window.__ORDERLY_VERSION__ || {};\n window.__ORDERLY_VERSION__[\"@kodiak-finance/orderly-types\"] = \"2.7.4\";\n}\n\nexport default \"2.7.4\";\n","/* eslint-disable @typescript-eslint/no-explicit-any */\n\nexport enum AccountStatusEnum {\n EnableTradingWithoutConnected = -1,\n NotConnected = 0,\n Connected = 1,\n NotSignedIn = 2,\n SignedIn = 3,\n DisabledTrading = 4,\n EnableTrading = 5,\n}\n\nexport enum SystemStateEnum {\n Loading = 0,\n Error = 1,\n Ready = 10,\n}\n\nexport enum ExchangeStatusEnum {\n Normal = 0,\n Maintain = 1,\n}\n\nexport type NetworkId = \"testnet\" | \"mainnet\";\n\nexport enum NetworkStatusEnum {\n unknown = 0,\n unsupported = 1,\n supported = 2,\n}\n\n// Testnet\n// Arbitrum Goerli\n// export const ARBITRUM_TESTNET_CHAINID = 421613;\n// export const ARBITRUM_TESTNET_CHAINID_HEX = \"0x66EED\";\n\n// Arbitrum Sepolia\nexport const ARBITRUM_TESTNET_CHAINID = 421614;\nexport const SOLANA_TESTNET_CHAINID = 901901901;\nexport const SOLANA_MAINNET_CHAINID = 900900900;\nexport const STORY_TESTNET_CHAINID = 1516;\nexport const MONAD_TESTNET_CHAINID = 10143;\nexport const ABSTRACT_TESTNET_CHAINID = 11124;\nexport const ABSTRACT_MAINNET_CHAINID = 2741;\nexport const BSC_TESTNET_CHAINID = 97;\nexport const ABSTRACT_CHAIN_ID_MAP = new Set([\n ABSTRACT_TESTNET_CHAINID,\n ABSTRACT_MAINNET_CHAINID,\n]);\n\nexport const ARBITRUM_TESTNET_CHAINID_HEX = \"0x66EEE\";\n\nexport const MANTLE_TESTNET_CHAINID = 5003;\nexport const MANTLE_TESTNET_CHAINID_HEX = \"0x138b\";\n\n// Mainnet\nexport const ARBITRUM_MAINNET_CHAINID = 42161;\nexport const ETHEREUM_MAINNET_CHAINID = 1;\nexport const ARBITRUM_MAINNET_CHAINID_HEX = \"0xa4b1\";\n\nexport const MEDIA_TABLET = \"(max-width: 768px)\";\n\n/** deposit buffer factor */\nexport const DEPOSIT_FEE_RATE = 1.05;\n\n/**\n * A constant for the maximum value for a ``uint256``.\n */\nexport const MaxUint256: bigint = BigInt(\n \"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff\",\n);\n\nexport const nativeTokenAddress = \"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE\";\n\n// TODO: remove this\nexport const nativeETHAddress = \"0x0000000000000000000000000000000000000000\";\n\nexport const isNativeTokenChecker = (address?: string) => {\n if (!address) {\n return false;\n }\n return (\n address?.toLowerCase() === nativeTokenAddress.toLowerCase() ||\n address === nativeETHAddress\n );\n};\n\nexport const ArbitrumSepoliaChainInfo = {\n name: \"Arbitrum Sepolia\",\n public_rpc_url: \"https://arbitrum-sepolia.gateway.tenderly.co\",\n chain_id: \"421614\",\n currency_symbol: \"ETH\",\n currency_decimal: 18,\n explorer_base_url: \"https://sepolia.arbiscan.io\",\n vault_address: \"0x0EaC556c0C2321BA25b9DC01e4e3c95aD5CDCd2f\",\n};\nexport const AbstractTestnetChainInfo = {\n name: \"Abstract Testnet\",\n public_rpc_url: \"https://api.testnet.abs.xyz\",\n chain_id: \"11124\",\n currency_symbol: \"ETH\",\n currency_decimal: 18,\n explorer_base_url: \"https://sepolia.abscan.org\",\n vault_address: \"0xf14Ff11F3bb1011ff42665Ec869c7827c43745Fd\",\n};\nexport const AbstractTestnetTokenInfo = {\n chain_id: \"11124\",\n contract_address: \"0xa0BB43E2eA7fcE91F07e628d72fD6333e80F47D2\",\n decimals: 6,\n withdrawal_fee: 1,\n cross_chain_withdrawal_fee: 2,\n display_name: \"USDC\",\n};\nexport const SolanaDevnetChainInfo = {\n chain_id: \"901901901\",\n currency_decimal: 9,\n currency_symbol: \"SOL\",\n explorer_base_url: \"https://explorer.solana.com/?cluster=devnet\",\n name: \"Solana-Devnet\",\n public_rpc_url: \"https://api.devnet.solana.com\",\n vault_address: \"9shwxWDUNhtwkHocsUAmrNAQfBH2DHh4njdAEdHZZkF2\",\n};\n\nexport const SolanaDevnetTokenInfo = {\n chain_id: \"901901901\",\n contract_address: \"4zMMC9srt5Ri5X14GAgXhaHii3GnPAEERYPJgZJDncDU\",\n decimals: 6,\n withdrawal_fee: 1,\n cross_chain_withdrawal_fee: 5,\n display_name: \"USDC\",\n};\nexport const ArbitrumSepoliaTokenInfo = {\n chain_id: \"421614\",\n contract_address: \"0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d\",\n decimals: 6,\n withdrawal_fee: 1,\n cross_chain_withdrawal_fee: 2,\n display_name: \"USDC\",\n};\n\nexport const TesnetTokenFallback = (testnetTokens: any) => [\n {\n token: \"USDC\",\n token_hash:\n \"0xd6aca1be9729c13d677335161321649cccae6a591554772516700f986f942eaa\",\n decimals: 6,\n minimum_withdraw_amount: 0.000001,\n chain_details: testnetTokens,\n },\n];\n\nexport const EMPTY_LIST: ReadonlyArray<any> = [];\n\nexport const EMPTY_OBJECT: Readonly<Record<PropertyKey, any>> = {};\n\nexport const EMPTY_OPERATION = () => {};\n\n/**\n * Event name for broadcasting Order Entry estimated liquidation price changes\n * so that UI consumers (e.g. TradingView adapters) can update their visuals\n * without introducing tight coupling between widgets.\n */\nexport const ORDER_ENTRY_EST_LIQ_PRICE_CHANGE =\n \"orderEntry:estLiqPriceChange\" as const;\n\n/**\n * Payload for the ORDER_ENTRY_EST_LIQ_PRICE_CHANGE event, carrying the symbol\n * and the latest estimated liquidation price derived from the order form.\n */\nexport interface OrderEntryEstLiqPriceChangePayload {\n symbol: string;\n estLiqPrice: number | null;\n /** Whether the user is considered active when this payload is emitted (within the active window). */\n isUserActive?: boolean;\n}\n","/* eslint-disable @typescript-eslint/no-namespace */\nimport { AlgoOrderRootType, MarginMode, OrderSide, OrderType } from \"../order\";\n\nexport enum AnnouncementType {\n Listing = \"LISTING\",\n Maintenance = \"MAINTENANCE\",\n Delisting = \"DELISTING\",\n Campaign = \"CAMPAIGN\",\n Update = \"UPDATE\",\n Vote = \"VOTE\",\n}\n\nexport declare namespace API {\n // /v1/public/auto_convert_threshold\n export interface ConvertThreshold {\n ltv_threshold: number;\n negative_usdc_threshold: number;\n }\n\n //v1/public/token\n export interface Token {\n token: string;\n token_hash: string;\n decimals: number;\n minimum_withdraw_amount: number;\n base_weight: number;\n discount_factor: number;\n haircut: number;\n user_max_qty: number;\n is_collateral: boolean;\n on_chain_swap: boolean;\n chain_details: ChainDetail[];\n }\n\n //v1/public/token\n export interface ChainDetail {\n chain_id: string;\n contract_address: string;\n decimals: number;\n }\n\n // ws market, api v1/public/futures\n export interface MarketInfo {\n symbol: string;\n index_price: number;\n mark_price: number;\n sum_unitary_funding: number;\n est_funding_rate: number;\n last_funding_rate: number;\n next_funding_time: number;\n open_interest: string;\n \"24h_open\": number;\n \"24h_close\": number;\n \"24h_high\": number;\n \"24h_low\": number;\n /**\n * @deprecated\n * spelling mistake, use 24h_volume to instead, will be remove next version\n */\n \"24h_volumn\": number;\n \"24h_volume\": number;\n \"24h_amount\": number;\n }\n\n export interface MarketInfoExt extends MarketInfo {\n change: number;\n \"24h_volume\": number;\n }\n\n export interface AnnouncementRow {\n announcement_id: number | string;\n message: string;\n i18n?: Record<PropertyKey, string | null>;\n url?: string | null;\n type?: AnnouncementType | null;\n updated_time?: number | null;\n coverImage?: string;\n }\n\n export interface Announcement {\n last_updated_time?: number | null;\n rows?: AnnouncementRow[];\n }\n\n /**\n * v1/public/info\n */\n export interface Symbol {\n symbol: string;\n quote_min: number;\n quote_max: number;\n quote_tick: number;\n base_min: number;\n base_max: number;\n base_tick: number;\n min_notional: number;\n price_range: number;\n price_scope: number;\n std_liquidation_fee: number;\n liquidator_fee: number;\n claim_insurance_fund_discount: number;\n funding_period: number;\n cap_funding: number;\n floor_funding: number;\n interest_rate: number;\n created_time: number;\n updated_time: number;\n imr_factor: number;\n base_mmr: number;\n base_imr: number;\n }\n\n export interface TokenItem {\n token: string;\n token_hash: string;\n decimals: number;\n minimum_withdraw_amount: number;\n chain_details: ChainDetail[];\n }\n\n export interface ChainDetail {\n chain_id: string;\n contract_address: string;\n decimals: number;\n withdrawal_fee: number;\n }\n\n export interface SymbolExt extends Symbol {\n base: string;\n base_dp: number;\n\n quote: string;\n quote_dp: number;\n type: string;\n name: string;\n displayName: string;\n }\n\n export interface RwaSymbol {\n symbol: string;\n status: \"open\" | \"close\";\n next_open: number;\n next_close: number;\n\n base: string;\n quote: string;\n type: string;\n name: string;\n }\n\n export interface Order {\n symbol: string;\n status: string;\n side: string;\n order_id: number;\n algo_order_id?: number;\n user_id: number;\n price: number | null;\n type: string;\n quantity: number;\n amount: null;\n visible: number;\n executed: number;\n total_fee: number;\n fee_asset: string;\n client_order_id?: string;\n average_executed_price: number;\n total_executed_quantity: number;\n visible_quantity: number;\n created_time: number;\n updated_time: number;\n reduce_only: boolean;\n trigger_price?: number;\n order_tag?: string;\n margin_mode?: MarginMode;\n }\n\n export interface OrderExt extends Order {\n mark_price: string;\n }\n\n export interface AlgoOrder {\n algo_order_id: number;\n root_algo_order_id: number;\n parent_algo_order_id: number;\n parent_algo_type: AlgoOrderRootType;\n symbol: string;\n algo_type: string;\n child_orders: AlgoOrder[];\n side: string;\n quantity: number;\n is_triggered: boolean;\n is_activated: boolean;\n trigger_price: number;\n trigger_price_type: string;\n type: OrderType;\n root_algo_status: string;\n algo_status: string;\n price?: number;\n total_executed_quantity: number;\n visible_quantity: number;\n total_fee: number;\n fee_asset: string;\n reduce_only: boolean;\n created_time: number;\n updated_time: number;\n order_tag?: string;\n client_order_id?: string;\n\n // trailing stop order\n activated_price?: number;\n callback_value?: number;\n callback_rate?: number;\n extreme_price?: number;\n margin_mode?: MarginMode;\n }\n\n export interface AlgoOrderExt extends AlgoOrder {\n mark_price: string;\n position?: Partial<Position>;\n tp_trigger_price?: number;\n sl_trigger_price?: number;\n }\n\n export interface OrderResponse {\n rows: (Order | AlgoOrder)[];\n meta: {\n total: number;\n current_page: number;\n records_per_page: number;\n };\n }\n\n export interface FundingRate {\n symbol: string;\n est_funding_rate: number;\n est_funding_rate_timestamp: number;\n last_funding_rate: number;\n last_funding_rate_timestamp: number;\n next_funding_time: number;\n sum_unitary_funding: number;\n }\n\n export interface FundingPeriodData {\n rate: number;\n positive: number;\n negative: number;\n }\n\n export interface FundingDetails {\n symbol: string;\n quote_min: number;\n quote_max: number;\n quote_tick: number;\n base_min: number;\n base_max: number;\n base_tick: number;\n min_notional: number;\n price_range: number;\n price_scope: number;\n std_liquidation_fee: number;\n liquidator_fee: number;\n claim_insurance_fund_discount: number;\n funding_period: number;\n cap_funding: number;\n floor_funding: number;\n interest_rate: number;\n created_time: number;\n updated_time: number;\n liquidation_tier: number;\n cap_ir: number;\n floor_ir: number;\n mark_index_price_deviation_floor: number;\n mark_index_price_deviation_cap: number;\n global_max_oi_cap: number;\n base_mmr: number;\n base_imr: number;\n imr_factor: number;\n deviation_factor: number;\n }\n\n export interface FundingHistory {\n symbol: string;\n data_start_time: string;\n funding: {\n last: FundingPeriodData;\n \"1d\": FundingPeriodData;\n \"3d\": FundingPeriodData;\n \"7d\": FundingPeriodData;\n \"14d\": FundingPeriodData;\n \"30d\": FundingPeriodData;\n \"90d\": FundingPeriodData;\n };\n }\n\n export interface PositionInfo extends PositionAggregated {\n // margin_ratio: number;\n // initial_margin_ratio: number;\n // maintenance_margin_ratio: number;\n // open_margin_ratio: number;\n // current_margin_ratio_with_orders: number;\n // initial_margin_ratio_with_orders: number;\n // maintenance_margin_ratio_with_orders: number;\n // total_collateral_value: number;\n // free_collateral: number;\n rows: Position[];\n // total_pnl_24_h: number;\n }\n\n export interface PositionAggregated {\n margin_ratio: number;\n initial_margin_ratio: number;\n maintenance_margin_ratio: number;\n open_margin_ratio: number;\n current_margin_ratio_with_orders: number;\n initial_margin_ratio_with_orders: number;\n maintenance_margin_ratio_with_orders: number;\n total_collateral_value: number;\n free_collateral: number;\n total_pnl_24_h: number;\n /**\n * @deprecated use total_unreal_pnl instead\n */\n unrealPnL: number;\n total_unreal_pnl: number;\n total_unreal_pnl_index?: number;\n /**\n * @deprecated use total_unsettled_pnl instead\n */\n unsettledPnL: number;\n total_unsettled_pnl: number;\n notional: number;\n unrealPnlROI: number;\n unrealPnlROI_index?: number;\n }\n\n export interface Position {\n account_id?: string;\n symbol: string;\n position_qty: number;\n cost_position: number;\n last_sum_unitary_funding: number;\n pending_long_qty: number;\n pending_short_qty: number;\n settle_price: number;\n average_open_price: number;\n unrealized_pnl: number;\n unrealized_pnl_index?: number;\n unrealized_pnl_ROI: number;\n unsettled_pnl: number;\n unsettled_pnl_ROI: number;\n unrealized_pnl_ROI_index?: number;\n mark_price: number;\n index_price?: number;\n est_liq_price: number | null;\n timestamp: number;\n /**\n * Maintenance margin ratio\n */\n mmr: number;\n imr: number;\n IMR_withdraw_orders: number;\n MMR_with_orders: number;\n pnl_24_h: number;\n fee_24_h: number;\n fundingFee?: number;\n leverage: number;\n margin?: number;\n margin_mode?: MarginMode;\n }\n\n export interface PositionExt extends Position {\n notional: number;\n mm: number;\n }\n\n export interface PositionTPSLExt extends PositionExt {\n full_tp_sl?: {\n tp_trigger_price?: number;\n sl_trigger_price?: number;\n algo_order?: AlgoOrder;\n };\n partial_tp_sl?: {\n tp_trigger_price?: number;\n sl_trigger_price?: number;\n order_num?: number;\n algo_order?: AlgoOrder;\n };\n\n // has_position_tp_sl: boolean;\n\n /**\n * related position tp/sl order\n */\n algo_order?: AlgoOrder;\n }\n\n export interface PositionsTPSLExt extends PositionAggregated {\n rows: PositionTPSLExt[];\n }\n\n export interface Trade {\n symbol: Symbol;\n side: OrderSide;\n ts: number;\n executed_price: number;\n executed_quantity: number;\n executed_timestamp: number;\n }\n\n export interface Holding {\n token: string;\n holding: number;\n frozen: number;\n pending_short: number;\n isolated_margin: number;\n isolated_order_frozen: number;\n updated_time: number;\n }\n\n export interface AccountInfo {\n account_id: string;\n email: string;\n account_mode: string;\n tier: string;\n futures_tier: string;\n maintenance_cancel_orders: boolean;\n taker_fee_rate: number;\n maker_fee_rate: number;\n rwa_taker_fee_rate?: number;\n rwa_maker_fee_rate?: number;\n max_leverage: number;\n futures_taker_fee_rate: number;\n futures_maker_fee_rate: number;\n imr_factor: { [key: string]: number };\n max_notional: { [key: string]: number };\n }\n\n export interface Chain {\n dexs: string[];\n network_infos: NetworkInfos;\n token_infos: TokenInfo[];\n nativeToken?: TokenInfo;\n address?: string;\n symbol?: string;\n on_chain_swap?: boolean;\n // nativeToken\n }\n\n export interface NetworkInfos {\n name: string;\n shortName: string;\n public_rpc_url: string;\n chain_id: number;\n currency_symbol: string;\n bridge_enable: boolean;\n mainnet: boolean;\n est_txn_mins: number | null;\n explorer_base_url: string;\n bridgeless?: boolean;\n withdrawal_fee?: number;\n minimum_withdraw_amount?: number;\n vault_address: string;\n currency_decimal?: number;\n\n cross_chain_router: string;\n depositor: string;\n }\n\n export interface TokenInfo {\n address?: string;\n base_weight: number;\n decimals?: number;\n /** token decimals */\n token_decimal?: number;\n discount_factor?: number | null;\n display_name?: string;\n haircut: number;\n is_collateral: boolean;\n symbol?: string;\n user_max_qty: number;\n precision?: number;\n minimum_withdraw_amount: number;\n swap_enable?: boolean;\n }\n\n export interface Chain {\n token: string;\n token_hash: string;\n decimals: number;\n minimum_withdraw_amount: number;\n base_weight: number;\n discount_factor?: number | null;\n haircut: number;\n user_max_qty: number;\n is_collateral: boolean;\n chain_details: ChainDetail[];\n }\n\n // export interface Token{\n\n // }\n\n export interface ChainDetail {\n chain_id: string;\n chain_name?: string;\n contract_address: string;\n decimals: number;\n withdrawal_fee: number;\n cross_chain_withdrawal_fee: number;\n display_name: string;\n }\n\n export interface AssetHistory {\n meta: RecordsMeta;\n rows: AssetHistoryRow[];\n }\n\n export interface RecordsMeta {\n total: number;\n records_per_page: number;\n current_page: number;\n }\n\n export interface AssetHistoryRow {\n id: string;\n tx_id: string;\n side: string;\n token: string;\n amount: number;\n fee: number;\n trans_status: string;\n created_time: number;\n updated_time: number;\n chain_id: string;\n }\n\n export interface FundingFeeHistory {\n meta: RecordsMeta;\n rows: FundingFeeRow[];\n }\n\n export interface FundingFeeRow {\n symbol: string;\n funding_rate: number;\n mark_price: number;\n funding_fee: number;\n payment_type: string;\n status: string;\n created_time: number;\n updated_time: number;\n }\n\n export interface StrategyVaultHistoryRow {\n vault_id: string;\n created_time: number;\n type: \"withdrawal\" | \"deposit\";\n status: string;\n amount_change: number;\n token?: string; // need to hard code for now\n vaultName?: string; // need to hard code for now\n }\n\n export interface StrategyVaultHistory {\n rows: StrategyVaultHistoryRow[];\n meta: RecordsMeta;\n }\n\n export interface TransferHistoryRow {\n amount: number;\n created_time: number;\n from_account_id: string;\n id: string;\n status: \"CREATED\" | \"PENDING\" | \"COMPLETED\" | \"FAILED\";\n to_account_id: string;\n token: string;\n updated_time: number;\n chain_id: string;\n // timestamp\n block_time: number;\n }\n\n export interface TransferHistory {\n meta: RecordsMeta;\n rows: TransferHistoryRow[];\n }\n\n export interface TransferHistoryRow {\n amount: number;\n created_time: number;\n from_account_id: string;\n id: string;\n status: \"CREATED\" | \"PENDING\" | \"COMPLETED\" | \"FAILED\";\n to_account_id: string;\n token: string;\n updated_time: number;\n }\n\n export interface DailyRow {\n account_value: number;\n broker_id: string;\n date: string;\n perp_volume: number;\n pnl: number;\n snapshot_time?: number;\n }\n\n export interface PositionHistory {\n position_id: number; // Unique identifier for the position\n liquidation_id?: number; // Unique identifier for the position\n position_status: string; // Status of the position\n type: string; // Type of the position activity\n symbol: string; // Trading pair symbol\n avg_open_price: number; // Average open price of the position\n avg_close_price: number; // Average close price of the position\n max_position_qty: number; // Maximum quantity held in the position\n closed_position_qty: number; // Quantity closed in the position\n side: \"LONG\" | \"SHORT\"; // Side of the position\n trading_fee: number; // Fee charged for trading\n accumulated_funding_fee: number; // Accumulated funding fee for the position\n insurance_fund_fee: number; // Fee contributed to the insurance fund\n liquidator_fee: number; // Fee paid to the liquidator\n realized_pnl: number; // Realized profit and loss\n open_timestamp: number; // Timestamp when the position was opened\n close_timestamp: number; // Timestamp when the position was closed\n last_update_time: number; // Timestamp of the last update to the position\n leverage: number; // Leverage of the position\n margin_mode?: MarginMode | 1 | 0;\n }\n\n export interface LiquidationPositionByPerp {\n abs_liquidation_fee: number;\n cost_position_transfer: number;\n liquidator_fee: number;\n position_qty: number;\n symbol: string;\n transfer_price: number;\n mark_price: number;\n }\n\n export interface Liquidation {\n liquidation_id: number;\n timestamp: number;\n transfer_amount_to_insurance_fund: number;\n margin_ratio: number;\n account_mmr: number;\n collateral_value: number;\n position_notional: number;\n positions_by_perp: LiquidationPositionByPerp[];\n }\n\n export interface VaultBalance {\n chain_id: string;\n token: string;\n balance: number;\n pending_rebalance: number;\n }\n\n export interface RestrictedAreas {\n invalid_web_country: string;\n invalid_web_city: string;\n }\n\n export interface IpInfo {\n ip: string;\n city: string;\n region: string;\n checked: boolean;\n }\n\n export interface LeverageInfo {\n symbol: string;\n leverage: number;\n margin_mode?: MarginMode;\n }\n\n export namespace Referral {\n /** /v1/referral/multi_level/volume_prerequisite */\n export interface VolumePrerequisite {\n required_volume: number;\n current_volume: number;\n }\n\n /** /v1/referral/multi_level/max_rebate_rate */\n export interface MaxRebateRate {\n max_rebate_rate: number;\n }\n\n /** /v1/referral/multi_level/rebate_info */\n export interface MultiLevelRebateInfo {\n referral_code: string;\n max_rebate_rate: number;\n default_referee_rebate_rate: number;\n direct_invites?: number;\n indirect_invites?: number;\n direct_volume?: number;\n indirect_volume?: number;\n direct_rebate?: number;\n indirect_rebate?: number;\n direct_bonus_rebate_rate?: number;\n direct_bonus_rebate?: number;\n }\n\n /** /v1/referral/multi_level/admin */\n export interface MultiLevelReferralConfig {\n enable: boolean;\n required_volume: number;\n max_rebate_rate: number;\n }\n\n /** /v1/referral/multi_level/statistics */\n export interface MultiLevelStatistics {\n direct_invites: number;\n indirect_invites: number;\n direct_traded: number;\n indirect_traded: number;\n direct_volume: number;\n indirect_volume: number;\n direct_rebate: number;\n indirect_rebate: number;\n direct_bonus_rebate?: number;\n }\n }\n}\n\nexport declare namespace WSMessage {\n export interface Ticker {\n symbol: string;\n open: number;\n close: number;\n high: number;\n low: number;\n volume: number;\n amount: number;\n count: number;\n change: number;\n open_interest?: number;\n index_price?: number;\n }\n\n export interface MarkPrice {\n symbol: string;\n price: number;\n }\n\n export interface Position {\n symbol: string;\n marginMode?: MarginMode;\n positionQty: number;\n costPosition: number;\n lastSumUnitaryFunding: number;\n sumUnitaryFundingVersion: number;\n pendingLongQty: number;\n pendingShortQty: number;\n settlePrice: number;\n averageOpenPrice: number;\n unsettledPnl: number;\n pnl24H: number;\n fee24H: number;\n markPrice: number;\n estLiqPrice: number;\n version: number;\n imr: number;\n imrwithOrders: number;\n mmrwithOrders: number;\n mmr: number;\n }\n\n export interface VaultBalance {\n chain_id: string;\n token: string;\n balance: number;\n pending_rebalance: number;\n }\n\n export interface Order {\n symbol: string;\n clientOrderId: string;\n orderId: number;\n type: string;\n side: string;\n quantity: number;\n price: number;\n tradeId: number;\n executedPrice: number;\n executedQuantity: number;\n fee: number;\n feeAsset: string;\n totalExecutedQuantity: number;\n avgPrice: number;\n status: string;\n reason: string;\n totalFee: number;\n visible: number;\n /**\n * update time\n */\n timestamp: number;\n reduceOnly: boolean;\n maker: boolean;\n marginMode?: MarginMode;\n }\n\n export interface Holding {\n holding: number;\n frozen: number;\n interest: number;\n pendingShortQty: number;\n pendingExposure: number;\n pendingLongQty: number;\n pendingLongExposure: number;\n version: number;\n staked: number;\n unbonding: number;\n vault: number;\n fee24H: number;\n markPrice: number;\n }\n\n export interface AlgoOrder {\n symbol: string;\n rootAlgoOrderId: number;\n parentAlgoOrderId: number;\n algoOrderId: number;\n status: string;\n algoType: string;\n side: string;\n quantity: number;\n triggerStatus: string;\n price: number;\n type: string;\n triggerTradePrice: number;\n triggerTime: number;\n tradeId: number;\n executedPrice: number;\n executedQuantity: number;\n fee: number;\n feeAsset: string;\n totalExecutedQuantity: number;\n averageExecutedPrice: number;\n totalFee: number;\n timestamp: number;\n visibleQuantity: number;\n reduceOnly: boolean;\n triggered: boolean;\n maker: boolean;\n rootAlgoStatus: string;\n algoStatus: string;\n marginMode?: MarginMode;\n }\n\n export interface Announcement {\n announcement_id: string;\n message: string;\n i18n: Record<PropertyKey, string | null>;\n url?: string | null;\n type: AnnouncementType | null;\n updated_time: number;\n }\n}\n","/**\n * Supported types for placing an order\n */\nexport enum OrderType {\n LIMIT = \"LIMIT\",\n MARKET = \"MARKET\",\n IOC = \"IOC\",\n FOK = \"FOK\",\n POST_ONLY = \"POST_ONLY\",\n ASK = \"ASK\",\n BID = \"BID\",\n STOP_LIMIT = \"STOP_LIMIT\",\n STOP_MARKET = \"STOP_MARKET\",\n /**\n * Only for POSITIONAL_TP_SL type algo order\n */\n CLOSE_POSITION = \"CLOSE_POSITION\",\n /**\n * Scaled order\n */\n SCALED = \"SCALED\",\n /**\n * trailing stop\n */\n TRAILING_STOP = \"TRAILING_STOP\",\n}\n\n/**\n * Margin mode for the order\n */\nexport enum MarginMode {\n ISOLATED = \"ISOLATED\",\n CROSS = \"CROSS\",\n}\n\nexport enum BBOOrderType {\n COUNTERPARTY1 = \"counterparty1\",\n COUNTERPARTY5 = \"counterparty5\",\n QUEUE1 = \"queue1\",\n QUEUE5 = \"queue5\",\n}\n\nexport enum OrderLevel {\n ONE = 0,\n TWO = 1,\n THREE = 2,\n FOUR = 3,\n FIVE = 4,\n}\n\nexport enum AlgoOrderRootType {\n TP_SL = \"TP_SL\",\n POSITIONAL_TP_SL = \"POSITIONAL_TP_SL\",\n STOP = \"STOP\",\n BRACKET = \"BRACKET\",\n TRAILING_STOP = \"TRAILING_STOP\",\n}\n\nexport enum TriggerPriceType {\n MARK_PRICE = \"MARK_PRICE\",\n}\nexport enum PositionType {\n FULL = \"FULL\",\n PARTIAL = \"PARTIAL\",\n}\n\nexport enum AlgoOrderType {\n TAKE_PROFIT = \"TAKE_PROFIT\",\n STOP_LOSS = \"STOP_LOSS\",\n}\n\nexport enum OrderSide {\n BUY = \"BUY\",\n SELL = \"SELL\",\n}\n\nexport enum PositionSide {\n LONG = \"LONG\",\n SHORT = \"SHORT\",\n}\n\nexport enum OrderStatus {\n /** @deprecated */\n OPEN = \"OPEN\",\n NEW = \"NEW\",\n FILLED = \"FILLED\",\n PARTIAL_FILLED = \"PARTIAL_FILLED\",\n CANCELLED = \"CANCELLED\",\n REPLACED = \"REPLACED\",\n // CANCELLED + FILLED\n COMPLETED = \"COMPLETED\",\n // NEW + PARTIAL_FILLED\n INCOMPLETE = \"INCOMPLETE\",\n REJECTED = \"REJECTED\",\n}\n\nexport interface OrderExt {\n total: string;\n}\n\nexport interface BaseOrder {\n symbol: string;\n order_type: OrderType;\n margin_mode: MarginMode;\n order_type_ext?: OrderType;\n order_price: string;\n order_quantity: string;\n order_amount?: number;\n visible_quantity: number;\n side: OrderSide;\n reduce_only: boolean;\n slippage: number;\n order_tag: string;\n level: OrderLevel;\n post_only_adjust: boolean;\n /** custom order id, it is used to identify the order from ws */\n client_order_id: string;\n}\n\n/** Scaled order fields */\nexport interface ScaledOrder {\n /** user-defined price at the first order (index 0) */\n start_price?: string;\n /** user-defined price at the last order (index total_orders - 1) */\n end_price?: string;\n /** total number of orders */\n total_orders?: string;\n /** quantity distribution type */\n distribution_type?: DistributionType;\n /** the ratio of qty[end] / qty[start] */\n skew?: string;\n}\n\nexport enum TrailingCallbackType {\n VALUE = \"value\",\n RATE = \"rate\",\n}\n\n/**\n * Trailing Stop that allows users to set an activation price and a trailing amount (value / rate).\n * The order is only activated when the market reaches the activation price,\n * after which the trailing stop logic tracks the extreme price and triggers when the price retraces by the specified trailing amount.\n */\nexport interface TrailingStopOrder {\n /**\n * activated price\n */\n activated_price?: string;\n /**\n * i.e. the value = 100\n */\n callback_value?: string;\n /**\n * i.e. the value = 0.1 represent to 10%\n */\n callback_rate?: string;\n}\n\nexport interface RegularOrder\n extends BaseOrder, OrderExt, ScaledOrder, TrailingStopOrder {\n // symbol: string;\n // client_order_id: string;\n // type: OrderType;\n // price: number;\n // quantity: number;\n}\n\nexport interface AlgoOrder extends BaseOrder, OrderExt {\n // symbol: string;\n quantity: string;\n type: OrderType;\n price: string;\n algo_type: AlgoOrderRootType;\n trigger_price_type: string;\n trigger_price: string;\n child_orders: AlgoOrderChildOrders[];\n}\n\nexport interface BracketOrder extends AlgoOrder, OrderExt {\n /**\n * Computed take profit\n */\n position_type?: PositionType;\n // tp_enable?: boolean;\n // sl_enable?: boolean;\n tp_pnl?: string;\n tp_offset?: string;\n tp_offset_percentage?: string;\n tp_ROI?: string;\n tp_trigger_price?: string;\n tp_order_price?: string;\n tp_order_type?: OrderType;\n\n /**\n * Computed stop loss\n */\n sl_pnl?: string;\n sl_offset?: string;\n sl_offset_percentage?: string;\n sl_ROI?: string;\n sl_trigger_price?: string;\n sl_order_price?: string;\n sl_order_type?: OrderType;\n}\n\nexport type OrderlyOrder = RegularOrder & AlgoOrder & BracketOrder;\n\nexport interface AlgoOrderChildOrders {\n symbol: string;\n algo_type: string;\n child_orders: ChildOrder[];\n}\n\nexport interface ChildOrder {\n symbol: string;\n algo_type: AlgoOrderType;\n side: string;\n type: OrderType;\n trigger_price: string;\n price?: string;\n reduce_only: boolean;\n trigger_price_type?: string;\n}\n\nexport interface TrailingStopOrder {\n activated_price?: string;\n callback_value?: string;\n callback_rate?: string;\n}\n\nexport interface OrderEntity extends ScaledOrder, TrailingStopOrder {\n symbol: string;\n order_type: OrderType;\n margin_mode?: MarginMode;\n algo_type?: AlgoOrderRootType;\n order_type_ext?: OrderType;\n order_price?: string;\n order_quantity?: string;\n order_amount?: number;\n // Whether to display in the orderbook, default=order_quantity, not displayed when =0,\n visible_quantity?: number;\n reduce_only?: boolean;\n side: OrderSide;\n broker_id?: string;\n slippage?: number;\n\n // internal fields\n total?: string;\n // hideInOrderbook?: boolean;\n isStopOrder?: boolean;\n trigger_price?: string;\n order_tag?: string;\n client_order_id?: string;\n level?: OrderLevel;\n}\n\nexport enum DistributionType {\n // enum value need to use lowercase to match the track params\n FLAT = \"flat\",\n ASCENDING = \"ascending\",\n DESCENDING = \"descending\",\n CUSTOM = \"custom\",\n}\n\nexport type Optional<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;\nexport type RequireKeys<T extends object, K extends keyof T> = Required<\n Pick<T, K>\n> &\n Partial<Omit<T, K>>;\n\nexport interface BaseAlgoOrderEntity<\n T extends AlgoOrderRootType,\n> extends OrderEntity {\n algo_type: AlgoOrderRootType;\n child_orders: (Partial<Omit<AlgoOrderEntity<T>, \"algo_type\" | \"type\">> & {\n algo_type: AlgoOrderType;\n type: OrderType;\n child_orders?: BaseAlgoOrderEntity<T>[\"child_orders\"];\n // trigger_price: number | string;\n })[];\n // if update the order, then need to provide the order_id\n algo_order_id?: number;\n client_order_id?: string;\n order_tag?: string;\n price?: number | string;\n quantity: number | string;\n reduce_only?: boolean;\n side: OrderSide;\n symbol: string;\n trigger_price: string;\n trigger_price_type: TriggerPriceType;\n type: OrderType;\n visible_quantity?: number;\n is_activated?: boolean;\n tp_trigger_price?: string | number;\n sl_trigger_price?: string | number;\n tp_order_price?: string | number;\n tp_order_type?: OrderType;\n sl_order_price?: string | number;\n sl_order_type?: OrderType;\n // tp_enable?: boolean;\n // sl_enable?: boolean;\n position_type?: PositionType;\n}\n\nexport type AlgoOrderEntity<\n T extends AlgoOrderRootType = AlgoOrderRootType.STOP,\n> = T extends AlgoOrderRootType.TP_SL\n ? Optional<\n BaseAlgoOrderEntity<T>,\n \"side\" | \"type\" | \"trigger_price\" | \"order_type\"\n >\n : T extends AlgoOrderRootType.POSITIONAL_TP_SL\n ? Optional<\n BaseAlgoOrderEntity<T>,\n | \"side\"\n | \"type\"\n | \"trigger_price\"\n | \"order_type\"\n | \"quantity\"\n // | \"tp_enable\"\n // | \"sl_enable\"\n | \"tp_order_price\"\n | \"tp_order_type\"\n | \"sl_order_price\"\n | \"sl_order_type\"\n | \"position_type\"\n >\n : Omit<BaseAlgoOrderEntity<T>, \"child_orders\" | \"order_type\">;\n\nexport type TPSLOrderEntry = Optional<\n AlgoOrderEntity<AlgoOrderRootType.TP_SL>,\n \"side\" | \"type\" | \"trigger_price\"\n>;\n\nexport type BracketOrderEntry = Optional<\n AlgoOrderEntity<AlgoOrderRootType.BRACKET>,\n \"side\"\n>;\n","export enum WithdrawStatus {\n NotSupported = \"NotSupported\",\n NotConnected = \"NotConnected\",\n Unsettle = \"Unsettle\",\n InsufficientBalance = \"InsufficientBalance\",\n Normal = \"Normal\",\n}\n","export interface Chain {\n id: number;\n chainNameShort: string;\n chainLogo: string;\n chainInfo: ChainInfo;\n minGasBalance: number;\n minCrossGasBalance: number;\n maxPrepayCrossGas: number;\n blockExplorerName: string;\n chainName: string;\n requestRpc: string;\n}\n\nexport interface ChainInfo {\n chainId: string;\n chainName: string;\n nativeCurrency: NativeCurrency;\n rpcUrls: string[];\n blockExplorerUrls: string[];\n}\n\nexport interface NativeCurrency {\n name: string;\n symbol: string;\n decimals: number;\n fix: number;\n}\n\nexport const Ethereum = {\n chainNameShort: \"Ethereum\",\n id: 1,\n chainLogo: \"\",\n chainInfo: {\n chainId: `0x${(1).toString(16)}`,\n chainName: \"Ethereum Mainnet\",\n nativeCurrency: {\n name: \"eth\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 8,\n },\n rpcUrls: [\"https://mainnet.infura.io/v3/9155d40884554acdb17699a18a1fe348\"],\n blockExplorerUrls: [\"https://etherscan.io/\"],\n },\n minGasBalance: 0.002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.025,\n blockExplorerName: \"EthScan\",\n chainName: \"Ethereum Mainnet\",\n requestRpc: \"https://rpc.ankr.com/eth\",\n};\n\nexport const Avalanche = {\n id: 43114,\n chainInfo: {\n chainId: `0x${(43114).toString(16)}`, // '0xa86a'\n chainName: \"Avalanche\",\n nativeCurrency: {\n name: \"avax\",\n symbol: \"AVAX\",\n decimals: 18,\n fix: 5,\n },\n rpcUrls: [\"https://api.avax.network/ext/bc/C/rpc\"],\n blockExplorerUrls: [\"https://snowtrace.io/\"],\n },\n minGasBalance: 0.05,\n minCrossGasBalance: 0.15,\n maxPrepayCrossGas: 2,\n blockExplorerName: \"Snowtrace\",\n chainName: \"Avalanche\",\n chainNameShort: \"Avalanche\",\n chainLogo: \"\",\n requestRpc: \"https://rpc.ankr.com/avalanche\",\n};\n\nexport const Fuji = {\n id: 43113,\n chainInfo: {\n chainId: `0x${(43113).toString(16)}`, // '0xa86a'\n chainName: \"Avalanche Fuji Testnet\",\n nativeCurrency: {\n name: \"avax\",\n symbol: \"AVAX\",\n decimals: 18,\n fix: 5,\n },\n rpcUrls: [\"https://api.avax.network/ext/bc/C/rpc\"],\n blockExplorerUrls: [\"https://snowtrace.io/\"],\n },\n minGasBalance: 0.05,\n minCrossGasBalance: 0.15,\n maxPrepayCrossGas: 2,\n blockExplorerName: \"Snowtrace\",\n chainName: \"Avalanche Fuji\",\n chainNameShort: \"Avalanche Fuji\",\n chainLogo: \"\",\n requestRpc: \"https://rpc.ankr.com/avalanche\",\n};\n\nexport const BNB = {\n id: 56,\n chainInfo: {\n chainId: `0x${(56).toString(16)}`, // 0x38\n chainName: \"BNB Chain\",\n nativeCurrency: {\n name: \"bnb\",\n symbol: \"BNB\",\n decimals: 18,\n fix: 6,\n },\n rpcUrls: [\"https://bsc-dataseed1.binance.org/\"],\n blockExplorerUrls: [\"https://bscscan.com/\"],\n },\n minGasBalance: 0.02,\n minCrossGasBalance: 0.02,\n maxPrepayCrossGas: 0.1,\n blockExplorerName: \"BscScan\",\n chainName: \"Binance Smart Chain\",\n chainNameShort: \"BNB Chain\",\n requestRpc: \"https://rpc.ankr.com/bsc\",\n chainLogo: \"\",\n};\n\nexport const Fantom = {\n id: 250,\n chainInfo: {\n chainId: `0x${(250).toString(16)}`, // 0x38\n chainName: \"Fantom\",\n nativeCurrency: {\n name: \"ftm\",\n symbol: \"FTM\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://rpcapi.fantom.network\"],\n blockExplorerUrls: [\"https://ftmscan.com/\"],\n },\n minGasBalance: 1,\n minCrossGasBalance: 10,\n maxPrepayCrossGas: 60,\n blockExplorerName: \"FTMScan\",\n chainName: \"Fantom\",\n chainNameShort: \"Fantom\",\n chainLogo: \"\",\n requestRpc: \"https://rpc.ankr.com/fantom\",\n};\n\nexport const Polygon = {\n id: 137,\n chainInfo: {\n chainId: `0x${(137).toString(16)}`,\n chainName: \"Polygon\",\n nativeCurrency: {\n name: \"matic\",\n symbol: \"MATIC\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://rpc-mainnet.matic.network\"],\n blockExplorerUrls: [\"https://polygonscan.com/\"],\n },\n minGasBalance: 0.1,\n minCrossGasBalance: 1,\n maxPrepayCrossGas: 30,\n blockExplorerName: \"Polygonscan\",\n chainName: \"Polygon\",\n chainNameShort: \"Polygon\",\n requestRpc: \"https://rpc.ankr.com/polygon\",\n chainLogo: \"\",\n};\n\nexport const Arbitrum = {\n id: 42161,\n chainInfo: {\n chainId: `0x${(42161).toString(16)}`,\n chainName: \"Arbitrum\",\n nativeCurrency: {\n name: \"eth\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://arb1.arbitrum.io/rpc\"],\n blockExplorerUrls: [\"https://arbiscan.io/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Arbiscan\",\n chainName: \"Arbitrum\",\n chainNameShort: \"Arbitrum\",\n requestRpc: \"https://arb1.arbitrum.io/rpc\",\n chainLogo: \"\",\n};\n\nexport const Optimism = {\n id: 10,\n chainInfo: {\n chainId: `0x${(10).toString(16)}`,\n chainName: \"Optimism\",\n nativeCurrency: {\n name: \"eth\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://mainnet.optimism.io\"],\n blockExplorerUrls: [\"https://optimistic.etherscan.io/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Optimism\",\n chainName: \"Optimism\",\n chainNameShort: \"Optimism\",\n requestRpc: \"https://rpc.ankr.com/optimism\",\n chainLogo: \"\",\n};\n\nexport const zkSyncEra = {\n id: 324,\n chainInfo: {\n chainId: `0x${(324).toString(16)}`,\n chainName: \"zkSync Era\",\n nativeCurrency: {\n name: \"eth\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://zksync2-mainnet.zksync.io\"],\n blockExplorerUrls: [\"https://explorer.zksync.io/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"zkSync Era\",\n chainName: \"zkSync Era\",\n chainNameShort: \"zkSync Era\",\n requestRpc: \"https://zksync2-mainnet.zksync.io/\",\n chainLogo: \"\",\n // blockExplorerName: 'zkSync Era Goerli',\n // chainName: 'zkSync Era Goerli',\n // chainNameShort: 'zkSync Era Goerli',\n // requestRpc: 'https://zksync2-testnet.zksync.dev/',\n // chainLogo: '',\n};\n\nexport const PolygonzkEVM = {\n id: 1101,\n chainInfo: {\n chainId: `0x${(1101).toString(16)}`,\n chainName: \"Polygon zkEVM\",\n nativeCurrency: {\n name: \"eth\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://zkevm-rpc.com\"],\n blockExplorerUrls: [\"https://zkevm.polygonscan.com/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Polygon zkEVM\",\n chainName: \"Polygon zkEVM\",\n chainNameShort: \"Polygon zkEVM\",\n requestRpc: \"https://zkevm-rpc.com\",\n chainLogo: \"\",\n};\n\nexport const Linea = {\n id: 59144,\n chainInfo: {\n chainId: `0x${(59144).toString(16)}`,\n chainName: \"Linea\",\n nativeCurrency: {\n name: \"eth\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://rpc.linea.build\"],\n blockExplorerUrls: [\"https://lineascan.build/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Linea\",\n chainName: \"Linea\",\n chainNameShort: \"Linea\",\n requestRpc: \"https://rpc.linea.build\",\n chainLogo: \"\",\n};\n\nexport const Base = {\n id: 8453,\n chainInfo: {\n chainId: `0x${(8453).toString(16)}`,\n chainName: \"Base Network\",\n nativeCurrency: {\n name: \"eth\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://developer-access-mainnet.base.org/\"],\n blockExplorerUrls: [\"https://basescan.org\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Base\",\n chainName: \"Base\",\n chainNameShort: \"Base\",\n requestRpc: \"https://developer-access-mainnet.base.org/\",\n chainLogo: \"\",\n};\n\nexport const Mantle = {\n id: 5000,\n chainInfo: {\n chainId: `0x${(5000).toString(16)}`,\n chainName: \"Mantle\",\n nativeCurrency: {\n name: \"MNT\",\n symbol: \"MNT\",\n decimals: 6,\n fix: 4,\n },\n rpcUrls: [\"https://rpc.mantle.xyz/\"],\n blockExplorerUrls: [\"https://mantlescan.xyz/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Mantle\",\n chainName: \"Mantle\",\n chainNameShort: \"Mantle\",\n requestRpc: \"https://rpc.mantle.xyz/\",\n chainLogo: \"\",\n};\n\nexport const ArbitrumGoerli = {\n id: 421613,\n chainInfo: {\n chainId: `0x${(421613).toString(16)}`,\n chainName: \"Arbitrum Goerli\",\n nativeCurrency: {\n name: \"AGOR\",\n symbol: \"AGOR\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://goerli-rollup.arbitrum.io/rpc\"],\n blockExplorerUrls: [\"https://goerli-rollup-explorer.arbitrum.io/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Arbitrum Goerli\",\n chainName: \"Arbitrum Goerli\",\n chainNameShort: \"Arbitrum Goerli\",\n requestRpc: \"https://goerli-rollup.arbitrum.io/rpc\",\n chainLogo: \"\",\n};\n\nexport const ArbitrumSepolia = {\n id: 421614,\n chainInfo: {\n chainId: `0x${(421614).toString(16)}`,\n chainName: \"Arbitrum Sepolia\",\n nativeCurrency: {\n name: \"ETH\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://arbitrum-sepolia.blockpi.network/v1/rpc/public\"],\n blockExplorerUrls: [\"https://sepolia-explorer.arbitrum.io\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Arbitrum Sepolia\",\n chainName: \"Arbitrum Sepolia\",\n chainNameShort: \"Arbitrum Sepolia\",\n requestRpc: \"https://arbitrum-sepolia.blockpi.network/v1/rpc/public\",\n chainLogo: \"\",\n};\n\nexport const OptimismGoerli = {\n id: 420,\n chainInfo: {\n chainId: `0x${(420).toString(16)}`,\n chainName: \"Optimism Goerli\",\n nativeCurrency: {\n name: \"ETH\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://optimism-goerli.gateway.tenderly.co\"],\n blockExplorerUrls: [\"https://goerli-optimism.etherscan.io\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Optimism Goerli\",\n chainName: \"Optimism Goerli\",\n chainNameShort: \"Optimism Goerli\",\n requestRpc: \"https://optimism-goerli.gateway.tenderly.co\",\n chainLogo: \"\",\n};\n\nexport const OptimismSepolia = {\n id: 11155420,\n chainInfo: {\n chainId: `0x${(11155420).toString(16)}`,\n chainName: \"Optimism Sepolia\",\n nativeCurrency: {\n name: \"ETH\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://sepolia.optimism.io\"],\n blockExplorerUrls: [\"https://sepolia-optimistic.etherscan.io\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Optimism Sepolia\",\n chainName: \"Optimism Sepolia\",\n chainNameShort: \"Optimism Sepolia\",\n requestRpc: \"https://sepolia.optimism.io\",\n chainLogo: \"\",\n};\n\nexport const BaseSepolia = {\n id: 84532,\n chainInfo: {\n chainId: `0x${(84532).toString(16)}`,\n chainName: \"Base Sepolia\",\n nativeCurrency: {\n name: \"ETH\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://base-sepolia-rpc.publicnode.com\"],\n blockExplorerUrls: [\"https://base-sepolia.blockscout.com/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Base Sepolia\",\n chainName: \"Base Sepolia\",\n chainNameShort: \"Base Sepolia\",\n requestRpc: \"https://base-sepolia-rpc.publicnode.com\",\n chainLogo: \"\",\n};\n\nexport const MantleSepolia = {\n id: 5003,\n chainInfo: {\n chainId: `0x${(5003).toString(16)}`,\n chainName: \"Mantle Sepolia\",\n nativeCurrency: {\n name: \"MNT\",\n symbol: \"MNT\",\n decimals: 6,\n fix: 4,\n },\n rpcUrls: [\"https://rpc.sepolia.mantle.xyz/\"],\n blockExplorerUrls: [\"https://sepolia.mantlescan.xyz/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Mantle Sepolia\",\n chainName: \"Mantle Sepolia\",\n chainNameShort: \"Mantle Sepolia\",\n requestRpc: \"https://rpc.sepolia.mantle.xyz/\",\n chainLogo: \"\",\n};\n\nexport const PolygonAmoy = {\n id: 80002,\n chainInfo: {\n chainId: `0x${(80002).toString(16)}`,\n chainName: \"Polygon Amoy\",\n nativeCurrency: {\n name: \"MATIC\",\n symbol: \"MATIC\",\n decimals: 6,\n fix: 4,\n },\n rpcUrls: [\"https://rpc-amoy.polygon.technology/\"],\n blockExplorerUrls: [\"https://www.oklink.com/amoy\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Polygon Amoy\",\n chainName: \"Polygon Amoy\",\n chainNameShort: \"Polygon Amoy\",\n requestRpc: \"https://rpc-amoy.polygon.technology/\",\n chainLogo: \"\",\n};\n\nexport const Sei = {\n id: 1329,\n chainInfo: {\n chainId: `0x${(1329).toString(16)}`,\n chainName: \"Sei Network\",\n nativeCurrency: {\n name: \"SEI\",\n symbol: \"SEI\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://evm-rpc.sei-apis.com\"],\n blockExplorerUrls: [\"https://seitrace.com/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"SEI\",\n chainName: \"Sei Network\",\n chainNameShort: \"SEI\",\n requestRpc: \"https://evm-rpc.sei-apis.com\",\n chainLogo: \"\",\n};\n\nexport const StoryTestnet = {\n name: \"Story Odyssey Testnet\",\n public_rpc_url: \"https://rpc.odyssey.storyrpc.io/\",\n chain_id: 1516,\n currency_symbol: \"IP\",\n explorer_base_url: \"\",\n vault_address: \"\",\n};\nexport const StoryOdysseyTestnet = {\n id: 1329,\n chainInfo: {\n chainId: `0x${StoryTestnet.chain_id.toString(16)}`,\n chainName: StoryTestnet.name,\n nativeCurrency: {\n name: \"IP\",\n symbol: \"IP\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [StoryTestnet.public_rpc_url],\n blockExplorerUrls: [],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"SEI\",\n chainName: \"Sei Network\",\n chainNameShort: \"SEI\",\n requestRpc: \"https://evm-rpc.sei-apis.com\",\n chainLogo: \"\",\n};\nexport const chainsInfoMap: Map<number, Chain> = new Map([\n [Ethereum.id, Ethereum],\n [Avalanche.id, Avalanche],\n [Fuji.id, Fuji],\n [BNB.id, BNB],\n [Fantom.id, Fantom],\n [Polygon.id, Polygon],\n [Arbitrum.id, Arbitrum],\n [Optimism.id, Optimism],\n [zkSyncEra.id, zkSyncEra],\n [PolygonzkEVM.id, PolygonzkEVM],\n [Linea.id, Linea],\n [Base.id, Base],\n [Mantle.id, Mantle],\n [ArbitrumGoerli.id, ArbitrumGoerli],\n [ArbitrumSepolia.id, ArbitrumSepolia],\n [OptimismGoerli.id, OptimismGoerli],\n [OptimismSepolia.id, OptimismSepolia],\n [BaseSepolia.id, BaseSepolia],\n [MantleSepolia.id, MantleSepolia],\n [PolygonAmoy.id, PolygonAmoy],\n [Sei.id, Sei],\n [StoryOdysseyTestnet.id, StoryOdysseyTestnet],\n]);\n\nexport const SolanaDevnet = {\n id: 901901901,\n chainInfo: {\n name: \"Solana Devnet\",\n public_rpc_url: \"\",\n chainId: 901901901,\n currency_symbol: \"SOL\",\n explorer_base_url: \"\",\n vault_address: \"\",\n },\n} as unknown as typeof Arbitrum;\n\nexport const TestnetChains = [\n {\n network_infos: {\n name: \"Arbitrum Sepolia\",\n shortName: \"Arbitrum Sepolia\",\n public_rpc_url: \"https://arbitrum-sepolia.blockpi.network/v1/rpc/public\",\n chain_id: 421614,\n currency_symbol: \"ETH\",\n bridge_enable: true,\n mainnet: false,\n explorer_base_url: \"https://sepolia.arbiscan.io\",\n est_txn_mins: null,\n },\n token_infos: [\n {\n symbol: \"USDC\",\n address: \"0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d\",\n decimals: 6,\n },\n ],\n },\n {\n network_infos: {\n name: \"Solana Devnet\",\n public_rpc_url: \"\",\n chain_id: 901901901,\n currency_symbol: \"SOL\",\n explorer_base_url: \"\",\n vault_address: \"\",\n },\n token_infos: [\n {\n symbol: \"USDC\",\n address: \"4zMMC9srt5Ri5X14GAgXhaHii3GnPAEERYPJgZJDncDU\",\n decimals: 6,\n },\n ],\n },\n {\n network_infos: StoryTestnet,\n token_infos: [\n {\n symbol: \"USDC\",\n address: \"0xF1815bd50389c46847f0Bda824eC8da914045D14\",\n decimals: 6,\n },\n ],\n },\n // {\n // network_infos: {\n // name: \"Mantle Sepolia\",\n // shortName: \"Mantle Sepolia\",\n // public_rpc_url: \"https://rpc.sepolia.mantle.xyz/\",\n // chain_id: 5003,\n // currency_symbol: \"MNT\",\n // bridge_enable: true,\n // mainnet: false,\n // explorer_base_url: \"https://sepolia.mantlescan.xyz/\",\n // est_txn_mins: null,\n // },\n // token_infos: [\n // {\n // symbol: \"USDC\",\n // address: \"0xAcab8129E2cE587fD203FD770ec9ECAFA2C88080\",\n // decimals: 6,\n // display_name: \"USDC.e\",\n // },\n // ],\n // },\n // {\n // network_infos: {\n // name: \"Arbitrum Goerli\",\n // shortName: \"Arbitrum Goerli\",\n // public_rpc_url: \"https://goerli-rollup.arbitrum.io/rpc\",\n // chain_id: 421613,\n // currency_symbol: \"ETH\",\n // bridge_enable: true,\n // mainnet: false,\n // explorer_base_url: \"https://goerli.arbiscan.io/\",\n // est_txn_mins: null,\n // },\n // token_infos: [\n // {\n // symbol: \"USDC\",\n // address: \"0xfd064A18f3BF249cf1f87FC203E90D8f650f2d63\",\n // decimals: 6,\n // },\n // ],\n // },\n // {\n // network_infos: {\n // name: \"Optimism Goerli\",\n // shortName: \"Optimism Goerli\",\n // public_rpc_url: \"https://optimism-goerli.gateway.tenderly.co\",\n // chain_id: 420,\n // currency_symbol: \"ETH\",\n // bridge_enable: true,\n // mainnet: false,\n // explorer_base_url: \"https://goerli-optimism.etherscan.io\",\n // est_txn_mins: null,\n // },\n // },\n];\n\nexport const defaultMainnetChains = [Arbitrum, Base, Optimism];\nexport const defaultTestnetChains = [ArbitrumSepolia];\n\nexport enum ChainNamespace {\n evm = \"EVM\",\n solana = \"SOL\",\n}\n\nexport const AbstractChains = new Set([2741, 11124]);\nexport const SolanaChains = new Set([901901901, 900900900]);\n","export enum TrackerEventName {\n /** virtual event (not send this event name to tracker) */\n trackIdentifyUserId = \"track_identify_user_id\",\n trackIdentify = \"track_identify\",\n trackCustomEvent = \"track_custom_event\",\n\n /** real event name (send this event name to tracker) */\n withdrawSuccess = \"withdraw_request_success\",\n withdrawFailed = \"withdraw_request_failure\",\n depositSuccess = \"deposit_request_success\",\n depositFailed = \"deposit_request_failure\",\n signinSuccess = \"sign_message_success\",\n placeOrderSuccess = \"place_order_success\",\n walletConnect = \"connect_wallet_success\",\n clickLinkDeviceButton = \"click_link_device_button\",\n signLinkDeviceMessageSuccess = \"sign_link_device_message_success\",\n linkDeviceModalClickConfirm = \"link_device_modal_click_confirm\",\n socialLoginSuccess = \"social_login_success\",\n clickSwitchNetwork = \"click_switch_network\",\n clickSwitchWallet = \"click_switch_wallet\",\n switchNetworkSuccess = \"switch_network_success\",\n clickExportPrivateKey = \"click_export_private_key\",\n switchLanguage = \"switch_language\",\n leaderboardCampaignClickTradeNow = \"leaderboard_campaign_click_trade_now\",\n leaderboardCampaignClickLearnMore = \"leaderboard_campaign_click_learn_more\",\n vaultDepositSuccess = \"vault_deposit_success\",\n vaultDepositFailed = \"vault_deposit_failed\",\n vaultWithdrawSuccess = \"vault_withdraw_success\",\n vaultWithdrawFailed = \"vault_withdraw_failed\",\n clickBBOButton = \"click_bbo_button\",\n confirmCloseAllPositions = \"confirm_close_all_positions\",\n}\n","import { API } from \"./types/api\";\n\n// export type Chain = {\n// id: string;\n// name?: string;\n// };\n\nexport type CurrentChain = {\n id: number;\n info: API.Chain;\n};\n\nexport enum WS_WalletStatusEnum {\n NO = \"NO\",\n FAILED = \"FAILED\",\n PENDING = \"PENDING\",\n PROCESSING = \"PROCESSING\",\n COMPLETED = \"COMPLETED\",\n}\n","export const LedgerWalletKey = \"orderly:ledger-wallet\";\nexport const ConnectorKey = \"orderly:connectorKey\";\nexport const ChainKey = \"order:chain\";\nexport const LinkDeviceKey = \"orderly_link_device\";\nexport const TradingviewFullscreenKey = \"orderly:tradingview-fullscreen\";\nexport const OrderEntrySortKeys = \"orderly:order_entry_sort_keys\";\n","export class ApiError extends Error {\n constructor(message: string, private readonly code: number) {\n super(message);\n this.name = \"ApiError\";\n }\n}\n\nexport class SDKError extends Error {\n constructor(message: string) {\n super(`[ORDERLY SDK ERROR]:${message}`);\n this.name = \"SDKError\";\n }\n}\n","export const definedTypes = {\n EIP712Domain: [\n { name: \"name\", type: \"string\" },\n { name: \"version\", type: \"string\" },\n { name: \"chainId\", type: \"uint256\" },\n { name: \"verifyingContract\", type: \"address\" },\n ],\n Registration: [\n { name: \"brokerId\", type: \"string\" },\n { name: \"chainId\", type: \"uint256\" },\n { name: \"timestamp\", type: \"uint64\" },\n { name: \"registrationNonce\", type: \"uint256\" },\n ],\n Withdraw: [\n { name: \"brokerId\", type: \"string\" },\n { name: \"chainId\", type: \"uint256\" },\n { name: \"receiver\", type: \"address\" },\n { name: \"token\", type: \"string\" },\n { name: \"amount\", type: \"uint256\" },\n { name: \"withdrawNonce\", type: \"uint64\" },\n { name: \"timestamp\", type: \"uint64\" },\n ],\n AddOrderlyKey: [\n { name: \"brokerId\", type: \"string\" },\n { name: \"chainId\", type: \"uint256\" },\n { name: \"orderlyKey\", type: \"string\" },\n { name: \"scope\", type: \"string\" },\n { name: \"timestamp\", type: \"uint64\" },\n { name: \"expiration\", type: \"uint64\" },\n ],\n SettlePnl: [\n { name: \"brokerId\", type: \"string\" },\n { name: \"chainId\", type: \"uint256\" },\n { name: \"settleNonce\", type: \"uint64\" },\n { name: \"timestamp\", type: \"uint64\" },\n ],\n DexRequest: [\n { name: \"payloadType\", type: \"uint8\" },\n { name: \"nonce\", type: \"uint256\" },\n { name: \"receiver\", type: \"address\" },\n { name: \"amount\", type: \"uint256\" },\n { name: \"vaultId\", type: \"bytes32\" },\n { name: \"token\", type: \"string\" },\n { name: \"dexBrokerId\", type: \"string\" },\n ],\n InternalTransfer: [\n { name: \"receiver\", type: \"bytes32\" },\n { name: \"token\", type: \"string\" },\n { name: \"amount\", type: \"uint256\" },\n { name: \"transferNonce\", type: \"uint64\" },\n ],\n} as const;\n","export enum AssetHistoryStatusEnum {\n /** @deprecated, this status is not used */\n NEW = \"NEW\",\n PENDING = \"PENDING\",\n CONFIRM = \"CONFIRM\",\n PROCESSING = \"PROCESSING\",\n COMPLETED = \"COMPLETED\",\n FAILED = \"FAILED\",\n PENDING_REBALANCE = \"PENDING_REBALANCE\",\n}\n\nexport enum AssetHistorySideEnum {\n DEPOSIT = \"DEPOSIT\",\n WITHDRAW = \"WITHDRAW\",\n}\n","export const DEFAUL_ORDERLY_KEY_SCOPE = \"read,trading\";\n"],"mappings":"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","names":["AccountStatusEnum","SystemStateEnum","ExchangeStatusEnum","NetworkStatusEnum","AnnouncementType","OrderType","MarginMode","BBOOrderType","OrderLevel","AlgoOrderRootType","TriggerPriceType","PositionType","AlgoOrderType","OrderSide","OrderStatus","TrailingCallbackType","DistributionType","WithdrawStatus","ChainNamespace","TrackerEventName","WS_WalletStatusEnum","AssetHistoryStatusEnum","AssetHistorySideEnum"]}
1
+ {"version":3,"sources":["../src/index.ts","../src/version.ts","../src/constants.ts","../src/types/api.ts","../src/order.ts","../src/withdraw.ts","../src/chains.ts","../src/track.ts","../src/wallet.ts","../src/storageKey.ts","../src/errors.ts","../src/sign.ts","../src/assetHistory.ts","../src/account.ts"],"sourcesContent":["export { default as version } from \"./version\";\nexport * from \"./constants\";\nexport * from \"./types/api\";\n// export * from \"./order\";\nexport {\n OrderType,\n OrderSide,\n OrderStatus,\n AlgoOrderRootType,\n PositionType,\n AlgoOrderType,\n TriggerPriceType,\n BBOOrderType,\n OrderLevel,\n DistributionType,\n TrailingCallbackType,\n MarginMode,\n} from \"./order\";\nexport type {\n OrderEntity,\n AlgoOrderEntity,\n TPSLOrderEntry,\n BaseAlgoOrderEntity,\n AlgoOrderChildOrders,\n Optional,\n PositionSide,\n BracketOrderEntry,\n RequireKeys,\n BaseOrder,\n RegularOrder,\n AlgoOrder,\n OrderlyOrder,\n ChildOrder,\n BracketOrder,\n} from \"./order\";\nexport * from \"./context\";\nexport * from \"./withdraw\";\nexport * from \"./chains\";\nexport * from \"./track\";\nexport type { Chain as ChainConfig, ChainInfo, NativeCurrency } from \"./chains\";\nexport * from \"./wallet\";\nexport * from \"./storageKey\";\nexport { ApiError, SDKError } from \"./errors\";\n\nexport { definedTypes } from \"./sign\";\nexport * as superstruct from \"superstruct\";\nexport * from \"./assetHistory\";\nexport * from \"./account\";\n","declare global {\n interface Window {\n __ORDERLY_VERSION__?: {\n [key: string]: string;\n };\n }\n}\nif (typeof window !== \"undefined\") {\n window.__ORDERLY_VERSION__ = window.__ORDERLY_VERSION__ || {};\n window.__ORDERLY_VERSION__[\"@kodiak-finance/orderly-types\"] = \"2.7.4\";\n}\n\nexport default \"2.7.4\";\n","/* eslint-disable @typescript-eslint/no-explicit-any */\n\nexport enum AccountStatusEnum {\n EnableTradingWithoutConnected = -1,\n NotConnected = 0,\n Connected = 1,\n NotSignedIn = 2,\n SignedIn = 3,\n DisabledTrading = 4,\n EnableTrading = 5,\n}\n\nexport enum SystemStateEnum {\n Loading = 0,\n Error = 1,\n Ready = 10,\n}\n\nexport enum ExchangeStatusEnum {\n Normal = 0,\n Maintain = 1,\n}\n\nexport type NetworkId = \"testnet\" | \"mainnet\";\n\nexport enum NetworkStatusEnum {\n unknown = 0,\n unsupported = 1,\n supported = 2,\n}\n\n// Testnet\n// Arbitrum Goerli\n// export const ARBITRUM_TESTNET_CHAINID = 421613;\n// export const ARBITRUM_TESTNET_CHAINID_HEX = \"0x66EED\";\n\n// Arbitrum Sepolia\nexport const ARBITRUM_TESTNET_CHAINID = 421614;\nexport const SOLANA_TESTNET_CHAINID = 901901901;\nexport const SOLANA_MAINNET_CHAINID = 900900900;\nexport const STORY_TESTNET_CHAINID = 1516;\nexport const MONAD_TESTNET_CHAINID = 10143;\nexport const ABSTRACT_TESTNET_CHAINID = 11124;\nexport const ABSTRACT_MAINNET_CHAINID = 2741;\nexport const BSC_TESTNET_CHAINID = 97;\nexport const ABSTRACT_CHAIN_ID_MAP = new Set([\n ABSTRACT_TESTNET_CHAINID,\n ABSTRACT_MAINNET_CHAINID,\n]);\n\nexport const ARBITRUM_TESTNET_CHAINID_HEX = \"0x66EEE\";\n\nexport const MANTLE_TESTNET_CHAINID = 5003;\nexport const MANTLE_TESTNET_CHAINID_HEX = \"0x138b\";\n\n// Mainnet\nexport const ARBITRUM_MAINNET_CHAINID = 42161;\nexport const ETHEREUM_MAINNET_CHAINID = 1;\nexport const ARBITRUM_MAINNET_CHAINID_HEX = \"0xa4b1\";\n\nexport const MEDIA_TABLET = \"(max-width: 768px)\";\n\n/** deposit buffer factor */\nexport const DEPOSIT_FEE_RATE = 1.05;\n\n/**\n * A constant for the maximum value for a ``uint256``.\n */\nexport const MaxUint256: bigint = BigInt(\n \"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff\",\n);\n\nexport const nativeTokenAddress = \"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE\";\n\n// TODO: remove this\nexport const nativeETHAddress = \"0x0000000000000000000000000000000000000000\";\n\nexport const isNativeTokenChecker = (address?: string) => {\n if (!address) {\n return false;\n }\n return (\n address?.toLowerCase() === nativeTokenAddress.toLowerCase() ||\n address === nativeETHAddress\n );\n};\n\nexport const ArbitrumSepoliaChainInfo = {\n name: \"Arbitrum Sepolia\",\n public_rpc_url: \"https://arbitrum-sepolia.gateway.tenderly.co\",\n chain_id: \"421614\",\n currency_symbol: \"ETH\",\n currency_decimal: 18,\n explorer_base_url: \"https://sepolia.arbiscan.io\",\n vault_address: \"0x0EaC556c0C2321BA25b9DC01e4e3c95aD5CDCd2f\",\n};\nexport const AbstractTestnetChainInfo = {\n name: \"Abstract Testnet\",\n public_rpc_url: \"https://api.testnet.abs.xyz\",\n chain_id: \"11124\",\n currency_symbol: \"ETH\",\n currency_decimal: 18,\n explorer_base_url: \"https://sepolia.abscan.org\",\n vault_address: \"0xf14Ff11F3bb1011ff42665Ec869c7827c43745Fd\",\n};\nexport const AbstractTestnetTokenInfo = {\n chain_id: \"11124\",\n contract_address: \"0xa0BB43E2eA7fcE91F07e628d72fD6333e80F47D2\",\n decimals: 6,\n withdrawal_fee: 1,\n cross_chain_withdrawal_fee: 2,\n display_name: \"USDC\",\n};\nexport const SolanaDevnetChainInfo = {\n chain_id: \"901901901\",\n currency_decimal: 9,\n currency_symbol: \"SOL\",\n explorer_base_url: \"https://explorer.solana.com/?cluster=devnet\",\n name: \"Solana-Devnet\",\n public_rpc_url: \"https://api.devnet.solana.com\",\n vault_address: \"9shwxWDUNhtwkHocsUAmrNAQfBH2DHh4njdAEdHZZkF2\",\n};\n\nexport const SolanaDevnetTokenInfo = {\n chain_id: \"901901901\",\n contract_address: \"4zMMC9srt5Ri5X14GAgXhaHii3GnPAEERYPJgZJDncDU\",\n decimals: 6,\n withdrawal_fee: 1,\n cross_chain_withdrawal_fee: 5,\n display_name: \"USDC\",\n};\nexport const ArbitrumSepoliaTokenInfo = {\n chain_id: \"421614\",\n contract_address: \"0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d\",\n decimals: 6,\n withdrawal_fee: 1,\n cross_chain_withdrawal_fee: 2,\n display_name: \"USDC\",\n};\n\nexport const TesnetTokenFallback = (testnetTokens: any) => [\n {\n token: \"USDC\",\n token_hash:\n \"0xd6aca1be9729c13d677335161321649cccae6a591554772516700f986f942eaa\",\n decimals: 6,\n minimum_withdraw_amount: 0.000001,\n chain_details: testnetTokens,\n },\n];\n\nexport const EMPTY_LIST: ReadonlyArray<any> = [];\n\nexport const EMPTY_OBJECT: Readonly<Record<PropertyKey, any>> = {};\n\nexport const EMPTY_OPERATION = () => {};\n\n/**\n * Event name for broadcasting Order Entry estimated liquidation price changes\n * so that UI consumers (e.g. TradingView adapters) can update their visuals\n * without introducing tight coupling between widgets.\n */\nexport const ORDER_ENTRY_EST_LIQ_PRICE_CHANGE =\n \"orderEntry:estLiqPriceChange\" as const;\n\n/**\n * Payload for the ORDER_ENTRY_EST_LIQ_PRICE_CHANGE event, carrying the symbol\n * and the latest estimated liquidation price derived from the order form.\n */\nexport interface OrderEntryEstLiqPriceChangePayload {\n symbol: string;\n estLiqPrice: number | null;\n /** Whether the user is considered active when this payload is emitted (within the active window). */\n isUserActive?: boolean;\n}\n","/* eslint-disable @typescript-eslint/no-namespace */\nimport { AlgoOrderRootType, MarginMode, OrderSide, OrderType } from \"../order\";\n\nexport enum AnnouncementType {\n Listing = \"LISTING\",\n Maintenance = \"MAINTENANCE\",\n Delisting = \"DELISTING\",\n Campaign = \"CAMPAIGN\",\n Update = \"UPDATE\",\n Vote = \"VOTE\",\n}\n\nexport declare namespace API {\n /**\n * Symbol trading status returned by public symbol APIs.\n */\n export type SymbolTradingStatus =\n | \"POST_ONLY\"\n | \"ACTIVE\"\n | \"REDUCE_ONLY\"\n | \"DELISTING\";\n\n // /v1/public/auto_convert_threshold\n export interface ConvertThreshold {\n ltv_threshold: number;\n negative_usdc_threshold: number;\n }\n\n //v1/public/token\n export interface Token {\n token: string;\n token_hash: string;\n decimals: number;\n minimum_withdraw_amount: number;\n base_weight: number;\n discount_factor: number;\n haircut: number;\n user_max_qty: number;\n is_collateral: boolean;\n on_chain_swap: boolean;\n chain_details: ChainDetail[];\n }\n\n //v1/public/token\n export interface ChainDetail {\n chain_id: string;\n contract_address: string;\n decimals: number;\n }\n\n // ws market, api v1/public/futures\n export interface MarketInfo {\n symbol: string;\n index_price: number;\n mark_price: number;\n sum_unitary_funding: number;\n est_funding_rate: number;\n last_funding_rate: number;\n next_funding_time: number;\n open_interest: string;\n \"24h_open\": number;\n \"24h_close\": number;\n \"24h_high\": number;\n \"24h_low\": number;\n /**\n * @deprecated\n * spelling mistake, use 24h_volume to instead, will be remove next version\n */\n \"24h_volumn\": number;\n \"24h_volume\": number;\n \"24h_amount\": number;\n /** Permissionless listing: display name e.g. PERP_BTC_USDC, without broker_id suffix */\n display_symbol_name?: string;\n /** Permissionless listing: broker id; null for non-community-listed symbols */\n broker_id?: string | null;\n /** Trading status: POST_ONLY / ACTIVE / REDUCE_ONLY / DELISTING */\n status?: SymbolTradingStatus;\n }\n\n export interface MarketInfoExt extends MarketInfo {\n change: number;\n \"24h_volume\": number;\n }\n\n export interface AnnouncementRow {\n announcement_id: number | string;\n message: string;\n i18n?: Record<PropertyKey, string | null>;\n url?: string | null;\n type?: AnnouncementType | null;\n updated_time?: number | null;\n coverImage?: string;\n }\n\n export interface Announcement {\n last_updated_time?: number | null;\n rows?: AnnouncementRow[];\n }\n\n /**\n * v1/public/info\n */\n export interface Symbol {\n symbol: string;\n quote_min: number;\n quote_max: number;\n quote_tick: number;\n base_min: number;\n base_max: number;\n base_tick: number;\n min_notional: number;\n price_range: number;\n price_scope: number;\n std_liquidation_fee: number;\n liquidator_fee: number;\n claim_insurance_fund_discount: number;\n funding_period: number;\n cap_funding: number;\n floor_funding: number;\n interest_rate: number;\n created_time: number;\n updated_time: number;\n imr_factor: number;\n base_mmr: number;\n base_imr: number;\n /** Permissionless listing: display name e.g. PERP_BTC_USDC, without broker_id suffix */\n display_symbol_name?: string;\n /** Permissionless listing: broker id; null for non-community-listed symbols */\n broker_id?: string | null;\n /** Trading status: POST_ONLY / ACTIVE / REDUCE_ONLY / DELISTING */\n status?: SymbolTradingStatus;\n }\n\n export interface TokenItem {\n token: string;\n token_hash: string;\n decimals: number;\n minimum_withdraw_amount: number;\n chain_details: ChainDetail[];\n }\n\n export interface ChainDetail {\n chain_id: string;\n contract_address: string;\n decimals: number;\n withdrawal_fee: number;\n }\n\n export interface SymbolExt extends Symbol {\n base: string;\n base_dp: number;\n\n quote: string;\n quote_dp: number;\n type: string;\n name: string;\n displayName: string;\n }\n\n export interface RwaSymbol {\n symbol: string;\n status: \"open\" | \"close\";\n next_open: number;\n next_close: number;\n\n base: string;\n quote: string;\n type: string;\n name: string;\n }\n\n export interface Order {\n symbol: string;\n status: string;\n side: string;\n order_id: number;\n algo_order_id?: number;\n user_id: number;\n price: number | null;\n type: string;\n quantity: number;\n amount: null;\n visible: number;\n executed: number;\n total_fee: number;\n fee_asset: string;\n client_order_id?: string;\n average_executed_price: number;\n total_executed_quantity: number;\n visible_quantity: number;\n created_time: number;\n updated_time: number;\n reduce_only: boolean;\n trigger_price?: number;\n order_tag?: string;\n margin_mode?: MarginMode;\n }\n\n export interface OrderExt extends Order {\n mark_price: string;\n }\n\n export interface AlgoOrder {\n algo_order_id: number;\n root_algo_order_id: number;\n parent_algo_order_id: number;\n parent_algo_type: AlgoOrderRootType;\n symbol: string;\n algo_type: string;\n child_orders: AlgoOrder[];\n side: string;\n quantity: number;\n is_triggered: boolean;\n is_activated: boolean;\n trigger_price: number;\n trigger_price_type: string;\n type: OrderType;\n root_algo_status: string;\n algo_status: string;\n price?: number;\n total_executed_quantity: number;\n visible_quantity: number;\n total_fee: number;\n fee_asset: string;\n reduce_only: boolean;\n created_time: number;\n updated_time: number;\n order_tag?: string;\n client_order_id?: string;\n\n // trailing stop order\n activated_price?: number;\n callback_value?: number;\n callback_rate?: number;\n extreme_price?: number;\n margin_mode?: MarginMode;\n }\n\n export interface AlgoOrderExt extends AlgoOrder {\n mark_price: string;\n position?: Partial<Position>;\n tp_trigger_price?: number;\n sl_trigger_price?: number;\n }\n\n export interface OrderResponse {\n rows: (Order | AlgoOrder)[];\n meta: {\n total: number;\n current_page: number;\n records_per_page: number;\n };\n }\n\n export interface FundingRate {\n symbol: string;\n est_funding_rate: number;\n est_funding_rate_timestamp: number;\n last_funding_rate: number;\n last_funding_rate_timestamp: number;\n next_funding_time: number;\n sum_unitary_funding: number;\n }\n\n export interface FundingPeriodData {\n rate: number;\n positive: number;\n negative: number;\n }\n\n export interface FundingDetails {\n symbol: string;\n quote_min: number;\n quote_max: number;\n quote_tick: number;\n base_min: number;\n base_max: number;\n base_tick: number;\n min_notional: number;\n price_range: number;\n price_scope: number;\n std_liquidation_fee: number;\n liquidator_fee: number;\n claim_insurance_fund_discount: number;\n funding_period: number;\n cap_funding: number;\n floor_funding: number;\n interest_rate: number;\n created_time: number;\n updated_time: number;\n liquidation_tier: number;\n cap_ir: number;\n floor_ir: number;\n mark_index_price_deviation_floor: number;\n mark_index_price_deviation_cap: number;\n global_max_oi_cap: number;\n base_mmr: number;\n base_imr: number;\n imr_factor: number;\n deviation_factor: number;\n /** Permissionless listing: display name e.g. PERP_BTC_USDC, without broker_id suffix */\n display_symbol_name?: string;\n /** Permissionless listing: broker id; null for non-community-listed symbols */\n broker_id?: string | null;\n }\n\n export interface FundingHistory {\n symbol: string;\n data_start_time: string;\n funding: {\n last: FundingPeriodData;\n \"1d\": FundingPeriodData;\n \"3d\": FundingPeriodData;\n \"7d\": FundingPeriodData;\n \"14d\": FundingPeriodData;\n \"30d\": FundingPeriodData;\n \"90d\": FundingPeriodData;\n };\n }\n\n export interface PositionInfo extends PositionAggregated {\n // margin_ratio: number;\n // initial_margin_ratio: number;\n // maintenance_margin_ratio: number;\n // open_margin_ratio: number;\n // current_margin_ratio_with_orders: number;\n // initial_margin_ratio_with_orders: number;\n // maintenance_margin_ratio_with_orders: number;\n // total_collateral_value: number;\n // free_collateral: number;\n rows: Position[];\n // total_pnl_24_h: number;\n }\n\n export interface PositionAggregated {\n margin_ratio: number;\n initial_margin_ratio: number;\n maintenance_margin_ratio: number;\n open_margin_ratio: number;\n current_margin_ratio_with_orders: number;\n initial_margin_ratio_with_orders: number;\n maintenance_margin_ratio_with_orders: number;\n total_collateral_value: number;\n free_collateral: number;\n total_pnl_24_h: number;\n /**\n * @deprecated use total_unreal_pnl instead\n */\n unrealPnL: number;\n total_unreal_pnl: number;\n total_unreal_pnl_index?: number;\n /**\n * @deprecated use total_unsettled_pnl instead\n */\n unsettledPnL: number;\n total_unsettled_pnl: number;\n notional: number;\n unrealPnlROI: number;\n unrealPnlROI_index?: number;\n total_unsettled_cross_pnl?: number;\n total_unsettled_isolated_pnl?: number;\n }\n\n export interface Position {\n account_id?: string;\n symbol: string;\n position_qty: number;\n cost_position: number;\n last_sum_unitary_funding: number;\n pending_long_qty: number;\n pending_short_qty: number;\n settle_price: number;\n average_open_price: number;\n unrealized_pnl: number;\n unrealized_pnl_index?: number;\n unrealized_pnl_ROI: number;\n unsettled_pnl: number;\n unsettled_pnl_ROI: number;\n unrealized_pnl_ROI_index?: number;\n mark_price: number;\n index_price?: number;\n est_liq_price: number | null;\n timestamp: number;\n /**\n * Maintenance margin ratio\n */\n mmr: number;\n imr: number;\n IMR_withdraw_orders: number;\n MMR_with_orders: number;\n pnl_24_h: number;\n fee_24_h: number;\n fundingFee?: number;\n leverage: number;\n margin?: number;\n margin_mode?: MarginMode;\n }\n\n export interface PositionExt extends Position {\n notional: number;\n mm: number;\n }\n\n export interface PositionTPSLExt extends PositionExt {\n full_tp_sl?: {\n tp_trigger_price?: number;\n sl_trigger_price?: number;\n algo_order?: AlgoOrder;\n };\n partial_tp_sl?: {\n tp_trigger_price?: number;\n sl_trigger_price?: number;\n order_num?: number;\n algo_order?: AlgoOrder;\n };\n\n // has_position_tp_sl: boolean;\n\n /**\n * related position tp/sl order\n */\n algo_order?: AlgoOrder;\n }\n\n export interface PositionsTPSLExt extends PositionAggregated {\n rows: PositionTPSLExt[];\n }\n\n export interface Trade {\n symbol: Symbol;\n side: OrderSide;\n ts: number;\n executed_price: number;\n executed_quantity: number;\n executed_timestamp: number;\n }\n\n export interface Holding {\n token: string;\n holding: number;\n frozen: number;\n pending_short: number;\n isolated_margin: number;\n isolated_order_frozen: number;\n updated_time: number;\n }\n\n export interface AccountInfo {\n account_id: string;\n email: string;\n account_mode: string;\n tier: string;\n futures_tier: string;\n maintenance_cancel_orders: boolean;\n taker_fee_rate: number;\n maker_fee_rate: number;\n rwa_taker_fee_rate?: number;\n rwa_maker_fee_rate?: number;\n max_leverage: number;\n futures_taker_fee_rate: number;\n futures_maker_fee_rate: number;\n imr_factor: { [key: string]: number };\n max_notional: { [key: string]: number };\n }\n\n export interface Chain {\n dexs: string[];\n network_infos: NetworkInfos;\n token_infos: TokenInfo[];\n nativeToken?: TokenInfo;\n address?: string;\n symbol?: string;\n on_chain_swap?: boolean;\n // nativeToken\n }\n\n export interface NetworkInfos {\n name: string;\n shortName: string;\n public_rpc_url: string;\n chain_id: number;\n currency_symbol: string;\n bridge_enable: boolean;\n mainnet: boolean;\n est_txn_mins: number | null;\n explorer_base_url: string;\n bridgeless?: boolean;\n withdrawal_fee?: number;\n minimum_withdraw_amount?: number;\n vault_address: string;\n currency_decimal?: number;\n\n cross_chain_router: string;\n depositor: string;\n }\n\n export interface TokenInfo {\n address?: string;\n base_weight: number;\n decimals?: number;\n /** token decimals */\n token_decimal?: number;\n discount_factor?: number | null;\n display_name?: string;\n haircut: number;\n is_collateral: boolean;\n symbol?: string;\n user_max_qty: number;\n precision?: number;\n minimum_withdraw_amount: number;\n swap_enable?: boolean;\n }\n\n export interface Chain {\n token: string;\n token_hash: string;\n decimals: number;\n minimum_withdraw_amount: number;\n base_weight: number;\n discount_factor?: number | null;\n haircut: number;\n user_max_qty: number;\n is_collateral: boolean;\n chain_details: ChainDetail[];\n }\n\n // export interface Token{\n\n // }\n\n export interface ChainDetail {\n chain_id: string;\n chain_name?: string;\n contract_address: string;\n decimals: number;\n withdrawal_fee: number;\n cross_chain_withdrawal_fee: number;\n display_name: string;\n }\n\n export interface AssetHistory {\n meta: RecordsMeta;\n rows: AssetHistoryRow[];\n }\n\n export interface RecordsMeta {\n total: number;\n records_per_page: number;\n current_page: number;\n }\n\n export interface AssetHistoryRow {\n id: string;\n tx_id: string;\n side: string;\n token: string;\n amount: number;\n fee: number;\n trans_status: string;\n created_time: number;\n updated_time: number;\n chain_id: string;\n }\n\n export interface FundingFeeHistory {\n meta: RecordsMeta;\n rows: FundingFeeRow[];\n }\n\n export interface FundingFeeRow {\n symbol: string;\n funding_rate: number;\n mark_price: number;\n funding_fee: number;\n payment_type: string;\n status: string;\n created_time: number;\n updated_time: number;\n }\n\n export interface StrategyVaultHistoryRow {\n vault_id: string;\n created_time: number;\n type: \"withdrawal\" | \"deposit\";\n status: string;\n amount_change: number;\n token?: string; // need to hard code for now\n vaultName?: string; // need to hard code for now\n }\n\n export interface StrategyVaultHistory {\n rows: StrategyVaultHistoryRow[];\n meta: RecordsMeta;\n }\n\n export interface TransferHistoryRow {\n amount: number;\n created_time: number;\n from_account_id: string;\n id: string;\n status: \"CREATED\" | \"PENDING\" | \"COMPLETED\" | \"FAILED\";\n to_account_id: string;\n token: string;\n updated_time: number;\n chain_id: string;\n // timestamp\n block_time: number;\n }\n\n export interface TransferHistory {\n meta: RecordsMeta;\n rows: TransferHistoryRow[];\n }\n\n export interface TransferHistoryRow {\n amount: number;\n created_time: number;\n from_account_id: string;\n id: string;\n status: \"CREATED\" | \"PENDING\" | \"COMPLETED\" | \"FAILED\";\n to_account_id: string;\n token: string;\n updated_time: number;\n }\n\n export interface DailyRow {\n account_value: number;\n broker_id: string;\n date: string;\n perp_volume: number;\n pnl: number;\n snapshot_time?: number;\n }\n\n export interface PositionHistory {\n position_id: number; // Unique identifier for the position\n liquidation_id?: number; // Unique identifier for the position\n position_status: string; // Status of the position\n type: string; // Type of the position activity\n symbol: string; // Trading pair symbol\n avg_open_price: number; // Average open price of the position\n avg_close_price: number; // Average close price of the position\n max_position_qty: number; // Maximum quantity held in the position\n closed_position_qty: number; // Quantity closed in the position\n side: \"LONG\" | \"SHORT\"; // Side of the position\n trading_fee: number; // Fee charged for trading\n accumulated_funding_fee: number; // Accumulated funding fee for the position\n insurance_fund_fee: number; // Fee contributed to the insurance fund\n liquidator_fee: number; // Fee paid to the liquidator\n realized_pnl: number; // Realized profit and loss\n open_timestamp: number; // Timestamp when the position was opened\n close_timestamp: number; // Timestamp when the position was closed\n last_update_time: number; // Timestamp of the last update to the position\n leverage: number; // Leverage of the position\n margin_mode?: MarginMode | 1 | 0;\n }\n\n export interface LiquidationPositionByPerp {\n abs_liquidation_fee: number;\n cost_position_transfer: number;\n liquidator_fee: number;\n position_qty: number;\n symbol: string;\n transfer_price: number;\n mark_price: number;\n }\n\n export interface Liquidation {\n liquidation_id: number;\n timestamp: number;\n transfer_amount_to_insurance_fund: number;\n margin_ratio: number;\n account_mmr: number;\n collateral_value: number;\n position_notional: number;\n positions_by_perp: LiquidationPositionByPerp[];\n }\n\n export interface VaultBalance {\n chain_id: string;\n token: string;\n balance: number;\n pending_rebalance: number;\n }\n\n export interface RestrictedAreas {\n invalid_web_country: string;\n invalid_web_city: string;\n }\n\n export interface IpInfo {\n ip: string;\n city: string;\n region: string;\n checked: boolean;\n }\n\n export interface LeverageInfo {\n symbol: string;\n leverage: number;\n margin_mode?: MarginMode;\n }\n\n export namespace Referral {\n /** /v1/referral/multi_level/volume_prerequisite */\n export interface VolumePrerequisite {\n required_volume: number;\n current_volume: number;\n }\n\n /** /v1/referral/multi_level/max_rebate_rate */\n export interface MaxRebateRate {\n max_rebate_rate: number;\n }\n\n /** /v1/referral/multi_level/rebate_info */\n export interface MultiLevelRebateInfo {\n referral_code: string;\n max_rebate_rate: number;\n default_referee_rebate_rate: number;\n direct_invites?: number;\n indirect_invites?: number;\n direct_volume?: number;\n indirect_volume?: number;\n direct_rebate?: number;\n indirect_rebate?: number;\n direct_bonus_rebate_rate?: number;\n direct_bonus_rebate?: number;\n }\n\n /** /v1/referral/multi_level/admin */\n export interface MultiLevelReferralConfig {\n enable: boolean;\n required_volume: number;\n max_rebate_rate: number;\n }\n\n /** /v1/referral/multi_level/statistics */\n export interface MultiLevelStatistics {\n direct_invites: number;\n indirect_invites: number;\n direct_traded: number;\n indirect_traded: number;\n direct_volume: number;\n indirect_volume: number;\n direct_rebate: number;\n indirect_rebate: number;\n direct_bonus_rebate?: number;\n }\n }\n}\n\nexport declare namespace WSMessage {\n export interface Ticker {\n symbol: string;\n open: number;\n close: number;\n high: number;\n low: number;\n volume: number;\n amount: number;\n count: number;\n change: number;\n open_interest?: number;\n index_price?: number;\n }\n\n export interface MarkPrice {\n symbol: string;\n price: number;\n }\n\n export interface Position {\n symbol: string;\n marginMode?: MarginMode;\n positionQty: number;\n costPosition: number;\n lastSumUnitaryFunding: number;\n sumUnitaryFundingVersion: number;\n pendingLongQty: number;\n pendingShortQty: number;\n settlePrice: number;\n averageOpenPrice: number;\n unsettledPnl: number;\n pnl24H: number;\n fee24H: number;\n markPrice: number;\n estLiqPrice: number;\n version: number;\n imr: number;\n imrwithOrders: number;\n mmrwithOrders: number;\n mmr: number;\n }\n\n export interface VaultBalance {\n chain_id: string;\n token: string;\n balance: number;\n pending_rebalance: number;\n }\n\n export interface Order {\n symbol: string;\n clientOrderId: string;\n orderId: number;\n type: string;\n side: string;\n quantity: number;\n price: number;\n tradeId: number;\n executedPrice: number;\n executedQuantity: number;\n fee: number;\n feeAsset: string;\n totalExecutedQuantity: number;\n avgPrice: number;\n status: string;\n reason: string;\n totalFee: number;\n visible: number;\n /**\n * update time\n */\n timestamp: number;\n reduceOnly: boolean;\n maker: boolean;\n marginMode?: MarginMode;\n }\n\n export interface Holding {\n holding: number;\n frozen: number;\n interest: number;\n pendingShortQty: number;\n pendingExposure: number;\n pendingLongQty: number;\n pendingLongExposure: number;\n version: number;\n staked: number;\n unbonding: number;\n vault: number;\n fee24H: number;\n markPrice: number;\n }\n\n export interface AlgoOrder {\n symbol: string;\n rootAlgoOrderId: number;\n parentAlgoOrderId: number;\n algoOrderId: number;\n status: string;\n algoType: string;\n side: string;\n quantity: number;\n triggerStatus: string;\n price: number;\n type: string;\n triggerTradePrice: number;\n triggerTime: number;\n tradeId: number;\n executedPrice: number;\n executedQuantity: number;\n fee: number;\n feeAsset: string;\n totalExecutedQuantity: number;\n averageExecutedPrice: number;\n totalFee: number;\n timestamp: number;\n visibleQuantity: number;\n reduceOnly: boolean;\n triggered: boolean;\n maker: boolean;\n rootAlgoStatus: string;\n algoStatus: string;\n marginMode?: MarginMode;\n }\n\n export interface Announcement {\n announcement_id: string;\n message: string;\n i18n: Record<PropertyKey, string | null>;\n url?: string | null;\n type: AnnouncementType | null;\n updated_time: number;\n }\n}\n","/**\n * Supported types for placing an order\n */\nexport enum OrderType {\n LIMIT = \"LIMIT\",\n MARKET = \"MARKET\",\n IOC = \"IOC\",\n FOK = \"FOK\",\n POST_ONLY = \"POST_ONLY\",\n ASK = \"ASK\",\n BID = \"BID\",\n STOP_LIMIT = \"STOP_LIMIT\",\n STOP_MARKET = \"STOP_MARKET\",\n /**\n * Only for POSITIONAL_TP_SL type algo order\n */\n CLOSE_POSITION = \"CLOSE_POSITION\",\n /**\n * Scaled order\n */\n SCALED = \"SCALED\",\n /**\n * trailing stop\n */\n TRAILING_STOP = \"TRAILING_STOP\",\n}\n\n/**\n * Margin mode for the order\n */\nexport enum MarginMode {\n ISOLATED = \"ISOLATED\",\n CROSS = \"CROSS\",\n}\n\nexport enum BBOOrderType {\n COUNTERPARTY1 = \"counterparty1\",\n COUNTERPARTY5 = \"counterparty5\",\n QUEUE1 = \"queue1\",\n QUEUE5 = \"queue5\",\n}\n\nexport enum OrderLevel {\n ONE = 0,\n TWO = 1,\n THREE = 2,\n FOUR = 3,\n FIVE = 4,\n}\n\nexport enum AlgoOrderRootType {\n TP_SL = \"TP_SL\",\n POSITIONAL_TP_SL = \"POSITIONAL_TP_SL\",\n STOP = \"STOP\",\n BRACKET = \"BRACKET\",\n TRAILING_STOP = \"TRAILING_STOP\",\n}\n\nexport enum TriggerPriceType {\n MARK_PRICE = \"MARK_PRICE\",\n}\nexport enum PositionType {\n FULL = \"FULL\",\n PARTIAL = \"PARTIAL\",\n}\n\nexport enum AlgoOrderType {\n TAKE_PROFIT = \"TAKE_PROFIT\",\n STOP_LOSS = \"STOP_LOSS\",\n}\n\nexport enum OrderSide {\n BUY = \"BUY\",\n SELL = \"SELL\",\n}\n\nexport enum PositionSide {\n LONG = \"LONG\",\n SHORT = \"SHORT\",\n}\n\nexport enum OrderStatus {\n /** @deprecated */\n OPEN = \"OPEN\",\n NEW = \"NEW\",\n FILLED = \"FILLED\",\n PARTIAL_FILLED = \"PARTIAL_FILLED\",\n CANCELLED = \"CANCELLED\",\n REPLACED = \"REPLACED\",\n // CANCELLED + FILLED\n COMPLETED = \"COMPLETED\",\n // NEW + PARTIAL_FILLED\n INCOMPLETE = \"INCOMPLETE\",\n REJECTED = \"REJECTED\",\n}\n\nexport interface OrderExt {\n total: string;\n}\n\nexport interface BaseOrder {\n symbol: string;\n order_type: OrderType;\n margin_mode: MarginMode;\n order_type_ext?: OrderType;\n order_price: string;\n order_quantity: string;\n order_amount?: number;\n visible_quantity: number;\n side: OrderSide;\n reduce_only: boolean;\n slippage: number;\n order_tag: string;\n level: OrderLevel;\n post_only_adjust: boolean;\n /** custom order id, it is used to identify the order from ws */\n client_order_id: string;\n}\n\n/** Scaled order fields */\nexport interface ScaledOrder {\n /** user-defined price at the first order (index 0) */\n start_price?: string;\n /** user-defined price at the last order (index total_orders - 1) */\n end_price?: string;\n /** total number of orders */\n total_orders?: string;\n /** quantity distribution type */\n distribution_type?: DistributionType;\n /** the ratio of qty[end] / qty[start] */\n skew?: string;\n}\n\nexport enum TrailingCallbackType {\n VALUE = \"value\",\n RATE = \"rate\",\n}\n\n/**\n * Trailing Stop that allows users to set an activation price and a trailing amount (value / rate).\n * The order is only activated when the market reaches the activation price,\n * after which the trailing stop logic tracks the extreme price and triggers when the price retraces by the specified trailing amount.\n */\nexport interface TrailingStopOrder {\n /**\n * activated price\n */\n activated_price?: string;\n /**\n * i.e. the value = 100\n */\n callback_value?: string;\n /**\n * i.e. the value = 0.1 represent to 10%\n */\n callback_rate?: string;\n}\n\nexport interface RegularOrder\n extends BaseOrder, OrderExt, ScaledOrder, TrailingStopOrder {\n // symbol: string;\n // client_order_id: string;\n // type: OrderType;\n // price: number;\n // quantity: number;\n}\n\nexport interface AlgoOrder extends BaseOrder, OrderExt {\n // symbol: string;\n quantity: string;\n type: OrderType;\n price: string;\n algo_type: AlgoOrderRootType;\n trigger_price_type: string;\n trigger_price: string;\n child_orders: AlgoOrderChildOrders[];\n}\n\nexport interface BracketOrder extends AlgoOrder, OrderExt {\n /**\n * Computed take profit\n */\n position_type?: PositionType;\n // tp_enable?: boolean;\n // sl_enable?: boolean;\n tp_pnl?: string;\n tp_offset?: string;\n tp_offset_percentage?: string;\n /** Offset from mark price (UI / internal; same semantics as offset but base = mark). */\n tp_offset_from_mark?: string;\n tp_offset_percentage_from_mark?: string;\n tp_ROI?: string;\n tp_trigger_price?: string;\n tp_order_price?: string;\n tp_order_type?: OrderType;\n\n /**\n * Computed stop loss\n */\n sl_pnl?: string;\n sl_offset?: string;\n sl_offset_percentage?: string;\n sl_offset_from_mark?: string;\n sl_offset_percentage_from_mark?: string;\n sl_ROI?: string;\n sl_trigger_price?: string;\n sl_order_price?: string;\n sl_order_type?: OrderType;\n}\n\nexport type OrderlyOrder = RegularOrder & AlgoOrder & BracketOrder;\n\nexport interface AlgoOrderChildOrders {\n symbol: string;\n algo_type: string;\n child_orders: ChildOrder[];\n}\n\nexport interface ChildOrder {\n symbol: string;\n algo_type: AlgoOrderType;\n side: string;\n type: OrderType;\n trigger_price: string;\n price?: string;\n reduce_only: boolean;\n trigger_price_type?: string;\n}\n\nexport interface TrailingStopOrder {\n activated_price?: string;\n callback_value?: string;\n callback_rate?: string;\n}\n\nexport interface OrderEntity extends ScaledOrder, TrailingStopOrder {\n symbol: string;\n order_type: OrderType;\n margin_mode?: MarginMode;\n algo_type?: AlgoOrderRootType;\n order_type_ext?: OrderType;\n order_price?: string;\n order_quantity?: string;\n order_amount?: number;\n // Whether to display in the orderbook, default=order_quantity, not displayed when =0,\n visible_quantity?: number;\n reduce_only?: boolean;\n side: OrderSide;\n broker_id?: string;\n slippage?: number;\n\n // internal fields\n total?: string;\n // hideInOrderbook?: boolean;\n isStopOrder?: boolean;\n trigger_price?: string;\n order_tag?: string;\n client_order_id?: string;\n level?: OrderLevel;\n}\n\nexport enum DistributionType {\n // enum value need to use lowercase to match the track params\n FLAT = \"flat\",\n ASCENDING = \"ascending\",\n DESCENDING = \"descending\",\n CUSTOM = \"custom\",\n}\n\nexport type Optional<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;\nexport type RequireKeys<T extends object, K extends keyof T> = Required<\n Pick<T, K>\n> &\n Partial<Omit<T, K>>;\n\nexport interface BaseAlgoOrderEntity<\n T extends AlgoOrderRootType,\n> extends OrderEntity {\n algo_type: AlgoOrderRootType;\n child_orders: (Partial<Omit<AlgoOrderEntity<T>, \"algo_type\" | \"type\">> & {\n algo_type: AlgoOrderType;\n type: OrderType;\n child_orders?: BaseAlgoOrderEntity<T>[\"child_orders\"];\n // trigger_price: number | string;\n })[];\n // if update the order, then need to provide the order_id\n algo_order_id?: number;\n client_order_id?: string;\n order_tag?: string;\n price?: number | string;\n quantity: number | string;\n reduce_only?: boolean;\n side: OrderSide;\n symbol: string;\n trigger_price: string;\n trigger_price_type: TriggerPriceType;\n type: OrderType;\n visible_quantity?: number;\n is_activated?: boolean;\n tp_trigger_price?: string | number;\n sl_trigger_price?: string | number;\n tp_order_price?: string | number;\n tp_order_type?: OrderType;\n sl_order_price?: string | number;\n sl_order_type?: OrderType;\n /** Mark-based TP/SL offsets (UI + API); mirrors `BracketOrder` when used on TP/SL algo forms. */\n tp_offset_from_mark?: string | number;\n tp_offset_percentage_from_mark?: string | number;\n sl_offset_from_mark?: string | number;\n sl_offset_percentage_from_mark?: string | number;\n // tp_enable?: boolean;\n // sl_enable?: boolean;\n position_type?: PositionType;\n}\n\nexport type AlgoOrderEntity<\n T extends AlgoOrderRootType = AlgoOrderRootType.STOP,\n> = T extends AlgoOrderRootType.TP_SL\n ? Optional<\n BaseAlgoOrderEntity<T>,\n \"side\" | \"type\" | \"trigger_price\" | \"order_type\"\n >\n : T extends AlgoOrderRootType.POSITIONAL_TP_SL\n ? Optional<\n BaseAlgoOrderEntity<T>,\n | \"side\"\n | \"type\"\n | \"trigger_price\"\n | \"order_type\"\n | \"quantity\"\n // | \"tp_enable\"\n // | \"sl_enable\"\n | \"tp_order_price\"\n | \"tp_order_type\"\n | \"sl_order_price\"\n | \"sl_order_type\"\n | \"position_type\"\n >\n : Omit<BaseAlgoOrderEntity<T>, \"child_orders\" | \"order_type\">;\n\nexport type TPSLOrderEntry = Optional<\n AlgoOrderEntity<AlgoOrderRootType.TP_SL>,\n \"side\" | \"type\" | \"trigger_price\"\n>;\n\nexport type BracketOrderEntry = Optional<\n AlgoOrderEntity<AlgoOrderRootType.BRACKET>,\n \"side\"\n>;\n","export enum WithdrawStatus {\n NotSupported = \"NotSupported\",\n NotConnected = \"NotConnected\",\n Unsettle = \"Unsettle\",\n InsufficientBalance = \"InsufficientBalance\",\n Normal = \"Normal\",\n}\n","export interface Chain {\n id: number;\n chainNameShort: string;\n chainLogo: string;\n chainInfo: ChainInfo;\n minGasBalance: number;\n minCrossGasBalance: number;\n maxPrepayCrossGas: number;\n blockExplorerName: string;\n chainName: string;\n requestRpc: string;\n}\n\nexport interface ChainInfo {\n chainId: string;\n chainName: string;\n nativeCurrency: NativeCurrency;\n rpcUrls: string[];\n blockExplorerUrls: string[];\n}\n\nexport interface NativeCurrency {\n name: string;\n symbol: string;\n decimals: number;\n fix: number;\n}\n\nexport const Ethereum = {\n chainNameShort: \"Ethereum\",\n id: 1,\n chainLogo: \"\",\n chainInfo: {\n chainId: `0x${(1).toString(16)}`,\n chainName: \"Ethereum Mainnet\",\n nativeCurrency: {\n name: \"eth\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 8,\n },\n rpcUrls: [\"https://mainnet.infura.io/v3/9155d40884554acdb17699a18a1fe348\"],\n blockExplorerUrls: [\"https://etherscan.io/\"],\n },\n minGasBalance: 0.002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.025,\n blockExplorerName: \"EthScan\",\n chainName: \"Ethereum Mainnet\",\n requestRpc: \"https://rpc.ankr.com/eth\",\n};\n\nexport const Avalanche = {\n id: 43114,\n chainInfo: {\n chainId: `0x${(43114).toString(16)}`, // '0xa86a'\n chainName: \"Avalanche\",\n nativeCurrency: {\n name: \"avax\",\n symbol: \"AVAX\",\n decimals: 18,\n fix: 5,\n },\n rpcUrls: [\"https://api.avax.network/ext/bc/C/rpc\"],\n blockExplorerUrls: [\"https://snowtrace.io/\"],\n },\n minGasBalance: 0.05,\n minCrossGasBalance: 0.15,\n maxPrepayCrossGas: 2,\n blockExplorerName: \"Snowtrace\",\n chainName: \"Avalanche\",\n chainNameShort: \"Avalanche\",\n chainLogo: \"\",\n requestRpc: \"https://rpc.ankr.com/avalanche\",\n};\n\nexport const Fuji = {\n id: 43113,\n chainInfo: {\n chainId: `0x${(43113).toString(16)}`, // '0xa86a'\n chainName: \"Avalanche Fuji Testnet\",\n nativeCurrency: {\n name: \"avax\",\n symbol: \"AVAX\",\n decimals: 18,\n fix: 5,\n },\n rpcUrls: [\"https://api.avax.network/ext/bc/C/rpc\"],\n blockExplorerUrls: [\"https://snowtrace.io/\"],\n },\n minGasBalance: 0.05,\n minCrossGasBalance: 0.15,\n maxPrepayCrossGas: 2,\n blockExplorerName: \"Snowtrace\",\n chainName: \"Avalanche Fuji\",\n chainNameShort: \"Avalanche Fuji\",\n chainLogo: \"\",\n requestRpc: \"https://rpc.ankr.com/avalanche\",\n};\n\nexport const BNB = {\n id: 56,\n chainInfo: {\n chainId: `0x${(56).toString(16)}`, // 0x38\n chainName: \"BNB Chain\",\n nativeCurrency: {\n name: \"bnb\",\n symbol: \"BNB\",\n decimals: 18,\n fix: 6,\n },\n rpcUrls: [\"https://bsc-dataseed1.binance.org/\"],\n blockExplorerUrls: [\"https://bscscan.com/\"],\n },\n minGasBalance: 0.02,\n minCrossGasBalance: 0.02,\n maxPrepayCrossGas: 0.1,\n blockExplorerName: \"BscScan\",\n chainName: \"Binance Smart Chain\",\n chainNameShort: \"BNB Chain\",\n requestRpc: \"https://rpc.ankr.com/bsc\",\n chainLogo: \"\",\n};\n\nexport const Fantom = {\n id: 250,\n chainInfo: {\n chainId: `0x${(250).toString(16)}`, // 0x38\n chainName: \"Fantom\",\n nativeCurrency: {\n name: \"ftm\",\n symbol: \"FTM\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://rpcapi.fantom.network\"],\n blockExplorerUrls: [\"https://ftmscan.com/\"],\n },\n minGasBalance: 1,\n minCrossGasBalance: 10,\n maxPrepayCrossGas: 60,\n blockExplorerName: \"FTMScan\",\n chainName: \"Fantom\",\n chainNameShort: \"Fantom\",\n chainLogo: \"\",\n requestRpc: \"https://rpc.ankr.com/fantom\",\n};\n\nexport const Polygon = {\n id: 137,\n chainInfo: {\n chainId: `0x${(137).toString(16)}`,\n chainName: \"Polygon\",\n nativeCurrency: {\n name: \"matic\",\n symbol: \"MATIC\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://rpc-mainnet.matic.network\"],\n blockExplorerUrls: [\"https://polygonscan.com/\"],\n },\n minGasBalance: 0.1,\n minCrossGasBalance: 1,\n maxPrepayCrossGas: 30,\n blockExplorerName: \"Polygonscan\",\n chainName: \"Polygon\",\n chainNameShort: \"Polygon\",\n requestRpc: \"https://rpc.ankr.com/polygon\",\n chainLogo: \"\",\n};\n\nexport const Arbitrum = {\n id: 42161,\n chainInfo: {\n chainId: `0x${(42161).toString(16)}`,\n chainName: \"Arbitrum\",\n nativeCurrency: {\n name: \"eth\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://arb1.arbitrum.io/rpc\"],\n blockExplorerUrls: [\"https://arbiscan.io/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Arbiscan\",\n chainName: \"Arbitrum\",\n chainNameShort: \"Arbitrum\",\n requestRpc: \"https://arb1.arbitrum.io/rpc\",\n chainLogo: \"\",\n};\n\nexport const Optimism = {\n id: 10,\n chainInfo: {\n chainId: `0x${(10).toString(16)}`,\n chainName: \"Optimism\",\n nativeCurrency: {\n name: \"eth\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://mainnet.optimism.io\"],\n blockExplorerUrls: [\"https://optimistic.etherscan.io/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Optimism\",\n chainName: \"Optimism\",\n chainNameShort: \"Optimism\",\n requestRpc: \"https://rpc.ankr.com/optimism\",\n chainLogo: \"\",\n};\n\nexport const zkSyncEra = {\n id: 324,\n chainInfo: {\n chainId: `0x${(324).toString(16)}`,\n chainName: \"zkSync Era\",\n nativeCurrency: {\n name: \"eth\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://zksync2-mainnet.zksync.io\"],\n blockExplorerUrls: [\"https://explorer.zksync.io/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"zkSync Era\",\n chainName: \"zkSync Era\",\n chainNameShort: \"zkSync Era\",\n requestRpc: \"https://zksync2-mainnet.zksync.io/\",\n chainLogo: \"\",\n // blockExplorerName: 'zkSync Era Goerli',\n // chainName: 'zkSync Era Goerli',\n // chainNameShort: 'zkSync Era Goerli',\n // requestRpc: 'https://zksync2-testnet.zksync.dev/',\n // chainLogo: '',\n};\n\nexport const PolygonzkEVM = {\n id: 1101,\n chainInfo: {\n chainId: `0x${(1101).toString(16)}`,\n chainName: \"Polygon zkEVM\",\n nativeCurrency: {\n name: \"eth\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://zkevm-rpc.com\"],\n blockExplorerUrls: [\"https://zkevm.polygonscan.com/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Polygon zkEVM\",\n chainName: \"Polygon zkEVM\",\n chainNameShort: \"Polygon zkEVM\",\n requestRpc: \"https://zkevm-rpc.com\",\n chainLogo: \"\",\n};\n\nexport const Linea = {\n id: 59144,\n chainInfo: {\n chainId: `0x${(59144).toString(16)}`,\n chainName: \"Linea\",\n nativeCurrency: {\n name: \"eth\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://rpc.linea.build\"],\n blockExplorerUrls: [\"https://lineascan.build/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Linea\",\n chainName: \"Linea\",\n chainNameShort: \"Linea\",\n requestRpc: \"https://rpc.linea.build\",\n chainLogo: \"\",\n};\n\nexport const Base = {\n id: 8453,\n chainInfo: {\n chainId: `0x${(8453).toString(16)}`,\n chainName: \"Base Network\",\n nativeCurrency: {\n name: \"eth\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://developer-access-mainnet.base.org/\"],\n blockExplorerUrls: [\"https://basescan.org\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Base\",\n chainName: \"Base\",\n chainNameShort: \"Base\",\n requestRpc: \"https://developer-access-mainnet.base.org/\",\n chainLogo: \"\",\n};\n\nexport const Mantle = {\n id: 5000,\n chainInfo: {\n chainId: `0x${(5000).toString(16)}`,\n chainName: \"Mantle\",\n nativeCurrency: {\n name: \"MNT\",\n symbol: \"MNT\",\n decimals: 6,\n fix: 4,\n },\n rpcUrls: [\"https://rpc.mantle.xyz/\"],\n blockExplorerUrls: [\"https://mantlescan.xyz/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Mantle\",\n chainName: \"Mantle\",\n chainNameShort: \"Mantle\",\n requestRpc: \"https://rpc.mantle.xyz/\",\n chainLogo: \"\",\n};\n\nexport const ArbitrumGoerli = {\n id: 421613,\n chainInfo: {\n chainId: `0x${(421613).toString(16)}`,\n chainName: \"Arbitrum Goerli\",\n nativeCurrency: {\n name: \"AGOR\",\n symbol: \"AGOR\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://goerli-rollup.arbitrum.io/rpc\"],\n blockExplorerUrls: [\"https://goerli-rollup-explorer.arbitrum.io/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Arbitrum Goerli\",\n chainName: \"Arbitrum Goerli\",\n chainNameShort: \"Arbitrum Goerli\",\n requestRpc: \"https://goerli-rollup.arbitrum.io/rpc\",\n chainLogo: \"\",\n};\n\nexport const ArbitrumSepolia = {\n id: 421614,\n chainInfo: {\n chainId: `0x${(421614).toString(16)}`,\n chainName: \"Arbitrum Sepolia\",\n nativeCurrency: {\n name: \"ETH\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://arbitrum-sepolia.blockpi.network/v1/rpc/public\"],\n blockExplorerUrls: [\"https://sepolia-explorer.arbitrum.io\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Arbitrum Sepolia\",\n chainName: \"Arbitrum Sepolia\",\n chainNameShort: \"Arbitrum Sepolia\",\n requestRpc: \"https://arbitrum-sepolia.blockpi.network/v1/rpc/public\",\n chainLogo: \"\",\n};\n\nexport const OptimismGoerli = {\n id: 420,\n chainInfo: {\n chainId: `0x${(420).toString(16)}`,\n chainName: \"Optimism Goerli\",\n nativeCurrency: {\n name: \"ETH\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://optimism-goerli.gateway.tenderly.co\"],\n blockExplorerUrls: [\"https://goerli-optimism.etherscan.io\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Optimism Goerli\",\n chainName: \"Optimism Goerli\",\n chainNameShort: \"Optimism Goerli\",\n requestRpc: \"https://optimism-goerli.gateway.tenderly.co\",\n chainLogo: \"\",\n};\n\nexport const OptimismSepolia = {\n id: 11155420,\n chainInfo: {\n chainId: `0x${(11155420).toString(16)}`,\n chainName: \"Optimism Sepolia\",\n nativeCurrency: {\n name: \"ETH\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://sepolia.optimism.io\"],\n blockExplorerUrls: [\"https://sepolia-optimistic.etherscan.io\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Optimism Sepolia\",\n chainName: \"Optimism Sepolia\",\n chainNameShort: \"Optimism Sepolia\",\n requestRpc: \"https://sepolia.optimism.io\",\n chainLogo: \"\",\n};\n\nexport const BaseSepolia = {\n id: 84532,\n chainInfo: {\n chainId: `0x${(84532).toString(16)}`,\n chainName: \"Base Sepolia\",\n nativeCurrency: {\n name: \"ETH\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://base-sepolia-rpc.publicnode.com\"],\n blockExplorerUrls: [\"https://base-sepolia.blockscout.com/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Base Sepolia\",\n chainName: \"Base Sepolia\",\n chainNameShort: \"Base Sepolia\",\n requestRpc: \"https://base-sepolia-rpc.publicnode.com\",\n chainLogo: \"\",\n};\n\nexport const MantleSepolia = {\n id: 5003,\n chainInfo: {\n chainId: `0x${(5003).toString(16)}`,\n chainName: \"Mantle Sepolia\",\n nativeCurrency: {\n name: \"MNT\",\n symbol: \"MNT\",\n decimals: 6,\n fix: 4,\n },\n rpcUrls: [\"https://rpc.sepolia.mantle.xyz/\"],\n blockExplorerUrls: [\"https://sepolia.mantlescan.xyz/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Mantle Sepolia\",\n chainName: \"Mantle Sepolia\",\n chainNameShort: \"Mantle Sepolia\",\n requestRpc: \"https://rpc.sepolia.mantle.xyz/\",\n chainLogo: \"\",\n};\n\nexport const PolygonAmoy = {\n id: 80002,\n chainInfo: {\n chainId: `0x${(80002).toString(16)}`,\n chainName: \"Polygon Amoy\",\n nativeCurrency: {\n name: \"MATIC\",\n symbol: \"MATIC\",\n decimals: 6,\n fix: 4,\n },\n rpcUrls: [\"https://rpc-amoy.polygon.technology/\"],\n blockExplorerUrls: [\"https://www.oklink.com/amoy\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Polygon Amoy\",\n chainName: \"Polygon Amoy\",\n chainNameShort: \"Polygon Amoy\",\n requestRpc: \"https://rpc-amoy.polygon.technology/\",\n chainLogo: \"\",\n};\n\nexport const Sei = {\n id: 1329,\n chainInfo: {\n chainId: `0x${(1329).toString(16)}`,\n chainName: \"Sei Network\",\n nativeCurrency: {\n name: \"SEI\",\n symbol: \"SEI\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://evm-rpc.sei-apis.com\"],\n blockExplorerUrls: [\"https://seitrace.com/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"SEI\",\n chainName: \"Sei Network\",\n chainNameShort: \"SEI\",\n requestRpc: \"https://evm-rpc.sei-apis.com\",\n chainLogo: \"\",\n};\n\nexport const StoryTestnet = {\n name: \"Story Odyssey Testnet\",\n public_rpc_url: \"https://rpc.odyssey.storyrpc.io/\",\n chain_id: 1516,\n currency_symbol: \"IP\",\n explorer_base_url: \"\",\n vault_address: \"\",\n};\nexport const StoryOdysseyTestnet = {\n id: 1329,\n chainInfo: {\n chainId: `0x${StoryTestnet.chain_id.toString(16)}`,\n chainName: StoryTestnet.name,\n nativeCurrency: {\n name: \"IP\",\n symbol: \"IP\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [StoryTestnet.public_rpc_url],\n blockExplorerUrls: [],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"SEI\",\n chainName: \"Sei Network\",\n chainNameShort: \"SEI\",\n requestRpc: \"https://evm-rpc.sei-apis.com\",\n chainLogo: \"\",\n};\nexport const chainsInfoMap: Map<number, Chain> = new Map([\n [Ethereum.id, Ethereum],\n [Avalanche.id, Avalanche],\n [Fuji.id, Fuji],\n [BNB.id, BNB],\n [Fantom.id, Fantom],\n [Polygon.id, Polygon],\n [Arbitrum.id, Arbitrum],\n [Optimism.id, Optimism],\n [zkSyncEra.id, zkSyncEra],\n [PolygonzkEVM.id, PolygonzkEVM],\n [Linea.id, Linea],\n [Base.id, Base],\n [Mantle.id, Mantle],\n [ArbitrumGoerli.id, ArbitrumGoerli],\n [ArbitrumSepolia.id, ArbitrumSepolia],\n [OptimismGoerli.id, OptimismGoerli],\n [OptimismSepolia.id, OptimismSepolia],\n [BaseSepolia.id, BaseSepolia],\n [MantleSepolia.id, MantleSepolia],\n [PolygonAmoy.id, PolygonAmoy],\n [Sei.id, Sei],\n [StoryOdysseyTestnet.id, StoryOdysseyTestnet],\n]);\n\nexport const SolanaDevnet = {\n id: 901901901,\n chainInfo: {\n name: \"Solana Devnet\",\n public_rpc_url: \"\",\n chainId: 901901901,\n currency_symbol: \"SOL\",\n explorer_base_url: \"\",\n vault_address: \"\",\n },\n} as unknown as typeof Arbitrum;\n\nexport const TestnetChains = [\n {\n network_infos: {\n name: \"Arbitrum Sepolia\",\n shortName: \"Arbitrum Sepolia\",\n public_rpc_url: \"https://arbitrum-sepolia.blockpi.network/v1/rpc/public\",\n chain_id: 421614,\n currency_symbol: \"ETH\",\n bridge_enable: true,\n mainnet: false,\n explorer_base_url: \"https://sepolia.arbiscan.io\",\n est_txn_mins: null,\n },\n token_infos: [\n {\n symbol: \"USDC\",\n address: \"0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d\",\n decimals: 6,\n },\n ],\n },\n {\n network_infos: {\n name: \"Solana Devnet\",\n public_rpc_url: \"\",\n chain_id: 901901901,\n currency_symbol: \"SOL\",\n explorer_base_url: \"\",\n vault_address: \"\",\n },\n token_infos: [\n {\n symbol: \"USDC\",\n address: \"4zMMC9srt5Ri5X14GAgXhaHii3GnPAEERYPJgZJDncDU\",\n decimals: 6,\n },\n ],\n },\n {\n network_infos: StoryTestnet,\n token_infos: [\n {\n symbol: \"USDC\",\n address: \"0xF1815bd50389c46847f0Bda824eC8da914045D14\",\n decimals: 6,\n },\n ],\n },\n // {\n // network_infos: {\n // name: \"Mantle Sepolia\",\n // shortName: \"Mantle Sepolia\",\n // public_rpc_url: \"https://rpc.sepolia.mantle.xyz/\",\n // chain_id: 5003,\n // currency_symbol: \"MNT\",\n // bridge_enable: true,\n // mainnet: false,\n // explorer_base_url: \"https://sepolia.mantlescan.xyz/\",\n // est_txn_mins: null,\n // },\n // token_infos: [\n // {\n // symbol: \"USDC\",\n // address: \"0xAcab8129E2cE587fD203FD770ec9ECAFA2C88080\",\n // decimals: 6,\n // display_name: \"USDC.e\",\n // },\n // ],\n // },\n // {\n // network_infos: {\n // name: \"Arbitrum Goerli\",\n // shortName: \"Arbitrum Goerli\",\n // public_rpc_url: \"https://goerli-rollup.arbitrum.io/rpc\",\n // chain_id: 421613,\n // currency_symbol: \"ETH\",\n // bridge_enable: true,\n // mainnet: false,\n // explorer_base_url: \"https://goerli.arbiscan.io/\",\n // est_txn_mins: null,\n // },\n // token_infos: [\n // {\n // symbol: \"USDC\",\n // address: \"0xfd064A18f3BF249cf1f87FC203E90D8f650f2d63\",\n // decimals: 6,\n // },\n // ],\n // },\n // {\n // network_infos: {\n // name: \"Optimism Goerli\",\n // shortName: \"Optimism Goerli\",\n // public_rpc_url: \"https://optimism-goerli.gateway.tenderly.co\",\n // chain_id: 420,\n // currency_symbol: \"ETH\",\n // bridge_enable: true,\n // mainnet: false,\n // explorer_base_url: \"https://goerli-optimism.etherscan.io\",\n // est_txn_mins: null,\n // },\n // },\n];\n\nexport const defaultMainnetChains = [Arbitrum, Base, Optimism];\nexport const defaultTestnetChains = [ArbitrumSepolia];\n\nexport enum ChainNamespace {\n evm = \"EVM\",\n solana = \"SOL\",\n}\n\nexport const AbstractChains = new Set([2741, 11124]);\nexport const SolanaChains = new Set([901901901, 900900900]);\n","export enum TrackerEventName {\n /** virtual event (not send this event name to tracker) */\n trackIdentifyUserId = \"track_identify_user_id\",\n trackIdentify = \"track_identify\",\n trackCustomEvent = \"track_custom_event\",\n\n /** real event name (send this event name to tracker) */\n withdrawSuccess = \"withdraw_request_success\",\n withdrawFailed = \"withdraw_request_failure\",\n depositSuccess = \"deposit_request_success\",\n depositFailed = \"deposit_request_failure\",\n signinSuccess = \"sign_message_success\",\n placeOrderSuccess = \"place_order_success\",\n walletConnect = \"connect_wallet_success\",\n clickLinkDeviceButton = \"click_link_device_button\",\n signLinkDeviceMessageSuccess = \"sign_link_device_message_success\",\n linkDeviceModalClickConfirm = \"link_device_modal_click_confirm\",\n socialLoginSuccess = \"social_login_success\",\n clickSwitchNetwork = \"click_switch_network\",\n clickSwitchWallet = \"click_switch_wallet\",\n switchNetworkSuccess = \"switch_network_success\",\n clickExportPrivateKey = \"click_export_private_key\",\n switchLanguage = \"switch_language\",\n leaderboardCampaignClickTradeNow = \"leaderboard_campaign_click_trade_now\",\n leaderboardCampaignClickLearnMore = \"leaderboard_campaign_click_learn_more\",\n vaultDepositSuccess = \"vault_deposit_success\",\n vaultDepositFailed = \"vault_deposit_failed\",\n vaultWithdrawSuccess = \"vault_withdraw_success\",\n vaultWithdrawFailed = \"vault_withdraw_failed\",\n clickBBOButton = \"click_bbo_button\",\n confirmCloseAllPositions = \"confirm_close_all_positions\",\n}\n","import { API } from \"./types/api\";\n\n// export type Chain = {\n// id: string;\n// name?: string;\n// };\n\nexport type CurrentChain = {\n id: number;\n info: API.Chain;\n};\n\nexport enum WS_WalletStatusEnum {\n NO = \"NO\",\n FAILED = \"FAILED\",\n PENDING = \"PENDING\",\n PROCESSING = \"PROCESSING\",\n COMPLETED = \"COMPLETED\",\n}\n","export const LedgerWalletKey = \"orderly:ledger-wallet\";\nexport const ConnectorKey = \"orderly:connectorKey\";\nexport const ChainKey = \"order:chain\";\nexport const LinkDeviceKey = \"orderly_link_device\";\nexport const TradingviewFullscreenKey = \"orderly:tradingview-fullscreen\";\nexport const OrderEntrySortKeys = \"orderly:order_entry_sort_keys\";\n","export class ApiError extends Error {\n constructor(message: string, private readonly code: number) {\n super(message);\n this.name = \"ApiError\";\n }\n}\n\nexport class SDKError extends Error {\n constructor(message: string) {\n super(`[ORDERLY SDK ERROR]:${message}`);\n this.name = \"SDKError\";\n }\n}\n","export const definedTypes = {\n EIP712Domain: [\n { name: \"name\", type: \"string\" },\n { name: \"version\", type: \"string\" },\n { name: \"chainId\", type: \"uint256\" },\n { name: \"verifyingContract\", type: \"address\" },\n ],\n Registration: [\n { name: \"brokerId\", type: \"string\" },\n { name: \"chainId\", type: \"uint256\" },\n { name: \"timestamp\", type: \"uint64\" },\n { name: \"registrationNonce\", type: \"uint256\" },\n ],\n Withdraw: [\n { name: \"brokerId\", type: \"string\" },\n { name: \"chainId\", type: \"uint256\" },\n { name: \"receiver\", type: \"address\" },\n { name: \"token\", type: \"string\" },\n { name: \"amount\", type: \"uint256\" },\n { name: \"withdrawNonce\", type: \"uint64\" },\n { name: \"timestamp\", type: \"uint64\" },\n ],\n AddOrderlyKey: [\n { name: \"brokerId\", type: \"string\" },\n { name: \"chainId\", type: \"uint256\" },\n { name: \"orderlyKey\", type: \"string\" },\n { name: \"scope\", type: \"string\" },\n { name: \"timestamp\", type: \"uint64\" },\n { name: \"expiration\", type: \"uint64\" },\n ],\n SettlePnl: [\n { name: \"brokerId\", type: \"string\" },\n { name: \"chainId\", type: \"uint256\" },\n { name: \"settleNonce\", type: \"uint64\" },\n { name: \"timestamp\", type: \"uint64\" },\n ],\n DexRequest: [\n { name: \"payloadType\", type: \"uint8\" },\n { name: \"nonce\", type: \"uint256\" },\n { name: \"receiver\", type: \"address\" },\n { name: \"amount\", type: \"uint256\" },\n { name: \"vaultId\", type: \"bytes32\" },\n { name: \"token\", type: \"string\" },\n { name: \"dexBrokerId\", type: \"string\" },\n ],\n InternalTransfer: [\n { name: \"receiver\", type: \"bytes32\" },\n { name: \"token\", type: \"string\" },\n { name: \"amount\", type: \"uint256\" },\n { name: \"transferNonce\", type: \"uint64\" },\n ],\n} as const;\n","export enum AssetHistoryStatusEnum {\n /** @deprecated, this status is not used */\n NEW = \"NEW\",\n PENDING = \"PENDING\",\n CONFIRM = \"CONFIRM\",\n PROCESSING = \"PROCESSING\",\n COMPLETED = \"COMPLETED\",\n FAILED = \"FAILED\",\n PENDING_REBALANCE = \"PENDING_REBALANCE\",\n}\n\nexport enum AssetHistorySideEnum {\n DEPOSIT = \"DEPOSIT\",\n WITHDRAW = \"WITHDRAW\",\n}\n","export const DEFAUL_ORDERLY_KEY_SCOPE = \"read,trading\";\n"],"mappings":"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","names":["AccountStatusEnum","SystemStateEnum","ExchangeStatusEnum","NetworkStatusEnum","AnnouncementType","OrderType","MarginMode","BBOOrderType","OrderLevel","AlgoOrderRootType","TriggerPriceType","PositionType","AlgoOrderType","OrderSide","OrderStatus","TrailingCallbackType","DistributionType","WithdrawStatus","ChainNamespace","TrackerEventName","WS_WalletStatusEnum","AssetHistoryStatusEnum","AssetHistorySideEnum"]}
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/version.ts","../src/constants.ts","../src/types/api.ts","../src/order.ts","../src/withdraw.ts","../src/chains.ts","../src/track.ts","../src/wallet.ts","../src/storageKey.ts","../src/errors.ts","../src/sign.ts","../src/index.ts","../src/assetHistory.ts","../src/account.ts"],"sourcesContent":["declare global {\n interface Window {\n __ORDERLY_VERSION__?: {\n [key: string]: string;\n };\n }\n}\nif (typeof window !== \"undefined\") {\n window.__ORDERLY_VERSION__ = window.__ORDERLY_VERSION__ || {};\n window.__ORDERLY_VERSION__[\"@kodiak-finance/orderly-types\"] = \"2.7.4\";\n}\n\nexport default \"2.7.4\";\n","/* eslint-disable @typescript-eslint/no-explicit-any */\n\nexport enum AccountStatusEnum {\n EnableTradingWithoutConnected = -1,\n NotConnected = 0,\n Connected = 1,\n NotSignedIn = 2,\n SignedIn = 3,\n DisabledTrading = 4,\n EnableTrading = 5,\n}\n\nexport enum SystemStateEnum {\n Loading = 0,\n Error = 1,\n Ready = 10,\n}\n\nexport enum ExchangeStatusEnum {\n Normal = 0,\n Maintain = 1,\n}\n\nexport type NetworkId = \"testnet\" | \"mainnet\";\n\nexport enum NetworkStatusEnum {\n unknown = 0,\n unsupported = 1,\n supported = 2,\n}\n\n// Testnet\n// Arbitrum Goerli\n// export const ARBITRUM_TESTNET_CHAINID = 421613;\n// export const ARBITRUM_TESTNET_CHAINID_HEX = \"0x66EED\";\n\n// Arbitrum Sepolia\nexport const ARBITRUM_TESTNET_CHAINID = 421614;\nexport const SOLANA_TESTNET_CHAINID = 901901901;\nexport const SOLANA_MAINNET_CHAINID = 900900900;\nexport const STORY_TESTNET_CHAINID = 1516;\nexport const MONAD_TESTNET_CHAINID = 10143;\nexport const ABSTRACT_TESTNET_CHAINID = 11124;\nexport const ABSTRACT_MAINNET_CHAINID = 2741;\nexport const BSC_TESTNET_CHAINID = 97;\nexport const ABSTRACT_CHAIN_ID_MAP = new Set([\n ABSTRACT_TESTNET_CHAINID,\n ABSTRACT_MAINNET_CHAINID,\n]);\n\nexport const ARBITRUM_TESTNET_CHAINID_HEX = \"0x66EEE\";\n\nexport const MANTLE_TESTNET_CHAINID = 5003;\nexport const MANTLE_TESTNET_CHAINID_HEX = \"0x138b\";\n\n// Mainnet\nexport const ARBITRUM_MAINNET_CHAINID = 42161;\nexport const ETHEREUM_MAINNET_CHAINID = 1;\nexport const ARBITRUM_MAINNET_CHAINID_HEX = \"0xa4b1\";\n\nexport const MEDIA_TABLET = \"(max-width: 768px)\";\n\n/** deposit buffer factor */\nexport const DEPOSIT_FEE_RATE = 1.05;\n\n/**\n * A constant for the maximum value for a ``uint256``.\n */\nexport const MaxUint256: bigint = BigInt(\n \"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff\",\n);\n\nexport const nativeTokenAddress = \"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE\";\n\n// TODO: remove this\nexport const nativeETHAddress = \"0x0000000000000000000000000000000000000000\";\n\nexport const isNativeTokenChecker = (address?: string) => {\n if (!address) {\n return false;\n }\n return (\n address?.toLowerCase() === nativeTokenAddress.toLowerCase() ||\n address === nativeETHAddress\n );\n};\n\nexport const ArbitrumSepoliaChainInfo = {\n name: \"Arbitrum Sepolia\",\n public_rpc_url: \"https://arbitrum-sepolia.gateway.tenderly.co\",\n chain_id: \"421614\",\n currency_symbol: \"ETH\",\n currency_decimal: 18,\n explorer_base_url: \"https://sepolia.arbiscan.io\",\n vault_address: \"0x0EaC556c0C2321BA25b9DC01e4e3c95aD5CDCd2f\",\n};\nexport const AbstractTestnetChainInfo = {\n name: \"Abstract Testnet\",\n public_rpc_url: \"https://api.testnet.abs.xyz\",\n chain_id: \"11124\",\n currency_symbol: \"ETH\",\n currency_decimal: 18,\n explorer_base_url: \"https://sepolia.abscan.org\",\n vault_address: \"0xf14Ff11F3bb1011ff42665Ec869c7827c43745Fd\",\n};\nexport const AbstractTestnetTokenInfo = {\n chain_id: \"11124\",\n contract_address: \"0xa0BB43E2eA7fcE91F07e628d72fD6333e80F47D2\",\n decimals: 6,\n withdrawal_fee: 1,\n cross_chain_withdrawal_fee: 2,\n display_name: \"USDC\",\n};\nexport const SolanaDevnetChainInfo = {\n chain_id: \"901901901\",\n currency_decimal: 9,\n currency_symbol: \"SOL\",\n explorer_base_url: \"https://explorer.solana.com/?cluster=devnet\",\n name: \"Solana-Devnet\",\n public_rpc_url: \"https://api.devnet.solana.com\",\n vault_address: \"9shwxWDUNhtwkHocsUAmrNAQfBH2DHh4njdAEdHZZkF2\",\n};\n\nexport const SolanaDevnetTokenInfo = {\n chain_id: \"901901901\",\n contract_address: \"4zMMC9srt5Ri5X14GAgXhaHii3GnPAEERYPJgZJDncDU\",\n decimals: 6,\n withdrawal_fee: 1,\n cross_chain_withdrawal_fee: 5,\n display_name: \"USDC\",\n};\nexport const ArbitrumSepoliaTokenInfo = {\n chain_id: \"421614\",\n contract_address: \"0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d\",\n decimals: 6,\n withdrawal_fee: 1,\n cross_chain_withdrawal_fee: 2,\n display_name: \"USDC\",\n};\n\nexport const TesnetTokenFallback = (testnetTokens: any) => [\n {\n token: \"USDC\",\n token_hash:\n \"0xd6aca1be9729c13d677335161321649cccae6a591554772516700f986f942eaa\",\n decimals: 6,\n minimum_withdraw_amount: 0.000001,\n chain_details: testnetTokens,\n },\n];\n\nexport const EMPTY_LIST: ReadonlyArray<any> = [];\n\nexport const EMPTY_OBJECT: Readonly<Record<PropertyKey, any>> = {};\n\nexport const EMPTY_OPERATION = () => {};\n\n/**\n * Event name for broadcasting Order Entry estimated liquidation price changes\n * so that UI consumers (e.g. TradingView adapters) can update their visuals\n * without introducing tight coupling between widgets.\n */\nexport const ORDER_ENTRY_EST_LIQ_PRICE_CHANGE =\n \"orderEntry:estLiqPriceChange\" as const;\n\n/**\n * Payload for the ORDER_ENTRY_EST_LIQ_PRICE_CHANGE event, carrying the symbol\n * and the latest estimated liquidation price derived from the order form.\n */\nexport interface OrderEntryEstLiqPriceChangePayload {\n symbol: string;\n estLiqPrice: number | null;\n /** Whether the user is considered active when this payload is emitted (within the active window). */\n isUserActive?: boolean;\n}\n","/* eslint-disable @typescript-eslint/no-namespace */\nimport { AlgoOrderRootType, MarginMode, OrderSide, OrderType } from \"../order\";\n\nexport enum AnnouncementType {\n Listing = \"LISTING\",\n Maintenance = \"MAINTENANCE\",\n Delisting = \"DELISTING\",\n Campaign = \"CAMPAIGN\",\n Update = \"UPDATE\",\n Vote = \"VOTE\",\n}\n\nexport declare namespace API {\n // /v1/public/auto_convert_threshold\n export interface ConvertThreshold {\n ltv_threshold: number;\n negative_usdc_threshold: number;\n }\n\n //v1/public/token\n export interface Token {\n token: string;\n token_hash: string;\n decimals: number;\n minimum_withdraw_amount: number;\n base_weight: number;\n discount_factor: number;\n haircut: number;\n user_max_qty: number;\n is_collateral: boolean;\n on_chain_swap: boolean;\n chain_details: ChainDetail[];\n }\n\n //v1/public/token\n export interface ChainDetail {\n chain_id: string;\n contract_address: string;\n decimals: number;\n }\n\n // ws market, api v1/public/futures\n export interface MarketInfo {\n symbol: string;\n index_price: number;\n mark_price: number;\n sum_unitary_funding: number;\n est_funding_rate: number;\n last_funding_rate: number;\n next_funding_time: number;\n open_interest: string;\n \"24h_open\": number;\n \"24h_close\": number;\n \"24h_high\": number;\n \"24h_low\": number;\n /**\n * @deprecated\n * spelling mistake, use 24h_volume to instead, will be remove next version\n */\n \"24h_volumn\": number;\n \"24h_volume\": number;\n \"24h_amount\": number;\n }\n\n export interface MarketInfoExt extends MarketInfo {\n change: number;\n \"24h_volume\": number;\n }\n\n export interface AnnouncementRow {\n announcement_id: number | string;\n message: string;\n i18n?: Record<PropertyKey, string | null>;\n url?: string | null;\n type?: AnnouncementType | null;\n updated_time?: number | null;\n coverImage?: string;\n }\n\n export interface Announcement {\n last_updated_time?: number | null;\n rows?: AnnouncementRow[];\n }\n\n /**\n * v1/public/info\n */\n export interface Symbol {\n symbol: string;\n quote_min: number;\n quote_max: number;\n quote_tick: number;\n base_min: number;\n base_max: number;\n base_tick: number;\n min_notional: number;\n price_range: number;\n price_scope: number;\n std_liquidation_fee: number;\n liquidator_fee: number;\n claim_insurance_fund_discount: number;\n funding_period: number;\n cap_funding: number;\n floor_funding: number;\n interest_rate: number;\n created_time: number;\n updated_time: number;\n imr_factor: number;\n base_mmr: number;\n base_imr: number;\n }\n\n export interface TokenItem {\n token: string;\n token_hash: string;\n decimals: number;\n minimum_withdraw_amount: number;\n chain_details: ChainDetail[];\n }\n\n export interface ChainDetail {\n chain_id: string;\n contract_address: string;\n decimals: number;\n withdrawal_fee: number;\n }\n\n export interface SymbolExt extends Symbol {\n base: string;\n base_dp: number;\n\n quote: string;\n quote_dp: number;\n type: string;\n name: string;\n displayName: string;\n }\n\n export interface RwaSymbol {\n symbol: string;\n status: \"open\" | \"close\";\n next_open: number;\n next_close: number;\n\n base: string;\n quote: string;\n type: string;\n name: string;\n }\n\n export interface Order {\n symbol: string;\n status: string;\n side: string;\n order_id: number;\n algo_order_id?: number;\n user_id: number;\n price: number | null;\n type: string;\n quantity: number;\n amount: null;\n visible: number;\n executed: number;\n total_fee: number;\n fee_asset: string;\n client_order_id?: string;\n average_executed_price: number;\n total_executed_quantity: number;\n visible_quantity: number;\n created_time: number;\n updated_time: number;\n reduce_only: boolean;\n trigger_price?: number;\n order_tag?: string;\n margin_mode?: MarginMode;\n }\n\n export interface OrderExt extends Order {\n mark_price: string;\n }\n\n export interface AlgoOrder {\n algo_order_id: number;\n root_algo_order_id: number;\n parent_algo_order_id: number;\n parent_algo_type: AlgoOrderRootType;\n symbol: string;\n algo_type: string;\n child_orders: AlgoOrder[];\n side: string;\n quantity: number;\n is_triggered: boolean;\n is_activated: boolean;\n trigger_price: number;\n trigger_price_type: string;\n type: OrderType;\n root_algo_status: string;\n algo_status: string;\n price?: number;\n total_executed_quantity: number;\n visible_quantity: number;\n total_fee: number;\n fee_asset: string;\n reduce_only: boolean;\n created_time: number;\n updated_time: number;\n order_tag?: string;\n client_order_id?: string;\n\n // trailing stop order\n activated_price?: number;\n callback_value?: number;\n callback_rate?: number;\n extreme_price?: number;\n margin_mode?: MarginMode;\n }\n\n export interface AlgoOrderExt extends AlgoOrder {\n mark_price: string;\n position?: Partial<Position>;\n tp_trigger_price?: number;\n sl_trigger_price?: number;\n }\n\n export interface OrderResponse {\n rows: (Order | AlgoOrder)[];\n meta: {\n total: number;\n current_page: number;\n records_per_page: number;\n };\n }\n\n export interface FundingRate {\n symbol: string;\n est_funding_rate: number;\n est_funding_rate_timestamp: number;\n last_funding_rate: number;\n last_funding_rate_timestamp: number;\n next_funding_time: number;\n sum_unitary_funding: number;\n }\n\n export interface FundingPeriodData {\n rate: number;\n positive: number;\n negative: number;\n }\n\n export interface FundingDetails {\n symbol: string;\n quote_min: number;\n quote_max: number;\n quote_tick: number;\n base_min: number;\n base_max: number;\n base_tick: number;\n min_notional: number;\n price_range: number;\n price_scope: number;\n std_liquidation_fee: number;\n liquidator_fee: number;\n claim_insurance_fund_discount: number;\n funding_period: number;\n cap_funding: number;\n floor_funding: number;\n interest_rate: number;\n created_time: number;\n updated_time: number;\n liquidation_tier: number;\n cap_ir: number;\n floor_ir: number;\n mark_index_price_deviation_floor: number;\n mark_index_price_deviation_cap: number;\n global_max_oi_cap: number;\n base_mmr: number;\n base_imr: number;\n imr_factor: number;\n deviation_factor: number;\n }\n\n export interface FundingHistory {\n symbol: string;\n data_start_time: string;\n funding: {\n last: FundingPeriodData;\n \"1d\": FundingPeriodData;\n \"3d\": FundingPeriodData;\n \"7d\": FundingPeriodData;\n \"14d\": FundingPeriodData;\n \"30d\": FundingPeriodData;\n \"90d\": FundingPeriodData;\n };\n }\n\n export interface PositionInfo extends PositionAggregated {\n // margin_ratio: number;\n // initial_margin_ratio: number;\n // maintenance_margin_ratio: number;\n // open_margin_ratio: number;\n // current_margin_ratio_with_orders: number;\n // initial_margin_ratio_with_orders: number;\n // maintenance_margin_ratio_with_orders: number;\n // total_collateral_value: number;\n // free_collateral: number;\n rows: Position[];\n // total_pnl_24_h: number;\n }\n\n export interface PositionAggregated {\n margin_ratio: number;\n initial_margin_ratio: number;\n maintenance_margin_ratio: number;\n open_margin_ratio: number;\n current_margin_ratio_with_orders: number;\n initial_margin_ratio_with_orders: number;\n maintenance_margin_ratio_with_orders: number;\n total_collateral_value: number;\n free_collateral: number;\n total_pnl_24_h: number;\n /**\n * @deprecated use total_unreal_pnl instead\n */\n unrealPnL: number;\n total_unreal_pnl: number;\n total_unreal_pnl_index?: number;\n /**\n * @deprecated use total_unsettled_pnl instead\n */\n unsettledPnL: number;\n total_unsettled_pnl: number;\n notional: number;\n unrealPnlROI: number;\n unrealPnlROI_index?: number;\n }\n\n export interface Position {\n account_id?: string;\n symbol: string;\n position_qty: number;\n cost_position: number;\n last_sum_unitary_funding: number;\n pending_long_qty: number;\n pending_short_qty: number;\n settle_price: number;\n average_open_price: number;\n unrealized_pnl: number;\n unrealized_pnl_index?: number;\n unrealized_pnl_ROI: number;\n unsettled_pnl: number;\n unsettled_pnl_ROI: number;\n unrealized_pnl_ROI_index?: number;\n mark_price: number;\n index_price?: number;\n est_liq_price: number | null;\n timestamp: number;\n /**\n * Maintenance margin ratio\n */\n mmr: number;\n imr: number;\n IMR_withdraw_orders: number;\n MMR_with_orders: number;\n pnl_24_h: number;\n fee_24_h: number;\n fundingFee?: number;\n leverage: number;\n margin?: number;\n margin_mode?: MarginMode;\n }\n\n export interface PositionExt extends Position {\n notional: number;\n mm: number;\n }\n\n export interface PositionTPSLExt extends PositionExt {\n full_tp_sl?: {\n tp_trigger_price?: number;\n sl_trigger_price?: number;\n algo_order?: AlgoOrder;\n };\n partial_tp_sl?: {\n tp_trigger_price?: number;\n sl_trigger_price?: number;\n order_num?: number;\n algo_order?: AlgoOrder;\n };\n\n // has_position_tp_sl: boolean;\n\n /**\n * related position tp/sl order\n */\n algo_order?: AlgoOrder;\n }\n\n export interface PositionsTPSLExt extends PositionAggregated {\n rows: PositionTPSLExt[];\n }\n\n export interface Trade {\n symbol: Symbol;\n side: OrderSide;\n ts: number;\n executed_price: number;\n executed_quantity: number;\n executed_timestamp: number;\n }\n\n export interface Holding {\n token: string;\n holding: number;\n frozen: number;\n pending_short: number;\n isolated_margin: number;\n isolated_order_frozen: number;\n updated_time: number;\n }\n\n export interface AccountInfo {\n account_id: string;\n email: string;\n account_mode: string;\n tier: string;\n futures_tier: string;\n maintenance_cancel_orders: boolean;\n taker_fee_rate: number;\n maker_fee_rate: number;\n rwa_taker_fee_rate?: number;\n rwa_maker_fee_rate?: number;\n max_leverage: number;\n futures_taker_fee_rate: number;\n futures_maker_fee_rate: number;\n imr_factor: { [key: string]: number };\n max_notional: { [key: string]: number };\n }\n\n export interface Chain {\n dexs: string[];\n network_infos: NetworkInfos;\n token_infos: TokenInfo[];\n nativeToken?: TokenInfo;\n address?: string;\n symbol?: string;\n on_chain_swap?: boolean;\n // nativeToken\n }\n\n export interface NetworkInfos {\n name: string;\n shortName: string;\n public_rpc_url: string;\n chain_id: number;\n currency_symbol: string;\n bridge_enable: boolean;\n mainnet: boolean;\n est_txn_mins: number | null;\n explorer_base_url: string;\n bridgeless?: boolean;\n withdrawal_fee?: number;\n minimum_withdraw_amount?: number;\n vault_address: string;\n currency_decimal?: number;\n\n cross_chain_router: string;\n depositor: string;\n }\n\n export interface TokenInfo {\n address?: string;\n base_weight: number;\n decimals?: number;\n /** token decimals */\n token_decimal?: number;\n discount_factor?: number | null;\n display_name?: string;\n haircut: number;\n is_collateral: boolean;\n symbol?: string;\n user_max_qty: number;\n precision?: number;\n minimum_withdraw_amount: number;\n swap_enable?: boolean;\n }\n\n export interface Chain {\n token: string;\n token_hash: string;\n decimals: number;\n minimum_withdraw_amount: number;\n base_weight: number;\n discount_factor?: number | null;\n haircut: number;\n user_max_qty: number;\n is_collateral: boolean;\n chain_details: ChainDetail[];\n }\n\n // export interface Token{\n\n // }\n\n export interface ChainDetail {\n chain_id: string;\n chain_name?: string;\n contract_address: string;\n decimals: number;\n withdrawal_fee: number;\n cross_chain_withdrawal_fee: number;\n display_name: string;\n }\n\n export interface AssetHistory {\n meta: RecordsMeta;\n rows: AssetHistoryRow[];\n }\n\n export interface RecordsMeta {\n total: number;\n records_per_page: number;\n current_page: number;\n }\n\n export interface AssetHistoryRow {\n id: string;\n tx_id: string;\n side: string;\n token: string;\n amount: number;\n fee: number;\n trans_status: string;\n created_time: number;\n updated_time: number;\n chain_id: string;\n }\n\n export interface FundingFeeHistory {\n meta: RecordsMeta;\n rows: FundingFeeRow[];\n }\n\n export interface FundingFeeRow {\n symbol: string;\n funding_rate: number;\n mark_price: number;\n funding_fee: number;\n payment_type: string;\n status: string;\n created_time: number;\n updated_time: number;\n }\n\n export interface StrategyVaultHistoryRow {\n vault_id: string;\n created_time: number;\n type: \"withdrawal\" | \"deposit\";\n status: string;\n amount_change: number;\n token?: string; // need to hard code for now\n vaultName?: string; // need to hard code for now\n }\n\n export interface StrategyVaultHistory {\n rows: StrategyVaultHistoryRow[];\n meta: RecordsMeta;\n }\n\n export interface TransferHistoryRow {\n amount: number;\n created_time: number;\n from_account_id: string;\n id: string;\n status: \"CREATED\" | \"PENDING\" | \"COMPLETED\" | \"FAILED\";\n to_account_id: string;\n token: string;\n updated_time: number;\n chain_id: string;\n // timestamp\n block_time: number;\n }\n\n export interface TransferHistory {\n meta: RecordsMeta;\n rows: TransferHistoryRow[];\n }\n\n export interface TransferHistoryRow {\n amount: number;\n created_time: number;\n from_account_id: string;\n id: string;\n status: \"CREATED\" | \"PENDING\" | \"COMPLETED\" | \"FAILED\";\n to_account_id: string;\n token: string;\n updated_time: number;\n }\n\n export interface DailyRow {\n account_value: number;\n broker_id: string;\n date: string;\n perp_volume: number;\n pnl: number;\n snapshot_time?: number;\n }\n\n export interface PositionHistory {\n position_id: number; // Unique identifier for the position\n liquidation_id?: number; // Unique identifier for the position\n position_status: string; // Status of the position\n type: string; // Type of the position activity\n symbol: string; // Trading pair symbol\n avg_open_price: number; // Average open price of the position\n avg_close_price: number; // Average close price of the position\n max_position_qty: number; // Maximum quantity held in the position\n closed_position_qty: number; // Quantity closed in the position\n side: \"LONG\" | \"SHORT\"; // Side of the position\n trading_fee: number; // Fee charged for trading\n accumulated_funding_fee: number; // Accumulated funding fee for the position\n insurance_fund_fee: number; // Fee contributed to the insurance fund\n liquidator_fee: number; // Fee paid to the liquidator\n realized_pnl: number; // Realized profit and loss\n open_timestamp: number; // Timestamp when the position was opened\n close_timestamp: number; // Timestamp when the position was closed\n last_update_time: number; // Timestamp of the last update to the position\n leverage: number; // Leverage of the position\n margin_mode?: MarginMode | 1 | 0;\n }\n\n export interface LiquidationPositionByPerp {\n abs_liquidation_fee: number;\n cost_position_transfer: number;\n liquidator_fee: number;\n position_qty: number;\n symbol: string;\n transfer_price: number;\n mark_price: number;\n }\n\n export interface Liquidation {\n liquidation_id: number;\n timestamp: number;\n transfer_amount_to_insurance_fund: number;\n margin_ratio: number;\n account_mmr: number;\n collateral_value: number;\n position_notional: number;\n positions_by_perp: LiquidationPositionByPerp[];\n }\n\n export interface VaultBalance {\n chain_id: string;\n token: string;\n balance: number;\n pending_rebalance: number;\n }\n\n export interface RestrictedAreas {\n invalid_web_country: string;\n invalid_web_city: string;\n }\n\n export interface IpInfo {\n ip: string;\n city: string;\n region: string;\n checked: boolean;\n }\n\n export interface LeverageInfo {\n symbol: string;\n leverage: number;\n margin_mode?: MarginMode;\n }\n\n export namespace Referral {\n /** /v1/referral/multi_level/volume_prerequisite */\n export interface VolumePrerequisite {\n required_volume: number;\n current_volume: number;\n }\n\n /** /v1/referral/multi_level/max_rebate_rate */\n export interface MaxRebateRate {\n max_rebate_rate: number;\n }\n\n /** /v1/referral/multi_level/rebate_info */\n export interface MultiLevelRebateInfo {\n referral_code: string;\n max_rebate_rate: number;\n default_referee_rebate_rate: number;\n direct_invites?: number;\n indirect_invites?: number;\n direct_volume?: number;\n indirect_volume?: number;\n direct_rebate?: number;\n indirect_rebate?: number;\n direct_bonus_rebate_rate?: number;\n direct_bonus_rebate?: number;\n }\n\n /** /v1/referral/multi_level/admin */\n export interface MultiLevelReferralConfig {\n enable: boolean;\n required_volume: number;\n max_rebate_rate: number;\n }\n\n /** /v1/referral/multi_level/statistics */\n export interface MultiLevelStatistics {\n direct_invites: number;\n indirect_invites: number;\n direct_traded: number;\n indirect_traded: number;\n direct_volume: number;\n indirect_volume: number;\n direct_rebate: number;\n indirect_rebate: number;\n direct_bonus_rebate?: number;\n }\n }\n}\n\nexport declare namespace WSMessage {\n export interface Ticker {\n symbol: string;\n open: number;\n close: number;\n high: number;\n low: number;\n volume: number;\n amount: number;\n count: number;\n change: number;\n open_interest?: number;\n index_price?: number;\n }\n\n export interface MarkPrice {\n symbol: string;\n price: number;\n }\n\n export interface Position {\n symbol: string;\n marginMode?: MarginMode;\n positionQty: number;\n costPosition: number;\n lastSumUnitaryFunding: number;\n sumUnitaryFundingVersion: number;\n pendingLongQty: number;\n pendingShortQty: number;\n settlePrice: number;\n averageOpenPrice: number;\n unsettledPnl: number;\n pnl24H: number;\n fee24H: number;\n markPrice: number;\n estLiqPrice: number;\n version: number;\n imr: number;\n imrwithOrders: number;\n mmrwithOrders: number;\n mmr: number;\n }\n\n export interface VaultBalance {\n chain_id: string;\n token: string;\n balance: number;\n pending_rebalance: number;\n }\n\n export interface Order {\n symbol: string;\n clientOrderId: string;\n orderId: number;\n type: string;\n side: string;\n quantity: number;\n price: number;\n tradeId: number;\n executedPrice: number;\n executedQuantity: number;\n fee: number;\n feeAsset: string;\n totalExecutedQuantity: number;\n avgPrice: number;\n status: string;\n reason: string;\n totalFee: number;\n visible: number;\n /**\n * update time\n */\n timestamp: number;\n reduceOnly: boolean;\n maker: boolean;\n marginMode?: MarginMode;\n }\n\n export interface Holding {\n holding: number;\n frozen: number;\n interest: number;\n pendingShortQty: number;\n pendingExposure: number;\n pendingLongQty: number;\n pendingLongExposure: number;\n version: number;\n staked: number;\n unbonding: number;\n vault: number;\n fee24H: number;\n markPrice: number;\n }\n\n export interface AlgoOrder {\n symbol: string;\n rootAlgoOrderId: number;\n parentAlgoOrderId: number;\n algoOrderId: number;\n status: string;\n algoType: string;\n side: string;\n quantity: number;\n triggerStatus: string;\n price: number;\n type: string;\n triggerTradePrice: number;\n triggerTime: number;\n tradeId: number;\n executedPrice: number;\n executedQuantity: number;\n fee: number;\n feeAsset: string;\n totalExecutedQuantity: number;\n averageExecutedPrice: number;\n totalFee: number;\n timestamp: number;\n visibleQuantity: number;\n reduceOnly: boolean;\n triggered: boolean;\n maker: boolean;\n rootAlgoStatus: string;\n algoStatus: string;\n marginMode?: MarginMode;\n }\n\n export interface Announcement {\n announcement_id: string;\n message: string;\n i18n: Record<PropertyKey, string | null>;\n url?: string | null;\n type: AnnouncementType | null;\n updated_time: number;\n }\n}\n","/**\n * Supported types for placing an order\n */\nexport enum OrderType {\n LIMIT = \"LIMIT\",\n MARKET = \"MARKET\",\n IOC = \"IOC\",\n FOK = \"FOK\",\n POST_ONLY = \"POST_ONLY\",\n ASK = \"ASK\",\n BID = \"BID\",\n STOP_LIMIT = \"STOP_LIMIT\",\n STOP_MARKET = \"STOP_MARKET\",\n /**\n * Only for POSITIONAL_TP_SL type algo order\n */\n CLOSE_POSITION = \"CLOSE_POSITION\",\n /**\n * Scaled order\n */\n SCALED = \"SCALED\",\n /**\n * trailing stop\n */\n TRAILING_STOP = \"TRAILING_STOP\",\n}\n\n/**\n * Margin mode for the order\n */\nexport enum MarginMode {\n ISOLATED = \"ISOLATED\",\n CROSS = \"CROSS\",\n}\n\nexport enum BBOOrderType {\n COUNTERPARTY1 = \"counterparty1\",\n COUNTERPARTY5 = \"counterparty5\",\n QUEUE1 = \"queue1\",\n QUEUE5 = \"queue5\",\n}\n\nexport enum OrderLevel {\n ONE = 0,\n TWO = 1,\n THREE = 2,\n FOUR = 3,\n FIVE = 4,\n}\n\nexport enum AlgoOrderRootType {\n TP_SL = \"TP_SL\",\n POSITIONAL_TP_SL = \"POSITIONAL_TP_SL\",\n STOP = \"STOP\",\n BRACKET = \"BRACKET\",\n TRAILING_STOP = \"TRAILING_STOP\",\n}\n\nexport enum TriggerPriceType {\n MARK_PRICE = \"MARK_PRICE\",\n}\nexport enum PositionType {\n FULL = \"FULL\",\n PARTIAL = \"PARTIAL\",\n}\n\nexport enum AlgoOrderType {\n TAKE_PROFIT = \"TAKE_PROFIT\",\n STOP_LOSS = \"STOP_LOSS\",\n}\n\nexport enum OrderSide {\n BUY = \"BUY\",\n SELL = \"SELL\",\n}\n\nexport enum PositionSide {\n LONG = \"LONG\",\n SHORT = \"SHORT\",\n}\n\nexport enum OrderStatus {\n /** @deprecated */\n OPEN = \"OPEN\",\n NEW = \"NEW\",\n FILLED = \"FILLED\",\n PARTIAL_FILLED = \"PARTIAL_FILLED\",\n CANCELLED = \"CANCELLED\",\n REPLACED = \"REPLACED\",\n // CANCELLED + FILLED\n COMPLETED = \"COMPLETED\",\n // NEW + PARTIAL_FILLED\n INCOMPLETE = \"INCOMPLETE\",\n REJECTED = \"REJECTED\",\n}\n\nexport interface OrderExt {\n total: string;\n}\n\nexport interface BaseOrder {\n symbol: string;\n order_type: OrderType;\n margin_mode: MarginMode;\n order_type_ext?: OrderType;\n order_price: string;\n order_quantity: string;\n order_amount?: number;\n visible_quantity: number;\n side: OrderSide;\n reduce_only: boolean;\n slippage: number;\n order_tag: string;\n level: OrderLevel;\n post_only_adjust: boolean;\n /** custom order id, it is used to identify the order from ws */\n client_order_id: string;\n}\n\n/** Scaled order fields */\nexport interface ScaledOrder {\n /** user-defined price at the first order (index 0) */\n start_price?: string;\n /** user-defined price at the last order (index total_orders - 1) */\n end_price?: string;\n /** total number of orders */\n total_orders?: string;\n /** quantity distribution type */\n distribution_type?: DistributionType;\n /** the ratio of qty[end] / qty[start] */\n skew?: string;\n}\n\nexport enum TrailingCallbackType {\n VALUE = \"value\",\n RATE = \"rate\",\n}\n\n/**\n * Trailing Stop that allows users to set an activation price and a trailing amount (value / rate).\n * The order is only activated when the market reaches the activation price,\n * after which the trailing stop logic tracks the extreme price and triggers when the price retraces by the specified trailing amount.\n */\nexport interface TrailingStopOrder {\n /**\n * activated price\n */\n activated_price?: string;\n /**\n * i.e. the value = 100\n */\n callback_value?: string;\n /**\n * i.e. the value = 0.1 represent to 10%\n */\n callback_rate?: string;\n}\n\nexport interface RegularOrder\n extends BaseOrder, OrderExt, ScaledOrder, TrailingStopOrder {\n // symbol: string;\n // client_order_id: string;\n // type: OrderType;\n // price: number;\n // quantity: number;\n}\n\nexport interface AlgoOrder extends BaseOrder, OrderExt {\n // symbol: string;\n quantity: string;\n type: OrderType;\n price: string;\n algo_type: AlgoOrderRootType;\n trigger_price_type: string;\n trigger_price: string;\n child_orders: AlgoOrderChildOrders[];\n}\n\nexport interface BracketOrder extends AlgoOrder, OrderExt {\n /**\n * Computed take profit\n */\n position_type?: PositionType;\n // tp_enable?: boolean;\n // sl_enable?: boolean;\n tp_pnl?: string;\n tp_offset?: string;\n tp_offset_percentage?: string;\n tp_ROI?: string;\n tp_trigger_price?: string;\n tp_order_price?: string;\n tp_order_type?: OrderType;\n\n /**\n * Computed stop loss\n */\n sl_pnl?: string;\n sl_offset?: string;\n sl_offset_percentage?: string;\n sl_ROI?: string;\n sl_trigger_price?: string;\n sl_order_price?: string;\n sl_order_type?: OrderType;\n}\n\nexport type OrderlyOrder = RegularOrder & AlgoOrder & BracketOrder;\n\nexport interface AlgoOrderChildOrders {\n symbol: string;\n algo_type: string;\n child_orders: ChildOrder[];\n}\n\nexport interface ChildOrder {\n symbol: string;\n algo_type: AlgoOrderType;\n side: string;\n type: OrderType;\n trigger_price: string;\n price?: string;\n reduce_only: boolean;\n trigger_price_type?: string;\n}\n\nexport interface TrailingStopOrder {\n activated_price?: string;\n callback_value?: string;\n callback_rate?: string;\n}\n\nexport interface OrderEntity extends ScaledOrder, TrailingStopOrder {\n symbol: string;\n order_type: OrderType;\n margin_mode?: MarginMode;\n algo_type?: AlgoOrderRootType;\n order_type_ext?: OrderType;\n order_price?: string;\n order_quantity?: string;\n order_amount?: number;\n // Whether to display in the orderbook, default=order_quantity, not displayed when =0,\n visible_quantity?: number;\n reduce_only?: boolean;\n side: OrderSide;\n broker_id?: string;\n slippage?: number;\n\n // internal fields\n total?: string;\n // hideInOrderbook?: boolean;\n isStopOrder?: boolean;\n trigger_price?: string;\n order_tag?: string;\n client_order_id?: string;\n level?: OrderLevel;\n}\n\nexport enum DistributionType {\n // enum value need to use lowercase to match the track params\n FLAT = \"flat\",\n ASCENDING = \"ascending\",\n DESCENDING = \"descending\",\n CUSTOM = \"custom\",\n}\n\nexport type Optional<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;\nexport type RequireKeys<T extends object, K extends keyof T> = Required<\n Pick<T, K>\n> &\n Partial<Omit<T, K>>;\n\nexport interface BaseAlgoOrderEntity<\n T extends AlgoOrderRootType,\n> extends OrderEntity {\n algo_type: AlgoOrderRootType;\n child_orders: (Partial<Omit<AlgoOrderEntity<T>, \"algo_type\" | \"type\">> & {\n algo_type: AlgoOrderType;\n type: OrderType;\n child_orders?: BaseAlgoOrderEntity<T>[\"child_orders\"];\n // trigger_price: number | string;\n })[];\n // if update the order, then need to provide the order_id\n algo_order_id?: number;\n client_order_id?: string;\n order_tag?: string;\n price?: number | string;\n quantity: number | string;\n reduce_only?: boolean;\n side: OrderSide;\n symbol: string;\n trigger_price: string;\n trigger_price_type: TriggerPriceType;\n type: OrderType;\n visible_quantity?: number;\n is_activated?: boolean;\n tp_trigger_price?: string | number;\n sl_trigger_price?: string | number;\n tp_order_price?: string | number;\n tp_order_type?: OrderType;\n sl_order_price?: string | number;\n sl_order_type?: OrderType;\n // tp_enable?: boolean;\n // sl_enable?: boolean;\n position_type?: PositionType;\n}\n\nexport type AlgoOrderEntity<\n T extends AlgoOrderRootType = AlgoOrderRootType.STOP,\n> = T extends AlgoOrderRootType.TP_SL\n ? Optional<\n BaseAlgoOrderEntity<T>,\n \"side\" | \"type\" | \"trigger_price\" | \"order_type\"\n >\n : T extends AlgoOrderRootType.POSITIONAL_TP_SL\n ? Optional<\n BaseAlgoOrderEntity<T>,\n | \"side\"\n | \"type\"\n | \"trigger_price\"\n | \"order_type\"\n | \"quantity\"\n // | \"tp_enable\"\n // | \"sl_enable\"\n | \"tp_order_price\"\n | \"tp_order_type\"\n | \"sl_order_price\"\n | \"sl_order_type\"\n | \"position_type\"\n >\n : Omit<BaseAlgoOrderEntity<T>, \"child_orders\" | \"order_type\">;\n\nexport type TPSLOrderEntry = Optional<\n AlgoOrderEntity<AlgoOrderRootType.TP_SL>,\n \"side\" | \"type\" | \"trigger_price\"\n>;\n\nexport type BracketOrderEntry = Optional<\n AlgoOrderEntity<AlgoOrderRootType.BRACKET>,\n \"side\"\n>;\n","export enum WithdrawStatus {\n NotSupported = \"NotSupported\",\n NotConnected = \"NotConnected\",\n Unsettle = \"Unsettle\",\n InsufficientBalance = \"InsufficientBalance\",\n Normal = \"Normal\",\n}\n","export interface Chain {\n id: number;\n chainNameShort: string;\n chainLogo: string;\n chainInfo: ChainInfo;\n minGasBalance: number;\n minCrossGasBalance: number;\n maxPrepayCrossGas: number;\n blockExplorerName: string;\n chainName: string;\n requestRpc: string;\n}\n\nexport interface ChainInfo {\n chainId: string;\n chainName: string;\n nativeCurrency: NativeCurrency;\n rpcUrls: string[];\n blockExplorerUrls: string[];\n}\n\nexport interface NativeCurrency {\n name: string;\n symbol: string;\n decimals: number;\n fix: number;\n}\n\nexport const Ethereum = {\n chainNameShort: \"Ethereum\",\n id: 1,\n chainLogo: \"\",\n chainInfo: {\n chainId: `0x${(1).toString(16)}`,\n chainName: \"Ethereum Mainnet\",\n nativeCurrency: {\n name: \"eth\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 8,\n },\n rpcUrls: [\"https://mainnet.infura.io/v3/9155d40884554acdb17699a18a1fe348\"],\n blockExplorerUrls: [\"https://etherscan.io/\"],\n },\n minGasBalance: 0.002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.025,\n blockExplorerName: \"EthScan\",\n chainName: \"Ethereum Mainnet\",\n requestRpc: \"https://rpc.ankr.com/eth\",\n};\n\nexport const Avalanche = {\n id: 43114,\n chainInfo: {\n chainId: `0x${(43114).toString(16)}`, // '0xa86a'\n chainName: \"Avalanche\",\n nativeCurrency: {\n name: \"avax\",\n symbol: \"AVAX\",\n decimals: 18,\n fix: 5,\n },\n rpcUrls: [\"https://api.avax.network/ext/bc/C/rpc\"],\n blockExplorerUrls: [\"https://snowtrace.io/\"],\n },\n minGasBalance: 0.05,\n minCrossGasBalance: 0.15,\n maxPrepayCrossGas: 2,\n blockExplorerName: \"Snowtrace\",\n chainName: \"Avalanche\",\n chainNameShort: \"Avalanche\",\n chainLogo: \"\",\n requestRpc: \"https://rpc.ankr.com/avalanche\",\n};\n\nexport const Fuji = {\n id: 43113,\n chainInfo: {\n chainId: `0x${(43113).toString(16)}`, // '0xa86a'\n chainName: \"Avalanche Fuji Testnet\",\n nativeCurrency: {\n name: \"avax\",\n symbol: \"AVAX\",\n decimals: 18,\n fix: 5,\n },\n rpcUrls: [\"https://api.avax.network/ext/bc/C/rpc\"],\n blockExplorerUrls: [\"https://snowtrace.io/\"],\n },\n minGasBalance: 0.05,\n minCrossGasBalance: 0.15,\n maxPrepayCrossGas: 2,\n blockExplorerName: \"Snowtrace\",\n chainName: \"Avalanche Fuji\",\n chainNameShort: \"Avalanche Fuji\",\n chainLogo: \"\",\n requestRpc: \"https://rpc.ankr.com/avalanche\",\n};\n\nexport const BNB = {\n id: 56,\n chainInfo: {\n chainId: `0x${(56).toString(16)}`, // 0x38\n chainName: \"BNB Chain\",\n nativeCurrency: {\n name: \"bnb\",\n symbol: \"BNB\",\n decimals: 18,\n fix: 6,\n },\n rpcUrls: [\"https://bsc-dataseed1.binance.org/\"],\n blockExplorerUrls: [\"https://bscscan.com/\"],\n },\n minGasBalance: 0.02,\n minCrossGasBalance: 0.02,\n maxPrepayCrossGas: 0.1,\n blockExplorerName: \"BscScan\",\n chainName: \"Binance Smart Chain\",\n chainNameShort: \"BNB Chain\",\n requestRpc: \"https://rpc.ankr.com/bsc\",\n chainLogo: \"\",\n};\n\nexport const Fantom = {\n id: 250,\n chainInfo: {\n chainId: `0x${(250).toString(16)}`, // 0x38\n chainName: \"Fantom\",\n nativeCurrency: {\n name: \"ftm\",\n symbol: \"FTM\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://rpcapi.fantom.network\"],\n blockExplorerUrls: [\"https://ftmscan.com/\"],\n },\n minGasBalance: 1,\n minCrossGasBalance: 10,\n maxPrepayCrossGas: 60,\n blockExplorerName: \"FTMScan\",\n chainName: \"Fantom\",\n chainNameShort: \"Fantom\",\n chainLogo: \"\",\n requestRpc: \"https://rpc.ankr.com/fantom\",\n};\n\nexport const Polygon = {\n id: 137,\n chainInfo: {\n chainId: `0x${(137).toString(16)}`,\n chainName: \"Polygon\",\n nativeCurrency: {\n name: \"matic\",\n symbol: \"MATIC\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://rpc-mainnet.matic.network\"],\n blockExplorerUrls: [\"https://polygonscan.com/\"],\n },\n minGasBalance: 0.1,\n minCrossGasBalance: 1,\n maxPrepayCrossGas: 30,\n blockExplorerName: \"Polygonscan\",\n chainName: \"Polygon\",\n chainNameShort: \"Polygon\",\n requestRpc: \"https://rpc.ankr.com/polygon\",\n chainLogo: \"\",\n};\n\nexport const Arbitrum = {\n id: 42161,\n chainInfo: {\n chainId: `0x${(42161).toString(16)}`,\n chainName: \"Arbitrum\",\n nativeCurrency: {\n name: \"eth\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://arb1.arbitrum.io/rpc\"],\n blockExplorerUrls: [\"https://arbiscan.io/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Arbiscan\",\n chainName: \"Arbitrum\",\n chainNameShort: \"Arbitrum\",\n requestRpc: \"https://arb1.arbitrum.io/rpc\",\n chainLogo: \"\",\n};\n\nexport const Optimism = {\n id: 10,\n chainInfo: {\n chainId: `0x${(10).toString(16)}`,\n chainName: \"Optimism\",\n nativeCurrency: {\n name: \"eth\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://mainnet.optimism.io\"],\n blockExplorerUrls: [\"https://optimistic.etherscan.io/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Optimism\",\n chainName: \"Optimism\",\n chainNameShort: \"Optimism\",\n requestRpc: \"https://rpc.ankr.com/optimism\",\n chainLogo: \"\",\n};\n\nexport const zkSyncEra = {\n id: 324,\n chainInfo: {\n chainId: `0x${(324).toString(16)}`,\n chainName: \"zkSync Era\",\n nativeCurrency: {\n name: \"eth\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://zksync2-mainnet.zksync.io\"],\n blockExplorerUrls: [\"https://explorer.zksync.io/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"zkSync Era\",\n chainName: \"zkSync Era\",\n chainNameShort: \"zkSync Era\",\n requestRpc: \"https://zksync2-mainnet.zksync.io/\",\n chainLogo: \"\",\n // blockExplorerName: 'zkSync Era Goerli',\n // chainName: 'zkSync Era Goerli',\n // chainNameShort: 'zkSync Era Goerli',\n // requestRpc: 'https://zksync2-testnet.zksync.dev/',\n // chainLogo: '',\n};\n\nexport const PolygonzkEVM = {\n id: 1101,\n chainInfo: {\n chainId: `0x${(1101).toString(16)}`,\n chainName: \"Polygon zkEVM\",\n nativeCurrency: {\n name: \"eth\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://zkevm-rpc.com\"],\n blockExplorerUrls: [\"https://zkevm.polygonscan.com/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Polygon zkEVM\",\n chainName: \"Polygon zkEVM\",\n chainNameShort: \"Polygon zkEVM\",\n requestRpc: \"https://zkevm-rpc.com\",\n chainLogo: \"\",\n};\n\nexport const Linea = {\n id: 59144,\n chainInfo: {\n chainId: `0x${(59144).toString(16)}`,\n chainName: \"Linea\",\n nativeCurrency: {\n name: \"eth\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://rpc.linea.build\"],\n blockExplorerUrls: [\"https://lineascan.build/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Linea\",\n chainName: \"Linea\",\n chainNameShort: \"Linea\",\n requestRpc: \"https://rpc.linea.build\",\n chainLogo: \"\",\n};\n\nexport const Base = {\n id: 8453,\n chainInfo: {\n chainId: `0x${(8453).toString(16)}`,\n chainName: \"Base Network\",\n nativeCurrency: {\n name: \"eth\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://developer-access-mainnet.base.org/\"],\n blockExplorerUrls: [\"https://basescan.org\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Base\",\n chainName: \"Base\",\n chainNameShort: \"Base\",\n requestRpc: \"https://developer-access-mainnet.base.org/\",\n chainLogo: \"\",\n};\n\nexport const Mantle = {\n id: 5000,\n chainInfo: {\n chainId: `0x${(5000).toString(16)}`,\n chainName: \"Mantle\",\n nativeCurrency: {\n name: \"MNT\",\n symbol: \"MNT\",\n decimals: 6,\n fix: 4,\n },\n rpcUrls: [\"https://rpc.mantle.xyz/\"],\n blockExplorerUrls: [\"https://mantlescan.xyz/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Mantle\",\n chainName: \"Mantle\",\n chainNameShort: \"Mantle\",\n requestRpc: \"https://rpc.mantle.xyz/\",\n chainLogo: \"\",\n};\n\nexport const ArbitrumGoerli = {\n id: 421613,\n chainInfo: {\n chainId: `0x${(421613).toString(16)}`,\n chainName: \"Arbitrum Goerli\",\n nativeCurrency: {\n name: \"AGOR\",\n symbol: \"AGOR\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://goerli-rollup.arbitrum.io/rpc\"],\n blockExplorerUrls: [\"https://goerli-rollup-explorer.arbitrum.io/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Arbitrum Goerli\",\n chainName: \"Arbitrum Goerli\",\n chainNameShort: \"Arbitrum Goerli\",\n requestRpc: \"https://goerli-rollup.arbitrum.io/rpc\",\n chainLogo: \"\",\n};\n\nexport const ArbitrumSepolia = {\n id: 421614,\n chainInfo: {\n chainId: `0x${(421614).toString(16)}`,\n chainName: \"Arbitrum Sepolia\",\n nativeCurrency: {\n name: \"ETH\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://arbitrum-sepolia.blockpi.network/v1/rpc/public\"],\n blockExplorerUrls: [\"https://sepolia-explorer.arbitrum.io\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Arbitrum Sepolia\",\n chainName: \"Arbitrum Sepolia\",\n chainNameShort: \"Arbitrum Sepolia\",\n requestRpc: \"https://arbitrum-sepolia.blockpi.network/v1/rpc/public\",\n chainLogo: \"\",\n};\n\nexport const OptimismGoerli = {\n id: 420,\n chainInfo: {\n chainId: `0x${(420).toString(16)}`,\n chainName: \"Optimism Goerli\",\n nativeCurrency: {\n name: \"ETH\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://optimism-goerli.gateway.tenderly.co\"],\n blockExplorerUrls: [\"https://goerli-optimism.etherscan.io\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Optimism Goerli\",\n chainName: \"Optimism Goerli\",\n chainNameShort: \"Optimism Goerli\",\n requestRpc: \"https://optimism-goerli.gateway.tenderly.co\",\n chainLogo: \"\",\n};\n\nexport const OptimismSepolia = {\n id: 11155420,\n chainInfo: {\n chainId: `0x${(11155420).toString(16)}`,\n chainName: \"Optimism Sepolia\",\n nativeCurrency: {\n name: \"ETH\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://sepolia.optimism.io\"],\n blockExplorerUrls: [\"https://sepolia-optimistic.etherscan.io\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Optimism Sepolia\",\n chainName: \"Optimism Sepolia\",\n chainNameShort: \"Optimism Sepolia\",\n requestRpc: \"https://sepolia.optimism.io\",\n chainLogo: \"\",\n};\n\nexport const BaseSepolia = {\n id: 84532,\n chainInfo: {\n chainId: `0x${(84532).toString(16)}`,\n chainName: \"Base Sepolia\",\n nativeCurrency: {\n name: \"ETH\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://base-sepolia-rpc.publicnode.com\"],\n blockExplorerUrls: [\"https://base-sepolia.blockscout.com/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Base Sepolia\",\n chainName: \"Base Sepolia\",\n chainNameShort: \"Base Sepolia\",\n requestRpc: \"https://base-sepolia-rpc.publicnode.com\",\n chainLogo: \"\",\n};\n\nexport const MantleSepolia = {\n id: 5003,\n chainInfo: {\n chainId: `0x${(5003).toString(16)}`,\n chainName: \"Mantle Sepolia\",\n nativeCurrency: {\n name: \"MNT\",\n symbol: \"MNT\",\n decimals: 6,\n fix: 4,\n },\n rpcUrls: [\"https://rpc.sepolia.mantle.xyz/\"],\n blockExplorerUrls: [\"https://sepolia.mantlescan.xyz/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Mantle Sepolia\",\n chainName: \"Mantle Sepolia\",\n chainNameShort: \"Mantle Sepolia\",\n requestRpc: \"https://rpc.sepolia.mantle.xyz/\",\n chainLogo: \"\",\n};\n\nexport const PolygonAmoy = {\n id: 80002,\n chainInfo: {\n chainId: `0x${(80002).toString(16)}`,\n chainName: \"Polygon Amoy\",\n nativeCurrency: {\n name: \"MATIC\",\n symbol: \"MATIC\",\n decimals: 6,\n fix: 4,\n },\n rpcUrls: [\"https://rpc-amoy.polygon.technology/\"],\n blockExplorerUrls: [\"https://www.oklink.com/amoy\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Polygon Amoy\",\n chainName: \"Polygon Amoy\",\n chainNameShort: \"Polygon Amoy\",\n requestRpc: \"https://rpc-amoy.polygon.technology/\",\n chainLogo: \"\",\n};\n\nexport const Sei = {\n id: 1329,\n chainInfo: {\n chainId: `0x${(1329).toString(16)}`,\n chainName: \"Sei Network\",\n nativeCurrency: {\n name: \"SEI\",\n symbol: \"SEI\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://evm-rpc.sei-apis.com\"],\n blockExplorerUrls: [\"https://seitrace.com/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"SEI\",\n chainName: \"Sei Network\",\n chainNameShort: \"SEI\",\n requestRpc: \"https://evm-rpc.sei-apis.com\",\n chainLogo: \"\",\n};\n\nexport const StoryTestnet = {\n name: \"Story Odyssey Testnet\",\n public_rpc_url: \"https://rpc.odyssey.storyrpc.io/\",\n chain_id: 1516,\n currency_symbol: \"IP\",\n explorer_base_url: \"\",\n vault_address: \"\",\n};\nexport const StoryOdysseyTestnet = {\n id: 1329,\n chainInfo: {\n chainId: `0x${StoryTestnet.chain_id.toString(16)}`,\n chainName: StoryTestnet.name,\n nativeCurrency: {\n name: \"IP\",\n symbol: \"IP\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [StoryTestnet.public_rpc_url],\n blockExplorerUrls: [],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"SEI\",\n chainName: \"Sei Network\",\n chainNameShort: \"SEI\",\n requestRpc: \"https://evm-rpc.sei-apis.com\",\n chainLogo: \"\",\n};\nexport const chainsInfoMap: Map<number, Chain> = new Map([\n [Ethereum.id, Ethereum],\n [Avalanche.id, Avalanche],\n [Fuji.id, Fuji],\n [BNB.id, BNB],\n [Fantom.id, Fantom],\n [Polygon.id, Polygon],\n [Arbitrum.id, Arbitrum],\n [Optimism.id, Optimism],\n [zkSyncEra.id, zkSyncEra],\n [PolygonzkEVM.id, PolygonzkEVM],\n [Linea.id, Linea],\n [Base.id, Base],\n [Mantle.id, Mantle],\n [ArbitrumGoerli.id, ArbitrumGoerli],\n [ArbitrumSepolia.id, ArbitrumSepolia],\n [OptimismGoerli.id, OptimismGoerli],\n [OptimismSepolia.id, OptimismSepolia],\n [BaseSepolia.id, BaseSepolia],\n [MantleSepolia.id, MantleSepolia],\n [PolygonAmoy.id, PolygonAmoy],\n [Sei.id, Sei],\n [StoryOdysseyTestnet.id, StoryOdysseyTestnet],\n]);\n\nexport const SolanaDevnet = {\n id: 901901901,\n chainInfo: {\n name: \"Solana Devnet\",\n public_rpc_url: \"\",\n chainId: 901901901,\n currency_symbol: \"SOL\",\n explorer_base_url: \"\",\n vault_address: \"\",\n },\n} as unknown as typeof Arbitrum;\n\nexport const TestnetChains = [\n {\n network_infos: {\n name: \"Arbitrum Sepolia\",\n shortName: \"Arbitrum Sepolia\",\n public_rpc_url: \"https://arbitrum-sepolia.blockpi.network/v1/rpc/public\",\n chain_id: 421614,\n currency_symbol: \"ETH\",\n bridge_enable: true,\n mainnet: false,\n explorer_base_url: \"https://sepolia.arbiscan.io\",\n est_txn_mins: null,\n },\n token_infos: [\n {\n symbol: \"USDC\",\n address: \"0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d\",\n decimals: 6,\n },\n ],\n },\n {\n network_infos: {\n name: \"Solana Devnet\",\n public_rpc_url: \"\",\n chain_id: 901901901,\n currency_symbol: \"SOL\",\n explorer_base_url: \"\",\n vault_address: \"\",\n },\n token_infos: [\n {\n symbol: \"USDC\",\n address: \"4zMMC9srt5Ri5X14GAgXhaHii3GnPAEERYPJgZJDncDU\",\n decimals: 6,\n },\n ],\n },\n {\n network_infos: StoryTestnet,\n token_infos: [\n {\n symbol: \"USDC\",\n address: \"0xF1815bd50389c46847f0Bda824eC8da914045D14\",\n decimals: 6,\n },\n ],\n },\n // {\n // network_infos: {\n // name: \"Mantle Sepolia\",\n // shortName: \"Mantle Sepolia\",\n // public_rpc_url: \"https://rpc.sepolia.mantle.xyz/\",\n // chain_id: 5003,\n // currency_symbol: \"MNT\",\n // bridge_enable: true,\n // mainnet: false,\n // explorer_base_url: \"https://sepolia.mantlescan.xyz/\",\n // est_txn_mins: null,\n // },\n // token_infos: [\n // {\n // symbol: \"USDC\",\n // address: \"0xAcab8129E2cE587fD203FD770ec9ECAFA2C88080\",\n // decimals: 6,\n // display_name: \"USDC.e\",\n // },\n // ],\n // },\n // {\n // network_infos: {\n // name: \"Arbitrum Goerli\",\n // shortName: \"Arbitrum Goerli\",\n // public_rpc_url: \"https://goerli-rollup.arbitrum.io/rpc\",\n // chain_id: 421613,\n // currency_symbol: \"ETH\",\n // bridge_enable: true,\n // mainnet: false,\n // explorer_base_url: \"https://goerli.arbiscan.io/\",\n // est_txn_mins: null,\n // },\n // token_infos: [\n // {\n // symbol: \"USDC\",\n // address: \"0xfd064A18f3BF249cf1f87FC203E90D8f650f2d63\",\n // decimals: 6,\n // },\n // ],\n // },\n // {\n // network_infos: {\n // name: \"Optimism Goerli\",\n // shortName: \"Optimism Goerli\",\n // public_rpc_url: \"https://optimism-goerli.gateway.tenderly.co\",\n // chain_id: 420,\n // currency_symbol: \"ETH\",\n // bridge_enable: true,\n // mainnet: false,\n // explorer_base_url: \"https://goerli-optimism.etherscan.io\",\n // est_txn_mins: null,\n // },\n // },\n];\n\nexport const defaultMainnetChains = [Arbitrum, Base, Optimism];\nexport const defaultTestnetChains = [ArbitrumSepolia];\n\nexport enum ChainNamespace {\n evm = \"EVM\",\n solana = \"SOL\",\n}\n\nexport const AbstractChains = new Set([2741, 11124]);\nexport const SolanaChains = new Set([901901901, 900900900]);\n","export enum TrackerEventName {\n /** virtual event (not send this event name to tracker) */\n trackIdentifyUserId = \"track_identify_user_id\",\n trackIdentify = \"track_identify\",\n trackCustomEvent = \"track_custom_event\",\n\n /** real event name (send this event name to tracker) */\n withdrawSuccess = \"withdraw_request_success\",\n withdrawFailed = \"withdraw_request_failure\",\n depositSuccess = \"deposit_request_success\",\n depositFailed = \"deposit_request_failure\",\n signinSuccess = \"sign_message_success\",\n placeOrderSuccess = \"place_order_success\",\n walletConnect = \"connect_wallet_success\",\n clickLinkDeviceButton = \"click_link_device_button\",\n signLinkDeviceMessageSuccess = \"sign_link_device_message_success\",\n linkDeviceModalClickConfirm = \"link_device_modal_click_confirm\",\n socialLoginSuccess = \"social_login_success\",\n clickSwitchNetwork = \"click_switch_network\",\n clickSwitchWallet = \"click_switch_wallet\",\n switchNetworkSuccess = \"switch_network_success\",\n clickExportPrivateKey = \"click_export_private_key\",\n switchLanguage = \"switch_language\",\n leaderboardCampaignClickTradeNow = \"leaderboard_campaign_click_trade_now\",\n leaderboardCampaignClickLearnMore = \"leaderboard_campaign_click_learn_more\",\n vaultDepositSuccess = \"vault_deposit_success\",\n vaultDepositFailed = \"vault_deposit_failed\",\n vaultWithdrawSuccess = \"vault_withdraw_success\",\n vaultWithdrawFailed = \"vault_withdraw_failed\",\n clickBBOButton = \"click_bbo_button\",\n confirmCloseAllPositions = \"confirm_close_all_positions\",\n}\n","import { API } from \"./types/api\";\n\n// export type Chain = {\n// id: string;\n// name?: string;\n// };\n\nexport type CurrentChain = {\n id: number;\n info: API.Chain;\n};\n\nexport enum WS_WalletStatusEnum {\n NO = \"NO\",\n FAILED = \"FAILED\",\n PENDING = \"PENDING\",\n PROCESSING = \"PROCESSING\",\n COMPLETED = \"COMPLETED\",\n}\n","export const LedgerWalletKey = \"orderly:ledger-wallet\";\nexport const ConnectorKey = \"orderly:connectorKey\";\nexport const ChainKey = \"order:chain\";\nexport const LinkDeviceKey = \"orderly_link_device\";\nexport const TradingviewFullscreenKey = \"orderly:tradingview-fullscreen\";\nexport const OrderEntrySortKeys = \"orderly:order_entry_sort_keys\";\n","export class ApiError extends Error {\n constructor(message: string, private readonly code: number) {\n super(message);\n this.name = \"ApiError\";\n }\n}\n\nexport class SDKError extends Error {\n constructor(message: string) {\n super(`[ORDERLY SDK ERROR]:${message}`);\n this.name = \"SDKError\";\n }\n}\n","export const definedTypes = {\n EIP712Domain: [\n { name: \"name\", type: \"string\" },\n { name: \"version\", type: \"string\" },\n { name: \"chainId\", type: \"uint256\" },\n { name: \"verifyingContract\", type: \"address\" },\n ],\n Registration: [\n { name: \"brokerId\", type: \"string\" },\n { name: \"chainId\", type: \"uint256\" },\n { name: \"timestamp\", type: \"uint64\" },\n { name: \"registrationNonce\", type: \"uint256\" },\n ],\n Withdraw: [\n { name: \"brokerId\", type: \"string\" },\n { name: \"chainId\", type: \"uint256\" },\n { name: \"receiver\", type: \"address\" },\n { name: \"token\", type: \"string\" },\n { name: \"amount\", type: \"uint256\" },\n { name: \"withdrawNonce\", type: \"uint64\" },\n { name: \"timestamp\", type: \"uint64\" },\n ],\n AddOrderlyKey: [\n { name: \"brokerId\", type: \"string\" },\n { name: \"chainId\", type: \"uint256\" },\n { name: \"orderlyKey\", type: \"string\" },\n { name: \"scope\", type: \"string\" },\n { name: \"timestamp\", type: \"uint64\" },\n { name: \"expiration\", type: \"uint64\" },\n ],\n SettlePnl: [\n { name: \"brokerId\", type: \"string\" },\n { name: \"chainId\", type: \"uint256\" },\n { name: \"settleNonce\", type: \"uint64\" },\n { name: \"timestamp\", type: \"uint64\" },\n ],\n DexRequest: [\n { name: \"payloadType\", type: \"uint8\" },\n { name: \"nonce\", type: \"uint256\" },\n { name: \"receiver\", type: \"address\" },\n { name: \"amount\", type: \"uint256\" },\n { name: \"vaultId\", type: \"bytes32\" },\n { name: \"token\", type: \"string\" },\n { name: \"dexBrokerId\", type: \"string\" },\n ],\n InternalTransfer: [\n { name: \"receiver\", type: \"bytes32\" },\n { name: \"token\", type: \"string\" },\n { name: \"amount\", type: \"uint256\" },\n { name: \"transferNonce\", type: \"uint64\" },\n ],\n} as const;\n","export { default as version } from \"./version\";\nexport * from \"./constants\";\nexport * from \"./types/api\";\n// export * from \"./order\";\nexport {\n OrderType,\n OrderSide,\n OrderStatus,\n AlgoOrderRootType,\n PositionType,\n AlgoOrderType,\n TriggerPriceType,\n BBOOrderType,\n OrderLevel,\n DistributionType,\n TrailingCallbackType,\n MarginMode,\n} from \"./order\";\nexport type {\n OrderEntity,\n AlgoOrderEntity,\n TPSLOrderEntry,\n BaseAlgoOrderEntity,\n AlgoOrderChildOrders,\n Optional,\n PositionSide,\n BracketOrderEntry,\n RequireKeys,\n BaseOrder,\n RegularOrder,\n AlgoOrder,\n OrderlyOrder,\n ChildOrder,\n BracketOrder,\n} from \"./order\";\nexport * from \"./context\";\nexport * from \"./withdraw\";\nexport * from \"./chains\";\nexport * from \"./track\";\nexport type { Chain as ChainConfig, ChainInfo, NativeCurrency } from \"./chains\";\nexport * from \"./wallet\";\nexport * from \"./storageKey\";\nexport { ApiError, SDKError } from \"./errors\";\n\nexport { definedTypes } from \"./sign\";\nexport * as superstruct from \"superstruct\";\nexport * from \"./assetHistory\";\nexport * from \"./account\";\n","export enum AssetHistoryStatusEnum {\n /** @deprecated, this status is not used */\n NEW = \"NEW\",\n PENDING = \"PENDING\",\n CONFIRM = \"CONFIRM\",\n PROCESSING = \"PROCESSING\",\n COMPLETED = \"COMPLETED\",\n FAILED = \"FAILED\",\n PENDING_REBALANCE = \"PENDING_REBALANCE\",\n}\n\nexport enum AssetHistorySideEnum {\n DEPOSIT = \"DEPOSIT\",\n WITHDRAW = \"WITHDRAW\",\n}\n","export const DEFAUL_ORDERLY_KEY_SCOPE = \"read,trading\";\n"],"mappings":"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","names":["AccountStatusEnum","SystemStateEnum","ExchangeStatusEnum","NetworkStatusEnum","AnnouncementType","OrderType","MarginMode","BBOOrderType","OrderLevel","AlgoOrderRootType","TriggerPriceType","PositionType","AlgoOrderType","OrderSide","OrderStatus","TrailingCallbackType","DistributionType","WithdrawStatus","ChainNamespace","TrackerEventName","WS_WalletStatusEnum","AssetHistoryStatusEnum","AssetHistorySideEnum"]}
1
+ {"version":3,"sources":["../src/version.ts","../src/constants.ts","../src/types/api.ts","../src/order.ts","../src/withdraw.ts","../src/chains.ts","../src/track.ts","../src/wallet.ts","../src/storageKey.ts","../src/errors.ts","../src/sign.ts","../src/index.ts","../src/assetHistory.ts","../src/account.ts"],"sourcesContent":["declare global {\n interface Window {\n __ORDERLY_VERSION__?: {\n [key: string]: string;\n };\n }\n}\nif (typeof window !== \"undefined\") {\n window.__ORDERLY_VERSION__ = window.__ORDERLY_VERSION__ || {};\n window.__ORDERLY_VERSION__[\"@kodiak-finance/orderly-types\"] = \"2.7.4\";\n}\n\nexport default \"2.7.4\";\n","/* eslint-disable @typescript-eslint/no-explicit-any */\n\nexport enum AccountStatusEnum {\n EnableTradingWithoutConnected = -1,\n NotConnected = 0,\n Connected = 1,\n NotSignedIn = 2,\n SignedIn = 3,\n DisabledTrading = 4,\n EnableTrading = 5,\n}\n\nexport enum SystemStateEnum {\n Loading = 0,\n Error = 1,\n Ready = 10,\n}\n\nexport enum ExchangeStatusEnum {\n Normal = 0,\n Maintain = 1,\n}\n\nexport type NetworkId = \"testnet\" | \"mainnet\";\n\nexport enum NetworkStatusEnum {\n unknown = 0,\n unsupported = 1,\n supported = 2,\n}\n\n// Testnet\n// Arbitrum Goerli\n// export const ARBITRUM_TESTNET_CHAINID = 421613;\n// export const ARBITRUM_TESTNET_CHAINID_HEX = \"0x66EED\";\n\n// Arbitrum Sepolia\nexport const ARBITRUM_TESTNET_CHAINID = 421614;\nexport const SOLANA_TESTNET_CHAINID = 901901901;\nexport const SOLANA_MAINNET_CHAINID = 900900900;\nexport const STORY_TESTNET_CHAINID = 1516;\nexport const MONAD_TESTNET_CHAINID = 10143;\nexport const ABSTRACT_TESTNET_CHAINID = 11124;\nexport const ABSTRACT_MAINNET_CHAINID = 2741;\nexport const BSC_TESTNET_CHAINID = 97;\nexport const ABSTRACT_CHAIN_ID_MAP = new Set([\n ABSTRACT_TESTNET_CHAINID,\n ABSTRACT_MAINNET_CHAINID,\n]);\n\nexport const ARBITRUM_TESTNET_CHAINID_HEX = \"0x66EEE\";\n\nexport const MANTLE_TESTNET_CHAINID = 5003;\nexport const MANTLE_TESTNET_CHAINID_HEX = \"0x138b\";\n\n// Mainnet\nexport const ARBITRUM_MAINNET_CHAINID = 42161;\nexport const ETHEREUM_MAINNET_CHAINID = 1;\nexport const ARBITRUM_MAINNET_CHAINID_HEX = \"0xa4b1\";\n\nexport const MEDIA_TABLET = \"(max-width: 768px)\";\n\n/** deposit buffer factor */\nexport const DEPOSIT_FEE_RATE = 1.05;\n\n/**\n * A constant for the maximum value for a ``uint256``.\n */\nexport const MaxUint256: bigint = BigInt(\n \"0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffff\",\n);\n\nexport const nativeTokenAddress = \"0xEeeeeEeeeEeEeeEeEeEeeEEEeeeeEeeeeeeeEEeE\";\n\n// TODO: remove this\nexport const nativeETHAddress = \"0x0000000000000000000000000000000000000000\";\n\nexport const isNativeTokenChecker = (address?: string) => {\n if (!address) {\n return false;\n }\n return (\n address?.toLowerCase() === nativeTokenAddress.toLowerCase() ||\n address === nativeETHAddress\n );\n};\n\nexport const ArbitrumSepoliaChainInfo = {\n name: \"Arbitrum Sepolia\",\n public_rpc_url: \"https://arbitrum-sepolia.gateway.tenderly.co\",\n chain_id: \"421614\",\n currency_symbol: \"ETH\",\n currency_decimal: 18,\n explorer_base_url: \"https://sepolia.arbiscan.io\",\n vault_address: \"0x0EaC556c0C2321BA25b9DC01e4e3c95aD5CDCd2f\",\n};\nexport const AbstractTestnetChainInfo = {\n name: \"Abstract Testnet\",\n public_rpc_url: \"https://api.testnet.abs.xyz\",\n chain_id: \"11124\",\n currency_symbol: \"ETH\",\n currency_decimal: 18,\n explorer_base_url: \"https://sepolia.abscan.org\",\n vault_address: \"0xf14Ff11F3bb1011ff42665Ec869c7827c43745Fd\",\n};\nexport const AbstractTestnetTokenInfo = {\n chain_id: \"11124\",\n contract_address: \"0xa0BB43E2eA7fcE91F07e628d72fD6333e80F47D2\",\n decimals: 6,\n withdrawal_fee: 1,\n cross_chain_withdrawal_fee: 2,\n display_name: \"USDC\",\n};\nexport const SolanaDevnetChainInfo = {\n chain_id: \"901901901\",\n currency_decimal: 9,\n currency_symbol: \"SOL\",\n explorer_base_url: \"https://explorer.solana.com/?cluster=devnet\",\n name: \"Solana-Devnet\",\n public_rpc_url: \"https://api.devnet.solana.com\",\n vault_address: \"9shwxWDUNhtwkHocsUAmrNAQfBH2DHh4njdAEdHZZkF2\",\n};\n\nexport const SolanaDevnetTokenInfo = {\n chain_id: \"901901901\",\n contract_address: \"4zMMC9srt5Ri5X14GAgXhaHii3GnPAEERYPJgZJDncDU\",\n decimals: 6,\n withdrawal_fee: 1,\n cross_chain_withdrawal_fee: 5,\n display_name: \"USDC\",\n};\nexport const ArbitrumSepoliaTokenInfo = {\n chain_id: \"421614\",\n contract_address: \"0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d\",\n decimals: 6,\n withdrawal_fee: 1,\n cross_chain_withdrawal_fee: 2,\n display_name: \"USDC\",\n};\n\nexport const TesnetTokenFallback = (testnetTokens: any) => [\n {\n token: \"USDC\",\n token_hash:\n \"0xd6aca1be9729c13d677335161321649cccae6a591554772516700f986f942eaa\",\n decimals: 6,\n minimum_withdraw_amount: 0.000001,\n chain_details: testnetTokens,\n },\n];\n\nexport const EMPTY_LIST: ReadonlyArray<any> = [];\n\nexport const EMPTY_OBJECT: Readonly<Record<PropertyKey, any>> = {};\n\nexport const EMPTY_OPERATION = () => {};\n\n/**\n * Event name for broadcasting Order Entry estimated liquidation price changes\n * so that UI consumers (e.g. TradingView adapters) can update their visuals\n * without introducing tight coupling between widgets.\n */\nexport const ORDER_ENTRY_EST_LIQ_PRICE_CHANGE =\n \"orderEntry:estLiqPriceChange\" as const;\n\n/**\n * Payload for the ORDER_ENTRY_EST_LIQ_PRICE_CHANGE event, carrying the symbol\n * and the latest estimated liquidation price derived from the order form.\n */\nexport interface OrderEntryEstLiqPriceChangePayload {\n symbol: string;\n estLiqPrice: number | null;\n /** Whether the user is considered active when this payload is emitted (within the active window). */\n isUserActive?: boolean;\n}\n","/* eslint-disable @typescript-eslint/no-namespace */\nimport { AlgoOrderRootType, MarginMode, OrderSide, OrderType } from \"../order\";\n\nexport enum AnnouncementType {\n Listing = \"LISTING\",\n Maintenance = \"MAINTENANCE\",\n Delisting = \"DELISTING\",\n Campaign = \"CAMPAIGN\",\n Update = \"UPDATE\",\n Vote = \"VOTE\",\n}\n\nexport declare namespace API {\n /**\n * Symbol trading status returned by public symbol APIs.\n */\n export type SymbolTradingStatus =\n | \"POST_ONLY\"\n | \"ACTIVE\"\n | \"REDUCE_ONLY\"\n | \"DELISTING\";\n\n // /v1/public/auto_convert_threshold\n export interface ConvertThreshold {\n ltv_threshold: number;\n negative_usdc_threshold: number;\n }\n\n //v1/public/token\n export interface Token {\n token: string;\n token_hash: string;\n decimals: number;\n minimum_withdraw_amount: number;\n base_weight: number;\n discount_factor: number;\n haircut: number;\n user_max_qty: number;\n is_collateral: boolean;\n on_chain_swap: boolean;\n chain_details: ChainDetail[];\n }\n\n //v1/public/token\n export interface ChainDetail {\n chain_id: string;\n contract_address: string;\n decimals: number;\n }\n\n // ws market, api v1/public/futures\n export interface MarketInfo {\n symbol: string;\n index_price: number;\n mark_price: number;\n sum_unitary_funding: number;\n est_funding_rate: number;\n last_funding_rate: number;\n next_funding_time: number;\n open_interest: string;\n \"24h_open\": number;\n \"24h_close\": number;\n \"24h_high\": number;\n \"24h_low\": number;\n /**\n * @deprecated\n * spelling mistake, use 24h_volume to instead, will be remove next version\n */\n \"24h_volumn\": number;\n \"24h_volume\": number;\n \"24h_amount\": number;\n /** Permissionless listing: display name e.g. PERP_BTC_USDC, without broker_id suffix */\n display_symbol_name?: string;\n /** Permissionless listing: broker id; null for non-community-listed symbols */\n broker_id?: string | null;\n /** Trading status: POST_ONLY / ACTIVE / REDUCE_ONLY / DELISTING */\n status?: SymbolTradingStatus;\n }\n\n export interface MarketInfoExt extends MarketInfo {\n change: number;\n \"24h_volume\": number;\n }\n\n export interface AnnouncementRow {\n announcement_id: number | string;\n message: string;\n i18n?: Record<PropertyKey, string | null>;\n url?: string | null;\n type?: AnnouncementType | null;\n updated_time?: number | null;\n coverImage?: string;\n }\n\n export interface Announcement {\n last_updated_time?: number | null;\n rows?: AnnouncementRow[];\n }\n\n /**\n * v1/public/info\n */\n export interface Symbol {\n symbol: string;\n quote_min: number;\n quote_max: number;\n quote_tick: number;\n base_min: number;\n base_max: number;\n base_tick: number;\n min_notional: number;\n price_range: number;\n price_scope: number;\n std_liquidation_fee: number;\n liquidator_fee: number;\n claim_insurance_fund_discount: number;\n funding_period: number;\n cap_funding: number;\n floor_funding: number;\n interest_rate: number;\n created_time: number;\n updated_time: number;\n imr_factor: number;\n base_mmr: number;\n base_imr: number;\n /** Permissionless listing: display name e.g. PERP_BTC_USDC, without broker_id suffix */\n display_symbol_name?: string;\n /** Permissionless listing: broker id; null for non-community-listed symbols */\n broker_id?: string | null;\n /** Trading status: POST_ONLY / ACTIVE / REDUCE_ONLY / DELISTING */\n status?: SymbolTradingStatus;\n }\n\n export interface TokenItem {\n token: string;\n token_hash: string;\n decimals: number;\n minimum_withdraw_amount: number;\n chain_details: ChainDetail[];\n }\n\n export interface ChainDetail {\n chain_id: string;\n contract_address: string;\n decimals: number;\n withdrawal_fee: number;\n }\n\n export interface SymbolExt extends Symbol {\n base: string;\n base_dp: number;\n\n quote: string;\n quote_dp: number;\n type: string;\n name: string;\n displayName: string;\n }\n\n export interface RwaSymbol {\n symbol: string;\n status: \"open\" | \"close\";\n next_open: number;\n next_close: number;\n\n base: string;\n quote: string;\n type: string;\n name: string;\n }\n\n export interface Order {\n symbol: string;\n status: string;\n side: string;\n order_id: number;\n algo_order_id?: number;\n user_id: number;\n price: number | null;\n type: string;\n quantity: number;\n amount: null;\n visible: number;\n executed: number;\n total_fee: number;\n fee_asset: string;\n client_order_id?: string;\n average_executed_price: number;\n total_executed_quantity: number;\n visible_quantity: number;\n created_time: number;\n updated_time: number;\n reduce_only: boolean;\n trigger_price?: number;\n order_tag?: string;\n margin_mode?: MarginMode;\n }\n\n export interface OrderExt extends Order {\n mark_price: string;\n }\n\n export interface AlgoOrder {\n algo_order_id: number;\n root_algo_order_id: number;\n parent_algo_order_id: number;\n parent_algo_type: AlgoOrderRootType;\n symbol: string;\n algo_type: string;\n child_orders: AlgoOrder[];\n side: string;\n quantity: number;\n is_triggered: boolean;\n is_activated: boolean;\n trigger_price: number;\n trigger_price_type: string;\n type: OrderType;\n root_algo_status: string;\n algo_status: string;\n price?: number;\n total_executed_quantity: number;\n visible_quantity: number;\n total_fee: number;\n fee_asset: string;\n reduce_only: boolean;\n created_time: number;\n updated_time: number;\n order_tag?: string;\n client_order_id?: string;\n\n // trailing stop order\n activated_price?: number;\n callback_value?: number;\n callback_rate?: number;\n extreme_price?: number;\n margin_mode?: MarginMode;\n }\n\n export interface AlgoOrderExt extends AlgoOrder {\n mark_price: string;\n position?: Partial<Position>;\n tp_trigger_price?: number;\n sl_trigger_price?: number;\n }\n\n export interface OrderResponse {\n rows: (Order | AlgoOrder)[];\n meta: {\n total: number;\n current_page: number;\n records_per_page: number;\n };\n }\n\n export interface FundingRate {\n symbol: string;\n est_funding_rate: number;\n est_funding_rate_timestamp: number;\n last_funding_rate: number;\n last_funding_rate_timestamp: number;\n next_funding_time: number;\n sum_unitary_funding: number;\n }\n\n export interface FundingPeriodData {\n rate: number;\n positive: number;\n negative: number;\n }\n\n export interface FundingDetails {\n symbol: string;\n quote_min: number;\n quote_max: number;\n quote_tick: number;\n base_min: number;\n base_max: number;\n base_tick: number;\n min_notional: number;\n price_range: number;\n price_scope: number;\n std_liquidation_fee: number;\n liquidator_fee: number;\n claim_insurance_fund_discount: number;\n funding_period: number;\n cap_funding: number;\n floor_funding: number;\n interest_rate: number;\n created_time: number;\n updated_time: number;\n liquidation_tier: number;\n cap_ir: number;\n floor_ir: number;\n mark_index_price_deviation_floor: number;\n mark_index_price_deviation_cap: number;\n global_max_oi_cap: number;\n base_mmr: number;\n base_imr: number;\n imr_factor: number;\n deviation_factor: number;\n /** Permissionless listing: display name e.g. PERP_BTC_USDC, without broker_id suffix */\n display_symbol_name?: string;\n /** Permissionless listing: broker id; null for non-community-listed symbols */\n broker_id?: string | null;\n }\n\n export interface FundingHistory {\n symbol: string;\n data_start_time: string;\n funding: {\n last: FundingPeriodData;\n \"1d\": FundingPeriodData;\n \"3d\": FundingPeriodData;\n \"7d\": FundingPeriodData;\n \"14d\": FundingPeriodData;\n \"30d\": FundingPeriodData;\n \"90d\": FundingPeriodData;\n };\n }\n\n export interface PositionInfo extends PositionAggregated {\n // margin_ratio: number;\n // initial_margin_ratio: number;\n // maintenance_margin_ratio: number;\n // open_margin_ratio: number;\n // current_margin_ratio_with_orders: number;\n // initial_margin_ratio_with_orders: number;\n // maintenance_margin_ratio_with_orders: number;\n // total_collateral_value: number;\n // free_collateral: number;\n rows: Position[];\n // total_pnl_24_h: number;\n }\n\n export interface PositionAggregated {\n margin_ratio: number;\n initial_margin_ratio: number;\n maintenance_margin_ratio: number;\n open_margin_ratio: number;\n current_margin_ratio_with_orders: number;\n initial_margin_ratio_with_orders: number;\n maintenance_margin_ratio_with_orders: number;\n total_collateral_value: number;\n free_collateral: number;\n total_pnl_24_h: number;\n /**\n * @deprecated use total_unreal_pnl instead\n */\n unrealPnL: number;\n total_unreal_pnl: number;\n total_unreal_pnl_index?: number;\n /**\n * @deprecated use total_unsettled_pnl instead\n */\n unsettledPnL: number;\n total_unsettled_pnl: number;\n notional: number;\n unrealPnlROI: number;\n unrealPnlROI_index?: number;\n total_unsettled_cross_pnl?: number;\n total_unsettled_isolated_pnl?: number;\n }\n\n export interface Position {\n account_id?: string;\n symbol: string;\n position_qty: number;\n cost_position: number;\n last_sum_unitary_funding: number;\n pending_long_qty: number;\n pending_short_qty: number;\n settle_price: number;\n average_open_price: number;\n unrealized_pnl: number;\n unrealized_pnl_index?: number;\n unrealized_pnl_ROI: number;\n unsettled_pnl: number;\n unsettled_pnl_ROI: number;\n unrealized_pnl_ROI_index?: number;\n mark_price: number;\n index_price?: number;\n est_liq_price: number | null;\n timestamp: number;\n /**\n * Maintenance margin ratio\n */\n mmr: number;\n imr: number;\n IMR_withdraw_orders: number;\n MMR_with_orders: number;\n pnl_24_h: number;\n fee_24_h: number;\n fundingFee?: number;\n leverage: number;\n margin?: number;\n margin_mode?: MarginMode;\n }\n\n export interface PositionExt extends Position {\n notional: number;\n mm: number;\n }\n\n export interface PositionTPSLExt extends PositionExt {\n full_tp_sl?: {\n tp_trigger_price?: number;\n sl_trigger_price?: number;\n algo_order?: AlgoOrder;\n };\n partial_tp_sl?: {\n tp_trigger_price?: number;\n sl_trigger_price?: number;\n order_num?: number;\n algo_order?: AlgoOrder;\n };\n\n // has_position_tp_sl: boolean;\n\n /**\n * related position tp/sl order\n */\n algo_order?: AlgoOrder;\n }\n\n export interface PositionsTPSLExt extends PositionAggregated {\n rows: PositionTPSLExt[];\n }\n\n export interface Trade {\n symbol: Symbol;\n side: OrderSide;\n ts: number;\n executed_price: number;\n executed_quantity: number;\n executed_timestamp: number;\n }\n\n export interface Holding {\n token: string;\n holding: number;\n frozen: number;\n pending_short: number;\n isolated_margin: number;\n isolated_order_frozen: number;\n updated_time: number;\n }\n\n export interface AccountInfo {\n account_id: string;\n email: string;\n account_mode: string;\n tier: string;\n futures_tier: string;\n maintenance_cancel_orders: boolean;\n taker_fee_rate: number;\n maker_fee_rate: number;\n rwa_taker_fee_rate?: number;\n rwa_maker_fee_rate?: number;\n max_leverage: number;\n futures_taker_fee_rate: number;\n futures_maker_fee_rate: number;\n imr_factor: { [key: string]: number };\n max_notional: { [key: string]: number };\n }\n\n export interface Chain {\n dexs: string[];\n network_infos: NetworkInfos;\n token_infos: TokenInfo[];\n nativeToken?: TokenInfo;\n address?: string;\n symbol?: string;\n on_chain_swap?: boolean;\n // nativeToken\n }\n\n export interface NetworkInfos {\n name: string;\n shortName: string;\n public_rpc_url: string;\n chain_id: number;\n currency_symbol: string;\n bridge_enable: boolean;\n mainnet: boolean;\n est_txn_mins: number | null;\n explorer_base_url: string;\n bridgeless?: boolean;\n withdrawal_fee?: number;\n minimum_withdraw_amount?: number;\n vault_address: string;\n currency_decimal?: number;\n\n cross_chain_router: string;\n depositor: string;\n }\n\n export interface TokenInfo {\n address?: string;\n base_weight: number;\n decimals?: number;\n /** token decimals */\n token_decimal?: number;\n discount_factor?: number | null;\n display_name?: string;\n haircut: number;\n is_collateral: boolean;\n symbol?: string;\n user_max_qty: number;\n precision?: number;\n minimum_withdraw_amount: number;\n swap_enable?: boolean;\n }\n\n export interface Chain {\n token: string;\n token_hash: string;\n decimals: number;\n minimum_withdraw_amount: number;\n base_weight: number;\n discount_factor?: number | null;\n haircut: number;\n user_max_qty: number;\n is_collateral: boolean;\n chain_details: ChainDetail[];\n }\n\n // export interface Token{\n\n // }\n\n export interface ChainDetail {\n chain_id: string;\n chain_name?: string;\n contract_address: string;\n decimals: number;\n withdrawal_fee: number;\n cross_chain_withdrawal_fee: number;\n display_name: string;\n }\n\n export interface AssetHistory {\n meta: RecordsMeta;\n rows: AssetHistoryRow[];\n }\n\n export interface RecordsMeta {\n total: number;\n records_per_page: number;\n current_page: number;\n }\n\n export interface AssetHistoryRow {\n id: string;\n tx_id: string;\n side: string;\n token: string;\n amount: number;\n fee: number;\n trans_status: string;\n created_time: number;\n updated_time: number;\n chain_id: string;\n }\n\n export interface FundingFeeHistory {\n meta: RecordsMeta;\n rows: FundingFeeRow[];\n }\n\n export interface FundingFeeRow {\n symbol: string;\n funding_rate: number;\n mark_price: number;\n funding_fee: number;\n payment_type: string;\n status: string;\n created_time: number;\n updated_time: number;\n }\n\n export interface StrategyVaultHistoryRow {\n vault_id: string;\n created_time: number;\n type: \"withdrawal\" | \"deposit\";\n status: string;\n amount_change: number;\n token?: string; // need to hard code for now\n vaultName?: string; // need to hard code for now\n }\n\n export interface StrategyVaultHistory {\n rows: StrategyVaultHistoryRow[];\n meta: RecordsMeta;\n }\n\n export interface TransferHistoryRow {\n amount: number;\n created_time: number;\n from_account_id: string;\n id: string;\n status: \"CREATED\" | \"PENDING\" | \"COMPLETED\" | \"FAILED\";\n to_account_id: string;\n token: string;\n updated_time: number;\n chain_id: string;\n // timestamp\n block_time: number;\n }\n\n export interface TransferHistory {\n meta: RecordsMeta;\n rows: TransferHistoryRow[];\n }\n\n export interface TransferHistoryRow {\n amount: number;\n created_time: number;\n from_account_id: string;\n id: string;\n status: \"CREATED\" | \"PENDING\" | \"COMPLETED\" | \"FAILED\";\n to_account_id: string;\n token: string;\n updated_time: number;\n }\n\n export interface DailyRow {\n account_value: number;\n broker_id: string;\n date: string;\n perp_volume: number;\n pnl: number;\n snapshot_time?: number;\n }\n\n export interface PositionHistory {\n position_id: number; // Unique identifier for the position\n liquidation_id?: number; // Unique identifier for the position\n position_status: string; // Status of the position\n type: string; // Type of the position activity\n symbol: string; // Trading pair symbol\n avg_open_price: number; // Average open price of the position\n avg_close_price: number; // Average close price of the position\n max_position_qty: number; // Maximum quantity held in the position\n closed_position_qty: number; // Quantity closed in the position\n side: \"LONG\" | \"SHORT\"; // Side of the position\n trading_fee: number; // Fee charged for trading\n accumulated_funding_fee: number; // Accumulated funding fee for the position\n insurance_fund_fee: number; // Fee contributed to the insurance fund\n liquidator_fee: number; // Fee paid to the liquidator\n realized_pnl: number; // Realized profit and loss\n open_timestamp: number; // Timestamp when the position was opened\n close_timestamp: number; // Timestamp when the position was closed\n last_update_time: number; // Timestamp of the last update to the position\n leverage: number; // Leverage of the position\n margin_mode?: MarginMode | 1 | 0;\n }\n\n export interface LiquidationPositionByPerp {\n abs_liquidation_fee: number;\n cost_position_transfer: number;\n liquidator_fee: number;\n position_qty: number;\n symbol: string;\n transfer_price: number;\n mark_price: number;\n }\n\n export interface Liquidation {\n liquidation_id: number;\n timestamp: number;\n transfer_amount_to_insurance_fund: number;\n margin_ratio: number;\n account_mmr: number;\n collateral_value: number;\n position_notional: number;\n positions_by_perp: LiquidationPositionByPerp[];\n }\n\n export interface VaultBalance {\n chain_id: string;\n token: string;\n balance: number;\n pending_rebalance: number;\n }\n\n export interface RestrictedAreas {\n invalid_web_country: string;\n invalid_web_city: string;\n }\n\n export interface IpInfo {\n ip: string;\n city: string;\n region: string;\n checked: boolean;\n }\n\n export interface LeverageInfo {\n symbol: string;\n leverage: number;\n margin_mode?: MarginMode;\n }\n\n export namespace Referral {\n /** /v1/referral/multi_level/volume_prerequisite */\n export interface VolumePrerequisite {\n required_volume: number;\n current_volume: number;\n }\n\n /** /v1/referral/multi_level/max_rebate_rate */\n export interface MaxRebateRate {\n max_rebate_rate: number;\n }\n\n /** /v1/referral/multi_level/rebate_info */\n export interface MultiLevelRebateInfo {\n referral_code: string;\n max_rebate_rate: number;\n default_referee_rebate_rate: number;\n direct_invites?: number;\n indirect_invites?: number;\n direct_volume?: number;\n indirect_volume?: number;\n direct_rebate?: number;\n indirect_rebate?: number;\n direct_bonus_rebate_rate?: number;\n direct_bonus_rebate?: number;\n }\n\n /** /v1/referral/multi_level/admin */\n export interface MultiLevelReferralConfig {\n enable: boolean;\n required_volume: number;\n max_rebate_rate: number;\n }\n\n /** /v1/referral/multi_level/statistics */\n export interface MultiLevelStatistics {\n direct_invites: number;\n indirect_invites: number;\n direct_traded: number;\n indirect_traded: number;\n direct_volume: number;\n indirect_volume: number;\n direct_rebate: number;\n indirect_rebate: number;\n direct_bonus_rebate?: number;\n }\n }\n}\n\nexport declare namespace WSMessage {\n export interface Ticker {\n symbol: string;\n open: number;\n close: number;\n high: number;\n low: number;\n volume: number;\n amount: number;\n count: number;\n change: number;\n open_interest?: number;\n index_price?: number;\n }\n\n export interface MarkPrice {\n symbol: string;\n price: number;\n }\n\n export interface Position {\n symbol: string;\n marginMode?: MarginMode;\n positionQty: number;\n costPosition: number;\n lastSumUnitaryFunding: number;\n sumUnitaryFundingVersion: number;\n pendingLongQty: number;\n pendingShortQty: number;\n settlePrice: number;\n averageOpenPrice: number;\n unsettledPnl: number;\n pnl24H: number;\n fee24H: number;\n markPrice: number;\n estLiqPrice: number;\n version: number;\n imr: number;\n imrwithOrders: number;\n mmrwithOrders: number;\n mmr: number;\n }\n\n export interface VaultBalance {\n chain_id: string;\n token: string;\n balance: number;\n pending_rebalance: number;\n }\n\n export interface Order {\n symbol: string;\n clientOrderId: string;\n orderId: number;\n type: string;\n side: string;\n quantity: number;\n price: number;\n tradeId: number;\n executedPrice: number;\n executedQuantity: number;\n fee: number;\n feeAsset: string;\n totalExecutedQuantity: number;\n avgPrice: number;\n status: string;\n reason: string;\n totalFee: number;\n visible: number;\n /**\n * update time\n */\n timestamp: number;\n reduceOnly: boolean;\n maker: boolean;\n marginMode?: MarginMode;\n }\n\n export interface Holding {\n holding: number;\n frozen: number;\n interest: number;\n pendingShortQty: number;\n pendingExposure: number;\n pendingLongQty: number;\n pendingLongExposure: number;\n version: number;\n staked: number;\n unbonding: number;\n vault: number;\n fee24H: number;\n markPrice: number;\n }\n\n export interface AlgoOrder {\n symbol: string;\n rootAlgoOrderId: number;\n parentAlgoOrderId: number;\n algoOrderId: number;\n status: string;\n algoType: string;\n side: string;\n quantity: number;\n triggerStatus: string;\n price: number;\n type: string;\n triggerTradePrice: number;\n triggerTime: number;\n tradeId: number;\n executedPrice: number;\n executedQuantity: number;\n fee: number;\n feeAsset: string;\n totalExecutedQuantity: number;\n averageExecutedPrice: number;\n totalFee: number;\n timestamp: number;\n visibleQuantity: number;\n reduceOnly: boolean;\n triggered: boolean;\n maker: boolean;\n rootAlgoStatus: string;\n algoStatus: string;\n marginMode?: MarginMode;\n }\n\n export interface Announcement {\n announcement_id: string;\n message: string;\n i18n: Record<PropertyKey, string | null>;\n url?: string | null;\n type: AnnouncementType | null;\n updated_time: number;\n }\n}\n","/**\n * Supported types for placing an order\n */\nexport enum OrderType {\n LIMIT = \"LIMIT\",\n MARKET = \"MARKET\",\n IOC = \"IOC\",\n FOK = \"FOK\",\n POST_ONLY = \"POST_ONLY\",\n ASK = \"ASK\",\n BID = \"BID\",\n STOP_LIMIT = \"STOP_LIMIT\",\n STOP_MARKET = \"STOP_MARKET\",\n /**\n * Only for POSITIONAL_TP_SL type algo order\n */\n CLOSE_POSITION = \"CLOSE_POSITION\",\n /**\n * Scaled order\n */\n SCALED = \"SCALED\",\n /**\n * trailing stop\n */\n TRAILING_STOP = \"TRAILING_STOP\",\n}\n\n/**\n * Margin mode for the order\n */\nexport enum MarginMode {\n ISOLATED = \"ISOLATED\",\n CROSS = \"CROSS\",\n}\n\nexport enum BBOOrderType {\n COUNTERPARTY1 = \"counterparty1\",\n COUNTERPARTY5 = \"counterparty5\",\n QUEUE1 = \"queue1\",\n QUEUE5 = \"queue5\",\n}\n\nexport enum OrderLevel {\n ONE = 0,\n TWO = 1,\n THREE = 2,\n FOUR = 3,\n FIVE = 4,\n}\n\nexport enum AlgoOrderRootType {\n TP_SL = \"TP_SL\",\n POSITIONAL_TP_SL = \"POSITIONAL_TP_SL\",\n STOP = \"STOP\",\n BRACKET = \"BRACKET\",\n TRAILING_STOP = \"TRAILING_STOP\",\n}\n\nexport enum TriggerPriceType {\n MARK_PRICE = \"MARK_PRICE\",\n}\nexport enum PositionType {\n FULL = \"FULL\",\n PARTIAL = \"PARTIAL\",\n}\n\nexport enum AlgoOrderType {\n TAKE_PROFIT = \"TAKE_PROFIT\",\n STOP_LOSS = \"STOP_LOSS\",\n}\n\nexport enum OrderSide {\n BUY = \"BUY\",\n SELL = \"SELL\",\n}\n\nexport enum PositionSide {\n LONG = \"LONG\",\n SHORT = \"SHORT\",\n}\n\nexport enum OrderStatus {\n /** @deprecated */\n OPEN = \"OPEN\",\n NEW = \"NEW\",\n FILLED = \"FILLED\",\n PARTIAL_FILLED = \"PARTIAL_FILLED\",\n CANCELLED = \"CANCELLED\",\n REPLACED = \"REPLACED\",\n // CANCELLED + FILLED\n COMPLETED = \"COMPLETED\",\n // NEW + PARTIAL_FILLED\n INCOMPLETE = \"INCOMPLETE\",\n REJECTED = \"REJECTED\",\n}\n\nexport interface OrderExt {\n total: string;\n}\n\nexport interface BaseOrder {\n symbol: string;\n order_type: OrderType;\n margin_mode: MarginMode;\n order_type_ext?: OrderType;\n order_price: string;\n order_quantity: string;\n order_amount?: number;\n visible_quantity: number;\n side: OrderSide;\n reduce_only: boolean;\n slippage: number;\n order_tag: string;\n level: OrderLevel;\n post_only_adjust: boolean;\n /** custom order id, it is used to identify the order from ws */\n client_order_id: string;\n}\n\n/** Scaled order fields */\nexport interface ScaledOrder {\n /** user-defined price at the first order (index 0) */\n start_price?: string;\n /** user-defined price at the last order (index total_orders - 1) */\n end_price?: string;\n /** total number of orders */\n total_orders?: string;\n /** quantity distribution type */\n distribution_type?: DistributionType;\n /** the ratio of qty[end] / qty[start] */\n skew?: string;\n}\n\nexport enum TrailingCallbackType {\n VALUE = \"value\",\n RATE = \"rate\",\n}\n\n/**\n * Trailing Stop that allows users to set an activation price and a trailing amount (value / rate).\n * The order is only activated when the market reaches the activation price,\n * after which the trailing stop logic tracks the extreme price and triggers when the price retraces by the specified trailing amount.\n */\nexport interface TrailingStopOrder {\n /**\n * activated price\n */\n activated_price?: string;\n /**\n * i.e. the value = 100\n */\n callback_value?: string;\n /**\n * i.e. the value = 0.1 represent to 10%\n */\n callback_rate?: string;\n}\n\nexport interface RegularOrder\n extends BaseOrder, OrderExt, ScaledOrder, TrailingStopOrder {\n // symbol: string;\n // client_order_id: string;\n // type: OrderType;\n // price: number;\n // quantity: number;\n}\n\nexport interface AlgoOrder extends BaseOrder, OrderExt {\n // symbol: string;\n quantity: string;\n type: OrderType;\n price: string;\n algo_type: AlgoOrderRootType;\n trigger_price_type: string;\n trigger_price: string;\n child_orders: AlgoOrderChildOrders[];\n}\n\nexport interface BracketOrder extends AlgoOrder, OrderExt {\n /**\n * Computed take profit\n */\n position_type?: PositionType;\n // tp_enable?: boolean;\n // sl_enable?: boolean;\n tp_pnl?: string;\n tp_offset?: string;\n tp_offset_percentage?: string;\n /** Offset from mark price (UI / internal; same semantics as offset but base = mark). */\n tp_offset_from_mark?: string;\n tp_offset_percentage_from_mark?: string;\n tp_ROI?: string;\n tp_trigger_price?: string;\n tp_order_price?: string;\n tp_order_type?: OrderType;\n\n /**\n * Computed stop loss\n */\n sl_pnl?: string;\n sl_offset?: string;\n sl_offset_percentage?: string;\n sl_offset_from_mark?: string;\n sl_offset_percentage_from_mark?: string;\n sl_ROI?: string;\n sl_trigger_price?: string;\n sl_order_price?: string;\n sl_order_type?: OrderType;\n}\n\nexport type OrderlyOrder = RegularOrder & AlgoOrder & BracketOrder;\n\nexport interface AlgoOrderChildOrders {\n symbol: string;\n algo_type: string;\n child_orders: ChildOrder[];\n}\n\nexport interface ChildOrder {\n symbol: string;\n algo_type: AlgoOrderType;\n side: string;\n type: OrderType;\n trigger_price: string;\n price?: string;\n reduce_only: boolean;\n trigger_price_type?: string;\n}\n\nexport interface TrailingStopOrder {\n activated_price?: string;\n callback_value?: string;\n callback_rate?: string;\n}\n\nexport interface OrderEntity extends ScaledOrder, TrailingStopOrder {\n symbol: string;\n order_type: OrderType;\n margin_mode?: MarginMode;\n algo_type?: AlgoOrderRootType;\n order_type_ext?: OrderType;\n order_price?: string;\n order_quantity?: string;\n order_amount?: number;\n // Whether to display in the orderbook, default=order_quantity, not displayed when =0,\n visible_quantity?: number;\n reduce_only?: boolean;\n side: OrderSide;\n broker_id?: string;\n slippage?: number;\n\n // internal fields\n total?: string;\n // hideInOrderbook?: boolean;\n isStopOrder?: boolean;\n trigger_price?: string;\n order_tag?: string;\n client_order_id?: string;\n level?: OrderLevel;\n}\n\nexport enum DistributionType {\n // enum value need to use lowercase to match the track params\n FLAT = \"flat\",\n ASCENDING = \"ascending\",\n DESCENDING = \"descending\",\n CUSTOM = \"custom\",\n}\n\nexport type Optional<T, K extends keyof T> = Omit<T, K> & Partial<Pick<T, K>>;\nexport type RequireKeys<T extends object, K extends keyof T> = Required<\n Pick<T, K>\n> &\n Partial<Omit<T, K>>;\n\nexport interface BaseAlgoOrderEntity<\n T extends AlgoOrderRootType,\n> extends OrderEntity {\n algo_type: AlgoOrderRootType;\n child_orders: (Partial<Omit<AlgoOrderEntity<T>, \"algo_type\" | \"type\">> & {\n algo_type: AlgoOrderType;\n type: OrderType;\n child_orders?: BaseAlgoOrderEntity<T>[\"child_orders\"];\n // trigger_price: number | string;\n })[];\n // if update the order, then need to provide the order_id\n algo_order_id?: number;\n client_order_id?: string;\n order_tag?: string;\n price?: number | string;\n quantity: number | string;\n reduce_only?: boolean;\n side: OrderSide;\n symbol: string;\n trigger_price: string;\n trigger_price_type: TriggerPriceType;\n type: OrderType;\n visible_quantity?: number;\n is_activated?: boolean;\n tp_trigger_price?: string | number;\n sl_trigger_price?: string | number;\n tp_order_price?: string | number;\n tp_order_type?: OrderType;\n sl_order_price?: string | number;\n sl_order_type?: OrderType;\n /** Mark-based TP/SL offsets (UI + API); mirrors `BracketOrder` when used on TP/SL algo forms. */\n tp_offset_from_mark?: string | number;\n tp_offset_percentage_from_mark?: string | number;\n sl_offset_from_mark?: string | number;\n sl_offset_percentage_from_mark?: string | number;\n // tp_enable?: boolean;\n // sl_enable?: boolean;\n position_type?: PositionType;\n}\n\nexport type AlgoOrderEntity<\n T extends AlgoOrderRootType = AlgoOrderRootType.STOP,\n> = T extends AlgoOrderRootType.TP_SL\n ? Optional<\n BaseAlgoOrderEntity<T>,\n \"side\" | \"type\" | \"trigger_price\" | \"order_type\"\n >\n : T extends AlgoOrderRootType.POSITIONAL_TP_SL\n ? Optional<\n BaseAlgoOrderEntity<T>,\n | \"side\"\n | \"type\"\n | \"trigger_price\"\n | \"order_type\"\n | \"quantity\"\n // | \"tp_enable\"\n // | \"sl_enable\"\n | \"tp_order_price\"\n | \"tp_order_type\"\n | \"sl_order_price\"\n | \"sl_order_type\"\n | \"position_type\"\n >\n : Omit<BaseAlgoOrderEntity<T>, \"child_orders\" | \"order_type\">;\n\nexport type TPSLOrderEntry = Optional<\n AlgoOrderEntity<AlgoOrderRootType.TP_SL>,\n \"side\" | \"type\" | \"trigger_price\"\n>;\n\nexport type BracketOrderEntry = Optional<\n AlgoOrderEntity<AlgoOrderRootType.BRACKET>,\n \"side\"\n>;\n","export enum WithdrawStatus {\n NotSupported = \"NotSupported\",\n NotConnected = \"NotConnected\",\n Unsettle = \"Unsettle\",\n InsufficientBalance = \"InsufficientBalance\",\n Normal = \"Normal\",\n}\n","export interface Chain {\n id: number;\n chainNameShort: string;\n chainLogo: string;\n chainInfo: ChainInfo;\n minGasBalance: number;\n minCrossGasBalance: number;\n maxPrepayCrossGas: number;\n blockExplorerName: string;\n chainName: string;\n requestRpc: string;\n}\n\nexport interface ChainInfo {\n chainId: string;\n chainName: string;\n nativeCurrency: NativeCurrency;\n rpcUrls: string[];\n blockExplorerUrls: string[];\n}\n\nexport interface NativeCurrency {\n name: string;\n symbol: string;\n decimals: number;\n fix: number;\n}\n\nexport const Ethereum = {\n chainNameShort: \"Ethereum\",\n id: 1,\n chainLogo: \"\",\n chainInfo: {\n chainId: `0x${(1).toString(16)}`,\n chainName: \"Ethereum Mainnet\",\n nativeCurrency: {\n name: \"eth\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 8,\n },\n rpcUrls: [\"https://mainnet.infura.io/v3/9155d40884554acdb17699a18a1fe348\"],\n blockExplorerUrls: [\"https://etherscan.io/\"],\n },\n minGasBalance: 0.002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.025,\n blockExplorerName: \"EthScan\",\n chainName: \"Ethereum Mainnet\",\n requestRpc: \"https://rpc.ankr.com/eth\",\n};\n\nexport const Avalanche = {\n id: 43114,\n chainInfo: {\n chainId: `0x${(43114).toString(16)}`, // '0xa86a'\n chainName: \"Avalanche\",\n nativeCurrency: {\n name: \"avax\",\n symbol: \"AVAX\",\n decimals: 18,\n fix: 5,\n },\n rpcUrls: [\"https://api.avax.network/ext/bc/C/rpc\"],\n blockExplorerUrls: [\"https://snowtrace.io/\"],\n },\n minGasBalance: 0.05,\n minCrossGasBalance: 0.15,\n maxPrepayCrossGas: 2,\n blockExplorerName: \"Snowtrace\",\n chainName: \"Avalanche\",\n chainNameShort: \"Avalanche\",\n chainLogo: \"\",\n requestRpc: \"https://rpc.ankr.com/avalanche\",\n};\n\nexport const Fuji = {\n id: 43113,\n chainInfo: {\n chainId: `0x${(43113).toString(16)}`, // '0xa86a'\n chainName: \"Avalanche Fuji Testnet\",\n nativeCurrency: {\n name: \"avax\",\n symbol: \"AVAX\",\n decimals: 18,\n fix: 5,\n },\n rpcUrls: [\"https://api.avax.network/ext/bc/C/rpc\"],\n blockExplorerUrls: [\"https://snowtrace.io/\"],\n },\n minGasBalance: 0.05,\n minCrossGasBalance: 0.15,\n maxPrepayCrossGas: 2,\n blockExplorerName: \"Snowtrace\",\n chainName: \"Avalanche Fuji\",\n chainNameShort: \"Avalanche Fuji\",\n chainLogo: \"\",\n requestRpc: \"https://rpc.ankr.com/avalanche\",\n};\n\nexport const BNB = {\n id: 56,\n chainInfo: {\n chainId: `0x${(56).toString(16)}`, // 0x38\n chainName: \"BNB Chain\",\n nativeCurrency: {\n name: \"bnb\",\n symbol: \"BNB\",\n decimals: 18,\n fix: 6,\n },\n rpcUrls: [\"https://bsc-dataseed1.binance.org/\"],\n blockExplorerUrls: [\"https://bscscan.com/\"],\n },\n minGasBalance: 0.02,\n minCrossGasBalance: 0.02,\n maxPrepayCrossGas: 0.1,\n blockExplorerName: \"BscScan\",\n chainName: \"Binance Smart Chain\",\n chainNameShort: \"BNB Chain\",\n requestRpc: \"https://rpc.ankr.com/bsc\",\n chainLogo: \"\",\n};\n\nexport const Fantom = {\n id: 250,\n chainInfo: {\n chainId: `0x${(250).toString(16)}`, // 0x38\n chainName: \"Fantom\",\n nativeCurrency: {\n name: \"ftm\",\n symbol: \"FTM\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://rpcapi.fantom.network\"],\n blockExplorerUrls: [\"https://ftmscan.com/\"],\n },\n minGasBalance: 1,\n minCrossGasBalance: 10,\n maxPrepayCrossGas: 60,\n blockExplorerName: \"FTMScan\",\n chainName: \"Fantom\",\n chainNameShort: \"Fantom\",\n chainLogo: \"\",\n requestRpc: \"https://rpc.ankr.com/fantom\",\n};\n\nexport const Polygon = {\n id: 137,\n chainInfo: {\n chainId: `0x${(137).toString(16)}`,\n chainName: \"Polygon\",\n nativeCurrency: {\n name: \"matic\",\n symbol: \"MATIC\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://rpc-mainnet.matic.network\"],\n blockExplorerUrls: [\"https://polygonscan.com/\"],\n },\n minGasBalance: 0.1,\n minCrossGasBalance: 1,\n maxPrepayCrossGas: 30,\n blockExplorerName: \"Polygonscan\",\n chainName: \"Polygon\",\n chainNameShort: \"Polygon\",\n requestRpc: \"https://rpc.ankr.com/polygon\",\n chainLogo: \"\",\n};\n\nexport const Arbitrum = {\n id: 42161,\n chainInfo: {\n chainId: `0x${(42161).toString(16)}`,\n chainName: \"Arbitrum\",\n nativeCurrency: {\n name: \"eth\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://arb1.arbitrum.io/rpc\"],\n blockExplorerUrls: [\"https://arbiscan.io/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Arbiscan\",\n chainName: \"Arbitrum\",\n chainNameShort: \"Arbitrum\",\n requestRpc: \"https://arb1.arbitrum.io/rpc\",\n chainLogo: \"\",\n};\n\nexport const Optimism = {\n id: 10,\n chainInfo: {\n chainId: `0x${(10).toString(16)}`,\n chainName: \"Optimism\",\n nativeCurrency: {\n name: \"eth\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://mainnet.optimism.io\"],\n blockExplorerUrls: [\"https://optimistic.etherscan.io/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Optimism\",\n chainName: \"Optimism\",\n chainNameShort: \"Optimism\",\n requestRpc: \"https://rpc.ankr.com/optimism\",\n chainLogo: \"\",\n};\n\nexport const zkSyncEra = {\n id: 324,\n chainInfo: {\n chainId: `0x${(324).toString(16)}`,\n chainName: \"zkSync Era\",\n nativeCurrency: {\n name: \"eth\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://zksync2-mainnet.zksync.io\"],\n blockExplorerUrls: [\"https://explorer.zksync.io/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"zkSync Era\",\n chainName: \"zkSync Era\",\n chainNameShort: \"zkSync Era\",\n requestRpc: \"https://zksync2-mainnet.zksync.io/\",\n chainLogo: \"\",\n // blockExplorerName: 'zkSync Era Goerli',\n // chainName: 'zkSync Era Goerli',\n // chainNameShort: 'zkSync Era Goerli',\n // requestRpc: 'https://zksync2-testnet.zksync.dev/',\n // chainLogo: '',\n};\n\nexport const PolygonzkEVM = {\n id: 1101,\n chainInfo: {\n chainId: `0x${(1101).toString(16)}`,\n chainName: \"Polygon zkEVM\",\n nativeCurrency: {\n name: \"eth\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://zkevm-rpc.com\"],\n blockExplorerUrls: [\"https://zkevm.polygonscan.com/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Polygon zkEVM\",\n chainName: \"Polygon zkEVM\",\n chainNameShort: \"Polygon zkEVM\",\n requestRpc: \"https://zkevm-rpc.com\",\n chainLogo: \"\",\n};\n\nexport const Linea = {\n id: 59144,\n chainInfo: {\n chainId: `0x${(59144).toString(16)}`,\n chainName: \"Linea\",\n nativeCurrency: {\n name: \"eth\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://rpc.linea.build\"],\n blockExplorerUrls: [\"https://lineascan.build/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Linea\",\n chainName: \"Linea\",\n chainNameShort: \"Linea\",\n requestRpc: \"https://rpc.linea.build\",\n chainLogo: \"\",\n};\n\nexport const Base = {\n id: 8453,\n chainInfo: {\n chainId: `0x${(8453).toString(16)}`,\n chainName: \"Base Network\",\n nativeCurrency: {\n name: \"eth\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://developer-access-mainnet.base.org/\"],\n blockExplorerUrls: [\"https://basescan.org\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Base\",\n chainName: \"Base\",\n chainNameShort: \"Base\",\n requestRpc: \"https://developer-access-mainnet.base.org/\",\n chainLogo: \"\",\n};\n\nexport const Mantle = {\n id: 5000,\n chainInfo: {\n chainId: `0x${(5000).toString(16)}`,\n chainName: \"Mantle\",\n nativeCurrency: {\n name: \"MNT\",\n symbol: \"MNT\",\n decimals: 6,\n fix: 4,\n },\n rpcUrls: [\"https://rpc.mantle.xyz/\"],\n blockExplorerUrls: [\"https://mantlescan.xyz/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Mantle\",\n chainName: \"Mantle\",\n chainNameShort: \"Mantle\",\n requestRpc: \"https://rpc.mantle.xyz/\",\n chainLogo: \"\",\n};\n\nexport const ArbitrumGoerli = {\n id: 421613,\n chainInfo: {\n chainId: `0x${(421613).toString(16)}`,\n chainName: \"Arbitrum Goerli\",\n nativeCurrency: {\n name: \"AGOR\",\n symbol: \"AGOR\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://goerli-rollup.arbitrum.io/rpc\"],\n blockExplorerUrls: [\"https://goerli-rollup-explorer.arbitrum.io/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Arbitrum Goerli\",\n chainName: \"Arbitrum Goerli\",\n chainNameShort: \"Arbitrum Goerli\",\n requestRpc: \"https://goerli-rollup.arbitrum.io/rpc\",\n chainLogo: \"\",\n};\n\nexport const ArbitrumSepolia = {\n id: 421614,\n chainInfo: {\n chainId: `0x${(421614).toString(16)}`,\n chainName: \"Arbitrum Sepolia\",\n nativeCurrency: {\n name: \"ETH\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://arbitrum-sepolia.blockpi.network/v1/rpc/public\"],\n blockExplorerUrls: [\"https://sepolia-explorer.arbitrum.io\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Arbitrum Sepolia\",\n chainName: \"Arbitrum Sepolia\",\n chainNameShort: \"Arbitrum Sepolia\",\n requestRpc: \"https://arbitrum-sepolia.blockpi.network/v1/rpc/public\",\n chainLogo: \"\",\n};\n\nexport const OptimismGoerli = {\n id: 420,\n chainInfo: {\n chainId: `0x${(420).toString(16)}`,\n chainName: \"Optimism Goerli\",\n nativeCurrency: {\n name: \"ETH\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://optimism-goerli.gateway.tenderly.co\"],\n blockExplorerUrls: [\"https://goerli-optimism.etherscan.io\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Optimism Goerli\",\n chainName: \"Optimism Goerli\",\n chainNameShort: \"Optimism Goerli\",\n requestRpc: \"https://optimism-goerli.gateway.tenderly.co\",\n chainLogo: \"\",\n};\n\nexport const OptimismSepolia = {\n id: 11155420,\n chainInfo: {\n chainId: `0x${(11155420).toString(16)}`,\n chainName: \"Optimism Sepolia\",\n nativeCurrency: {\n name: \"ETH\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://sepolia.optimism.io\"],\n blockExplorerUrls: [\"https://sepolia-optimistic.etherscan.io\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Optimism Sepolia\",\n chainName: \"Optimism Sepolia\",\n chainNameShort: \"Optimism Sepolia\",\n requestRpc: \"https://sepolia.optimism.io\",\n chainLogo: \"\",\n};\n\nexport const BaseSepolia = {\n id: 84532,\n chainInfo: {\n chainId: `0x${(84532).toString(16)}`,\n chainName: \"Base Sepolia\",\n nativeCurrency: {\n name: \"ETH\",\n symbol: \"ETH\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://base-sepolia-rpc.publicnode.com\"],\n blockExplorerUrls: [\"https://base-sepolia.blockscout.com/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Base Sepolia\",\n chainName: \"Base Sepolia\",\n chainNameShort: \"Base Sepolia\",\n requestRpc: \"https://base-sepolia-rpc.publicnode.com\",\n chainLogo: \"\",\n};\n\nexport const MantleSepolia = {\n id: 5003,\n chainInfo: {\n chainId: `0x${(5003).toString(16)}`,\n chainName: \"Mantle Sepolia\",\n nativeCurrency: {\n name: \"MNT\",\n symbol: \"MNT\",\n decimals: 6,\n fix: 4,\n },\n rpcUrls: [\"https://rpc.sepolia.mantle.xyz/\"],\n blockExplorerUrls: [\"https://sepolia.mantlescan.xyz/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Mantle Sepolia\",\n chainName: \"Mantle Sepolia\",\n chainNameShort: \"Mantle Sepolia\",\n requestRpc: \"https://rpc.sepolia.mantle.xyz/\",\n chainLogo: \"\",\n};\n\nexport const PolygonAmoy = {\n id: 80002,\n chainInfo: {\n chainId: `0x${(80002).toString(16)}`,\n chainName: \"Polygon Amoy\",\n nativeCurrency: {\n name: \"MATIC\",\n symbol: \"MATIC\",\n decimals: 6,\n fix: 4,\n },\n rpcUrls: [\"https://rpc-amoy.polygon.technology/\"],\n blockExplorerUrls: [\"https://www.oklink.com/amoy\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"Polygon Amoy\",\n chainName: \"Polygon Amoy\",\n chainNameShort: \"Polygon Amoy\",\n requestRpc: \"https://rpc-amoy.polygon.technology/\",\n chainLogo: \"\",\n};\n\nexport const Sei = {\n id: 1329,\n chainInfo: {\n chainId: `0x${(1329).toString(16)}`,\n chainName: \"Sei Network\",\n nativeCurrency: {\n name: \"SEI\",\n symbol: \"SEI\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [\"https://evm-rpc.sei-apis.com\"],\n blockExplorerUrls: [\"https://seitrace.com/\"],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"SEI\",\n chainName: \"Sei Network\",\n chainNameShort: \"SEI\",\n requestRpc: \"https://evm-rpc.sei-apis.com\",\n chainLogo: \"\",\n};\n\nexport const StoryTestnet = {\n name: \"Story Odyssey Testnet\",\n public_rpc_url: \"https://rpc.odyssey.storyrpc.io/\",\n chain_id: 1516,\n currency_symbol: \"IP\",\n explorer_base_url: \"\",\n vault_address: \"\",\n};\nexport const StoryOdysseyTestnet = {\n id: 1329,\n chainInfo: {\n chainId: `0x${StoryTestnet.chain_id.toString(16)}`,\n chainName: StoryTestnet.name,\n nativeCurrency: {\n name: \"IP\",\n symbol: \"IP\",\n decimals: 18,\n fix: 4,\n },\n rpcUrls: [StoryTestnet.public_rpc_url],\n blockExplorerUrls: [],\n },\n minGasBalance: 0.0002,\n minCrossGasBalance: 0.002,\n maxPrepayCrossGas: 0.03,\n blockExplorerName: \"SEI\",\n chainName: \"Sei Network\",\n chainNameShort: \"SEI\",\n requestRpc: \"https://evm-rpc.sei-apis.com\",\n chainLogo: \"\",\n};\nexport const chainsInfoMap: Map<number, Chain> = new Map([\n [Ethereum.id, Ethereum],\n [Avalanche.id, Avalanche],\n [Fuji.id, Fuji],\n [BNB.id, BNB],\n [Fantom.id, Fantom],\n [Polygon.id, Polygon],\n [Arbitrum.id, Arbitrum],\n [Optimism.id, Optimism],\n [zkSyncEra.id, zkSyncEra],\n [PolygonzkEVM.id, PolygonzkEVM],\n [Linea.id, Linea],\n [Base.id, Base],\n [Mantle.id, Mantle],\n [ArbitrumGoerli.id, ArbitrumGoerli],\n [ArbitrumSepolia.id, ArbitrumSepolia],\n [OptimismGoerli.id, OptimismGoerli],\n [OptimismSepolia.id, OptimismSepolia],\n [BaseSepolia.id, BaseSepolia],\n [MantleSepolia.id, MantleSepolia],\n [PolygonAmoy.id, PolygonAmoy],\n [Sei.id, Sei],\n [StoryOdysseyTestnet.id, StoryOdysseyTestnet],\n]);\n\nexport const SolanaDevnet = {\n id: 901901901,\n chainInfo: {\n name: \"Solana Devnet\",\n public_rpc_url: \"\",\n chainId: 901901901,\n currency_symbol: \"SOL\",\n explorer_base_url: \"\",\n vault_address: \"\",\n },\n} as unknown as typeof Arbitrum;\n\nexport const TestnetChains = [\n {\n network_infos: {\n name: \"Arbitrum Sepolia\",\n shortName: \"Arbitrum Sepolia\",\n public_rpc_url: \"https://arbitrum-sepolia.blockpi.network/v1/rpc/public\",\n chain_id: 421614,\n currency_symbol: \"ETH\",\n bridge_enable: true,\n mainnet: false,\n explorer_base_url: \"https://sepolia.arbiscan.io\",\n est_txn_mins: null,\n },\n token_infos: [\n {\n symbol: \"USDC\",\n address: \"0x75faf114eafb1BDbe2F0316DF893fd58CE46AA4d\",\n decimals: 6,\n },\n ],\n },\n {\n network_infos: {\n name: \"Solana Devnet\",\n public_rpc_url: \"\",\n chain_id: 901901901,\n currency_symbol: \"SOL\",\n explorer_base_url: \"\",\n vault_address: \"\",\n },\n token_infos: [\n {\n symbol: \"USDC\",\n address: \"4zMMC9srt5Ri5X14GAgXhaHii3GnPAEERYPJgZJDncDU\",\n decimals: 6,\n },\n ],\n },\n {\n network_infos: StoryTestnet,\n token_infos: [\n {\n symbol: \"USDC\",\n address: \"0xF1815bd50389c46847f0Bda824eC8da914045D14\",\n decimals: 6,\n },\n ],\n },\n // {\n // network_infos: {\n // name: \"Mantle Sepolia\",\n // shortName: \"Mantle Sepolia\",\n // public_rpc_url: \"https://rpc.sepolia.mantle.xyz/\",\n // chain_id: 5003,\n // currency_symbol: \"MNT\",\n // bridge_enable: true,\n // mainnet: false,\n // explorer_base_url: \"https://sepolia.mantlescan.xyz/\",\n // est_txn_mins: null,\n // },\n // token_infos: [\n // {\n // symbol: \"USDC\",\n // address: \"0xAcab8129E2cE587fD203FD770ec9ECAFA2C88080\",\n // decimals: 6,\n // display_name: \"USDC.e\",\n // },\n // ],\n // },\n // {\n // network_infos: {\n // name: \"Arbitrum Goerli\",\n // shortName: \"Arbitrum Goerli\",\n // public_rpc_url: \"https://goerli-rollup.arbitrum.io/rpc\",\n // chain_id: 421613,\n // currency_symbol: \"ETH\",\n // bridge_enable: true,\n // mainnet: false,\n // explorer_base_url: \"https://goerli.arbiscan.io/\",\n // est_txn_mins: null,\n // },\n // token_infos: [\n // {\n // symbol: \"USDC\",\n // address: \"0xfd064A18f3BF249cf1f87FC203E90D8f650f2d63\",\n // decimals: 6,\n // },\n // ],\n // },\n // {\n // network_infos: {\n // name: \"Optimism Goerli\",\n // shortName: \"Optimism Goerli\",\n // public_rpc_url: \"https://optimism-goerli.gateway.tenderly.co\",\n // chain_id: 420,\n // currency_symbol: \"ETH\",\n // bridge_enable: true,\n // mainnet: false,\n // explorer_base_url: \"https://goerli-optimism.etherscan.io\",\n // est_txn_mins: null,\n // },\n // },\n];\n\nexport const defaultMainnetChains = [Arbitrum, Base, Optimism];\nexport const defaultTestnetChains = [ArbitrumSepolia];\n\nexport enum ChainNamespace {\n evm = \"EVM\",\n solana = \"SOL\",\n}\n\nexport const AbstractChains = new Set([2741, 11124]);\nexport const SolanaChains = new Set([901901901, 900900900]);\n","export enum TrackerEventName {\n /** virtual event (not send this event name to tracker) */\n trackIdentifyUserId = \"track_identify_user_id\",\n trackIdentify = \"track_identify\",\n trackCustomEvent = \"track_custom_event\",\n\n /** real event name (send this event name to tracker) */\n withdrawSuccess = \"withdraw_request_success\",\n withdrawFailed = \"withdraw_request_failure\",\n depositSuccess = \"deposit_request_success\",\n depositFailed = \"deposit_request_failure\",\n signinSuccess = \"sign_message_success\",\n placeOrderSuccess = \"place_order_success\",\n walletConnect = \"connect_wallet_success\",\n clickLinkDeviceButton = \"click_link_device_button\",\n signLinkDeviceMessageSuccess = \"sign_link_device_message_success\",\n linkDeviceModalClickConfirm = \"link_device_modal_click_confirm\",\n socialLoginSuccess = \"social_login_success\",\n clickSwitchNetwork = \"click_switch_network\",\n clickSwitchWallet = \"click_switch_wallet\",\n switchNetworkSuccess = \"switch_network_success\",\n clickExportPrivateKey = \"click_export_private_key\",\n switchLanguage = \"switch_language\",\n leaderboardCampaignClickTradeNow = \"leaderboard_campaign_click_trade_now\",\n leaderboardCampaignClickLearnMore = \"leaderboard_campaign_click_learn_more\",\n vaultDepositSuccess = \"vault_deposit_success\",\n vaultDepositFailed = \"vault_deposit_failed\",\n vaultWithdrawSuccess = \"vault_withdraw_success\",\n vaultWithdrawFailed = \"vault_withdraw_failed\",\n clickBBOButton = \"click_bbo_button\",\n confirmCloseAllPositions = \"confirm_close_all_positions\",\n}\n","import { API } from \"./types/api\";\n\n// export type Chain = {\n// id: string;\n// name?: string;\n// };\n\nexport type CurrentChain = {\n id: number;\n info: API.Chain;\n};\n\nexport enum WS_WalletStatusEnum {\n NO = \"NO\",\n FAILED = \"FAILED\",\n PENDING = \"PENDING\",\n PROCESSING = \"PROCESSING\",\n COMPLETED = \"COMPLETED\",\n}\n","export const LedgerWalletKey = \"orderly:ledger-wallet\";\nexport const ConnectorKey = \"orderly:connectorKey\";\nexport const ChainKey = \"order:chain\";\nexport const LinkDeviceKey = \"orderly_link_device\";\nexport const TradingviewFullscreenKey = \"orderly:tradingview-fullscreen\";\nexport const OrderEntrySortKeys = \"orderly:order_entry_sort_keys\";\n","export class ApiError extends Error {\n constructor(message: string, private readonly code: number) {\n super(message);\n this.name = \"ApiError\";\n }\n}\n\nexport class SDKError extends Error {\n constructor(message: string) {\n super(`[ORDERLY SDK ERROR]:${message}`);\n this.name = \"SDKError\";\n }\n}\n","export const definedTypes = {\n EIP712Domain: [\n { name: \"name\", type: \"string\" },\n { name: \"version\", type: \"string\" },\n { name: \"chainId\", type: \"uint256\" },\n { name: \"verifyingContract\", type: \"address\" },\n ],\n Registration: [\n { name: \"brokerId\", type: \"string\" },\n { name: \"chainId\", type: \"uint256\" },\n { name: \"timestamp\", type: \"uint64\" },\n { name: \"registrationNonce\", type: \"uint256\" },\n ],\n Withdraw: [\n { name: \"brokerId\", type: \"string\" },\n { name: \"chainId\", type: \"uint256\" },\n { name: \"receiver\", type: \"address\" },\n { name: \"token\", type: \"string\" },\n { name: \"amount\", type: \"uint256\" },\n { name: \"withdrawNonce\", type: \"uint64\" },\n { name: \"timestamp\", type: \"uint64\" },\n ],\n AddOrderlyKey: [\n { name: \"brokerId\", type: \"string\" },\n { name: \"chainId\", type: \"uint256\" },\n { name: \"orderlyKey\", type: \"string\" },\n { name: \"scope\", type: \"string\" },\n { name: \"timestamp\", type: \"uint64\" },\n { name: \"expiration\", type: \"uint64\" },\n ],\n SettlePnl: [\n { name: \"brokerId\", type: \"string\" },\n { name: \"chainId\", type: \"uint256\" },\n { name: \"settleNonce\", type: \"uint64\" },\n { name: \"timestamp\", type: \"uint64\" },\n ],\n DexRequest: [\n { name: \"payloadType\", type: \"uint8\" },\n { name: \"nonce\", type: \"uint256\" },\n { name: \"receiver\", type: \"address\" },\n { name: \"amount\", type: \"uint256\" },\n { name: \"vaultId\", type: \"bytes32\" },\n { name: \"token\", type: \"string\" },\n { name: \"dexBrokerId\", type: \"string\" },\n ],\n InternalTransfer: [\n { name: \"receiver\", type: \"bytes32\" },\n { name: \"token\", type: \"string\" },\n { name: \"amount\", type: \"uint256\" },\n { name: \"transferNonce\", type: \"uint64\" },\n ],\n} as const;\n","export { default as version } from \"./version\";\nexport * from \"./constants\";\nexport * from \"./types/api\";\n// export * from \"./order\";\nexport {\n OrderType,\n OrderSide,\n OrderStatus,\n AlgoOrderRootType,\n PositionType,\n AlgoOrderType,\n TriggerPriceType,\n BBOOrderType,\n OrderLevel,\n DistributionType,\n TrailingCallbackType,\n MarginMode,\n} from \"./order\";\nexport type {\n OrderEntity,\n AlgoOrderEntity,\n TPSLOrderEntry,\n BaseAlgoOrderEntity,\n AlgoOrderChildOrders,\n Optional,\n PositionSide,\n BracketOrderEntry,\n RequireKeys,\n BaseOrder,\n RegularOrder,\n AlgoOrder,\n OrderlyOrder,\n ChildOrder,\n BracketOrder,\n} from \"./order\";\nexport * from \"./context\";\nexport * from \"./withdraw\";\nexport * from \"./chains\";\nexport * from \"./track\";\nexport type { Chain as ChainConfig, ChainInfo, NativeCurrency } from \"./chains\";\nexport * from \"./wallet\";\nexport * from \"./storageKey\";\nexport { ApiError, SDKError } from \"./errors\";\n\nexport { definedTypes } from \"./sign\";\nexport * as superstruct from \"superstruct\";\nexport * from \"./assetHistory\";\nexport * from \"./account\";\n","export enum AssetHistoryStatusEnum {\n /** @deprecated, this status is not used */\n NEW = \"NEW\",\n PENDING = \"PENDING\",\n CONFIRM = \"CONFIRM\",\n PROCESSING = \"PROCESSING\",\n COMPLETED = \"COMPLETED\",\n FAILED = \"FAILED\",\n PENDING_REBALANCE = \"PENDING_REBALANCE\",\n}\n\nexport enum AssetHistorySideEnum {\n DEPOSIT = \"DEPOSIT\",\n WITHDRAW = \"WITHDRAW\",\n}\n","export const DEFAUL_ORDERLY_KEY_SCOPE = \"read,trading\";\n"],"mappings":"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","names":["AccountStatusEnum","SystemStateEnum","ExchangeStatusEnum","NetworkStatusEnum","AnnouncementType","OrderType","MarginMode","BBOOrderType","OrderLevel","AlgoOrderRootType","TriggerPriceType","PositionType","AlgoOrderType","OrderSide","OrderStatus","TrailingCallbackType","DistributionType","WithdrawStatus","ChainNamespace","TrackerEventName","WS_WalletStatusEnum","AssetHistoryStatusEnum","AssetHistorySideEnum"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@kodiak-finance/orderly-types",
3
- "version": "2.9.0",
3
+ "version": "2.9.1-alpha.1",
4
4
  "description": "",
5
5
  "main": "dist/index.js",
6
6
  "module": "dist/index.mjs",
@@ -18,7 +18,7 @@
18
18
  "jest": "^29.6.1",
19
19
  "tsup": "^8.5.1",
20
20
  "typedoc": "^0.26.5",
21
- "tsconfig": "0.11.32"
21
+ "tsconfig": "0.11.33-alpha.1"
22
22
  },
23
23
  "publishConfig": {
24
24
  "access": "public"