@agoric/smart-wallet 0.5.4-other-dev-3eb1a1d.0 → 0.5.4-other-dev-d15096d.0.d15096d

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.
@@ -1,17 +1,16 @@
1
1
  export const BRAND_TO_PURSES_KEY: "brandToPurses";
2
- export function prepareSmartWallet(baggage: import("@agoric/vat-data").Baggage, shared: SharedParams): (uniqueWithoutChildNodes: Omit<UniqueParams, "currentStorageNode" | "walletStorageNode"> & {
3
- walletStorageNode: ERef<StorageNode>;
2
+ export function prepareSmartWallet(baggage: Baggage, shared: SharedParams): (uniqueWithoutChildNodes: Omit<UniqueParams, "currentStorageNode" | "walletStorageNode"> & {
3
+ walletStorageNode: ERemote<StorageNode>;
4
4
  }) => Promise<import("@endo/exo").Guarded<{
5
5
  /**
6
6
  * Umarshals the actionCapData and delegates to the appropriate action
7
7
  * handler.
8
8
  *
9
- * @param {import('@endo/marshal').CapData<string | null>} actionCapData
10
- * of type BridgeAction
9
+ * @param {CapData<string | null>} actionCapData of type BridgeAction
11
10
  * @param {boolean} [canSpend]
12
11
  * @returns {Promise<void>}
13
12
  */
14
- handleBridgeAction(actionCapData: import("@endo/marshal").CapData<string | null>, canSpend?: boolean | undefined): Promise<void>;
13
+ handleBridgeAction(actionCapData: CapData<string | null>, canSpend?: boolean): Promise<void>;
15
14
  getDepositFacet(): import("@endo/exo").Guarded<{
16
15
  /**
17
16
  * Put the assets from the payment into the appropriate purse.
@@ -25,6 +24,12 @@ export function prepareSmartWallet(baggage: import("@agoric/vat-data").Baggage,
25
24
  */
26
25
  receive(payment: Payment): Promise<Amount>;
27
26
  }>;
27
+ getInvokeFacet(): import("@endo/exo").Guarded<{
28
+ /**
29
+ * @param {InvokeEntryMessage} message
30
+ */
31
+ invokeEntry(message: InvokeEntryMessage): Promise<void>;
32
+ }>;
28
33
  getOffersFacet(): import("@endo/exo").Guarded<{
29
34
  /**
30
35
  * Take an offer description provided in capData, augment it with
@@ -63,19 +68,12 @@ export function prepareSmartWallet(baggage: import("@agoric/vat-data").Baggage,
63
68
  };
64
69
  };
65
70
  }>>;
66
- export type OfferId = number | string;
67
- export type OfferSpec = {
68
- id: OfferId;
69
- invitationSpec: import("./invitations").InvitationSpec;
70
- proposal: Proposal;
71
- offerArgs?: any;
72
- };
73
71
  export type ExecutorPowers = {
74
72
  logger: {
75
73
  info: (...args: any[]) => void;
76
74
  error: (...args: any[]) => void;
77
75
  };
78
- makeOfferWatcher: import("./offerWatcher.js").MakeOfferWatcher;
76
+ makeOfferWatcher: MakeOfferWatcher;
79
77
  invitationFromSpec: ERef<Invitation>;
80
78
  };
81
79
  export type ExecuteOfferAction = {
@@ -86,7 +84,17 @@ export type TryExitOfferAction = {
86
84
  method: "tryExitOffer";
87
85
  offerId: OfferId;
88
86
  };
89
- export type BridgeAction = ExecuteOfferAction | TryExitOfferAction;
87
+ export type InvokeStoreEntryAction = {
88
+ /**
89
+ * BridgeAction discriminator
90
+ */
91
+ method: "invokeEntry";
92
+ /**
93
+ * object method call to make
94
+ */
95
+ message: InvokeEntryMessage;
96
+ };
97
+ export type BridgeAction = ExecuteOfferAction | TryExitOfferAction | InvokeStoreEntryAction;
90
98
  /**
91
99
  * Purses is an array to support a future requirement of multiple purses per
92
100
  * brand.
@@ -145,6 +153,14 @@ export type UpdateRecord = {
145
153
  status: {
146
154
  error: string;
147
155
  };
156
+ } | {
157
+ updated: "invocation";
158
+ id: string | number;
159
+ error?: string;
160
+ result?: {
161
+ name?: string;
162
+ passStyle: string;
163
+ };
148
164
  };
149
165
  /**
150
166
  * For use by clients to describe brands to users. Includes `displayInfo` to
@@ -154,23 +170,23 @@ export type BrandDescriptor = {
154
170
  brand: Brand;
155
171
  displayInfo: DisplayInfo;
156
172
  issuer: Issuer;
157
- petname: import("./types.js").Petname;
173
+ petname: Petname;
158
174
  };
159
175
  export type UniqueParams = {
160
176
  address: string;
161
- bank: ERef<import("@agoric/vats/src/vat-bank.js").Bank>;
162
- currentStorageNode: StorageNode;
177
+ bank: ERef<Bank>;
178
+ currentStorageNode: Remote<StorageNode>;
163
179
  invitationPurse: Purse<"set", InvitationDetails>;
164
- walletStorageNode: StorageNode;
180
+ walletStorageNode: Remote<StorageNode>;
165
181
  };
166
182
  export type BrandDescriptorRegistry = Pick<MapStore<Brand, BrandDescriptor>, "has" | "get" | "values">;
167
183
  export type SharedParams = {
168
- agoricNames: ERef<import("@agoric/vats").NameHub>;
184
+ agoricNames: ERef<NameHub>;
169
185
  registry: BrandDescriptorRegistry;
170
186
  invitationIssuer: Issuer<"set">;
171
187
  invitationBrand: Brand<"set">;
172
188
  invitationDisplayInfo: DisplayInfo;
173
- publicMarshaller: Marshaller;
189
+ publicMarshaller: ERemote<EMarshaller>;
174
190
  zoe: ERef<ZoeService>;
175
191
  };
176
192
  /**
@@ -185,21 +201,44 @@ export type SharedParams = {
185
201
  export type State = ImmutableState & MutableState;
186
202
  export type ImmutableState = Readonly<UniqueParams & {
187
203
  paymentQueues: MapStore<Brand, Payment[]>;
188
- offerToInvitationMakers: MapStore<string, import("./types.js").InvitationMakers>;
204
+ offerToInvitationMakers: MapStore<string, InvitationMakers>;
189
205
  offerToPublicSubscriberPaths: MapStore<string, Record<string, string>>;
190
206
  offerToUsedInvitation: MapStore<string, Amount<"set">>;
191
207
  purseBalances: MapStore<Purse, Amount>;
192
- updateRecorderKit: import("@agoric/zoe/src/contractSupport/recorder.js").RecorderKit<UpdateRecord>;
193
- currentRecorderKit: import("@agoric/zoe/src/contractSupport/recorder.js").RecorderKit<CurrentWalletRecord>;
208
+ updateRecorderKit: RecorderKit<UpdateRecord>;
209
+ currentRecorderKit: RecorderKit<CurrentWalletRecord>;
194
210
  liveOffers: MapStore<OfferId, OfferStatus>;
195
211
  liveOfferSeats: MapStore<OfferId, UserSeat<unknown>>;
196
212
  liveOfferPayments: MapStore<OfferId, MapStore<Brand, Payment>>;
213
+ myStore: MapStore;
197
214
  }>;
198
215
  export type PurseRecord = BrandDescriptor & {
199
216
  purse: Purse;
200
217
  };
201
218
  export type MutableState = {};
202
- export type SmartWallet = Awaited<ReturnType<ReturnType<typeof prepareSmartWallet>>>;
219
+ export type SmartWallet = EReturn<EReturn<typeof prepareSmartWallet>>;
220
+ import type { Baggage } from '@agoric/vat-data';
221
+ import type { ERemote } from '@agoric/internal';
222
+ import type { CapData } from '@endo/marshal';
223
+ import type { Payment } from '@agoric/ertp';
224
+ import type { Amount } from '@agoric/ertp';
225
+ import type { InvokeEntryMessage } from './offers.js';
226
+ import type { OfferSpec } from './offers.js';
203
227
  import type { OfferId } from './offers.js';
228
+ import type { MakeOfferWatcher } from './offerWatcher.js';
229
+ import type { Brand } from '@agoric/ertp';
204
230
  import type { OfferStatus } from './offers.js';
231
+ import type { Issuer } from '@agoric/ertp';
232
+ import type { Petname } from './types.js';
233
+ import type { Bank } from '@agoric/vats/src/vat-bank.js';
234
+ import type { Remote } from '@agoric/internal';
235
+ import type { InvitationDetails } from '@agoric/zoe';
236
+ import type { Purse } from '@agoric/ertp';
237
+ import type { MapStore } from '@agoric/store';
238
+ import type { NameHub } from '@agoric/vats';
239
+ import type { EMarshaller } from '@agoric/internal/src/marshal/wrap-marshaller.js';
240
+ import type { InvitationMakers } from './types.js';
241
+ import type { RecorderKit } from '@agoric/zoe/src/contractSupport/recorder.js';
242
+ import type { UserSeat } from '@agoric/zoe';
243
+ import type { EReturn } from '@endo/far';
205
244
  //# sourceMappingURL=smartWallet.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"smartWallet.d.ts","sourceRoot":"","sources":["smartWallet.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"smartWallet.d.ts","sourceRoot":"","sources":["smartWallet.js"],"names":[],"mappings":"AA8QA,kCAAmC,eAAe,CAAC;AAiB5C,4CAHI,OAAO,UACP,YAAY,6BAk/BV,IAAI,CACV,YAAY,EAChB,oBAAwB,GAAG,mBAAmB,CAC3C,GAAG;IACF,iBAAiB,EAAE,QAAQ,WAAW,CAAC,CAAC;CACzC;IAtHE;;;;;;;OAOG;sCAHQ,QAAQ,MAAM,GAAG,IAAI,CAAC,aACtB,OAAO,GACL,OAAO,CAAC,IAAI,CAAC;;QA3V1B;;;;;;;;;WASG;yBAJQ,OAAO,GACL,OAAO,CAAC,MAAM,CAAC;;;QAwQ5B;;WAEG;6BADQ,kBAAkB;;;QA3I7B;;;;;;;;;WASG;gCALQ,SAAS,GACP,OAAO,CAAC,IAAI,CAAC;QA0G1B;;;;;;WAMG;8BAHQ,OAAO,GACL,OAAO,CAAC,IAAI,CAAC;;IAuK1B,sCAAsC;;IAKtC,sCAAsC;;;;;;;;;;;;;;IAyD7C;6BAztCY;IACR,MAAM,EAAE;QACN,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;QAC/B,KAAK,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,IAAI,CAAC;KACjC,CAAC;IACF,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,kBAAkB,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;CACtC;iCAIS;IACR,MAAM,EAAE,cAAc,CAAC;IACvB,KAAK,EAAE,SAAS,CAAC;CAClB;iCAIS;IACR,MAAM,EAAE,cAAc,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;CAClB;;;;;YAKU,aAAa;;;;aACb,kBAAkB;;2BAMlB,kBAAkB,GAAG,kBAAkB,GAAG,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;kCAyBjE;IACR,MAAM,EAAE;QAAE,KAAK,EAAE,KAAK,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,EAAE,CAAC;IAC5C,qBAAqB,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,cAAc,EAAE,MAAM,CAAC,EAAE,CAAC;IACnE,4BAA4B,EAAE,CAC5B,OAAO,EAAE,MAAM,EACf,YAAY,EAAE;QAAE,CAAC,cAAc,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,CACnD,EAAE,CAAC;IACJ,UAAU,EAAE,CAAC,OAAO,EAAE,WAAW,CAAC,EAAE,CAAC;CACtC;;;;;;;;;;;;;;2BAIS;IAAE,OAAO,EAAE,aAAa,CAAC;IAAC,MAAM,EAAE,WAAW,CAAA;CAAE,GACrD;IAAE,OAAO,EAAE,SAAS,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAE,GAC7C;IAAE,OAAO,EAAE,cAAc,CAAC;IAAC,MAAM,EAAE;QAAE,KAAK,EAAE,MAAM,CAAA;KAAE,CAAA;CAAE,GACtD;IACE,OAAO,EAAE,YAAY,CAAC;IACtB,EAAE,EAAE,MAAM,GAAG,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE;QAAE,IAAI,CAAC,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC;CAC/C;;;;;8BAeK;IACR,KAAK,EAAE,KAAK,CAAC;IACb,WAAW,EAAE,WAAW,CAAC;IACzB,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,OAAO,CAAC;CAClB;2BAMS;IACR,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;IACjB,kBAAkB,EAAE,OAAO,WAAW,CAAC,CAAC;IACxC,eAAe,EAAE,MAAM,KAAK,EAAE,iBAAiB,CAAC,CAAC;IACjD,iBAAiB,EAAE,OAAO,WAAW,CAAC,CAAC;CACxC;sCAGS,IAAI,CAAC,SAAS,KAAK,EAAE,eAAe,CAAC,EAAE,KAAK,GAAG,KAAK,GAAG,QAAQ,CAAC;2BAGhE;IACR,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IAC3B,QAAQ,EAAE,uBAAuB,CAAC;IAClC,gBAAgB,EAAE,OAAO,KAAK,CAAC,CAAC;IAChC,eAAe,EAAE,MAAM,KAAK,CAAC,CAAC;IAC9B,qBAAqB,EAAE,WAAW,CAAC;IACnC,gBAAgB,EAAE,QAAQ,WAAW,CAAC,CAAC;IACvC,GAAG,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;CACvB;;;;;;;;;;oBAGS,cAAc,GAAG,YAAY;6BAS7B,QAAQ,CAChB,YAAY,GAAG;IACb,aAAa,EAAE,SAAS,KAAK,EAAE,OAAO,EAAE,CAAC,CAAC;IAC1C,uBAAuB,EAAE,SAAS,MAAM,EAAE,gBAAgB,CAAC,CAAC;IAC5D,4BAA4B,EAAE,SAAS,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;IACvE,qBAAqB,EAAE,SAAS,MAAM,EAAE,OAAO,KAAK,CAAC,CAAC,CAAC;IACvD,aAAa,EAAE,SAAS,KAAK,EAAE,MAAM,CAAC,CAAC;IACvC,iBAAiB,EAAE,YAAY,YAAY,CAAC,CAAC;IAC7C,kBAAkB,EAAE,YAAY,mBAAmB,CAAC,CAAC;IACrD,UAAU,EAAE,SAAS,OAAO,EAAE,WAAW,CAAC,CAAC;IAC3C,cAAc,EAAE,SAAS,OAAO,EAAE,SAAS,OAAO,CAAC,CAAC,CAAC;IACrD,iBAAiB,EAAE,SAAS,OAAO,EAAE,SAAS,KAAK,EAAE,OAAO,CAAC,CAAC,CAAC;IAC/D,OAAO,EAAE,QAAQ,CAAC;CACnB,CACF;0BAGS,eAAe,GAAG;IAAE,KAAK,EAAE,KAAK,CAAA;CAAE;2BAElC,EAAE;0BAgkCD,QAAQ,QAAQ,OAAO,kBAAkB,CAAC,CAAC;6BAxuC/B,kBAAkB;6BAdV,kBAAkB;6BAgB1B,eAAe;6BAde,cAAc;4BAAd,cAAc;wCAKY,aAAa;+BAAb,aAAa;6BAAb,aAAa;sCAC5D,mBAAmB;2BANE,cAAc;iCAKY,aAAa;4BALvC,cAAc;6BAO5C,YAAY;0BACf,8BAA8B;4BAVnB,kBAAkB;uCAI6C,aAAa;2BAFtD,cAAc;8BAC7B,eAAe;6BAQ9B,cAAc;iCAVV,iDAAiD;sCAW5C,YAAY;iCACjB,6CAA6C;8BATsB,aAAa;6BAEpF,WAAW"}