@walletmesh/aztec-rpc-wallet 0.1.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 (108) hide show
  1. package/CHANGELOG.md +7 -0
  2. package/LICENSE +201 -0
  3. package/README.md +260 -0
  4. package/dist/.tsbuildinfo +1 -0
  5. package/dist/aztecRemoteWallet.d.ts +73 -0
  6. package/dist/aztecRemoteWallet.d.ts.map +1 -0
  7. package/dist/aztecRemoteWallet.js +354 -0
  8. package/dist/chainProvider.d.ts +56 -0
  9. package/dist/chainProvider.d.ts.map +1 -0
  10. package/dist/chainProvider.js +98 -0
  11. package/dist/contractArtifactCache.d.ts +50 -0
  12. package/dist/contractArtifactCache.d.ts.map +1 -0
  13. package/dist/contractArtifactCache.js +66 -0
  14. package/dist/errors.d.ts +50 -0
  15. package/dist/errors.d.ts.map +1 -0
  16. package/dist/errors.js +62 -0
  17. package/dist/handlers/aztecAccountWallet.d.ts +4 -0
  18. package/dist/handlers/aztecAccountWallet.d.ts.map +1 -0
  19. package/dist/handlers/aztecAccountWallet.js +329 -0
  20. package/dist/handlers/transactions.d.ts +21 -0
  21. package/dist/handlers/transactions.d.ts.map +1 -0
  22. package/dist/handlers/transactions.js +90 -0
  23. package/dist/handlers.d.ts +27 -0
  24. package/dist/handlers.d.ts.map +1 -0
  25. package/dist/handlers.js +55 -0
  26. package/dist/index.d.ts +58 -0
  27. package/dist/index.d.ts.map +1 -0
  28. package/dist/index.js +33 -0
  29. package/dist/provider.d.ts +105 -0
  30. package/dist/provider.d.ts.map +1 -0
  31. package/dist/provider.js +160 -0
  32. package/dist/serializers/account.d.ts +167 -0
  33. package/dist/serializers/account.d.ts.map +1 -0
  34. package/dist/serializers/account.js +245 -0
  35. package/dist/serializers/contract-utils.d.ts +40 -0
  36. package/dist/serializers/contract-utils.d.ts.map +1 -0
  37. package/dist/serializers/contract-utils.js +102 -0
  38. package/dist/serializers/contract.d.ts +168 -0
  39. package/dist/serializers/contract.d.ts.map +1 -0
  40. package/dist/serializers/contract.js +268 -0
  41. package/dist/serializers/core.d.ts +110 -0
  42. package/dist/serializers/core.d.ts.map +1 -0
  43. package/dist/serializers/core.js +130 -0
  44. package/dist/serializers/index.d.ts +28 -0
  45. package/dist/serializers/index.d.ts.map +1 -0
  46. package/dist/serializers/index.js +159 -0
  47. package/dist/serializers/log.d.ts +113 -0
  48. package/dist/serializers/log.d.ts.map +1 -0
  49. package/dist/serializers/log.js +231 -0
  50. package/dist/serializers/note.d.ts +127 -0
  51. package/dist/serializers/note.d.ts.map +1 -0
  52. package/dist/serializers/note.js +182 -0
  53. package/dist/serializers/transaction-utils.d.ts +107 -0
  54. package/dist/serializers/transaction-utils.d.ts.map +1 -0
  55. package/dist/serializers/transaction-utils.js +130 -0
  56. package/dist/serializers/transaction.d.ts +103 -0
  57. package/dist/serializers/transaction.d.ts.map +1 -0
  58. package/dist/serializers/transaction.js +238 -0
  59. package/dist/serializers/types.d.ts +49 -0
  60. package/dist/serializers/types.d.ts.map +1 -0
  61. package/dist/serializers/types.js +22 -0
  62. package/dist/types.d.ts +391 -0
  63. package/dist/types.d.ts.map +1 -0
  64. package/dist/types.js +8 -0
  65. package/dist/wallet.d.ts +62 -0
  66. package/dist/wallet.d.ts.map +1 -0
  67. package/dist/wallet.js +77 -0
  68. package/package.json +44 -0
  69. package/src/aztecRemoteWallet.test.ts +542 -0
  70. package/src/aztecRemoteWallet.ts +484 -0
  71. package/src/chainProvider.test.ts +322 -0
  72. package/src/chainProvider.ts +122 -0
  73. package/src/contractArtifactCache.test.ts +126 -0
  74. package/src/contractArtifactCache.ts +75 -0
  75. package/src/errors.ts +71 -0
  76. package/src/handlers/aztecAccountWallet.test.ts +720 -0
  77. package/src/handlers/aztecAccountWallet.ts +593 -0
  78. package/src/handlers/transactions.ts +110 -0
  79. package/src/handlers.test.ts +270 -0
  80. package/src/handlers.ts +70 -0
  81. package/src/index.test.ts +23 -0
  82. package/src/index.ts +64 -0
  83. package/src/provider.test.ts +276 -0
  84. package/src/provider.ts +189 -0
  85. package/src/serializers/account.test.ts +125 -0
  86. package/src/serializers/account.ts +319 -0
  87. package/src/serializers/contract-utils.ts +104 -0
  88. package/src/serializers/contract.test.ts +162 -0
  89. package/src/serializers/contract.ts +350 -0
  90. package/src/serializers/core.test.ts +56 -0
  91. package/src/serializers/core.ts +141 -0
  92. package/src/serializers/index.test.ts +122 -0
  93. package/src/serializers/index.ts +213 -0
  94. package/src/serializers/log.test.ts +119 -0
  95. package/src/serializers/log.ts +283 -0
  96. package/src/serializers/note.test.ts +100 -0
  97. package/src/serializers/note.ts +227 -0
  98. package/src/serializers/transaction-utils.ts +237 -0
  99. package/src/serializers/transaction.test.ts +153 -0
  100. package/src/serializers/transaction.ts +342 -0
  101. package/src/serializers/types.ts +58 -0
  102. package/src/types.ts +295 -0
  103. package/src/wallet.test.ts +275 -0
  104. package/src/wallet.ts +94 -0
  105. package/tsconfig.build.json +6 -0
  106. package/tsconfig.json +11 -0
  107. package/typedoc.json +15 -0
  108. package/vitest.config.ts +10 -0
