@solana/web3.js 2.0.0-experimental.e8095b1 → 2.0.0-experimental.e9c1b10

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.
Files changed (54) hide show
  1. package/README.md +1153 -43
  2. package/dist/index.browser.cjs +186 -44
  3. package/dist/index.browser.cjs.map +1 -1
  4. package/dist/index.browser.js +148 -45
  5. package/dist/index.browser.js.map +1 -1
  6. package/dist/index.development.js +3579 -2192
  7. package/dist/index.development.js.map +1 -1
  8. package/dist/index.native.js +148 -45
  9. package/dist/index.native.js.map +1 -1
  10. package/dist/index.node.cjs +188 -44
  11. package/dist/index.node.cjs.map +1 -1
  12. package/dist/index.node.js +148 -45
  13. package/dist/index.node.js.map +1 -1
  14. package/dist/index.production.min.js +270 -59
  15. package/dist/types/airdrop-confirmer.d.ts +6 -7
  16. package/dist/types/airdrop-confirmer.d.ts.map +1 -1
  17. package/dist/types/airdrop.d.ts +10 -12
  18. package/dist/types/airdrop.d.ts.map +1 -1
  19. package/dist/types/decode-transaction.d.ts +10 -0
  20. package/dist/types/decode-transaction.d.ts.map +1 -0
  21. package/dist/types/index.d.ts +17 -9
  22. package/dist/types/index.d.ts.map +1 -1
  23. package/dist/types/rpc-default-config.d.ts.map +1 -1
  24. package/dist/types/rpc-integer-overflow-error.d.ts +3 -2
  25. package/dist/types/rpc-integer-overflow-error.d.ts.map +1 -1
  26. package/dist/types/rpc-request-coalescer.d.ts +1 -1
  27. package/dist/types/rpc-request-coalescer.d.ts.map +1 -1
  28. package/dist/types/rpc-subscription-coalescer.d.ts +1 -1
  29. package/dist/types/rpc-subscription-coalescer.d.ts.map +1 -1
  30. package/dist/types/rpc-transport.d.ts +1 -2
  31. package/dist/types/rpc-transport.d.ts.map +1 -1
  32. package/dist/types/rpc-websocket-autopinger.d.ts +1 -1
  33. package/dist/types/rpc-websocket-autopinger.d.ts.map +1 -1
  34. package/dist/types/rpc-websocket-connection-sharding.d.ts +1 -1
  35. package/dist/types/rpc-websocket-connection-sharding.d.ts.map +1 -1
  36. package/dist/types/rpc-websocket-transport.d.ts +1 -2
  37. package/dist/types/rpc-websocket-transport.d.ts.map +1 -1
  38. package/dist/types/rpc.d.ts +1 -1
  39. package/dist/types/rpc.d.ts.map +1 -1
  40. package/dist/types/send-transaction.d.ts +31 -38
  41. package/dist/types/send-transaction.d.ts.map +1 -1
  42. package/dist/types/transaction-confirmation-strategy-blockheight.d.ts +9 -5
  43. package/dist/types/transaction-confirmation-strategy-blockheight.d.ts.map +1 -1
  44. package/dist/types/transaction-confirmation-strategy-nonce.d.ts +4 -6
  45. package/dist/types/transaction-confirmation-strategy-nonce.d.ts.map +1 -1
  46. package/dist/types/transaction-confirmation-strategy-racer.d.ts +9 -5
  47. package/dist/types/transaction-confirmation-strategy-racer.d.ts.map +1 -1
  48. package/dist/types/transaction-confirmation-strategy-recent-signature.d.ts +4 -6
  49. package/dist/types/transaction-confirmation-strategy-recent-signature.d.ts.map +1 -1
  50. package/dist/types/transaction-confirmation-strategy-timeout.d.ts +1 -1
  51. package/dist/types/transaction-confirmation-strategy-timeout.d.ts.map +1 -1
  52. package/dist/types/transaction-confirmation.d.ts +6 -11
  53. package/dist/types/transaction-confirmation.d.ts.map +1 -1
  54. package/package.json +24 -18
@@ -1,14 +1,19 @@
1
1
  'use strict';
2
2
 
3
+ var accounts = require('@solana/accounts');
3
4
  var addresses = require('@solana/addresses');
5
+ var codecs = require('@solana/codecs');
6
+ var functional = require('@solana/functional');
4
7
  var instructions = require('@solana/instructions');
