@agoric/vats 0.15.2-dev-ecf2d8e.0 → 0.15.2-other-dev-70beeb7.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (151) hide show
  1. package/CHANGELOG.md +9 -0
  2. package/decentral-core-config.json +66 -0
  3. package/decentral-demo-config.json +155 -0
  4. package/decentral-devnet-config.json +216 -0
  5. package/decentral-itest-vaults-config.json +210 -0
  6. package/decentral-main-vaults-config.json +229 -0
  7. package/decentral-test-vaults-config.json +195 -0
  8. package/demo-proposals.json +5 -0
  9. package/exported.js +1 -1
  10. package/jsconfig.build.json +12 -0
  11. package/{tsconfig.json → jsconfig.json} +0 -3
  12. package/package.json +42 -32
  13. package/scripts/build-bundles.d.ts +3 -0
  14. package/scripts/build-bundles.d.ts.map +1 -0
  15. package/scripts/build-bundles.js +3 -8
  16. package/scripts/build-game1-start.d.ts +5 -0
  17. package/scripts/build-game1-start.d.ts.map +1 -0
  18. package/scripts/build-game1-start.js +34 -0
  19. package/scripts/build-walletFactory-upgrade.d.ts +5 -0
  20. package/scripts/build-walletFactory-upgrade.d.ts.map +1 -0
  21. package/scripts/build-walletFactory-upgrade.js +35 -0
  22. package/scripts/init-core.d.ts +5 -0
  23. package/scripts/init-core.d.ts.map +1 -0
  24. package/scripts/init-core.js +31 -0
  25. package/scripts/init-network.d.ts +5 -0
  26. package/scripts/init-network.d.ts.map +1 -0
  27. package/scripts/init-network.js +19 -0
  28. package/scripts/restart-vats.d.ts +5 -0
  29. package/scripts/restart-vats.d.ts.map +1 -0
  30. package/scripts/restart-vats.js +23 -0
  31. package/scripts/set-core-proposal-env.d.ts +3 -0
  32. package/scripts/set-core-proposal-env.d.ts.map +1 -0
  33. package/scripts/set-core-proposal-env.js +37 -0
  34. package/src/bridge.d.ts +3 -12
  35. package/src/bridge.d.ts.map +1 -1
  36. package/src/bridge.js +12 -24
  37. package/src/centralSupply.d.ts.map +1 -1
  38. package/src/centralSupply.js +3 -3
  39. package/src/core/basic-behaviors.d.ts +7 -7
  40. package/src/core/basic-behaviors.d.ts.map +1 -1
  41. package/src/core/basic-behaviors.js +50 -56
  42. package/src/core/boot-chain.d.ts +1 -1
  43. package/src/core/boot-chain.js +3 -3
  44. package/src/core/boot-sim.js +3 -3
  45. package/src/core/boot-solo.js +4 -4
  46. package/src/core/chain-behaviors.d.ts.map +1 -1
  47. package/src/core/chain-behaviors.js +23 -29
  48. package/src/core/client-behaviors.d.ts.map +1 -1
  49. package/src/core/client-behaviors.js +4 -5
  50. package/src/core/demoIssuers.d.ts +15 -17
  51. package/src/core/demoIssuers.d.ts.map +1 -1
  52. package/src/core/demoIssuers.js +36 -36
  53. package/src/core/lib-boot.d.ts +9 -11
  54. package/src/core/lib-boot.d.ts.map +1 -1
  55. package/src/core/lib-boot.js +22 -32
  56. package/src/core/promise-space.d.ts.map +1 -1
  57. package/src/core/promise-space.js +14 -14
  58. package/src/core/sim-behaviors.d.ts +1 -1
  59. package/src/core/sim-behaviors.d.ts.map +1 -1
  60. package/src/core/startWalletFactory.d.ts +62 -9
  61. package/src/core/startWalletFactory.d.ts.map +1 -1
  62. package/src/core/startWalletFactory.js +17 -26
  63. package/src/core/types.d.ts +820 -0
  64. package/src/core/types.d.ts.map +1 -0
  65. package/src/core/types.js +347 -0
  66. package/src/core/utils.d.ts +16 -18
  67. package/src/core/utils.d.ts.map +1 -1
  68. package/src/core/utils.js +30 -32
  69. package/src/crc.d.ts +6 -2
  70. package/src/crc.d.ts.map +1 -1
  71. package/src/crc.js +15 -5
  72. package/src/ibc.d.ts +5 -5
  73. package/src/ibc.d.ts.map +1 -1
  74. package/src/ibc.js +47 -27
  75. package/src/lib-board.d.ts +50 -49
  76. package/src/lib-board.d.ts.map +1 -1
  77. package/src/lib-board.js +39 -32
  78. package/src/mintHolder.d.ts +1 -3
  79. package/src/mintHolder.d.ts.map +1 -1
  80. package/src/mintHolder.js +8 -13
  81. package/src/nameHub.d.ts +2 -18
  82. package/src/nameHub.d.ts.map +1 -1
  83. package/src/nameHub.js +17 -26
  84. package/src/proposals/network-proposal.d.ts.map +1 -1
  85. package/src/proposals/network-proposal.js +12 -15
  86. package/src/proposals/restart-vats-proposal.d.ts +1 -1
  87. package/src/proposals/restart-vats-proposal.d.ts.map +1 -1
  88. package/src/proposals/restart-vats-proposal.js +5 -3
  89. package/src/provisionPool.d.ts +164 -0
  90. package/src/provisionPool.d.ts.map +1 -0
  91. package/src/provisionPool.js +113 -0
  92. package/src/provisionPoolKit.d.ts +408 -0
  93. package/src/provisionPoolKit.d.ts.map +1 -0
  94. package/src/provisionPoolKit.js +464 -0
  95. package/src/repl.js +1 -1
  96. package/src/tokens.d.ts +36 -0
  97. package/src/tokens.d.ts.map +1 -0
  98. package/src/tokens.js +37 -0
  99. package/src/types.d.ts +103 -84
  100. package/src/types.d.ts.map +1 -0
  101. package/src/types.js +97 -1
  102. package/src/vat-agoricNames.d.ts +1 -1
  103. package/src/vat-agoricNames.d.ts.map +1 -1
  104. package/src/vat-agoricNames.js +3 -2
  105. package/src/vat-bank.d.ts +58 -62
  106. package/src/vat-bank.d.ts.map +1 -1
  107. package/src/vat-bank.js +54 -62
  108. package/src/vat-board.d.ts +1 -1
  109. package/src/vat-bridge.d.ts +30 -2
  110. package/src/vat-bridge.d.ts.map +1 -1
  111. package/src/vat-mints.d.ts +12 -12
  112. package/src/vat-mints.d.ts.map +1 -1
  113. package/src/vat-mints.js +6 -6
  114. package/src/vat-network.d.ts +1 -1
  115. package/src/vat-network.d.ts.map +1 -1
  116. package/src/vat-network.js +1 -1
  117. package/src/vat-priceAuthority.d.ts +1 -1
  118. package/src/vat-provisioning.d.ts +1 -1
  119. package/src/vat-provisioning.d.ts.map +1 -1
  120. package/src/vat-provisioning.js +7 -11
  121. package/src/vat-sharing.d.ts +54 -0
  122. package/src/vat-sharing.d.ts.map +1 -0
  123. package/src/vat-sharing.js +14 -0
  124. package/src/vat-zoe.d.ts +0 -2
  125. package/src/vat-zoe.d.ts.map +1 -1
  126. package/src/vat-zoe.js +2 -8
  127. package/src/virtual-purse.d.ts +12 -37
  128. package/src/virtual-purse.d.ts.map +1 -1
  129. package/src/virtual-purse.js +36 -38
  130. package/src/walletFlags.d.ts +2 -2
  131. package/src/walletFlags.js +2 -1
  132. package/tools/authorityViz.d.ts +27 -0
  133. package/tools/authorityViz.d.ts.map +1 -0
  134. package/tools/authorityViz.js +272 -0
  135. package/tools/bank-utils.d.ts +1 -1
  136. package/tools/bank-utils.d.ts.map +1 -1
  137. package/tools/bank-utils.js +5 -12
  138. package/tools/board-utils.d.ts +19 -5
  139. package/tools/board-utils.d.ts.map +1 -1
  140. package/tools/board-utils.js +81 -29
  141. package/tools/boot-test-utils.d.ts +10 -9
  142. package/tools/boot-test-utils.d.ts.map +1 -1
  143. package/tools/boot-test-utils.js +16 -6
  144. package/tools/viz.mk +17 -0
  145. package/index.js +0 -11
  146. package/src/core/types-ambient.d.ts +0 -475
  147. package/src/core/types-ambient.js +0 -1
  148. package/src/proposals/zcf-proposal.d.ts +0 -30
  149. package/src/proposals/zcf-proposal.d.ts.map +0 -1
  150. package/src/proposals/zcf-proposal.js +0 -45
  151. package/tsconfig.build.json +0 -6
