@agoric/vats 0.15.2-dev-f8abc2e.0 → 0.15.2-dev-860d051.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 (38) hide show
  1. package/package.json +15 -15
  2. package/src/core/basic-behaviors.d.ts +156 -36
  3. package/src/core/basic-behaviors.d.ts.map +1 -1
  4. package/src/core/basic-behaviors.js +1 -2
  5. package/src/core/boot-chain.d.ts +16 -16
  6. package/src/core/boot-chain.d.ts.map +1 -1
  7. package/src/core/boot-sim.d.ts +1 -1
  8. package/src/core/boot-sim.d.ts.map +1 -1
  9. package/src/core/boot-solo.d.ts +1 -1
  10. package/src/core/boot-solo.d.ts.map +1 -1
  11. package/src/core/chain-behaviors.d.ts +18 -18
  12. package/src/core/promise-space.d.ts +1 -1
  13. package/src/core/promise-space.d.ts.map +1 -1
  14. package/src/core/utils.d.ts +37 -7
  15. package/src/core/utils.d.ts.map +1 -1
  16. package/src/core/utils.js +1 -2
  17. package/src/ibc.d.ts +1 -1
  18. package/src/ibc.d.ts.map +1 -1
  19. package/src/ibc.js +1 -1
  20. package/src/lib-board.d.ts +3 -5
  21. package/src/lib-board.d.ts.map +1 -1
  22. package/src/lib-board.js +1 -2
  23. package/src/mintHolder.d.ts +1 -1
  24. package/src/mintHolder.d.ts.map +1 -1
  25. package/src/mintHolder.js +1 -1
  26. package/src/nameHub.js +2 -2
  27. package/src/proposals/upgrade-zoe-proposal.d.ts +400 -1
  28. package/src/proposals/upgrade-zoe-proposal.d.ts.map +1 -1
  29. package/src/proposals/zcf-proposal.d.ts +400 -1
  30. package/src/proposals/zcf-proposal.d.ts.map +1 -1
  31. package/src/vat-bank.d.ts +3 -3
  32. package/src/vat-bank.d.ts.map +1 -1
  33. package/src/vat-bank.js +1 -2
  34. package/src/vat-priceAuthority.d.ts +1 -1
  35. package/src/vat-priceAuthority.d.ts.map +1 -1
  36. package/src/vat-provisioning.js +2 -2
  37. package/src/virtual-purse.d.ts +2 -2
  38. package/src/virtual-purse.d.ts.map +1 -1
