@bitgo-beta/sdk-coin-sol 7.6.4-beta.73 → 7.6.4-beta.731
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/cjs/src/bigint-buffer-guard.d.ts.map +1 -0
- package/dist/cjs/src/bigint-buffer-guard.js +29 -0
- package/dist/cjs/src/index.d.ts.map +1 -0
- package/dist/{src → cjs/src}/index.js +1 -1
- package/dist/{src → cjs/src}/lib/ataInitializationBuilder.d.ts +12 -1
- package/dist/cjs/src/lib/ataInitializationBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/ataInitializationBuilder.js +231 -0
- package/dist/cjs/src/lib/closeAtaBuilder.d.ts +55 -0
- package/dist/cjs/src/lib/closeAtaBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/closeAtaBuilder.js +162 -0
- package/dist/cjs/src/lib/confidentialTransferBuilder.d.ts +128 -0
- package/dist/cjs/src/lib/confidentialTransferBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/confidentialTransferBuilder.js +311 -0
- package/dist/{src → cjs/src}/lib/constants.d.ts +96 -2
- package/dist/cjs/src/lib/constants.d.ts.map +1 -0
- package/dist/cjs/src/lib/constants.js +276 -0
- package/dist/{src → cjs/src}/lib/customInstructionBuilder.d.ts +13 -2
- package/dist/cjs/src/lib/customInstructionBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/customInstructionBuilder.js +392 -0
- package/dist/cjs/src/lib/explainTransactionWasm.d.ts +21 -0
- package/dist/cjs/src/lib/explainTransactionWasm.d.ts.map +1 -0
- package/dist/cjs/src/lib/explainTransactionWasm.js +304 -0
- package/dist/cjs/src/lib/iface.d.ts +526 -0
- package/dist/cjs/src/lib/iface.d.ts.map +1 -0
- package/dist/cjs/src/lib/iface.js +7 -0
- package/dist/{src → cjs/src}/lib/index.d.ts +9 -0
- package/dist/cjs/src/lib/index.d.ts.map +1 -0
- package/dist/cjs/src/lib/index.js +106 -0
- package/dist/{src → cjs/src}/lib/instructionParamsFactory.d.ts +3 -1
- package/dist/cjs/src/lib/instructionParamsFactory.d.ts.map +1 -0
- package/dist/cjs/src/lib/instructionParamsFactory.js +1280 -0
- package/dist/cjs/src/lib/jitoStakePoolOperations.d.ts.map +1 -0
- package/dist/cjs/src/lib/jitoStakePoolOperations.js +200 -0
- package/dist/{src → cjs/src}/lib/keyPair.d.ts +6 -0
- package/dist/cjs/src/lib/keyPair.d.ts.map +1 -0
- package/dist/cjs/src/lib/keyPair.js +112 -0
- package/dist/cjs/src/lib/messages/index.d.ts.map +1 -0
- package/dist/{src → cjs/src}/lib/messages/index.js +1 -1
- package/dist/cjs/src/lib/messages/messageBuilderFactory.d.ts.map +1 -0
- package/dist/cjs/src/lib/messages/messageBuilderFactory.js +19 -0
- package/dist/cjs/src/lib/recoverNestedAtaBuilder.d.ts +25 -0
- package/dist/cjs/src/lib/recoverNestedAtaBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/recoverNestedAtaBuilder.js +90 -0
- package/dist/cjs/src/lib/scaledUiAmount.d.ts +30 -0
- package/dist/cjs/src/lib/scaledUiAmount.d.ts.map +1 -0
- package/dist/cjs/src/lib/scaledUiAmount.js +112 -0
- package/dist/cjs/src/lib/serialization/codecs/v1/config.d.ts +21 -0
- package/dist/cjs/src/lib/serialization/codecs/v1/config.d.ts.map +1 -0
- package/dist/cjs/src/lib/serialization/codecs/v1/config.js +34 -0
- package/dist/cjs/src/lib/serialization/codecs/v1/instruction.d.ts +14 -0
- package/dist/cjs/src/lib/serialization/codecs/v1/instruction.d.ts.map +1 -0
- package/dist/cjs/src/lib/serialization/codecs/v1/instruction.js +32 -0
- package/dist/cjs/src/lib/serialization/codecs/v1/message.d.ts +27 -0
- package/dist/cjs/src/lib/serialization/codecs/v1/message.d.ts.map +1 -0
- package/dist/cjs/src/lib/serialization/codecs/v1/message.js +196 -0
- package/dist/cjs/src/lib/serialization/compileTransactionMessage.d.ts +36 -0
- package/dist/cjs/src/lib/serialization/compileTransactionMessage.d.ts.map +1 -0
- package/dist/cjs/src/lib/serialization/compileTransactionMessage.js +211 -0
- package/dist/cjs/src/lib/serialization/index.d.ts +5 -0
- package/dist/cjs/src/lib/serialization/index.d.ts.map +1 -0
- package/dist/cjs/src/lib/serialization/index.js +27 -0
- package/dist/cjs/src/lib/serialization/parseWireTransaction.d.ts +9 -0
- package/dist/cjs/src/lib/serialization/parseWireTransaction.d.ts.map +1 -0
- package/dist/cjs/src/lib/serialization/parseWireTransaction.js +58 -0
- package/dist/cjs/src/lib/serialization/wire-transaction.d.ts +14 -0
- package/dist/cjs/src/lib/serialization/wire-transaction.d.ts.map +1 -0
- package/dist/cjs/src/lib/serialization/wire-transaction.js +51 -0
- package/dist/{src → cjs/src}/lib/solInstructionFactory.d.ts +1 -1
- package/dist/cjs/src/lib/solInstructionFactory.d.ts.map +1 -0
- package/dist/cjs/src/lib/solInstructionFactory.js +1094 -0
- package/dist/cjs/src/lib/stakingActivateBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/stakingActivateBuilder.js +129 -0
- package/dist/cjs/src/lib/stakingAuthorizeBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/stakingAuthorizeBuilder.js +89 -0
- package/dist/cjs/src/lib/stakingDeactivateBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/stakingDeactivateBuilder.js +214 -0
- package/dist/cjs/src/lib/stakingDelegateBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/stakingDelegateBuilder.js +126 -0
- package/dist/cjs/src/lib/stakingRawMsgAuthorizeBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/stakingRawMsgAuthorizeBuilder.js +110 -0
- package/dist/cjs/src/lib/stakingWithdrawBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/stakingWithdrawBuilder.js +87 -0
- package/dist/cjs/src/lib/token2022Resolve.d.ts +106 -0
- package/dist/cjs/src/lib/token2022Resolve.d.ts.map +1 -0
- package/dist/cjs/src/lib/token2022Resolve.js +199 -0
- package/dist/cjs/src/lib/tokenExtensions.d.ts +26 -0
- package/dist/cjs/src/lib/tokenExtensions.d.ts.map +1 -0
- package/dist/cjs/src/lib/tokenExtensions.js +109 -0
- package/dist/{src → cjs/src}/lib/tokenTransferBuilder.d.ts +27 -1
- package/dist/cjs/src/lib/tokenTransferBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/tokenTransferBuilder.js +237 -0
- package/dist/{src → cjs/src}/lib/transaction.d.ts +34 -1
- package/dist/cjs/src/lib/transaction.d.ts.map +1 -0
- package/dist/cjs/src/lib/transaction.js +704 -0
- package/dist/{src → cjs/src}/lib/transactionBuilder.d.ts +42 -1
- package/dist/cjs/src/lib/transactionBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/transactionBuilder.js +462 -0
- package/dist/{src → cjs/src}/lib/transactionBuilderFactory.d.ts +37 -0
- package/dist/cjs/src/lib/transactionBuilderFactory.d.ts.map +1 -0
- package/dist/cjs/src/lib/transactionBuilderFactory.js +249 -0
- package/dist/cjs/src/lib/transferBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/transferBuilder.js +81 -0
- package/dist/cjs/src/lib/transferBuilderV2.d.ts +69 -0
- package/dist/cjs/src/lib/transferBuilderV2.d.ts.map +1 -0
- package/dist/cjs/src/lib/transferBuilderV2.js +252 -0
- package/dist/{src → cjs/src}/lib/utils.d.ts +5 -0
- package/dist/cjs/src/lib/utils.d.ts.map +1 -0
- package/dist/cjs/src/lib/utils.js +665 -0
- package/dist/cjs/src/lib/v1CustomInstructionBuilder.d.ts +21 -0
- package/dist/cjs/src/lib/v1CustomInstructionBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/v1CustomInstructionBuilder.js +28 -0
- package/dist/cjs/src/lib/v1PaymentBuilder.d.ts +36 -0
- package/dist/cjs/src/lib/v1PaymentBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/v1PaymentBuilder.js +70 -0
- package/dist/cjs/src/lib/v1TransactionBuilder.d.ts +253 -0
- package/dist/cjs/src/lib/v1TransactionBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/v1TransactionBuilder.js +601 -0
- package/dist/cjs/src/lib/walletInitializationBuilder.d.ts.map +1 -0
- package/dist/cjs/src/lib/walletInitializationBuilder.js +71 -0
- package/dist/cjs/src/register.d.ts +5 -0
- package/dist/cjs/src/register.d.ts.map +1 -0
- package/dist/cjs/src/register.js +29 -0
- package/dist/{src → cjs/src}/sol.d.ts +114 -3
- package/dist/cjs/src/sol.d.ts.map +1 -0
- package/dist/cjs/src/sol.js +1697 -0
- package/dist/{src → cjs/src}/solToken.d.ts +7 -0
- package/dist/cjs/src/solToken.d.ts.map +1 -0
- package/dist/cjs/src/solToken.js +79 -0
- package/dist/cjs/src/tsol.d.ts.map +1 -0
- package/dist/cjs/src/tsol.js +24 -0
- package/dist/{test → cjs/test}/fixtures/sol.d.ts.map +1 -1
- package/dist/cjs/test/fixtures/sol.js +1433 -0
- package/dist/{test → cjs/test}/resources/sol.d.ts +29 -29
- package/dist/cjs/test/resources/sol.d.ts.map +1 -0
- package/dist/cjs/test/resources/sol.js +320 -0
- package/dist/cjs/test/unit/explainTransactionWasm.d.ts +5 -0
- package/dist/cjs/test/unit/explainTransactionWasm.d.ts.map +1 -0
- package/dist/cjs/test/unit/explainTransactionWasm.js +66 -0
- package/dist/cjs/test/unit/fixtures/solBackupKey.d.ts.map +1 -0
- package/dist/cjs/test/unit/fixtures/solBackupKey.js +8 -0
- package/dist/cjs/test/unit/getBuilderFactory.d.ts.map +1 -0
- package/dist/cjs/test/unit/getBuilderFactory.js +10 -0
- package/dist/cjs/test/unit/instructionParamsFactory.d.ts.map +1 -0
- package/dist/cjs/test/unit/instructionParamsFactory.js +425 -0
- package/dist/cjs/test/unit/instructionParamsFactory.staking.d.ts.map +1 -0
- package/dist/cjs/test/unit/instructionParamsFactory.staking.js +1059 -0
- package/dist/cjs/test/unit/jitoWasmVerification.d.ts +2 -0
- package/dist/cjs/test/unit/jitoWasmVerification.d.ts.map +1 -0
- package/dist/cjs/test/unit/jitoWasmVerification.js +78 -0
- package/dist/{test → cjs/test}/unit/keyPair.d.ts.map +1 -1
- package/dist/cjs/test/unit/keyPair.js +177 -0
- package/dist/cjs/test/unit/messages/messageBuilderFactory.d.ts.map +1 -0
- package/dist/cjs/test/unit/messages/messageBuilderFactory.js +118 -0
- package/dist/cjs/test/unit/messages/simpleMessageBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/messages/simpleMessageBuilder.js +194 -0
- package/dist/cjs/test/unit/register.d.ts +2 -0
- package/dist/cjs/test/unit/register.d.ts.map +1 -0
- package/dist/cjs/test/unit/register.js +65 -0
- package/dist/cjs/test/unit/scaledUiAmount.d.ts +2 -0
- package/dist/cjs/test/unit/scaledUiAmount.d.ts.map +1 -0
- package/dist/cjs/test/unit/scaledUiAmount.js +101 -0
- package/dist/cjs/test/unit/serialization/decodeV1Message.d.ts +2 -0
- package/dist/cjs/test/unit/serialization/decodeV1Message.d.ts.map +1 -0
- package/dist/cjs/test/unit/serialization/decodeV1Message.js +63 -0
- package/dist/cjs/test/unit/serialization/exportV1.d.ts +2 -0
- package/dist/cjs/test/unit/serialization/exportV1.d.ts.map +1 -0
- package/dist/cjs/test/unit/serialization/exportV1.js +21 -0
- package/dist/cjs/test/unit/serialization/parseWireTransaction.d.ts +2 -0
- package/dist/cjs/test/unit/serialization/parseWireTransaction.d.ts.map +1 -0
- package/dist/cjs/test/unit/serialization/parseWireTransaction.js +90 -0
- package/dist/cjs/test/unit/serialization/transactionV1.d.ts +2 -0
- package/dist/cjs/test/unit/serialization/transactionV1.d.ts.map +1 -0
- package/dist/cjs/test/unit/serialization/transactionV1.js +136 -0
- package/dist/{test → cjs/test}/unit/sol.d.ts.map +1 -1
- package/dist/cjs/test/unit/sol.js +5364 -0
- package/dist/cjs/test/unit/solInstructionFactory.d.ts.map +1 -0
- package/dist/cjs/test/unit/solInstructionFactory.js +623 -0
- package/dist/cjs/test/unit/solToken.d.ts.map +1 -0
- package/dist/cjs/test/unit/solToken.js +37 -0
- package/dist/cjs/test/unit/token2022Resolve.d.ts +2 -0
- package/dist/cjs/test/unit/token2022Resolve.d.ts.map +1 -0
- package/dist/cjs/test/unit/token2022Resolve.js +252 -0
- package/dist/cjs/test/unit/tokenExtensions.d.ts +2 -0
- package/dist/cjs/test/unit/tokenExtensions.d.ts.map +1 -0
- package/dist/cjs/test/unit/tokenExtensions.js +73 -0
- package/dist/cjs/test/unit/transaction.d.ts.map +1 -0
- package/dist/cjs/test/unit/transaction.js +1129 -0
- package/dist/cjs/test/unit/transactionBuilder/StakingWithdrawBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/StakingWithdrawBuilder.js +202 -0
- package/dist/cjs/test/unit/transactionBuilder/ataInitBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/ataInitBuilder.js +508 -0
- package/dist/cjs/test/unit/transactionBuilder/closeAtaBuilder.d.ts +2 -0
- package/dist/cjs/test/unit/transactionBuilder/closeAtaBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/closeAtaBuilder.js +343 -0
- package/dist/cjs/test/unit/transactionBuilder/computeUnitLimit.d.ts +2 -0
- package/dist/cjs/test/unit/transactionBuilder/computeUnitLimit.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/computeUnitLimit.js +346 -0
- package/dist/cjs/test/unit/transactionBuilder/confidentialTransferBuilder.d.ts +2 -0
- package/dist/cjs/test/unit/transactionBuilder/confidentialTransferBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/confidentialTransferBuilder.js +909 -0
- package/dist/cjs/test/unit/transactionBuilder/confidentialTransferV1.d.ts +2 -0
- package/dist/cjs/test/unit/transactionBuilder/confidentialTransferV1.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/confidentialTransferV1.js +144 -0
- package/dist/cjs/test/unit/transactionBuilder/confidentialTransferV1Ops.d.ts +2 -0
- package/dist/cjs/test/unit/transactionBuilder/confidentialTransferV1Ops.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/confidentialTransferV1Ops.js +167 -0
- package/dist/cjs/test/unit/transactionBuilder/customInstructionBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/customInstructionBuilder.js +724 -0
- package/dist/cjs/test/unit/transactionBuilder/stakingActivateBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/stakingActivateBuilder.js +430 -0
- package/dist/cjs/test/unit/transactionBuilder/stakingAuthorizeBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/stakingAuthorizeBuilder.js +157 -0
- package/dist/cjs/test/unit/transactionBuilder/stakingDeactivateBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/stakingDeactivateBuilder.js +384 -0
- package/dist/cjs/test/unit/transactionBuilder/stakingDelegateBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/stakingDelegateBuilder.js +224 -0
- package/dist/cjs/test/unit/transactionBuilder/stakingRawMsgAuthorizeBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/stakingRawMsgAuthorizeBuilder.js +259 -0
- package/dist/cjs/test/unit/transactionBuilder/tokenTransferBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/tokenTransferBuilder.js +926 -0
- package/dist/cjs/test/unit/transactionBuilder/transactionBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/transactionBuilder.js +495 -0
- package/dist/cjs/test/unit/transactionBuilder/transferBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/transferBuilder.js +302 -0
- package/dist/cjs/test/unit/transactionBuilder/transferBuilderV2.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/transferBuilderV2.js +910 -0
- package/dist/cjs/test/unit/transactionBuilder/v1PaymentBuilder.d.ts +2 -0
- package/dist/cjs/test/unit/transactionBuilder/v1PaymentBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/v1PaymentBuilder.js +138 -0
- package/dist/cjs/test/unit/transactionBuilder/v1TransactionBuilder.d.ts +2 -0
- package/dist/cjs/test/unit/transactionBuilder/v1TransactionBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/v1TransactionBuilder.js +331 -0
- package/dist/cjs/test/unit/transactionBuilder/walletInitBuilder.d.ts.map +1 -0
- package/dist/cjs/test/unit/transactionBuilder/walletInitBuilder.js +259 -0
- package/dist/{test → cjs/test}/unit/utils.d.ts.map +1 -1
- package/dist/cjs/test/unit/utils.js +628 -0
- package/dist/cjs/test/unit/versionedTransaction.d.ts.map +1 -0
- package/dist/cjs/test/unit/versionedTransaction.js +207 -0
- package/dist/cjs/tsconfig.tsbuildinfo +1 -0
- package/dist/esm/bigint-buffer-guard.d.ts +1 -0
- package/dist/esm/index.d.ts +7 -0
- package/dist/esm/index.js +7 -0
- package/dist/esm/lib/ataInitializationBuilder.d.ts +58 -0
- package/dist/esm/lib/ataInitializationBuilder.d.ts.map +1 -0
- package/dist/esm/lib/ataInitializationBuilder.js +191 -0
- package/dist/esm/lib/closeAtaBuilder.d.ts +55 -0
- package/dist/esm/lib/closeAtaBuilder.d.ts.map +1 -0
- package/dist/esm/lib/closeAtaBuilder.js +155 -0
- package/dist/esm/lib/confidentialTransferBuilder.d.ts +128 -0
- package/dist/esm/lib/confidentialTransferBuilder.d.ts.map +1 -0
- package/dist/esm/lib/confidentialTransferBuilder.js +304 -0
- package/dist/esm/lib/constants.d.ts +234 -0
- package/dist/esm/lib/constants.d.ts.map +1 -0
- package/dist/esm/lib/constants.js +273 -0
- package/dist/esm/lib/customInstructionBuilder.d.ts +83 -0
- package/dist/{src → esm}/lib/customInstructionBuilder.d.ts.map +1 -1
- package/dist/esm/lib/customInstructionBuilder.js +385 -0
- package/dist/esm/lib/explainTransactionWasm.d.ts +21 -0
- package/dist/esm/lib/explainTransactionWasm.d.ts.map +1 -0
- package/dist/esm/lib/explainTransactionWasm.js +301 -0
- package/dist/esm/lib/iface.d.ts +526 -0
- package/dist/esm/lib/iface.d.ts.map +1 -0
- package/dist/esm/lib/iface.js +3 -0
- package/dist/esm/lib/index.d.ts +31 -0
- package/dist/esm/lib/index.d.ts.map +1 -0
- package/dist/esm/lib/index.js +31 -0
- package/dist/esm/lib/instructionParamsFactory.d.ts +14 -0
- package/dist/esm/lib/instructionParamsFactory.d.ts.map +1 -0
- package/dist/esm/lib/instructionParamsFactory.js +1272 -0
- package/dist/esm/lib/jitoStakePoolOperations.d.ts +113 -0
- package/dist/esm/lib/jitoStakePoolOperations.js +189 -0
- package/dist/esm/lib/keyPair.d.ts +32 -0
- package/dist/esm/lib/keyPair.d.ts.map +1 -0
- package/dist/esm/lib/keyPair.js +75 -0
- package/dist/esm/lib/messages/index.d.ts +2 -0
- package/dist/esm/lib/messages/index.js +2 -0
- package/dist/esm/lib/messages/messageBuilderFactory.d.ts +7 -0
- package/dist/{src → esm}/lib/messages/messageBuilderFactory.js +5 -9
- package/dist/esm/lib/recoverNestedAtaBuilder.d.ts +25 -0
- package/dist/esm/lib/recoverNestedAtaBuilder.d.ts.map +1 -0
- package/dist/esm/lib/recoverNestedAtaBuilder.js +83 -0
- package/dist/esm/lib/scaledUiAmount.d.ts +30 -0
- package/dist/esm/lib/scaledUiAmount.d.ts.map +1 -0
- package/dist/esm/lib/scaledUiAmount.js +108 -0
- package/dist/esm/lib/serialization/codecs/v1/config.d.ts +21 -0
- package/dist/esm/lib/serialization/codecs/v1/config.d.ts.map +1 -0
- package/dist/esm/lib/serialization/codecs/v1/config.js +30 -0
- package/dist/esm/lib/serialization/codecs/v1/instruction.d.ts +14 -0
- package/dist/esm/lib/serialization/codecs/v1/instruction.d.ts.map +1 -0
- package/dist/esm/lib/serialization/codecs/v1/instruction.js +29 -0
- package/dist/esm/lib/serialization/codecs/v1/message.d.ts +27 -0
- package/dist/esm/lib/serialization/codecs/v1/message.d.ts.map +1 -0
- package/dist/esm/lib/serialization/codecs/v1/message.js +188 -0
- package/dist/esm/lib/serialization/compileTransactionMessage.d.ts +36 -0
- package/dist/esm/lib/serialization/compileTransactionMessage.d.ts.map +1 -0
- package/dist/esm/lib/serialization/compileTransactionMessage.js +208 -0
- package/dist/esm/lib/serialization/index.d.ts +5 -0
- package/dist/esm/lib/serialization/index.d.ts.map +1 -0
- package/dist/esm/lib/serialization/index.js +5 -0
- package/dist/esm/lib/serialization/parseWireTransaction.d.ts +9 -0
- package/dist/esm/lib/serialization/parseWireTransaction.d.ts.map +1 -0
- package/dist/esm/lib/serialization/parseWireTransaction.js +50 -0
- package/dist/esm/lib/serialization/wire-transaction.d.ts +14 -0
- package/dist/esm/lib/serialization/wire-transaction.d.ts.map +1 -0
- package/dist/esm/lib/serialization/wire-transaction.js +48 -0
- package/dist/esm/lib/solInstructionFactory.d.ts +10 -0
- package/dist/esm/lib/solInstructionFactory.d.ts.map +1 -0
- package/dist/esm/lib/solInstructionFactory.js +1088 -0
- package/dist/esm/lib/stakingActivateBuilder.d.ts +59 -0
- package/dist/{src → esm}/lib/stakingActivateBuilder.d.ts.map +1 -1
- package/dist/esm/lib/stakingActivateBuilder.js +122 -0
- package/dist/esm/lib/stakingAuthorizeBuilder.d.ts +43 -0
- package/dist/esm/lib/stakingAuthorizeBuilder.js +82 -0
- package/dist/esm/lib/stakingDeactivateBuilder.d.ts +81 -0
- package/dist/{src → esm}/lib/stakingDeactivateBuilder.d.ts.map +1 -1
- package/dist/esm/lib/stakingDeactivateBuilder.js +207 -0
- package/dist/esm/lib/stakingDelegateBuilder.d.ts +42 -0
- package/dist/{src → esm}/lib/stakingDelegateBuilder.d.ts.map +1 -1
- package/dist/esm/lib/stakingDelegateBuilder.js +119 -0
- package/dist/esm/lib/stakingRawMsgAuthorizeBuilder.d.ts +33 -0
- package/dist/esm/lib/stakingRawMsgAuthorizeBuilder.js +103 -0
- package/dist/esm/lib/stakingWithdrawBuilder.d.ts +31 -0
- package/dist/{src → esm}/lib/stakingWithdrawBuilder.d.ts.map +1 -1
- package/dist/esm/lib/stakingWithdrawBuilder.js +80 -0
- package/dist/esm/lib/token2022Resolve.d.ts +106 -0
- package/dist/esm/lib/token2022Resolve.d.ts.map +1 -0
- package/dist/esm/lib/token2022Resolve.js +194 -0
- package/dist/esm/lib/tokenExtensions.d.ts +26 -0
- package/dist/esm/lib/tokenExtensions.d.ts.map +1 -0
- package/dist/esm/lib/tokenExtensions.js +103 -0
- package/dist/esm/lib/tokenTransferBuilder.d.ts +67 -0
- package/dist/esm/lib/tokenTransferBuilder.d.ts.map +1 -0
- package/dist/esm/lib/tokenTransferBuilder.js +230 -0
- package/dist/esm/lib/transaction.d.ts +136 -0
- package/dist/esm/lib/transaction.d.ts.map +1 -0
- package/dist/esm/lib/transaction.js +697 -0
- package/dist/esm/lib/transactionBuilder.d.ts +169 -0
- package/dist/esm/lib/transactionBuilder.d.ts.map +1 -0
- package/dist/esm/lib/transactionBuilder.js +455 -0
- package/dist/esm/lib/transactionBuilderFactory.d.ts +152 -0
- package/dist/esm/lib/transactionBuilderFactory.d.ts.map +1 -0
- package/dist/esm/lib/transactionBuilderFactory.js +245 -0
- package/dist/esm/lib/transferBuilder.d.ts +26 -0
- package/dist/{src → esm}/lib/transferBuilder.d.ts.map +1 -1
- package/dist/esm/lib/transferBuilder.js +74 -0
- package/dist/esm/lib/transferBuilderV2.d.ts +69 -0
- package/dist/esm/lib/transferBuilderV2.d.ts.map +1 -0
- package/dist/esm/lib/transferBuilderV2.js +245 -0
- package/dist/esm/lib/utils.d.ts +205 -0
- package/dist/{src → esm}/lib/utils.d.ts.map +1 -1
- package/dist/esm/lib/utils.js +627 -0
- package/dist/esm/lib/v1CustomInstructionBuilder.d.ts +21 -0
- package/dist/esm/lib/v1CustomInstructionBuilder.d.ts.map +1 -0
- package/dist/esm/lib/v1CustomInstructionBuilder.js +24 -0
- package/dist/esm/lib/v1PaymentBuilder.d.ts +36 -0
- package/dist/esm/lib/v1PaymentBuilder.d.ts.map +1 -0
- package/dist/esm/lib/v1PaymentBuilder.js +63 -0
- package/dist/esm/lib/v1TransactionBuilder.d.ts +253 -0
- package/dist/esm/lib/v1TransactionBuilder.d.ts.map +1 -0
- package/dist/esm/lib/v1TransactionBuilder.js +591 -0
- package/dist/esm/lib/walletInitializationBuilder.d.ts +26 -0
- package/dist/esm/lib/walletInitializationBuilder.js +64 -0
- package/dist/esm/register.d.ts +5 -0
- package/dist/esm/register.d.ts.map +1 -0
- package/dist/esm/register.js +24 -0
- package/dist/esm/sol.d.ts +351 -0
- package/dist/esm/sol.d.ts.map +1 -0
- package/dist/esm/sol.js +1656 -0
- package/dist/esm/solToken.d.ts +44 -0
- package/dist/esm/solToken.d.ts.map +1 -0
- package/dist/esm/solToken.js +75 -0
- package/dist/esm/tsol.d.ts +11 -0
- package/dist/esm/tsol.js +20 -0
- package/package.json +37 -17
- package/dist/src/config/token2022StaticConfig.d.ts +0 -3
- package/dist/src/config/token2022StaticConfig.d.ts.map +0 -1
- package/dist/src/config/token2022StaticConfig.js +0 -50
- package/dist/src/lib/ataInitializationBuilder.d.ts.map +0 -1
- package/dist/src/lib/ataInitializationBuilder.js +0 -196
- package/dist/src/lib/closeAtaBuilder.d.ts +0 -19
- package/dist/src/lib/closeAtaBuilder.d.ts.map +0 -1
- package/dist/src/lib/closeAtaBuilder.js +0 -69
- package/dist/src/lib/constants.d.ts.map +0 -1
- package/dist/src/lib/constants.js +0 -171
- package/dist/src/lib/customInstructionBuilder.js +0 -289
- package/dist/src/lib/iface.d.ts +0 -244
- package/dist/src/lib/iface.d.ts.map +0 -1
- package/dist/src/lib/iface.js +0 -7
- package/dist/src/lib/index.d.ts.map +0 -1
- package/dist/src/lib/index.js +0 -77
- package/dist/src/lib/instructionParamsFactory.d.ts.map +0 -1
- package/dist/src/lib/instructionParamsFactory.js +0 -1036
- package/dist/src/lib/jitoStakePoolOperations.js +0 -200
- package/dist/src/lib/keyPair.d.ts.map +0 -1
- package/dist/src/lib/keyPair.js +0 -63
- package/dist/src/lib/solInstructionFactory.d.ts.map +0 -1
- package/dist/src/lib/solInstructionFactory.js +0 -572
- package/dist/src/lib/stakingActivateBuilder.js +0 -120
- package/dist/src/lib/stakingAuthorizeBuilder.js +0 -89
- package/dist/src/lib/stakingDeactivateBuilder.js +0 -208
- package/dist/src/lib/stakingDelegateBuilder.js +0 -120
- package/dist/src/lib/stakingRawMsgAuthorizeBuilder.js +0 -110
- package/dist/src/lib/stakingWithdrawBuilder.js +0 -78
- package/dist/src/lib/token2022Config.d.ts +0 -44
- package/dist/src/lib/token2022Config.d.ts.map +0 -1
- package/dist/src/lib/token2022Config.js +0 -27
- package/dist/src/lib/tokenTransferBuilder.d.ts.map +0 -1
- package/dist/src/lib/tokenTransferBuilder.js +0 -188
- package/dist/src/lib/transaction.d.ts.map +0 -1
- package/dist/src/lib/transaction.js +0 -595
- package/dist/src/lib/transactionBuilder.d.ts.map +0 -1
- package/dist/src/lib/transactionBuilder.js +0 -380
- package/dist/src/lib/transactionBuilderFactory.d.ts.map +0 -1
- package/dist/src/lib/transactionBuilderFactory.js +0 -202
- package/dist/src/lib/transferBuilder.js +0 -70
- package/dist/src/lib/transferBuilderV2.d.ts +0 -43
- package/dist/src/lib/transferBuilderV2.d.ts.map +0 -1
- package/dist/src/lib/transferBuilderV2.js +0 -210
- package/dist/src/lib/utils.js +0 -589
- package/dist/src/lib/walletInitializationBuilder.js +0 -71
- package/dist/src/register.d.ts +0 -3
- package/dist/src/register.d.ts.map +0 -1
- package/dist/src/register.js +0 -15
- package/dist/src/sol.d.ts.map +0 -1
- package/dist/src/sol.js +0 -1324
- package/dist/src/solToken.d.ts.map +0 -1
- package/dist/src/solToken.js +0 -69
- package/dist/src/tsol.js +0 -24
- package/dist/test/fixtures/sol.js +0 -1433
- package/dist/test/resources/sol.d.ts.map +0 -1
- package/dist/test/resources/sol.js +0 -320
- package/dist/test/unit/fixtures/solBackupKey.d.ts.map +0 -1
- package/dist/test/unit/fixtures/solBackupKey.js +0 -8
- package/dist/test/unit/getBuilderFactory.d.ts.map +0 -1
- package/dist/test/unit/getBuilderFactory.js +0 -10
- package/dist/test/unit/instructionParamsFactory.d.ts.map +0 -1
- package/dist/test/unit/instructionParamsFactory.js +0 -412
- package/dist/test/unit/instructionParamsFactory.staking.d.ts.map +0 -1
- package/dist/test/unit/instructionParamsFactory.staking.js +0 -1059
- package/dist/test/unit/keyPair.js +0 -177
- package/dist/test/unit/messages/messageBuilderFactory.d.ts.map +0 -1
- package/dist/test/unit/messages/messageBuilderFactory.js +0 -118
- package/dist/test/unit/messages/simpleMessageBuilder.d.ts.map +0 -1
- package/dist/test/unit/messages/simpleMessageBuilder.js +0 -194
- package/dist/test/unit/sol.js +0 -3180
- package/dist/test/unit/solInstructionFactory.d.ts.map +0 -1
- package/dist/test/unit/solInstructionFactory.js +0 -454
- package/dist/test/unit/solToken.d.ts.map +0 -1
- package/dist/test/unit/solToken.js +0 -31
- package/dist/test/unit/transaction.d.ts.map +0 -1
- package/dist/test/unit/transaction.js +0 -983
- package/dist/test/unit/transactionBuilder/StakingWithdrawBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/StakingWithdrawBuilder.js +0 -202
- package/dist/test/unit/transactionBuilder/ataInitBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/ataInitBuilder.js +0 -471
- package/dist/test/unit/transactionBuilder/customInstructionBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/customInstructionBuilder.js +0 -413
- package/dist/test/unit/transactionBuilder/stakingActivateBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/stakingActivateBuilder.js +0 -430
- package/dist/test/unit/transactionBuilder/stakingAuthorizeBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/stakingAuthorizeBuilder.js +0 -157
- package/dist/test/unit/transactionBuilder/stakingDeactivateBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/stakingDeactivateBuilder.js +0 -384
- package/dist/test/unit/transactionBuilder/stakingDelegateBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/stakingDelegateBuilder.js +0 -224
- package/dist/test/unit/transactionBuilder/stakingRawMsgAuthorizeBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/stakingRawMsgAuthorizeBuilder.js +0 -259
- package/dist/test/unit/transactionBuilder/tokenTransferBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/tokenTransferBuilder.js +0 -787
- package/dist/test/unit/transactionBuilder/transactionBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/transactionBuilder.js +0 -495
- package/dist/test/unit/transactionBuilder/transferBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/transferBuilder.js +0 -286
- package/dist/test/unit/transactionBuilder/transferBuilderV2.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/transferBuilderV2.js +0 -862
- package/dist/test/unit/transactionBuilder/walletInitBuilder.d.ts.map +0 -1
- package/dist/test/unit/transactionBuilder/walletInitBuilder.js +0 -259
- package/dist/test/unit/utils.js +0 -517
- package/dist/test/unit/versionedTransaction.d.ts.map +0 -1
- package/dist/test/unit/versionedTransaction.js +0 -207
- package/dist/tsconfig.tsbuildinfo +0 -1
- /package/dist/{src → cjs/src}/bigint-buffer-guard.d.ts +0 -0
- /package/dist/{src → cjs/src}/index.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/jitoStakePoolOperations.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/messages/index.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/messages/messageBuilderFactory.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/stakingActivateBuilder.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/stakingAuthorizeBuilder.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/stakingDeactivateBuilder.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/stakingDelegateBuilder.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/stakingRawMsgAuthorizeBuilder.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/stakingWithdrawBuilder.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/transferBuilder.d.ts +0 -0
- /package/dist/{src → cjs/src}/lib/walletInitializationBuilder.d.ts +0 -0
- /package/dist/{src → cjs/src}/tsol.d.ts +0 -0
- /package/dist/{test → cjs/test}/fixtures/sol.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/fixtures/solBackupKey.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/getBuilderFactory.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/instructionParamsFactory.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/instructionParamsFactory.staking.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/keyPair.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/messages/messageBuilderFactory.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/messages/simpleMessageBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/sol.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/solInstructionFactory.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/solToken.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transaction.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/StakingWithdrawBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/ataInitBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/customInstructionBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/stakingActivateBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/stakingAuthorizeBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/stakingDeactivateBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/stakingDelegateBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/stakingRawMsgAuthorizeBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/tokenTransferBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/transactionBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/transferBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/transferBuilderV2.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/transactionBuilder/walletInitBuilder.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/utils.d.ts +0 -0
- /package/dist/{test → cjs/test}/unit/versionedTransaction.d.ts +0 -0
- /package/dist/{src → esm}/bigint-buffer-guard.d.ts.map +0 -0
- /package/dist/{src → esm}/bigint-buffer-guard.js +0 -0
- /package/dist/{src → esm}/index.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/jitoStakePoolOperations.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/messages/index.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/messages/messageBuilderFactory.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/stakingAuthorizeBuilder.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/stakingRawMsgAuthorizeBuilder.d.ts.map +0 -0
- /package/dist/{src → esm}/lib/walletInitializationBuilder.d.ts.map +0 -0
- /package/dist/{src → esm}/tsol.d.ts.map +0 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
|
|
2
|
+
import { TransactionType } from '@bitgo-beta/sdk-core';
|
|
3
|
+
import { V1TransactionBuilder } from './v1TransactionBuilder';
|
|
4
|
+
/**
|
|
5
|
+
* Transaction builder for Solana v1 (SIMD-0296/0385) custom instructions.
|
|
6
|
+
*
|
|
7
|
+
* Concrete subclass of the abstract {@link V1TransactionBuilder} for `customTx`
|
|
8
|
+
* intents — the surface Wallet Platform instantiates to assemble v1 transactions
|
|
9
|
+
* from a client-supplied envelope: feed each envelope instruction as a web3.js
|
|
10
|
+
* `TransactionInstruction` via {@link V1TransactionBuilder.addInstruction}, set the
|
|
11
|
+
* fee payer via {@link V1TransactionBuilder.sender}, optional durable nonce via
|
|
12
|
+
* {@link V1TransactionBuilder.nonce}, and the v1 config via
|
|
13
|
+
* {@link V1TransactionBuilder.transactionConfig}. The builder owns the
|
|
14
|
+
* `AdvanceNonceAccount` injection, the message compile, and the message-signer-order
|
|
15
|
+
* signature assembly.
|
|
16
|
+
*/
|
|
17
|
+
export declare class V1CustomInstructionBuilder extends V1TransactionBuilder {
|
|
18
|
+
constructor(_coinConfig: Readonly<CoinConfig>);
|
|
19
|
+
protected get transactionType(): TransactionType;
|
|
20
|
+
}
|
|
21
|
+
//# sourceMappingURL=v1CustomInstructionBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"v1CustomInstructionBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/v1CustomInstructionBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAE9D;;;;;;;;;;;;GAYG;AACH,qBAAa,0BAA2B,SAAQ,oBAAoB;gBACtD,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;CACF"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import { TransactionType } from '@bitgo-beta/sdk-core';
|
|
2
|
+
import { V1TransactionBuilder } from './v1TransactionBuilder';
|
|
3
|
+
/**
|
|
4
|
+
* Transaction builder for Solana v1 (SIMD-0296/0385) custom instructions.
|
|
5
|
+
*
|
|
6
|
+
* Concrete subclass of the abstract {@link V1TransactionBuilder} for `customTx`
|
|
7
|
+
* intents — the surface Wallet Platform instantiates to assemble v1 transactions
|
|
8
|
+
* from a client-supplied envelope: feed each envelope instruction as a web3.js
|
|
9
|
+
* `TransactionInstruction` via {@link V1TransactionBuilder.addInstruction}, set the
|
|
10
|
+
* fee payer via {@link V1TransactionBuilder.sender}, optional durable nonce via
|
|
11
|
+
* {@link V1TransactionBuilder.nonce}, and the v1 config via
|
|
12
|
+
* {@link V1TransactionBuilder.transactionConfig}. The builder owns the
|
|
13
|
+
* `AdvanceNonceAccount` injection, the message compile, and the message-signer-order
|
|
14
|
+
* signature assembly.
|
|
15
|
+
*/
|
|
16
|
+
export class V1CustomInstructionBuilder extends V1TransactionBuilder {
|
|
17
|
+
constructor(_coinConfig) {
|
|
18
|
+
super(_coinConfig);
|
|
19
|
+
}
|
|
20
|
+
get transactionType() {
|
|
21
|
+
return TransactionType.CustomTx;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidjFDdXN0b21JbnN0cnVjdGlvbkJ1aWxkZXIuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvbGliL3YxQ3VzdG9tSW5zdHJ1Y3Rpb25CdWlsZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxlQUFlLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUU5RDs7Ozs7Ozs7Ozs7O0dBWUc7QUFDSCxNQUFNLE9BQU8sMEJBQTJCLFNBQVEsb0JBQW9CO0lBQ2xFLFlBQVksV0FBaUM7UUFDM0MsS0FBSyxDQUFDLFdBQVcsQ0FBQyxDQUFDO0lBQ3JCLENBQUM7SUFFRCxJQUFjLGVBQWU7UUFDM0IsT0FBTyxlQUFlLENBQUMsUUFBUSxDQUFDO0lBQ2xDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uVHlwZSB9IGZyb20gJ0BiaXRnby1iZXRhL3Nkay1jb3JlJztcbmltcG9ydCB7IFYxVHJhbnNhY3Rpb25CdWlsZGVyIH0gZnJvbSAnLi92MVRyYW5zYWN0aW9uQnVpbGRlcic7XG5cbi8qKlxuICogVHJhbnNhY3Rpb24gYnVpbGRlciBmb3IgU29sYW5hIHYxIChTSU1ELTAyOTYvMDM4NSkgY3VzdG9tIGluc3RydWN0aW9ucy5cbiAqXG4gKiBDb25jcmV0ZSBzdWJjbGFzcyBvZiB0aGUgYWJzdHJhY3Qge0BsaW5rIFYxVHJhbnNhY3Rpb25CdWlsZGVyfSBmb3IgYGN1c3RvbVR4YFxuICogaW50ZW50cyDigJQgdGhlIHN1cmZhY2UgV2FsbGV0IFBsYXRmb3JtIGluc3RhbnRpYXRlcyB0byBhc3NlbWJsZSB2MSB0cmFuc2FjdGlvbnNcbiAqIGZyb20gYSBjbGllbnQtc3VwcGxpZWQgZW52ZWxvcGU6IGZlZWQgZWFjaCBlbnZlbG9wZSBpbnN0cnVjdGlvbiBhcyBhIHdlYjMuanNcbiAqIGBUcmFuc2FjdGlvbkluc3RydWN0aW9uYCB2aWEge0BsaW5rIFYxVHJhbnNhY3Rpb25CdWlsZGVyLmFkZEluc3RydWN0aW9ufSwgc2V0IHRoZVxuICogZmVlIHBheWVyIHZpYSB7QGxpbmsgVjFUcmFuc2FjdGlvbkJ1aWxkZXIuc2VuZGVyfSwgb3B0aW9uYWwgZHVyYWJsZSBub25jZSB2aWFcbiAqIHtAbGluayBWMVRyYW5zYWN0aW9uQnVpbGRlci5ub25jZX0sIGFuZCB0aGUgdjEgY29uZmlnIHZpYVxuICoge0BsaW5rIFYxVHJhbnNhY3Rpb25CdWlsZGVyLnRyYW5zYWN0aW9uQ29uZmlnfS4gVGhlIGJ1aWxkZXIgb3ducyB0aGVcbiAqIGBBZHZhbmNlTm9uY2VBY2NvdW50YCBpbmplY3Rpb24sIHRoZSBtZXNzYWdlIGNvbXBpbGUsIGFuZCB0aGUgbWVzc2FnZS1zaWduZXItb3JkZXJcbiAqIHNpZ25hdHVyZSBhc3NlbWJseS5cbiAqL1xuZXhwb3J0IGNsYXNzIFYxQ3VzdG9tSW5zdHJ1Y3Rpb25CdWlsZGVyIGV4dGVuZHMgVjFUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0IHRyYW5zYWN0aW9uVHlwZSgpOiBUcmFuc2FjdGlvblR5cGUge1xuICAgIHJldHVybiBUcmFuc2FjdGlvblR5cGUuQ3VzdG9tVHg7XG4gIH1cbn1cbiJdfQ==
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
|
|
2
|
+
import { TransactionType } from '@bitgo-beta/sdk-core';
|
|
3
|
+
import { V1TransactionBuilder } from './v1TransactionBuilder';
|
|
4
|
+
import { Transaction } from './transaction';
|
|
5
|
+
export interface SendParams {
|
|
6
|
+
address: string;
|
|
7
|
+
amount: string;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Transaction builder for Solana v1 (SIMD-0296/0385) native SOL payments.
|
|
11
|
+
*
|
|
12
|
+
* Server-side construction surface: builds a v1 payment envelope from
|
|
13
|
+
* structured params (sender + recipients/amounts) — the caller supplies fields,
|
|
14
|
+
* never instructions. The builder owns the `AdvanceNonceAccount` injection, the
|
|
15
|
+
* message compile, and the message-signer-order signature assembly (inherited
|
|
16
|
+
* from {@link V1TransactionBuilder}); set the fee payer via
|
|
17
|
+
* {@link V1TransactionBuilder.sender}, optional durable nonce via
|
|
18
|
+
* {@link V1TransactionBuilder.nonce}, and the v1 config via
|
|
19
|
+
* {@link V1TransactionBuilder.transactionConfig}.
|
|
20
|
+
*/
|
|
21
|
+
export declare class V1PaymentBuilder extends V1TransactionBuilder {
|
|
22
|
+
private _sendParams;
|
|
23
|
+
constructor(_coinConfig: Readonly<CoinConfig>);
|
|
24
|
+
protected get transactionType(): TransactionType;
|
|
25
|
+
/**
|
|
26
|
+
* Set a transfer.
|
|
27
|
+
*
|
|
28
|
+
* @param {string} address - the receiver address
|
|
29
|
+
* @param {string} amount - the amount sent (lamports)
|
|
30
|
+
* @returns {V1PaymentBuilder} This transaction builder
|
|
31
|
+
*/
|
|
32
|
+
send({ address, amount }: SendParams): this;
|
|
33
|
+
/** @inheritdoc */
|
|
34
|
+
protected buildImplementation(): Promise<Transaction>;
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=v1PaymentBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"v1PaymentBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/v1PaymentBuilder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,IAAI,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAC7D,OAAO,EAAyB,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAC9E,OAAO,EAAE,oBAAoB,EAAE,MAAM,wBAAwB,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAO5C,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;GAWG;AACH,qBAAa,gBAAiB,SAAQ,oBAAoB;IACxD,OAAO,CAAC,WAAW,CAAoB;gBAE3B,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC;IAI7C,SAAS,KAAK,eAAe,IAAI,eAAe,CAE/C;IAED;;;;;;OAMG;IACH,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,EAAE,EAAE,UAAU,GAAG,IAAI;IAc3C,kBAAkB;cACF,mBAAmB,IAAI,OAAO,CAAC,WAAW,CAAC;CAmB5D"}
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
import { BuildTransactionError, TransactionType } from '@bitgo-beta/sdk-core';
|
|
2
|
+
import { V1TransactionBuilder } from './v1TransactionBuilder';
|
|
3
|
+
import { isValidAmount, validateAddress } from './utils';
|
|
4
|
+
import { InstructionBuilderTypes } from './constants';
|
|
5
|
+
import assert from 'assert';
|
|
6
|
+
/**
|
|
7
|
+
* Transaction builder for Solana v1 (SIMD-0296/0385) native SOL payments.
|
|
8
|
+
*
|
|
9
|
+
* Server-side construction surface: builds a v1 payment envelope from
|
|
10
|
+
* structured params (sender + recipients/amounts) — the caller supplies fields,
|
|
11
|
+
* never instructions. The builder owns the `AdvanceNonceAccount` injection, the
|
|
12
|
+
* message compile, and the message-signer-order signature assembly (inherited
|
|
13
|
+
* from {@link V1TransactionBuilder}); set the fee payer via
|
|
14
|
+
* {@link V1TransactionBuilder.sender}, optional durable nonce via
|
|
15
|
+
* {@link V1TransactionBuilder.nonce}, and the v1 config via
|
|
16
|
+
* {@link V1TransactionBuilder.transactionConfig}.
|
|
17
|
+
*/
|
|
18
|
+
export class V1PaymentBuilder extends V1TransactionBuilder {
|
|
19
|
+
constructor(_coinConfig) {
|
|
20
|
+
super(_coinConfig);
|
|
21
|
+
this._sendParams = [];
|
|
22
|
+
}
|
|
23
|
+
get transactionType() {
|
|
24
|
+
return TransactionType.Send;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Set a transfer.
|
|
28
|
+
*
|
|
29
|
+
* @param {string} address - the receiver address
|
|
30
|
+
* @param {string} amount - the amount sent (lamports)
|
|
31
|
+
* @returns {V1PaymentBuilder} This transaction builder
|
|
32
|
+
*/
|
|
33
|
+
send({ address, amount }) {
|
|
34
|
+
validateAddress(address, 'address');
|
|
35
|
+
if (!amount || !isValidAmount(amount)) {
|
|
36
|
+
throw new BuildTransactionError('Invalid or missing amount, got: ' + amount);
|
|
37
|
+
}
|
|
38
|
+
if (BigInt(amount) > BigInt(Number.MAX_SAFE_INTEGER)) {
|
|
39
|
+
throw new BuildTransactionError(`input amount ${amount} exceeds max safe int ${Number.MAX_SAFE_INTEGER}`);
|
|
40
|
+
}
|
|
41
|
+
this._sendParams.push({ address, amount });
|
|
42
|
+
return this;
|
|
43
|
+
}
|
|
44
|
+
/** @inheritdoc */
|
|
45
|
+
async buildImplementation() {
|
|
46
|
+
assert(this._sender, 'Sender must be set before building the transaction');
|
|
47
|
+
const transferData = this._sendParams.map((sendParams) => {
|
|
48
|
+
return {
|
|
49
|
+
type: InstructionBuilderTypes.Transfer,
|
|
50
|
+
params: {
|
|
51
|
+
fromAddress: this._sender,
|
|
52
|
+
toAddress: sendParams.address,
|
|
53
|
+
amount: sendParams.amount,
|
|
54
|
+
},
|
|
55
|
+
};
|
|
56
|
+
});
|
|
57
|
+
// v1: the priority fee is carried in the message config mask (transactionConfig),
|
|
58
|
+
// so no explicit SetPriorityFee instruction is needed (unlike the v0 flow).
|
|
59
|
+
this.instructions(transferData);
|
|
60
|
+
return await super.buildImplementation();
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidjFQYXltZW50QnVpbGRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9saWIvdjFQYXltZW50QnVpbGRlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLEVBQUUscUJBQXFCLEVBQUUsZUFBZSxFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDOUUsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0sd0JBQXdCLENBQUM7QUFFOUQsT0FBTyxFQUFFLGFBQWEsRUFBRSxlQUFlLEVBQUUsTUFBTSxTQUFTLENBQUM7QUFDekQsT0FBTyxFQUFFLHVCQUF1QixFQUFFLE1BQU0sYUFBYSxDQUFDO0FBR3RELE9BQU8sTUFBTSxNQUFNLFFBQVEsQ0FBQztBQU81Qjs7Ozs7Ozs7Ozs7R0FXRztBQUNILE1BQU0sT0FBTyxnQkFBaUIsU0FBUSxvQkFBb0I7SUFHeEQsWUFBWSxXQUFpQztRQUMzQyxLQUFLLENBQUMsV0FBVyxDQUFDLENBQUM7UUFIYixnQkFBVyxHQUFpQixFQUFFLENBQUM7SUFJdkMsQ0FBQztJQUVELElBQWMsZUFBZTtRQUMzQixPQUFPLGVBQWUsQ0FBQyxJQUFJLENBQUM7SUFDOUIsQ0FBQztJQUVEOzs7Ozs7T0FNRztJQUNILElBQUksQ0FBQyxFQUFFLE9BQU8sRUFBRSxNQUFNLEVBQWM7UUFDbEMsZUFBZSxDQUFDLE9BQU8sRUFBRSxTQUFTLENBQUMsQ0FBQztRQUNwQyxJQUFJLENBQUMsTUFBTSxJQUFJLENBQUMsYUFBYSxDQUFDLE1BQU0sQ0FBQyxFQUFFLENBQUM7WUFDdEMsTUFBTSxJQUFJLHFCQUFxQixDQUFDLGtDQUFrQyxHQUFHLE1BQU0sQ0FBQyxDQUFDO1FBQy9FLENBQUM7UUFDRCxJQUFJLE1BQU0sQ0FBQyxNQUFNLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLGdCQUFnQixDQUFDLEVBQUUsQ0FBQztZQUNyRCxNQUFNLElBQUkscUJBQXFCLENBQUMsZ0JBQWdCLE1BQU0seUJBQXlCLE1BQU0sQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLENBQUM7UUFDNUcsQ0FBQztRQUVELElBQUksQ0FBQyxXQUFXLENBQUMsSUFBSSxDQUFDLEVBQUUsT0FBTyxFQUFFLE1BQU0sRUFBRSxDQUFDLENBQUM7UUFFM0MsT0FBTyxJQUFJLENBQUM7SUFDZCxDQUFDO0lBRUQsa0JBQWtCO0lBQ1IsS0FBSyxDQUFDLG1CQUFtQjtRQUNqQyxNQUFNLENBQUMsSUFBSSxDQUFDLE9BQU8sRUFBRSxvREFBb0QsQ0FBQyxDQUFDO1FBRTNFLE1BQU0sWUFBWSxHQUF3QixJQUFJLENBQUMsV0FBVyxDQUFDLEdBQUcsQ0FBQyxDQUFDLFVBQXNCLEVBQVksRUFBRTtZQUNsRyxPQUFPO2dCQUNMLElBQUksRUFBRSx1QkFBdUIsQ0FBQyxRQUFRO2dCQUN0QyxNQUFNLEVBQUU7b0JBQ04sV0FBVyxFQUFFLElBQUksQ0FBQyxPQUFPO29CQUN6QixTQUFTLEVBQUUsVUFBVSxDQUFDLE9BQU87b0JBQzdCLE1BQU0sRUFBRSxVQUFVLENBQUMsTUFBTTtpQkFDMUI7YUFDRixDQUFDO1FBQ0osQ0FBQyxDQUFDLENBQUM7UUFDSCxrRkFBa0Y7UUFDbEYsNEVBQTRFO1FBQzVFLElBQUksQ0FBQyxZQUFZLENBQUMsWUFBWSxDQUFDLENBQUM7UUFFaEMsT0FBTyxNQUFNLEtBQUssQ0FBQyxtQkFBbUIsRUFBRSxDQUFDO0lBQzNDLENBQUM7Q0FDRiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJhc2VDb2luIGFzIENvaW5Db25maWcgfSBmcm9tICdAYml0Z28tYmV0YS9zdGF0aWNzJztcbmltcG9ydCB7IEJ1aWxkVHJhbnNhY3Rpb25FcnJvciwgVHJhbnNhY3Rpb25UeXBlIH0gZnJvbSAnQGJpdGdvLWJldGEvc2RrLWNvcmUnO1xuaW1wb3J0IHsgVjFUcmFuc2FjdGlvbkJ1aWxkZXIgfSBmcm9tICcuL3YxVHJhbnNhY3Rpb25CdWlsZGVyJztcbmltcG9ydCB7IFRyYW5zYWN0aW9uIH0gZnJvbSAnLi90cmFuc2FjdGlvbic7XG5pbXBvcnQgeyBpc1ZhbGlkQW1vdW50LCB2YWxpZGF0ZUFkZHJlc3MgfSBmcm9tICcuL3V0aWxzJztcbmltcG9ydCB7IEluc3RydWN0aW9uQnVpbGRlclR5cGVzIH0gZnJvbSAnLi9jb25zdGFudHMnO1xuaW1wb3J0IHsgSW5zdHJ1Y3Rpb25QYXJhbXMsIFRyYW5zZmVyIH0gZnJvbSAnLi9pZmFjZSc7XG5cbmltcG9ydCBhc3NlcnQgZnJvbSAnYXNzZXJ0JztcblxuZXhwb3J0IGludGVyZmFjZSBTZW5kUGFyYW1zIHtcbiAgYWRkcmVzczogc3RyaW5nO1xuICBhbW91bnQ6IHN0cmluZztcbn1cblxuLyoqXG4gKiBUcmFuc2FjdGlvbiBidWlsZGVyIGZvciBTb2xhbmEgdjEgKFNJTUQtMDI5Ni8wMzg1KSBuYXRpdmUgU09MIHBheW1lbnRzLlxuICpcbiAqIFNlcnZlci1zaWRlIGNvbnN0cnVjdGlvbiBzdXJmYWNlOiBidWlsZHMgYSB2MSBwYXltZW50IGVudmVsb3BlIGZyb21cbiAqIHN0cnVjdHVyZWQgcGFyYW1zIChzZW5kZXIgKyByZWNpcGllbnRzL2Ftb3VudHMpIOKAlCB0aGUgY2FsbGVyIHN1cHBsaWVzIGZpZWxkcyxcbiAqIG5ldmVyIGluc3RydWN0aW9ucy4gVGhlIGJ1aWxkZXIgb3ducyB0aGUgYEFkdmFuY2VOb25jZUFjY291bnRgIGluamVjdGlvbiwgdGhlXG4gKiBtZXNzYWdlIGNvbXBpbGUsIGFuZCB0aGUgbWVzc2FnZS1zaWduZXItb3JkZXIgc2lnbmF0dXJlIGFzc2VtYmx5IChpbmhlcml0ZWRcbiAqIGZyb20ge0BsaW5rIFYxVHJhbnNhY3Rpb25CdWlsZGVyfSk7IHNldCB0aGUgZmVlIHBheWVyIHZpYVxuICoge0BsaW5rIFYxVHJhbnNhY3Rpb25CdWlsZGVyLnNlbmRlcn0sIG9wdGlvbmFsIGR1cmFibGUgbm9uY2UgdmlhXG4gKiB7QGxpbmsgVjFUcmFuc2FjdGlvbkJ1aWxkZXIubm9uY2V9LCBhbmQgdGhlIHYxIGNvbmZpZyB2aWFcbiAqIHtAbGluayBWMVRyYW5zYWN0aW9uQnVpbGRlci50cmFuc2FjdGlvbkNvbmZpZ30uXG4gKi9cbmV4cG9ydCBjbGFzcyBWMVBheW1lbnRCdWlsZGVyIGV4dGVuZHMgVjFUcmFuc2FjdGlvbkJ1aWxkZXIge1xuICBwcml2YXRlIF9zZW5kUGFyYW1zOiBTZW5kUGFyYW1zW10gPSBbXTtcblxuICBjb25zdHJ1Y3RvcihfY29pbkNvbmZpZzogUmVhZG9ubHk8Q29pbkNvbmZpZz4pIHtcbiAgICBzdXBlcihfY29pbkNvbmZpZyk7XG4gIH1cblxuICBwcm90ZWN0ZWQgZ2V0IHRyYW5zYWN0aW9uVHlwZSgpOiBUcmFuc2FjdGlvblR5cGUge1xuICAgIHJldHVybiBUcmFuc2FjdGlvblR5cGUuU2VuZDtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXQgYSB0cmFuc2Zlci5cbiAgICpcbiAgICogQHBhcmFtIHtzdHJpbmd9IGFkZHJlc3MgLSB0aGUgcmVjZWl2ZXIgYWRkcmVzc1xuICAgKiBAcGFyYW0ge3N0cmluZ30gYW1vdW50IC0gdGhlIGFtb3VudCBzZW50IChsYW1wb3J0cylcbiAgICogQHJldHVybnMge1YxUGF5bWVudEJ1aWxkZXJ9IFRoaXMgdHJhbnNhY3Rpb24gYnVpbGRlclxuICAgKi9cbiAgc2VuZCh7IGFkZHJlc3MsIGFtb3VudCB9OiBTZW5kUGFyYW1zKTogdGhpcyB7XG4gICAgdmFsaWRhdGVBZGRyZXNzKGFkZHJlc3MsICdhZGRyZXNzJyk7XG4gICAgaWYgKCFhbW91bnQgfHwgIWlzVmFsaWRBbW91bnQoYW1vdW50KSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcignSW52YWxpZCBvciBtaXNzaW5nIGFtb3VudCwgZ290OiAnICsgYW1vdW50KTtcbiAgICB9XG4gICAgaWYgKEJpZ0ludChhbW91bnQpID4gQmlnSW50KE51bWJlci5NQVhfU0FGRV9JTlRFR0VSKSkge1xuICAgICAgdGhyb3cgbmV3IEJ1aWxkVHJhbnNhY3Rpb25FcnJvcihgaW5wdXQgYW1vdW50ICR7YW1vdW50fSBleGNlZWRzIG1heCBzYWZlIGludCAke051bWJlci5NQVhfU0FGRV9JTlRFR0VSfWApO1xuICAgIH1cblxuICAgIHRoaXMuX3NlbmRQYXJhbXMucHVzaCh7IGFkZHJlc3MsIGFtb3VudCB9KTtcblxuICAgIHJldHVybiB0aGlzO1xuICB9XG5cbiAgLyoqIEBpbmhlcml0ZG9jICovXG4gIHByb3RlY3RlZCBhc3luYyBidWlsZEltcGxlbWVudGF0aW9uKCk6IFByb21pc2U8VHJhbnNhY3Rpb24+IHtcbiAgICBhc3NlcnQodGhpcy5fc2VuZGVyLCAnU2VuZGVyIG11c3QgYmUgc2V0IGJlZm9yZSBidWlsZGluZyB0aGUgdHJhbnNhY3Rpb24nKTtcblxuICAgIGNvbnN0IHRyYW5zZmVyRGF0YTogSW5zdHJ1Y3Rpb25QYXJhbXNbXSA9IHRoaXMuX3NlbmRQYXJhbXMubWFwKChzZW5kUGFyYW1zOiBTZW5kUGFyYW1zKTogVHJhbnNmZXIgPT4ge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgdHlwZTogSW5zdHJ1Y3Rpb25CdWlsZGVyVHlwZXMuVHJhbnNmZXIsXG4gICAgICAgIHBhcmFtczoge1xuICAgICAgICAgIGZyb21BZGRyZXNzOiB0aGlzLl9zZW5kZXIsXG4gICAgICAgICAgdG9BZGRyZXNzOiBzZW5kUGFyYW1zLmFkZHJlc3MsXG4gICAgICAgICAgYW1vdW50OiBzZW5kUGFyYW1zLmFtb3VudCxcbiAgICAgICAgfSxcbiAgICAgIH07XG4gICAgfSk7XG4gICAgLy8gdjE6IHRoZSBwcmlvcml0eSBmZWUgaXMgY2FycmllZCBpbiB0aGUgbWVzc2FnZSBjb25maWcgbWFzayAodHJhbnNhY3Rpb25Db25maWcpLFxuICAgIC8vIHNvIG5vIGV4cGxpY2l0IFNldFByaW9yaXR5RmVlIGluc3RydWN0aW9uIGlzIG5lZWRlZCAodW5saWtlIHRoZSB2MCBmbG93KS5cbiAgICB0aGlzLmluc3RydWN0aW9ucyh0cmFuc2ZlckRhdGEpO1xuXG4gICAgcmV0dXJuIGF3YWl0IHN1cGVyLmJ1aWxkSW1wbGVtZW50YXRpb24oKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,253 @@
|
|
|
1
|
+
import BigNumber from 'bignumber.js';
|
|
2
|
+
import { BaseCoin as CoinConfig } from '@bitgo-beta/statics';
|
|
3
|
+
import { BaseAddress, BaseKey, BaseTransactionBuilder, FeeOptions, PublicKey as BasePublicKey, SolV1TransactionConfig, SolVersionedTransactionData, TransactionType } from '@bitgo-beta/sdk-core';
|
|
4
|
+
import { TransactionInstruction } from '@solana/web3.js';
|
|
5
|
+
import { Transaction } from './transaction';
|
|
6
|
+
import { InstructionParams, Nonce } from './iface';
|
|
7
|
+
/**
|
|
8
|
+
* Construct an AdvanceNonceAccount instruction for a durable nonce.
|
|
9
|
+
*
|
|
10
|
+
* The v0 path receives this instruction from web3.js / the Rust wasm core
|
|
11
|
+
* (`NonceSource` durable variant); the v1 path compiles via
|
|
12
|
+
* `compileTransactionMessage`, so the nonce instruction must be constructed in
|
|
13
|
+
* TypeScript and injected into the compile input. The nonce authority
|
|
14
|
+
* (`authWalletAddress`) MUST sign the instruction — it becomes a required
|
|
15
|
+
* signer of the compiled message.
|
|
16
|
+
*
|
|
17
|
+
* @param nonceAddress - the durable nonce account address
|
|
18
|
+
* @param authWalletAddress - the nonce authority (gas-tank root in BitGo's model)
|
|
19
|
+
* @returns the AdvanceNonceAccount instruction
|
|
20
|
+
*/
|
|
21
|
+
export declare function buildAdvanceNonceAccountInstruction(nonceAddress: string, authWalletAddress: string): TransactionInstruction;
|
|
22
|
+
/**
|
|
23
|
+
* Map a v1 envelope instruction (index-based) into a web3.js TransactionInstruction
|
|
24
|
+
* (address-based), deriving each referenced account's signer/writable role from the
|
|
25
|
+
* message header (Solana role conventions: the last `numReadonlySignedAccounts`
|
|
26
|
+
* signers and last `numReadonlyUnsignedAccounts` non-signers are readonly).
|
|
27
|
+
*
|
|
28
|
+
* @param instruction - the envelope instruction (programIdIndex/accountKeyIndexes/data)
|
|
29
|
+
* @param data - the v1 envelope
|
|
30
|
+
* @returns the address-based instruction, ready for V1TransactionBuilder.addInstruction
|
|
31
|
+
*/
|
|
32
|
+
export declare function toV1TransactionInstruction(instruction: {
|
|
33
|
+
programIdIndex: number;
|
|
34
|
+
accountKeyIndexes: number[];
|
|
35
|
+
data: string;
|
|
36
|
+
}, data: SolVersionedTransactionData): TransactionInstruction;
|
|
37
|
+
/**
|
|
38
|
+
* Inject an AdvanceNonceAccount instruction into a v1 envelope for durable nonce.
|
|
39
|
+
*
|
|
40
|
+
* v1 (SIMD-0296/0385) has no address lookup tables, so every account is a static
|
|
41
|
+
* key. The nonce authority MUST sign the AdvanceNonceAccount instruction (hard
|
|
42
|
+
* runtime requirement) and the nonce account MUST be writable; the system program
|
|
43
|
+
* and recent-blockhashes sysvar are readonly non-signers. The instruction is
|
|
44
|
+
* prepended and every instruction's account indexes are remapped to the rebuilt
|
|
45
|
+
* static key list; messageHeader grows accordingly so the wire-size estimate and
|
|
46
|
+
* account caps are correct.
|
|
47
|
+
*
|
|
48
|
+
* @param data - the v1 envelope (client-supplied, no nonce instruction)
|
|
49
|
+
* @param durableNonceParams - walletNonceAddress + authWalletAddress (gas-tank root)
|
|
50
|
+
* @returns a copy of the envelope with the nonce instruction injected
|
|
51
|
+
* @edge if the envelope already contains an AdvanceNonceAccount instruction, returns
|
|
52
|
+
* the envelope unchanged (idempotent - a durable-aware client may supply it)
|
|
53
|
+
*/
|
|
54
|
+
export declare function injectV1NonceAdvanceInstruction(data: SolVersionedTransactionData, durableNonceParams: {
|
|
55
|
+
walletNonceAddress: string;
|
|
56
|
+
authWalletAddress: string;
|
|
57
|
+
}): SolVersionedTransactionData;
|
|
58
|
+
/**
|
|
59
|
+
* Base builder for Solana v1 (SIMD-0296/0385) transactions.
|
|
60
|
+
*
|
|
61
|
+
* Parallel to the v0 {@link TransactionBuilder}, which is bound to a
|
|
62
|
+
* `@solana/web3.js` v0 `Transaction` and cannot emit a v1 wire. This builder
|
|
63
|
+
* owns the v1 assembly:
|
|
64
|
+
*
|
|
65
|
+
* - intent-to-instruction derivation via the shared `solInstructionFactory`
|
|
66
|
+
* (same `InstructionParams` representation as the v0 flows)
|
|
67
|
+
* - durable nonce: `AdvanceNonceAccount` instruction injection (first) plus the
|
|
68
|
+
* nonce hash in the blockhash field
|
|
69
|
+
* - transaction config (compute unit limit, heap size, loaded accounts data
|
|
70
|
+
* size limit, priority fee as total lamports)
|
|
71
|
+
* - signer management: private-key signers (`sign`) and external signatures
|
|
72
|
+
* (`addSignature`), assembled in message-signer order
|
|
73
|
+
* - message compile via `compileTransactionMessage` and signed wire via
|
|
74
|
+
* `serializeWireTransaction`
|
|
75
|
+
*
|
|
76
|
+
* Signature assembly is in message-signer order (fee payer first, then the
|
|
77
|
+
* remaining signers in the compiled account order), NOT insertion order —
|
|
78
|
+
* required for multi-signer v1 transactions such as durable-nonce CT
|
|
79
|
+
* (user + gas-tank nonce authority). Missing signatures are zero-filled in
|
|
80
|
+
* their slots so the wire shape stays valid for partial-sign flows; the
|
|
81
|
+
* broadcastable wire is only produced once every required signer has a
|
|
82
|
+
* signature.
|
|
83
|
+
*/
|
|
84
|
+
/**
|
|
85
|
+
* Input shape for {@link V1TransactionBuilder.transactionConfig}: all fields optional;
|
|
86
|
+
* unset values are coerced to null (the SDK v1 serializer contract).
|
|
87
|
+
*/
|
|
88
|
+
export type V1TransactionConfigInput = {
|
|
89
|
+
computeUnitLimit?: number;
|
|
90
|
+
heapSize?: number;
|
|
91
|
+
loadedAccountsDataSizeLimit?: number;
|
|
92
|
+
priorityFee?: number;
|
|
93
|
+
};
|
|
94
|
+
export declare abstract class V1TransactionBuilder extends BaseTransactionBuilder {
|
|
95
|
+
protected _transaction: Transaction;
|
|
96
|
+
private _instructionsData;
|
|
97
|
+
private _extraInstructions;
|
|
98
|
+
private _signers;
|
|
99
|
+
private _signatures;
|
|
100
|
+
private _lamportsPerSignature;
|
|
101
|
+
protected _sender: string;
|
|
102
|
+
protected _feePayer?: string;
|
|
103
|
+
protected _recentBlockhash: string;
|
|
104
|
+
protected _nonceInfo?: Nonce;
|
|
105
|
+
protected _memo?: string;
|
|
106
|
+
protected _transactionConfig?: SolV1TransactionConfig;
|
|
107
|
+
/** Optional override for the zk-elgamal-proof program id (used by CT instruction builders) */
|
|
108
|
+
protected _zkProofProgramId?: string;
|
|
109
|
+
constructor(_coinConfig: Readonly<CoinConfig>);
|
|
110
|
+
/**
|
|
111
|
+
* The transaction type.
|
|
112
|
+
*/
|
|
113
|
+
protected abstract get transactionType(): TransactionType;
|
|
114
|
+
/** @inheritdoc */
|
|
115
|
+
protected buildImplementation(): Promise<Transaction>;
|
|
116
|
+
/**
|
|
117
|
+
* Assemble the v1 transaction: derive instructions, inject the durable-nonce
|
|
118
|
+
* instruction when present, compile the message, and assemble the signed
|
|
119
|
+
* wire in message-signer order.
|
|
120
|
+
*
|
|
121
|
+
* @returns {Transaction} The built transaction holding the v1 message and wire bytes
|
|
122
|
+
*/
|
|
123
|
+
private buildV1;
|
|
124
|
+
/** @inheritdoc */
|
|
125
|
+
protected fromImplementation(rawTransaction: string): Transaction;
|
|
126
|
+
/** @inheritdoc */
|
|
127
|
+
protected get transaction(): Transaction;
|
|
128
|
+
/** @inheritdoc */
|
|
129
|
+
protected set transaction(transaction: Transaction);
|
|
130
|
+
/** @inheritdoc */
|
|
131
|
+
protected signImplementation(key: BaseKey): Transaction;
|
|
132
|
+
/** @inheritDoc */
|
|
133
|
+
addSignature(publicKey: BasePublicKey, signature: Buffer): void;
|
|
134
|
+
/**
|
|
135
|
+
* Sets the sender of this transaction.
|
|
136
|
+
* This account will be responsible for paying transaction fees.
|
|
137
|
+
*
|
|
138
|
+
* @param {string} senderAddress the account that is sending this transaction
|
|
139
|
+
* @returns {V1TransactionBuilder} This transaction builder
|
|
140
|
+
*/
|
|
141
|
+
sender(senderAddress: string): this;
|
|
142
|
+
/**
|
|
143
|
+
* Set the transaction nonce.
|
|
144
|
+
* Requires both optional params in order to use the durable nonce.
|
|
145
|
+
*
|
|
146
|
+
* @param {string} blockHash The latest blockHash or the durable nonce hash
|
|
147
|
+
* @param {DurableNonceParams} [durableNonceParams] An object containing the walletNonceAddress and the authWalletAddress (required for durable nonce)
|
|
148
|
+
* @returns {V1TransactionBuilder} This transaction builder
|
|
149
|
+
*/
|
|
150
|
+
nonce(blockHash: string, durableNonceParams?: {
|
|
151
|
+
walletNonceAddress: string;
|
|
152
|
+
authWalletAddress: string;
|
|
153
|
+
}): this;
|
|
154
|
+
/**
|
|
155
|
+
* Set the intent instructions to build, using the shared instruction params
|
|
156
|
+
* representation consumed by `solInstructionFactory` (same as the v0 flows).
|
|
157
|
+
*
|
|
158
|
+
* @param {InstructionParams[]} instructions the instruction params
|
|
159
|
+
* @returns {V1TransactionBuilder} This transaction builder
|
|
160
|
+
*/
|
|
161
|
+
instructions(instructions: InstructionParams[]): this;
|
|
162
|
+
/**
|
|
163
|
+
* Append a pre-built instruction (e.g. an envelope-derived instruction or a
|
|
164
|
+
* custom instruction) to the transaction.
|
|
165
|
+
*
|
|
166
|
+
* @param {TransactionInstruction} instruction the instruction to append
|
|
167
|
+
* @returns {V1TransactionBuilder} This transaction builder
|
|
168
|
+
*/
|
|
169
|
+
addInstruction(instruction: TransactionInstruction): this;
|
|
170
|
+
/**
|
|
171
|
+
* Set the v1 transaction config (compute unit limit, heap size, loaded
|
|
172
|
+
* accounts data size limit, and priority fee as total lamports). Required
|
|
173
|
+
* before building.
|
|
174
|
+
*
|
|
175
|
+
* @param {SolV1TransactionConfig} config the v1 transaction config
|
|
176
|
+
* @returns {V1TransactionBuilder} This transaction builder
|
|
177
|
+
*/
|
|
178
|
+
transactionConfig(config: V1TransactionConfigInput): this;
|
|
179
|
+
/**
|
|
180
|
+
* Initialize the builder from a client-supplied v1 envelope
|
|
181
|
+
* (SolVersionedTransactionData). Sets the fee payer from staticAccountKeys[0],
|
|
182
|
+
* coerces the transaction config, and converts each envelope instruction to an
|
|
183
|
+
* address-based TransactionInstruction via {@link toV1TransactionInstruction}.
|
|
184
|
+
*
|
|
185
|
+
* @param data - the v1 envelope
|
|
186
|
+
* @returns {V1TransactionBuilder} This transaction builder
|
|
187
|
+
*/
|
|
188
|
+
fromVersionedData(data: SolVersionedTransactionData): this;
|
|
189
|
+
/**
|
|
190
|
+
* Set the priority fee (total lamports) on the v1 transaction config.
|
|
191
|
+
*
|
|
192
|
+
* @param {FeeOptions} feeOptions the priority fee
|
|
193
|
+
* @returns {V1TransactionBuilder} This transaction builder
|
|
194
|
+
*/
|
|
195
|
+
setPriorityFee(feeOptions: FeeOptions): this;
|
|
196
|
+
/**
|
|
197
|
+
* Set the fee (lamports per signature) for fee estimation.
|
|
198
|
+
*
|
|
199
|
+
* @param {FeeOptions} feeOptions the fee
|
|
200
|
+
* @returns {V1TransactionBuilder} This transaction builder
|
|
201
|
+
*/
|
|
202
|
+
fee(feeOptions: FeeOptions): this;
|
|
203
|
+
feePayer(feePayer: string): this;
|
|
204
|
+
/**
|
|
205
|
+
* Set the memo.
|
|
206
|
+
*
|
|
207
|
+
* @param {string} memo
|
|
208
|
+
* @returns {V1TransactionBuilder} This transaction builder
|
|
209
|
+
*/
|
|
210
|
+
memo(memo: string): this;
|
|
211
|
+
/**
|
|
212
|
+
* Override the zk-elgamal-proof program id.
|
|
213
|
+
*
|
|
214
|
+
* Defaults to the canonical on-chain program id (`ZkE1Gama1Proof111...`)
|
|
215
|
+
* which is the same across mainnet, devnet, and testnet. Override only
|
|
216
|
+
* when targeting a custom deployment.
|
|
217
|
+
*
|
|
218
|
+
* @param {string} programId base58 encoded program id
|
|
219
|
+
* @returns {V1TransactionBuilder} This transaction builder
|
|
220
|
+
*/
|
|
221
|
+
zkProofProgramId(programId: string): this;
|
|
222
|
+
/** @inheritdoc */
|
|
223
|
+
validateAddress(address: BaseAddress, addressFormat?: string): void;
|
|
224
|
+
/** @inheritdoc */
|
|
225
|
+
validateKey(key: BaseKey): void;
|
|
226
|
+
/** @inheritdoc */
|
|
227
|
+
validateRawTransaction(rawTransaction: string): void;
|
|
228
|
+
/** @inheritdoc */
|
|
229
|
+
validateTransaction(transaction?: Transaction): void;
|
|
230
|
+
/** @inheritdoc */
|
|
231
|
+
validateValue(value: BigNumber): void;
|
|
232
|
+
/**
|
|
233
|
+
* Validates the memo.
|
|
234
|
+
*
|
|
235
|
+
* @param {string} memo - the memo as string
|
|
236
|
+
*/
|
|
237
|
+
validateMemo(memo: string): void;
|
|
238
|
+
/**
|
|
239
|
+
* Validates that the given key is not already in this._signers.
|
|
240
|
+
*
|
|
241
|
+
* @param {BaseKey} key - The key to check
|
|
242
|
+
*/
|
|
243
|
+
private checkDuplicatedSigner;
|
|
244
|
+
/**
|
|
245
|
+
* Validates that the sender field is defined.
|
|
246
|
+
*/
|
|
247
|
+
private validateSender;
|
|
248
|
+
/**
|
|
249
|
+
* Validates that the nonce field is defined.
|
|
250
|
+
*/
|
|
251
|
+
private validateNonce;
|
|
252
|
+
}
|
|
253
|
+
//# sourceMappingURL=v1TransactionBuilder.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"v1TransactionBuilder.d.ts","sourceRoot":"","sources":["../../../src/lib/v1TransactionBuilder.ts"],"names":[],"mappings":"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"}
|