5
8
  var keys = require('@solana/keys');
9
+ var programs = require('@solana/programs');
10
+ var rpcParsedTypes = require('@solana/rpc-parsed-types');
11
+ var rpcTypes = require('@solana/rpc-types');
12
+ var signers = require('@solana/signers');
6
13
  var transactions = require('@solana/transactions');
7
14
  var rpcCore = require('@solana/rpc-core');
8
- var functional = require('@solana/functional');
9
15
  var rpcTransport = require('@solana/rpc-transport');
10
16
  var fastStableStringify = require('fast-stable-stringify');
11
- var umiSerializers = require('@metaplex-foundation/umi-serializers');
12
17
 
13
18
  function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
14
19
 
@@ -20,12 +25,14 @@ var __DEV__ = /* @__PURE__ */ (() => process["env"].NODE_ENV === "development")(
20
25
  // src/transaction-confirmation-strategy-racer.ts
21
26
  async function raceStrategies(signature, config, getSpecificStrategiesForRace) {
22
27
  const { abortSignal: callerAbortSignal, commitment, getRecentSignatureConfirmationPromise } = config;
23
- callerAbortSignal.throwIfAborted();
28
+ callerAbortSignal?.throwIfAborted();
24
29
  const abortController = new AbortController();
25
- function handleAbort() {
26
- abortController.abort();
30
+ if (callerAbortSignal) {
31
+ const handleAbort = () => {
32
+ abortController.abort();
33
+ };
34
+ callerAbortSignal.addEventListener("abort", handleAbort, { signal: abortController.signal });
27
35
  }
28
- callerAbortSignal.addEventListener("abort", handleAbort, { signal: abortController.signal });
29
36
  try {
30
37
  const specificStrategies = getSpecificStrategiesForRace({
31
38
  ...config,
@@ -69,7 +76,7 @@ function createRecentSignatureConfirmationPromiseFactory(rpc, rpcSubscriptions)
69
76
  const signatureStatusLookupPromise = (async () => {
70
77
  const { value: signatureStatusResults } = await rpc.getSignatureStatuses([signature]).send({ abortSignal: abortController.signal });
71
78
  const signatureStatus = signatureStatusResults[0];
72
- if (signatureStatus && signatureStatus.confirmationStatus && rpcCore.commitmentComparator(signatureStatus.confirmationStatus, commitment) >= 0) {
79
+ if (signatureStatus && signatureStatus.confirmationStatus && rpcTypes.commitmentComparator(signatureStatus.confirmationStatus, commitment) >= 0) {
73
80
  return;
74
81
  } else {
75
82
  await new Promise(() => {
@@ -169,26 +176,63 @@ async function requestAndConfirmAirdrop({
169
176
  });
170
177
  return airdropTransactionSignature;
171
178
  }
179
+ var compiledTransactionDecoder = void 0;
180
+ async function fetchLookupTables(lookupTableAddresses, rpc, config) {
181
+ const fetchedLookupTables = await accounts.fetchJsonParsedAccounts(
182
+ rpc,
183
+ lookupTableAddresses,
184
+ config
185
+ );
186
+ accounts.assertAccountsDecoded(fetchedLookupTables);
187
+ accounts.assertAccountsExist(fetchedLookupTables);
188
+ return fetchedLookupTables.reduce((acc, lookup) => {
189
+ return {
190
+ ...acc,
191
+ [lookup.address]: lookup.data.addresses
192
+ };
193
+ }, {});
194
+ }
195
+ async function decodeTransaction(encodedTransaction, rpc, config) {
196
+ const { lastValidBlockHeight, ...fetchAccountsConfig } = config ?? {};
197
+ if (!compiledTransactionDecoder)
198
+ compiledTransactionDecoder = transactions.getCompiledTransactionDecoder();
199
+ const compiledTransaction = compiledTransactionDecoder.decode(encodedTransaction);
200
+ const { compiledMessage } = compiledTransaction;
201
+ const lookupTables = "addressTableLookups" in compiledMessage && compiledMessage.addressTableLookups !== void 0 && compiledMessage.addressTableLookups.length > 0 ? compiledMessage.addressTableLookups : [];
202
+ const lookupTableAddresses = lookupTables.map((l) => l.lookupTableAddress);
203
+ const fetchedLookupTables = lookupTableAddresses.length > 0 ? await fetchLookupTables(lookupTableAddresses, rpc, fetchAccountsConfig) : {};
204
+ return transactions.decompileTransaction(compiledTransaction, {
205
+ addressesByLookupTableAddress: fetchedLookupTables,
206
+ lastValidBlockHeight
207
+ });
208
+ }
172
209
 
173
210
  // src/rpc-integer-overflow-error.ts
174
211
  var SolanaJsonRpcIntegerOverflowError = class extends Error {
212
+ methodName;
213
+ keyPath;
214
+ value;
175
215
  constructor(methodName, keyPath, value) {
176
- const argPosition = (typeof keyPath[0] === "number" ? keyPath[0] : parseInt(keyPath[0], 10)) + 1;
177
- let ordinal = "";
178
- const lastDigit = argPosition % 10;
179
- const lastTwoDigits = argPosition % 100;
180
- if (lastDigit == 1 && lastTwoDigits != 11) {
181
- ordinal = argPosition + "st";
182
- } else if (lastDigit == 2 && lastTwoDigits != 12) {
183
- ordinal = argPosition + "nd";
184
- } else if (lastDigit == 3 && lastTwoDigits != 13) {
185
- ordinal = argPosition + "rd";
216
+ let argumentLabel = "";
217
+ if (typeof keyPath[0] === "number") {
218
+ const argPosition = keyPath[0] + 1;
219
+ const lastDigit = argPosition % 10;
220
+ const lastTwoDigits = argPosition % 100;
221
+ if (lastDigit == 1 && lastTwoDigits != 11) {
222
+ argumentLabel = argPosition + "st";
223
+ } else if (lastDigit == 2 && lastTwoDigits != 12) {
224
+ argumentLabel = argPosition + "nd";
225
+ } else if (lastDigit == 3 && lastTwoDigits != 13) {
226
+ argumentLabel = argPosition + "rd";
227
+ } else {
228
+ argumentLabel = argPosition + "th";
229
+ }
186
230
  } else {
187
- ordinal = argPosition + "th";
231
+ argumentLabel = `\`${keyPath[0].toString()}\``;
188
232
  }
189
233
  const path = keyPath.length > 1 ? keyPath.slice(1).map((pathPart) => typeof pathPart === "number" ? `[${pathPart}]` : pathPart).join(".") : null;
190
234
  super(
191
- `The ${ordinal} argument to the \`${methodName}\` RPC method${path ? ` at path \`${path}\`` : ""} was \`${value}\`. This number is unsafe for use with the Solana JSON-RPC because it exceeds \`Number.MAX_SAFE_INTEGER\`.`
235
+ `The ${argumentLabel} argument to the \`${methodName}\` RPC method${path ? ` at path \`${path}\`` : ""} was \`${value}\`. This number is unsafe for use with the Solana JSON-RPC because it exceeds \`Number.MAX_SAFE_INTEGER\`.`
192
236
  );
193
237
  this.keyPath = keyPath;
194
238
  this.methodName = methodName;
@@ -201,6 +245,7 @@ var SolanaJsonRpcIntegerOverflowError = class extends Error {
201
245
 
202
246
  // src/rpc-default-config.ts
203
247
  var DEFAULT_RPC_CONFIG = {
248
+ defaultCommitment: "confirmed",
204
249
  onIntegerOverflow(methodName, keyPath, value) {
205
250
  throw new SolanaJsonRpcIntegerOverflowError(methodName, keyPath, value);
206
251
  }
@@ -360,11 +405,11 @@ function getRpcSubscriptionsWithSubscriptionCoalescing({
360
405
  return {
361
406
  ...iterable,
362
407
  async *[Symbol.asyncIterator]() {
363
- abortPromise || (abortPromise = abortSignal.aborted ? Promise.reject(EXPLICIT_ABORT_TOKEN) : new Promise((_, reject) => {
408
+ abortPromise ||= abortSignal.aborted ? Promise.reject(EXPLICIT_ABORT_TOKEN) : new Promise((_, reject) => {
364
409
  abortSignal.addEventListener("abort", () => {
365
410
  reject(EXPLICIT_ABORT_TOKEN);
366
411
  });
367
- }));
412
+ });
368
413
  try {
369
414
  const iterator = iterable[Symbol.asyncIterator]();
370
415
  while (true) {
@@ -436,13 +481,23 @@ function getRpcTransportWithRequestCoalescing(transport, getDeduplicationKey) {
436
481
  }
437
482
  if (coalescedRequestsByDeduplicationKey[deduplicationKey] == null) {
438
483
  const abortController = new AbortController();
484
+ const responsePromise = (async () => {
485
+ try {
486
+ return await transport({
487
+ ...config,
488
+ signal: abortController.signal
489
+ });
490
+ } catch (e) {
491
+ if (e && typeof e === "object" && "name" in e && e.name === "AbortError") {
492
+ return;
493
+ }
494
+ throw e;
495
+ }
496
+ })();
439
497
  coalescedRequestsByDeduplicationKey[deduplicationKey] = {
440
498
  abortController,
441
499
  numConsumers: 0,
442
- responsePromise: transport({
443
- ...config,
444
- signal: abortController.signal
445
- })
500
+ responsePromise
446
501
  };
447
502
  }
448
503
  const coalescedRequest = coalescedRequestsByDeduplicationKey[deduplicationKey];
@@ -596,22 +651,52 @@ function createDefaultRpcSubscriptionsTransport(config) {
596
651
  }
597
652
 
598
653
  // src/transaction-confirmation-strategy-blockheight.ts
599
- function createBlockHeightExceedencePromiseFactory(rpcSubscriptions) {
600
- return async function getBlockHeightExceedencePromise({ abortSignal: callerAbortSignal, lastValidBlockHeight }) {
654
+ function createBlockHeightExceedencePromiseFactory({
655
+ rpc,
656
+ rpcSubscriptions
657
+ }) {
658
+ return async function getBlockHeightExceedencePromise({
659
+ abortSignal: callerAbortSignal,
660
+ commitment,
661
+ lastValidBlockHeight
662
+ }) {
601
663
  const abortController = new AbortController();
602
- function handleAbort() {
664
+ const handleAbort = () => {
603
665
  abortController.abort();
604
- }
666
+ };
605
667
  callerAbortSignal.addEventListener("abort", handleAbort, { signal: abortController.signal });
606
- const slotNotifications = await rpcSubscriptions.slotNotifications().subscribe({ abortSignal: abortController.signal });
668
+ async function getBlockHeightAndDifferenceBetweenSlotHeightAndBlockHeight() {
669
+ const { absoluteSlot, blockHeight } = await rpc.getEpochInfo({ commitment }).send({ abortSignal: abortController.signal });
670
+ return {
671
+ blockHeight,
672
+ differenceBetweenSlotHeightAndBlockHeight: absoluteSlot - blockHeight
673
+ };
674
+ }
607
675
  try {
608
- for await (const slotNotification of slotNotifications) {
609
- if (slotNotification.slot > lastValidBlockHeight) {
610
- throw new Error(
611
- "The network has progressed past the last block for which this transaction could have committed."
612
- );
676
+ const [slotNotifications, { blockHeight, differenceBetweenSlotHeightAndBlockHeight }] = await Promise.all([
677
+ rpcSubscriptions.slotNotifications().subscribe({ abortSignal: abortController.signal }),
678
+ getBlockHeightAndDifferenceBetweenSlotHeightAndBlockHeight()
679
+ ]);
680
+ if (blockHeight <= lastValidBlockHeight) {
681
+ let lastKnownDifferenceBetweenSlotHeightAndBlockHeight = differenceBetweenSlotHeightAndBlockHeight;
682
+ for await (const slotNotification of slotNotifications) {
683
+ const { slot } = slotNotification;
684
+ if (slot - lastKnownDifferenceBetweenSlotHeightAndBlockHeight > lastValidBlockHeight) {
685
+ const {
686
+ blockHeight: currentBlockHeight,
687
+ differenceBetweenSlotHeightAndBlockHeight: currentDifferenceBetweenSlotHeightAndBlockHeight
688
+ } = await getBlockHeightAndDifferenceBetweenSlotHeightAndBlockHeight();
689
+ if (currentBlockHeight > lastValidBlockHeight) {
690
+ break;
691
+ } else {
692
+ lastKnownDifferenceBetweenSlotHeightAndBlockHeight = currentDifferenceBetweenSlotHeightAndBlockHeight;
693
+ }
694
+ }
613
695
  }
614
696
  }
697
+ throw new Error(
698
+ "The network has progressed past the last block for which this transaction could have been committed."
699
+ );
615
700
  } finally {
616
701
  abortController.abort();
617
702
  }
@@ -633,10 +718,12 @@ function createNonceInvalidationPromiseFactory(rpc, rpcSubscriptions) {
633
718
  }
634
719
  callerAbortSignal.addEventListener("abort", handleAbort, { signal: abortController.signal });
635
720
  const accountNotifications = await rpcSubscriptions.accountNotifications(nonceAccountAddress, { commitment, encoding: "base64" }).subscribe({ abortSignal: abortController.signal });
721
+ const base58Decoder = codecs.getBase58Decoder();
722
+ const base64Encoder = codecs.getBase64Encoder();
636
723
  function getNonceFromAccountData([base64EncodedBytes]) {
637
- const data = umiSerializers.base64.serialize(base64EncodedBytes);
724
+ const data = base64Encoder.encode(base64EncodedBytes);
638
725
  const nonceValueBytes = data.slice(NONCE_VALUE_OFFSET, NONCE_VALUE_OFFSET + 32);
639
- return umiSerializers.base58.deserialize(nonceValueBytes)[0];
726
+ return base58Decoder.decode(nonceValueBytes);
640
727
  }
641
728
  const nonceAccountDidAdvancePromise = (async () => {
642
729
  for await (const accountNotification of accountNotifications) {
@@ -701,7 +788,10 @@ function createDefaultRecentTransactionConfirmer({
701
788
  rpc,
702
789
  rpcSubscriptions
703
790
  }) {
704
- const getBlockHeightExceedencePromise = createBlockHeightExceedencePromiseFactory(rpcSubscriptions);
791
+ const getBlockHeightExceedencePromise = createBlockHeightExceedencePromiseFactory({
792
+ rpc,
793
+ rpcSubscriptions
794
+ });
705
795
  const getRecentSignatureConfirmationPromise = createRecentSignatureConfirmationPromiseFactory(
706
796
  rpc,
707
797
  rpcSubscriptions
@@ -734,10 +824,16 @@ async function waitForRecentTransactionConfirmation(config) {
734
824
  await raceStrategies(
735
825
  transactions.getSignatureFromTransaction(config.transaction),
736
826
  config,
737
- function getSpecificStrategiesForRace({ abortSignal, getBlockHeightExceedencePromise, transaction }) {
827
+ function getSpecificStrategiesForRace({
828
+ abortSignal,
829
+ commitment,
830
+ getBlockHeightExceedencePromise,
831
+ transaction
832
+ }) {
738
833
  return [
739
834
  getBlockHeightExceedencePromise({
740
835
  abortSignal,
836
+ commitment,
741
837
  lastValidBlockHeight: transaction.lifetimeConstraint.lastValidBlockHeight
742
838
  })
743
839
  ];
@@ -750,7 +846,7 @@ function getSendTransactionConfigWithAdjustedPreflightCommitment(commitment, con
750
846
  if (
751
847
  // The developer has supplied no value for `preflightCommitment`.
752
848
  !config?.preflightCommitment && // The value of `commitment` is lower than the server default of `preflightCommitment`.
753
- rpcCore.commitmentComparator(
849
+ rpcTypes.commitmentComparator(
754
850
  commitment,
755
851
  "finalized"
756
852
  /* default value of `preflightCommitment` */
@@ -772,7 +868,7 @@ async function sendTransaction_INTERNAL({
772
868
  commitment,
773
869
  rpc,
774
870
  transaction,
775
- sendTransactionConfig
871
+ ...sendTransactionConfig
776
872
  }) {
777
873
  const base64EncodedWireTransaction = transactions.getBase64EncodedWireTransaction(transaction);
778
874
  return await rpc.sendTransaction(base64EncodedWireTransaction, {
@@ -797,7 +893,10 @@ function createDefaultDurableNonceTransactionSender({
797
893
  });
798
894
  };
799
895
  }
800
- function createDefaultTransactionSender({ rpc, rpcSubscriptions }) {
896
+ function createDefaultTransactionSender({
897
+ rpc,
898
+ rpcSubscriptions
899
+ }) {
801
900
  const confirmRecentTransaction = createDefaultRecentTransactionConfirmer({
802
901
  rpc,
803
902
  rpcSubscriptions
@@ -820,10 +919,10 @@ async function sendAndConfirmDurableNonceTransaction({
820
919
  ...sendTransactionConfig
821
920
  }) {
822
921
  const transactionSignature = await sendTransaction_INTERNAL({
922
+ ...sendTransactionConfig,
823
923
  abortSignal,
824
924
  commitment,
825
925
  rpc,
826
- sendTransactionConfig,
827
926
  transaction
828
927
  });
829
928
  await confirmDurableNonceTransaction({
@@ -842,10 +941,10 @@ async function sendAndConfirmTransaction({
842
941
  ...sendTransactionConfig
843
942
  }) {
844
943
  const transactionSignature = await sendTransaction_INTERNAL({
944
+ ...sendTransactionConfig,
845
945
  abortSignal,
846
946
  commitment,
847
947
  rpc,
848
- sendTransactionConfig,
849
948
  transaction
850
949
  });
851
950
  await confirmRecentTransaction({
@@ -869,17 +968,36 @@ exports.createRecentSignatureConfirmationPromiseFactory = createRecentSignatureC
869
968
  exports.createSolanaRpc = createSolanaRpc;
870
969
  exports.createSolanaRpcSubscriptions = createSolanaRpcSubscriptions;
871
970
  exports.createSolanaRpcSubscriptions_UNSTABLE = createSolanaRpcSubscriptions_UNSTABLE;
971
+ exports.decodeTransaction = decodeTransaction;
872
972
  exports.requestAndConfirmAirdrop = requestAndConfirmAirdrop;
873
973
  exports.sendAndConfirmDurableNonceTransaction = sendAndConfirmDurableNonceTransaction;
874
974
  exports.sendAndConfirmTransaction = sendAndConfirmTransaction;
875
975
  exports.waitForDurableNonceTransactionConfirmation = waitForDurableNonceTransactionConfirmation;
876
976
  exports.waitForRecentTransactionConfirmation = waitForRecentTransactionConfirmation;
977
+ Object.keys(accounts).forEach(function (k) {
978
+ if (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {
979
+ enumerable: true,
980
+ get: function () { return accounts[k]; }
981
+ });
982
+ });
877
983
  Object.keys(addresses).forEach(function (k) {
878
984
  if (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {
879
985
  enumerable: true,
880
986
  get: function () { return addresses[k]; }
881
987
  });
882
988
  });
989
+ Object.keys(codecs).forEach(function (k) {
990
+ if (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {
991
+ enumerable: true,
992
+ get: function () { return codecs[k]; }
993
+ });
994
+ });
995
+ Object.keys(functional).forEach(function (k) {
996
+ if (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {
997
+ enumerable: true,
998
+ get: function () { return functional[k]; }
999
+ });
1000
+ });
883
1001
  Object.keys(instructions).forEach(function (k) {
884
1002
  if (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {
885
1003
  enumerable: true,
@@ -892,9 +1010,35 @@ Object.keys(keys).forEach(function (k) {
892
1010
  get: function () { return keys[k]; }
893
1011
  });
894
1012
  });
1013
+ Object.keys(programs).forEach(function (k) {
1014
+ if (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {
1015
+ enumerable: true,
1016
+ get: function () { return programs[k]; }
1017
+ });
1018
+ });
1019
+ Object.keys(rpcParsedTypes).forEach(function (k) {
1020
+ if (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {
1021
+ enumerable: true,
1022
+ get: function () { return rpcParsedTypes[k]; }
1023
+ });
1024
+ });
1025
+ Object.keys(rpcTypes).forEach(function (k) {
1026
+ if (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {
1027
+ enumerable: true,
1028
+ get: function () { return rpcTypes[k]; }
1029
+ });
1030
+ });
1031
+ Object.keys(signers).forEach(function (k) {
1032
+ if (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {
1033
+ enumerable: true,
1034
+ get: function () { return signers[k]; }
1035
+ });
1036
+ });
895
1037
  Object.keys(transactions).forEach(function (k) {
896
1038
  if (k !== 'default' && !Object.prototype.hasOwnProperty.call(exports, k)) Object.defineProperty(exports, k, {
897
1039
  enumerable: true,
898
1040
  get: function () { return transactions[k]; }
899
1041
  });
900
1042
  });
1043
+ //# sourceMappingURL=out.js.map
1044
+ //# sourceMappingURL=index.node.cjs.map