@walletmesh/aztec-rpc-wallet 0.1.0 → 0.2.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.
- package/CHANGELOG.md +18 -0
- package/README.md +4 -4
- package/dist/.tsbuildinfo +1 -1
- package/dist/aztecRemoteWallet.d.ts +7 -6
- package/dist/aztecRemoteWallet.d.ts.map +1 -1
- package/dist/aztecRemoteWallet.js +15 -10
- package/dist/chainProvider.d.ts.map +1 -1
- package/dist/chainProvider.js +1 -1
- package/dist/errors.d.ts.map +1 -1
- package/dist/errors.js +1 -1
- package/dist/handlers/aztecAccountWallet.d.ts.map +1 -1
- package/dist/handlers/aztecAccountWallet.js +23 -23
- package/dist/handlers/transactions.d.ts.map +1 -1
- package/dist/handlers/transactions.js +11 -3
- package/dist/serializers/account.d.ts +19 -22
- package/dist/serializers/account.d.ts.map +1 -1
- package/dist/serializers/account.js +44 -45
- package/dist/serializers/contract.d.ts +11 -63
- package/dist/serializers/contract.d.ts.map +1 -1
- package/dist/serializers/contract.js +67 -153
- package/dist/serializers/index.d.ts +1 -4
- package/dist/serializers/index.d.ts.map +1 -1
- package/dist/serializers/index.js +12 -12
- package/dist/serializers/log.d.ts +38 -85
- package/dist/serializers/log.d.ts.map +1 -1
- package/dist/serializers/log.js +106 -115
- package/dist/serializers/note.d.ts +24 -27
- package/dist/serializers/note.d.ts.map +1 -1
- package/dist/serializers/note.js +67 -41
- package/dist/serializers/transaction-utils.d.ts +44 -100
- package/dist/serializers/transaction-utils.d.ts.map +1 -1
- package/dist/serializers/transaction-utils.js +89 -116
- package/dist/serializers/transaction.d.ts +15 -18
- package/dist/serializers/transaction.d.ts.map +1 -1
- package/dist/serializers/transaction.js +51 -62
- package/dist/types.d.ts +9 -9
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js +1 -1
- package/package.json +9 -9
- package/src/aztecRemoteWallet.test.ts +34 -33
- package/src/aztecRemoteWallet.ts +25 -15
- package/src/chainProvider.ts +1 -7
- package/src/errors.ts +0 -1
- package/src/handlers/aztecAccountWallet.test.ts +78 -75
- package/src/handlers/aztecAccountWallet.ts +33 -36
- package/src/handlers/transactions.ts +16 -2
- package/src/serializers/account.test.ts +18 -17
- package/src/serializers/account.ts +46 -64
- package/src/serializers/contract.test.ts +14 -16
- package/src/serializers/contract.ts +77 -171
- package/src/serializers/index.test.ts +20 -8
- package/src/serializers/index.ts +16 -32
- package/src/serializers/log.test.ts +201 -28
- package/src/serializers/log.ts +162 -153
- package/src/serializers/note.test.ts +26 -28
- package/src/serializers/note.ts +71 -48
- package/src/serializers/transaction-utils.ts +147 -210
- package/src/serializers/transaction.test.ts +190 -30
- package/src/serializers/transaction.ts +62 -83
- package/src/types.ts +10 -9
- package/tsconfig.json +1 -1
- package/vitest.config.ts +1 -1
- package/dist/serializers/contract-utils.d.ts +0 -40
- package/dist/serializers/contract-utils.d.ts.map +0 -1
- package/dist/serializers/contract-utils.js +0 -102
- package/dist/serializers/core.d.ts +0 -110
- package/dist/serializers/core.d.ts.map +0 -1
- package/dist/serializers/core.js +0 -130
- package/dist/serializers/types.d.ts +0 -49
- package/dist/serializers/types.d.ts.map +0 -1
- package/dist/serializers/types.js +0 -22
- package/src/serializers/contract-utils.ts +0 -104
- package/src/serializers/core.test.ts +0 -56
- package/src/serializers/core.ts +0 -141
- package/src/serializers/types.ts +0 -58
package/dist/serializers/log.js
CHANGED
@@ -1,101 +1,121 @@
|
|
1
|
-
import {
|
2
|
-
import {
|
3
|
-
import { Point, AztecAddress } from '@aztec/aztec.js';
|
1
|
+
import { GetPublicLogsResponseSchema, GetContractClassLogsResponseSchema, TxHash, LogId, } from '@aztec/circuit-types';
|
2
|
+
import { AztecAddress, Point } from '@aztec/aztec.js';
|
4
3
|
import { EventSelector } from '@aztec/foundation/abi';
|
5
4
|
/**
|
6
|
-
* Serializer for the
|
7
|
-
* Handles serialization of
|
8
|
-
* Supports filtering logs by transaction hash, block range, and contract address.
|
5
|
+
* Serializer for the aztec_getPublicLogs RPC method.
|
6
|
+
* Handles serialization of public log queries and results between JSON-RPC format and native Aztec types.
|
9
7
|
*/
|
10
|
-
export class
|
8
|
+
export class AztecGetPublicLogsSerializer {
|
11
9
|
constructor() {
|
12
10
|
this.params = {
|
13
|
-
/**
|
14
|
-
* Serializes log filter parameters for RPC transport.
|
15
|
-
* @param method - The RPC method name
|
16
|
-
* @param value - The filter parameters including txHash, block range, and contract address
|
17
|
-
* @returns Serialized filter data
|
18
|
-
*/
|
19
11
|
serialize: (method, value) => {
|
20
12
|
const { filter } = value;
|
13
|
+
// Convert all fields that need string conversion
|
14
|
+
const serializedFilter = {
|
15
|
+
...filter,
|
16
|
+
txHash: filter.txHash?.toString(),
|
17
|
+
contractAddress: filter.contractAddress?.toString(),
|
18
|
+
afterLog: filter.afterLog?.toString(),
|
19
|
+
fromBlock: filter.fromBlock,
|
20
|
+
toBlock: filter.toBlock,
|
21
|
+
};
|
21
22
|
return {
|
22
23
|
method,
|
23
|
-
serialized:
|
24
|
-
txHash: filter.txHash?.toString(),
|
25
|
-
fromBlock: filter.fromBlock,
|
26
|
-
toBlock: filter.toBlock,
|
27
|
-
afterLog: filter.afterLog?.toString(),
|
28
|
-
contractAddress: filter.contractAddress?.toString(),
|
29
|
-
})),
|
24
|
+
serialized: JSON.stringify({ filter: serializedFilter }),
|
30
25
|
};
|
31
26
|
},
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
|
36
|
-
|
37
|
-
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
fromBlock
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
};
|
47
|
-
return { filter };
|
27
|
+
deserialize: (_method, data) => {
|
28
|
+
const { filter } = JSON.parse(data.serialized);
|
29
|
+
const deserializedFilter = {};
|
30
|
+
if (filter.txHash)
|
31
|
+
deserializedFilter.txHash = TxHash.fromString(filter.txHash);
|
32
|
+
if (filter.contractAddress)
|
33
|
+
deserializedFilter.contractAddress = AztecAddress.fromString(filter.contractAddress);
|
34
|
+
if (filter.afterLog)
|
35
|
+
deserializedFilter.afterLog = LogId.fromString(filter.afterLog);
|
36
|
+
if (filter.fromBlock !== undefined)
|
37
|
+
deserializedFilter.fromBlock = filter.fromBlock;
|
38
|
+
if (filter.toBlock !== undefined)
|
39
|
+
deserializedFilter.toBlock = filter.toBlock;
|
40
|
+
return { filter: deserializedFilter };
|
48
41
|
},
|
49
42
|
};
|
50
43
|
this.result = {
|
51
|
-
/**
|
52
|
-
* Serializes unencrypted log results for RPC transport.
|
53
|
-
* @param method - The RPC method name
|
54
|
-
* @param value - The log results including logs array and maxLogsHit flag
|
55
|
-
* @returns Serialized log data
|
56
|
-
*/
|
57
44
|
serialize: (method, value) => {
|
58
|
-
const serializedLogs = value.logs.map((log) => log.toString());
|
59
45
|
return {
|
60
46
|
method,
|
61
|
-
serialized:
|
47
|
+
serialized: JSON.stringify(value),
|
62
48
|
};
|
63
49
|
},
|
64
|
-
|
65
|
-
|
66
|
-
|
67
|
-
|
68
|
-
|
69
|
-
|
70
|
-
|
71
|
-
|
50
|
+
deserialize: (_method, data) => {
|
51
|
+
return GetPublicLogsResponseSchema.parse(JSON.parse(data.serialized));
|
52
|
+
},
|
53
|
+
};
|
54
|
+
}
|
55
|
+
}
|
56
|
+
/**
|
57
|
+
* Serializer for the aztec_getContractClassLogs RPC method.
|
58
|
+
* Handles serialization of contract class log queries and results between JSON-RPC format and native Aztec types.
|
59
|
+
*/
|
60
|
+
export class AztecGetContractClassLogsSerializer {
|
61
|
+
constructor() {
|
62
|
+
this.params = {
|
63
|
+
serialize: (method, value) => {
|
64
|
+
const { filter } = value;
|
65
|
+
// Convert fields to strings for schema validation
|
66
|
+
const serializedFilter = {
|
67
|
+
txHash: filter.txHash?.toString() ?? undefined,
|
68
|
+
contractAddress: filter.contractAddress?.toString() ?? undefined,
|
69
|
+
afterLog: filter.afterLog?.toString() ?? undefined,
|
70
|
+
fromBlock: filter.fromBlock,
|
71
|
+
toBlock: filter.toBlock,
|
72
|
+
};
|
72
73
|
return {
|
73
|
-
|
74
|
-
|
74
|
+
method,
|
75
|
+
serialized: JSON.stringify({ filter: serializedFilter }),
|
75
76
|
};
|
76
77
|
},
|
78
|
+
deserialize: (_method, data) => {
|
79
|
+
const { filter } = JSON.parse(data.serialized);
|
80
|
+
const deserializedFilter = {};
|
81
|
+
if (filter.txHash)
|
82
|
+
deserializedFilter.txHash = TxHash.fromString(filter.txHash);
|
83
|
+
if (filter.contractAddress)
|
84
|
+
deserializedFilter.contractAddress = AztecAddress.fromString(filter.contractAddress);
|
85
|
+
if (filter.afterLog)
|
86
|
+
deserializedFilter.afterLog = LogId.fromString(filter.afterLog);
|
87
|
+
if (filter.fromBlock !== undefined)
|
88
|
+
deserializedFilter.fromBlock = filter.fromBlock;
|
89
|
+
if (filter.toBlock !== undefined)
|
90
|
+
deserializedFilter.toBlock = filter.toBlock;
|
91
|
+
return { filter: deserializedFilter };
|
92
|
+
},
|
93
|
+
};
|
94
|
+
this.result = {
|
95
|
+
serialize: (method, value) => {
|
96
|
+
return {
|
97
|
+
method,
|
98
|
+
serialized: JSON.stringify(GetContractClassLogsResponseSchema.parse(value)),
|
99
|
+
};
|
100
|
+
},
|
101
|
+
deserialize: (_method, data) => {
|
102
|
+
return GetContractClassLogsResponseSchema.parse(JSON.parse(data.serialized));
|
103
|
+
},
|
77
104
|
};
|
78
105
|
}
|
79
106
|
}
|
80
107
|
/**
|
81
|
-
* Serializer for the
|
82
|
-
* Handles serialization of
|
83
|
-
* Supports querying events with viewing keys for decryption.
|
108
|
+
* Serializer for the aztec_getPrivateEvents RPC method.
|
109
|
+
* Handles serialization of private event queries and results between JSON-RPC format and native Aztec types.
|
84
110
|
*/
|
85
|
-
export class
|
111
|
+
export class AztecGetPrivateEventsSerializer {
|
86
112
|
constructor() {
|
87
113
|
this.params = {
|
88
|
-
/**
|
89
|
-
* Serializes encrypted event query parameters for RPC transport.
|
90
|
-
* @param method - The RPC method name
|
91
|
-
* @param value - The query parameters including event metadata, range, and viewing keys
|
92
|
-
* @returns Serialized query data
|
93
|
-
*/
|
94
114
|
serialize: (method, value) => {
|
95
115
|
const { event, from, limit, vpks } = value;
|
96
116
|
return {
|
97
117
|
method,
|
98
|
-
serialized:
|
118
|
+
serialized: JSON.stringify({
|
99
119
|
event: {
|
100
120
|
eventSelector: event.eventSelector.toString(),
|
101
121
|
abiType: {
|
@@ -106,17 +126,11 @@ export class AztecGetEncryptedEventsSerializer {
|
|
106
126
|
from,
|
107
127
|
limit,
|
108
128
|
vpks: vpks?.map((p) => p.toString()),
|
109
|
-
})
|
129
|
+
}),
|
110
130
|
};
|
111
131
|
},
|
112
|
-
|
113
|
-
|
114
|
-
* @param method - The RPC method name
|
115
|
-
* @param data - The serialized query data
|
116
|
-
* @returns Deserialized query parameters
|
117
|
-
*/
|
118
|
-
deserialize: (method, data) => {
|
119
|
-
const { event: serializedEvent, from, limit, vpks } = JSON.parse(decodeBase64(data.serialized));
|
132
|
+
deserialize: (_method, data) => {
|
133
|
+
const { event: serializedEvent, from, limit, vpks } = JSON.parse(data.serialized);
|
120
134
|
const event = {
|
121
135
|
eventSelector: EventSelector.fromString(serializedEvent.eventSelector),
|
122
136
|
abiType: {
|
@@ -132,43 +146,31 @@ export class AztecGetEncryptedEventsSerializer {
|
|
132
146
|
};
|
133
147
|
},
|
134
148
|
};
|
135
|
-
/**
|
136
|
-
* Handles serialization of encrypted event results.
|
137
|
-
* Note: The result type is generic (T[]) based on the event's ABI type definition.
|
138
|
-
* Currently handles results as unknown[] until proper ABI-based deserialization is implemented.
|
139
|
-
*/
|
140
149
|
this.result = {
|
141
150
|
serialize: (method, value) => {
|
142
151
|
return {
|
143
152
|
method,
|
144
|
-
serialized:
|
153
|
+
serialized: JSON.stringify(value),
|
145
154
|
};
|
146
155
|
},
|
147
|
-
deserialize: (
|
148
|
-
return JSON.parse(
|
156
|
+
deserialize: (_method, data) => {
|
157
|
+
return JSON.parse(data.serialized);
|
149
158
|
},
|
150
159
|
};
|
151
160
|
}
|
152
161
|
}
|
153
162
|
/**
|
154
|
-
* Serializer for the
|
155
|
-
* Handles serialization of
|
156
|
-
* Supports querying events by event selector and pagination parameters.
|
163
|
+
* Serializer for the aztec_getPublicEvents RPC method.
|
164
|
+
* Handles serialization of public event queries and results between JSON-RPC format and native Aztec types.
|
157
165
|
*/
|
158
|
-
export class
|
166
|
+
export class AztecGetPublicEventsSerializer {
|
159
167
|
constructor() {
|
160
168
|
this.params = {
|
161
|
-
/**
|
162
|
-
* Serializes unencrypted event query parameters for RPC transport.
|
163
|
-
* @param method - The RPC method name
|
164
|
-
* @param value - The query parameters including event metadata and range
|
165
|
-
* @returns Serialized query data
|
166
|
-
*/
|
167
169
|
serialize: (method, value) => {
|
168
170
|
const { event, from, limit } = value;
|
169
171
|
return {
|
170
172
|
method,
|
171
|
-
serialized:
|
173
|
+
serialized: JSON.stringify({
|
172
174
|
event: {
|
173
175
|
eventSelector: event.eventSelector.toString(),
|
174
176
|
abiType: {
|
@@ -178,17 +180,11 @@ export class AztecGetUnencryptedEventsSerializer {
|
|
178
180
|
},
|
179
181
|
from,
|
180
182
|
limit,
|
181
|
-
})
|
183
|
+
}),
|
182
184
|
};
|
183
185
|
},
|
184
|
-
|
185
|
-
|
186
|
-
* @param method - The RPC method name
|
187
|
-
* @param data - The serialized query data
|
188
|
-
* @returns Deserialized query parameters
|
189
|
-
*/
|
190
|
-
deserialize: (method, data) => {
|
191
|
-
const { event: serializedEvent, from, limit } = JSON.parse(decodeBase64(data.serialized));
|
186
|
+
deserialize: (_method, data) => {
|
187
|
+
const { event: serializedEvent, from, limit } = JSON.parse(data.serialized);
|
192
188
|
const event = {
|
193
189
|
eventSelector: EventSelector.fromString(serializedEvent.eventSelector),
|
194
190
|
abiType: {
|
@@ -203,29 +199,24 @@ export class AztecGetUnencryptedEventsSerializer {
|
|
203
199
|
};
|
204
200
|
},
|
205
201
|
};
|
206
|
-
/**
|
207
|
-
* Handles serialization of unencrypted event results.
|
208
|
-
* Note: The result type is generic (T[]) based on the event's ABI type definition.
|
209
|
-
* Currently handles results as unknown[] until proper ABI-based deserialization is implemented.
|
210
|
-
*/
|
211
202
|
this.result = {
|
212
203
|
serialize: (method, value) => {
|
213
204
|
return {
|
214
205
|
method,
|
215
|
-
serialized:
|
206
|
+
serialized: JSON.stringify(value),
|
216
207
|
};
|
217
208
|
},
|
218
|
-
deserialize: (
|
219
|
-
return JSON.parse(
|
209
|
+
deserialize: (_method, data) => {
|
210
|
+
return JSON.parse(data.serialized);
|
220
211
|
},
|
221
212
|
};
|
222
213
|
}
|
223
214
|
}
|
224
215
|
/**
|
225
216
|
* Pre-instantiated serializer instances for each Aztec log/event-related RPC method.
|
226
|
-
* These instances can be used directly by the RPC handler implementation.
|
227
217
|
*/
|
228
|
-
export const
|
229
|
-
export const
|
230
|
-
export const
|
231
|
-
|
218
|
+
export const aztecGetPublicLogsSerializer = new AztecGetPublicLogsSerializer();
|
219
|
+
export const aztecGetContractClassLogsSerializer = new AztecGetContractClassLogsSerializer();
|
220
|
+
export const aztecGetPrivateEventsSerializer = new AztecGetPrivateEventsSerializer();
|
221
|
+
export const aztecGetPublicEventsSerializer = new AztecGetPublicEventsSerializer();
|
222
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL3NlcmlhbGl6ZXJzL2xvZy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFHQSxPQUFPLEVBQ0wsMkJBQTJCLEVBQzNCLGtDQUFrQyxFQUNsQyxNQUFNLEVBQ04sS0FBSyxHQUNOLE1BQU0sc0JBQXNCLENBQUM7QUFDOUIsT0FBTyxFQUFFLFlBQVksRUFBa0IsS0FBSyxFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDdEUsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRXREOzs7R0FHRztBQUNILE1BQU0sT0FBTyw0QkFBNEI7SUFBekM7UUFPRSxXQUFNLEdBQUc7WUFDUCxTQUFTLEVBQUUsQ0FDVCxNQUFjLEVBQ2QsS0FBNEQsRUFDckMsRUFBRTtnQkFDekIsTUFBTSxFQUFFLE1BQU0sRUFBRSxHQUFHLEtBQUssQ0FBQztnQkFDekIsaURBQWlEO2dCQUNqRCxNQUFNLGdCQUFnQixHQUFHO29CQUN2QixHQUFHLE1BQU07b0JBQ1QsTUFBTSxFQUFFLE1BQU0sQ0FBQyxNQUFNLEVBQUUsUUFBUSxFQUFFO29CQUNqQyxlQUFlLEVBQUUsTUFBTSxDQUFDLGVBQWUsRUFBRSxRQUFRLEVBQUU7b0JBQ25ELFFBQVEsRUFBRSxNQUFNLENBQUMsUUFBUSxFQUFFLFFBQVEsRUFBRTtvQkFDckMsU0FBUyxFQUFFLE1BQU0sQ0FBQyxTQUFTO29CQUMzQixPQUFPLEVBQUUsTUFBTSxDQUFDLE9BQU87aUJBQ3hCLENBQUM7Z0JBQ0YsT0FBTztvQkFDTCxNQUFNO29CQUNOLFVBQVUsRUFBRSxJQUFJLENBQUMsU0FBUyxDQUFDLEVBQUUsTUFBTSxFQUFFLGdCQUFnQixFQUFFLENBQUM7aUJBQ3pELENBQUM7WUFDSixDQUFDO1lBQ0QsV0FBVyxFQUFFLENBQ1gsT0FBZSxFQUNmLElBQTJCLEVBQzRCLEVBQUU7Z0JBQ3pELE1BQU0sRUFBRSxNQUFNLEVBQUUsR0FBRyxJQUFJLENB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
|
@@ -1,48 +1,46 @@
|
|
1
1
|
import type { AztecWalletMethodMap } from '../types.js';
|
2
|
-
import type { JSONRPCSerializedData, JSONRPCSerializer } from '
|
2
|
+
import type { JSONRPCSerializedData, JSONRPCSerializer } from '@walletmesh/jsonrpc';
|
3
3
|
/**
|
4
|
-
* Serializer for the
|
5
|
-
* Handles serialization of
|
6
|
-
* Used to retrieve notes that have been sent to an account but not yet processed.
|
4
|
+
* Serializer for the aztec_getNotes RPC method.
|
5
|
+
* Handles serialization of note queries and results between JSON-RPC format and native Aztec types.
|
7
6
|
*/
|
8
|
-
export declare class
|
7
|
+
export declare class AztecGetNotesSerializer implements JSONRPCSerializer<AztecWalletMethodMap['aztec_getNotes']['params'], AztecWalletMethodMap['aztec_getNotes']['result']> {
|
9
8
|
params: {
|
10
9
|
/**
|
11
|
-
* Serializes
|
10
|
+
* Serializes notes filter parameters for RPC transport.
|
12
11
|
* @param method - The RPC method name
|
13
|
-
* @param value - The parameters containing filter criteria for
|
12
|
+
* @param value - The parameters containing filter criteria for notes
|
14
13
|
* @returns Serialized filter data
|
15
14
|
*/
|
16
|
-
serialize: (method: string, value: AztecWalletMethodMap["
|
15
|
+
serialize: (method: string, value: AztecWalletMethodMap["aztec_getNotes"]["params"]) => JSONRPCSerializedData;
|
17
16
|
/**
|
18
|
-
* Deserializes
|
19
|
-
* @param
|
17
|
+
* Deserializes notes filter parameters from RPC transport.
|
18
|
+
* @param _method - The RPC method name
|
20
19
|
* @param data - The serialized filter data
|
21
20
|
* @returns Deserialized filter parameters
|
22
21
|
*/
|
23
|
-
deserialize: (
|
22
|
+
deserialize: (_method: string, data: JSONRPCSerializedData) => AztecWalletMethodMap["aztec_getNotes"]["params"];
|
24
23
|
};
|
25
24
|
result: {
|
26
25
|
/**
|
27
|
-
* Serializes the
|
26
|
+
* Serializes the notes query result.
|
28
27
|
* @param method - The RPC method name
|
29
28
|
* @param value - Array of unique notes matching the filter criteria
|
30
29
|
* @returns Serialized note array
|
31
30
|
*/
|
32
|
-
serialize: (method: string, value: AztecWalletMethodMap["
|
31
|
+
serialize: (method: string, value: AztecWalletMethodMap["aztec_getNotes"]["result"]) => JSONRPCSerializedData;
|
33
32
|
/**
|
34
|
-
* Deserializes the
|
35
|
-
* @param
|
33
|
+
* Deserializes the notes query result.
|
34
|
+
* @param _method - The RPC method name
|
36
35
|
* @param data - The serialized note array data
|
37
36
|
* @returns Array of deserialized unique notes
|
38
37
|
*/
|
39
|
-
deserialize: (
|
38
|
+
deserialize: (_method: string, data: JSONRPCSerializedData) => AztecWalletMethodMap["aztec_getNotes"]["result"];
|
40
39
|
};
|
41
40
|
}
|
42
41
|
/**
|
43
42
|
* Serializer for the aztec_addNote RPC method.
|
44
43
|
* Handles serialization of note addition requests between JSON-RPC format and native Aztec types.
|
45
|
-
* Used to add new notes to an account's note tree.
|
46
44
|
*/
|
47
45
|
export declare class AztecAddNoteSerializer implements JSONRPCSerializer<AztecWalletMethodMap['aztec_addNote']['params'], AztecWalletMethodMap['aztec_addNote']['result']> {
|
48
46
|
params: {
|
@@ -55,11 +53,11 @@ export declare class AztecAddNoteSerializer implements JSONRPCSerializer<AztecWa
|
|
55
53
|
serialize: (method: string, value: AztecWalletMethodMap["aztec_addNote"]["params"]) => JSONRPCSerializedData;
|
56
54
|
/**
|
57
55
|
* Deserializes note addition parameters from RPC transport.
|
58
|
-
* @param
|
56
|
+
* @param _method - The RPC method name
|
59
57
|
* @param data - The serialized note data
|
60
58
|
* @returns Deserialized note parameters
|
61
59
|
*/
|
62
|
-
deserialize: (
|
60
|
+
deserialize: (_method: string, data: JSONRPCSerializedData) => AztecWalletMethodMap["aztec_addNote"]["params"];
|
63
61
|
};
|
64
62
|
result: {
|
65
63
|
/**
|
@@ -71,17 +69,16 @@ export declare class AztecAddNoteSerializer implements JSONRPCSerializer<AztecWa
|
|
71
69
|
serialize: (method: string, value: boolean) => JSONRPCSerializedData;
|
72
70
|
/**
|
73
71
|
* Deserializes the note addition result.
|
74
|
-
* @param
|
72
|
+
* @param _method - The RPC method name
|
75
73
|
* @param data - The serialized result data
|
76
74
|
* @returns Boolean indicating success
|
77
75
|
*/
|
78
|
-
deserialize: (
|
76
|
+
deserialize: (_method: string, data: JSONRPCSerializedData) => boolean;
|
79
77
|
};
|
80
78
|
}
|
81
79
|
/**
|
82
80
|
* Serializer for the aztec_addNullifiedNote RPC method.
|
83
81
|
* Handles serialization of nullified note addition requests between JSON-RPC format and native Aztec types.
|
84
|
-
* Used to mark notes as spent/nullified in the note tree.
|
85
82
|
*/
|
86
83
|
export declare class AztecAddNullifiedNoteSerializer implements JSONRPCSerializer<AztecWalletMethodMap['aztec_addNullifiedNote']['params'], AztecWalletMethodMap['aztec_addNullifiedNote']['result']> {
|
87
84
|
params: {
|
@@ -94,11 +91,11 @@ export declare class AztecAddNullifiedNoteSerializer implements JSONRPCSerialize
|
|
94
91
|
serialize: (method: string, value: AztecWalletMethodMap["aztec_addNullifiedNote"]["params"]) => JSONRPCSerializedData;
|
95
92
|
/**
|
96
93
|
* Deserializes nullified note addition parameters from RPC transport.
|
97
|
-
* @param
|
94
|
+
* @param _method - The RPC method name
|
98
95
|
* @param data - The serialized note data
|
99
96
|
* @returns Deserialized note parameters
|
100
97
|
*/
|
101
|
-
deserialize: (
|
98
|
+
deserialize: (_method: string, data: JSONRPCSerializedData) => AztecWalletMethodMap["aztec_addNullifiedNote"]["params"];
|
102
99
|
};
|
103
100
|
result: {
|
104
101
|
/**
|
@@ -110,18 +107,18 @@ export declare class AztecAddNullifiedNoteSerializer implements JSONRPCSerialize
|
|
110
107
|
serialize: (method: string, value: boolean) => JSONRPCSerializedData;
|
111
108
|
/**
|
112
109
|
* Deserializes the nullified note addition result.
|
113
|
-
* @param
|
110
|
+
* @param _method - The RPC method name
|
114
111
|
* @param data - The serialized result data
|
115
112
|
* @returns Boolean indicating success
|
116
113
|
*/
|
117
|
-
deserialize: (
|
114
|
+
deserialize: (_method: string, data: JSONRPCSerializedData) => boolean;
|
118
115
|
};
|
119
116
|
}
|
120
117
|
/**
|
121
118
|
* Pre-instantiated serializer instances for Aztec note-related RPC methods.
|
122
119
|
* These instances can be used directly by the RPC handler implementation.
|
123
120
|
*/
|
124
|
-
export declare const
|
121
|
+
export declare const aztecGetNotesSerializer: AztecGetNotesSerializer;
|
125
122
|
export declare const aztecAddNoteSerializer: AztecAddNoteSerializer;
|
126
123
|
export declare const aztecAddNullifiedNoteSerializer: AztecAddNullifiedNoteSerializer;
|
127
124
|
//# sourceMappingURL=note.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"note.d.ts","sourceRoot":"","sources":["../../src/serializers/note.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,KAAK,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,
|
1
|
+
{"version":3,"file":"note.d.ts","sourceRoot":"","sources":["../../src/serializers/note.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,KAAK,EAAE,qBAAqB,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAIpF;;;GAGG;AACH,qBAAa,uBACX,YACE,iBAAiB,CACf,oBAAoB,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,EAChD,oBAAoB,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,CACjD;IAEH,MAAM;QACJ;;;;;WAKG;4BAEO,MAAM,SACP,oBAAoB,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,KACtD,qBAAqB;QAkBxB;;;;;WAKG;+BAEQ,MAAM,QACT,qBAAqB,KAC1B,oBAAoB,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC;MAmBnD;IAEF,MAAM;QACJ;;;;;WAKG;4BAEO,MAAM,SACP,oBAAoB,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC,KACtD,qBAAqB;QAMxB;;;;;WAKG;+BAEQ,MAAM,QACT,qBAAqB,KAC1B,oBAAoB,CAAC,gBAAgB,CAAC,CAAC,QAAQ,CAAC;MAGnD;CACH;AAED;;;GAGG;AACH,qBAAa,sBACX,YACE,iBAAiB,CACf,oBAAoB,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC,EAC/C,oBAAoB,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC,CAChD;IAEH,MAAM;QACJ;;;;;WAKG;4BAEO,MAAM,SACP,oBAAoB,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC,KACrD,qBAAqB;QAOxB;;;;;WAKG;+BAEQ,MAAM,QACT,qBAAqB,KAC1B,oBAAoB,CAAC,eAAe,CAAC,CAAC,QAAQ,CAAC;MAKlD;IAEF,MAAM;QACJ;;;;;WAKG;4BACiB,MAAM,SAAS,OAAO,KAAG,qBAAqB;QAMlE;;;;;WAKG;+BACoB,MAAM,QAAQ,qBAAqB,KAAG,OAAO;MAGpE;CACH;AAED;;;GAGG;AACH,qBAAa,+BACX,YACE,iBAAiB,CACf,oBAAoB,CAAC,wBAAwB,CAAC,CAAC,QAAQ,CAAC,EACxD,oBAAoB,CAAC,wBAAwB,CAAC,CAAC,QAAQ,CAAC,CACzD;IAEH,MAAM;QACJ;;;;;WAKG;4BAEO,MAAM,SACP,oBAAoB,CAAC,wBAAwB,CAAC,CAAC,QAAQ,CAAC,KAC9D,qBAAqB;QAOxB;;;;;WAKG;+BAEQ,MAAM,QACT,qBAAqB,KAC1B,oBAAoB,CAAC,wBAAwB,CAAC,CAAC,QAAQ,CAAC;MAK3D;IAEF,MAAM;QACJ;;;;;WAKG;4BACiB,MAAM,SAAS,OAAO,KAAG,qBAAqB;QAMlE;;;;;WAKG;+BACoB,MAAM,QAAQ,qBAAqB,KAAG,OAAO;MAGpE;CACH;AAED;;;GAGG;AACH,eAAO,MAAM,uBAAuB,yBAAgC,CAAC;AACrE,eAAO,MAAM,sBAAsB,wBAA+B,CAAC;AACnE,eAAO,MAAM,+BAA+B,iCAAwC,CAAC"}
|