@@ -1,4 +1,403 @@
1
- export function upgradeZcf({ consume: { vatAdminSvc, vatStore } }: BootstrapPowers & {
1
+ export function upgradeZcf({ consume: { vatAdminSvc, vatStore } }: WellKnownSpaces & PromiseSpaceOf<ChainBootstrapSpaceT & {
2
+ vatAdminSvc: VatAdminSvc;
3
+ }, {}, {
4
+ loadVat: VatLoader<unknown>;
5
+ loadCriticalVat: VatLoader<unknown>;
6
+ }> & {
7
+ zone: import("@agoric/base-zone").Zone;
8
+ devices: SoloDevices | ChainDevices;
9
+ vats: SwingsetVats;
10
+ vatPowers: {
11
+ [prop: string]: any;
12
+ D: DProxy<any>;
13
+ };
14
+ vatParameters: BootstrapVatParams;
15
+ runBehaviors: (manifest: unknown) => Promise<unknown>;
16
+ modules: {
17
+ behaviors: {
18
+ bridgeCoreEval: (allPowers: BootstrapPowers) => Promise<void>;
19
+ makeProvisioner: ({ consume: { clientCreator, loadCriticalVat }, vats: { comms, vattp }, produce: { provisioning }, }: WellKnownSpaces & PromiseSpaceOf<ChainBootstrapSpaceT & {
20
+ vatAdminSvc: VatAdminSvc;
21
+ }, {}, {
22
+ loadVat: VatLoader<unknown>;
23
+ loadCriticalVat: VatLoader<unknown>;
24
+ }> & any & {
25
+ consume: {
26
+ loadCriticalVat: ERef<VatLoader<ProvisioningVat>>;
27
+ };
28
+ }) => Promise<void>;
29
+ noProvisioner: ({ produce: { provisioning } }: BootstrapPowers) => Promise<void>;
30
+ bridgeProvisioner: ({ consume: { provisioning: provisioningP, provisionBridgeManager: provisionBridgeManagerP, provisionWalletBridgeManager: provisionWalletBridgeManagerP, }, }: BootstrapPowers) => Promise<void>;
31
+ setupClientManager: ({ produce: { client, clientCreator: clientCreatorP } }: BootstrapSpace, { template, }?: {
32
+ template?: Record<string, unknown> | undefined;
33
+ }) => Promise<void>;
34
+ startTimerService: ({ devices: { timer: timerDevice }, vats: { timer: timerVat }, consume: { client }, produce: { chainTimerService: produceTimer }, brand: { produce: { timer }, }, }: BootstrapPowers) => Promise<void>;
35
+ makeBridgeManager: ({ consume: { loadCriticalVat }, devices: { bridge }, produce: { bridgeManager: bridgeManagerP, provisionBridgeManager, provisionWalletBridgeManager, walletBridgeManager, }, }: BootDevices<ChainDevices> & WellKnownSpaces & PromiseSpaceOf<ChainBootstrapSpaceT & {
36
+ vatAdminSvc: VatAdminSvc;
37
+ }, {}, {
38
+ loadVat: VatLoader<unknown>;
39
+ loadCriticalVat: VatLoader<unknown>;
40
+ }> & {
41
+ consume: {
42
+ loadCriticalVat: ERef<VatLoader<ChainStorageVat>>;
43
+ };
44
+ }) => Promise<void>;
45
+ makeChainStorage: ({ consume: { loadCriticalVat, bridgeManager: bridgeManagerP }, produce: { chainStorage: chainStorageP, storageBridgeManager: storageBridgeManagerP, }, }: WellKnownSpaces & PromiseSpaceOf<ChainBootstrapSpaceT & {
46
+ vatAdminSvc: VatAdminSvc;
47
+ }, {}, {
48
+ loadVat: VatLoader<unknown>;
49
+ loadCriticalVat: VatLoader<unknown>;
50
+ }> & {
51
+ consume: {
52
+ loadCriticalVat: ERef<VatLoader<ChainStorageVat>>;
53
+ };
54
+ }) => Promise<void>;
55
+ produceHighPrioritySendersManager: ({ consume: { loadCriticalVat, storageBridgeManager: storageBridgeManagerP }, produce: { highPrioritySendersManager: managerP }, }: WellKnownSpaces & PromiseSpaceOf<ChainBootstrapSpaceT & {
56
+ vatAdminSvc: VatAdminSvc;
57
+ }, {}, {
58
+ loadVat: VatLoader<unknown>;
59
+ loadCriticalVat: VatLoader<unknown>;
60
+ }> & {
61
+ consume: {
62
+ loadCriticalVat: ERef<VatLoader<ChainStorageVat>>;
63
+ };
64
+ }) => Promise<void>;
65
+ publishAgoricNamesToChainStorage: ({ consume: { chainStorage: rootP }, namedVat: { consume: { agoricNames, board: vatBoard }, }, }: WellKnownSpaces & PromiseSpaceOf<ChainBootstrapSpaceT & {
66
+ vatAdminSvc: VatAdminSvc;
67
+ }, {}, {
68
+ loadVat: VatLoader<unknown>;
69
+ loadCriticalVat: VatLoader<unknown>;
70
+ }> & any & NamedVatPowers) => Promise<void>;
71
+ publishAgoricNames: ({ consume: { agoricNamesAdmin, board, chainStorage: rootP } }: BootstrapPowers, { options: { agoricNamesOptions } }?: {
72
+ options?: {
73
+ agoricNamesOptions?: {
74
+ topLevel?: string[] | undefined;
75
+ } | undefined;
76
+ } | undefined;
77
+ }) => Promise<void>;
78
+ connectChainFaucet: ({ consume: { client } }: BootstrapPowers) => Promise<void>;
79
+ makeVatsFromBundles: ({ vats, devices, consume: { vatStore }, produce: { vatAdminSvc, loadVat, loadCriticalVat }, }: WellKnownSpaces & PromiseSpaceOf<ChainBootstrapSpaceT & {
80
+ vatAdminSvc: VatAdminSvc;
81
+ }, {}, {
82
+ loadVat: VatLoader<unknown>;
83
+ loadCriticalVat: VatLoader<unknown>;
84
+ }> & any) => Promise<void>;
85
+ produceDiagnostics: ({ produce }: Pick<ChainBootstrapSpace, "produce">) => Promise<void>;
86
+ produceStartUpgradable: ({ zone, consume: { diagnostics, zoe }, produce, }: WellKnownSpaces & PromiseSpaceOf<ChainBootstrapSpaceT & {
87
+ vatAdminSvc: VatAdminSvc;
88
+ }, {}, {
89
+ loadVat: VatLoader<unknown>;
90
+ loadCriticalVat: VatLoader<unknown>;
91
+ }> & {
92
+ zone: import("@agoric/base-zone").Zone;
93
+ }) => Promise<void>;
94
+ produceStartGovernedUpgradable: ({ zone, consume: { chainTimerService, diagnostics, economicCommitteeCreatorFacet, zoe, }, produce, installation: { consume: { contractGovernor }, }, }: WellKnownSpaces & PromiseSpaceOf<ChainBootstrapSpaceT & {
95
+ vatAdminSvc: VatAdminSvc;
96
+ }, {}, {
97
+ loadVat: VatLoader<unknown>;
98
+ loadCriticalVat: VatLoader<unknown>;
99
+ }> & {
100
+ zone: import("@agoric/base-zone").Zone;
101
+ consume: {
102
+ economicCommitteeCreatorFacet: Promise<import("@agoric/governance/src/committee").CommitteeElectorateCreatorFacet>;
103
+ };
104
+ }) => Promise<void>;
105
+ buildZoe: ({ consume: { vatAdminSvc, loadCriticalVat, client }, produce: { zoe, feeMintAccess }, brand: { produce: { Invitation: invitationBrand }, }, issuer: { produce: { Invitation: invitationIssuer }, }, }: WellKnownSpaces & PromiseSpaceOf<ChainBootstrapSpaceT & {
106
+ vatAdminSvc: VatAdminSvc;
107
+ }, {}, {
108
+ loadVat: VatLoader<unknown>;
109
+ loadCriticalVat: VatLoader<unknown>;
110
+ }> & any & {
111
+ consume: {
112
+ loadCriticalVat: ERef<VatLoader<import("../core/basic-behaviors").ZoeVat>>;
113
+ };
114
+ }) => Promise<void>;
115
+ startPriceAuthorityRegistry: ({ consume: { loadCriticalVat, client }, produce, }: WellKnownSpaces & PromiseSpaceOf<ChainBootstrapSpaceT & {
116
+ vatAdminSvc: VatAdminSvc;
117
+ }, {}, {
118
+ loadVat: VatLoader<unknown>;
119
+ loadCriticalVat: VatLoader<unknown>;
120
+ }> & any & {
121
+ consume: {
122
+ loadCriticalVat: ERef<VatLoader<import("../core/basic-behaviors").PriceAuthorityVat>>;
123
+ };
124
+ }) => Promise<void>;
125
+ makeOracleBrands: ({ namedVat: { consume: { agoricNames }, }, oracleBrand: { produce: { USD }, }, }: WellKnownSpaces & PromiseSpaceOf<ChainBootstrapSpaceT & {
126
+ vatAdminSvc: VatAdminSvc;
127
+ }, {}, {
128
+ loadVat: VatLoader<unknown>;
129
+ loadCriticalVat: VatLoader<unknown>;
130
+ }> & any & NamedVatPowers) => Promise<void>;
131
+ produceBoard: ({ consume: { client }, produce: { board: pBoard }, namedVat: { consume: { board: vatBoard }, }, }: WellKnownSpaces & PromiseSpaceOf<ChainBootstrapSpaceT & {
132
+ vatAdminSvc: VatAdminSvc;
133
+ }, {}, {
134
+ loadVat: VatLoader<unknown>;
135
+ loadCriticalVat: VatLoader<unknown>;
136
+ }> & any & NamedVatPowers) => Promise<void>;
137
+ makeBoard: ({ consume: { loadCriticalVat, client }, produce: { board: { resolve: resolveBoard }, }, }: WellKnownSpaces & PromiseSpaceOf<ChainBootstrapSpaceT & {
138
+ vatAdminSvc: VatAdminSvc;
139
+ }, {}, {
140
+ loadVat: VatLoader<unknown>;
141
+ loadCriticalVat: VatLoader<unknown>;
142
+ }> & any & {
143
+ consume: {
144
+ loadCriticalVat: ERef<VatLoader<BoardVat>>;
145
+ };
146
+ }) => Promise<void>;
147
+ produceNamesByAddress: ({ consume: { agoricNames, provisioning: provisioningOptP, client }, produce: { namesByAddress, namesByAddressAdmin }, }: BootstrapPowers) => Promise<void>;
148
+ makeAddressNameHubs: ({ consume: { agoricNames: agoricNamesP, client }, produce, }: BootstrapSpace) => Promise<void>;
149
+ makeClientBanks: ({ consume: { namesByAddressAdmin, client, bankManager, walletFactoryStartResult, }, }: BootstrapSpace) => Promise<void>;
150
+ installBootContracts: ({ consume: { vatAdminSvc, zoe }, installation: { produce: { centralSupply, mintHolder }, }, }: BootstrapSpace) => Promise<void>;
151
+ mintInitialSupply: ({ vatParameters: { argv: { bootMsg }, }, consume: { feeMintAccess: feeMintAccessP, zoe }, produce: { initialSupply }, installation: { consume: { centralSupply }, }, }: WellKnownSpaces & PromiseSpaceOf<ChainBootstrapSpaceT & {
152
+ vatAdminSvc: VatAdminSvc;
153
+ }, {}, {
154
+ loadVat: VatLoader<unknown>;
155
+ loadCriticalVat: VatLoader<unknown>;
156
+ }> & any & {
157
+ vatParameters: {
158
+ argv: {
159
+ bootMsg?: {
160
+ type: string;
161
+ chainID: string;
162
+ storagePort: number;
163
+ supplyCoins: {
164
+ denom: string;
165
+ amount: string;
166
+ }[];
167
+ swingsetPort: number;
168
+ vbankPort: number;
169
+ vibcPort: number;
170
+ } | undefined;
171
+ };
172
+ };
173
+ }) => Promise<void>;
174
+ addBankAssets: ({ consume: { agoricNamesAdmin, initialSupply, bridgeManager: bridgeManagerP, loadCriticalVat, startUpgradable, zoe, }, produce: { bankManager, bldIssuerKit }, installation: { consume: { mintHolder }, }, issuer: { produce: produceIssuer }, brand: { produce: produceBrand }, }: WellKnownSpaces & PromiseSpaceOf<ChainBootstrapSpaceT & {
175
+ vatAdminSvc: VatAdminSvc;
176
+ }, {}, {
177
+ loadVat: VatLoader<unknown>;
178
+ loadCriticalVat: VatLoader<unknown>;
179
+ }> & {
180
+ consume: {
181
+ loadCriticalVat: ERef<VatLoader<BankVat>>;
182
+ };
183
+ }) => Promise<void>;
184
+ };
185
+ utils: {
186
+ agoricNamesReserved: {
187
+ issuer: {
188
+ IST: string;
189
+ BLD: string;
190
+ Invitation: string;
191
+ AUSD: string;
192
+ };
193
+ installation: {
194
+ reserve: string;
195
+ centralSupply: string;
196
+ mintHolder: string;
197
+ walletFactory: string;
198
+ provisionPool: string;
199
+ auctioneer: string;
200
+ feeDistributor: string;
201
+ contractGovernor: string;
202
+ committee: string;
203
+ noActionElectorate: string;
204
+ binaryVoteCounter: string;
205
+ VaultFactory: string;
206
+ liquidate: string;
207
+ Pegasus: string;
208
+ psm: string;
209
+ scaledPriceAuthority: string;
210
+ stakeBld: string;
211
+ econCommitteeCharter: string;
212
+ priceAggregator: string;
213
+ };
214
+ instance: {
215
+ reserve: string;
216
+ walletFactory: string;
217
+ provisionPool: string;
218
+ auctioneer: string;
219
+ feeDistributor: string;
220
+ VaultFactory: string;
221
+ Pegasus: string;
222
+ stakeBld: string;
223
+ econCommitteeCharter: string;
224
+ economicCommittee: string;
225
+ VaultFactoryGovernor: string;
226
+ reserveGovernor: string;
227
+ };
228
+ oracleBrand: {
229
+ USD: string;
230
+ };
231
+ uiConfig: {
232
+ VaultFactory: string;
233
+ };
234
+ };
235
+ feeIssuerConfig: FeeIssuerConfig;
236
+ addRemote: (addr: string, { vats: { comms, vattp } }: {
237
+ vats: {
238
+ vattp: VattpVat;
239
+ comms: CommsVatRoot;
240
+ };
241
+ }) => Promise<void>;
242
+ callProperties: (builders: ((...args: any[]) => Record<string, unknown>)[], ...args: unknown[]) => Record<string, unknown>;
243
+ extract: (template: string | true | Record<string, any>, specimen: unknown, path?: string[] | undefined) => any;
244
+ extractPowers: (permit: string | true | Record<string, any>, allPowers: unknown) => any;
245
+ runModuleBehaviors: ({ allPowers, behaviors, manifest, makeConfig, }: {
246
+ allPowers: unknown;
247
+ behaviors: Record<string, unknown>;
248
+ manifest: Record<string, Record<string, unknown>>;
249
+ makeConfig: (name: string, permit: Record<string, unknown>) => unknown;
250
+ }) => Promise<any[]>;
251
+ makePromiseSpaceForNameHub: (nameAdmin: ERef<import("../types").NameAdmin>, log?: {
252
+ (...data: any[]): void;
253
+ (message?: any, ...optionalParams: any[]): void;
254
+ } | undefined) => PromiseSpaceOf<any, {}, {}>;
255
+ makeWellKnownSpaces: (parentAdmin: ERef<import("../types").NameAdmin>, log?: {
256
+ (...data: any[]): void;
257
+ (message?: any, ...optionalParams: any[]): void;
258
+ } | undefined, kinds?: string[] | undefined) => Promise<WellKnownSpaces>;
259
+ makeAgoricNamesAccess: (log?: {
260
+ (...data: any[]): void;
261
+ (message?: any, ...optionalParams: any[]): void;
262
+ } | undefined, reserved?: Record<string, Record<string, unknown>>) => Promise<{
263
+ agoricNames: import("../types").NameHub;
264
+ agoricNamesAdmin: import("../types").NameAdmin;
265
+ spaces: WellKnownSpaces;
266
+ }>;
267
+ makeMyAddressNameAdminKit: (address: string) => {
268
+ nameHub: import("../types").NameHub;
269
+ myAddressNameAdmin: import("../types").MyAddressNameAdmin;
270
+ };
271
+ makeVatSpace: (svc: ERef<import("@endo/exo/src/exo-makers").Guarded<{
272
+ waitForBundleCap(bundleID: any): any;
273
+ getBundleCap(bundleID: any): any;
274
+ getNamedBundleCap(name: any): any;
275
+ getBundleIDByName(name: any): any;
276
+ createMeter(remaining: any, threshold: any): import("@agoric/swingset-liveslots").KindFacet<{
277
+ addRemaining({ state }: {
278
+ state: any;
279
+ }, delta: any): void;
280
+ setThreshold({ state }: {
281
+ state: any;
282
+ }, newThreshold: any): void;
283
+ get: ({ state }: {
284
+ state: any;
285
+ }) => any;
286
+ getNotifier: ({ _self }: {
287
+ _self: any;
288
+ }) => never;
289
+ }>;
290
+ createUnlimitedMeter(_context: any): import("@agoric/swingset-liveslots").KindFacet<{
291
+ addRemaining(_context: any, _delta: any): void;
292
+ setThreshold(_context: any, _newThreshold: any): void;
293
+ get: () => {
294
+ remaining: string;
295
+ threshold: number;
296
+ };
297
+ getNotifier: ({ _self }: {
298
+ _self: any;
299
+ }) => never;
300
+ }>;
301
+ createVat(bundleOrBundleCap: any, options?: {}): Promise<{
302
+ adminNode: import("@agoric/swingset-liveslots").KindFacet<{
303
+ terminateWithFailure({ state }: {
304
+ state: any;
305
+ }, reason: any): void;
306
+ done({ state }: {
307
+ state: any;
308
+ }): any;
309
+ upgrade({ state }: {
310
+ state: any;
311
+ }, bundlecap: any, options: any): Promise<any>;
312
+ changeOptions({ state }: {
313
+ state: any;
314
+ }, options: any): void;
315
+ }>;
316
+ root: any;
317
+ }>;
318
+ createVatByName(bundleName: any, options?: {}): Promise<{
319
+ adminNode: import("@agoric/swingset-liveslots").KindFacet<{
320
+ terminateWithFailure({ state }: {
321
+ state: any;
322
+ }, reason: any): void;
323
+ done({ state }: {
324
+ state: any;
325
+ }): any;
326
+ upgrade({ state }: {
327
+ state: any;
328
+ }, bundlecap: any, options: any): Promise<any>;
329
+ changeOptions({ state }: {
330
+ state: any;
331
+ }, options: any): void;
332
+ }>;
333
+ root: any;
334
+ }>;
335
+ }>>, criticalVatKey: unknown, log?: ((...args: any) => void) | undefined, label?: string | undefined) => {
336
+ space: {
337
+ consume: {
338
+ agoricNames: Promise<{
339
+ getNameHub: () => import("../types").NameHub;
340
+ getNameHubKit: () => import("../types").NameHubKit;
341
+ publishNameHubs: (nameStorage: ERef<StorageNode>, vatBoard: ERef<BoardVat>, kinds: string[]) => Promise<void>;
342
+ provideInertBrand: (keyword: string, displayInfo: DisplayInfo<AssetKind>) => any;
343
+ } & import("@endo/eventual-send").RemotableBrand<{}, {
344
+ getNameHub: () => import("../types").NameHub;
345
+ getNameHubKit: () => import("../types").NameHubKit;
346
+ publishNameHubs: (nameStorage: ERef<StorageNode>, vatBoard: ERef<BoardVat>, kinds: string[]) => Promise<void>;
347
+ provideInertBrand: (keyword: string, displayInfo: DisplayInfo<AssetKind>) => any;
348
+ }>>;
349
+ board: Promise<{
350
+ getBoard: () => import("@endo/exo/src/exo-makers").Guarded<{
351
+ getId(value: any): string;
352
+ getValue(id: string): any;
353
+ lookup(...path: string[]): Promise<any>;
354
+ has(val: any): boolean;
355
+ ids(): string[];
356
+ getPublishingMarshaller(): import("@endo/exo/src/exo-makers").Guarded<{
357
+ toCapData(val: any): import("@endo/marshal").CapData<string>;
358
+ fromCapData(data: any): any;
359
+ serialize(data: any): import("@endo/marshal").CapData<string>;
360
+ unserialize(data: any): any;
361
+ }>;
362
+ getReadonlyMarshaller(): import("@endo/exo/src/exo-makers").Guarded<{
363
+ toCapData(val: any): import("@endo/marshal").CapData<string | null>;
364
+ fromCapData(data: any): any;
365
+ serialize(data: any): import("@endo/marshal").CapData<string | null>;
366
+ unserialize(data: any): any;
367
+ }>;
368
+ }>;
369
+ makePublishingRecorderKit: <T>(storageNode: StorageNode | (import("@endo/eventual-send").DataOnly<StorageNode> & import("@endo/eventual-send").RemotableBrand<import("@endo/eventual-send").DataOnly<StorageNode>, StorageNode>), valueShape?: import("@agoric/zoe/src/contractSupport").TypedMatcher<T> | undefined) => import("@agoric/zoe/src/contractSupport").RecorderKit<T>;
370
+ makeReadOnlyRecorderKit: <T>(storageNode: StorageNode | (import("@endo/eventual-send").DataOnly<StorageNode> & import("@endo/eventual-send").RemotableBrand<import("@endo/eventual-send").DataOnly<StorageNode>, StorageNode>), valueShape?: import("@agoric/zoe/src/contractSupport").TypedMatcher<T> | undefined) => import("@agoric/zoe/src/contractSupport").RecorderKit<T>;
371
+ } & import("@endo/eventual-send").RemotableBrand<{}, {
372
+ getBoard: () => import("@endo/exo/src/exo-makers").Guarded<{
373
+ getId(value: any): string;
374
+ getValue(id: string): any;
375
+ lookup(...path: string[]): Promise<any>;
376
+ has(val: any): boolean;
377
+ ids(): string[];
378
+ getPublishingMarshaller(): import("@endo/exo/src/exo-makers").Guarded<{
379
+ toCapData(val: any): import("@endo/marshal").CapData<string>;
380
+ fromCapData(data: any): any;
381
+ serialize(data: any): import("@endo/marshal").CapData<string>;
382
+ unserialize(data: any): any;
383
+ }>;
384
+ getReadonlyMarshaller(): import("@endo/exo/src/exo-makers").Guarded<{
385
+ toCapData(val: any): import("@endo/marshal").CapData<string | null>;
386
+ fromCapData(data: any): any;
387
+ serialize(data: any): import("@endo/marshal").CapData<string | null>;
388
+ unserialize(data: any): any;
389
+ }>;
390
+ }>;
391
+ makePublishingRecorderKit: <T>(storageNode: StorageNode | (import("@endo/eventual-send").DataOnly<StorageNode> & import("@endo/eventual-send").RemotableBrand<import("@endo/eventual-send").DataOnly<StorageNode>, StorageNode>), valueShape?: import("@agoric/zoe/src/contractSupport").TypedMatcher<T> | undefined) => import("@agoric/zoe/src/contractSupport").RecorderKit<T>;
392
+ makeReadOnlyRecorderKit: <T>(storageNode: StorageNode | (import("@endo/eventual-send").DataOnly<StorageNode> & import("@endo/eventual-send").RemotableBrand<import("@endo/eventual-send").DataOnly<StorageNode>, StorageNode>), valueShape?: import("@agoric/zoe/src/contractSupport").TypedMatcher<T> | undefined) => import("@agoric/zoe/src/contractSupport").RecorderKit<T>;
393
+ }>>;
394
+ };
395
+ };
396
+ durableStore: MapStore<K, V>;
397
+ };
398
+ };
399
+ };
400
+ } & {
2
401
  consume: {
3
402
  vatAdminSvc: VatAdminSvc;
4
403
  vatStore: MapStore<string, import('@agoric/swingset-vat').CreateVatResults>;
@@ -1 +1 @@
1
- {"version":3,"file":"zcf-proposal.d.ts","sourceRoot":"","sources":["zcf-proposal.js"],"names":[],"mappings":"AAgBO,mEAZI,eAAe,GAAG;IAC5B,OAAW,EAAE;QACb,WAAiB,EAAE,WAAW,CAAC;QAC/B,QAAc,EAAE,SAChB,MAAc,EACd,OAAe,sBAAsB,EAAE,gBAAgB,CAChD,CAAC;KACH,CAAC;CACH;IAE+D,OAAO,EAA/D;QAAE,MAAM,EAAE,YAAY,CAAC;QAAC,MAAM,EAAE,YAAY,CAAA;KAAE;kBAmBxD;AAEM;;;;;;;;;;;;;;;;;EAcL"}
1
+ {"version":3,"file":"zcf-proposal.d.ts","sourceRoot":"","sources":["zcf-proposal.js"],"names":[],"mappings":"AAgBO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;kBATU,SAChB,MAAc,EACd,OAAe,sBAAsB,EAAE,gBAAgB,CAChD;;;IAI2D,OAAO,EAA/D;QAAE,MAAM,EAAE,YAAY,CAAC;QAAC,MAAM,EAAE,YAAY,CAAA;KAAE;kBAmBxD;AAEM;;;;;;;;;;;;;;;;;EAcL"}
package/src/vat-bank.d.ts CHANGED
@@ -155,7 +155,6 @@ export const BankI: import("@endo/patterns").InterfaceGuard<{
155
155
  getAssetSubscription: import("@endo/patterns").MethodGuard;
156
156
  getPurse: import("@endo/patterns").MethodGuard;
157
157
  }>;
158
- export type VirtualPurseController = import('./virtual-purse.js').VirtualPurseController;
159
158
  export type VirtualPurse = Awaited<ReturnType<ReturnType<typeof prepareVirtualPurse>>>;
160
159
  export type BalanceUpdater = {
161
160
  update: (value: string, nonce?: string) => void;
@@ -226,7 +225,7 @@ declare function prepareBankManager(zone: import('@agoric/zone').Zone, { provide
226
225
  getUpdateSince(updateCount: any): any;
227
226
  };
228
227
  }>>;
229
- makeVirtualPurse: ReturnType<(zone: import("@agoric/zone").Zone) => (vpc: ERef<import("./virtual-purse.js").VirtualPurseController>, { escrowPurse: defaultEscrowPurse, ...issuerKit }: {
228
+ makeVirtualPurse: ReturnType<(zone: import("@agoric/zone").Zone) => (vpc: ERef<VirtualPurseController>, { escrowPurse: defaultEscrowPurse, ...issuerKit }: {
230
229
  issuer: ERef<Issuer<AssetKind>>;
231
230
  brand: Brand<AssetKind>;
232
231
  mint?: ERef<Mint<AssetKind>> | undefined;
@@ -486,7 +485,7 @@ declare function prepareBankManager(zone: import('@agoric/zone').Zone, { provide
486
485
  pullAmount(_amount: any): Promise<never>;
487
486
  pushAmount(amount: any): Promise<void>;
488
487
  }>>;
489
- makeVirtualPurse: ReturnType<(zone: import("@agoric/zone").Zone) => (vpc: ERef<import("./virtual-purse.js").VirtualPurseController>, { escrowPurse: defaultEscrowPurse, ...issuerKit }: {
488
+ makeVirtualPurse: ReturnType<(zone: import("@agoric/zone").Zone) => (vpc: ERef<VirtualPurseController>, { escrowPurse: defaultEscrowPurse, ...issuerKit }: {
490
489
  issuer: ERef<Issuer<AssetKind>>;
491
490
  brand: Brand<AssetKind>;
492
491
  mint?: ERef<Mint<AssetKind>> | undefined;
@@ -661,5 +660,6 @@ declare function prepareBankManager(zone: import('@agoric/zone').Zone, { provide
661
660
  */
662
661
  getBankForAddress(address: string): Promise<Bank>;
663
662
  }>;
663
+ import type { VirtualPurseController } from './virtual-purse.js';
664
664
  export {};
665
665
  //# sourceMappingURL=vat-bank.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"vat-bank.d.ts","sourceRoot":"","sources":["vat-bank.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vat-bank.d.ts","sourceRoot":"","sources":["vat-bank.js"],"names":[],"mappings":"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"}
package/src/vat-bank.js CHANGED
@@ -33,9 +33,8 @@ const BridgeChannelI = M.interface('BridgeChannel', {
33
33
  });
34
34
 
35
35
  /**
36
- * @typedef {import('./virtual-purse.js').VirtualPurseController} VirtualPurseController
37
- *
38
36
  * @typedef {Awaited<ReturnType<ReturnType<typeof prepareVirtualPurse>>>} VirtualPurse
37
+ * @import {VirtualPurseController} from './virtual-purse.js'
39
38
  */
40
39
 
41
40
  /**
@@ -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: import('@agoric/vat-data').Baggage): {
9
+ export function buildRootObject(_vatPowers: * TerminationVatPowers, _vatParams: unknown, baggage: import('@agoric/vat-data').Baggage): {
10
10
  getRegistry: () => import("./priceAuthorityRegistry.js").PriceAuthorityRegistry;
11
11
  } & import("@endo/eventual-send").RemotableBrand<{}, {
12
12
  getRegistry: () => import("./priceAuthorityRegistry.js").PriceAuthorityRegistry;
@@ -1 +1 @@
1
- {"version":3,"file":"vat-priceAuthority.d.ts","sourceRoot":"","sources":["vat-priceAuthority.js"],"names":[],"mappings":"AAGA;;;;;;;GAOG;AACH,4CAJW,SAAS,cACT,OAAO,WACP,OAAO,kBAAkB,EAAE,OAAO;;;;GAK5C"}
1
+ {"version":3,"file":"vat-priceAuthority.d.ts","sourceRoot":"","sources":["vat-priceAuthority.js"],"names":[],"mappings":"AAGA;;;;;;;GAOG;AACH,gFAHW,OAAO,WACP,OAAO,kBAAkB,EAAE,OAAO;;;;GAK5C"}
@@ -57,8 +57,8 @@ const prepareSpecializedNameAdmin = zone => {
57
57
  // TODO: enforce?
58
58
 
59
59
  /** @type {import('./types.js').MyAddressNameAdmin} */
60
- // eslint-disable-next-line @typescript-eslint/prefer-ts-expect-error
61
- // @ts-ignore cast
60
+
61
+ // @ts-expect-error cast
62
62
  const myAdmin = nameAdmin.lookupAdmin(address);
63
63
  return myAdmin;
64
64
  },
@@ -1,4 +1,4 @@
1
- export function makeVirtualPurseKitIKit(brandShape?: Pattern, amountShape?: Pattern): {
1
+ export function makeVirtualPurseKitIKit(brandShape?: any, amountShape?: any): {
2
2
  VirtualPurseIKit: {
3
3
  depositFacet: import("@endo/patterns").InterfaceGuard<{
4
4
  receive: import("@endo/patterns").MethodGuard;
@@ -40,7 +40,7 @@ export function prepareVirtualPurse(zone: import('@agoric/zone').Zone): (vpc: ER
40
40
  escrowPurse?: ERef<Purse<AssetKind>> | undefined;
41
41
  }) => Promise<Awaited<EOnly<Purse>>>;
42
42
  export type EOnly<T> = import('@endo/far').EOnly<T>;
43
- export type Retain = (pmt: Payment, optAmountShape?: Pattern) => Promise<Amount>;
43
+ export type Retain = (pmt: Payment, optAmountShape?: any) => Promise<Amount>;
44
44
  export type Redeem = (amt: Amount) => Promise<Payment>;
45
45
  /**
46
46
  * The object that determines the
@@ -1 +1 @@
1
- {"version":3,"file":"virtual-purse.d.ts","sourceRoot":"","sources":["virtual-purse.js"],"names":[],"mappings":"AAsBO,qDAHI,OAAO,gBACP,OAAO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA6DjB;AA2LM,0CADK,OAAO,cAAc,EAAE,IAAI;;WASzB,KAAK;;;MAWJ,QAAQ,QAAQ,MAAM,KAAK,CAAC,CAAC,CAAC,CAyB5C;uBAnOY,OAAO,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC;qBAG3B,CAAC,GAAG,EAAE,OAAO,EAAE,cAAc,CAAC,EAAE,OAAO,KAAK,QAAQ,MAAM,CAAC;qBAC3D,CAAC,GAAG,EAAE,MAAM,KAAK,QAAQ,OAAO,CAAC;;;;;;;;;;;;gBAKjC,CAAC,MAAM,EAAE,MAAM,KAAK,QAAQ,IAAI,CAAC;;;;;;;gBAIjC,CAAC,MAAM,EAAE,MAAM,KAAK,QAAQ,IAAI,CAAC;;;;;iBAIjC,CAAC,KAAK,EAAE,KAAK,KAAK,YAAY,MAAM,CAAC"}
1
+ {"version":3,"file":"virtual-purse.d.ts","sourceRoot":"","sources":["virtual-purse.js"],"names":[],"mappings":"AAsBO;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA2DN;AA2LM,0CADK,OAAO,cAAc,EAAE,IAAI;;WASzB,KAAK;;;MAWJ,QAAQ,QAAQ,MAAM,KAAK,CAAC,CAAC,CAAC,CAyB5C;uBAnOY,OAAO,WAAW,EAAE,KAAK,CAAC,CAAC,CAAC;2BAGrB,OAAO,2BAA+B,QAAQ,MAAM,CAAC;qBAC3D,CAAC,GAAG,EAAE,MAAM,KAAK,QAAQ,OAAO,CAAC;;;;;;;;;;;;gBAKjC,CAAC,MAAM,EAAE,MAAM,KAAK,QAAQ,IAAI,CAAC;;;;;;;gBAIjC,CAAC,MAAM,EAAE,MAAM,KAAK,QAAQ,IAAI,CAAC;;;;;iBAIjC,CAAC,KAAK,EAAE,KAAK,KAAK,YAAY,MAAM,CAAC"}