@fatsolutions/privacy-pools-core-starknet-sdk 0.0.43 → 0.0.45
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/dist/abis/ERC20.abi.js +145 -145
- package/dist/abis/EntryPoint.abi.d.ts +44 -21
- package/dist/abis/EntryPoint.abi.js +267 -235
- package/dist/abis/EntryPoint.abi.js.map +1 -1
- package/dist/abis/PrivacyPool.abi.d.ts +72 -11
- package/dist/abis/PrivacyPool.abi.js +227 -145
- package/dist/abis/PrivacyPool.abi.js.map +1 -1
- package/dist/account.service.d.ts +16 -0
- package/dist/account.service.js +31 -0
- package/dist/account.service.js.map +1 -0
- package/dist/auditor.d.ts +31 -0
- package/dist/auditor.js +146 -0
- package/dist/auditor.js.map +1 -0
- package/dist/contracts/contracts.service.d.ts +3 -3
- package/dist/contracts/contracts.service.js +71 -19
- package/dist/contracts/contracts.service.js.map +1 -1
- package/dist/contracts/index.js.map +1 -1
- package/dist/contracts/transactionHandler.d.ts +1 -1
- package/dist/contracts/transactionHandler.js +2 -4
- package/dist/contracts/transactionHandler.js.map +1 -1
- package/dist/data.service.d.ts +20 -6
- package/dist/data.service.js +50 -7
- package/dist/data.service.js.map +1 -1
- package/dist/errors/contracts.errors.js +1 -1
- package/dist/errors/index.js.map +1 -1
- package/dist/garaga.js +9 -3
- package/dist/garaga.js.map +1 -1
- package/dist/index.d.ts +3 -1
- package/dist/index.js +4 -1
- package/dist/index.js.map +1 -1
- package/dist/sdk.js +4 -4
- package/dist/sdk.js.map +1 -1
- package/dist/types/conversions.js.map +1 -1
- package/dist/types/entrypoint.d.ts +2 -0
- package/dist/types/entrypoint.js +50 -30
- package/dist/types/entrypoint.js.map +1 -1
- package/dist/types/snarkjs.d.ts +7 -46
- package/dist/utils.d.ts +5 -2
- package/dist/utils.js +11 -2
- package/dist/utils.js.map +1 -1
- package/package.json +14 -3
- package/src/abis/ERC20.abi.ts +145 -145
- package/src/abis/EntryPoint.abi.ts +267 -235
- package/src/abis/PrivacyPool.abi.ts +227 -145
- package/src/abis/index.ts +1 -1
- package/src/account.service.ts +47 -0
- package/src/auditor.ts +219 -0
- package/src/contracts/contracts.service.ts +325 -73
- package/src/contracts/index.ts +2 -2
- package/src/contracts/transactionHandler.ts +16 -7
- package/src/data.service.ts +123 -146
- package/src/errors/contracts.errors.ts +6 -6
- package/src/errors/index.ts +18 -24
- package/src/garaga.ts +10 -4
- package/src/index.ts +17 -27
- package/src/sdk.ts +39 -26
- package/src/types/conversions.ts +11 -12
- package/src/types/entrypoint.ts +74 -41
- package/src/types/garaga.ts +32 -32
- package/src/types/index.ts +1 -1
- package/src/types/snarkjs.ts +8 -20
- package/src/utils.ts +34 -13
package/dist/data.service.d.ts
CHANGED
|
@@ -1,15 +1,20 @@
|
|
|
1
1
|
import { DepositEvent, PoolInfo, RagequitEvent, WithdrawalEvent } from "@0xbow/privacy-pools-core-sdk";
|
|
2
|
-
import {
|
|
2
|
+
import { RPC, RpcProvider } from "starknet";
|
|
3
|
+
import { AuditEvent } from "./auditor.js";
|
|
4
|
+
type StarknetEmittedEvent = RPC.RPCSPEC010.EmittedEvent;
|
|
3
5
|
export declare const DEPOSIT_EVENT_SELECTOR: string;
|
|
4
6
|
export declare const WITHDRAWAL_EVENT_SELECTOR: string;
|
|
5
7
|
export declare const RAGEQUIT_EVENT_SELECTOR: string;
|
|
8
|
+
export declare const AUDIT_EVENT_SELECTOR: string;
|
|
6
9
|
export declare const DEPOSIT_EVENT_ABI_NAME = "privacy_pools::interfaces::IPool::Deposited";
|
|
7
10
|
export declare const WITHDRAWAL_EVENT_ABI_NAME = "privacy_pools::interfaces::IPool::Withdrawn";
|
|
8
11
|
export declare const RAGEQUIT_EVENT_ABI_NAME = "privacy_pools::interfaces::IPool::RageQuit";
|
|
12
|
+
export declare const AUDIT_EVENT_ABI_NAME = "privacy_pools::interfaces::IPool::AuditEvent";
|
|
9
13
|
export declare const AbiEventName: {
|
|
10
14
|
readonly Deposit: "privacy_pools::interfaces::IPool::Deposited";
|
|
11
15
|
readonly Withdraw: "privacy_pools::interfaces::IPool::Withdrawn";
|
|
12
16
|
readonly Ragequit: "privacy_pools::interfaces::IPool::RageQuit";
|
|
17
|
+
readonly Audit: "privacy_pools::interfaces::IPool::AuditEvent";
|
|
13
18
|
};
|
|
14
19
|
type AbiEventName = (typeof AbiEventName)[keyof typeof AbiEventName];
|
|
15
20
|
export interface StarknetDepositedEventData {
|
|
@@ -24,6 +29,7 @@ export interface StarknetWithdrawnEventData {
|
|
|
24
29
|
newCommitmentHash: bigint;
|
|
25
30
|
withdrawnValue: bigint;
|
|
26
31
|
existingNullifierHash: bigint;
|
|
32
|
+
auditorData: string;
|
|
27
33
|
}
|
|
28
34
|
export interface StarknetRageQuitEventData {
|
|
29
35
|
depositor: bigint;
|
|
@@ -31,12 +37,19 @@ export interface StarknetRageQuitEventData {
|
|
|
31
37
|
label: bigint;
|
|
32
38
|
value: bigint;
|
|
33
39
|
}
|
|
40
|
+
export interface StarknetAuditEventData {
|
|
41
|
+
tag: bigint;
|
|
42
|
+
ciphertext: string;
|
|
43
|
+
prevNullifierHash: bigint;
|
|
44
|
+
newCommitment: bigint;
|
|
45
|
+
}
|
|
34
46
|
type AbiToEvent = {
|
|
35
47
|
[AbiEventName.Deposit]: StarknetDepositedEventData;
|
|
36
48
|
[AbiEventName.Withdraw]: StarknetWithdrawnEventData;
|
|
37
49
|
[AbiEventName.Ragequit]: StarknetRageQuitEventData;
|
|
50
|
+
[AbiEventName.Audit]: StarknetAuditEventData;
|
|
38
51
|
};
|
|
39
|
-
export type StarknetEvent = StarknetDepositedEventData | StarknetWithdrawnEventData | StarknetRageQuitEventData;
|
|
52
|
+
export type StarknetEvent = StarknetDepositedEventData | StarknetWithdrawnEventData | StarknetAuditEventData | StarknetRageQuitEventData;
|
|
40
53
|
/**
|
|
41
54
|
* Starknet implementation of DataService for privacy pool event fetching.
|
|
42
55
|
*
|
|
@@ -62,7 +75,7 @@ export declare class StarknetDataService {
|
|
|
62
75
|
* @returns Array of deposit events compatible with AccountService interface
|
|
63
76
|
* @throws {StarknetSDKError} If provider is not configured or network error occurs
|
|
64
77
|
*/
|
|
65
|
-
getDeposits(pool: PoolInfo, fromBlock?: bigint): Promise<DepositEvent[]>;
|
|
78
|
+
getDeposits(pool: PoolInfo, fromBlock?: bigint, label?: bigint): Promise<DepositEvent[]>;
|
|
66
79
|
/**
|
|
67
80
|
* Get withdrawal events for a specific Starknet pool
|
|
68
81
|
*
|
|
@@ -81,16 +94,17 @@ export declare class StarknetDataService {
|
|
|
81
94
|
* @throws {StarknetSDKError} If provider is not configured or network error occurs
|
|
82
95
|
*/
|
|
83
96
|
getRagequits(pool: PoolInfo, fromBlock?: bigint): Promise<RagequitEvent[]>;
|
|
97
|
+
getAuditEventForTag(tag: bigint, pool: PoolInfo, fromBlock?: bigint): Promise<AuditEvent[]>;
|
|
84
98
|
private static parseGenericEvents;
|
|
85
|
-
static parseDepositEvents(emittedEvents:
|
|
99
|
+
static parseDepositEvents(emittedEvents: StarknetEmittedEvent[], pool: PoolInfo): (StarknetDepositedEventData & {
|
|
86
100
|
blockNumber: import("starknet").BlockNumber | undefined;
|
|
87
101
|
transactionHash: string | undefined;
|
|
88
102
|
})[];
|
|
89
|
-
static parseWithdrawalEvents(emittedEvents:
|
|
103
|
+
static parseWithdrawalEvents(emittedEvents: StarknetEmittedEvent[], pool: PoolInfo): (StarknetWithdrawnEventData & {
|
|
90
104
|
blockNumber: import("starknet").BlockNumber | undefined;
|
|
91
105
|
transactionHash: string | undefined;
|
|
92
106
|
})[];
|
|
93
|
-
static parseRagequitEvents(emittedEvents:
|
|
107
|
+
static parseRagequitEvents(emittedEvents: StarknetEmittedEvent[], pool: PoolInfo): (StarknetRageQuitEventData & {
|
|
94
108
|
blockNumber: import("starknet").BlockNumber | undefined;
|
|
95
109
|
transactionHash: string | undefined;
|
|
96
110
|
})[];
|
package/dist/data.service.js
CHANGED
|
@@ -1,18 +1,21 @@
|
|
|
1
|
-
import { AbiParser2, events, hash, num
|
|
1
|
+
import { AbiParser2, events, hash, num } from "starknet";
|
|
2
2
|
import { PrivacyPoolABI } from "./abis/PrivacyPool.abi.js";
|
|
3
|
-
import { SNBaseErrorCode, SNDataError, StarknetSDKError
|
|
3
|
+
import { SNBaseErrorCode, SNDataError, StarknetSDKError } from "./errors/index.js";
|
|
4
4
|
// Calculate event selectors using Starknet keccak
|
|
5
5
|
export const DEPOSIT_EVENT_SELECTOR = num.toHex(hash.starknetKeccak("Deposited")); // 0x69105484e3b5f553164aa6de1f67321ea2757275a5e614365c90b9ed0a5e9b
|
|
6
6
|
export const WITHDRAWAL_EVENT_SELECTOR = num.toHex(hash.starknetKeccak("Withdrawn")); // 0x36a4d15ab9e146faab90d4abc1c0cad17c4ded24551c781ba100392b5a70248
|
|
7
7
|
export const RAGEQUIT_EVENT_SELECTOR = num.toHex(hash.starknetKeccak("RageQuit")); // 0x2a2469e4569da9d3c3df9bc1a2ddece1e640a89b8ecd537da96f064d64c8183
|
|
8
|
+
export const AUDIT_EVENT_SELECTOR = num.toHex(hash.starknetKeccak("AuditEvent"));
|
|
8
9
|
// ABI event names for direct selection
|
|
9
10
|
export const DEPOSIT_EVENT_ABI_NAME = "privacy_pools::interfaces::IPool::Deposited";
|
|
10
11
|
export const WITHDRAWAL_EVENT_ABI_NAME = "privacy_pools::interfaces::IPool::Withdrawn";
|
|
11
12
|
export const RAGEQUIT_EVENT_ABI_NAME = "privacy_pools::interfaces::IPool::RageQuit";
|
|
13
|
+
export const AUDIT_EVENT_ABI_NAME = "privacy_pools::interfaces::IPool::AuditEvent";
|
|
12
14
|
export const AbiEventName = {
|
|
13
15
|
Deposit: DEPOSIT_EVENT_ABI_NAME,
|
|
14
16
|
Withdraw: WITHDRAWAL_EVENT_ABI_NAME,
|
|
15
17
|
Ragequit: RAGEQUIT_EVENT_ABI_NAME,
|
|
18
|
+
Audit: AUDIT_EVENT_ABI_NAME,
|
|
16
19
|
};
|
|
17
20
|
/**
|
|
18
21
|
* Starknet implementation of DataService for privacy pool event fetching.
|
|
@@ -34,9 +37,12 @@ export class StarknetDataService {
|
|
|
34
37
|
this.provider = provider;
|
|
35
38
|
}
|
|
36
39
|
async getEvents(eventFilter) {
|
|
37
|
-
let { continuation_token, events } = await this.provider.getEvents(eventFilter);
|
|
40
|
+
let { continuation_token, events } = (await this.provider.getEvents(eventFilter));
|
|
38
41
|
while (continuation_token) {
|
|
39
|
-
const { continuation_token: newToken, events: newEvents } = await this.provider.getEvents({
|
|
42
|
+
const { continuation_token: newToken, events: newEvents } = (await this.provider.getEvents({
|
|
43
|
+
...eventFilter,
|
|
44
|
+
continuation_token,
|
|
45
|
+
}));
|
|
40
46
|
events = [...events, ...newEvents];
|
|
41
47
|
continuation_token = newToken;
|
|
42
48
|
}
|
|
@@ -49,14 +55,15 @@ export class StarknetDataService {
|
|
|
49
55
|
* @returns Array of deposit events compatible with AccountService interface
|
|
50
56
|
* @throws {StarknetSDKError} If provider is not configured or network error occurs
|
|
51
57
|
*/
|
|
52
|
-
async getDeposits(pool, fromBlock = pool.deploymentBlock) {
|
|
58
|
+
async getDeposits(pool, fromBlock = pool.deploymentBlock, label) {
|
|
53
59
|
try {
|
|
60
|
+
const keys = label ? [[DEPOSIT_EVENT_SELECTOR], [], [String(label)]] : [[DEPOSIT_EVENT_SELECTOR]];
|
|
54
61
|
// Fetch events using Starknet provider
|
|
55
62
|
const eventsResult = await this.getEvents({
|
|
56
63
|
from_block: { block_number: Number(fromBlock) },
|
|
57
64
|
to_block: "latest",
|
|
58
65
|
address: pool.address,
|
|
59
|
-
keys
|
|
66
|
+
keys, // Filter by deposit event selector
|
|
60
67
|
chunk_size: 1000, // Starknet pagination
|
|
61
68
|
});
|
|
62
69
|
// Parse all events at once using starknet.js event parser
|
|
@@ -168,6 +175,40 @@ export class StarknetDataService {
|
|
|
168
175
|
throw new StarknetSDKError(`Failed to fetch ragequits: ${error instanceof Error ? error.message : "Unknown error"}`, SNBaseErrorCode.UNKNOWN);
|
|
169
176
|
}
|
|
170
177
|
}
|
|
178
|
+
async getAuditEventForTag(tag, pool, fromBlock = pool.deploymentBlock) {
|
|
179
|
+
try {
|
|
180
|
+
const eventsResult = await this.getEvents({
|
|
181
|
+
from_block: { block_number: Number(fromBlock) },
|
|
182
|
+
to_block: "latest",
|
|
183
|
+
address: pool.address,
|
|
184
|
+
keys: [[AUDIT_EVENT_SELECTOR], [String(tag)]],
|
|
185
|
+
chunk_size: 1000,
|
|
186
|
+
});
|
|
187
|
+
// Parse all events at once using starknet.js event parser
|
|
188
|
+
const abiEvents = events.getAbiEvents(PrivacyPoolABI);
|
|
189
|
+
const parsedEvents = events.parseEvents(eventsResult, abiEvents, {}, {}, this.abiParser);
|
|
190
|
+
return parsedEvents
|
|
191
|
+
.filter((parsedEvent) => parsedEvent[AUDIT_EVENT_ABI_NAME] !== undefined)
|
|
192
|
+
.map((parsedEvent) => ({
|
|
193
|
+
eventData: parsedEvent[AUDIT_EVENT_ABI_NAME],
|
|
194
|
+
blockNumber: parsedEvent.block_number,
|
|
195
|
+
transactionHash: parsedEvent.transaction_hash,
|
|
196
|
+
}))
|
|
197
|
+
.map(({ eventData, blockNumber, transactionHash }) => ({
|
|
198
|
+
tag: eventData.tag,
|
|
199
|
+
ciphertext: eventData.ciphertext,
|
|
200
|
+
prevNullifierHash: eventData.prevNullifierHash,
|
|
201
|
+
newCommitment: eventData.newCommitment,
|
|
202
|
+
blockNumber: BigInt(blockNumber || 0),
|
|
203
|
+
transactionHash: transactionHash || "0x0",
|
|
204
|
+
}));
|
|
205
|
+
}
|
|
206
|
+
catch (error) {
|
|
207
|
+
if (error instanceof StarknetSDKError)
|
|
208
|
+
throw error;
|
|
209
|
+
throw new StarknetSDKError(`Failed to fetch ragequits: ${error instanceof Error ? error.message : "Unknown error"}`, SNBaseErrorCode.UNKNOWN);
|
|
210
|
+
}
|
|
211
|
+
}
|
|
171
212
|
static parseGenericEvents(abiEventName, emittedEvents, pool) {
|
|
172
213
|
const poolAbiEvents = events.getAbiEvents(PrivacyPoolABI);
|
|
173
214
|
const parsedEvents = events.parseEvents(emittedEvents.filter((e) => num.toBigInt(e.from_address) === num.toBigInt(pool.address)), poolAbiEvents, {}, {}, StarknetDataService.abiParser);
|
|
@@ -195,12 +236,14 @@ export class StarknetDataService {
|
|
|
195
236
|
const receipt = await this.provider.getTransactionReceipt(transactionHash);
|
|
196
237
|
if (!receipt.isSuccess())
|
|
197
238
|
throw SNDataError.noEventsToParse("Tx was not succesful");
|
|
198
|
-
const emmitedEvents = receipt.value.events.map((e) => {
|
|
239
|
+
const emmitedEvents = receipt.value.events.map((e, event_index) => {
|
|
199
240
|
return {
|
|
200
241
|
...e,
|
|
201
242
|
block_hash: receipt.value.block_hash,
|
|
202
243
|
block_number: receipt.value.block_number,
|
|
203
244
|
transaction_hash: transactionHash,
|
|
245
|
+
event_index,
|
|
246
|
+
transaction_index: 0,
|
|
204
247
|
};
|
|
205
248
|
});
|
|
206
249
|
return StarknetDataService.parseGenericEvents(abiEventName, emmitedEvents, pool);
|
package/dist/data.service.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"data.service.js","sourceRoot":"","sources":["../src/data.service.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"data.service.js","sourceRoot":"","sources":["../src/data.service.ts"],"names":[],"mappings":"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"}
|
|
@@ -31,7 +31,7 @@ export const CONTRACT_ERROR_CODES = {
|
|
|
31
31
|
"0x506f6f6c206e6f742072656769737465726564": "Pool not registered",
|
|
32
32
|
"0x507265636f6d6d69746d656e742075736564": "Precommitment used",
|
|
33
33
|
"0x72656c617965722066656520544f2048494748": "relayer fee TO HIGH",
|
|
34
|
-
"0x56616c7565206c6573732074686174206d696e696d756d": "Value less that minimum"
|
|
34
|
+
"0x56616c7565206c6573732074686174206d696e696d756d": "Value less that minimum",
|
|
35
35
|
};
|
|
36
36
|
/**
|
|
37
37
|
* Parses a contract error string to extract a human-readable error message.
|
package/dist/errors/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/errors/index.ts"],"names":[],"mappings":"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"}
|
package/dist/garaga.js
CHANGED
|
@@ -1,13 +1,19 @@
|
|
|
1
1
|
import * as garaga from "garaga";
|
|
2
2
|
let _initialized = false;
|
|
3
|
-
|
|
3
|
+
let _error = null;
|
|
4
|
+
garaga.init()
|
|
5
|
+
.then(() => _initialized = true)
|
|
6
|
+
.catch((e) => _error = e);
|
|
4
7
|
function sleep(ms) {
|
|
5
|
-
return new Promise(res => setTimeout(res, ms));
|
|
8
|
+
return new Promise((res) => setTimeout(res, ms));
|
|
6
9
|
}
|
|
7
10
|
async function _waitUntilReady() {
|
|
8
|
-
while (!_initialized) {
|
|
11
|
+
while ((!_initialized) && (_error === null)) {
|
|
9
12
|
await sleep(100);
|
|
10
13
|
}
|
|
14
|
+
if (_error !== null) {
|
|
15
|
+
throw _error;
|
|
16
|
+
}
|
|
11
17
|
}
|
|
12
18
|
export async function getGroth16CallData(proof, verifyingKey) {
|
|
13
19
|
await _waitUntilReady();
|
package/dist/garaga.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"garaga.js","sourceRoot":"","sources":["../src/garaga.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AAEjC,IAAI,YAAY,
|
|
1
|
+
{"version":3,"file":"garaga.js","sourceRoot":"","sources":["../src/garaga.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,MAAM,MAAM,QAAQ,CAAC;AAEjC,IAAI,YAAY,GAAY,KAAK,CAAC;AAClC,IAAI,MAAM,GAAiB,IAAI,CAAC;AAChC,MAAM,CAAC,IAAI,EAAE;KACV,IAAI,CAAC,GAAG,EAAE,CAAC,YAAY,GAAG,IAAI,CAAC;KAC/B,KAAK,CAAC,CAAC,CAAQ,EAAE,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AAEnC,SAAS,KAAK,CAAC,EAAU;IACvB,OAAO,IAAI,OAAO,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,EAAE,EAAE,CAAC,CAAC,CAAC;AACnD,CAAC;AAED,KAAK,UAAU,eAAe;IAC5B,OAAO,CAAC,CAAC,YAAY,CAAC,IAAI,CAAC,MAAM,KAAK,IAAI,CAAC,EAAE,CAAC;QAC5C,MAAM,KAAK,CAAC,GAAG,CAAC,CAAC;IACnB,CAAC;IACD,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;QACpB,MAAM,MAAM,CAAC;IACf,CAAC;AACH,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,KAAmB,EAAE,YAAiC;IAC7F,MAAM,eAAe,EAAE,CAAC;IACxB,OAAO,MAAM,CAAC,kBAAkB,CAAC,KAAK,EAAE,YAAY,EAAE,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAC9E,CAAC"}
|
package/dist/index.d.ts
CHANGED
|
@@ -45,5 +45,7 @@ export * from "./errors/index.js";
|
|
|
45
45
|
export * from "./abis/index.js";
|
|
46
46
|
export * from "./utils.js";
|
|
47
47
|
export * from "./constants.js";
|
|
48
|
-
export { StarknetDataService
|
|
48
|
+
export { StarknetDataService } from "./data.service.js";
|
|
49
49
|
export { type StarknetAddress } from "./types/starknet.js";
|
|
50
|
+
export * from "./auditor.js";
|
|
51
|
+
export * from "./account.service.js";
|
package/dist/index.js
CHANGED
|
@@ -52,5 +52,8 @@ export * from "./utils.js";
|
|
|
52
52
|
// Constants
|
|
53
53
|
export * from "./constants.js";
|
|
54
54
|
// Data service
|
|
55
|
-
export { StarknetDataService
|
|
55
|
+
export { StarknetDataService } from "./data.service.js";
|
|
56
|
+
// Auditor
|
|
57
|
+
export * from "./auditor.js";
|
|
58
|
+
export * from "./account.service.js";
|
|
56
59
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAgCG;AAEH,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,+BAA+B,CAAC;AAIhH,qBAAqB;AACrB,cAAc,+BAA+B,CAAC;AAE9C,iBAAiB;AACjB,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAElD,wBAAwB;AACxB,cAAc,sBAAsB,CAAC;AAKrC,kCAAkC;AAClC,OAAO,EAAE,cAAc,EAAE,eAAe,EAAE,kBAAkB,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AACjH,cAAc,wBAAwB,CAAC;AACvC,cAAc,mBAAmB,CAAC;AAClC,cAAc,oBAAoB,CAAC;AAEnC,gBAAgB;AAChB,cAAc,mBAAmB,CAAC;AAElC,iCAAiC;AACjC,cAAc,iBAAiB,CAAC;AAEhC,oBAAoB;AACpB,cAAc,YAAY,CAAC;AAE3B,YAAY;AACZ,cAAc,gBAAgB,CAAC;AAE/B,eAAe;AACf,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AAIxD,UAAU;AACV,cAAc,cAAc,CAAC;AAE7B,cAAc,sBAAsB,CAAC"}
|
package/dist/sdk.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CircuitName, PrivacyPoolSDK } from "@0xbow/privacy-pools-core-sdk";
|
|
1
|
+
import { CircuitName, PrivacyPoolSDK, } from "@0xbow/privacy-pools-core-sdk";
|
|
2
2
|
import { SNContractInteractionsService } from "./contracts/contracts.service.js";
|
|
3
3
|
import { withdrawalProofToGaragaCalldata } from "./utils.js";
|
|
4
4
|
/**
|
|
@@ -56,7 +56,7 @@ export class PrivacyPoolStarknetSDK extends PrivacyPoolSDK {
|
|
|
56
56
|
const vkeyRaw = await this.circuits.getVerificationKey(CircuitName.Withdraw);
|
|
57
57
|
return {
|
|
58
58
|
withdrawalProof,
|
|
59
|
-
calldata: await withdrawalProofToGaragaCalldata(withdrawalProof, vkeyRaw)
|
|
59
|
+
calldata: await withdrawalProofToGaragaCalldata(withdrawalProof, vkeyRaw),
|
|
60
60
|
};
|
|
61
61
|
}
|
|
62
62
|
/**
|
|
@@ -70,12 +70,12 @@ export class PrivacyPoolStarknetSDK extends PrivacyPoolSDK {
|
|
|
70
70
|
* @throws {Error} If proof generation fails or verification key cannot be retrieved
|
|
71
71
|
*/
|
|
72
72
|
async proveCommitmentSN(commitment) {
|
|
73
|
-
const { preimage: { label, value, precommitment: { nullifier, secret } } } = commitment;
|
|
73
|
+
const { preimage: { label, value, precommitment: { nullifier, secret }, }, } = commitment;
|
|
74
74
|
const commitmentProof = await super.proveCommitment(value, label, nullifier, secret);
|
|
75
75
|
const vkeyRaw = await this.circuits.getVerificationKey(CircuitName.Commitment);
|
|
76
76
|
return {
|
|
77
77
|
commitmentProof,
|
|
78
|
-
calldata: await withdrawalProofToGaragaCalldata(commitmentProof, vkeyRaw)
|
|
78
|
+
calldata: await withdrawalProofToGaragaCalldata(commitmentProof, vkeyRaw),
|
|
79
79
|
};
|
|
80
80
|
}
|
|
81
81
|
/**
|
package/dist/sdk.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sdk.js","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"sdk.js","sourceRoot":"","sources":["../src/sdk.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,WAAW,EAIX,cAAc,GAGf,MAAM,+BAA+B,CAAC;AAGvC,OAAO,EAAE,6BAA6B,EAAE,MAAM,kCAAkC,CAAC;AAEjF,OAAO,EAAE,+BAA+B,EAAE,MAAM,YAAY,CAAC;AAE7D;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,OAAO,sBAAuB,SAAQ,cAAc;IACxD,QAAQ,CAAoB;IAE5B;;;;OAIG;IACH,YAAY,QAA2B;QACrC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAChB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC3B,CAAC;IAED;;;;;;OAMG;IACI,wBAAwB,CAC7B,iBAAkC,EAClC,iBAA0C;QAE1C,OAAO,IAAI,6BAA6B,CAAC,iBAAiB,EAAE,iBAAiB,CAAC,CAAC;IACjF,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,iBAAiB,CACrB,UAAsB,EACtB,KAA2B;QAE3B,MAAM,eAAe,GAAoB,MAAM,KAAK,CAAC,eAAe,CAAC,UAAU,EAAE,KAAK,CAAC,CAAC;QACxF,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC7E,OAAO;YACL,eAAe;YACf,QAAQ,EAAE,MAAM,+BAA+B,CAAC,eAAe,EAAE,OAAO,CAAC;SAC1E,CAAC;IACJ,CAAC;IAED;;;;;;;;;OASG;IACH,KAAK,CAAC,iBAAiB,CAAC,UAAsB;QAC5C,MAAM,EACJ,QAAQ,EAAE,EACR,KAAK,EACL,KAAK,EACL,aAAa,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,GACrC,GACF,GAAG,UAAU,CAAC;QACf,MAAM,eAAe,GAAoB,MAAM,KAAK,CAAC,eAAe,CAAC,KAAK,EAAE,KAAK,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;QACtG,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAC/E,OAAO;YACL,eAAe;YACf,QAAQ,EAAE,MAAM,+BAA+B,CAAC,eAAe,EAAE,OAAO,CAAC;SAC1E,CAAC;IACJ,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,oCAAoC,CAAC,eAAgC;QACzE,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAC;QAC7E,OAAO,MAAM,+BAA+B,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;IACzE,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,sCAAsC,CAAC,eAAgC;QAC3E,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,QAAQ,CAAC,kBAAkB,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;QAC/E,OAAO,MAAM,+BAA+B,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC;IACzE,CAAC;CACF"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"conversions.js","sourceRoot":"","sources":["../../src/types/conversions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAInD;;;;;;GAMG;AACH,MAAM,UAAU,QAAQ,CAAC,CAAW;IAClC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;IACjB,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,SAAS;QACpC,MAAM,aAAa,CAAC,UAAU,CAAC,4DAA4D,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACzG,OAAO;QACL,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;QACZ,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;QACZ,OAAO,EAAE,CAAC;KACX,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,QAAQ,CAAC,CAAa;IACpC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;IAEjB,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QACb,MAAM,aAAa,CAAC,UAAU,CAAC,kDAAkD,CAAC,CAAC;IACrF,CAAC;IAED,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;IACnB,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;IAEnB,IAAI,EAAE,KAAK,SAAS,IAAI,EAAE,KAAK,SAAS,IAAI,EAAE,KAAK,SAAS,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;QACjF,MAAM,aAAa,CAAC,UAAU,
|
|
1
|
+
{"version":3,"file":"conversions.js","sourceRoot":"","sources":["../../src/types/conversions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAC;AAInD;;;;;;GAMG;AACH,MAAM,UAAU,QAAQ,CAAC,CAAW;IAClC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;IACjB,IAAI,CAAC,KAAK,SAAS,IAAI,CAAC,KAAK,SAAS;QACpC,MAAM,aAAa,CAAC,UAAU,CAAC,4DAA4D,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACzG,OAAO;QACL,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;QACZ,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;QACZ,OAAO,EAAE,CAAC;KACX,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,QAAQ,CAAC,CAAa;IACpC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC;IAEjB,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC;QACb,MAAM,aAAa,CAAC,UAAU,CAAC,kDAAkD,CAAC,CAAC;IACrF,CAAC;IAED,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;IACnB,MAAM,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC;IAEnB,IAAI,EAAE,KAAK,SAAS,IAAI,EAAE,KAAK,SAAS,IAAI,EAAE,KAAK,SAAS,IAAI,EAAE,KAAK,SAAS,EAAE,CAAC;QACjF,MAAM,aAAa,CAAC,UAAU,CAC5B,yDAAyD,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,IAAI,CACvF,CAAC;IACJ,CAAC;IAED,OAAO;QACL,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;QAC3B,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,MAAM,CAAC,EAAE,CAAC,CAAC;QAC3B,OAAO,EAAE,CAAC;KACX,CAAC;AACJ,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,oBAAoB,CAAC,IAAiB;IACpD,OAAO;QACL,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC;QAChC,IAAI,EAAE,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC;QAC9B,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC;QAChC,KAAK,EAAE,QAAQ,CAAC,IAAI,CAAC,UAAU,CAAC;QAChC,EAAE,EAAE,IAAI,CAAC,EAAE,CAAC,GAAG,CAAC,QAAQ,CAAC;KAC1B,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,sBAAsB,CAAC,KAA0B,EAAE,YAAsB;IACvF,OAAO;QACL,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC;QACvB,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC;QACvB,CAAC,EAAE,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC;QACvB,YAAY,EAAE,YAAY,CAAC,GAAG,CAAC,MAAM,CAAC;QACtC,OAAO,EAAE,CAAC;KACX,CAAC;AACJ,CAAC"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { BigNumberish } from "starknet";
|
|
2
2
|
import { StarknetAddress } from "./starknet.js";
|
|
3
|
+
import { AuditorData } from "../auditor.js";
|
|
3
4
|
export interface AssetConfig {
|
|
4
5
|
pool: StarknetAddress;
|
|
5
6
|
maxRelayFeeBPS: bigint;
|
|
@@ -14,6 +15,7 @@ export interface AssetConfig {
|
|
|
14
15
|
export interface Withdrawal {
|
|
15
16
|
/** The address of the processor handling this withdrawal */
|
|
16
17
|
processor: BigNumberish;
|
|
18
|
+
auditorData?: AuditorData;
|
|
17
19
|
/** Additional data required for processing the withdrawal */
|
|
18
20
|
data: BigNumberish[];
|
|
19
21
|
}
|
package/dist/types/entrypoint.js
CHANGED
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
import { cairo, CallData, num } from "starknet";
|
|
1
|
+
import { cairo, CallData, num, byteArray } from "starknet";
|
|
2
2
|
import { EntryPointABI } from "../abis/index.js";
|
|
3
3
|
import { SNFormatError } from "../errors/index.js";
|
|
4
4
|
const RelayDataAbi = [
|
|
5
5
|
{
|
|
6
|
-
|
|
6
|
+
type: "interface",
|
|
7
7
|
},
|
|
8
8
|
{
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
type: "struct",
|
|
10
|
+
name: "privacy_pools::interfaces::IEntryPoint::RelayData",
|
|
11
|
+
members: [
|
|
12
12
|
{
|
|
13
|
-
|
|
14
|
-
|
|
13
|
+
name: "recipient",
|
|
14
|
+
type: "core::starknet::contract_address::ContractAddress",
|
|
15
15
|
},
|
|
16
16
|
{
|
|
17
|
-
|
|
18
|
-
|
|
17
|
+
name: "feeRecipient",
|
|
18
|
+
type: "core::starknet::contract_address::ContractAddress",
|
|
19
19
|
},
|
|
20
20
|
{
|
|
21
|
-
|
|
22
|
-
|
|
21
|
+
name: "relayFeeBPS",
|
|
22
|
+
type: "core::integer::u256",
|
|
23
23
|
},
|
|
24
|
-
]
|
|
24
|
+
],
|
|
25
25
|
},
|
|
26
26
|
];
|
|
27
27
|
const relayDataCd = new CallData(RelayDataAbi);
|
|
@@ -39,14 +39,17 @@ export function serializeRelayData(data) {
|
|
|
39
39
|
num.toHex64(recipient),
|
|
40
40
|
num.toHex64(feeRecipient),
|
|
41
41
|
num.toHex64(low),
|
|
42
|
-
num.toHex64(high)
|
|
42
|
+
num.toHex64(high),
|
|
43
43
|
];
|
|
44
44
|
}
|
|
45
45
|
function isRelayData(data) {
|
|
46
46
|
const _data = data;
|
|
47
|
-
return (_data.feeRecipient !== undefined &&
|
|
48
|
-
|
|
49
|
-
|
|
47
|
+
return (_data.feeRecipient !== undefined &&
|
|
48
|
+
num.isBigNumberish(_data.feeRecipient) &&
|
|
49
|
+
_data.recipient !== undefined &&
|
|
50
|
+
num.isBigNumberish(_data.recipient) &&
|
|
51
|
+
_data.relayFeeBPS !== undefined &&
|
|
52
|
+
num.isBigNumberish(_data.relayFeeBPS));
|
|
50
53
|
}
|
|
51
54
|
/**
|
|
52
55
|
* Parses raw string data into a RelayData object.
|
|
@@ -57,13 +60,13 @@ function isRelayData(data) {
|
|
|
57
60
|
*/
|
|
58
61
|
export function parseRelayData(rawData) {
|
|
59
62
|
if (!rawData.every(num.isBigNumberish)) {
|
|
60
|
-
throw SNFormatError.parse(`Can't parse RelayData from ${rawData}. Some values are not BigNumberish`);
|
|
63
|
+
throw SNFormatError.parse(`Can't parse RelayData from ${rawData.toString()}. Some values are not BigNumberish`);
|
|
61
64
|
}
|
|
62
65
|
const structName = "privacy_pools::interfaces::IEntryPoint::RelayData";
|
|
63
66
|
const result = relayDataCd.decodeParameters(structName, rawData);
|
|
64
67
|
if (isRelayData(result))
|
|
65
68
|
return result;
|
|
66
|
-
throw SNFormatError.parse(`Can't parse RelayData from ${rawData}`);
|
|
69
|
+
throw SNFormatError.parse(`Can't parse RelayData from ${rawData.toString()}`);
|
|
67
70
|
}
|
|
68
71
|
/**
|
|
69
72
|
* Serializes withdrawal data into a format suitable for Starknet contract calls.
|
|
@@ -72,17 +75,33 @@ export function parseRelayData(rawData) {
|
|
|
72
75
|
* @returns Array of string representations of the withdrawal fields
|
|
73
76
|
*/
|
|
74
77
|
export function serializeWithdrawal(withdrawal) {
|
|
75
|
-
const
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
78
|
+
const result = [];
|
|
79
|
+
const { processor, auditorData, data } = withdrawal;
|
|
80
|
+
result.push(num.toHex64(processor));
|
|
81
|
+
if (auditorData === undefined) {
|
|
82
|
+
result.push(num.toHex64(1));
|
|
83
|
+
}
|
|
84
|
+
else {
|
|
85
|
+
result.push(num.toHex64(0));
|
|
86
|
+
const { tag, ciphertext } = auditorData;
|
|
87
|
+
const { low, high } = cairo.uint256(tag);
|
|
88
|
+
result.push(num.toHex64(low));
|
|
89
|
+
result.push(num.toHex64(high));
|
|
90
|
+
const array = CallData.compile([byteArray.byteArrayFromString(ciphertext)]);
|
|
91
|
+
array.forEach((x) => result.push(num.toHex64(x)));
|
|
92
|
+
}
|
|
93
|
+
result.push(num.toHex64(data.length));
|
|
94
|
+
data.forEach((x) => result.push(num.toHex64(x)));
|
|
95
|
+
return result;
|
|
81
96
|
}
|
|
82
97
|
function isWithdrawal(data) {
|
|
83
98
|
const _data = data;
|
|
84
|
-
return (_data.processor !== undefined &&
|
|
85
|
-
|
|
99
|
+
return (_data.processor !== undefined &&
|
|
100
|
+
num.isBigNumberish(_data.processor) &&
|
|
101
|
+
_data.data !== undefined &&
|
|
102
|
+
_data.data.every(num.isBigNumberish) &&
|
|
103
|
+
((_data.auditorData.Some?.ciphertext !== undefined && _data.auditorData.Some?.tag !== undefined) ||
|
|
104
|
+
_data.auditorData.None !== undefined));
|
|
86
105
|
}
|
|
87
106
|
/**
|
|
88
107
|
* Parses raw string data into a Withdrawal object.
|
|
@@ -93,12 +112,13 @@ function isWithdrawal(data) {
|
|
|
93
112
|
*/
|
|
94
113
|
export function parseWithdrawal(rawData) {
|
|
95
114
|
if (!rawData.every(num.isBigNumberish)) {
|
|
96
|
-
throw SNFormatError.parse(`Can't parse Withdrawal from ${rawData}. Some values are not BigNumberish`);
|
|
115
|
+
throw SNFormatError.parse(`Can't parse Withdrawal from ${rawData.toString()}. Some values are not BigNumberish`);
|
|
97
116
|
}
|
|
98
117
|
const structName = "privacy_pools::interfaces::Structs::Withdrawal";
|
|
99
118
|
const result = entrypointCd.decodeParameters(structName, rawData);
|
|
100
|
-
if (isWithdrawal(result))
|
|
101
|
-
return result;
|
|
102
|
-
|
|
119
|
+
if (isWithdrawal(result)) {
|
|
120
|
+
return { ...result, auditorData: result.auditorData.unwrap() };
|
|
121
|
+
}
|
|
122
|
+
throw SNFormatError.parse(`Can't parse Withdrawal from ${rawData.toString()}`);
|
|
103
123
|
}
|
|
104
124
|
//# sourceMappingURL=entrypoint.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"entrypoint.js","sourceRoot":"","sources":["../../src/types/entrypoint.ts"],"names":[],"mappings":"AAAA,OAAO,EAAgB,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,MAAM,UAAU,CAAC;
|
|
1
|
+
{"version":3,"file":"entrypoint.js","sourceRoot":"","sources":["../../src/types/entrypoint.ts"],"names":[],"mappings":"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"}
|
package/dist/types/snarkjs.d.ts
CHANGED
|
@@ -1,51 +1,12 @@
|
|
|
1
1
|
import { type Groth16Proof } from "snarkjs";
|
|
2
2
|
export type SnarkJsGroth16Proof = Groth16Proof;
|
|
3
3
|
export interface SnarkJsVkey {
|
|
4
|
-
protocol:
|
|
5
|
-
curve:
|
|
4
|
+
protocol: "groth16";
|
|
5
|
+
curve: "bn128";
|
|
6
6
|
nPublic: number;
|
|
7
|
-
vk_alpha_1: [string, string,
|
|
8
|
-
vk_beta_2: [
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
],
|
|
13
|
-
[
|
|
14
|
-
string,
|
|
15
|
-
string
|
|
16
|
-
],
|
|
17
|
-
[
|
|
18
|
-
'1',
|
|
19
|
-
'0'
|
|
20
|
-
]
|
|
21
|
-
];
|
|
22
|
-
vk_gamma_2: [
|
|
23
|
-
[
|
|
24
|
-
string,
|
|
25
|
-
string
|
|
26
|
-
],
|
|
27
|
-
[
|
|
28
|
-
string,
|
|
29
|
-
string
|
|
30
|
-
],
|
|
31
|
-
[
|
|
32
|
-
'1',
|
|
33
|
-
'0'
|
|
34
|
-
]
|
|
35
|
-
];
|
|
36
|
-
vk_delta_2: [
|
|
37
|
-
[
|
|
38
|
-
string,
|
|
39
|
-
string
|
|
40
|
-
],
|
|
41
|
-
[
|
|
42
|
-
string,
|
|
43
|
-
string
|
|
44
|
-
],
|
|
45
|
-
[
|
|
46
|
-
'1',
|
|
47
|
-
'0'
|
|
48
|
-
]
|
|
49
|
-
];
|
|
50
|
-
IC: [string, string, '1'][];
|
|
7
|
+
vk_alpha_1: [string, string, "1"];
|
|
8
|
+
vk_beta_2: [[string, string], [string, string], ["1", "0"]];
|
|
9
|
+
vk_gamma_2: [[string, string], [string, string], ["1", "0"]];
|
|
10
|
+
vk_delta_2: [[string, string], [string, string], ["1", "0"]];
|
|
11
|
+
IC: [string, string, "1"][];
|
|
51
12
|
}
|
package/dist/utils.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { WithdrawalProof } from "@0xbow/privacy-pools-core-sdk";
|
|
2
|
-
import { BigNumberish, Uint256 } from "starknet";
|
|
2
|
+
import { BigNumberish, CairoOption, Uint256 } from "starknet";
|
|
3
3
|
import { Withdrawal } from "./types/entrypoint.js";
|
|
4
4
|
import { SnarkJsVkey } from "./types/snarkjs.js";
|
|
5
5
|
import { StarknetAddress } from "./types/starknet.js";
|
|
@@ -58,5 +58,8 @@ export declare function withdrawalProofToGaragaCalldata(withdrawalProof: Withdra
|
|
|
58
58
|
* @param x - The value to convert (number, bigint, or Uint256)
|
|
59
59
|
* @returns The value as a BigInt
|
|
60
60
|
*/
|
|
61
|
-
export declare function castBigInt(x: number | bigint | Uint256): bigint;
|
|
61
|
+
export declare function castBigInt(x: number | bigint | Uint256 | BigNumberish): bigint;
|
|
62
62
|
export declare function toAddress(x: BigNumberish): StarknetAddress;
|
|
63
|
+
export declare const Some: <T>(t: T) => CairoOption<T>;
|
|
64
|
+
export declare const None: <T>() => CairoOption<T>;
|
|
65
|
+
export declare const toCairoOption: <T>(t?: T) => CairoOption<T>;
|