@velocity-exchange/sdk 0.2.5 → 0.4.0
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/CHANGELOG.md +93 -0
- package/README.md +3 -3
- package/lib/browser/accounts/basicUserAccountSubscriber.d.ts +18 -0
- package/lib/browser/accounts/basicUserAccountSubscriber.js +18 -0
- package/lib/browser/accounts/basicUserStatsAccountSubscriber.d.ts +18 -0
- package/lib/browser/accounts/basicUserStatsAccountSubscriber.js +18 -0
- package/lib/browser/accounts/bulkAccountLoader.d.ts +52 -0
- package/lib/browser/accounts/bulkAccountLoader.js +51 -0
- package/lib/browser/accounts/bulkUserStatsSubscription.d.ts +9 -2
- package/lib/browser/accounts/bulkUserStatsSubscription.js +9 -2
- package/lib/browser/accounts/bulkUserSubscription.d.ts +8 -2
- package/lib/browser/accounts/bulkUserSubscription.js +8 -2
- package/lib/browser/accounts/customizedCadenceBulkAccountLoader.d.ts +37 -0
- package/lib/browser/accounts/customizedCadenceBulkAccountLoader.js +37 -0
- package/lib/browser/accounts/fetch.d.ts +59 -2
- package/lib/browser/accounts/fetch.js +57 -2
- package/lib/browser/accounts/grpcAccountSubscriber.d.ts +30 -0
- package/lib/browser/accounts/grpcAccountSubscriber.js +30 -0
- package/lib/browser/accounts/grpcInsuranceFundStakeAccountSubscriber.d.ts +16 -0
- package/lib/browser/accounts/grpcInsuranceFundStakeAccountSubscriber.js +16 -0
- package/lib/browser/accounts/grpcMultiAccountSubscriber.d.ts +60 -1
- package/lib/browser/accounts/grpcMultiAccountSubscriber.js +118 -37
- package/lib/browser/accounts/grpcMultiUserAccountSubscriber.d.ts +32 -0
- package/lib/browser/accounts/grpcMultiUserAccountSubscriber.js +40 -12
- package/lib/browser/accounts/grpcProgramAccountSubscriber.d.ts +33 -0
- package/lib/browser/accounts/grpcProgramAccountSubscriber.js +33 -0
- package/lib/browser/accounts/grpcUserAccountSubscriber.d.ts +15 -0
- package/lib/browser/accounts/grpcUserAccountSubscriber.js +15 -0
- package/lib/browser/accounts/grpcUserStatsAccountSubscriber.d.ts +15 -0
- package/lib/browser/accounts/grpcUserStatsAccountSubscriber.js +15 -0
- package/lib/browser/accounts/grpcVelocityClientAccountSubscriber.d.ts +41 -0
- package/lib/browser/accounts/grpcVelocityClientAccountSubscriber.js +41 -0
- package/lib/browser/accounts/grpcVelocityClientAccountSubscriberV2.d.ts +116 -0
- package/lib/browser/accounts/grpcVelocityClientAccountSubscriberV2.js +152 -1
- package/lib/browser/accounts/laserProgramAccountSubscriber.d.ts +34 -0
- package/lib/browser/accounts/laserProgramAccountSubscriber.js +34 -0
- package/lib/browser/accounts/oneShotUserAccountSubscriber.d.ts +19 -0
- package/lib/browser/accounts/oneShotUserAccountSubscriber.js +19 -0
- package/lib/browser/accounts/oneShotUserStatsAccountSubscriber.d.ts +19 -0
- package/lib/browser/accounts/oneShotUserStatsAccountSubscriber.js +19 -0
- package/lib/browser/accounts/pollingInsuranceFundStakeAccountSubscriber.d.ts +31 -0
- package/lib/browser/accounts/pollingInsuranceFundStakeAccountSubscriber.js +31 -0
- package/lib/browser/accounts/pollingOracleAccountSubscriber.d.ts +19 -0
- package/lib/browser/accounts/pollingOracleAccountSubscriber.js +21 -2
- package/lib/browser/accounts/pollingTokenAccountSubscriber.d.ts +22 -0
- package/lib/browser/accounts/pollingTokenAccountSubscriber.js +22 -0
- package/lib/browser/accounts/pollingUserAccountSubscriber.d.ts +32 -0
- package/lib/browser/accounts/pollingUserAccountSubscriber.js +32 -0
- package/lib/browser/accounts/pollingUserStatsAccountSubscriber.d.ts +22 -0
- package/lib/browser/accounts/pollingUserStatsAccountSubscriber.js +22 -0
- package/lib/browser/accounts/pollingVelocityClientAccountSubscriber.d.ts +83 -0
- package/lib/browser/accounts/pollingVelocityClientAccountSubscriber.js +84 -1
- package/lib/browser/accounts/testBulkAccountLoader.d.ts +8 -0
- package/lib/browser/accounts/testBulkAccountLoader.js +8 -0
- package/lib/browser/accounts/types.d.ts +149 -0
- package/lib/browser/accounts/types.js +13 -0
- package/lib/browser/accounts/utils.d.ts +18 -0
- package/lib/browser/accounts/utils.js +32 -16
- package/lib/browser/accounts/webSocketAccountSubscriber.d.ts +41 -0
- package/lib/browser/accounts/webSocketAccountSubscriber.js +41 -0
- package/lib/browser/accounts/webSocketAccountSubscriberV2.d.ts +31 -0
- package/lib/browser/accounts/webSocketAccountSubscriberV2.js +31 -23
- package/lib/browser/accounts/webSocketInsuranceFundStakeAccountSubscriber.d.ts +27 -0
- package/lib/browser/accounts/webSocketInsuranceFundStakeAccountSubscriber.js +27 -0
- package/lib/browser/accounts/webSocketProgramAccountSubscriber.d.ts +36 -0
- package/lib/browser/accounts/webSocketProgramAccountSubscriber.js +36 -0
- package/lib/browser/accounts/webSocketProgramAccountSubscriberV2.d.ts +21 -0
- package/lib/browser/accounts/webSocketProgramAccountSubscriberV2.js +25 -0
- package/lib/browser/accounts/webSocketProgramAccountsSubscriberV2.d.ts +21 -0
- package/lib/browser/accounts/webSocketProgramAccountsSubscriberV2.js +21 -0
- package/lib/browser/accounts/webSocketUserAccountSubscriber.d.ts +26 -0
- package/lib/browser/accounts/webSocketUserAccountSubscriber.js +26 -0
- package/lib/browser/accounts/webSocketUserStatsAccountSubsriber.d.ts +20 -0
- package/lib/browser/accounts/webSocketUserStatsAccountSubsriber.js +20 -0
- package/lib/browser/accounts/webSocketVelocityClientAccountSubscriber.d.ts +121 -0
- package/lib/browser/accounts/webSocketVelocityClientAccountSubscriber.js +123 -2
- package/lib/browser/accounts/webSocketVelocityClientAccountSubscriberV2.d.ts +96 -0
- package/lib/browser/accounts/webSocketVelocityClientAccountSubscriberV2.js +108 -0
- package/lib/browser/accounts/websocketProgramUserAccountSubscriber.d.ts +28 -0
- package/lib/browser/accounts/websocketProgramUserAccountSubscriber.js +33 -0
- package/lib/browser/addresses/marketAddresses.d.ts +10 -0
- package/lib/browser/addresses/marketAddresses.js +10 -0
- package/lib/browser/addresses/pda.d.ts +214 -2
- package/lib/browser/addresses/pda.js +217 -5
- package/lib/browser/adminClient.d.ts +2139 -5
- package/lib/browser/adminClient.js +2173 -11
- package/lib/browser/auctionSubscriber/auctionSubscriber.d.ts +15 -0
- package/lib/browser/auctionSubscriber/auctionSubscriber.js +15 -0
- package/lib/browser/auctionSubscriber/auctionSubscriberGrpc.d.ts +19 -0
- package/lib/browser/auctionSubscriber/auctionSubscriberGrpc.js +19 -0
- package/lib/browser/auctionSubscriber/index.d.ts +6 -0
- package/lib/browser/auctionSubscriber/index.js +6 -0
- package/lib/browser/auctionSubscriber/types.d.ts +7 -0
- package/lib/browser/blockhashSubscriber/BlockhashSubscriber.d.ts +33 -0
- package/lib/browser/blockhashSubscriber/BlockhashSubscriber.js +33 -0
- package/lib/browser/blockhashSubscriber/index.d.ts +5 -0
- package/lib/browser/blockhashSubscriber/index.js +5 -0
- package/lib/browser/blockhashSubscriber/types.d.ts +5 -0
- package/lib/browser/clock/clockSubscriber.d.ts +24 -0
- package/lib/browser/clock/clockSubscriber.js +22 -0
- package/lib/browser/config.d.ts +58 -4
- package/lib/browser/config.js +88 -21
- package/lib/browser/constants/numericConstants.d.ts +67 -0
- package/lib/browser/constants/numericConstants.js +68 -1
- package/lib/browser/constants/perpMarkets.d.ts +10 -0
- package/lib/browser/constants/perpMarkets.js +40 -908
- package/lib/browser/constants/spotMarkets.d.ts +13 -0
- package/lib/browser/constants/spotMarkets.js +16 -742
- package/lib/browser/constants/txConstants.d.ts +1 -0
- package/lib/browser/constants/txConstants.js +1 -0
- package/lib/browser/core/VelocityCore.d.ts +285 -8
- package/lib/browser/core/VelocityCore.js +281 -8
- package/lib/browser/core/instructions/deposit.d.ts +22 -0
- package/lib/browser/core/instructions/deposit.js +22 -0
- package/lib/browser/core/instructions/fill.d.ts +17 -0
- package/lib/browser/core/instructions/fill.js +17 -0
- package/lib/browser/core/instructions/funding.d.ts +12 -0
- package/lib/browser/core/instructions/funding.js +12 -0
- package/lib/browser/core/instructions/liquidation.d.ts +18 -0
- package/lib/browser/core/instructions/liquidation.js +18 -0
- package/lib/browser/core/instructions/orders.d.ts +28 -0
- package/lib/browser/core/instructions/orders.js +28 -0
- package/lib/browser/core/instructions/perpOrders.d.ts +106 -0
- package/lib/browser/core/instructions/perpOrders.js +106 -0
- package/lib/browser/core/instructions/settlement.d.ts +14 -0
- package/lib/browser/core/instructions/settlement.js +14 -0
- package/lib/browser/core/instructions/trigger.d.ts +15 -0
- package/lib/browser/core/instructions/trigger.js +15 -0
- package/lib/browser/core/instructions/withdraw.d.ts +21 -0
- package/lib/browser/core/instructions/withdraw.js +21 -0
- package/lib/browser/core/remainingAccounts.d.ts +47 -3
- package/lib/browser/core/remainingAccounts.js +20 -0
- package/lib/browser/core/signedMsg.d.ts +38 -0
- package/lib/browser/core/signedMsg.js +33 -0
- package/lib/browser/decode/customCoder.d.ts +39 -3
- package/lib/browser/decode/customCoder.js +45 -3
- package/lib/browser/decode/user.d.ts +22 -0
- package/lib/browser/decode/user.js +22 -0
- package/lib/browser/dlob/DLOB.d.ts +502 -53
- package/lib/browser/dlob/DLOB.js +540 -98
- package/lib/browser/dlob/DLOBNode.d.ts +86 -4
- package/lib/browser/dlob/DLOBNode.js +37 -4
- package/lib/browser/dlob/DLOBSubscriber.d.ts +39 -12
- package/lib/browser/dlob/DLOBSubscriber.js +42 -12
- package/lib/browser/dlob/NodeList.d.ts +69 -0
- package/lib/browser/dlob/NodeList.js +66 -0
- package/lib/browser/dlob/orderBookLevels.d.ts +106 -13
- package/lib/browser/dlob/orderBookLevels.js +84 -14
- package/lib/browser/dlob/types.d.ts +15 -0
- package/lib/browser/events/eventList.d.ts +14 -0
- package/lib/browser/events/eventList.js +14 -0
- package/lib/browser/events/eventSubscriber.d.ts +87 -10
- package/lib/browser/events/eventSubscriber.js +93 -8
- package/lib/browser/events/eventsServerLogProvider.d.ts +22 -0
- package/lib/browser/events/eventsServerLogProvider.js +27 -0
- package/lib/browser/events/fetchLogs.d.ts +31 -0
- package/lib/browser/events/fetchLogs.js +46 -1
- package/lib/browser/events/parse.d.ts +23 -0
- package/lib/browser/events/parse.js +23 -0
- package/lib/browser/events/pollingLogProvider.d.ts +24 -0
- package/lib/browser/events/pollingLogProvider.js +24 -0
- package/lib/browser/events/sort.d.ts +11 -0
- package/lib/browser/events/sort.js +12 -0
- package/lib/browser/events/txEventCache.d.ts +13 -3
- package/lib/browser/events/txEventCache.js +19 -7
- package/lib/browser/events/types.d.ts +118 -2
- package/lib/browser/events/types.js +11 -0
- package/lib/browser/events/webSocketLogProvider.d.ts +23 -0
- package/lib/browser/events/webSocketLogProvider.js +28 -0
- package/lib/browser/factory/oracleClient.js +2 -2
- package/lib/browser/idl/velocity.d.ts +50 -1
- package/lib/browser/idl/velocity.json +50 -1
- package/lib/browser/keypair.d.ts +8 -0
- package/lib/browser/keypair.js +8 -0
- package/lib/browser/marginCalculation.d.ts +134 -2
- package/lib/browser/marginCalculation.js +121 -0
- package/lib/browser/math/amm.d.ts +348 -29
- package/lib/browser/math/amm.js +310 -32
- package/lib/browser/math/auction.d.ts +95 -19
- package/lib/browser/math/auction.js +118 -28
- package/lib/browser/math/bankruptcy.d.ts +46 -0
- package/lib/browser/math/bankruptcy.js +89 -1
- package/lib/browser/math/builder.d.ts +64 -8
- package/lib/browser/math/builder.js +71 -9
- package/lib/browser/math/conversion.d.ts +21 -0
- package/lib/browser/math/conversion.js +21 -0
- package/lib/browser/math/exchangeStatus.d.ts +92 -0
- package/lib/browser/math/exchangeStatus.js +111 -1
- package/lib/browser/math/funding.d.ts +57 -20
- package/lib/browser/math/funding.js +63 -23
- package/lib/browser/math/insurance.d.ts +62 -0
- package/lib/browser/math/insurance.js +62 -0
- package/lib/browser/math/liquidation.d.ts +127 -11
- package/lib/browser/math/liquidation.js +182 -19
- package/lib/browser/math/margin.d.ts +79 -13
- package/lib/browser/math/margin.js +80 -14
- package/lib/browser/math/market.d.ts +135 -15
- package/lib/browser/math/market.js +145 -17
- package/lib/browser/math/oracles.d.ts +113 -0
- package/lib/browser/math/oracles.js +118 -1
- package/lib/browser/math/orders.d.ts +115 -7
- package/lib/browser/math/orders.js +133 -18
- package/lib/browser/math/position.d.ts +80 -33
- package/lib/browser/math/position.js +80 -33
- package/lib/browser/math/repeg.d.ts +48 -10
- package/lib/browser/math/repeg.js +48 -10
- package/lib/browser/math/spotBalance.d.ts +200 -5
- package/lib/browser/math/spotBalance.js +239 -10
- package/lib/browser/math/spotMarket.d.ts +36 -3
- package/lib/browser/math/spotMarket.js +36 -3
- package/lib/browser/math/spotPosition.d.ts +72 -0
- package/lib/browser/math/spotPosition.js +62 -0
- package/lib/browser/math/state.d.ts +31 -0
- package/lib/browser/math/state.js +32 -1
- package/lib/browser/math/superStake.d.ts +126 -2
- package/lib/browser/math/superStake.js +123 -3
- package/lib/browser/math/tiers.d.ts +29 -0
- package/lib/browser/math/tiers.js +29 -0
- package/lib/browser/math/trade.d.ts +102 -51
- package/lib/browser/math/trade.js +101 -55
- package/lib/browser/math/utils.d.ts +71 -9
- package/lib/browser/math/utils.js +71 -9
- package/lib/browser/memcmp.d.ts +94 -0
- package/lib/browser/memcmp.js +129 -7
- package/lib/browser/oracles/oracleClientCache.d.ts +16 -0
- package/lib/browser/oracles/oracleClientCache.js +16 -0
- package/lib/browser/oracles/oracleId.d.ts +31 -0
- package/lib/browser/oracles/oracleId.js +39 -8
- package/lib/browser/oracles/prelaunchOracleClient.d.ts +20 -0
- package/lib/browser/oracles/prelaunchOracleClient.js +20 -0
- package/lib/browser/oracles/pythClient.d.ts +31 -0
- package/lib/browser/oracles/pythClient.js +32 -1
- package/lib/browser/oracles/pythLazerClient.d.ts +34 -0
- package/lib/browser/oracles/pythLazerClient.js +35 -1
- package/lib/browser/oracles/quoteAssetOracleClient.d.ts +18 -0
- package/lib/browser/oracles/quoteAssetOracleClient.js +18 -0
- package/lib/browser/oracles/strictOraclePrice.d.ts +21 -0
- package/lib/browser/oracles/strictOraclePrice.js +21 -0
- package/lib/browser/oracles/types.d.ts +45 -0
- package/lib/browser/oracles/utils.d.ts +20 -0
- package/lib/browser/oracles/utils.js +20 -0
- package/lib/browser/orderParams.d.ts +42 -4
- package/lib/browser/orderParams.js +42 -4
- package/lib/browser/orderSubscriber/OrderSubscriber.d.ts +56 -0
- package/lib/browser/orderSubscriber/OrderSubscriber.js +67 -2
- package/lib/browser/orderSubscriber/PollingSubscription.d.ts +11 -0
- package/lib/browser/orderSubscriber/PollingSubscription.js +11 -0
- package/lib/browser/orderSubscriber/WebsocketSubscription.d.ts +18 -0
- package/lib/browser/orderSubscriber/WebsocketSubscription.js +18 -0
- package/lib/browser/orderSubscriber/grpcSubscription.d.ts +16 -0
- package/lib/browser/orderSubscriber/grpcSubscription.js +16 -0
- package/lib/browser/orderSubscriber/types.d.ts +9 -0
- package/lib/browser/priorityFee/averageOverSlotsStrategy.d.ts +1 -0
- package/lib/browser/priorityFee/averageOverSlotsStrategy.js +1 -0
- package/lib/browser/priorityFee/averageStrategy.d.ts +1 -0
- package/lib/browser/priorityFee/averageStrategy.js +1 -0
- package/lib/browser/priorityFee/ewmaStrategy.d.ts +10 -0
- package/lib/browser/priorityFee/ewmaStrategy.js +10 -0
- package/lib/browser/priorityFee/heliusPriorityFeeMethod.d.ts +13 -0
- package/lib/browser/priorityFee/heliusPriorityFeeMethod.js +9 -2
- package/lib/browser/priorityFee/maxOverSlotsStrategy.d.ts +1 -0
- package/lib/browser/priorityFee/maxOverSlotsStrategy.js +1 -0
- package/lib/browser/priorityFee/maxStrategy.d.ts +1 -0
- package/lib/browser/priorityFee/maxStrategy.js +1 -0
- package/lib/browser/priorityFee/priorityFeeSubscriber.d.ts +39 -0
- package/lib/browser/priorityFee/priorityFeeSubscriber.js +39 -0
- package/lib/browser/priorityFee/priorityFeeSubscriberMap.d.ts +20 -1
- package/lib/browser/priorityFee/priorityFeeSubscriberMap.js +21 -2
- package/lib/browser/priorityFee/solanaPriorityFeeMethod.d.ts +12 -0
- package/lib/browser/priorityFee/solanaPriorityFeeMethod.js +10 -0
- package/lib/browser/priorityFee/types.d.ts +32 -0
- package/lib/browser/priorityFee/types.js +5 -0
- package/lib/browser/priorityFee/velocityPriorityFeeMethod.d.ts +11 -0
- package/lib/browser/priorityFee/velocityPriorityFeeMethod.js +8 -0
- package/lib/browser/slot/SlotSubscriber.d.ts +18 -0
- package/lib/browser/slot/SlotSubscriber.js +16 -0
- package/lib/browser/slot/SlothashSubscriber.d.ts +26 -0
- package/lib/browser/slot/SlothashSubscriber.js +25 -1
- package/lib/browser/swift/swiftOrderSubscriber.js +2 -2
- package/lib/browser/tokenFaucet.d.ts +2 -2
- package/lib/browser/tokenFaucet.js +11 -4
- package/lib/browser/tx/baseTxSender.d.ts +163 -0
- package/lib/browser/tx/baseTxSender.js +174 -6
- package/lib/browser/tx/blockhashFetcher/baseBlockhashFetcher.d.ts +12 -0
- package/lib/browser/tx/blockhashFetcher/baseBlockhashFetcher.js +12 -0
- package/lib/browser/tx/blockhashFetcher/cachedBlockhashFetcher.d.ts +15 -0
- package/lib/browser/tx/blockhashFetcher/cachedBlockhashFetcher.js +15 -0
- package/lib/browser/tx/blockhashFetcher/types.d.ts +4 -0
- package/lib/browser/tx/fastSingleTxSender.d.ts +47 -0
- package/lib/browser/tx/fastSingleTxSender.js +48 -1
- package/lib/browser/tx/forwardOnlyTxSender.d.ts +48 -0
- package/lib/browser/tx/forwardOnlyTxSender.js +48 -0
- package/lib/browser/tx/reportTransactionError.d.ts +18 -6
- package/lib/browser/tx/reportTransactionError.js +18 -6
- package/lib/browser/tx/retryTxSender.d.ts +40 -0
- package/lib/browser/tx/retryTxSender.js +39 -0
- package/lib/browser/tx/txHandler.d.ts +146 -35
- package/lib/browser/tx/txHandler.js +132 -32
- package/lib/browser/tx/txParamProcessor.d.ts +47 -0
- package/lib/browser/tx/txParamProcessor.js +47 -0
- package/lib/browser/tx/types.d.ts +46 -0
- package/lib/browser/tx/types.js +5 -0
- package/lib/browser/tx/utils.d.ts +26 -0
- package/lib/browser/tx/utils.js +26 -0
- package/lib/browser/tx/whileValidTxSender.d.ts +82 -0
- package/lib/browser/tx/whileValidTxSender.js +81 -0
- package/lib/browser/types.d.ts +786 -13
- package/lib/browser/types.js +133 -9
- package/lib/browser/user.d.ts +645 -84
- package/lib/browser/user.js +779 -96
- package/lib/browser/userMap/PollingSubscription.d.ts +10 -0
- package/lib/browser/userMap/PollingSubscription.js +14 -2
- package/lib/browser/userMap/WebsocketSubscription.d.ts +9 -0
- package/lib/browser/userMap/WebsocketSubscription.js +9 -0
- package/lib/browser/userMap/grpcSubscription.d.ts +8 -0
- package/lib/browser/userMap/grpcSubscription.js +8 -0
- package/lib/browser/userMap/referrerMap.d.ts +72 -2
- package/lib/browser/userMap/referrerMap.js +84 -2
- package/lib/browser/userMap/revenueShareEscrowMap.d.ts +37 -10
- package/lib/browser/userMap/revenueShareEscrowMap.js +38 -11
- package/lib/browser/userMap/userMap.d.ts +81 -3
- package/lib/browser/userMap/userMap.js +81 -4
- package/lib/browser/userMap/userMapConfig.d.ts +23 -0
- package/lib/browser/userMap/userStatsMap.d.ts +22 -0
- package/lib/browser/userMap/userStatsMap.js +22 -0
- package/lib/browser/userName.d.ts +16 -0
- package/lib/browser/userName.js +16 -0
- package/lib/browser/userStats.d.ts +28 -1
- package/lib/browser/userStats.js +28 -1
- package/lib/browser/util/TransactionConfirmationManager.d.ts +33 -0
- package/lib/browser/util/TransactionConfirmationManager.js +33 -0
- package/lib/browser/util/chainClock.d.ts +24 -0
- package/lib/browser/util/chainClock.js +20 -0
- package/lib/browser/util/computeUnits.d.ts +32 -0
- package/lib/browser/util/computeUnits.js +32 -0
- package/lib/browser/util/digest.d.ts +17 -0
- package/lib/browser/util/digest.js +17 -0
- package/lib/browser/util/ed25519Utils.d.ts +12 -2
- package/lib/browser/util/ed25519Utils.js +12 -2
- package/lib/browser/util/promiseTimeout.d.ts +9 -0
- package/lib/browser/util/promiseTimeout.js +9 -0
- package/lib/browser/velocityClient.d.ts +3323 -216
- package/lib/browser/velocityClient.js +3428 -249
- package/lib/browser/wallet.d.ts +37 -0
- package/lib/browser/wallet.js +37 -0
- package/lib/node/accounts/basicUserAccountSubscriber.d.ts +18 -0
- package/lib/node/accounts/basicUserAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/basicUserAccountSubscriber.js +18 -0
- package/lib/node/accounts/basicUserStatsAccountSubscriber.d.ts +18 -0
- package/lib/node/accounts/basicUserStatsAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/basicUserStatsAccountSubscriber.js +18 -0
- package/lib/node/accounts/bulkAccountLoader.d.ts +52 -0
- package/lib/node/accounts/bulkAccountLoader.d.ts.map +1 -1
- package/lib/node/accounts/bulkAccountLoader.js +51 -0
- package/lib/node/accounts/bulkUserStatsSubscription.d.ts +9 -2
- package/lib/node/accounts/bulkUserStatsSubscription.d.ts.map +1 -1
- package/lib/node/accounts/bulkUserStatsSubscription.js +9 -2
- package/lib/node/accounts/bulkUserSubscription.d.ts +8 -2
- package/lib/node/accounts/bulkUserSubscription.d.ts.map +1 -1
- package/lib/node/accounts/bulkUserSubscription.js +8 -2
- package/lib/node/accounts/customizedCadenceBulkAccountLoader.d.ts +37 -0
- package/lib/node/accounts/customizedCadenceBulkAccountLoader.d.ts.map +1 -1
- package/lib/node/accounts/customizedCadenceBulkAccountLoader.js +37 -0
- package/lib/node/accounts/fetch.d.ts +59 -2
- package/lib/node/accounts/fetch.d.ts.map +1 -1
- package/lib/node/accounts/fetch.js +57 -2
- package/lib/node/accounts/grpcAccountSubscriber.d.ts +30 -0
- package/lib/node/accounts/grpcAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/grpcAccountSubscriber.js +30 -0
- package/lib/node/accounts/grpcInsuranceFundStakeAccountSubscriber.d.ts +16 -0
- package/lib/node/accounts/grpcInsuranceFundStakeAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/grpcInsuranceFundStakeAccountSubscriber.js +16 -0
- package/lib/node/accounts/grpcMultiAccountSubscriber.d.ts +60 -1
- package/lib/node/accounts/grpcMultiAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/grpcMultiAccountSubscriber.js +118 -37
- package/lib/node/accounts/grpcMultiUserAccountSubscriber.d.ts +32 -0
- package/lib/node/accounts/grpcMultiUserAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/grpcMultiUserAccountSubscriber.js +40 -12
- package/lib/node/accounts/grpcProgramAccountSubscriber.d.ts +33 -0
- package/lib/node/accounts/grpcProgramAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/grpcProgramAccountSubscriber.js +33 -0
- package/lib/node/accounts/grpcUserAccountSubscriber.d.ts +15 -0
- package/lib/node/accounts/grpcUserAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/grpcUserAccountSubscriber.js +15 -0
- package/lib/node/accounts/grpcUserStatsAccountSubscriber.d.ts +15 -0
- package/lib/node/accounts/grpcUserStatsAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/grpcUserStatsAccountSubscriber.js +15 -0
- package/lib/node/accounts/grpcVelocityClientAccountSubscriber.d.ts +41 -0
- package/lib/node/accounts/grpcVelocityClientAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/grpcVelocityClientAccountSubscriber.js +41 -0
- package/lib/node/accounts/grpcVelocityClientAccountSubscriberV2.d.ts +116 -0
- package/lib/node/accounts/grpcVelocityClientAccountSubscriberV2.d.ts.map +1 -1
- package/lib/node/accounts/grpcVelocityClientAccountSubscriberV2.js +152 -1
- package/lib/node/accounts/laserProgramAccountSubscriber.d.ts +34 -0
- package/lib/node/accounts/laserProgramAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/laserProgramAccountSubscriber.js +34 -0
- package/lib/node/accounts/oneShotUserAccountSubscriber.d.ts +19 -0
- package/lib/node/accounts/oneShotUserAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/oneShotUserAccountSubscriber.js +19 -0
- package/lib/node/accounts/oneShotUserStatsAccountSubscriber.d.ts +19 -0
- package/lib/node/accounts/oneShotUserStatsAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/oneShotUserStatsAccountSubscriber.js +19 -0
- package/lib/node/accounts/pollingInsuranceFundStakeAccountSubscriber.d.ts +31 -0
- package/lib/node/accounts/pollingInsuranceFundStakeAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/pollingInsuranceFundStakeAccountSubscriber.js +31 -0
- package/lib/node/accounts/pollingOracleAccountSubscriber.d.ts +19 -0
- package/lib/node/accounts/pollingOracleAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/pollingOracleAccountSubscriber.js +21 -2
- package/lib/node/accounts/pollingTokenAccountSubscriber.d.ts +22 -0
- package/lib/node/accounts/pollingTokenAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/pollingTokenAccountSubscriber.js +22 -0
- package/lib/node/accounts/pollingUserAccountSubscriber.d.ts +32 -0
- package/lib/node/accounts/pollingUserAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/pollingUserAccountSubscriber.js +32 -0
- package/lib/node/accounts/pollingUserStatsAccountSubscriber.d.ts +22 -0
- package/lib/node/accounts/pollingUserStatsAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/pollingUserStatsAccountSubscriber.js +22 -0
- package/lib/node/accounts/pollingVelocityClientAccountSubscriber.d.ts +83 -0
- package/lib/node/accounts/pollingVelocityClientAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/pollingVelocityClientAccountSubscriber.js +84 -1
- package/lib/node/accounts/testBulkAccountLoader.d.ts +8 -0
- package/lib/node/accounts/testBulkAccountLoader.d.ts.map +1 -1
- package/lib/node/accounts/testBulkAccountLoader.js +8 -0
- package/lib/node/accounts/types.d.ts +149 -0
- package/lib/node/accounts/types.d.ts.map +1 -1
- package/lib/node/accounts/types.js +13 -0
- package/lib/node/accounts/utils.d.ts +18 -0
- package/lib/node/accounts/utils.d.ts.map +1 -1
- package/lib/node/accounts/utils.js +32 -16
- package/lib/node/accounts/webSocketAccountSubscriber.d.ts +41 -0
- package/lib/node/accounts/webSocketAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/webSocketAccountSubscriber.js +41 -0
- package/lib/node/accounts/webSocketAccountSubscriberV2.d.ts +31 -0
- package/lib/node/accounts/webSocketAccountSubscriberV2.d.ts.map +1 -1
- package/lib/node/accounts/webSocketAccountSubscriberV2.js +31 -23
- package/lib/node/accounts/webSocketInsuranceFundStakeAccountSubscriber.d.ts +27 -0
- package/lib/node/accounts/webSocketInsuranceFundStakeAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/webSocketInsuranceFundStakeAccountSubscriber.js +27 -0
- package/lib/node/accounts/webSocketProgramAccountSubscriber.d.ts +36 -0
- package/lib/node/accounts/webSocketProgramAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/webSocketProgramAccountSubscriber.js +36 -0
- package/lib/node/accounts/webSocketProgramAccountSubscriberV2.d.ts +21 -0
- package/lib/node/accounts/webSocketProgramAccountSubscriberV2.d.ts.map +1 -1
- package/lib/node/accounts/webSocketProgramAccountSubscriberV2.js +25 -0
- package/lib/node/accounts/webSocketProgramAccountsSubscriberV2.d.ts +21 -0
- package/lib/node/accounts/webSocketProgramAccountsSubscriberV2.d.ts.map +1 -1
- package/lib/node/accounts/webSocketProgramAccountsSubscriberV2.js +21 -0
- package/lib/node/accounts/webSocketUserAccountSubscriber.d.ts +26 -0
- package/lib/node/accounts/webSocketUserAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/webSocketUserAccountSubscriber.js +26 -0
- package/lib/node/accounts/webSocketUserStatsAccountSubsriber.d.ts +20 -0
- package/lib/node/accounts/webSocketUserStatsAccountSubsriber.d.ts.map +1 -1
- package/lib/node/accounts/webSocketUserStatsAccountSubsriber.js +20 -0
- package/lib/node/accounts/webSocketVelocityClientAccountSubscriber.d.ts +121 -0
- package/lib/node/accounts/webSocketVelocityClientAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/webSocketVelocityClientAccountSubscriber.js +123 -2
- package/lib/node/accounts/webSocketVelocityClientAccountSubscriberV2.d.ts +96 -0
- package/lib/node/accounts/webSocketVelocityClientAccountSubscriberV2.d.ts.map +1 -1
- package/lib/node/accounts/webSocketVelocityClientAccountSubscriberV2.js +108 -0
- package/lib/node/accounts/websocketProgramUserAccountSubscriber.d.ts +28 -0
- package/lib/node/accounts/websocketProgramUserAccountSubscriber.d.ts.map +1 -1
- package/lib/node/accounts/websocketProgramUserAccountSubscriber.js +33 -0
- package/lib/node/addresses/marketAddresses.d.ts +10 -0
- package/lib/node/addresses/marketAddresses.d.ts.map +1 -1
- package/lib/node/addresses/marketAddresses.js +10 -0
- package/lib/node/addresses/pda.d.ts +214 -2
- package/lib/node/addresses/pda.d.ts.map +1 -1
- package/lib/node/addresses/pda.js +217 -5
- package/lib/node/adminClient.d.ts +2139 -5
- package/lib/node/adminClient.d.ts.map +1 -1
- package/lib/node/adminClient.js +2173 -11
- package/lib/node/auctionSubscriber/auctionSubscriber.d.ts +15 -0
- package/lib/node/auctionSubscriber/auctionSubscriber.d.ts.map +1 -1
- package/lib/node/auctionSubscriber/auctionSubscriber.js +15 -0
- package/lib/node/auctionSubscriber/auctionSubscriberGrpc.d.ts +19 -0
- package/lib/node/auctionSubscriber/auctionSubscriberGrpc.d.ts.map +1 -1
- package/lib/node/auctionSubscriber/auctionSubscriberGrpc.js +19 -0
- package/lib/node/auctionSubscriber/index.d.ts +6 -0
- package/lib/node/auctionSubscriber/index.d.ts.map +1 -1
- package/lib/node/auctionSubscriber/index.js +6 -0
- package/lib/node/auctionSubscriber/types.d.ts +7 -0
- package/lib/node/auctionSubscriber/types.d.ts.map +1 -1
- package/lib/node/blockhashSubscriber/BlockhashSubscriber.d.ts +33 -0
- package/lib/node/blockhashSubscriber/BlockhashSubscriber.d.ts.map +1 -1
- package/lib/node/blockhashSubscriber/BlockhashSubscriber.js +33 -0
- package/lib/node/blockhashSubscriber/index.d.ts +5 -0
- package/lib/node/blockhashSubscriber/index.d.ts.map +1 -1
- package/lib/node/blockhashSubscriber/index.js +5 -0
- package/lib/node/blockhashSubscriber/types.d.ts +5 -0
- package/lib/node/blockhashSubscriber/types.d.ts.map +1 -1
- package/lib/node/clock/clockSubscriber.d.ts +24 -0
- package/lib/node/clock/clockSubscriber.d.ts.map +1 -1
- package/lib/node/clock/clockSubscriber.js +22 -0
- package/lib/node/config.d.ts +58 -4
- package/lib/node/config.d.ts.map +1 -1
- package/lib/node/config.js +88 -21
- package/lib/node/constants/numericConstants.d.ts +67 -0
- package/lib/node/constants/numericConstants.d.ts.map +1 -1
- package/lib/node/constants/numericConstants.js +68 -1
- package/lib/node/constants/perpMarkets.d.ts +10 -0
- package/lib/node/constants/perpMarkets.d.ts.map +1 -1
- package/lib/node/constants/perpMarkets.js +40 -908
- package/lib/node/constants/spotMarkets.d.ts +13 -0
- package/lib/node/constants/spotMarkets.d.ts.map +1 -1
- package/lib/node/constants/spotMarkets.js +16 -742
- package/lib/node/constants/txConstants.d.ts +1 -0
- package/lib/node/constants/txConstants.d.ts.map +1 -1
- package/lib/node/constants/txConstants.js +1 -0
- package/lib/node/core/VelocityCore.d.ts +285 -8
- package/lib/node/core/VelocityCore.d.ts.map +1 -1
- package/lib/node/core/VelocityCore.js +281 -8
- package/lib/node/core/instructions/deposit.d.ts +22 -0
- package/lib/node/core/instructions/deposit.d.ts.map +1 -1
- package/lib/node/core/instructions/deposit.js +22 -0
- package/lib/node/core/instructions/fill.d.ts +17 -0
- package/lib/node/core/instructions/fill.d.ts.map +1 -1
- package/lib/node/core/instructions/fill.js +17 -0
- package/lib/node/core/instructions/funding.d.ts +12 -0
- package/lib/node/core/instructions/funding.d.ts.map +1 -1
- package/lib/node/core/instructions/funding.js +12 -0
- package/lib/node/core/instructions/liquidation.d.ts +18 -0
- package/lib/node/core/instructions/liquidation.d.ts.map +1 -1
- package/lib/node/core/instructions/liquidation.js +18 -0
- package/lib/node/core/instructions/orders.d.ts +28 -0
- package/lib/node/core/instructions/orders.d.ts.map +1 -1
- package/lib/node/core/instructions/orders.js +28 -0
- package/lib/node/core/instructions/perpOrders.d.ts +106 -0
- package/lib/node/core/instructions/perpOrders.d.ts.map +1 -1
- package/lib/node/core/instructions/perpOrders.js +106 -0
- package/lib/node/core/instructions/settlement.d.ts +14 -0
- package/lib/node/core/instructions/settlement.d.ts.map +1 -1
- package/lib/node/core/instructions/settlement.js +14 -0
- package/lib/node/core/instructions/trigger.d.ts +15 -0
- package/lib/node/core/instructions/trigger.d.ts.map +1 -1
- package/lib/node/core/instructions/trigger.js +15 -0
- package/lib/node/core/instructions/withdraw.d.ts +21 -0
- package/lib/node/core/instructions/withdraw.d.ts.map +1 -1
- package/lib/node/core/instructions/withdraw.js +21 -0
- package/lib/node/core/remainingAccounts.d.ts +47 -3
- package/lib/node/core/remainingAccounts.d.ts.map +1 -1
- package/lib/node/core/remainingAccounts.js +20 -0
- package/lib/node/core/signedMsg.d.ts +38 -0
- package/lib/node/core/signedMsg.d.ts.map +1 -1
- package/lib/node/core/signedMsg.js +33 -0
- package/lib/node/decode/customCoder.d.ts +39 -3
- package/lib/node/decode/customCoder.d.ts.map +1 -1
- package/lib/node/decode/customCoder.js +45 -3
- package/lib/node/decode/user.d.ts +22 -0
- package/lib/node/decode/user.d.ts.map +1 -1
- package/lib/node/decode/user.js +22 -0
- package/lib/node/dlob/DLOB.d.ts +502 -53
- package/lib/node/dlob/DLOB.d.ts.map +1 -1
- package/lib/node/dlob/DLOB.js +540 -98
- package/lib/node/dlob/DLOBNode.d.ts +86 -4
- package/lib/node/dlob/DLOBNode.d.ts.map +1 -1
- package/lib/node/dlob/DLOBNode.js +37 -4
- package/lib/node/dlob/DLOBSubscriber.d.ts +39 -12
- package/lib/node/dlob/DLOBSubscriber.d.ts.map +1 -1
- package/lib/node/dlob/DLOBSubscriber.js +42 -12
- package/lib/node/dlob/NodeList.d.ts +69 -0
- package/lib/node/dlob/NodeList.d.ts.map +1 -1
- package/lib/node/dlob/NodeList.js +66 -0
- package/lib/node/dlob/orderBookLevels.d.ts +106 -13
- package/lib/node/dlob/orderBookLevels.d.ts.map +1 -1
- package/lib/node/dlob/orderBookLevels.js +84 -14
- package/lib/node/dlob/types.d.ts +15 -0
- package/lib/node/dlob/types.d.ts.map +1 -1
- package/lib/node/events/eventList.d.ts +14 -0
- package/lib/node/events/eventList.d.ts.map +1 -1
- package/lib/node/events/eventList.js +14 -0
- package/lib/node/events/eventSubscriber.d.ts +87 -10
- package/lib/node/events/eventSubscriber.d.ts.map +1 -1
- package/lib/node/events/eventSubscriber.js +93 -8
- package/lib/node/events/eventsServerLogProvider.d.ts +22 -0
- package/lib/node/events/eventsServerLogProvider.d.ts.map +1 -1
- package/lib/node/events/eventsServerLogProvider.js +27 -0
- package/lib/node/events/fetchLogs.d.ts +31 -0
- package/lib/node/events/fetchLogs.d.ts.map +1 -1
- package/lib/node/events/fetchLogs.js +46 -1
- package/lib/node/events/parse.d.ts +23 -0
- package/lib/node/events/parse.d.ts.map +1 -1
- package/lib/node/events/parse.js +23 -0
- package/lib/node/events/pollingLogProvider.d.ts +24 -0
- package/lib/node/events/pollingLogProvider.d.ts.map +1 -1
- package/lib/node/events/pollingLogProvider.js +24 -0
- package/lib/node/events/sort.d.ts +11 -0
- package/lib/node/events/sort.d.ts.map +1 -1
- package/lib/node/events/sort.js +12 -0
- package/lib/node/events/txEventCache.d.ts +13 -3
- package/lib/node/events/txEventCache.d.ts.map +1 -1
- package/lib/node/events/txEventCache.js +19 -7
- package/lib/node/events/types.d.ts +118 -2
- package/lib/node/events/types.d.ts.map +1 -1
- package/lib/node/events/types.js +11 -0
- package/lib/node/events/webSocketLogProvider.d.ts +23 -0
- package/lib/node/events/webSocketLogProvider.d.ts.map +1 -1
- package/lib/node/events/webSocketLogProvider.js +28 -0
- package/lib/node/factory/oracleClient.js +2 -2
- package/lib/node/idl/velocity.d.ts +50 -1
- package/lib/node/idl/velocity.d.ts.map +1 -1
- package/lib/node/idl/velocity.json +50 -1
- package/lib/node/keypair.d.ts +8 -0
- package/lib/node/keypair.d.ts.map +1 -1
- package/lib/node/keypair.js +8 -0
- package/lib/node/marginCalculation.d.ts +134 -2
- package/lib/node/marginCalculation.d.ts.map +1 -1
- package/lib/node/marginCalculation.js +121 -0
- package/lib/node/math/amm.d.ts +348 -29
- package/lib/node/math/amm.d.ts.map +1 -1
- package/lib/node/math/amm.js +310 -32
- package/lib/node/math/auction.d.ts +95 -19
- package/lib/node/math/auction.d.ts.map +1 -1
- package/lib/node/math/auction.js +118 -28
- package/lib/node/math/bankruptcy.d.ts +46 -0
- package/lib/node/math/bankruptcy.d.ts.map +1 -1
- package/lib/node/math/bankruptcy.js +89 -1
- package/lib/node/math/builder.d.ts +64 -8
- package/lib/node/math/builder.d.ts.map +1 -1
- package/lib/node/math/builder.js +71 -9
- package/lib/node/math/conversion.d.ts +21 -0
- package/lib/node/math/conversion.d.ts.map +1 -1
- package/lib/node/math/conversion.js +21 -0
- package/lib/node/math/exchangeStatus.d.ts +92 -0
- package/lib/node/math/exchangeStatus.d.ts.map +1 -1
- package/lib/node/math/exchangeStatus.js +111 -1
- package/lib/node/math/funding.d.ts +57 -20
- package/lib/node/math/funding.d.ts.map +1 -1
- package/lib/node/math/funding.js +63 -23
- package/lib/node/math/insurance.d.ts +62 -0
- package/lib/node/math/insurance.d.ts.map +1 -1
- package/lib/node/math/insurance.js +62 -0
- package/lib/node/math/liquidation.d.ts +127 -11
- package/lib/node/math/liquidation.d.ts.map +1 -1
- package/lib/node/math/liquidation.js +182 -19
- package/lib/node/math/margin.d.ts +79 -13
- package/lib/node/math/margin.d.ts.map +1 -1
- package/lib/node/math/margin.js +80 -14
- package/lib/node/math/market.d.ts +135 -15
- package/lib/node/math/market.d.ts.map +1 -1
- package/lib/node/math/market.js +145 -17
- package/lib/node/math/oracles.d.ts +113 -0
- package/lib/node/math/oracles.d.ts.map +1 -1
- package/lib/node/math/oracles.js +118 -1
- package/lib/node/math/orders.d.ts +115 -7
- package/lib/node/math/orders.d.ts.map +1 -1
- package/lib/node/math/orders.js +133 -18
- package/lib/node/math/position.d.ts +80 -33
- package/lib/node/math/position.d.ts.map +1 -1
- package/lib/node/math/position.js +80 -33
- package/lib/node/math/repeg.d.ts +48 -10
- package/lib/node/math/repeg.d.ts.map +1 -1
- package/lib/node/math/repeg.js +48 -10
- package/lib/node/math/spotBalance.d.ts +200 -5
- package/lib/node/math/spotBalance.d.ts.map +1 -1
- package/lib/node/math/spotBalance.js +239 -10
- package/lib/node/math/spotMarket.d.ts +36 -3
- package/lib/node/math/spotMarket.d.ts.map +1 -1
- package/lib/node/math/spotMarket.js +36 -3
- package/lib/node/math/spotPosition.d.ts +72 -0
- package/lib/node/math/spotPosition.d.ts.map +1 -1
- package/lib/node/math/spotPosition.js +62 -0
- package/lib/node/math/state.d.ts +31 -0
- package/lib/node/math/state.d.ts.map +1 -1
- package/lib/node/math/state.js +32 -1
- package/lib/node/math/superStake.d.ts +126 -2
- package/lib/node/math/superStake.d.ts.map +1 -1
- package/lib/node/math/superStake.js +123 -3
- package/lib/node/math/tiers.d.ts +29 -0
- package/lib/node/math/tiers.d.ts.map +1 -1
- package/lib/node/math/tiers.js +29 -0
- package/lib/node/math/trade.d.ts +102 -51
- package/lib/node/math/trade.d.ts.map +1 -1
- package/lib/node/math/trade.js +101 -55
- package/lib/node/math/utils.d.ts +71 -9
- package/lib/node/math/utils.d.ts.map +1 -1
- package/lib/node/math/utils.js +71 -9
- package/lib/node/memcmp.d.ts +94 -0
- package/lib/node/memcmp.d.ts.map +1 -1
- package/lib/node/memcmp.js +129 -7
- package/lib/node/oracles/oracleClientCache.d.ts +16 -0
- package/lib/node/oracles/oracleClientCache.d.ts.map +1 -1
- package/lib/node/oracles/oracleClientCache.js +16 -0
- package/lib/node/oracles/oracleId.d.ts +31 -0
- package/lib/node/oracles/oracleId.d.ts.map +1 -1
- package/lib/node/oracles/oracleId.js +39 -8
- package/lib/node/oracles/prelaunchOracleClient.d.ts +20 -0
- package/lib/node/oracles/prelaunchOracleClient.d.ts.map +1 -1
- package/lib/node/oracles/prelaunchOracleClient.js +20 -0
- package/lib/node/oracles/pythClient.d.ts +31 -0
- package/lib/node/oracles/pythClient.d.ts.map +1 -1
- package/lib/node/oracles/pythClient.js +32 -1
- package/lib/node/oracles/pythLazerClient.d.ts +34 -0
- package/lib/node/oracles/pythLazerClient.d.ts.map +1 -1
- package/lib/node/oracles/pythLazerClient.js +35 -1
- package/lib/node/oracles/quoteAssetOracleClient.d.ts +18 -0
- package/lib/node/oracles/quoteAssetOracleClient.d.ts.map +1 -1
- package/lib/node/oracles/quoteAssetOracleClient.js +18 -0
- package/lib/node/oracles/strictOraclePrice.d.ts +21 -0
- package/lib/node/oracles/strictOraclePrice.d.ts.map +1 -1
- package/lib/node/oracles/strictOraclePrice.js +21 -0
- package/lib/node/oracles/types.d.ts +45 -0
- package/lib/node/oracles/types.d.ts.map +1 -1
- package/lib/node/oracles/utils.d.ts +20 -0
- package/lib/node/oracles/utils.d.ts.map +1 -1
- package/lib/node/oracles/utils.js +20 -0
- package/lib/node/orderParams.d.ts +42 -4
- package/lib/node/orderParams.d.ts.map +1 -1
- package/lib/node/orderParams.js +42 -4
- package/lib/node/orderSubscriber/OrderSubscriber.d.ts +56 -0
- package/lib/node/orderSubscriber/OrderSubscriber.d.ts.map +1 -1
- package/lib/node/orderSubscriber/OrderSubscriber.js +67 -2
- package/lib/node/orderSubscriber/PollingSubscription.d.ts +11 -0
- package/lib/node/orderSubscriber/PollingSubscription.d.ts.map +1 -1
- package/lib/node/orderSubscriber/PollingSubscription.js +11 -0
- package/lib/node/orderSubscriber/WebsocketSubscription.d.ts +18 -0
- package/lib/node/orderSubscriber/WebsocketSubscription.d.ts.map +1 -1
- package/lib/node/orderSubscriber/WebsocketSubscription.js +18 -0
- package/lib/node/orderSubscriber/grpcSubscription.d.ts +16 -0
- package/lib/node/orderSubscriber/grpcSubscription.d.ts.map +1 -1
- package/lib/node/orderSubscriber/grpcSubscription.js +16 -0
- package/lib/node/orderSubscriber/types.d.ts +9 -0
- package/lib/node/orderSubscriber/types.d.ts.map +1 -1
- package/lib/node/priorityFee/averageOverSlotsStrategy.d.ts +1 -0
- package/lib/node/priorityFee/averageOverSlotsStrategy.d.ts.map +1 -1
- package/lib/node/priorityFee/averageOverSlotsStrategy.js +1 -0
- package/lib/node/priorityFee/averageStrategy.d.ts +1 -0
- package/lib/node/priorityFee/averageStrategy.d.ts.map +1 -1
- package/lib/node/priorityFee/averageStrategy.js +1 -0
- package/lib/node/priorityFee/ewmaStrategy.d.ts +10 -0
- package/lib/node/priorityFee/ewmaStrategy.d.ts.map +1 -1
- package/lib/node/priorityFee/ewmaStrategy.js +10 -0
- package/lib/node/priorityFee/heliusPriorityFeeMethod.d.ts +13 -0
- package/lib/node/priorityFee/heliusPriorityFeeMethod.d.ts.map +1 -1
- package/lib/node/priorityFee/heliusPriorityFeeMethod.js +9 -2
- package/lib/node/priorityFee/maxOverSlotsStrategy.d.ts +1 -0
- package/lib/node/priorityFee/maxOverSlotsStrategy.d.ts.map +1 -1
- package/lib/node/priorityFee/maxOverSlotsStrategy.js +1 -0
- package/lib/node/priorityFee/maxStrategy.d.ts +1 -0
- package/lib/node/priorityFee/maxStrategy.d.ts.map +1 -1
- package/lib/node/priorityFee/maxStrategy.js +1 -0
- package/lib/node/priorityFee/priorityFeeSubscriber.d.ts +39 -0
- package/lib/node/priorityFee/priorityFeeSubscriber.d.ts.map +1 -1
- package/lib/node/priorityFee/priorityFeeSubscriber.js +39 -0
- package/lib/node/priorityFee/priorityFeeSubscriberMap.d.ts +20 -1
- package/lib/node/priorityFee/priorityFeeSubscriberMap.d.ts.map +1 -1
- package/lib/node/priorityFee/priorityFeeSubscriberMap.js +21 -2
- package/lib/node/priorityFee/solanaPriorityFeeMethod.d.ts +12 -0
- package/lib/node/priorityFee/solanaPriorityFeeMethod.d.ts.map +1 -1
- package/lib/node/priorityFee/solanaPriorityFeeMethod.js +10 -0
- package/lib/node/priorityFee/types.d.ts +32 -0
- package/lib/node/priorityFee/types.d.ts.map +1 -1
- package/lib/node/priorityFee/types.js +5 -0
- package/lib/node/priorityFee/velocityPriorityFeeMethod.d.ts +11 -0
- package/lib/node/priorityFee/velocityPriorityFeeMethod.d.ts.map +1 -1
- package/lib/node/priorityFee/velocityPriorityFeeMethod.js +8 -0
- package/lib/node/slot/SlotSubscriber.d.ts +18 -0
- package/lib/node/slot/SlotSubscriber.d.ts.map +1 -1
- package/lib/node/slot/SlotSubscriber.js +16 -0
- package/lib/node/slot/SlothashSubscriber.d.ts +26 -0
- package/lib/node/slot/SlothashSubscriber.d.ts.map +1 -1
- package/lib/node/slot/SlothashSubscriber.js +25 -1
- package/lib/node/swift/swiftOrderSubscriber.js +2 -2
- package/lib/node/tokenFaucet.d.ts +2 -2
- package/lib/node/tokenFaucet.d.ts.map +1 -1
- package/lib/node/tokenFaucet.js +11 -4
- package/lib/node/tx/baseTxSender.d.ts +163 -0
- package/lib/node/tx/baseTxSender.d.ts.map +1 -1
- package/lib/node/tx/baseTxSender.js +174 -6
- package/lib/node/tx/blockhashFetcher/baseBlockhashFetcher.d.ts +12 -0
- package/lib/node/tx/blockhashFetcher/baseBlockhashFetcher.d.ts.map +1 -1
- package/lib/node/tx/blockhashFetcher/baseBlockhashFetcher.js +12 -0
- package/lib/node/tx/blockhashFetcher/cachedBlockhashFetcher.d.ts +15 -0
- package/lib/node/tx/blockhashFetcher/cachedBlockhashFetcher.d.ts.map +1 -1
- package/lib/node/tx/blockhashFetcher/cachedBlockhashFetcher.js +15 -0
- package/lib/node/tx/blockhashFetcher/types.d.ts +4 -0
- package/lib/node/tx/blockhashFetcher/types.d.ts.map +1 -1
- package/lib/node/tx/fastSingleTxSender.d.ts +47 -0
- package/lib/node/tx/fastSingleTxSender.d.ts.map +1 -1
- package/lib/node/tx/fastSingleTxSender.js +48 -1
- package/lib/node/tx/forwardOnlyTxSender.d.ts +48 -0
- package/lib/node/tx/forwardOnlyTxSender.d.ts.map +1 -1
- package/lib/node/tx/forwardOnlyTxSender.js +48 -0
- package/lib/node/tx/reportTransactionError.d.ts +18 -6
- package/lib/node/tx/reportTransactionError.d.ts.map +1 -1
- package/lib/node/tx/reportTransactionError.js +18 -6
- package/lib/node/tx/retryTxSender.d.ts +40 -0
- package/lib/node/tx/retryTxSender.d.ts.map +1 -1
- package/lib/node/tx/retryTxSender.js +39 -0
- package/lib/node/tx/txHandler.d.ts +146 -35
- package/lib/node/tx/txHandler.d.ts.map +1 -1
- package/lib/node/tx/txHandler.js +132 -32
- package/lib/node/tx/txParamProcessor.d.ts +47 -0
- package/lib/node/tx/txParamProcessor.d.ts.map +1 -1
- package/lib/node/tx/txParamProcessor.js +47 -0
- package/lib/node/tx/types.d.ts +46 -0
- package/lib/node/tx/types.d.ts.map +1 -1
- package/lib/node/tx/types.js +5 -0
- package/lib/node/tx/utils.d.ts +26 -0
- package/lib/node/tx/utils.d.ts.map +1 -1
- package/lib/node/tx/utils.js +26 -0
- package/lib/node/tx/whileValidTxSender.d.ts +82 -0
- package/lib/node/tx/whileValidTxSender.d.ts.map +1 -1
- package/lib/node/tx/whileValidTxSender.js +81 -0
- package/lib/node/types.d.ts +786 -13
- package/lib/node/types.d.ts.map +1 -1
- package/lib/node/types.js +133 -9
- package/lib/node/user.d.ts +645 -84
- package/lib/node/user.d.ts.map +1 -1
- package/lib/node/user.js +779 -96
- package/lib/node/userMap/PollingSubscription.d.ts +10 -0
- package/lib/node/userMap/PollingSubscription.d.ts.map +1 -1
- package/lib/node/userMap/PollingSubscription.js +14 -2
- package/lib/node/userMap/WebsocketSubscription.d.ts +9 -0
- package/lib/node/userMap/WebsocketSubscription.d.ts.map +1 -1
- package/lib/node/userMap/WebsocketSubscription.js +9 -0
- package/lib/node/userMap/grpcSubscription.d.ts +8 -0
- package/lib/node/userMap/grpcSubscription.d.ts.map +1 -1
- package/lib/node/userMap/grpcSubscription.js +8 -0
- package/lib/node/userMap/referrerMap.d.ts +72 -2
- package/lib/node/userMap/referrerMap.d.ts.map +1 -1
- package/lib/node/userMap/referrerMap.js +84 -2
- package/lib/node/userMap/revenueShareEscrowMap.d.ts +37 -10
- package/lib/node/userMap/revenueShareEscrowMap.d.ts.map +1 -1
- package/lib/node/userMap/revenueShareEscrowMap.js +38 -11
- package/lib/node/userMap/userMap.d.ts +81 -3
- package/lib/node/userMap/userMap.d.ts.map +1 -1
- package/lib/node/userMap/userMap.js +81 -4
- package/lib/node/userMap/userMapConfig.d.ts +23 -0
- package/lib/node/userMap/userMapConfig.d.ts.map +1 -1
- package/lib/node/userMap/userStatsMap.d.ts +22 -0
- package/lib/node/userMap/userStatsMap.d.ts.map +1 -1
- package/lib/node/userMap/userStatsMap.js +22 -0
- package/lib/node/userName.d.ts +16 -0
- package/lib/node/userName.d.ts.map +1 -1
- package/lib/node/userName.js +16 -0
- package/lib/node/userStats.d.ts +28 -1
- package/lib/node/userStats.d.ts.map +1 -1
- package/lib/node/userStats.js +28 -1
- package/lib/node/util/TransactionConfirmationManager.d.ts +33 -0
- package/lib/node/util/TransactionConfirmationManager.d.ts.map +1 -1
- package/lib/node/util/TransactionConfirmationManager.js +33 -0
- package/lib/node/util/chainClock.d.ts +24 -0
- package/lib/node/util/chainClock.d.ts.map +1 -1
- package/lib/node/util/chainClock.js +20 -0
- package/lib/node/util/computeUnits.d.ts +32 -0
- package/lib/node/util/computeUnits.d.ts.map +1 -1
- package/lib/node/util/computeUnits.js +32 -0
- package/lib/node/util/digest.d.ts +17 -0
- package/lib/node/util/digest.d.ts.map +1 -1
- package/lib/node/util/digest.js +17 -0
- package/lib/node/util/ed25519Utils.d.ts +12 -2
- package/lib/node/util/ed25519Utils.d.ts.map +1 -1
- package/lib/node/util/ed25519Utils.js +12 -2
- package/lib/node/util/promiseTimeout.d.ts +9 -0
- package/lib/node/util/promiseTimeout.d.ts.map +1 -1
- package/lib/node/util/promiseTimeout.js +9 -0
- package/lib/node/velocityClient.d.ts +3323 -216
- package/lib/node/velocityClient.d.ts.map +1 -1
- package/lib/node/velocityClient.js +3428 -249
- package/lib/node/wallet.d.ts +37 -0
- package/lib/node/wallet.d.ts.map +1 -1
- package/lib/node/wallet.js +37 -0
- package/package.json +2 -1
- package/src/accounts/basicUserAccountSubscriber.ts +18 -0
- package/src/accounts/basicUserStatsAccountSubscriber.ts +18 -0
- package/src/accounts/bulkAccountLoader.ts +52 -0
- package/src/accounts/bulkUserStatsSubscription.ts +9 -2
- package/src/accounts/bulkUserSubscription.ts +8 -2
- package/src/accounts/customizedCadenceBulkAccountLoader.ts +37 -0
- package/src/accounts/fetch.ts +59 -2
- package/src/accounts/grpcAccountSubscriber.ts +30 -0
- package/src/accounts/grpcInsuranceFundStakeAccountSubscriber.ts +16 -0
- package/src/accounts/grpcMultiAccountSubscriber.ts +121 -38
- package/src/accounts/grpcMultiUserAccountSubscriber.ts +49 -11
- package/src/accounts/grpcProgramAccountSubscriber.ts +33 -0
- package/src/accounts/grpcUserAccountSubscriber.ts +15 -0
- package/src/accounts/grpcUserStatsAccountSubscriber.ts +15 -0
- package/src/accounts/grpcVelocityClientAccountSubscriber.ts +41 -0
- package/src/accounts/grpcVelocityClientAccountSubscriberV2.ts +160 -1
- package/src/accounts/laserProgramAccountSubscriber.ts +34 -0
- package/src/accounts/oneShotUserAccountSubscriber.ts +19 -0
- package/src/accounts/oneShotUserStatsAccountSubscriber.ts +19 -0
- package/src/accounts/pollingInsuranceFundStakeAccountSubscriber.ts +31 -0
- package/src/accounts/pollingOracleAccountSubscriber.ts +21 -2
- package/src/accounts/pollingTokenAccountSubscriber.ts +22 -0
- package/src/accounts/pollingUserAccountSubscriber.ts +32 -0
- package/src/accounts/pollingUserStatsAccountSubscriber.ts +22 -0
- package/src/accounts/pollingVelocityClientAccountSubscriber.ts +84 -1
- package/src/accounts/testBulkAccountLoader.ts +8 -0
- package/src/accounts/types.ts +149 -0
- package/src/accounts/utils.ts +42 -24
- package/src/accounts/webSocketAccountSubscriber.ts +41 -0
- package/src/accounts/webSocketAccountSubscriberV2.ts +31 -23
- package/src/accounts/webSocketInsuranceFundStakeAccountSubscriber.ts +27 -0
- package/src/accounts/webSocketProgramAccountSubscriber.ts +36 -0
- package/src/accounts/webSocketProgramAccountSubscriberV2.ts +26 -0
- package/src/accounts/webSocketProgramAccountsSubscriberV2.ts +21 -0
- package/src/accounts/webSocketUserAccountSubscriber.ts +26 -0
- package/src/accounts/webSocketUserStatsAccountSubsriber.ts +20 -0
- package/src/accounts/webSocketVelocityClientAccountSubscriber.ts +127 -2
- package/src/accounts/webSocketVelocityClientAccountSubscriberV2.ts +110 -0
- package/src/accounts/websocketProgramUserAccountSubscriber.ts +33 -0
- package/src/addresses/marketAddresses.ts +10 -0
- package/src/addresses/pda.ts +228 -12
- package/src/adminClient.ts +2184 -4
- package/src/auctionSubscriber/auctionSubscriber.ts +15 -0
- package/src/auctionSubscriber/auctionSubscriberGrpc.ts +19 -0
- package/src/auctionSubscriber/index.ts +6 -0
- package/src/auctionSubscriber/types.ts +7 -0
- package/src/blockhashSubscriber/BlockhashSubscriber.ts +33 -0
- package/src/blockhashSubscriber/index.ts +5 -0
- package/src/blockhashSubscriber/types.ts +5 -4
- package/src/clock/clockSubscriber.ts +24 -0
- package/src/config.ts +109 -22
- package/src/constants/numericConstants.ts +70 -0
- package/src/constants/perpMarkets.ts +45 -960
- package/src/constants/spotMarkets.ts +23 -793
- package/src/constants/txConstants.ts +1 -0
- package/src/core/VelocityCore.ts +286 -8
- package/src/core/instructions/deposit.ts +22 -0
- package/src/core/instructions/fill.ts +17 -0
- package/src/core/instructions/funding.ts +12 -0
- package/src/core/instructions/liquidation.ts +18 -0
- package/src/core/instructions/orders.ts +28 -0
- package/src/core/instructions/perpOrders.ts +106 -0
- package/src/core/instructions/settlement.ts +14 -0
- package/src/core/instructions/trigger.ts +15 -0
- package/src/core/instructions/withdraw.ts +21 -0
- package/src/core/remainingAccounts.ts +47 -3
- package/src/core/signedMsg.ts +38 -0
- package/src/decode/customCoder.ts +46 -3
- package/src/decode/user.ts +22 -0
- package/src/dlob/DLOB.ts +668 -97
- package/src/dlob/DLOBNode.ts +98 -6
- package/src/dlob/DLOBSubscriber.ts +49 -12
- package/src/dlob/NodeList.ts +69 -0
- package/src/dlob/orderBookLevels.ts +108 -14
- package/src/dlob/types.ts +15 -0
- package/src/events/eventList.ts +14 -0
- package/src/events/eventSubscriber.ts +100 -19
- package/src/events/eventsServerLogProvider.ts +28 -0
- package/src/events/fetchLogs.ts +52 -2
- package/src/events/parse.ts +23 -0
- package/src/events/pollingLogProvider.ts +24 -0
- package/src/events/sort.ts +12 -0
- package/src/events/txEventCache.ts +19 -7
- package/src/events/types.ts +131 -11
- package/src/events/webSocketLogProvider.ts +29 -0
- package/src/factory/oracleClient.ts +2 -2
- package/src/idl/velocity.json +50 -1
- package/src/idl/velocity.ts +50 -1
- package/src/keypair.ts +8 -0
- package/src/marginCalculation.ts +153 -2
- package/src/math/amm.ts +371 -36
- package/src/math/auction.ts +139 -30
- package/src/math/bankruptcy.ts +104 -1
- package/src/math/builder.ts +74 -8
- package/src/math/conversion.ts +21 -0
- package/src/math/exchangeStatus.ts +125 -0
- package/src/math/funding.ts +63 -23
- package/src/math/insurance.ts +62 -0
- package/src/math/liquidation.ts +227 -17
- package/src/math/margin.ts +80 -14
- package/src/math/market.ts +148 -17
- package/src/math/oracles.ts +124 -0
- package/src/math/orders.ts +144 -18
- package/src/math/position.ts +80 -33
- package/src/math/repeg.ts +48 -10
- package/src/math/spotBalance.ts +252 -12
- package/src/math/spotMarket.ts +36 -3
- package/src/math/spotPosition.ts +72 -0
- package/src/math/state.ts +32 -1
- package/src/math/superStake.ts +126 -3
- package/src/math/tiers.ts +29 -0
- package/src/math/trade.ts +125 -55
- package/src/math/utils.ts +71 -9
- package/src/memcmp.ts +131 -7
- package/src/oracles/oracleClientCache.ts +16 -0
- package/src/oracles/oracleId.ts +39 -6
- package/src/oracles/prelaunchOracleClient.ts +20 -0
- package/src/oracles/pythClient.ts +32 -1
- package/src/oracles/pythLazerClient.ts +35 -1
- package/src/oracles/quoteAssetOracleClient.ts +18 -0
- package/src/oracles/strictOraclePrice.ts +21 -0
- package/src/oracles/types.ts +45 -0
- package/src/oracles/utils.ts +20 -0
- package/src/orderParams.ts +42 -4
- package/src/orderSubscriber/OrderSubscriber.ts +74 -2
- package/src/orderSubscriber/PollingSubscription.ts +11 -0
- package/src/orderSubscriber/WebsocketSubscription.ts +18 -0
- package/src/orderSubscriber/grpcSubscription.ts +16 -0
- package/src/orderSubscriber/types.ts +9 -0
- package/src/priorityFee/averageOverSlotsStrategy.ts +1 -0
- package/src/priorityFee/averageStrategy.ts +1 -0
- package/src/priorityFee/ewmaStrategy.ts +10 -0
- package/src/priorityFee/heliusPriorityFeeMethod.ts +13 -2
- package/src/priorityFee/maxOverSlotsStrategy.ts +1 -0
- package/src/priorityFee/maxStrategy.ts +1 -0
- package/src/priorityFee/priorityFeeSubscriber.ts +39 -0
- package/src/priorityFee/priorityFeeSubscriberMap.ts +21 -2
- package/src/priorityFee/solanaPriorityFeeMethod.ts +12 -0
- package/src/priorityFee/types.ts +33 -15
- package/src/priorityFee/velocityPriorityFeeMethod.ts +11 -0
- package/src/slot/SlotSubscriber.ts +18 -0
- package/src/slot/SlothashSubscriber.ts +27 -1
- package/src/swift/swiftOrderSubscriber.ts +2 -2
- package/src/tokenFaucet.ts +10 -7
- package/src/tx/baseTxSender.ts +185 -5
- package/src/tx/blockhashFetcher/baseBlockhashFetcher.ts +12 -0
- package/src/tx/blockhashFetcher/cachedBlockhashFetcher.ts +15 -0
- package/src/tx/blockhashFetcher/types.ts +4 -0
- package/src/tx/fastSingleTxSender.ts +58 -4
- package/src/tx/forwardOnlyTxSender.ts +48 -0
- package/src/tx/reportTransactionError.ts +18 -6
- package/src/tx/retryTxSender.ts +40 -0
- package/src/tx/txHandler.ts +146 -35
- package/src/tx/txParamProcessor.ts +47 -0
- package/src/tx/types.ts +46 -0
- package/src/tx/utils.ts +26 -0
- package/src/tx/whileValidTxSender.ts +82 -0
- package/src/types.ts +783 -22
- package/src/user.ts +869 -110
- package/src/userMap/PollingSubscription.ts +16 -2
- package/src/userMap/WebsocketSubscription.ts +9 -0
- package/src/userMap/grpcSubscription.ts +8 -0
- package/src/userMap/referrerMap.ts +92 -3
- package/src/userMap/revenueShareEscrowMap.ts +38 -11
- package/src/userMap/userMap.ts +82 -4
- package/src/userMap/userMapConfig.ts +23 -10
- package/src/userMap/userStatsMap.ts +22 -0
- package/src/userName.ts +16 -0
- package/src/userStats.ts +28 -1
- package/src/util/TransactionConfirmationManager.ts +33 -0
- package/src/util/chainClock.ts +24 -0
- package/src/util/computeUnits.ts +32 -0
- package/src/util/digest.ts +17 -0
- package/src/util/ed25519Utils.ts +12 -2
- package/src/util/promiseTimeout.ts +9 -0
- package/src/velocityClient.ts +3456 -254
- package/src/wallet.ts +37 -0
- package/tests/VelocityCore/builder_escrow.test.ts +121 -0
- package/tests/amm/test.ts +102 -0
- package/tests/builder/builderFee.test.ts +42 -0
- package/tests/dlob/helpers.ts +1 -0
- package/tests/dlob/tickSizeStandardization.ts +545 -0
- package/tests/exchangeStatus/test.ts +45 -0
- package/tests/liquidation/test.ts +125 -0
- package/tests/oracles/mmOracleGate.test.ts +379 -0
- package/tests/oracles/pythPegSnap.test.ts +76 -0
- package/tests/sdkParity/enumParity.test.ts +84 -0
- package/tests/sdkParity/marginCategoryFill.test.ts +143 -0
- package/tests/sdkParity/memcmpOffsets.test.ts +139 -0
- package/tests/spot/test.ts +55 -0
- package/tests/user/bankruptcy.ts +165 -0
- package/tests/user/feeAndWithdrawLimits.ts +284 -0
- package/tests/user/getMarginCalculation.ts +226 -1
- package/tests/user/test.ts +8 -4
|
@@ -1,16 +1,26 @@
|
|
|
1
1
|
import { UserMap } from './userMap';
|
|
2
|
+
/**
|
|
3
|
+
* `UserMap`'s `'polling'` subscription strategy: re-runs a full `userMap.sync()`
|
|
4
|
+
* on a fixed `setTimeout` interval (self-rescheduling, so syncs never overlap).
|
|
5
|
+
* Internal to `UserMap` — not part of the SDK's public exports.
|
|
6
|
+
*/
|
|
2
7
|
export declare class PollingSubscription {
|
|
3
8
|
private userMap;
|
|
4
9
|
private frequency;
|
|
5
10
|
private skipInitialLoad;
|
|
6
11
|
intervalId?: ReturnType<typeof setTimeout>;
|
|
12
|
+
private active;
|
|
7
13
|
constructor({ userMap, frequency, skipInitialLoad, }: {
|
|
8
14
|
userMap: UserMap;
|
|
15
|
+
/** Milliseconds to wait after one sync completes before starting the next. */
|
|
9
16
|
frequency: number;
|
|
17
|
+
/** If true, does not sync immediately on `subscribe()` — the first sync happens after `frequency` ms. */
|
|
10
18
|
skipInitialLoad?: boolean;
|
|
11
19
|
includeIdle?: boolean;
|
|
12
20
|
});
|
|
21
|
+
/** Starts the polling loop. No-op if already started or `frequency <= 0`. */
|
|
13
22
|
subscribe(): Promise<void>;
|
|
23
|
+
/** Stops the polling loop. */
|
|
14
24
|
unsubscribe(): Promise<void>;
|
|
15
25
|
}
|
|
16
26
|
//# sourceMappingURL=PollingSubscription.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PollingSubscription.d.ts","sourceRoot":"","sources":["../../../src/userMap/PollingSubscription.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC,qBAAa,mBAAmB;IAC/B,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,eAAe,CAAU;IAEjC,UAAU,CAAC,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"PollingSubscription.d.ts","sourceRoot":"","sources":["../../../src/userMap/PollingSubscription.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEpC;;;;GAIG;AACH,qBAAa,mBAAmB;IAC/B,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,eAAe,CAAU;IAEjC,UAAU,CAAC,EAAE,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC;IAC3C,OAAO,CAAC,MAAM,CAAS;gBAEX,EACX,OAAO,EACP,SAAS,EACT,eAAuB,GACvB,EAAE;QACF,OAAO,EAAE,OAAO,CAAC;QACjB,8EAA8E;QAC9E,SAAS,EAAE,MAAM,CAAC;QAClB,yGAAyG;QACzG,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,WAAW,CAAC,EAAE,OAAO,CAAC;KACtB;IAMD,6EAA6E;IAChE,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAmBvC,8BAA8B;IACjB,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;CAOzC"}
|
|
@@ -1,26 +1,38 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
3
|
exports.PollingSubscription = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* `UserMap`'s `'polling'` subscription strategy: re-runs a full `userMap.sync()`
|
|
6
|
+
* on a fixed `setTimeout` interval (self-rescheduling, so syncs never overlap).
|
|
7
|
+
* Internal to `UserMap` — not part of the SDK's public exports.
|
|
8
|
+
*/
|
|
4
9
|
class PollingSubscription {
|
|
5
10
|
constructor({ userMap, frequency, skipInitialLoad = false, }) {
|
|
11
|
+
this.active = false;
|
|
6
12
|
this.userMap = userMap;
|
|
7
13
|
this.frequency = frequency;
|
|
8
14
|
this.skipInitialLoad = skipInitialLoad;
|
|
9
15
|
}
|
|
16
|
+
/** Starts the polling loop. No-op if already started or `frequency <= 0`. */
|
|
10
17
|
async subscribe() {
|
|
11
|
-
if (this.
|
|
18
|
+
if (this.active || this.frequency <= 0) {
|
|
12
19
|
return;
|
|
13
20
|
}
|
|
21
|
+
this.active = true;
|
|
14
22
|
const executeSync = async () => {
|
|
15
23
|
await this.userMap.sync();
|
|
16
|
-
|
|
24
|
+
if (this.active) {
|
|
25
|
+
this.intervalId = setTimeout(executeSync, this.frequency);
|
|
26
|
+
}
|
|
17
27
|
};
|
|
18
28
|
if (!this.skipInitialLoad) {
|
|
19
29
|
await this.userMap.sync();
|
|
20
30
|
}
|
|
21
31
|
executeSync();
|
|
22
32
|
}
|
|
33
|
+
/** Stops the polling loop. */
|
|
23
34
|
async unsubscribe() {
|
|
35
|
+
this.active = false;
|
|
24
36
|
if (this.intervalId) {
|
|
25
37
|
clearInterval(this.intervalId);
|
|
26
38
|
this.intervalId = undefined;
|
|
@@ -4,6 +4,14 @@ import { UserMap } from './userMap';
|
|
|
4
4
|
import { UserAccount } from '../types';
|
|
5
5
|
import { Commitment, MemcmpFilter } from '@solana/web3.js';
|
|
6
6
|
import { ResubOpts } from '../accounts/types';
|
|
7
|
+
/**
|
|
8
|
+
* `UserMap`'s `'websocket'` subscription strategy: uses
|
|
9
|
+
* `WebSocketProgramAccountSubscriber` with the map's memcmp filters (base
|
|
10
|
+
* `User` filter, plus non-idle unless `includeIdle`, plus any
|
|
11
|
+
* `additionalFilters`) to receive push updates for every matching account,
|
|
12
|
+
* feeding them into `userMap.updateUserAccount`. Internal to `UserMap` — not
|
|
13
|
+
* part of the SDK's public exports.
|
|
14
|
+
*/
|
|
7
15
|
export declare class WebsocketSubscription {
|
|
8
16
|
private userMap;
|
|
9
17
|
private commitment;
|
|
@@ -22,6 +30,7 @@ export declare class WebsocketSubscription {
|
|
|
22
30
|
decodeFn: (name: string, data: Buffer) => UserAccount;
|
|
23
31
|
additionalFilters?: MemcmpFilter[];
|
|
24
32
|
});
|
|
33
|
+
/** Starts the websocket program-account subscription, then (unless `skipInitialLoad`) runs an initial full `userMap.sync()`. */
|
|
25
34
|
subscribe(): Promise<void>;
|
|
26
35
|
unsubscribe(): Promise<void>;
|
|
27
36
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"WebsocketSubscription.d.ts","sourceRoot":"","sources":["../../../src/userMap/WebsocketSubscription.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,UAAU,EAAW,YAAY,EAAa,MAAM,iBAAiB,CAAC;AAC/E,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE9C,qBAAa,qBAAqB;IACjC,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,eAAe,CAAU;IACjC,OAAO,CAAC,SAAS,CAAC,CAAY;IAC9B,OAAO,CAAC,WAAW,CAAC,CAAU;IAC9B,OAAO,CAAC,iBAAiB,CAAC,CAAiB;IAC3C,OAAO,CAAC,QAAQ,CAA8C;IAE9D,OAAO,CAAC,UAAU,CAAC,CAAiD;gBAExD,EACX,OAAO,EACP,UAAU,EACV,eAAuB,EACvB,SAAS,EACT,WAAmB,EACnB,QAAQ,EACR,iBAA6B,GAC7B,EAAE;QACF,OAAO,EAAE,OAAO,CAAC;QACjB,UAAU,EAAE,UAAU,CAAC;QACvB,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,SAAS,CAAC,EAAE,SAAS,CAAC;QACtB,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,WAAW,CAAC;QACtD,iBAAiB,CAAC,EAAE,YAAY,EAAE,CAAC;KACnC;
|
|
1
|
+
{"version":3,"file":"WebsocketSubscription.d.ts","sourceRoot":"","sources":["../../../src/userMap/WebsocketSubscription.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAE,UAAU,EAAW,YAAY,EAAa,MAAM,iBAAiB,CAAC;AAC/E,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE9C;;;;;;;GAOG;AACH,qBAAa,qBAAqB;IACjC,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,eAAe,CAAU;IACjC,OAAO,CAAC,SAAS,CAAC,CAAY;IAC9B,OAAO,CAAC,WAAW,CAAC,CAAU;IAC9B,OAAO,CAAC,iBAAiB,CAAC,CAAiB;IAC3C,OAAO,CAAC,QAAQ,CAA8C;IAE9D,OAAO,CAAC,UAAU,CAAC,CAAiD;gBAExD,EACX,OAAO,EACP,UAAU,EACV,eAAuB,EACvB,SAAS,EACT,WAAmB,EACnB,QAAQ,EACR,iBAA6B,GAC7B,EAAE;QACF,OAAO,EAAE,OAAO,CAAC;QACjB,UAAU,EAAE,UAAU,CAAC;QACvB,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,SAAS,CAAC,EAAE,SAAS,CAAC;QACtB,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,WAAW,CAAC;QACtD,iBAAiB,CAAC,EAAE,YAAY,EAAE,CAAC;KACnC;IAUD,gIAAgI;IACnH,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAkC1B,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;CAKzC"}
|
|
@@ -3,6 +3,14 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.WebsocketSubscription = void 0;
|
|
4
4
|
const memcmp_1 = require("../memcmp");
|
|
5
5
|
const webSocketProgramAccountSubscriber_1 = require("../accounts/webSocketProgramAccountSubscriber");
|
|
6
|
+
/**
|
|
7
|
+
* `UserMap`'s `'websocket'` subscription strategy: uses
|
|
8
|
+
* `WebSocketProgramAccountSubscriber` with the map's memcmp filters (base
|
|
9
|
+
* `User` filter, plus non-idle unless `includeIdle`, plus any
|
|
10
|
+
* `additionalFilters`) to receive push updates for every matching account,
|
|
11
|
+
* feeding them into `userMap.updateUserAccount`. Internal to `UserMap` — not
|
|
12
|
+
* part of the SDK's public exports.
|
|
13
|
+
*/
|
|
6
14
|
class WebsocketSubscription {
|
|
7
15
|
constructor({ userMap, commitment, skipInitialLoad = false, resubOpts, includeIdle = false, decodeFn, additionalFilters = undefined, }) {
|
|
8
16
|
this.userMap = userMap;
|
|
@@ -13,6 +21,7 @@ class WebsocketSubscription {
|
|
|
13
21
|
this.decodeFn = decodeFn;
|
|
14
22
|
this.additionalFilters = additionalFilters;
|
|
15
23
|
}
|
|
24
|
+
/** Starts the websocket program-account subscription, then (unless `skipInitialLoad`) runs an initial full `userMap.sync()`. */
|
|
16
25
|
async subscribe() {
|
|
17
26
|
if (!this.subscriber) {
|
|
18
27
|
const filters = [(0, memcmp_1.getUserFilter)()];
|
|
@@ -4,6 +4,13 @@ import { UserMap } from './userMap';
|
|
|
4
4
|
import { UserAccount } from '../types';
|
|
5
5
|
import { MemcmpFilter } from '@solana/web3.js';
|
|
6
6
|
import { GrpcConfigs, ResubOpts } from '../accounts/types';
|
|
7
|
+
/**
|
|
8
|
+
* `UserMap`'s `'grpc'` subscription strategy: mirrors `WebsocketSubscription`
|
|
9
|
+
* but subscribes via a Geyser gRPC stream (`grpcProgramAccountSubscriber`)
|
|
10
|
+
* using the same memcmp filter set, feeding updates into
|
|
11
|
+
* `userMap.updateUserAccount`. Internal to `UserMap` — not part of the SDK's
|
|
12
|
+
* public exports.
|
|
13
|
+
*/
|
|
7
14
|
export declare class grpcSubscription {
|
|
8
15
|
private grpcConfigs;
|
|
9
16
|
private userMap;
|
|
@@ -22,6 +29,7 @@ export declare class grpcSubscription {
|
|
|
22
29
|
decodeFn: (name: string, data: Buffer) => UserAccount;
|
|
23
30
|
additionalFilters?: MemcmpFilter[];
|
|
24
31
|
});
|
|
32
|
+
/** Starts the gRPC program-account subscription, then (unless `skipInitialLoad`) runs an initial full `userMap.sync()`. */
|
|
25
33
|
subscribe(): Promise<void>;
|
|
26
34
|
unsubscribe(): Promise<void>;
|
|
27
35
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"grpcSubscription.d.ts","sourceRoot":"","sources":["../../../src/userMap/grpcSubscription.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAW,YAAY,EAAa,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAG3D,qBAAa,gBAAgB;IAC5B,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,eAAe,CAAU;IACjC,OAAO,CAAC,SAAS,CAAC,CAAY;IAC9B,OAAO,CAAC,WAAW,CAAC,CAAU;IAC9B,OAAO,CAAC,iBAAiB,CAAC,CAAiB;IAC3C,OAAO,CAAC,QAAQ,CAA8C;IAE9D,OAAO,CAAC,UAAU,CAAC,CAAiD;gBAExD,EACX,WAAW,EACX,OAAO,EACP,eAAuB,EACvB,SAAS,EACT,WAAmB,EACnB,QAAQ,EACR,iBAA6B,GAC7B,EAAE;QACF,WAAW,EAAE,WAAW,CAAC;QACzB,OAAO,EAAE,OAAO,CAAC;QACjB,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,SAAS,CAAC,EAAE,SAAS,CAAC;QACtB,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,WAAW,CAAC;QACtD,iBAAiB,CAAC,EAAE,YAAY,EAAE,CAAC;KACnC;
|
|
1
|
+
{"version":3,"file":"grpcSubscription.d.ts","sourceRoot":"","sources":["../../../src/userMap/grpcSubscription.ts"],"names":[],"mappings":";;AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAGpC,OAAO,EAAE,WAAW,EAAE,MAAM,UAAU,CAAC;AACvC,OAAO,EAAW,YAAY,EAAa,MAAM,iBAAiB,CAAC;AACnE,OAAO,EAAE,WAAW,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAG3D;;;;;;GAMG;AACH,qBAAa,gBAAgB;IAC5B,OAAO,CAAC,WAAW,CAAc;IACjC,OAAO,CAAC,OAAO,CAAU;IACzB,OAAO,CAAC,eAAe,CAAU;IACjC,OAAO,CAAC,SAAS,CAAC,CAAY;IAC9B,OAAO,CAAC,WAAW,CAAC,CAAU;IAC9B,OAAO,CAAC,iBAAiB,CAAC,CAAiB;IAC3C,OAAO,CAAC,QAAQ,CAA8C;IAE9D,OAAO,CAAC,UAAU,CAAC,CAAiD;gBAExD,EACX,WAAW,EACX,OAAO,EACP,eAAuB,EACvB,SAAS,EACT,WAAmB,EACnB,QAAQ,EACR,iBAA6B,GAC7B,EAAE;QACF,WAAW,EAAE,WAAW,CAAC;QACzB,OAAO,EAAE,OAAO,CAAC;QACjB,eAAe,CAAC,EAAE,OAAO,CAAC;QAC1B,SAAS,CAAC,EAAE,SAAS,CAAC;QACtB,WAAW,CAAC,EAAE,OAAO,CAAC;QACtB,QAAQ,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,KAAK,WAAW,CAAC;QACtD,iBAAiB,CAAC,EAAE,YAAY,EAAE,CAAC;KACnC;IAUD,2HAA2H;IAC9G,SAAS,IAAI,OAAO,CAAC,IAAI,CAAC;IAkC1B,WAAW,IAAI,OAAO,CAAC,IAAI,CAAC;CAKzC"}
|
|
@@ -3,6 +3,13 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
3
3
|
exports.grpcSubscription = void 0;
|
|
4
4
|
const memcmp_1 = require("../memcmp");
|
|
5
5
|
const grpcProgramAccountSubscriber_1 = require("../accounts/grpcProgramAccountSubscriber");
|
|
6
|
+
/**
|
|
7
|
+
* `UserMap`'s `'grpc'` subscription strategy: mirrors `WebsocketSubscription`
|
|
8
|
+
* but subscribes via a Geyser gRPC stream (`grpcProgramAccountSubscriber`)
|
|
9
|
+
* using the same memcmp filter set, feeding updates into
|
|
10
|
+
* `userMap.updateUserAccount`. Internal to `UserMap` — not part of the SDK's
|
|
11
|
+
* public exports.
|
|
12
|
+
*/
|
|
6
13
|
class grpcSubscription {
|
|
7
14
|
constructor({ grpcConfigs, userMap, skipInitialLoad = false, resubOpts, includeIdle = false, decodeFn, additionalFilters = undefined, }) {
|
|
8
15
|
this.userMap = userMap;
|
|
@@ -13,6 +20,7 @@ class grpcSubscription {
|
|
|
13
20
|
this.grpcConfigs = grpcConfigs;
|
|
14
21
|
this.additionalFilters = additionalFilters;
|
|
15
22
|
}
|
|
23
|
+
/** Starts the gRPC program-account subscription, then (unless `skipInitialLoad`) runs an initial full `userMap.sync()`. */
|
|
16
24
|
async subscribe() {
|
|
17
25
|
if (!this.subscriber) {
|
|
18
26
|
const filters = [(0, memcmp_1.getUserFilter)()];
|
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
import { MemcmpFilter } from '@solana/web3.js';
|
|
2
2
|
import { VelocityClient } from '../velocityClient';
|
|
3
3
|
import { ReferrerInfo } from '../types';
|
|
4
|
+
/**
|
|
5
|
+
* In-memory cache mapping each trading authority to their referrer, built by
|
|
6
|
+
* scanning `UserStats` accounts with memcmp filters on the referrer-status
|
|
7
|
+
* byte (see `syncAll`/`syncReferrer`) rather than subscribing to every
|
|
8
|
+
* account's full data.
|
|
9
|
+
*/
|
|
4
10
|
export declare class ReferrerMap {
|
|
5
11
|
/**
|
|
6
12
|
* map from authority pubkey to referrer pubkey.
|
|
@@ -11,23 +17,54 @@ export declare class ReferrerMap {
|
|
|
11
17
|
* Will be undefined if the referrer is not in the map yet.
|
|
12
18
|
*/
|
|
13
19
|
private referrerReferrerInfoMap;
|
|
20
|
+
/**
|
|
21
|
+
* map from authority pubkey to whether its escrow was initialized with a
|
|
22
|
+
* referrer (the `BuilderReferral` status bit). Only populated by the lazy
|
|
23
|
+
* full-account path (`addReferrer` / `mustGetIsBuilderReferral`) — the bulk
|
|
24
|
+
* sync uses narrow data slices that don't cover `referrer_status`.
|
|
25
|
+
*/
|
|
26
|
+
private authorityBuilderReferralMap;
|
|
14
27
|
private velocityClient;
|
|
15
28
|
private parallelSync;
|
|
16
29
|
private fetchPromise?;
|
|
17
30
|
private fetchPromiseResolver;
|
|
18
31
|
/**
|
|
19
|
-
* Creates a new
|
|
32
|
+
* Creates a new ReferrerMap instance.
|
|
20
33
|
*
|
|
21
34
|
* @param {VelocityClient} velocityClient - The VelocityClient instance.
|
|
22
35
|
*/
|
|
23
36
|
constructor(velocityClient: VelocityClient, parallelSync?: boolean);
|
|
24
37
|
/**
|
|
25
|
-
*
|
|
38
|
+
* Populates the map via a one-time `sync()` (no-op if already populated).
|
|
39
|
+
* There is no live/push subscription here — call `sync()` again later to
|
|
40
|
+
* pick up new referrers.
|
|
26
41
|
*/
|
|
27
42
|
subscribe(): Promise<void>;
|
|
43
|
+
/** Returns true if `authorityPublicKey` has been synced into the map (has a known referrer, even if that referrer is "none"). */
|
|
28
44
|
has(authorityPublicKey: string): boolean;
|
|
45
|
+
/** Alias for `getReferrer`. */
|
|
29
46
|
get(authorityPublicKey: string): ReferrerInfo | undefined;
|
|
47
|
+
/**
|
|
48
|
+
* Records `authority`'s referrer. If `referrer` is omitted, fetches the
|
|
49
|
+
* authority's `UserStats` account directly via RPC and reads the referrer
|
|
50
|
+
* pubkey out of its raw bytes (offset 40..72, immediately after the
|
|
51
|
+
* discriminator + authority fields) rather than fully decoding the account.
|
|
52
|
+
* @throws If `referrer` is omitted and no `UserStats` account exists on chain for `authority`.
|
|
53
|
+
*/
|
|
30
54
|
addReferrer(authority: string, referrer?: string): Promise<void>;
|
|
55
|
+
/**
|
|
56
|
+
* True when the authority's escrow was initialized with a referrer (the
|
|
57
|
+
* `BuilderReferral` status bit). Returns `false` until the authority's
|
|
58
|
+
* UserStats has been read via the lazy path; use {@link mustGetIsBuilderReferral}
|
|
59
|
+
* to force a read.
|
|
60
|
+
*/
|
|
61
|
+
isBuilderReferral(authorityPublicKey: string): boolean;
|
|
62
|
+
/**
|
|
63
|
+
* Like {@link isBuilderReferral} but reads the authority's UserStats from the
|
|
64
|
+
* chain if the status hasn't been cached yet. Throws if the UserStats account
|
|
65
|
+
* cannot be loaded (same as {@link addReferrer}).
|
|
66
|
+
*/
|
|
67
|
+
mustGetIsBuilderReferral(authorityPublicKey: string): Promise<boolean>;
|
|
31
68
|
/**
|
|
32
69
|
* Enforce that a UserStats will exist for the given authorityPublicKey,
|
|
33
70
|
* reading one from the blockchain if necessary.
|
|
@@ -35,12 +72,45 @@ export declare class ReferrerMap {
|
|
|
35
72
|
* @returns
|
|
36
73
|
*/
|
|
37
74
|
mustGet(authorityPublicKey: string): Promise<ReferrerInfo | undefined>;
|
|
75
|
+
/**
|
|
76
|
+
* Resolves `authorityPublicKey`'s referrer to a `ReferrerInfo` (the
|
|
77
|
+
* referrer's `User` sub-account-0 and `UserStats` addresses), caching the
|
|
78
|
+
* derived addresses per referrer pubkey.
|
|
79
|
+
* @returns `undefined` if `authorityPublicKey` isn't in the map yet, or if it has no referrer (default/zero pubkey).
|
|
80
|
+
*/
|
|
38
81
|
getReferrer(authorityPublicKey: string): ReferrerInfo | undefined;
|
|
82
|
+
/** Number of authorities synced into the map (referred or not). */
|
|
39
83
|
size(): number;
|
|
84
|
+
/** Number of synced authorities that actually have a referrer set (excludes those with the default/zero pubkey). */
|
|
40
85
|
numberOfReferred(): number;
|
|
86
|
+
/**
|
|
87
|
+
* Fully (re)populates the map: `syncAll` seeds every `UserStats` authority
|
|
88
|
+
* with a default ("no referrer") entry, then `syncReferrer` overwrites
|
|
89
|
+
* entries for authorities matching the is-referred and
|
|
90
|
+
* is-referred-or-referrer memcmp filters with their actual referrer. Runs
|
|
91
|
+
* the three passes in parallel by default (`parallelSync`), or serially if
|
|
92
|
+
* constructed with `parallelSync: false`. Concurrent calls share the same
|
|
93
|
+
* in-flight promise.
|
|
94
|
+
*/
|
|
41
95
|
sync(): Promise<void>;
|
|
96
|
+
/**
|
|
97
|
+
* Fetches every `UserStats` account pubkey (via a `getUserStatsFilter`
|
|
98
|
+
* memcmp filter, with a zero-length `dataSlice` so no account data is
|
|
99
|
+
* transferred) and seeds a default ("no referrer") entry for any authority
|
|
100
|
+
* not already present in the map.
|
|
101
|
+
*/
|
|
42
102
|
syncAll(): Promise<void>;
|
|
103
|
+
/**
|
|
104
|
+
* Fetches `UserStats` accounts matching `referrerFilter` combined with the
|
|
105
|
+
* base `UserStats` discriminator filter, with a `dataSlice` of exactly the
|
|
106
|
+
* bytes needed (offset 0, length 72 — discriminator + authority + referrer)
|
|
107
|
+
* to avoid transferring full account data. Decodes `authority`/`referrer`
|
|
108
|
+
* directly from the byte offsets and unconditionally sets them in the map
|
|
109
|
+
* (in batches of 1000, yielding to the event loop between batches).
|
|
110
|
+
* @param referrerFilter A memcmp filter selecting which referrer-status accounts to sync, e.g. from `getUserStatsIsReferredFilter`/`getUserStatsIsReferredOrReferrerFilter`.
|
|
111
|
+
*/
|
|
43
112
|
syncReferrer(referrerFilter: MemcmpFilter): Promise<void>;
|
|
113
|
+
/** Clears the in-memory maps. Does not tear down any RPC subscriptions (this class has none — `subscribe` only triggers a one-time sync). */
|
|
44
114
|
unsubscribe(): Promise<void>;
|
|
45
115
|
}
|
|
46
116
|
//# sourceMappingURL=referrerMap.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"referrerMap.d.ts","sourceRoot":"","sources":["../../../src/userMap/referrerMap.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,YAAY,EAGZ,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"referrerMap.d.ts","sourceRoot":"","sources":["../../../src/userMap/referrerMap.ts"],"names":[],"mappings":"AAAA,OAAO,EACN,YAAY,EAGZ,MAAM,iBAAiB,CAAC;AACzB,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,UAAU,CAAC;AAiBxC;;;;;GAKG;AACH,qBAAa,WAAW;IACvB;;OAEG;IACH,OAAO,CAAC,oBAAoB,CAA6B;IACzD;;;OAGG;IACH,OAAO,CAAC,uBAAuB,CAAmC;IAClE;;;;;OAKG;IACH,OAAO,CAAC,2BAA2B,CAA8B;IACjE,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,YAAY,CAAU;IAE9B,OAAO,CAAC,YAAY,CAAC,CAAgB;IACrC,OAAO,CAAC,oBAAoB,CAAwB;IAEpD;;;;OAIG;gBACS,cAAc,EAAE,cAAc,EAAE,YAAY,CAAC,EAAE,OAAO;IAKlE;;;;OAIG;IACU,SAAS;IAStB,iIAAiI;IAC1H,GAAG,CAAC,kBAAkB,EAAE,MAAM,GAAG,OAAO;IAI/C,+BAA+B;IACxB,GAAG,CAAC,kBAAkB,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAIhE;;;;;;OAMG;IACU,WAAW,CAAC,SAAS,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM;IA8B7D;;;;;OAKG;IACI,iBAAiB,CAAC,kBAAkB,EAAE,MAAM,GAAG,OAAO;IAI7D;;;;OAIG;IACU,wBAAwB,CACpC,kBAAkB,EAAE,MAAM,GACxB,OAAO,CAAC,OAAO,CAAC;IAOnB;;;;;OAKG;IACU,OAAO,CACnB,kBAAkB,EAAE,MAAM,GACxB,OAAO,CAAC,YAAY,GAAG,SAAS,CAAC;IAOpC;;;;;OAKG;IACI,WAAW,CAAC,kBAAkB,EAAE,MAAM,GAAG,YAAY,GAAG,SAAS;IAgCxE,mEAAmE;IAC5D,IAAI,IAAI,MAAM;IAIrB,oHAAoH;IAC7G,gBAAgB,IAAI,MAAM;IAMjC;;;;;;;;OAQG;IACU,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IA2BlC;;;;;OAKG;IACU,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IAwCrC;;;;;;;;OAQG;IACG,YAAY,CAAC,cAAc,EAAE,YAAY,GAAG,OAAO,CAAC,IAAI,CAAC;IAmD/D,6IAA6I;IAChI,WAAW;CAIxB"}
|
|
@@ -7,11 +7,20 @@ exports.ReferrerMap = void 0;
|
|
|
7
7
|
const web3_js_1 = require("@solana/web3.js");
|
|
8
8
|
const pda_1 = require("../addresses/pda");
|
|
9
9
|
const memcmp_1 = require("../memcmp");
|
|
10
|
+
const builder_1 = require("../math/builder");
|
|
10
11
|
const bs58_1 = __importDefault(require("bs58"));
|
|
11
12
|
const DEFAULT_PUBLIC_KEY = web3_js_1.PublicKey.default.toBase58();
|
|
13
|
+
// Byte offset of `UserStats.referrer_status` (u8). Matches the memcmp filters.
|
|
14
|
+
const REFERRER_STATUS_OFFSET = 188;
|
|
15
|
+
/**
|
|
16
|
+
* In-memory cache mapping each trading authority to their referrer, built by
|
|
17
|
+
* scanning `UserStats` accounts with memcmp filters on the referrer-status
|
|
18
|
+
* byte (see `syncAll`/`syncReferrer`) rather than subscribing to every
|
|
19
|
+
* account's full data.
|
|
20
|
+
*/
|
|
12
21
|
class ReferrerMap {
|
|
13
22
|
/**
|
|
14
|
-
* Creates a new
|
|
23
|
+
* Creates a new ReferrerMap instance.
|
|
15
24
|
*
|
|
16
25
|
* @param {VelocityClient} velocityClient - The VelocityClient instance.
|
|
17
26
|
*/
|
|
@@ -25,12 +34,21 @@ class ReferrerMap {
|
|
|
25
34
|
* Will be undefined if the referrer is not in the map yet.
|
|
26
35
|
*/
|
|
27
36
|
this.referrerReferrerInfoMap = new Map();
|
|
37
|
+
/**
|
|
38
|
+
* map from authority pubkey to whether its escrow was initialized with a
|
|
39
|
+
* referrer (the `BuilderReferral` status bit). Only populated by the lazy
|
|
40
|
+
* full-account path (`addReferrer` / `mustGetIsBuilderReferral`) — the bulk
|
|
41
|
+
* sync uses narrow data slices that don't cover `referrer_status`.
|
|
42
|
+
*/
|
|
43
|
+
this.authorityBuilderReferralMap = new Map();
|
|
28
44
|
this.fetchPromiseResolver = () => { };
|
|
29
45
|
this.velocityClient = velocityClient;
|
|
30
46
|
this.parallelSync = parallelSync !== undefined ? parallelSync : true;
|
|
31
47
|
}
|
|
32
48
|
/**
|
|
33
|
-
*
|
|
49
|
+
* Populates the map via a one-time `sync()` (no-op if already populated).
|
|
50
|
+
* There is no live/push subscription here — call `sync()` again later to
|
|
51
|
+
* pick up new referrers.
|
|
34
52
|
*/
|
|
35
53
|
async subscribe() {
|
|
36
54
|
if (this.size() > 0) {
|
|
@@ -39,12 +57,21 @@ class ReferrerMap {
|
|
|
39
57
|
await this.velocityClient.subscribe();
|
|
40
58
|
await this.sync();
|
|
41
59
|
}
|
|
60
|
+
/** Returns true if `authorityPublicKey` has been synced into the map (has a known referrer, even if that referrer is "none"). */
|
|
42
61
|
has(authorityPublicKey) {
|
|
43
62
|
return this.authorityReferrerMap.has(authorityPublicKey);
|
|
44
63
|
}
|
|
64
|
+
/** Alias for `getReferrer`. */
|
|
45
65
|
get(authorityPublicKey) {
|
|
46
66
|
return this.getReferrer(authorityPublicKey);
|
|
47
67
|
}
|
|
68
|
+
/**
|
|
69
|
+
* Records `authority`'s referrer. If `referrer` is omitted, fetches the
|
|
70
|
+
* authority's `UserStats` account directly via RPC and reads the referrer
|
|
71
|
+
* pubkey out of its raw bytes (offset 40..72, immediately after the
|
|
72
|
+
* discriminator + authority fields) rather than fully decoding the account.
|
|
73
|
+
* @throws If `referrer` is omitted and no `UserStats` account exists on chain for `authority`.
|
|
74
|
+
*/
|
|
48
75
|
async addReferrer(authority, referrer) {
|
|
49
76
|
if (referrer) {
|
|
50
77
|
this.authorityReferrerMap.set(authority, referrer);
|
|
@@ -56,10 +83,32 @@ class ReferrerMap {
|
|
|
56
83
|
throw new Error(`ReferrerMap: UserStats account not found for authority ${authority}`);
|
|
57
84
|
}
|
|
58
85
|
const buffer = accountInfo.data;
|
|
86
|
+
this.authorityBuilderReferralMap.set(authority, (0, builder_1.isBuilderReferral)({ referrerStatus: buffer[REFERRER_STATUS_OFFSET] }));
|
|
59
87
|
const referrer = bs58_1.default.encode(buffer.subarray(40, 72));
|
|
60
88
|
this.addReferrer(authority, referrer);
|
|
61
89
|
}
|
|
62
90
|
}
|
|
91
|
+
/**
|
|
92
|
+
* True when the authority's escrow was initialized with a referrer (the
|
|
93
|
+
* `BuilderReferral` status bit). Returns `false` until the authority's
|
|
94
|
+
* UserStats has been read via the lazy path; use {@link mustGetIsBuilderReferral}
|
|
95
|
+
* to force a read.
|
|
96
|
+
*/
|
|
97
|
+
isBuilderReferral(authorityPublicKey) {
|
|
98
|
+
var _a;
|
|
99
|
+
return (_a = this.authorityBuilderReferralMap.get(authorityPublicKey)) !== null && _a !== void 0 ? _a : false;
|
|
100
|
+
}
|
|
101
|
+
/**
|
|
102
|
+
* Like {@link isBuilderReferral} but reads the authority's UserStats from the
|
|
103
|
+
* chain if the status hasn't been cached yet. Throws if the UserStats account
|
|
104
|
+
* cannot be loaded (same as {@link addReferrer}).
|
|
105
|
+
*/
|
|
106
|
+
async mustGetIsBuilderReferral(authorityPublicKey) {
|
|
107
|
+
if (!this.authorityBuilderReferralMap.has(authorityPublicKey)) {
|
|
108
|
+
await this.addReferrer(authorityPublicKey);
|
|
109
|
+
}
|
|
110
|
+
return this.isBuilderReferral(authorityPublicKey);
|
|
111
|
+
}
|
|
63
112
|
/**
|
|
64
113
|
* Enforce that a UserStats will exist for the given authorityPublicKey,
|
|
65
114
|
* reading one from the blockchain if necessary.
|
|
@@ -72,6 +121,12 @@ class ReferrerMap {
|
|
|
72
121
|
}
|
|
73
122
|
return this.getReferrer(authorityPublicKey);
|
|
74
123
|
}
|
|
124
|
+
/**
|
|
125
|
+
* Resolves `authorityPublicKey`'s referrer to a `ReferrerInfo` (the
|
|
126
|
+
* referrer's `User` sub-account-0 and `UserStats` addresses), caching the
|
|
127
|
+
* derived addresses per referrer pubkey.
|
|
128
|
+
* @returns `undefined` if `authorityPublicKey` isn't in the map yet, or if it has no referrer (default/zero pubkey).
|
|
129
|
+
*/
|
|
75
130
|
getReferrer(authorityPublicKey) {
|
|
76
131
|
const referrer = this.authorityReferrerMap.get(authorityPublicKey);
|
|
77
132
|
if (!referrer) {
|
|
@@ -92,12 +147,23 @@ class ReferrerMap {
|
|
|
92
147
|
this.referrerReferrerInfoMap.set(referrer, referrerInfo);
|
|
93
148
|
return referrerInfo;
|
|
94
149
|
}
|
|
150
|
+
/** Number of authorities synced into the map (referred or not). */
|
|
95
151
|
size() {
|
|
96
152
|
return this.authorityReferrerMap.size;
|
|
97
153
|
}
|
|
154
|
+
/** Number of synced authorities that actually have a referrer set (excludes those with the default/zero pubkey). */
|
|
98
155
|
numberOfReferred() {
|
|
99
156
|
return Array.from(this.authorityReferrerMap.values()).filter((referrer) => referrer !== DEFAULT_PUBLIC_KEY).length;
|
|
100
157
|
}
|
|
158
|
+
/**
|
|
159
|
+
* Fully (re)populates the map: `syncAll` seeds every `UserStats` authority
|
|
160
|
+
* with a default ("no referrer") entry, then `syncReferrer` overwrites
|
|
161
|
+
* entries for authorities matching the is-referred and
|
|
162
|
+
* is-referred-or-referrer memcmp filters with their actual referrer. Runs
|
|
163
|
+
* the three passes in parallel by default (`parallelSync`), or serially if
|
|
164
|
+
* constructed with `parallelSync: false`. Concurrent calls share the same
|
|
165
|
+
* in-flight promise.
|
|
166
|
+
*/
|
|
101
167
|
async sync() {
|
|
102
168
|
if (this.fetchPromise) {
|
|
103
169
|
return this.fetchPromise;
|
|
@@ -124,6 +190,12 @@ class ReferrerMap {
|
|
|
124
190
|
this.fetchPromise = undefined;
|
|
125
191
|
}
|
|
126
192
|
}
|
|
193
|
+
/**
|
|
194
|
+
* Fetches every `UserStats` account pubkey (via a `getUserStatsFilter`
|
|
195
|
+
* memcmp filter, with a zero-length `dataSlice` so no account data is
|
|
196
|
+
* transferred) and seeds a default ("no referrer") entry for any authority
|
|
197
|
+
* not already present in the map.
|
|
198
|
+
*/
|
|
127
199
|
async syncAll() {
|
|
128
200
|
var _a;
|
|
129
201
|
const rpcRequestArgs = [
|
|
@@ -151,6 +223,15 @@ class ReferrerMap {
|
|
|
151
223
|
}
|
|
152
224
|
}
|
|
153
225
|
}
|
|
226
|
+
/**
|
|
227
|
+
* Fetches `UserStats` accounts matching `referrerFilter` combined with the
|
|
228
|
+
* base `UserStats` discriminator filter, with a `dataSlice` of exactly the
|
|
229
|
+
* bytes needed (offset 0, length 72 — discriminator + authority + referrer)
|
|
230
|
+
* to avoid transferring full account data. Decodes `authority`/`referrer`
|
|
231
|
+
* directly from the byte offsets and unconditionally sets them in the map
|
|
232
|
+
* (in batches of 1000, yielding to the event loop between batches).
|
|
233
|
+
* @param referrerFilter A memcmp filter selecting which referrer-status accounts to sync, e.g. from `getUserStatsIsReferredFilter`/`getUserStatsIsReferredOrReferrerFilter`.
|
|
234
|
+
*/
|
|
154
235
|
async syncReferrer(referrerFilter) {
|
|
155
236
|
var _a;
|
|
156
237
|
const rpcRequestArgs = [
|
|
@@ -183,6 +264,7 @@ class ReferrerMap {
|
|
|
183
264
|
await new Promise((resolve) => setTimeout(resolve, 0));
|
|
184
265
|
}
|
|
185
266
|
}
|
|
267
|
+
/** Clears the in-memory maps. Does not tear down any RPC subscriptions (this class has none — `subscribe` only triggers a one-time sync). */
|
|
186
268
|
async unsubscribe() {
|
|
187
269
|
this.authorityReferrerMap.clear();
|
|
188
270
|
this.referrerReferrerInfoMap.clear();
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { VelocityClient } from '../velocityClient';
|
|
2
2
|
import { RevenueShareEscrowAccount } from '../types';
|
|
3
|
+
/** In-memory cache mapping each authority to their `RevenueShareEscrow` account (builder/referral fee accrual escrow). */
|
|
3
4
|
export declare class RevenueShareEscrowMap {
|
|
4
5
|
/**
|
|
5
6
|
* map from authority pubkey to RevenueShareEscrow account data.
|
|
@@ -17,10 +18,14 @@ export declare class RevenueShareEscrowMap {
|
|
|
17
18
|
*/
|
|
18
19
|
constructor(velocityClient: VelocityClient, parallelSync?: boolean);
|
|
19
20
|
/**
|
|
20
|
-
*
|
|
21
|
+
* Populates the map via a one-time `sync()` (no-op if already populated).
|
|
22
|
+
* There is no live/push subscription here — call `sync()`/`slowSync()`
|
|
23
|
+
* again later to pick up new or updated escrow accounts.
|
|
21
24
|
*/
|
|
22
25
|
subscribe(): Promise<void>;
|
|
26
|
+
/** Returns true if `authorityPublicKey` has a `RevenueShareEscrow` account cached in the map. */
|
|
23
27
|
has(authorityPublicKey: string): boolean;
|
|
28
|
+
/** Returns the cached `RevenueShareEscrowAccount` for `authorityPublicKey`, or `undefined` if not (yet) in the map. */
|
|
24
29
|
get(authorityPublicKey: string): RevenueShareEscrowAccount | undefined;
|
|
25
30
|
/**
|
|
26
31
|
* Enforce that a RevenueShareEscrow will exist for the given authorityPublicKey,
|
|
@@ -29,39 +34,61 @@ export declare class RevenueShareEscrowMap {
|
|
|
29
34
|
* @returns
|
|
30
35
|
*/
|
|
31
36
|
mustGet(authorityPublicKey: string): Promise<RevenueShareEscrowAccount | undefined>;
|
|
37
|
+
/**
|
|
38
|
+
* Fetches and decodes `authority`'s `RevenueShareEscrow` account directly
|
|
39
|
+
* via RPC and caches it. If the account does not exist (a normal condition
|
|
40
|
+
* — not every authority has an escrow), logs a debug message and leaves the
|
|
41
|
+
* map entry absent rather than throwing.
|
|
42
|
+
*/
|
|
32
43
|
addRevenueShareEscrow(authority: string): Promise<void>;
|
|
44
|
+
/** Number of `RevenueShareEscrow` accounts currently cached in the map. */
|
|
33
45
|
size(): number;
|
|
46
|
+
/** Fully (re)populates the map via `syncAll` (a `getProgramAccounts` scan). Concurrent calls share the same in-flight promise. */
|
|
34
47
|
sync(): Promise<void>;
|
|
35
48
|
/**
|
|
36
49
|
* A slow, bankrun test friendly version of sync(), uses getAccountInfo on every cached account to refresh data
|
|
37
50
|
* @returns
|
|
38
51
|
*/
|
|
39
52
|
slowSync(): Promise<void>;
|
|
40
|
-
syncAll(): Promise<void>;
|
|
41
53
|
/**
|
|
42
|
-
*
|
|
54
|
+
* Fetches and decodes every `RevenueShareEscrow` program account (via
|
|
55
|
+
* `getRevenueShareEscrowFilter`), in batches of 100 with a 10ms delay
|
|
56
|
+
* between batches to avoid overwhelming the RPC, and caches them keyed by
|
|
57
|
+
* `escrow.authority`. Batch decoding runs in parallel unless constructed
|
|
58
|
+
* with `parallelSync: false`. A decode failure for one account is logged
|
|
59
|
+
* and skipped rather than aborting the whole sync.
|
|
43
60
|
*/
|
|
61
|
+
syncAll(): Promise<void>;
|
|
62
|
+
/** Returns a shallow copy of the full authority-to-escrow map (mutating the returned map does not affect the cache). */
|
|
44
63
|
getAll(): Map<string, RevenueShareEscrowAccount>;
|
|
45
|
-
/**
|
|
46
|
-
* Get all authorities that have RevenueShareEscrow accounts
|
|
47
|
-
*/
|
|
64
|
+
/** Returns the base58 authority pubkeys of every `RevenueShareEscrow` account currently cached. */
|
|
48
65
|
getAuthorities(): string[];
|
|
49
66
|
/**
|
|
50
|
-
* Get RevenueShareEscrow accounts that have
|
|
67
|
+
* Get `RevenueShareEscrow` accounts that have at least one entry in
|
|
68
|
+
* `approvedBuilders` — builders this user has approved to charge an order
|
|
69
|
+
* fee (not "referrers": `referrer` is a separate field on the account).
|
|
51
70
|
*/
|
|
52
71
|
getEscrowsWithApprovedReferrers(): Map<string, RevenueShareEscrowAccount>;
|
|
53
72
|
/**
|
|
54
|
-
* Get RevenueShareEscrow accounts
|
|
73
|
+
* Get `RevenueShareEscrow` accounts with at least one entry in `orders` —
|
|
74
|
+
* the ring buffer of in-flight builder/referral fee accruals not yet
|
|
75
|
+
* settled via settle-PnL.
|
|
55
76
|
*/
|
|
56
77
|
getEscrowsWithOrders(): Map<string, RevenueShareEscrowAccount>;
|
|
57
78
|
/**
|
|
58
|
-
*
|
|
79
|
+
* Returns the first cached `RevenueShareEscrow` account whose `referrer`
|
|
80
|
+
* field equals `referrerPublicKey`. There is no reverse index, so this is
|
|
81
|
+
* an O(n) scan over every cached escrow; prefer `getAllByReferrer` if more
|
|
82
|
+
* than one escrow may share the same referrer.
|
|
59
83
|
*/
|
|
60
84
|
getByReferrer(referrerPublicKey: string): RevenueShareEscrowAccount | undefined;
|
|
61
85
|
/**
|
|
62
|
-
*
|
|
86
|
+
* Returns every cached `RevenueShareEscrow` account whose `referrer` field
|
|
87
|
+
* equals `referrerPublicKey`. O(n) scan over every cached escrow (no
|
|
88
|
+
* reverse index).
|
|
63
89
|
*/
|
|
64
90
|
getAllByReferrer(referrerPublicKey: string): RevenueShareEscrowAccount[];
|
|
91
|
+
/** Clears the in-memory map. Does not tear down any RPC subscriptions (this class has none — `subscribe` only triggers a one-time sync). */
|
|
65
92
|
unsubscribe(): Promise<void>;
|
|
66
93
|
}
|
|
67
94
|
//# sourceMappingURL=revenueShareEscrowMap.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"revenueShareEscrowMap.d.ts","sourceRoot":"","sources":["../../../src/userMap/revenueShareEscrowMap.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC;AAIrD,qBAAa,qBAAqB;IACjC;;OAEG;IACH,OAAO,CAAC,kBAAkB,CAAgD;IAC1E,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,YAAY,CAAU;IAE9B,OAAO,CAAC,YAAY,CAAC,CAAgB;IACrC,OAAO,CAAC,oBAAoB,CAAwB;IAEpD;;;;;OAKG;gBACS,cAAc,EAAE,cAAc,EAAE,YAAY,CAAC,EAAE,OAAO;IAKlE
|
|
1
|
+
{"version":3,"file":"revenueShareEscrowMap.d.ts","sourceRoot":"","sources":["../../../src/userMap/revenueShareEscrowMap.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,EAAE,yBAAyB,EAAE,MAAM,UAAU,CAAC;AAIrD,0HAA0H;AAC1H,qBAAa,qBAAqB;IACjC;;OAEG;IACH,OAAO,CAAC,kBAAkB,CAAgD;IAC1E,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,YAAY,CAAU;IAE9B,OAAO,CAAC,YAAY,CAAC,CAAgB;IACrC,OAAO,CAAC,oBAAoB,CAAwB;IAEpD;;;;;OAKG;gBACS,cAAc,EAAE,cAAc,EAAE,YAAY,CAAC,EAAE,OAAO;IAKlE;;;;OAIG;IACU,SAAS;IAStB,iGAAiG;IAC1F,GAAG,CAAC,kBAAkB,EAAE,MAAM,GAAG,OAAO;IAI/C,uHAAuH;IAChH,GAAG,CACT,kBAAkB,EAAE,MAAM,GACxB,yBAAyB,GAAG,SAAS;IAIxC;;;;;OAKG;IACU,OAAO,CACnB,kBAAkB,EAAE,MAAM,GACxB,OAAO,CAAC,yBAAyB,GAAG,SAAS,CAAC;IAOjD;;;;;OAKG;IACU,qBAAqB,CAAC,SAAS,EAAE,MAAM;IA8BpD,2EAA2E;IACpE,IAAI,IAAI,MAAM;IAIrB,kIAAkI;IACrH,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAiBlC;;;OAGG;IACU,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC;IA2BtC;;;;;;;OAOG;IACU,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;IA4FrC,wHAAwH;IACjH,MAAM,IAAI,GAAG,CAAC,MAAM,EAAE,yBAAyB,CAAC;IAIvD,mGAAmG;IAC5F,cAAc,IAAI,MAAM,EAAE;IAIjC;;;;OAIG;IACI,+BAA+B,IAAI,GAAG,CAC5C,MAAM,EACN,yBAAyB,CACzB;IAUD;;;;OAIG;IACI,oBAAoB,IAAI,GAAG,CAAC,MAAM,EAAE,yBAAyB,CAAC;IAUrE;;;;;OAKG;IACI,aAAa,CACnB,iBAAiB,EAAE,MAAM,GACvB,yBAAyB,GAAG,SAAS;IASxC;;;;OAIG;IACI,gBAAgB,CACtB,iBAAiB,EAAE,MAAM,GACvB,yBAAyB,EAAE;IAU9B,4IAA4I;IAC/H,WAAW;CAGxB"}
|