package/src/vat-bank.js CHANGED
@@ -9,8 +9,7 @@ import {
9
9
  prepareDurablePublishKit,
10
10
  subscribeEach,
11
11
  } from '@agoric/notifier';
12
- import { M, getInterfaceGuardPayload } from '@endo/patterns';
13
- import { provideLazy } from '@agoric/store';
12
+ import { M, provideLazy } from '@agoric/store';
14
13
  import { makeDurableZone } from '@agoric/zone/durable.js';
15
14
  import { E, Far } from '@endo/far';
16
15
  import { makeAtomicProvider } from '@agoric/store/src/stores/store-utils.js';
@@ -27,15 +26,12 @@ const { Fail } = assert;
27
26
  const { VirtualPurseControllerI } = makeVirtualPurseKitIKit();
28
27
 
29
28
  const BridgeChannelI = M.interface('BridgeChannel', {
30
- fromBridge:
31
- getInterfaceGuardPayload(BridgeScopedManagerI).methodGuards.fromBridge,
32
- toBridge:
33
- getInterfaceGuardPayload(BridgeScopedManagerI).methodGuards.toBridge,
29
+ fromBridge: BridgeScopedManagerI.methodGuards.fromBridge,
30
+ toBridge: BridgeScopedManagerI.methodGuards.toBridge,
34
31
  });
35
32
 
36
33
  /**
37
34
  * @typedef {import('./virtual-purse').VirtualPurseController} VirtualPurseController
38
- *
39
35
  * @typedef {Awaited<ReturnType<ReturnType<typeof prepareVirtualPurse>>>} VirtualPurse
40
36
  */
41
37
 
@@ -48,14 +44,10 @@ const BalanceUpdaterI = M.interface('BalanceUpdater', {
48
44
  update: M.call(M.string()).optional(M.string()).returns(),
49
45
  });
50
46
 
51
- /**
52
- * @typedef {Pick<
53
- * import('./types.js').ScopedBridgeManager,
54
- * 'fromBridge' | 'toBridge'
55
- * >} BridgeChannel
56
- */
47
+ /** @typedef {Pick<import('./types.js').ScopedBridgeManager, 'fromBridge' | 'toBridge'>} BridgeChannel */
57
48
 
58
49
  /**
50
+ *
59
51
  * @param {import('@agoric/zone').Zone} zone
60
52
  * @returns {(brand: Brand, publisher: Publisher<Amount>) => BalanceUpdater}
61
53
  */
@@ -84,7 +76,9 @@ const prepareBalanceUpdater = zone =>
84
76
  },
85
77
  );
86
78
 
