@forevermoney/sdk 0.5.5 → 0.5.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.d.cts CHANGED
@@ -8,10 +8,11 @@ declare const ROBINHOOD_CCIP_SELECTOR = 6180753054346818345n;
8
8
  declare const SUBTENSOR_CCIP_SELECTOR = 2135107236357186872n;
9
9
  declare const RAO_PER_TAO = 1000000000n;
10
10
  declare const EVM_WEI_PER_RAO = 1000000000n;
11
+ declare const SN10_NETUID = 10n;
11
12
  declare const SN80_NETUID = 80n;
12
- declare const FOREVERMONEY_DEPLOYMENT_VERSION: "1.4.0";
13
+ declare const FOREVERMONEY_DEPLOYMENT_VERSION: "1.5.0";
13
14
  declare const foreverMoneyDeployment: Readonly<{
14
- version: "1.4.0";
15
+ version: "1.5.0";
15
16
  base: Readonly<{
16
17
  key: "base";
17
18
  name: "Base";
@@ -21,6 +22,7 @@ declare const foreverMoneyDeployment: Readonly<{
21
22
  gateway: `0x${string}`;
22
23
  legacyGateways: readonly `0x${string}`[];
23
24
  wrappedTao: `0x${string}`;
25
+ wrappedSn10: `0x${string}`;
24
26
  wrappedSn80: `0x${string}`;
25
27
  ccipRouter: `0x${string}`;
26
28
  ccipOffRampFromSubtensor: `0x${string}`;
@@ -40,6 +42,7 @@ declare const foreverMoneyDeployment: Readonly<{
40
42
  gateway: `0x${string}`;
41
43
  legacyGateways: readonly `0x${string}`[];
42
44
  wrappedTao: `0x${string}`;
45
+ wrappedSn10: `0x${string}`;
43
46
  wrappedSn80: `0x${string}`;
44
47
  ccipRouter: `0x${string}`;
45
48
  ccipOffRampFromSubtensor: `0x${string}`;
@@ -53,6 +56,7 @@ declare const foreverMoneyDeployment: Readonly<{
53
56
  legacyGateways: readonly `0x${string}`[];
54
57
  alphaVault: `0x${string}`;
55
58
  wrappedTao: `0x${string}`;
59
+ wrappedSn10: `0x${string}`;
56
60
  wrappedSn80: `0x${string}`;
57
61
  ccipRouter: `0x${string}`;
58
62
  ccipOffRampFromBase: `0x${string}`;
@@ -95,7 +99,7 @@ declare const MIN_LIQUID_SUBTENSOR_TO_EVM_WEI: bigint;
95
99
  declare const EVM_TO_SUBTENSOR_DESTINATION_GAS_LIMIT = 3500000n;
96
100
  type SubtensorDelivery = 'liquid' | 'staked';
97
101
  type SubtensorSource = 'liquid' | 'staked';
98
- type BridgeAsset = 'tao' | 'sn80';
102
+ type BridgeAsset = 'tao' | 'sn80' | 'sn10';
99
103
  /**
100
104
  * Optional partner (integrator) fee, charged ON TOP of the bridged amount and
101
105
  * paid to `recipient` on the source chain. The full `amountWei` still crosses.
@@ -449,4 +453,4 @@ interface ViemTransactionRequest {
449
453
  }
450
454
  declare function toViemTransaction(transaction: PreparedTransaction): Readonly<ViemTransactionRequest>;
451
455
 
452
- export { BASE_CCIP_SELECTOR, BASE_CHAIN_ID, BASIS_POINTS, type BaseToSubtensorRequest, type BridgeAsset, type BridgeDirection, type BridgePreparation, type BridgeSourceStatus, type BridgeSourceStatusRequest, type BridgeSourceTransactionStatus, type BuildBaseToSubtensorPlanRequest, type BuildEvmToSubtensorPlanRequest, type BuildSubtensorToBasePlanRequest, type BuildSubtensorToEvmPlanRequest, type CcipDeliveryCheckpoint, type CcipDeliveryStatus, type CcipDeliveryStatusRequest, type CreateVaultRequest, type DepositVaultRequest, EVM_TO_SUBTENSOR_DESTINATION_GAS_LIMIT, EVM_WEI_PER_RAO, type Eip1193TransactionRequest, type EstimateRoundedStakeRequest, type EthersCompatibleTransactionRequest, type EvmToSubtensorRequest, FOREVERMONEY_DEPLOYMENT_VERSION, type ForeverMoneyClient, type ForeverMoneyClientOptions, type ForeverMoneyDeployment, ForeverMoneyError, type ForeverMoneyErrorCode, type ForeverMoneyEvmChain, GAS_LIMIT_BUFFER_BPS, type HttpTransportOptions, type LegacyRpcProvider, MAX_PARTNER_FEE_BPS, MAX_STAKE_PULLS, MIN_LIQUID_BASE_TO_SUBTENSOR_WEI, MIN_LIQUID_EVM_TO_SUBTENSOR_WEI, MIN_LIQUID_SUBTENSOR_TO_EVM_WEI, NETWORK_FEE_BUFFER_BPS, type PartnerFee, type PreparedTransaction, RAO_PER_TAO, ROBINHOOD_CCIP_SELECTOR, ROBINHOOD_CHAIN_ID, type ReceiptLog, type RoundedStakeEstimate, type RpcRequest, type RpcTransport, SN80_NETUID, SUBTENSOR_CCIP_SELECTOR, SUBTENSOR_CHAIN_ID, type StakePosition, type StakePull, type StakeRoundingOptions, type StakeRoundingResult, type SubtensorDelivery, type SubtensorSource, type SubtensorToBaseRequest, type SubtensorToEvmRequest, type TrackingProvider, type TransactionAction, type TransactionPlan, type TransactionReceiptLike, type TransactionStep, type TransactionStepKind, type VaultStashToken, type VaultTokenAllowance, type ViemTransactionRequest, type WithdrawVaultRequest, assertWholeRao, bridgeMessageIdFromReceipt, buildBaseToSubtensorPlan, buildClaimVaultFeesPlan, buildCreateVaultPlan, buildDepositVaultPlan, buildEvmToSubtensorPlan, buildSetVaultStakingPlan, buildSubtensorToBasePlan, buildSubtensorToEvmPlan, buildWithdrawVaultPlan, createForeverMoneyClient, destinationChainId, estimateRoundedStake, evmChainFromBridgeDirection, evmToMirrorSS58, feeWithBuffer, foreverMoneyAbis, foreverMoneyDeployment, formatTaoAmount, gasLimitWithBuffer, getBridgeSourceStatus, getCcipDeliveryCheckpoint, getCcipDeliveryStatus, getForeverMoneyEvmDeployment, http, isBittensorSS58, isEvmToSubtensorDirection, normalizeEvmAddress, normalizeSS58, parseTaoAmount, partnerFeeCut, partnerFeeTaoTopUp, sourceChainId, ss58ToPublicKey, stakedMinimumOutput, strandedStakeSource, toEip1193Transaction, toEthersTransaction, toViemTransaction, vaultManagerFromCreationReceipt };
456
+ export { BASE_CCIP_SELECTOR, BASE_CHAIN_ID, BASIS_POINTS, type BaseToSubtensorRequest, type BridgeAsset, type BridgeDirection, type BridgePreparation, type BridgeSourceStatus, type BridgeSourceStatusRequest, type BridgeSourceTransactionStatus, type BuildBaseToSubtensorPlanRequest, type BuildEvmToSubtensorPlanRequest, type BuildSubtensorToBasePlanRequest, type BuildSubtensorToEvmPlanRequest, type CcipDeliveryCheckpoint, type CcipDeliveryStatus, type CcipDeliveryStatusRequest, type CreateVaultRequest, type DepositVaultRequest, EVM_TO_SUBTENSOR_DESTINATION_GAS_LIMIT, EVM_WEI_PER_RAO, type Eip1193TransactionRequest, type EstimateRoundedStakeRequest, type EthersCompatibleTransactionRequest, type EvmToSubtensorRequest, FOREVERMONEY_DEPLOYMENT_VERSION, type ForeverMoneyClient, type ForeverMoneyClientOptions, type ForeverMoneyDeployment, ForeverMoneyError, type ForeverMoneyErrorCode, type ForeverMoneyEvmChain, GAS_LIMIT_BUFFER_BPS, type HttpTransportOptions, type LegacyRpcProvider, MAX_PARTNER_FEE_BPS, MAX_STAKE_PULLS, MIN_LIQUID_BASE_TO_SUBTENSOR_WEI, MIN_LIQUID_EVM_TO_SUBTENSOR_WEI, MIN_LIQUID_SUBTENSOR_TO_EVM_WEI, NETWORK_FEE_BUFFER_BPS, type PartnerFee, type PreparedTransaction, RAO_PER_TAO, ROBINHOOD_CCIP_SELECTOR, ROBINHOOD_CHAIN_ID, type ReceiptLog, type RoundedStakeEstimate, type RpcRequest, type RpcTransport, SN10_NETUID, SN80_NETUID, SUBTENSOR_CCIP_SELECTOR, SUBTENSOR_CHAIN_ID, type StakePosition, type StakePull, type StakeRoundingOptions, type StakeRoundingResult, type SubtensorDelivery, type SubtensorSource, type SubtensorToBaseRequest, type SubtensorToEvmRequest, type TrackingProvider, type TransactionAction, type TransactionPlan, type TransactionReceiptLike, type TransactionStep, type TransactionStepKind, type VaultStashToken, type VaultTokenAllowance, type ViemTransactionRequest, type WithdrawVaultRequest, assertWholeRao, bridgeMessageIdFromReceipt, buildBaseToSubtensorPlan, buildClaimVaultFeesPlan, buildCreateVaultPlan, buildDepositVaultPlan, buildEvmToSubtensorPlan, buildSetVaultStakingPlan, buildSubtensorToBasePlan, buildSubtensorToEvmPlan, buildWithdrawVaultPlan, createForeverMoneyClient, destinationChainId, estimateRoundedStake, evmChainFromBridgeDirection, evmToMirrorSS58, feeWithBuffer, foreverMoneyAbis, foreverMoneyDeployment, formatTaoAmount, gasLimitWithBuffer, getBridgeSourceStatus, getCcipDeliveryCheckpoint, getCcipDeliveryStatus, getForeverMoneyEvmDeployment, http, isBittensorSS58, isEvmToSubtensorDirection, normalizeEvmAddress, normalizeSS58, parseTaoAmount, partnerFeeCut, partnerFeeTaoTopUp, sourceChainId, ss58ToPublicKey, stakedMinimumOutput, strandedStakeSource, toEip1193Transaction, toEthersTransaction, toViemTransaction, vaultManagerFromCreationReceipt };
package/dist/index.d.ts CHANGED
@@ -8,10 +8,11 @@ declare const ROBINHOOD_CCIP_SELECTOR = 6180753054346818345n;
8
8
  declare const SUBTENSOR_CCIP_SELECTOR = 2135107236357186872n;
9
9
  declare const RAO_PER_TAO = 1000000000n;
10
10
  declare const EVM_WEI_PER_RAO = 1000000000n;
11
+ declare const SN10_NETUID = 10n;
11
12
  declare const SN80_NETUID = 80n;
12
- declare const FOREVERMONEY_DEPLOYMENT_VERSION: "1.4.0";
13
+ declare const FOREVERMONEY_DEPLOYMENT_VERSION: "1.5.0";
13
14
  declare const foreverMoneyDeployment: Readonly<{
14
- version: "1.4.0";
15
+ version: "1.5.0";
15
16
  base: Readonly<{
16
17
  key: "base";
17
18
  name: "Base";
@@ -21,6 +22,7 @@ declare const foreverMoneyDeployment: Readonly<{
21
22
  gateway: `0x${string}`;
22
23
  legacyGateways: readonly `0x${string}`[];
23
24
  wrappedTao: `0x${string}`;
25
+ wrappedSn10: `0x${string}`;
24
26
  wrappedSn80: `0x${string}`;
25
27
  ccipRouter: `0x${string}`;
26
28
  ccipOffRampFromSubtensor: `0x${string}`;
@@ -40,6 +42,7 @@ declare const foreverMoneyDeployment: Readonly<{
40
42
  gateway: `0x${string}`;
41
43
  legacyGateways: readonly `0x${string}`[];
42
44
  wrappedTao: `0x${string}`;
45
+ wrappedSn10: `0x${string}`;
43
46
  wrappedSn80: `0x${string}`;
44
47
  ccipRouter: `0x${string}`;
45
48
  ccipOffRampFromSubtensor: `0x${string}`;
@@ -53,6 +56,7 @@ declare const foreverMoneyDeployment: Readonly<{
53
56
  legacyGateways: readonly `0x${string}`[];
54
57
  alphaVault: `0x${string}`;
55
58
  wrappedTao: `0x${string}`;
59
+ wrappedSn10: `0x${string}`;
56
60
  wrappedSn80: `0x${string}`;
57
61
  ccipRouter: `0x${string}`;
58
62
  ccipOffRampFromBase: `0x${string}`;
@@ -95,7 +99,7 @@ declare const MIN_LIQUID_SUBTENSOR_TO_EVM_WEI: bigint;
95
99
  declare const EVM_TO_SUBTENSOR_DESTINATION_GAS_LIMIT = 3500000n;
96
100
  type SubtensorDelivery = 'liquid' | 'staked';
97
101
  type SubtensorSource = 'liquid' | 'staked';
98
- type BridgeAsset = 'tao' | 'sn80';
102
+ type BridgeAsset = 'tao' | 'sn80' | 'sn10';
99
103
  /**
100
104
  * Optional partner (integrator) fee, charged ON TOP of the bridged amount and
101
105
  * paid to `recipient` on the source chain. The full `amountWei` still crosses.
@@ -449,4 +453,4 @@ interface ViemTransactionRequest {
449
453
  }
450
454
  declare function toViemTransaction(transaction: PreparedTransaction): Readonly<ViemTransactionRequest>;
451
455
 
452
- export { BASE_CCIP_SELECTOR, BASE_CHAIN_ID, BASIS_POINTS, type BaseToSubtensorRequest, type BridgeAsset, type BridgeDirection, type BridgePreparation, type BridgeSourceStatus, type BridgeSourceStatusRequest, type BridgeSourceTransactionStatus, type BuildBaseToSubtensorPlanRequest, type BuildEvmToSubtensorPlanRequest, type BuildSubtensorToBasePlanRequest, type BuildSubtensorToEvmPlanRequest, type CcipDeliveryCheckpoint, type CcipDeliveryStatus, type CcipDeliveryStatusRequest, type CreateVaultRequest, type DepositVaultRequest, EVM_TO_SUBTENSOR_DESTINATION_GAS_LIMIT, EVM_WEI_PER_RAO, type Eip1193TransactionRequest, type EstimateRoundedStakeRequest, type EthersCompatibleTransactionRequest, type EvmToSubtensorRequest, FOREVERMONEY_DEPLOYMENT_VERSION, type ForeverMoneyClient, type ForeverMoneyClientOptions, type ForeverMoneyDeployment, ForeverMoneyError, type ForeverMoneyErrorCode, type ForeverMoneyEvmChain, GAS_LIMIT_BUFFER_BPS, type HttpTransportOptions, type LegacyRpcProvider, MAX_PARTNER_FEE_BPS, MAX_STAKE_PULLS, MIN_LIQUID_BASE_TO_SUBTENSOR_WEI, MIN_LIQUID_EVM_TO_SUBTENSOR_WEI, MIN_LIQUID_SUBTENSOR_TO_EVM_WEI, NETWORK_FEE_BUFFER_BPS, type PartnerFee, type PreparedTransaction, RAO_PER_TAO, ROBINHOOD_CCIP_SELECTOR, ROBINHOOD_CHAIN_ID, type ReceiptLog, type RoundedStakeEstimate, type RpcRequest, type RpcTransport, SN80_NETUID, SUBTENSOR_CCIP_SELECTOR, SUBTENSOR_CHAIN_ID, type StakePosition, type StakePull, type StakeRoundingOptions, type StakeRoundingResult, type SubtensorDelivery, type SubtensorSource, type SubtensorToBaseRequest, type SubtensorToEvmRequest, type TrackingProvider, type TransactionAction, type TransactionPlan, type TransactionReceiptLike, type TransactionStep, type TransactionStepKind, type VaultStashToken, type VaultTokenAllowance, type ViemTransactionRequest, type WithdrawVaultRequest, assertWholeRao, bridgeMessageIdFromReceipt, buildBaseToSubtensorPlan, buildClaimVaultFeesPlan, buildCreateVaultPlan, buildDepositVaultPlan, buildEvmToSubtensorPlan, buildSetVaultStakingPlan, buildSubtensorToBasePlan, buildSubtensorToEvmPlan, buildWithdrawVaultPlan, createForeverMoneyClient, destinationChainId, estimateRoundedStake, evmChainFromBridgeDirection, evmToMirrorSS58, feeWithBuffer, foreverMoneyAbis, foreverMoneyDeployment, formatTaoAmount, gasLimitWithBuffer, getBridgeSourceStatus, getCcipDeliveryCheckpoint, getCcipDeliveryStatus, getForeverMoneyEvmDeployment, http, isBittensorSS58, isEvmToSubtensorDirection, normalizeEvmAddress, normalizeSS58, parseTaoAmount, partnerFeeCut, partnerFeeTaoTopUp, sourceChainId, ss58ToPublicKey, stakedMinimumOutput, strandedStakeSource, toEip1193Transaction, toEthersTransaction, toViemTransaction, vaultManagerFromCreationReceipt };
456
+ export { BASE_CCIP_SELECTOR, BASE_CHAIN_ID, BASIS_POINTS, type BaseToSubtensorRequest, type BridgeAsset, type BridgeDirection, type BridgePreparation, type BridgeSourceStatus, type BridgeSourceStatusRequest, type BridgeSourceTransactionStatus, type BuildBaseToSubtensorPlanRequest, type BuildEvmToSubtensorPlanRequest, type BuildSubtensorToBasePlanRequest, type BuildSubtensorToEvmPlanRequest, type CcipDeliveryCheckpoint, type CcipDeliveryStatus, type CcipDeliveryStatusRequest, type CreateVaultRequest, type DepositVaultRequest, EVM_TO_SUBTENSOR_DESTINATION_GAS_LIMIT, EVM_WEI_PER_RAO, type Eip1193TransactionRequest, type EstimateRoundedStakeRequest, type EthersCompatibleTransactionRequest, type EvmToSubtensorRequest, FOREVERMONEY_DEPLOYMENT_VERSION, type ForeverMoneyClient, type ForeverMoneyClientOptions, type ForeverMoneyDeployment, ForeverMoneyError, type ForeverMoneyErrorCode, type ForeverMoneyEvmChain, GAS_LIMIT_BUFFER_BPS, type HttpTransportOptions, type LegacyRpcProvider, MAX_PARTNER_FEE_BPS, MAX_STAKE_PULLS, MIN_LIQUID_BASE_TO_SUBTENSOR_WEI, MIN_LIQUID_EVM_TO_SUBTENSOR_WEI, MIN_LIQUID_SUBTENSOR_TO_EVM_WEI, NETWORK_FEE_BUFFER_BPS, type PartnerFee, type PreparedTransaction, RAO_PER_TAO, ROBINHOOD_CCIP_SELECTOR, ROBINHOOD_CHAIN_ID, type ReceiptLog, type RoundedStakeEstimate, type RpcRequest, type RpcTransport, SN10_NETUID, SN80_NETUID, SUBTENSOR_CCIP_SELECTOR, SUBTENSOR_CHAIN_ID, type StakePosition, type StakePull, type StakeRoundingOptions, type StakeRoundingResult, type SubtensorDelivery, type SubtensorSource, type SubtensorToBaseRequest, type SubtensorToEvmRequest, type TrackingProvider, type TransactionAction, type TransactionPlan, type TransactionReceiptLike, type TransactionStep, type TransactionStepKind, type VaultStashToken, type VaultTokenAllowance, type ViemTransactionRequest, type WithdrawVaultRequest, assertWholeRao, bridgeMessageIdFromReceipt, buildBaseToSubtensorPlan, buildClaimVaultFeesPlan, buildCreateVaultPlan, buildDepositVaultPlan, buildEvmToSubtensorPlan, buildSetVaultStakingPlan, buildSubtensorToBasePlan, buildSubtensorToEvmPlan, buildWithdrawVaultPlan, createForeverMoneyClient, destinationChainId, estimateRoundedStake, evmChainFromBridgeDirection, evmToMirrorSS58, feeWithBuffer, foreverMoneyAbis, foreverMoneyDeployment, formatTaoAmount, gasLimitWithBuffer, getBridgeSourceStatus, getCcipDeliveryCheckpoint, getCcipDeliveryStatus, getForeverMoneyEvmDeployment, http, isBittensorSS58, isEvmToSubtensorDirection, normalizeEvmAddress, normalizeSS58, parseTaoAmount, partnerFeeCut, partnerFeeTaoTopUp, sourceChainId, ss58ToPublicKey, stakedMinimumOutput, strandedStakeSource, toEip1193Transaction, toEthersTransaction, toViemTransaction, vaultManagerFromCreationReceipt };
package/dist/index.js CHANGED
@@ -8,8 +8,9 @@ var ROBINHOOD_CCIP_SELECTOR = 6180753054346818345n;
8
8
  var SUBTENSOR_CCIP_SELECTOR = 2135107236357186872n;
9
9
  var RAO_PER_TAO = 1000000000n;
10
10
  var EVM_WEI_PER_RAO = 1000000000n;
11
+ var SN10_NETUID = 10n;
11
12
  var SN80_NETUID = 80n;
12
- var FOREVERMONEY_DEPLOYMENT_VERSION = "1.4.0";
13
+ var FOREVERMONEY_DEPLOYMENT_VERSION = "1.5.0";
13
14
  var foreverMoneyDeployment = Object.freeze({
14
15
  version: FOREVERMONEY_DEPLOYMENT_VERSION,
15
16
  base: Object.freeze({
@@ -27,6 +28,9 @@ var foreverMoneyDeployment = Object.freeze({
27
28
  wrappedTao: getAddress(
28
29
  "0xf3081494b87e8d5fb7960f066e931d1d0e6e3d67"
29
30
  ),
31
+ wrappedSn10: getAddress(
32
+ "0xDdDE5965D49e69b6362BD8743e139a45dBFEb7b3"
33
+ ),
30
34
  wrappedSn80: getAddress(
31
35
  "0x6f63d869011f95274498023b4abfc00b30c34378"
32
36
  ),
@@ -62,6 +66,9 @@ var foreverMoneyDeployment = Object.freeze({
62
66
  wrappedTao: getAddress(
63
67
  "0xf3081494B87e8D5fb7960f066E931D1D0e6E3d67"
64
68
  ),
69
+ wrappedSn10: getAddress(
70
+ "0xDdDE5965D49e69b6362BD8743e139a45dBFEb7b3"
71
+ ),
65
72
  wrappedSn80: getAddress(
66
73
  "0x6f63d869011f95274498023b4abfc00b30c34378"
67
74
  ),
@@ -91,6 +98,9 @@ var foreverMoneyDeployment = Object.freeze({
91
98
  wrappedTao: getAddress(
92
99
  "0xC5b6C1632d34901239396F5E1BDe54B342900256"
93
100
  ),
101
+ wrappedSn10: getAddress(
102
+ "0xcd0836D1ecE4AEDf5B39f2792e0790BBE79449b3"
103
+ ),
94
104
  wrappedSn80: getAddress(
95
105
  "0xfD628dE75EF96f0A5C59659159C6cA81E0DC2222"
96
106
  ),
@@ -738,18 +748,19 @@ function assertPartnerFeeAllowed(fee, maxBps) {
738
748
  }
739
749
  }
740
750
  function bridgeAsset(evmChain, asset = "tao") {
741
- if (asset !== "tao" && asset !== "sn80") {
751
+ if (asset !== "tao" && asset !== "sn80" && asset !== "sn10") {
742
752
  throw new ForeverMoneyError(
743
753
  "INVALID_TRANSACTION_PLAN",
744
- 'Asset must be "tao" or "sn80".'
754
+ 'Asset must be "tao", "sn80", or "sn10".'
745
755
  );
746
756
  }
747
757
  const evm = getForeverMoneyEvmDeployment(evmChain);
748
- return asset === "sn80" ? {
749
- evmToken: evm.contracts.wrappedSn80,
750
- subtensorToken: foreverMoneyDeployment.subtensor.contracts.wrappedSn80,
751
- label: "SN80",
752
- wrappedLabel: "SN80"
758
+ const tokenKey = asset === "sn10" ? "wrappedSn10" : "wrappedSn80";
759
+ return asset !== "tao" ? {
760
+ evmToken: evm.contracts[tokenKey],
761
+ subtensorToken: foreverMoneyDeployment.subtensor.contracts[tokenKey],
762
+ label: asset.toUpperCase(),
763
+ wrappedLabel: asset.toUpperCase()
753
764
  } : {
754
765
  evmToken: evm.contracts.wrappedTao,
755
766
  subtensorToken: foreverMoneyDeployment.subtensor.contracts.wrappedTao,
@@ -758,16 +769,17 @@ function bridgeAsset(evmChain, asset = "tao") {
758
769
  };
759
770
  }
760
771
  function assertAssetMode(asset, mode) {
761
- if (asset === "sn80" && mode !== "staked") {
772
+ if ((asset === "sn80" || asset === "sn10") && mode !== "staked") {
762
773
  throw new ForeverMoneyError(
763
774
  "INVALID_TRANSACTION_PLAN",
764
- "SN80 bridging requires staked subnet 80 input or delivery; liquid TAO conversion is not supported."
775
+ `${asset.toUpperCase()} bridging requires staked subnet ${asset === "sn10" ? SN10_NETUID : SN80_NETUID} input or delivery; liquid TAO conversion is not supported.`
765
776
  );
766
777
  }
767
778
  }
768
779
  function sourceNetuid(input) {
769
780
  if (input.source !== "staked") return void 0;
770
- const netuid = input.netuid ?? (input.asset === "sn80" ? SN80_NETUID : void 0);
781
+ const assetNetuid = input.asset === "sn10" ? SN10_NETUID : input.asset === "sn80" ? SN80_NETUID : void 0;
782
+ const netuid = input.netuid ?? assetNetuid;
771
783
  if (netuid === void 0) {
772
784
  throw new ForeverMoneyError(
773
785
  "INVALID_TRANSACTION_PLAN",
@@ -775,10 +787,10 @@ function sourceNetuid(input) {
775
787
  );
776
788
  }
777
789
  assertNonNegativeAmount(netuid, "netuid");
778
- if (input.asset === "sn80" && netuid !== SN80_NETUID) {
790
+ if (assetNetuid !== void 0 && netuid !== assetNetuid) {
779
791
  throw new ForeverMoneyError(
780
792
  "INVALID_TRANSACTION_PLAN",
781
- "SN80 staking approvals must use netuid 80."
793
+ `${input.asset.toUpperCase()} staking approvals must use netuid ${assetNetuid}.`
782
794
  );
783
795
  }
784
796
  return netuid;
@@ -2508,6 +2520,7 @@ export {
2508
2520
  RAO_PER_TAO,
2509
2521
  ROBINHOOD_CCIP_SELECTOR,
2510
2522
  ROBINHOOD_CHAIN_ID,
2523
+ SN10_NETUID,
2511
2524
  SN80_NETUID,
2512
2525
  SUBTENSOR_CCIP_SELECTOR,
2513
2526
  SUBTENSOR_CHAIN_ID,