@@ -0,0 +1,73 @@
1
+ import type { AuthWitness, AztecAddress, ContractArtifact, ContractClassWithId, ContractInstanceWithAddress, ExtendedNote, TxExecutionRequest, TxHash, TxReceipt, L2Block, LogFilter, Point, SiblingPath, PartialAddress, CompleteAddress, NodeInfo, Tx, Wallet } from '@aztec/aztec.js';
2
+ import type { IntentAction, IntentInnerHash } from '@aztec/aztec.js/utils';
3
+ import type { ExecutionRequestInit } from '@aztec/aztec.js/entrypoint';
4
+ import type { AbiDecoded } from '@aztec/foundation/abi';
5
+ import type { IncomingNotesFilter, EventMetadataDefinition, PrivateExecutionResult, TxProvingResult, UniqueNote, GetUnencryptedLogsResponse, PXEInfo, TxSimulationResult, InBlock, TxEffect } from '@aztec/circuit-types';
6
+ import type { GasFees, L1_TO_L2_MSG_TREE_HEIGHT } from '@aztec/circuits.js';
7
+ import { Fr } from '@aztec/aztec.js';
8
+ import type { JSONRPCTransport } from '@walletmesh/jsonrpc';
9
+ import { AztecProvider } from './provider.js';
10
+ import type { AztecChainId } from './types.js';
11
+ export declare class AztecRemoteWallet implements Wallet {
12
+ private _provider;
13
+ private _providerChainId;
14
+ private _address;
15
+ private _completeAddress;
16
+ private _chainId;
17
+ private _version;
18
+ private _scopes;
19
+ constructor(_provider: AztecProvider, _providerChainId: AztecChainId);
20
+ isL1ToL2MessageSynced(l1ToL2Message: Fr): Promise<boolean>;
21
+ getAddress(): AztecAddress;
22
+ getCompleteAddress(): CompleteAddress;
23
+ getChainId(): Fr;
24
+ getVersion(): Fr;
25
+ createTxExecutionRequest(exec: ExecutionRequestInit): Promise<TxExecutionRequest>;
26
+ createAuthWit(intent: Fr | Buffer | IntentAction | IntentInnerHash): Promise<AuthWitness>;
27
+ setScopes(scopes: AztecAddress[]): void;
28
+ getScopes(): AztecAddress[];
29
+ getScopesAsync(): Promise<AztecAddress[]>;
30
+ getContractInstance(address: AztecAddress): Promise<ContractInstanceWithAddress | undefined>;
31
+ getContractClass(id: Fr): Promise<ContractClassWithId | undefined>;
32
+ getContractArtifact(id: Fr): Promise<ContractArtifact | undefined>;
33
+ addCapsule(capsule: Fr[]): Promise<void>;
34
+ registerAccount(secretKey: Fr, partialAddress: PartialAddress): Promise<CompleteAddress>;
35
+ getRegisteredAccounts(): Promise<CompleteAddress[]>;
36
+ registerSender(address: AztecAddress): Promise<AztecAddress>;
37
+ getSenders(): Promise<AztecAddress[]>;
38
+ removeSender(address: AztecAddress): Promise<void>;
39
+ registerContract(contract: {
40
+ instance: ContractInstanceWithAddress;
41
+ artifact?: ContractArtifact;
42
+ }): Promise<void>;
43
+ registerContractClass(artifact: ContractArtifact): Promise<void>;
44
+ getContracts(): Promise<AztecAddress[]>;
45
+ proveTx(txRequest: TxExecutionRequest, privateExecutionResult: PrivateExecutionResult): Promise<TxProvingResult>;
46
+ simulateTx(txRequest: TxExecutionRequest, simulatePublic: boolean, msgSender?: AztecAddress, skipTxValidation?: boolean, enforceFeePayment?: boolean, profile?: boolean): Promise<TxSimulationResult>;
47
+ sendTx(tx: Tx): Promise<TxHash>;
48
+ getTxEffect(txHash: TxHash): Promise<InBlock<TxEffect>>;
49
+ getTxReceipt(txHash: TxHash): Promise<TxReceipt>;
50
+ getIncomingNotes(filter: IncomingNotesFilter): Promise<UniqueNote[]>;
51
+ getPublicStorageAt(contract: AztecAddress, storageSlot: Fr): Promise<Fr>;
52
+ addNote(note: ExtendedNote): Promise<void>;
53
+ addNullifiedNote(note: ExtendedNote): Promise<void>;
54
+ getBlock(number: number): Promise<L2Block | undefined>;
55
+ getCurrentBaseFees(): Promise<GasFees>;
56
+ simulateUnconstrained(functionName: string, args: unknown[], to: AztecAddress, from?: AztecAddress): Promise<AbiDecoded>;
57
+ getUnencryptedLogs(filter: LogFilter): Promise<GetUnencryptedLogsResponse>;
58
+ getContractClassLogs(filter: LogFilter): Promise<GetUnencryptedLogsResponse>;
59
+ getBlockNumber(): Promise<number>;
60
+ getProvenBlockNumber(): Promise<number>;
61
+ getNodeInfo(): Promise<NodeInfo>;
62
+ addAuthWitness(authWitness: AuthWitness): Promise<void>;
63
+ getAuthWitness(messageHash: Fr): Promise<Fr[]>;
64
+ isContractClassPubliclyRegistered(id: Fr): Promise<boolean>;
65
+ isContractPubliclyDeployed(address: AztecAddress): Promise<boolean>;
66
+ isContractInitialized(address: AztecAddress): Promise<boolean>;
67
+ getPXEInfo(): Promise<PXEInfo>;
68
+ getEncryptedEvents<T>(event: EventMetadataDefinition, from: number, limit: number, vpks?: Point[]): Promise<T[]>;
69
+ getUnencryptedEvents<T>(event: EventMetadataDefinition, from: number, limit: number): Promise<T[]>;
70
+ getL1ToL2MembershipWitness(contractAddress: AztecAddress, messageHash: Fr, secret: Fr): Promise<[bigint, SiblingPath<typeof L1_TO_L2_MSG_TREE_HEIGHT>]>;
71
+ }
72
+ export declare function createAztecRPCWallet(transport: JSONRPCTransport, chainId: AztecChainId): AztecRemoteWallet;
73
+ //# sourceMappingURL=aztecRemoteWallet.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"aztecRemoteWallet.d.ts","sourceRoot":"","sources":["../src/aztecRemoteWallet.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,354 @@
1
+ import { Fr } from '@aztec/aztec.js';
2
+ import { AztecProvider } from './provider.js';
3
+ export class AztecRemoteWallet {
4
+ constructor(_provider, _providerChainId) {
5
+ this._provider = _provider;
6
+ this._providerChainId = _providerChainId;
7
+ }
8
+ async isL1ToL2MessageSynced(l1ToL2Message) {
9
+ return this._provider
10
+ .chain(this._providerChainId)
11
+ .call('aztec_isL1ToL2MessageSynced', { l1ToL2Message })
12
+ .execute();
13
+ }
14
+ getAddress() {
15
+ if (!this._address) {
16
+ this._provider
17
+ .chain(this._providerChainId)
18
+ .call('aztec_getAddress')
19
+ .execute()
20
+ .then((result) => {
21
+ this._address = result;
22
+ });
23
+ throw new Error('Address not yet available');
24
+ }
25
+ return this._address;
26
+ }
27
+ getCompleteAddress() {
28
+ if (!this._completeAddress) {
29
+ this._provider
30
+ .chain(this._providerChainId)
31
+ .call('aztec_getCompleteAddress')
32
+ .execute()
33
+ .then((result) => {
34
+ this._completeAddress = result;
35
+ });
36
+ throw new Error('Complete address not yet available');
37
+ }
38
+ return this._completeAddress;
39
+ }
40
+ getChainId() {
41
+ if (!this._chainId) {
42
+ this._provider
43
+ .chain(this._providerChainId)
44
+ .call('aztec_getChainId')
45
+ .execute()
46
+ .then((result) => {
47
+ const chainId = result;
48
+ this._chainId = Fr.fromString(chainId.toString(10));
49
+ });
50
+ throw new Error('Chain ID not yet available');
51
+ }
52
+ return this._chainId;
53
+ }
54
+ getVersion() {
55
+ if (!this._version) {
56
+ this._provider
57
+ .chain(this._providerChainId)
58
+ .call('aztec_getVersion')
59
+ .execute()
60
+ .then((result) => {
61
+ const version = result;
62
+ this._version = Fr.fromString(version.toString(10));
63
+ });
64
+ throw new Error('Version not yet available');
65
+ }
66
+ return this._version;
67
+ }
68
+ async createTxExecutionRequest(exec) {
69
+ return this._provider
70
+ .chain(this._providerChainId)
71
+ .call('aztec_createTxExecutionRequest', { exec })
72
+ .execute();
73
+ }
74
+ async createAuthWit(intent) {
75
+ return this._provider
76
+ .chain(this._providerChainId)
77
+ .call('aztec_createAuthWit', { intent })
78
+ .execute();
79
+ }
80
+ setScopes(scopes) {
81
+ // TODO: would be nice to return a promise here
82
+ this._scopes = scopes;
83
+ this._provider
84
+ .chain(this._providerChainId)
85
+ .call('aztec_setScopes', { scopes })
86
+ .execute()
87
+ .then((result) => {
88
+ const success = result;
89
+ console.debug(`setScopes(${scopes}) result: ${success}`);
90
+ });
91
+ }
92
+ getScopes() {
93
+ // TODO: would be nice to return a promise here
94
+ if (!this._scopes) {
95
+ this._provider
96
+ .chain(this._providerChainId)
97
+ .call('aztec_getScopes')
98
+ .execute()
99
+ .then((result) => {
100
+ this._scopes = result;
101
+ });
102
+ throw new Error('Scopes not yet available');
103
+ }
104
+ return this._scopes;
105
+ }
106
+ async getScopesAsync() {
107
+ const scopes = (await this._provider
108
+ .chain(this._providerChainId)
109
+ .call('aztec_getScopes')
110
+ .execute());
111
+ this._scopes = scopes;
112
+ return scopes;
113
+ }
114
+ async getContractInstance(address) {
115
+ return this._provider
116
+ .chain(this._providerChainId)
117
+ .call('aztec_getContractInstance', { address })
118
+ .execute();
119
+ }
120
+ async getContractClass(id) {
121
+ return this._provider
122
+ .chain(this._providerChainId)
123
+ .call('aztec_getContractClass', { id })
124
+ .execute();
125
+ }
126
+ async getContractArtifact(id) {
127
+ return this._provider
128
+ .chain(this._providerChainId)
129
+ .call('aztec_getContractArtifact', { id })
130
+ .execute();
131
+ }
132
+ async addCapsule(capsule) {
133
+ const result = (await this._provider
134
+ .chain(this._providerChainId)
135
+ .call('aztec_addCapsule', { capsule })
136
+ .execute());
137
+ if (!result)
138
+ throw new Error('Failed to add capsule');
139
+ }
140
+ async registerAccount(secretKey, partialAddress) {
141
+ return this._provider
142
+ .chain(this._providerChainId)
143
+ .call('aztec_registerAccount', { secretKey, partialAddress })
144
+ .execute();
145
+ }
146
+ async getRegisteredAccounts() {
147
+ return this._provider
148
+ .chain(this._providerChainId)
149
+ .call('aztec_getRegisteredAccounts')
150
+ .execute();
151
+ }
152
+ async registerSender(address) {
153
+ return this._provider
154
+ .chain(this._providerChainId)
155
+ .call('aztec_registerSender', { sender: address })
156
+ .execute();
157
+ }
158
+ async getSenders() {
159
+ return this._provider.chain(this._providerChainId).call('aztec_getSenders').execute();
160
+ }
161
+ async removeSender(address) {
162
+ const result = (await this._provider
163
+ .chain(this._providerChainId)
164
+ .call('aztec_removeSender', { sender: address })
165
+ .execute());
166
+ if (!result)
167
+ throw new Error('Failed to remove sender');
168
+ }
169
+ async registerContract(contract) {
170
+ const result = (await this._provider
171
+ .chain(this._providerChainId)
172
+ .call('aztec_registerContract', { instance: contract.instance, artifact: contract.artifact })
173
+ .execute());
174
+ if (!result)
175
+ throw new Error('Failed to register contract');
176
+ }
177
+ async registerContractClass(artifact) {
178
+ const result = (await this._provider
179
+ .chain(this._providerChainId)
180
+ .call('aztec_registerContractClass', { artifact })
181
+ .execute());
182
+ if (!result)
183
+ throw new Error('Failed to register contract class');
184
+ }
185
+ async getContracts() {
186
+ return this._provider.chain(this._providerChainId).call('aztec_getContracts').execute();
187
+ }
188
+ async proveTx(txRequest, privateExecutionResult) {
189
+ return this._provider
190
+ .chain(this._providerChainId)
191
+ .call('aztec_proveTx', { txRequest, privateExecutionResult })
192
+ .execute();
193
+ }
194
+ async simulateTx(txRequest, simulatePublic, msgSender, skipTxValidation, enforceFeePayment, profile) {
195
+ const scopes = await this.getScopesAsync();
196
+ return this._provider
197
+ .chain(this._providerChainId)
198
+ .call('aztec_simulateTx', {
199
+ txRequest,
200
+ simulatePublic,
201
+ msgSender,
202
+ skipTxValidation,
203
+ enforceFeePayment,
204
+ profile,
205
+ })
206
+ .execute();
207
+ }
208
+ async sendTx(tx) {
209
+ return this._provider.chain(this._providerChainId).call('aztec_sendTx', { tx }).execute();
210
+ }
211
+ async getTxEffect(txHash) {
212
+ return this._provider
213
+ .chain(this._providerChainId)
214
+ .call('aztec_getTxEffect', { txHash })
215
+ .execute();
216
+ }
217
+ async getTxReceipt(txHash) {
218
+ return this._provider
219
+ .chain(this._providerChainId)
220
+ .call('aztec_getTxReceipt', { txHash })
221
+ .execute();
222
+ }
223
+ async getIncomingNotes(filter) {
224
+ return this._provider
225
+ .chain(this._providerChainId)
226
+ .call('aztec_getIncomingNotes', { filter })
227
+ .execute();
228
+ }
229
+ async getPublicStorageAt(contract, storageSlot) {
230
+ return this._provider
231
+ .chain(this._providerChainId)
232
+ .call('aztec_getPublicStorageAt', { contract, storageSlot })
233
+ .execute();
234
+ }
235
+ async addNote(note) {
236
+ const result = (await this._provider
237
+ .chain(this._providerChainId)
238
+ .call('aztec_addNote', { note })
239
+ .execute());
240
+ if (!result)
241
+ throw new Error('Failed to add note');
242
+ }
243
+ async addNullifiedNote(note) {
244
+ const result = (await this._provider
245
+ .chain(this._providerChainId)
246
+ .call('aztec_addNullifiedNote', { note })
247
+ .execute());
248
+ if (!result)
249
+ throw new Error('Failed to add nullified note');
250
+ }
251
+ async getBlock(number) {
252
+ return this._provider
253
+ .chain(this._providerChainId)
254
+ .call('aztec_getBlock', { number })
255
+ .execute();
256
+ }
257
+ async getCurrentBaseFees() {
258
+ return this._provider.chain(this._providerChainId).call('aztec_getCurrentBaseFees').execute();
259
+ }
260
+ async simulateUnconstrained(functionName, args, to, from) {
261
+ return this._provider
262
+ .chain(this._providerChainId)
263
+ .call('aztec_simulateUnconstrained', { functionName, args, to, from })
264
+ .execute();
265
+ }
266
+ async getUnencryptedLogs(filter) {
267
+ return this._provider
268
+ .chain(this._providerChainId)
269
+ .call('aztec_getUnencryptedLogs', { filter })
270
+ .execute();
271
+ }
272
+ async getContractClassLogs(filter) {
273
+ return this._provider
274
+ .chain(this._providerChainId)
275
+ .call('aztec_getContractClassLogs', { filter })
276
+ .execute();
277
+ }
278
+ async getBlockNumber() {
279
+ return this._provider.chain(this._providerChainId).call('aztec_getBlockNumber').execute();
280
+ }
281
+ async getProvenBlockNumber() {
282
+ return this._provider
283
+ .chain(this._providerChainId)
284
+ .call('aztec_getProvenBlockNumber')
285
+ .execute();
286
+ }
287
+ async getNodeInfo() {
288
+ return this._provider.chain(this._providerChainId).call('aztec_getNodeInfo').execute();
289
+ }
290
+ async addAuthWitness(authWitness) {
291
+ const result = (await this._provider
292
+ .chain(this._providerChainId)
293
+ .call('aztec_addAuthWitness', { authWitness })
294
+ .execute());
295
+ if (!result)
296
+ throw new Error('Failed to add auth witness');
297
+ }
298
+ async getAuthWitness(messageHash) {
299
+ return (await this._provider
300
+ .chain(this._providerChainId)
301
+ .call('aztec_getAuthWitness', { messageHash })
302
+ .execute());
303
+ }
304
+ async isContractClassPubliclyRegistered(id) {
305
+ return this._provider
306
+ .chain(this._providerChainId)
307
+ .call('aztec_isContractClassPubliclyRegistered', { id })
308
+ .execute();
309
+ }
310
+ async isContractPubliclyDeployed(address) {
311
+ return this._provider
312
+ .chain(this._providerChainId)
313
+ .call('aztec_isContractPubliclyDeployed', { address })
314
+ .execute();
315
+ }
316
+ async isContractInitialized(address) {
317
+ return this._provider
318
+ .chain(this._providerChainId)
319
+ .call('aztec_isContractInitialized', { address })
320
+ .execute();
321
+ }
322
+ async getPXEInfo() {
323
+ return this._provider.chain(this._providerChainId).call('aztec_getPXEInfo').execute();
324
+ }
325
+ getEncryptedEvents(event, from, limit, vpks = []) {
326
+ const completeAddress = this.getCompleteAddress();
327
+ return this._provider
328
+ .chain(this._providerChainId)
329
+ .call('aztec_getEncryptedEvents', {
330
+ event,
331
+ from,
332
+ limit,
333
+ vpks: vpks.length ? vpks : [completeAddress.publicKeys.masterIncomingViewingPublicKey],
334
+ })
335
+ .execute();
336
+ }
337
+ getUnencryptedEvents(event, from, limit) {
338
+ return this._provider
339
+ .chain(this._providerChainId)
340
+ .call('aztec_getUnencryptedEvents', { event, from, limit })
341
+ .execute();
342
+ }
343
+ async getL1ToL2MembershipWitness(contractAddress, messageHash, secret) {
344
+ return this._provider
345
+ .chain(this._providerChainId)
346
+ .call('aztec_getL1ToL2MembershipWitness', { contractAddress, messageHash, secret })
347
+ .execute();
348
+ }
349
+ }
350
+ export function createAztecRPCWallet(transport, chainId) {
351
+ const provider = new AztecProvider(transport);
352
+ return new AztecRemoteWallet(provider, chainId);
353
+ }
354
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXp0ZWNSZW1vdGVXYWxsZXQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi9zcmMvYXp0ZWNSZW1vdGVXYWxsZXQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBc0NBLE9BQU8sRUFBRSxFQUFFLEVBQUUsTUFBTSxpQkFBaUIsQ0FBQztBQUdyQyxPQUFPLEVBQUUsYUFBYSxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRzlDLE1BQU0sT0FBTyxpQkFBaUI7SUFPNUIsWUFDVSxTQUF3QixFQUN4QixnQkFBOEI7UUFEOUIsY0FBUyxHQUFULFNBQVMsQ0FBZTtRQUN4QixxQkFBZ0IsR0FBaEIsZ0JBQWdCLENBQWM7SUFDckMsQ0FBQztJQUVKLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxhQUFpQjtRQUMzQyxPQUFPLElBQUksQ0FBQyxTQUFTO2FBQ2xCLEtBQUssQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7YUFDNUIsSUFBSSxDQUFDLDZCQUE2QixFQUFFLEVBQUUsYUFBYSxFQUFFLENBQUM7YUFDdEQsT0FBTyxFQUE0RSxDQUFDO0lBQ3pGLENBQUM7SUFFRCxVQUFVO1FBQ1IsSUFBSSxDQUFDLElBQUksQ0FBQyxRQUFRLEVBQUUsQ0FBQztZQUNuQixJQUFJLENBQUMsU0FBUztpQkFDWCxLQUFLLENBQUMsSUFBSSxDQUFDLGdCQUFnQixDQUFDO2lCQUM1QixJQUFJLENBQUMsa0JBQWtCLENBQUM7aUJBQ3hCLE9BQU8sRUFBRTtpQkFDVCxJQUFJLENBQUMsQ0FBQyxNQUFNLEVBQUUsRUFBRTtnQkFDZixJQUFJLENBQUMsUUFBUSxHQUFHLE1BQTRELENBQUM7WUFDL0UsQ0FBQyxDQUFDLENBQUM7WUFDTCxNQUFNLElBQUksS0FBSyxDQUFDLDJCQUEyQixDQUFDLENBQUM7UUFDL0MsQ0FBQztRQUNELE9BQU8sSUFBSSxDQUFDLFFBQVEsQ0FBQztJQUN2QixDQUFDO0lBRUQsa0JBQWtCO1FBQ2hCLElBQUksQ0FBQyxJQUFJLENBQUMsZ0JBQWdCLEVBQUUs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
@@ -0,0 +1,56 @@
1
+ import { JSONRPCNode } from '@walletmesh/jsonrpc';
2
+ import type { AztecWalletMethodMap, TransactionParams, TransactionFunctionCall } from './types.js';
3
+ import type { ContractInstanceWithAddress, ContractArtifact } from '@aztec/aztec.js';
4
+ /**
5
+ * Provider for directly interacting with an Aztec chain wallet.
6
+ * This is a minimal implementation that supports core Aztec operations
7
+ * without the complexity of multi-chain routing.
8
+ */
9
+ export declare class AztecChainProvider extends JSONRPCNode<AztecWalletMethodMap> {
10
+ protected makeRequest<M extends keyof AztecWalletMethodMap>(method: M, params?: AztecWalletMethodMap[M]['params']): Promise<AztecWalletMethodMap[M]['result']>;
11
+ connect(): Promise<boolean>;
12
+ /**
13
+ * Gets the account address from the wallet.
14
+ * @returns The account address as a string
15
+ * @throws {AztecWalletError} If response is invalid
16
+ */
17
+ getAccount(): Promise<string>;
18
+ /**
19
+ * Sends a transaction to the chain.
20
+ * @param params - Transaction parameters including function calls
21
+ * @returns Transaction hash
22
+ * @throws {AztecWalletError} If transaction fails or response invalid
23
+ */
24
+ sendTransaction(params: TransactionParams): Promise<string>;
25
+ /**
26
+ * Simulates a transaction without submitting it.
27
+ * @param params - Transaction parameters to simulate
28
+ * @returns Simulation result
29
+ * @throws {AztecWalletError} If simulation fails
30
+ */
31
+ simulateTransaction(params: TransactionFunctionCall): Promise<unknown>;
32
+ /**
33
+ * Registers a contract instance with the wallet.
34
+ * @param params - Contract registration parameters
35
+ * @throws {AztecWalletError} If registration fails
36
+ */
37
+ registerContract(params: {
38
+ instance: ContractInstanceWithAddress;
39
+ artifact?: ContractArtifact;
40
+ }): Promise<void>;
41
+ /**
42
+ * Registers a contract class with the wallet.
43
+ * @param params - Contract class registration parameters
44
+ * @throws {AztecWalletError} If registration fails
45
+ */
46
+ registerContractClass(params: {
47
+ artifact: ContractArtifact;
48
+ }): Promise<void>;
49
+ /**
50
+ * Registers a sender with the wallet.
51
+ * @param params - Sender registration parameters
52
+ * @throws {AztecWalletError} If registration fails
53
+ */
54
+ registerSender(params: AztecWalletMethodMap['aztec_registerSender']['params']): Promise<void>;
55
+ }
56
+ //# sourceMappingURL=chainProvider.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"chainProvider.d.ts","sourceRoot":"","sources":["../src/chainProvider.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGlD,OAAO,KAAK,EAEV,oBAAoB,EACpB,iBAAiB,EACjB,uBAAuB,EACxB,MAAM,YAAY,CAAC;AACpB,OAAO,KAAK,EAAE,2BAA2B,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAErF;;;;GAIG;AACH,qBAAa,kBAAmB,SAAQ,WAAW,CAAC,oBAAoB,CAAC;cACvD,WAAW,CAAC,CAAC,SAAS,MAAM,oBAAoB,EAC9D,MAAM,EAAE,CAAC,EACT,MAAM,CAAC,EAAE,oBAAoB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,GACzC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC;IAWhC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC;IASxC;;;;OAIG;IACU,UAAU,IAAI,OAAO,CAAC,MAAM,CAAC;IAQ1C;;;;;OAKG;IACU,eAAe,CAAC,MAAM,EAAE,iBAAiB,GAAG,OAAO,CAAC,MAAM,CAAC;IAQxE;;;;;OAKG;IACU,mBAAmB,CAAC,MAAM,EAAE,uBAAuB,GAAG,OAAO,CAAC,OAAO,CAAC;IAQnF;;;;OAIG;IACU,gBAAgB,CAAC,MAAM,EAAE;QACpC,QAAQ,EAAE,2BAA2B,CAAC;QACtC,QAAQ,CAAC,EAAE,gBAAgB,CAAC;KAC7B,GAAG,OAAO,CAAC,IAAI,CAAC;IAOjB;;;;OAIG;IACU,qBAAqB,CAAC,MAAM,EAAE;QACzC,QAAQ,EAAE,gBAAgB,CAAC;KAC5B,GAAG,OAAO,CAAC,IAAI,CAAC;IAOjB;;;;OAIG;IACU,cAAc,CAAC,MAAM,EAAE,oBAAoB,CAAC,sBAAsB,CAAC,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;CAM3G"}
@@ -0,0 +1,98 @@
1
+ import { JSONRPCNode } from '@walletmesh/jsonrpc';
2
+ import { AztecWalletError, AztecWalletErrorType } from './errors.js';
3
+ /**
4
+ * Provider for directly interacting with an Aztec chain wallet.
5
+ * This is a minimal implementation that supports core Aztec operations
6
+ * without the complexity of multi-chain routing.
7
+ */
8
+ export class AztecChainProvider extends JSONRPCNode {
9
+ async makeRequest(method, params) {
10
+ try {
11
+ return await this.callMethod(method, params);
12
+ }
13
+ catch (error) {
14
+ throw new AztecWalletError(AztecWalletErrorType.invalidResponse, error instanceof Error ? error.message : 'Invalid response received');
15
+ }
16
+ }
17
+ async connect() {
18
+ try {
19
+ await this.makeRequest('aztec_connect');
20
+ return true;
21
+ }
22
+ catch (error) {
23
+ return false;
24
+ }
25
+ }
26
+ /**
27
+ * Gets the account address from the wallet.
28
+ * @returns The account address as a string
29
+ * @throws {AztecWalletError} If response is invalid
30
+ */
31
+ async getAccount() {
32
+ const result = await this.makeRequest('aztec_getAccount');
33
+ if (typeof result !== 'string' || !result) {
34
+ throw new AztecWalletError(AztecWalletErrorType.invalidResponse, 'Invalid account address returned');
35
+ }
36
+ return result;
37
+ }
38
+ /**
39
+ * Sends a transaction to the chain.
40
+ * @param params - Transaction parameters including function calls
41
+ * @returns Transaction hash
42
+ * @throws {AztecWalletError} If transaction fails or response invalid
43
+ */
44
+ async sendTransaction(params) {
45
+ const result = await this.makeRequest('aztec_sendTransaction', params);
46
+ if (typeof result !== 'string' || !result) {
47
+ throw new AztecWalletError(AztecWalletErrorType.invalidResponse, 'Invalid transaction hash returned');
48
+ }
49
+ return result;
50
+ }
51
+ /**
52
+ * Simulates a transaction without submitting it.
53
+ * @param params - Transaction parameters to simulate
54
+ * @returns Simulation result
55
+ * @throws {AztecWalletError} If simulation fails
56
+ */
57
+ async simulateTransaction(params) {
58
+ const result = await this.makeRequest('aztec_simulateTransaction', params);
59
+ if (result === undefined || result === null) {
60
+ throw new AztecWalletError(AztecWalletErrorType.invalidResponse, 'Invalid simulation result returned');
61
+ }
62
+ return result;
63
+ }
64
+ /**
65
+ * Registers a contract instance with the wallet.
66
+ * @param params - Contract registration parameters
67
+ * @throws {AztecWalletError} If registration fails
68
+ */
69
+ async registerContract(params) {
70
+ const result = await this.makeRequest('aztec_registerContract', params);
71
+ if (result !== true) {
72
+ throw new AztecWalletError(AztecWalletErrorType.invalidResponse, 'Contract registration failed');
73
+ }
74
+ }
75
+ /**
76
+ * Registers a contract class with the wallet.
77
+ * @param params - Contract class registration parameters
78
+ * @throws {AztecWalletError} If registration fails
79
+ */
80
+ async registerContractClass(params) {
81
+ const result = await this.makeRequest('aztec_registerContractClass', params);
82
+ if (result !== true) {
83
+ throw new AztecWalletError(AztecWalletErrorType.invalidResponse, 'Contract class registration failed');
84
+ }
85
+ }
86
+ /**
87
+ * Registers a sender with the wallet.
88
+ * @param params - Sender registration parameters
89
+ * @throws {AztecWalletError} If registration fails
90
+ */
91
+ async registerSender(params) {
92
+ const result = await this.makeRequest('aztec_registerSender', params);
93
+ if (!result) {
94
+ throw new AztecWalletError(AztecWalletErrorType.invalidResponse, 'Sender registration failed');
95
+ }
96
+ }
97
+ }
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2hhaW5Qcm92aWRlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uL3NyYy9jaGFpblByb3ZpZGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVsRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsb0JBQW9CLEVBQUUsTUFBTSxhQUFhLENBQUM7QUFTckU7Ozs7R0FJRztBQUNILE1BQU0sT0FBTyxrQkFBbUIsU0FBUSxXQUFpQztJQUM3RCxLQUFLLENBQUMsV0FBVyxDQUN6QixNQUFTLEVBQ1QsTUFBMEM7UUFFMUMsSUFBSSxDQUFDO1lBQ0gsT0FBTyxNQUFNLElBQUksQ0FBQyxVQUFVLENBQUMsTUFBTSxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQy9DLENBQUM7UUFBQyxPQUFPLEtBQUssRUFBRSxDQUFDO1lBQ2YsTUFBTSxJQUFJLGdCQUFnQixDQUN4QixvQkFBb0IsQ0FBQyxlQUFlLEVBQ3BDLEtBQUssWUFBWSxLQUFLLENBQUMsQ0FBQyxDQUFDLEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQyxDQUFDLDJCQUEyQixDQUNyRSxDQUFDO1FBQ0osQ0FBQztJQUNILENBQUM7SUFFTSxLQUFLLENBQUMsT0FBTztRQUNsQixJQUFJLENBQUM7WUFDSCxNQUFNLElBQUksQ0FBQyxXQUFXLENBQUMsZUFBZSxDQUFDLENBQUM7WUFDeEMsT0FBTyxJQUFJLENBQUM7UUFDZCxDQUFDO1FBQUMsT0FBTyxLQUFLLEVBQUUsQ0FBQztZQUNmLE9BQU8sS0FBSyxDQUFDO1FBQ2YsQ0FBQztJQUNILENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksS0FBSyxDQUFDLFVBQVU7UUFDckIsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsV0FBVyxDQUFDLGtCQUFrQixDQUFDLENBQUM7UUFDMUQsSUFBSSxPQUFPLE1BQU0sS0FBSyxRQUFRLElBQUksQ0FBQyxNQUFNLEVBQUUsQ0FBQztZQUMxQyxNQUFNLElBQUksZ0JBQWdCLENBQUMsb0JBQW9CLENBQUMsZUFBZSxFQUFFLGtDQUFrQyxDQUFDLENBQUM7UUFDdkcsQ0FBQztRQUNELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7SUFFRDs7Ozs7T0FLRztJQUNJLEtBQUssQ0FBQyxlQUFlLENBQUMsTUFBeUI7UUFDcEQsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsV0FBVyxDQUFDLHVCQUF1QixFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQ3ZFLElBQUksT0FBTyxNQUFNLEtBQUssUUFBUSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDMUMsTUFBTSxJQUFJLGdCQUFnQixDQUFDLG9CQUFvQixDQUFDLGVBQWUsRUFBRSxtQ0FBbUMsQ0FBQyxDQUFDO1FBQ3hHLENBQUM7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQ7Ozs7O09BS0c7SUFDSSxLQUFLLENBQUMsbUJBQW1CLENBQUMsTUFBK0I7UUFDOUQsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsV0FBVyxDQUFDLDJCQUEyQixFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQzNFLElBQUksTUFBTSxLQUFLLFNBQVMsSUFBSSxNQUFNLEtBQUssSUFBSSxFQUFFLENBQUM7WUFDNUMsTUFBTSxJQUFJLGdCQUFnQixDQUFDLG9CQUFvQixDQUFDLGVBQWUsRUFBRSxvQ0FBb0MsQ0FBQyxDQUFDO1FBQ3pHLENBQUM7UUFDRCxPQUFPLE1BQU0sQ0FBQztJQUNoQixDQUFDO0lBRUQ7Ozs7T0FJRztJQUNJLEtBQUssQ0FBQyxnQkFBZ0IsQ0FBQyxNQUc3QjtRQUNDLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLFdBQVcsQ0FBQyx3QkFBd0IsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUN4RSxJQUFJLE1BQU0sS0FBSyxJQUFJLEVBQUUsQ0FBQztZQUNwQixNQUFNLElBQUksZ0JBQWdCLENBQUMsb0JBQW9CLENBQUMsZUFBZSxFQUFFLDhCQUE4QixDQUFDLENBQUM7UUFDbkcsQ0FBQztJQUNILENBQUM7SUFFRDs7OztPQUlHO0lBQ0ksS0FBSyxDQUFDLHFCQUFxQixDQUFDLE1BRWxDO1FBQ0MsTUFBTSxNQUFNLEdBQUcsTUFBTSxJQUFJLENBQUMsV0FBVyxDQUFDLDZCQUE2QixFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBQzdFLElBQUksTUFBTSxLQUFLLElBQUksRUFBRSxDQUFDO1lBQ3BCLE1BQU0sSUFBSSxnQkFBZ0IsQ0FBQyxvQkFBb0IsQ0FBQyxlQUFlLEVBQUUsb0NBQW9DLENBQUMsQ0FBQztRQUN6RyxDQUFDO0lBQ0gsQ0FBQztJQUVEOzs7O09BSUc7SUFDSSxLQUFLLENBQUMsY0FBYyxDQUFDLE1BQThEO1FBQ3hGLE1BQU0sTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLFdBQVcsQ0FBQyxzQkFBc0IsRUFBRSxNQUFNLENBQUMsQ0FBQztRQUN0RSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7WUFDWixNQUFNLElBQUksZ0JBQWdCLENBQUMsb0JBQW9CLENBQUMsZUFBZSxFQUFFLDRCQUE0QixDQUFDLENBQUM7UUFDakcsQ0FBQztJQUNILENBQUM7Q0FDRiJ9