87
- /** @param {import('@agoric/zone').Zone} zone */
79
+ /**
80
+ * @param {import('@agoric/zone').Zone} zone
81
+ */
88
82
  const prepareBankPurseController = zone => {
89
83
  /**
90
84
  * @param {BridgeChannel} bankBridge
@@ -176,12 +170,16 @@ const prepareRewardPurseController = zone =>
176
170
  },
177
171
  );
178
172
 
179
- /** @param {import('@agoric/zone').Zone} zone */
173
+ /**
174
+ * @param {import('@agoric/zone').Zone} zone
175
+ */
180
176
  const prepareBankChannelHandler = zone =>
181
177
  zone.exoClass(
182
178
  'BankChannelHandler',
183
179
  BridgeHandlerI,
184
- /** @param {MapStore<string, MapStore<string, BalanceUpdater>>} denomToAddressUpdater */
180
+ /**
181
+ * @param {MapStore<string, MapStore<string, BalanceUpdater>>} denomToAddressUpdater
182
+ */
185
183
  denomToAddressUpdater => ({ denomToAddressUpdater }),
186
184
  {
187
185
  async fromBridge(obj) {
@@ -223,7 +221,7 @@ const prepareBankChannelHandler = zone =>
223
221
  * Concatenate multiple iterables to form a new one.
224
222
  *
225
223
  * @template T
226
- * @param {(Iterable<T> | AsyncIterable<T>)[]} iterables
224
+ * @param {Array<Iterable<T> | AsyncIterable<T>>} iterables
227
225
  */
228
226
  async function* concatAsyncIterables(iterables) {
229
227
  for (const asyncIterable of iterables) {
@@ -275,15 +273,12 @@ const makeHistoricalTopic = (historyValues, futureSubscriber, skipValue) => {
275
273
  return makeSubscriberFromAsyncIterable(allHistory, skipValue);
276
274
  };
277
275
 
278
- /**
279
- * @type {WeakMap<
280
- * MapStore<Brand, AssetDescriptor>,
281
- * Promise<PublicationRecord<AssetDescriptor>>
282
- * >}
283
- */
276
+ /** @type {WeakMap<MapStore<Brand, AssetDescriptor>, Promise<PublicationRecord<AssetDescriptor>>>} */
284
277
  const fullAssetPubLists = new WeakMap();
285
278
 
286
- /** @param {import('@agoric/zone').Zone} zone */
279
+ /**
280
+ * @param {import('@agoric/zone').Zone} zone
281
+ */
287
282
  const prepareAssetSubscription = zone => {
288
283
  const assetSubscriptionCache = zone.weakMapStore('assetSubscriptionCache');
289
284
 
@@ -363,7 +358,9 @@ const AssetIssuerKitShape = M.splitRecord(BaseIssuerKitShape, {
363
358
  mint: M.remotable('Mint'),
364
359
  });
365
360
 
366
- /** @typedef {AssetIssuerKit & { denom: string; escrowPurse?: ERef<Purse> }} AssetRecord */
361
+ /**
362
+ * @typedef {AssetIssuerKit & { denom: string, escrowPurse?: ERef<Purse> }} AssetRecord
363
+ */
367
364
 
368
365
  /**
369
366
  * @typedef {object} AssetDescriptor
@@ -375,18 +372,18 @@ const AssetIssuerKitShape = M.splitRecord(BaseIssuerKitShape, {
375
372
  */
376
373
 
377
374
  /**
378
- * @typedef {AssetDescriptor & {
379
- * issuer: Issuer<'nat'>; // settled identity
380
- * displayInfo: DisplayInfo;
375
+ * @typedef { AssetDescriptor & {
376
+ * issuer: Issuer<'nat'>, // settled identity
377
+ * displayInfo: DisplayInfo,
381
378
  * }} AssetInfo
382
379
  */
383
380
 
384
381
  /**
385
382
  * @typedef {object} Bank
386
- * @property {() => IterableEachTopic<AssetDescriptor>} getAssetSubscription
387
- * Returns assets as they are added to the bank
388
- * @property {(brand: Brand) => Promise<VirtualPurse>} getPurse Find any
389
- * existing vpurse (keyed by address and brand) or create a new one.
383
+ * @property {() => IterableEachTopic<AssetDescriptor>} getAssetSubscription Returns
384
+ * assets as they are added to the bank
385
+ * @property {(brand: Brand) => Promise<VirtualPurse>} getPurse Find any existing vpurse
386
+ * (keyed by address and brand) or create a new one.
390
387
  */
391
388
 
392
389
  export const BankI = M.interface('Bank', {
@@ -413,12 +410,7 @@ const prepareBank = (
413
410
  // we decide to partition the provider and use `brandToVPurse` directly, we'd
414
411
  // need ephemera for each `makeBank` call.
415
412
  const addressDenomToPurse = zone.mapStore('addressDenomToPurse');
416
- /**
417
- * @type {import('@agoric/store/src/stores/store-utils.js').AtomicProvider<
418
- * string,
419
- * VirtualPurse
420
- * >}
421
- */
413
+ /** @type {import('@agoric/store/src/stores/store-utils.js').AtomicProvider<string, VirtualPurse>} */
422
414
  const purseProvider = makeAtomicProvider(addressDenomToPurse);
423
415
 
424
416
  const makeBank = zone.exoClass(
@@ -582,17 +574,12 @@ const prepareBankManager = (
582
574
  const brandToAssetDescriptor = detachedZone.mapStore(
583
575
  'brandToAssetDescriptor',
584
576
  );
585
- /**
586
- * @type {MapStore<
587
- * string,
588
- * { bank: Bank; brandToVPurse: MapStore<Brand, VirtualPurse> }
589
- * >}
590
- */
577
+ /** @type {MapStore<string, { bank: Bank, brandToVPurse: MapStore<Brand, VirtualPurse> }>} */
591
578
  const addressToBank = detachedZone.mapStore('addressToBank');
592
579
 
593
580
  /**
594
581
  * CAVEAT: The history for the assetSubscriber needs to be loaded into the
595
- * heap on first use in this incarnation. Use provideAssetSubscription to
582
+ * heap on first use in this incarnation. Use provideAssetSubscription to
596
583
  * set that up.
597
584
  *
598
585
  * @type {PublishKit<AssetDescriptor>}
@@ -627,7 +614,7 @@ const prepareBankManager = (
627
614
  /**
628
615
  * @param {string} denom
629
616
  * @param {AssetIssuerKit} feeKit
630
- * @returns {ERef<import('@endo/far').EOnly<DepositFacet>>}
617
+ * @returns {import('@endo/far').EOnly<DepositFacet>}
631
618
  */
632
619
  getRewardDistributorDepositFacet(denom, feeKit) {
633
620
  const { bankChannel } = this.state;
@@ -650,7 +637,7 @@ const prepareBankManager = (
650
637
  *
651
638
  * @param {string} moduleName
652
639
  * @returns {Promise<string | null>} address of named module account, or
653
- * null if unimplemented (no bankChannel)
640
+ * null if unimplemented (no bankChannel)
654
641
  */
655
642
  async getModuleAccountAddress(moduleName) {
656
643
  const { bankChannel } = this.state;
@@ -665,17 +652,16 @@ const prepareBankManager = (
665
652
  },
666
653
 
667
654
  /**
668
- * Add an asset to the bank, and publish it to the subscriptions. If
669
- * nameAdmin is defined, update with denom to AssetInfo entry.
655
+ * Add an asset to the bank, and publish it to the subscriptions.
656
+ * If nameAdmin is defined, update with denom to AssetInfo entry.
670
657
  *
671
- * Note that AssetInfo has the settled identity of the issuer, not just a
672
- * promise for it.
658
+ * Note that AssetInfo has the settled identity of the issuer,
659
+ * not just a promise for it.
673
660
  *
674
661
  * @param {string} denom lower-level denomination string
675
662
  * @param {string} issuerName
676
663
  * @param {string} proposedName
677
- * @param {AssetIssuerKit & { payment?: ERef<Payment> }} kit ERTP issuer
678
- * kit (mint, brand, issuer)
664
+ * @param {AssetIssuerKit & { payment?: ERef<Payment> }} kit ERTP issuer kit (mint, brand, issuer)
679
665
  */
680
666
  async addAsset(denom, issuerName, proposedName, kit) {
681
667
  const {
@@ -736,7 +722,7 @@ const prepareBankManager = (
736
722
  ([issuer, displayInfo]) =>
737
723
  E(nameAdmin).update(
738
724
  denom,
739
- /** @type {AssetInfo} */ (
725
+ /** @type { AssetInfo } */ (
740
726
  harden({
741
727
  brand,
742
728
  issuer,
@@ -788,7 +774,9 @@ const prepareBankManager = (
788
774
  return makeBankManager;
789
775
  };
790
776
 
791
- /** @param {MapStore<string, any>} baggage */
777
+ /**
778
+ * @param {MapStore<string, any>} baggage
779
+ */
792
780
  const prepareFromBaggage = baggage => {
793
781
  const rootZone = makeDurableZone(baggage);
794
782
 
@@ -809,7 +797,9 @@ const prepareFromBaggage = baggage => {
809
797
  const makeRewardPurseController = prepareRewardPurseController(rootZone);
810
798
  const makeBankChannelHandler = prepareBankChannelHandler(rootZone);
811
799
 
812
- /** @type {import('@agoric/internal/src/callback.js').MakeAttenuator<BridgeChannel>} */
800
+ /**
801
+ * @type {import('@agoric/internal/src/callback.js').MakeAttenuator<BridgeChannel>}
802
+ */
813
803
  const makeBridgeChannelAttenuator = prepareGuardedAttenuator(
814
804
  rootZone.subZone('attenuators'),
815
805
  BridgeChannelI,
@@ -849,11 +839,11 @@ export function buildRootObject(_vatPowers, _args, baggage) {
849
839
 
850
840
  return Far('bankMaker', {
851
841
  /**
852
- * @param {ERef<import('./types.js').ScopedBridgeManager | undefined>} [bankBridgeManagerP]
853
- * a bridge manager for the "remote" bank (such as on cosmos-sdk). If not
854
- * supplied (such as on sim-chain), we just use local purses.
855
- * @param {ERef<{ update: import('./types.js').NameAdmin['update'] }>} [nameAdminP]
856
- * update facet of a NameAdmin; see addAsset() for detail.
842
+ * @param {ERef<import('./types.js').ScopedBridgeManager | undefined>} [bankBridgeManagerP] a bridge
843
+ * manager for the "remote" bank (such as on cosmos-sdk). If not supplied
844
+ * (such as on sim-chain), we just use local purses.
845
+ * @param {ERef<{ update: import('./types.js').NameAdmin['update'] }>} [nameAdminP] update facet of
846
+ * a NameAdmin; see addAsset() for detail.
857
847
  */
858
848
  async makeBankManager(
859
849
  bankBridgeManagerP = undefined,
@@ -866,7 +856,9 @@ export function buildRootObject(_vatPowers, _args, baggage) {
866
856
  'denomToAddressUpdater',
867
857
  );
868
858
 
869
- /** @param {ERef<import('./types.js').ScopedBridgeManager>} [bankBridgeMgr] */
859
+ /**
860
+ * @param {ERef<import('./types.js').ScopedBridgeManager>} [bankBridgeMgr]
861
+ */
870
862
  async function getBankChannel(bankBridgeMgr) {
871
863
  // We do the logic here if the bridge manager is available. Otherwise,
872
864
  // the bank is not "remote" (such as on sim-chain), so we just use
@@ -3,7 +3,7 @@
3
3
  * @param {unknown} _vatParameters
4
4
  * @param {import('@agoric/vat-data').Baggage} baggage
5
5
  */
6
- export function buildRootObject(_vatPowers: unknown, _vatParameters: unknown, baggage: any): {
6
+ export function buildRootObject(_vatPowers: unknown, _vatParameters: unknown, baggage: MapStore<string, unknown>): {
7
7
  getBoard: () => {
8
8
  getId(value: any): string;
9
9
  getValue(id: string): any;
@@ -1,8 +1,36 @@
1
1
  export function buildRootObject(vatPowers: any, _args: any, baggage: any): {
2
- makeBridgedChainStorageRoot: (storageBridgeManagerP: ERef<import('./types.js').ScopedBridgeManager>, rootPath: string, options?: object) => Promise<any>;
2
+ makeBridgedChainStorageRoot: (storageBridgeManagerP: ERef<import('./types.js').ScopedBridgeManager>, rootPath: string, options?: object) => Promise<{
3
+ getPath(): string;
4
+ getStoreKey(): Promise<import("@agoric/internal/src/lib-chainStorage.js").VStorageKey>;
5
+ makeChildNode(name: string, childNodeOptions?: {
6
+ sequence?: boolean | undefined;
7
+ } | undefined): import("@agoric/internal/src/lib-chainStorage.js").StorageNode;
8
+ setValue(value: string): Promise<void>;
9
+ } & import("@endo/eventual-send").RemotableBrand<{}, {
10
+ getPath(): string;
11
+ getStoreKey(): Promise<import("@agoric/internal/src/lib-chainStorage.js").VStorageKey>;
12
+ makeChildNode(name: string, childNodeOptions?: {
13
+ sequence?: boolean | undefined;
14
+ } | undefined): import("@agoric/internal/src/lib-chainStorage.js").StorageNode;
15
+ setValue(value: string): Promise<void>;
16
+ }>>;
3
17
  provideManagerForBridge: (bridgeDevice: BridgeDevice) => import("./types.js").BridgeManager;
4
18
  } & import("@endo/eventual-send").RemotableBrand<{}, {
5
- makeBridgedChainStorageRoot: (storageBridgeManagerP: ERef<import('./types.js').ScopedBridgeManager>, rootPath: string, options?: object) => Promise<any>;
19
+ makeBridgedChainStorageRoot: (storageBridgeManagerP: ERef<import('./types.js').ScopedBridgeManager>, rootPath: string, options?: object) => Promise<{
20
+ getPath(): string;
21
+ getStoreKey(): Promise<import("@agoric/internal/src/lib-chainStorage.js").VStorageKey>;
22
+ makeChildNode(name: string, childNodeOptions?: {
23
+ sequence?: boolean | undefined;
24
+ } | undefined): import("@agoric/internal/src/lib-chainStorage.js").StorageNode;
25
+ setValue(value: string): Promise<void>;
26
+ } & import("@endo/eventual-send").RemotableBrand<{}, {
27
+ getPath(): string;
28
+ getStoreKey(): Promise<import("@agoric/internal/src/lib-chainStorage.js").VStorageKey>;
29
+ makeChildNode(name: string, childNodeOptions?: {
30
+ sequence?: boolean | undefined;
31
+ } | undefined): import("@agoric/internal/src/lib-chainStorage.js").StorageNode;
32
+ setValue(value: string): Promise<void>;
33
+ }>>;
6
34
  provideManagerForBridge: (bridgeDevice: BridgeDevice) => import("./types.js").BridgeManager;
7
35
  }>;
8
36
  //# sourceMappingURL=vat-bridge.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"vat-bridge.d.ts","sourceRoot":"","sources":["vat-bridge.js"],"names":[],"mappings":"AAQA;yDAea,KAAK,OAAO,YAAY,EAAE,mBAAmB,CAAC,YAC9C,MAAM,YACN,MAAM;;;yDAFN,KAAK,OAAO,YAAY,EAAE,mBAAmB,CAAC,YAC9C,MAAM,YACN,MAAM;;GAyBlB"}
1
+ {"version":3,"file":"vat-bridge.d.ts","sourceRoot":"","sources":["vat-bridge.js"],"names":[],"mappings":"AAQA;yDAea,KAAK,OAAO,YAAY,EAAE,mBAAmB,CAAC,YAC9C,MAAM,YACN,MAAM;;;;;;;;;;;;;;;;;yDAFN,KAAK,OAAO,YAAY,EAAE,mBAAmB,CAAC,YAC9C,MAAM,YACN,MAAM;;;;;;;;;;;;;;;;GAyBlB"}
@@ -4,9 +4,9 @@ export function buildRootObject(): {
4
4
  /** @param {string[]} issuerNames */
5
5
  getIssuers: (issuerNames: string[]) => Issuer<AssetKind>[];
6
6
  /**
7
- * WARNING: a mint is ability to mint new digital assets, a very powerful
8
- * authority that is usually closely held. But this mint is for demo /
9
- * faucet purposes.
7
+ * WARNING: a mint is ability to mint new digital assets,
8
+ * a very powerful authority that is usually closely held.
9
+ * But this mint is for demo / faucet purposes.
10
10
  *
11
11
  * @param {string} name
12
12
  */
@@ -14,10 +14,10 @@ export function buildRootObject(): {
14
14
  /** @param {string[]} issuerNames */
15
15
  getMints: (issuerNames: string[]) => Mint<AssetKind>[];
16
16
  /**
17
- * @param {any} issuerNameSingular For example, 'moola', or 'simolean'
18
- * @param {[AssetKind?, DisplayInfo?]} issuerArgs
17
+ * @param {*} issuerNameSingular For example, 'moola', or 'simolean'
18
+ * @param {[AssetKind?, DisplayInfo?]} issuerArgs
19
19
  */
20
- makeMintAndIssuer: (issuerNameSingular: any, issuerArgs_0?: AssetKind | undefined, issuerArgs_1?: DisplayInfo<AssetKind> | undefined) => Issuer<"nat" | "set" | "copySet" | "copyBag">;
20
+ makeMintAndIssuer: (issuerNameSingular: any, issuerArgs_0?: AssetKind | undefined, issuerArgs_1?: DisplayInfo<AssetKind> | undefined) => Issuer<"set" | "nat" | "copySet" | "copyBag">;
21
21
  provideIssuerKit: (issuerName: any, ...issuerArgs: any[]) => {
22
22
  mint: Mint<any>;
23
23
  issuer: Issuer<any>;
@@ -39,9 +39,9 @@ export function buildRootObject(): {
39
39
  /** @param {string[]} issuerNames */
40
40
  getIssuers: (issuerNames: string[]) => Issuer<AssetKind>[];
41
41
  /**
42
- * WARNING: a mint is ability to mint new digital assets, a very powerful
43
- * authority that is usually closely held. But this mint is for demo /
44
- * faucet purposes.
42
+ * WARNING: a mint is ability to mint new digital assets,
43
+ * a very powerful authority that is usually closely held.
44
+ * But this mint is for demo / faucet purposes.
45
45
  *
46
46
  * @param {string} name
47
47
  */
@@ -49,10 +49,10 @@ export function buildRootObject(): {
49
49
  /** @param {string[]} issuerNames */
50
50
  getMints: (issuerNames: string[]) => Mint<AssetKind>[];
51
51
  /**
52
- * @param {any} issuerNameSingular For example, 'moola', or 'simolean'
53
- * @param {[AssetKind?, DisplayInfo?]} issuerArgs
52
+ * @param {*} issuerNameSingular For example, 'moola', or 'simolean'
53
+ * @param {[AssetKind?, DisplayInfo?]} issuerArgs
54
54
  */
55
- makeMintAndIssuer: (issuerNameSingular: any, issuerArgs_0?: AssetKind | undefined, issuerArgs_1?: DisplayInfo<AssetKind> | undefined) => Issuer<"nat" | "set" | "copySet" | "copyBag">;
55
+ makeMintAndIssuer: (issuerNameSingular: any, issuerArgs_0?: AssetKind | undefined, issuerArgs_1?: DisplayInfo<AssetKind> | undefined) => Issuer<"set" | "nat" | "copySet" | "copyBag">;
56
56
  provideIssuerKit: (issuerName: any, ...issuerArgs: any[]) => {
57
57
  mint: Mint<any>;
58
58
  issuer: Issuer<any>;
@@ -1 +1 @@
1
- {"version":3,"file":"vat-mints.d.ts","sourceRoot":"","sources":["vat-mints.js"],"names":[],"mappings":"AAUA;;;IAUI,oCAAoC;8BAAxB,MAAM,EAAE;IAGpB;;;;;;OAMG;oBADQ,MAAM;IAMjB,oCAAoC;4BAAxB,MAAM,EAAE;IAEpB;;;OAGG;4CAFQ,GAAG;;;;;;IA6Bd;;;OAGG;qCAFQ,MAAM,SACN,MAAM;IAUjB;;;OAGG;uCAFQ,MAAM,EAAE,UACR,MAAM,EAAE;;;;IA5DnB,oCAAoC;8BAAxB,MAAM,EAAE;IAGpB;;;;;;OAMG;oBADQ,MAAM;IAMjB,oCAAoC;4BAAxB,MAAM,EAAE;IAEpB;;;OAGG;4CAFQ,GAAG;;;;;;IA6Bd;;;OAGG;qCAFQ,MAAM,SACN,MAAM;IAUjB;;;OAGG;uCAFQ,MAAM,EAAE,UACR,MAAM,EAAE;GAStB"}
1
+ {"version":3,"file":"vat-mints.d.ts","sourceRoot":"","sources":["vat-mints.js"],"names":[],"mappings":"AAUA;;;IAUI,oCAAoC;8BAAxB,MAAM,EAAE;IAGpB;;;;;;OAMG;oBADQ,MAAM;IAMjB,oCAAoC;4BAAxB,MAAM,EAAE;IAEpB;;;OAGG;;;;;;;IA2BH;;;OAGG;qCAFQ,MAAM,SACN,MAAM;IAUjB;;;OAGG;uCAFQ,MAAM,EAAE,UACR,MAAM,EAAE;;;;IA5DnB,oCAAoC;8BAAxB,MAAM,EAAE;IAGpB;;;;;;OAMG;oBADQ,MAAM;IAMjB,oCAAoC;4BAAxB,MAAM,EAAE;IAEpB;;;OAGG;;;;;;;IA2BH;;;OAGG;qCAFQ,MAAM,SACN,MAAM;IAUjB;;;OAGG;uCAFQ,MAAM,EAAE,UACR,MAAM,EAAE;GAStB"}
package/src/vat-mints.js CHANGED
@@ -9,7 +9,7 @@ import { notForProductionUse } from '@agoric/internal/src/magic-cookie-test-only
9
9
  // simoleanMint.
10
10
 
11
11
  export function buildRootObject() {
12
- /** @type {MapStore<string, { mint: Mint; brand: Brand }>} */
12
+ /** @type {MapStore<string, { mint: Mint, brand: Brand}>} */
13
13
  const mintsAndBrands = makeScalarMapStore('issuerName');
14
14
 
15
15
  const api = Far('api', {
@@ -22,9 +22,9 @@ export function buildRootObject() {
22
22
  getIssuers: issuerNames => issuerNames.map(api.getIssuer),
23
23
 
24
24
  /**
25
- * WARNING: a mint is ability to mint new digital assets, a very powerful
26
- * authority that is usually closely held. But this mint is for demo /
27
- * faucet purposes.
25
+ * WARNING: a mint is ability to mint new digital assets,
26
+ * a very powerful authority that is usually closely held.
27
+ * But this mint is for demo / faucet purposes.
28
28
  *
29
29
  * @param {string} name
30
30
  */
@@ -35,8 +35,8 @@ export function buildRootObject() {
35
35
  /** @param {string[]} issuerNames */
36
36
  getMints: issuerNames => issuerNames.map(api.getMint),
37
37
  /**
38
- * @param {any} issuerNameSingular For example, 'moola', or 'simolean'
39
- * @param {[AssetKind?, DisplayInfo?]} issuerArgs
38
+ * @param {*} issuerNameSingular For example, 'moola', or 'simolean'
39
+ * @param {[AssetKind?, DisplayInfo?]} issuerArgs
40
40
  */
41
41
  makeMintAndIssuer: (issuerNameSingular, ...issuerArgs) => {
42
42
  notForProductionUse();
@@ -1,2 +1,2 @@
1
- export function buildRootObject(): import("@agoric/network/src/router").RouterProtocol;
1
+ export function buildRootObject(): import("@agoric/swingset-vat/src/vats/network/router.js").RouterProtocol;
2
2
  //# sourceMappingURL=vat-network.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"vat-network.d.ts","sourceRoot":"","sources":["vat-network.js"],"names":[],"mappings":"AAGA,uFAEC"}
1
+ {"version":3,"file":"vat-network.d.ts","sourceRoot":"","sources":["vat-network.js"],"names":[],"mappings":"AAGA,4GAEC"}
@@ -1,5 +1,5 @@
1
1
  // @ts-check
2
- import { makeRouterProtocol } from '@agoric/network';
2
+ import { makeRouterProtocol } from '@agoric/swingset-vat/src/vats/network/router.js';
3
3
 
4
4
  export function buildRootObject() {
5
5
  return makeRouterProtocol(); // already Far('Router')
@@ -6,7 +6,7 @@
6
6
  * @param {unknown} _vatParams
7
7
  * @param {import('@agoric/vat-data').Baggage} baggage
8
8
  */
9
- export function buildRootObject(_vatPowers: VatPowers, _vatParams: unknown, baggage: any): {
9
+ export function buildRootObject(_vatPowers: VatPowers, _vatParams: unknown, baggage: MapStore<string, unknown>): {
10
10
  getRegistry: () => import("@agoric/zoe/tools/priceAuthorityRegistry.js").PriceAuthorityRegistry;
11
11
  } & import("@endo/eventual-send").RemotableBrand<{}, {
12
12
  getRegistry: () => import("@agoric/zoe/tools/priceAuthorityRegistry.js").PriceAuthorityRegistry;
@@ -3,7 +3,7 @@
3
3
  * @param {unknown} _vatParameters
4
4
  * @param {import('@agoric/vat-data').Baggage} baggage
5
5
  */
6
- export function buildRootObject(_vatPowers: unknown, _vatParameters: unknown, baggage: any): {
6
+ export function buildRootObject(_vatPowers: unknown, _vatParameters: unknown, baggage: MapStore<string, unknown>): {
7
7
  register: (b: ERef<ClientCreator>, c: CommsVatRoot, v: VattpVat) => Promise<void>;
8
8
  pleaseProvision: (nickname: string, address: string, powerFlags: string[]) => Promise<{
9
9
  ingressIndex: number;
@@ -1 +1 @@
1
- {"version":3,"file":"vat-provisioning.d.ts","sourceRoot":"","sources":["vat-provisioning.js"],"names":[],"mappings":"AAmFA;;;;GAIG;AACH,4CAJW,OAAO,kBACP,OAAO;kBAqBL,KAAK,aAAa,CAAC,KACnB,YAAY,KACZ,QAAQ;gCASR,MAAM,WACN,MAAM,cACN,MAAM,EAAE;;;;;;;;kBAbR,KAAK,aAAa,CAAC,KACnB,YAAY,KACZ,QAAQ;gCASR,MAAM,WACN,MAAM,cACN,MAAM,EAAE;;;;;;;GAsDpB"}
1
+ {"version":3,"file":"vat-provisioning.d.ts","sourceRoot":"","sources":["vat-provisioning.js"],"names":[],"mappings":"AA+EA;;;;GAIG;AACH,4CAJW,OAAO,kBACP,OAAO;kBAqBL,KAAK,aAAa,CAAC,KACnB,YAAY,KACZ,QAAQ;gCASR,MAAM,WACN,MAAM,cACN,MAAM,EAAE;;;;;;;;kBAbR,KAAK,aAAa,CAAC,KACnB,YAAY,KACZ,QAAQ;gCASR,MAAM,WACN,MAAM,cACN,MAAM,EAAE;;;;;;;GAsDpB"}
@@ -20,11 +20,7 @@ import {
20
20
  const prepareSpecializedNameAdmin = zone => {
21
21
  const mixinMyAddress = prepareMixinMyAddress(zone);
22
22
 
23
- /**
24
- * @type {import('@agoric/internal/src/callback.js').MakeAttenuator<
25
- * import('./types.js').NamesByAddressAdmin
26
- * >}
27
- */
23
+ /** @type {import('@agoric/internal/src/callback.js').MakeAttenuator<import('./types.js').NamesByAddressAdmin>} */
28
24
  const specialize = prepareGuardedAttenuator(zone, NameHubIKit.nameAdmin, {
29
25
  tag: 'NamesByAddressAdmin',
30
26
  });
@@ -38,10 +34,7 @@ const prepareSpecializedNameAdmin = zone => {
38
34
  /**
39
35
  * @param {string} address
40
36
  * @param {string[]} [reserved]
41
- * @returns {Promise<{
42
- * nameHub: import('./types.js').NameHub;
43
- * nameAdmin: import('./types.js').MyAddressNameAdmin;
44
- * }>}
37
+ * @returns {Promise<{ nameHub: NameHub, nameAdmin: import('./types.js').MyAddressNameAdmin}>}
45
38
  */
46
39
  async provideChild(address, reserved) {
47
40
  const { nameAdmin } = this.state;
@@ -57,7 +50,8 @@ const prepareSpecializedNameAdmin = zone => {
57
50
  // XXX relies on callers not to provide other admins via update()
58
51
  // TODO: enforce?
59
52
 
60
- /** @type {import('./types').MyAddressNameAdmin} */
53
+ // XXX ts-ignore because @agoric/web-components lint:tyeps fails
54
+ /** @type { import('./types').MyAddressNameAdmin } */
61
55
  // eslint-disable-next-line @typescript-eslint/prefer-ts-expect-error
62
56
  // @ts-ignore cast
63
57
  const myAdmin = nameAdmin.lookupAdmin(address);
@@ -66,7 +60,9 @@ const prepareSpecializedNameAdmin = zone => {
66
60
  },
67
61
  );
68
62
 
69
- /** @param {import('./types.js').NameAdmin} nameAdmin */
63
+ /**
64
+ * @param {import('./types.js').NameAdmin} nameAdmin
65
+ */
70
66
  const makeMyAddressNameAdmin = nameAdmin => {
71
67
  const overrideFacet = makeOverrideFacet(nameAdmin);
72
68
  return specialize({
@@ -0,0 +1,54 @@
1
+ export function buildRootObject(): {
2
+ getSharingService: () => {
3
+ grabSharedMap(key: any): any;
4
+ createSharedMap(preferredName: any): {
5
+ lookup(propertyName: any): any;
6
+ addEntry(key: any, value: any): number;
7
+ getName(): any;
8
+ } & import("@endo/eventual-send").RemotableBrand<{}, {
9
+ lookup(propertyName: any): any;
10
+ addEntry(key: any, value: any): number;
11
+ getName(): any;
12
+ }>;
13
+ validate(allegedSharedMap: any): any;
14
+ } & import("@endo/eventual-send").RemotableBrand<{}, {
15
+ grabSharedMap(key: any): any;
16
+ createSharedMap(preferredName: any): {
17
+ lookup(propertyName: any): any;
18
+ addEntry(key: any, value: any): number;
19
+ getName(): any;
20
+ } & import("@endo/eventual-send").RemotableBrand<{}, {
21
+ lookup(propertyName: any): any;
22
+ addEntry(key: any, value: any): number;
23
+ getName(): any;
24
+ }>;
25
+ validate(allegedSharedMap: any): any;
26
+ }>;
27
+ } & import("@endo/eventual-send").RemotableBrand<{}, {
28
+ getSharingService: () => {
29
+ grabSharedMap(key: any): any;
30
+ createSharedMap(preferredName: any): {
31
+ lookup(propertyName: any): any;
32
+ addEntry(key: any, value: any): number;
33
+ getName(): any;
34
+ } & import("@endo/eventual-send").RemotableBrand<{}, {
35
+ lookup(propertyName: any): any;
36
+ addEntry(key: any, value: any): number;
37
+ getName(): any;
38
+ }>;
39
+ validate(allegedSharedMap: any): any;
40
+ } & import("@endo/eventual-send").RemotableBrand<{}, {
41
+ grabSharedMap(key: any): any;
42
+ createSharedMap(preferredName: any): {
43
+ lookup(propertyName: any): any;
44
+ addEntry(key: any, value: any): number;
45
+ getName(): any;
46
+ } & import("@endo/eventual-send").RemotableBrand<{}, {
47
+ lookup(propertyName: any): any;
48
+ addEntry(key: any, value: any): number;
49
+ getName(): any;
50
+ }>;
51
+ validate(allegedSharedMap: any): any;
52
+ }>;
53
+ }>;
54
+ //# sourceMappingURL=vat-sharing.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"vat-sharing.d.ts","sourceRoot":"","sources":["vat-sharing.js"],"names":[],"mappings":"AAKA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAQC"}
@@ -0,0 +1,14 @@
1
+ import { Far } from '@endo/far';
2
+ import { makeSharingService } from '@agoric/sharing-service';
3
+
4
+ // This vat contains the sharing service for the demo.
5
+
6
+ export function buildRootObject() {
7
+ const sharingService = makeSharingService();
8
+
9
+ function getSharingService() {
10
+ return sharingService;
11
+ }
12
+
13
+ return Far('root', { getSharingService });
14
+ }
package/src/vat-zoe.d.ts CHANGED
@@ -3,12 +3,10 @@ export function buildRootObject(vatPowers: any, _vatParams: any, zoeBaggage: any
3
3
  zoeService: ZoeService;
4
4
  feeMintAccess: FeeMintAccess;
5
5
  }>;
6
- getZoeConfigFacet: () => any;
7
6
  } & import("@endo/eventual-send").RemotableBrand<{}, {
8
7
  buildZoe: (adminVat: any, feeIssuerConfig: any, zcfBundleName: any) => Promise<{
9
8
  zoeService: ZoeService;
10
9
  feeMintAccess: FeeMintAccess;
11
10
  }>;
12
- getZoeConfigFacet: () => any;
13
11
  }>;
14
12
  //# sourceMappingURL=vat-zoe.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"vat-zoe.d.ts","sourceRoot":"","sources":["vat-zoe.js"],"names":[],"mappings":"AAKA;;;;;;;;;;;;GAgDC"}
1
+ {"version":3,"file":"vat-zoe.d.ts","sourceRoot":"","sources":["vat-zoe.js"],"names":[],"mappings":"AAKA;;;;;;;;;;GA0CC"}
package/src/vat-zoe.js CHANGED
@@ -6,20 +6,15 @@ const BUILD_PARAMS_KEY = 'buildZoeParams';
6
6
  export function buildRootObject(vatPowers, _vatParams, zoeBaggage) {
7
7
  const shutdownZoeVat = vatPowers.exitVatWithFailure;
8
8
 
9
- let zoeConfigFacet;
10
-
11
9
  if (zoeBaggage.has(BUILD_PARAMS_KEY)) {
12
10
  const { feeIssuerConfig, zcfSpec } = zoeBaggage.get(BUILD_PARAMS_KEY);
13
- // The return value is `{ zoeService, zoeConfigFacet, feeMintAccess }`. This
14
- // call only needs zoeConfigFacet because the others have been returned.
15
- // zoeConfigFacet was added after the first release of Zoe on-chain.
16
- ({ zoeConfigFacet } = makeDurableZoeKit({
11
+ makeDurableZoeKit({
17
12
  // For now Zoe will rewire vatAdminSvc on its own
18
13
  shutdownZoeVat,
19
14
  feeIssuerConfig,
20
15
  zcfSpec,
21
16
  zoeBaggage,
22
- }));
17
+ });
23
18
  }
24
19
 
25
20
  return Far('root', {
@@ -49,6 +44,5 @@ export function buildRootObject(vatPowers, _vatParams, zoeBaggage) {
49
44
  feeMintAccess,
50
45
  });
51
46
  },
52
- getZoeConfigFacet: () => zoeConfigFacet,
53
47
  });
54
48
  }