snarkjs-algorand 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.
@@ -0,0 +1,1482 @@
1
+ import * as _algorandfoundation_algokit_utils_types_composer from '@algorandfoundation/algokit-utils/types/composer';
2
+ import { AppCallMethodCall, TransactionComposer, SkipSignaturesSimulateOptions, RawSimulateOptions } from '@algorandfoundation/algokit-utils/types/composer';
3
+ import { SendParams, SendAtomicTransactionComposerResults } from '@algorandfoundation/algokit-utils/types/transaction';
4
+ import * as _algorandfoundation_algokit_utils_types_app from '@algorandfoundation/algokit-utils/types/app';
5
+ import { ABIReturn } from '@algorandfoundation/algokit-utils/types/app';
6
+ import { Arc56Contract } from '@algorandfoundation/algokit-utils/types/app-arc56';
7
+ import * as algosdk from 'algosdk';
8
+ import { Address, OnApplicationComplete, Transaction, TransactionSigner, modelsv2 } from 'algosdk';
9
+ import { AlgorandClient } from '@algorandfoundation/algokit-utils/types/algorand-client';
10
+ import { AppClient, AppClientParams, ResolveAppClientByCreatorAndName, ResolveAppClientByNetwork, AppClientMethodCallParams, AppClientBareCallParams, CloneAppClientParams } from '@algorandfoundation/algokit-utils/types/app-client';
11
+ import { AppFactoryDeployParams, CreateSchema } from '@algorandfoundation/algokit-utils/types/app-factory';
12
+ import { Encodable, Schema } from '../../../../encoding/encoding.js';
13
+ import { SignedTransaction } from '../../../../signedTransaction.js';
14
+ import { Address as Address$1 } from '../../../../encoding/address.js';
15
+ import { AlgorandClient as AlgorandClient$1 } from '@algorandfoundation/algokit-utils';
16
+ import * as snarkjs from 'snarkjs';
17
+
18
+ /**
19
+ * Expands types for IntelliSense so they are more human readable
20
+ * See https://stackoverflow.com/a/69288824
21
+ */
22
+ type Expand<T> = T extends (...args: infer A) => infer R ? (...args: Expand<A>) => Expand<R> : T extends infer O ? {
23
+ [K in keyof O]: O[K];
24
+ } : never;
25
+ type Proof = {
26
+ a: Uint8Array;
27
+ b: Uint8Array;
28
+ c: Uint8Array;
29
+ z: Uint8Array;
30
+ t1: Uint8Array;
31
+ t2: Uint8Array;
32
+ t3: Uint8Array;
33
+ wxi: Uint8Array;
34
+ wxiw: Uint8Array;
35
+ evalA: bigint;
36
+ evalB: bigint;
37
+ evalC: bigint;
38
+ evalS1: bigint;
39
+ evalS2: bigint;
40
+ evalZw: bigint;
41
+ };
42
+ type VerificationKey = {
43
+ qm: Uint8Array;
44
+ ql: Uint8Array;
45
+ qr: Uint8Array;
46
+ qo: Uint8Array;
47
+ qc: Uint8Array;
48
+ s1: Uint8Array;
49
+ s2: Uint8Array;
50
+ s3: Uint8Array;
51
+ power: bigint;
52
+ nPublic: bigint;
53
+ k1: bigint;
54
+ k2: bigint;
55
+ x_2: Uint8Array;
56
+ };
57
+ /**
58
+ * The argument types for the PlonkVerifier contract
59
+ */
60
+ type PlonkVerifierArgs = {
61
+ /**
62
+ * The object representation of the arguments for each method
63
+ */
64
+ obj: {
65
+ '_dummy((byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint64,uint64,uint64,uint64,byte[192]))void': {
66
+ _vk: VerificationKey;
67
+ };
68
+ 'verify(uint256[],(byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint256,uint256,uint256,uint256,uint256,uint256))void': {
69
+ signals: bigint[] | number[];
70
+ proof: Proof;
71
+ };
72
+ };
73
+ /**
74
+ * The tuple representation of the arguments for each method
75
+ */
76
+ tuple: {
77
+ '_dummy((byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint64,uint64,uint64,uint64,byte[192]))void': [_vk: VerificationKey];
78
+ 'verify(uint256[],(byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint256,uint256,uint256,uint256,uint256,uint256))void': [signals: bigint[] | number[], proof: Proof];
79
+ };
80
+ };
81
+ /**
82
+ * The return type for each method
83
+ */
84
+ type PlonkVerifierReturns = {
85
+ '_dummy((byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint64,uint64,uint64,uint64,byte[192]))void': void;
86
+ 'verify(uint256[],(byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint256,uint256,uint256,uint256,uint256,uint256))void': void;
87
+ };
88
+ /**
89
+ * Defines the types of available calls and state of the PlonkVerifier smart contract.
90
+ */
91
+ type PlonkVerifierTypes = {
92
+ /**
93
+ * Maps method signatures / names to their argument and return types.
94
+ */
95
+ methods: Record<'_dummy((byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint64,uint64,uint64,uint64,byte[192]))void' | '_dummy', {
96
+ argsObj: PlonkVerifierArgs['obj']['_dummy((byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint64,uint64,uint64,uint64,byte[192]))void'];
97
+ argsTuple: PlonkVerifierArgs['tuple']['_dummy((byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint64,uint64,uint64,uint64,byte[192]))void'];
98
+ returns: PlonkVerifierReturns['_dummy((byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint64,uint64,uint64,uint64,byte[192]))void'];
99
+ }> & Record<'verify(uint256[],(byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint256,uint256,uint256,uint256,uint256,uint256))void' | 'verify', {
100
+ argsObj: PlonkVerifierArgs['obj']['verify(uint256[],(byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint256,uint256,uint256,uint256,uint256,uint256))void'];
101
+ argsTuple: PlonkVerifierArgs['tuple']['verify(uint256[],(byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint256,uint256,uint256,uint256,uint256,uint256))void'];
102
+ returns: PlonkVerifierReturns['verify(uint256[],(byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint256,uint256,uint256,uint256,uint256,uint256))void'];
103
+ }>;
104
+ };
105
+ /**
106
+ * Defines the possible abi call signatures.
107
+ */
108
+ type PlonkVerifierSignatures = keyof PlonkVerifierTypes['methods'];
109
+ /**
110
+ * Defines the possible abi call signatures for methods that return a non-void value.
111
+ */
112
+ type PlonkVerifierNonVoidMethodSignatures = keyof PlonkVerifierTypes['methods'] extends infer T ? T extends keyof PlonkVerifierTypes['methods'] ? MethodReturn<T> extends void ? never : T : never : never;
113
+ /**
114
+ * Defines an object containing all relevant parameters for a single call to the contract.
115
+ */
116
+ type CallParams<TArgs> = Expand<Omit<AppClientMethodCallParams, 'method' | 'args' | 'onComplete'> & {
117
+ /** The args for the ABI method call, either as an ordered array or an object */
118
+ args: Expand<TArgs>;
119
+ }>;
120
+ /**
121
+ * Maps a method signature from the PlonkVerifier smart contract to the method's return type
122
+ */
123
+ type MethodReturn<TSignature extends PlonkVerifierSignatures> = PlonkVerifierTypes['methods'][TSignature]['returns'];
124
+ /**
125
+ * Defines supported create method params for this smart contract
126
+ */
127
+ type PlonkVerifierCreateCallParams = Expand<AppClientBareCallParams & {
128
+ method?: never;
129
+ } & {
130
+ onComplete?: OnApplicationComplete.NoOpOC;
131
+ } & CreateSchema>;
132
+ /**
133
+ * Defines arguments required for the deploy method.
134
+ */
135
+ type PlonkVerifierDeployParams = Expand<Omit<AppFactoryDeployParams, 'createParams' | 'updateParams' | 'deleteParams'> & {
136
+ /**
137
+ * Create transaction parameters to use if a create needs to be issued as part of deployment; use `method` to define ABI call (if available) or leave out for a bare call (if available)
138
+ */
139
+ createParams?: PlonkVerifierCreateCallParams;
140
+ }>;
141
+ /**
142
+ * A client to make calls to the PlonkVerifier smart contract
143
+ */
144
+ declare class PlonkVerifierClient {
145
+ /**
146
+ * The underlying `AppClient` for when you want to have more flexibility
147
+ */
148
+ readonly appClient: AppClient;
149
+ /**
150
+ * Creates a new instance of `PlonkVerifierClient`
151
+ *
152
+ * @param appClient An `AppClient` instance which has been created with the PlonkVerifier app spec
153
+ */
154
+ constructor(appClient: AppClient);
155
+ /**
156
+ * Creates a new instance of `PlonkVerifierClient`
157
+ *
158
+ * @param params The parameters to initialise the app client with
159
+ */
160
+ constructor(params: Omit<AppClientParams, 'appSpec'>);
161
+ /**
162
+ * Checks for decode errors on the given return value and maps the return value to the return type for the given method
163
+ * @returns The typed return value or undefined if there was no value
164
+ */
165
+ decodeReturnValue<TSignature extends PlonkVerifierNonVoidMethodSignatures>(method: TSignature, returnValue: ABIReturn | undefined): undefined;
166
+ /**
167
+ * Returns a new `PlonkVerifierClient` client, resolving the app by creator address and name
168
+ * using AlgoKit app deployment semantics (i.e. looking for the app creation transaction note).
169
+ * @param params The parameters to create the app client
170
+ */
171
+ static fromCreatorAndName(params: Omit<ResolveAppClientByCreatorAndName, 'appSpec'>): Promise<PlonkVerifierClient>;
172
+ /**
173
+ * Returns an `PlonkVerifierClient` instance for the current network based on
174
+ * pre-determined network-specific app IDs specified in the ARC-56 app spec.
175
+ *
176
+ * If no IDs are in the app spec or the network isn't recognised, an error is thrown.
177
+ * @param params The parameters to create the app client
178
+ */
179
+ static fromNetwork(params: Omit<ResolveAppClientByNetwork, 'appSpec'>): Promise<PlonkVerifierClient>;
180
+ /** The ID of the app instance this client is linked to. */
181
+ get appId(): bigint;
182
+ /** The app address of the app instance this client is linked to. */
183
+ get appAddress(): Address;
184
+ /** The name of the app. */
185
+ get appName(): string;
186
+ /** The ARC-56 app spec being used */
187
+ get appSpec(): Arc56Contract;
188
+ /** A reference to the underlying `AlgorandClient` this app client is using. */
189
+ get algorand(): AlgorandClient;
190
+ /**
191
+ * Get parameters to create transactions for the current app. A good mental model for this is that these parameters represent a deferred transaction creation.
192
+ */
193
+ readonly params: {
194
+ /**
195
+ * Gets available closeOut methods
196
+ */
197
+ closeOut: {
198
+ /**
199
+ * Makes a close out call to an existing instance of the PlonkVerifier smart contract using the `_dummy((byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint64,uint64,uint64,uint64,byte[192]))void` ABI method.
200
+ *
201
+ * Dummy function that only exists so we can have the VerificationKey type in the generated client
202
+ *
203
+ * @param params The params for the smart contract call
204
+ * @returns The closeOut params
205
+ */
206
+ _dummy: (params: CallParams<PlonkVerifierArgs["obj"]["_dummy((byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint64,uint64,uint64,uint64,byte[192]))void"] | PlonkVerifierArgs["tuple"]["_dummy((byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint64,uint64,uint64,uint64,byte[192]))void"]>) => Promise<AppCallMethodCall>;
207
+ };
208
+ /**
209
+ * Makes a clear_state call to an existing instance of the PlonkVerifier smart contract.
210
+ *
211
+ * @param params The params for the bare (raw) call
212
+ * @returns The clearState result
213
+ */
214
+ clearState: (params?: Expand<AppClientBareCallParams>) => _algorandfoundation_algokit_utils_types_composer.AppCallParams;
215
+ /**
216
+ * Makes a call to the PlonkVerifier smart contract using the `verify(uint256[],(byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint256,uint256,uint256,uint256,uint256,uint256))void` ABI method.
217
+ *
218
+ * @param params The params for the smart contract call
219
+ * @returns The call params
220
+ */
221
+ verify: (params: CallParams<PlonkVerifierArgs["obj"]["verify(uint256[],(byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint256,uint256,uint256,uint256,uint256,uint256))void"] | PlonkVerifierArgs["tuple"]["verify(uint256[],(byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint256,uint256,uint256,uint256,uint256,uint256))void"]> & {
222
+ onComplete?: OnApplicationComplete.NoOpOC;
223
+ }) => Promise<AppCallMethodCall>;
224
+ };
225
+ /**
226
+ * Create transactions for the current app
227
+ */
228
+ readonly createTransaction: {
229
+ /**
230
+ * Gets available closeOut methods
231
+ */
232
+ closeOut: {
233
+ /**
234
+ * Makes a close out call to an existing instance of the PlonkVerifier smart contract using the `_dummy((byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint64,uint64,uint64,uint64,byte[192]))void` ABI method.
235
+ *
236
+ * Dummy function that only exists so we can have the VerificationKey type in the generated client
237
+ *
238
+ * @param params The params for the smart contract call
239
+ * @returns The closeOut transaction
240
+ */
241
+ _dummy: (params: CallParams<PlonkVerifierArgs["obj"]["_dummy((byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint64,uint64,uint64,uint64,byte[192]))void"] | PlonkVerifierArgs["tuple"]["_dummy((byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint64,uint64,uint64,uint64,byte[192]))void"]>) => Promise<{
242
+ transactions: Transaction[];
243
+ methodCalls: Map<number, algosdk.ABIMethod>;
244
+ signers: Map<number, TransactionSigner>;
245
+ }>;
246
+ };
247
+ /**
248
+ * Makes a clear_state call to an existing instance of the PlonkVerifier smart contract.
249
+ *
250
+ * @param params The params for the bare (raw) call
251
+ * @returns The clearState result
252
+ */
253
+ clearState: (params?: Expand<AppClientBareCallParams>) => Promise<Transaction>;
254
+ /**
255
+ * Makes a call to the PlonkVerifier smart contract using the `verify(uint256[],(byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint256,uint256,uint256,uint256,uint256,uint256))void` ABI method.
256
+ *
257
+ * @param params The params for the smart contract call
258
+ * @returns The call transaction
259
+ */
260
+ verify: (params: CallParams<PlonkVerifierArgs["obj"]["verify(uint256[],(byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint256,uint256,uint256,uint256,uint256,uint256))void"] | PlonkVerifierArgs["tuple"]["verify(uint256[],(byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint256,uint256,uint256,uint256,uint256,uint256))void"]> & {
261
+ onComplete?: OnApplicationComplete.NoOpOC;
262
+ }) => Promise<{
263
+ transactions: Transaction[];
264
+ methodCalls: Map<number, algosdk.ABIMethod>;
265
+ signers: Map<number, TransactionSigner>;
266
+ }>;
267
+ };
268
+ /**
269
+ * Send calls to the current app
270
+ */
271
+ readonly send: {
272
+ /**
273
+ * Gets available closeOut methods
274
+ */
275
+ closeOut: {
276
+ /**
277
+ * Makes a close out call to an existing instance of the PlonkVerifier smart contract using the `_dummy((byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint64,uint64,uint64,uint64,byte[192]))void` ABI method.
278
+ *
279
+ * Dummy function that only exists so we can have the VerificationKey type in the generated client
280
+ *
281
+ * @param params The params for the smart contract call
282
+ * @returns The closeOut result
283
+ */
284
+ _dummy: (params: CallParams<PlonkVerifierArgs["obj"]["_dummy((byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint64,uint64,uint64,uint64,byte[192]))void"] | PlonkVerifierArgs["tuple"]["_dummy((byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint64,uint64,uint64,uint64,byte[192]))void"]> & SendParams) => Promise<{
285
+ return: (undefined | PlonkVerifierReturns["_dummy((byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint64,uint64,uint64,uint64,byte[192]))void"]);
286
+ groupId: string;
287
+ txIds: string[];
288
+ returns?: ABIReturn[] | undefined | undefined;
289
+ confirmations: modelsv2.PendingTransactionResponse[];
290
+ transactions: Transaction[];
291
+ confirmation: modelsv2.PendingTransactionResponse;
292
+ transaction: Transaction;
293
+ }>;
294
+ };
295
+ /**
296
+ * Makes a clear_state call to an existing instance of the PlonkVerifier smart contract.
297
+ *
298
+ * @param params The params for the bare (raw) call
299
+ * @returns The clearState result
300
+ */
301
+ clearState: (params?: Expand<AppClientBareCallParams & SendParams>) => Promise<{
302
+ groupId: string;
303
+ txIds: string[];
304
+ returns?: ABIReturn[] | undefined;
305
+ confirmations: modelsv2.PendingTransactionResponse[];
306
+ transactions: Transaction[];
307
+ confirmation: modelsv2.PendingTransactionResponse;
308
+ transaction: Transaction;
309
+ return?: ABIReturn | undefined;
310
+ }>;
311
+ /**
312
+ * Makes a call to the PlonkVerifier smart contract using the `verify(uint256[],(byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint256,uint256,uint256,uint256,uint256,uint256))void` ABI method.
313
+ *
314
+ * @param params The params for the smart contract call
315
+ * @returns The call result
316
+ */
317
+ verify: (params: CallParams<PlonkVerifierArgs["obj"]["verify(uint256[],(byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint256,uint256,uint256,uint256,uint256,uint256))void"] | PlonkVerifierArgs["tuple"]["verify(uint256[],(byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint256,uint256,uint256,uint256,uint256,uint256))void"]> & SendParams & {
318
+ onComplete?: OnApplicationComplete.NoOpOC;
319
+ }) => Promise<{
320
+ return: (undefined | PlonkVerifierReturns["verify(uint256[],(byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint256,uint256,uint256,uint256,uint256,uint256))void"]);
321
+ groupId: string;
322
+ txIds: string[];
323
+ returns?: ABIReturn[] | undefined | undefined;
324
+ confirmations: modelsv2.PendingTransactionResponse[];
325
+ transactions: Transaction[];
326
+ confirmation: modelsv2.PendingTransactionResponse;
327
+ transaction: Transaction;
328
+ }>;
329
+ };
330
+ /**
331
+ * Clone this app client with different params
332
+ *
333
+ * @param params The params to use for the the cloned app client. Omit a param to keep the original value. Set a param to override the original value. Setting to undefined will clear the original value.
334
+ * @returns A new app client with the altered params
335
+ */
336
+ clone(params: CloneAppClientParams): PlonkVerifierClient;
337
+ /**
338
+ * Methods to access state for the current PlonkVerifier app
339
+ */
340
+ state: {};
341
+ newGroup(): PlonkVerifierComposer;
342
+ }
343
+ type PlonkVerifierComposer<TReturns extends [...any[]] = []> = {
344
+ /**
345
+ * Calls the verify(uint256[],(byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint256,uint256,uint256,uint256,uint256,uint256))void ABI method.
346
+ *
347
+ * @param args The arguments for the contract call
348
+ * @param params Any additional parameters for the call
349
+ * @returns The typed transaction composer so you can fluently chain multiple calls or call execute to execute all queued up transactions
350
+ */
351
+ verify(params?: CallParams<PlonkVerifierArgs['obj']['verify(uint256[],(byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint256,uint256,uint256,uint256,uint256,uint256))void'] | PlonkVerifierArgs['tuple']['verify(uint256[],(byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint256,uint256,uint256,uint256,uint256,uint256))void']>): PlonkVerifierComposer<[...TReturns, PlonkVerifierReturns['verify(uint256[],(byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint256,uint256,uint256,uint256,uint256,uint256))void'] | undefined]>;
352
+ /**
353
+ * Gets available closeOut methods
354
+ */
355
+ readonly closeOut: {
356
+ /**
357
+ * Makes a close out call to an existing instance of the PlonkVerifier smart contract using the _dummy((byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint64,uint64,uint64,uint64,byte[192]))void ABI method.
358
+ *
359
+ * @param args The arguments for the smart contract call
360
+ * @param params Any additional parameters for the call
361
+ * @returns The typed transaction composer so you can fluently chain multiple calls or call execute to execute all queued up transactions
362
+ */
363
+ _dummy(params?: CallParams<PlonkVerifierArgs['obj']['_dummy((byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint64,uint64,uint64,uint64,byte[192]))void'] | PlonkVerifierArgs['tuple']['_dummy((byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint64,uint64,uint64,uint64,byte[192]))void']>): PlonkVerifierComposer<[...TReturns, PlonkVerifierReturns['_dummy((byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint64,uint64,uint64,uint64,byte[192]))void'] | undefined]>;
364
+ };
365
+ /**
366
+ * Makes a clear_state call to an existing instance of the PlonkVerifier smart contract.
367
+ *
368
+ * @param args The arguments for the bare call
369
+ * @returns The typed transaction composer so you can fluently chain multiple calls or call execute to execute all queued up transactions
370
+ */
371
+ clearState(params?: AppClientBareCallParams): PlonkVerifierComposer<[...TReturns, undefined]>;
372
+ /**
373
+ * Adds a transaction to the composer
374
+ *
375
+ * @param txn A transaction to add to the transaction group
376
+ * @param signer The optional signer to use when signing this transaction.
377
+ */
378
+ addTransaction(txn: Transaction, signer?: TransactionSigner): PlonkVerifierComposer<TReturns>;
379
+ /**
380
+ * Returns the underlying AtomicTransactionComposer instance
381
+ */
382
+ composer(): Promise<TransactionComposer>;
383
+ /**
384
+ * Simulates the transaction group and returns the result
385
+ */
386
+ simulate(): Promise<PlonkVerifierComposerResults<TReturns> & {
387
+ simulateResponse: modelsv2.SimulateResponse;
388
+ }>;
389
+ simulate(options: SkipSignaturesSimulateOptions): Promise<PlonkVerifierComposerResults<TReturns> & {
390
+ simulateResponse: modelsv2.SimulateResponse;
391
+ }>;
392
+ simulate(options: RawSimulateOptions): Promise<PlonkVerifierComposerResults<TReturns> & {
393
+ simulateResponse: modelsv2.SimulateResponse;
394
+ }>;
395
+ /**
396
+ * Sends the transaction group to the network and returns the results
397
+ */
398
+ send(params?: SendParams): Promise<PlonkVerifierComposerResults<TReturns>>;
399
+ };
400
+ type PlonkVerifierComposerResults<TReturns extends [...any[]]> = Expand<SendAtomicTransactionComposerResults & {
401
+ returns: TReturns;
402
+ }>;
403
+
404
+ /**
405
+ * NOTICE: This file was generated. Editing this file manually is not recommended.
406
+ */
407
+
408
+ /**
409
+ * Application state delta.
410
+ */
411
+ declare class AccountStateDelta implements Encodable {
412
+ private static encodingSchemaValue;
413
+ static get encodingSchema(): Schema;
414
+ address: string;
415
+ /**
416
+ * Application state delta.
417
+ */
418
+ delta: EvalDeltaKeyValue[];
419
+ /**
420
+ * Creates a new `AccountStateDelta` object.
421
+ * @param address -
422
+ * @param delta - Application state delta.
423
+ */
424
+ constructor({ address, delta, }: {
425
+ address: string;
426
+ delta: EvalDeltaKeyValue[];
427
+ });
428
+ getEncodingSchema(): Schema;
429
+ toEncodingData(): Map<string, unknown>;
430
+ static fromEncodingData(data: unknown): AccountStateDelta;
431
+ }
432
+ /**
433
+ * An application's initial global/local/box states that were accessed during
434
+ * simulation.
435
+ */
436
+ declare class ApplicationInitialStates implements Encodable {
437
+ private static encodingSchemaValue;
438
+ static get encodingSchema(): Schema;
439
+ /**
440
+ * Application index.
441
+ */
442
+ id: bigint;
443
+ /**
444
+ * An application's global/local/box state.
445
+ */
446
+ appBoxes?: ApplicationKVStorage;
447
+ /**
448
+ * An application's global/local/box state.
449
+ */
450
+ appGlobals?: ApplicationKVStorage;
451
+ /**
452
+ * An application's initial local states tied to different accounts.
453
+ */
454
+ appLocals?: ApplicationKVStorage[];
455
+ /**
456
+ * Creates a new `ApplicationInitialStates` object.
457
+ * @param id - Application index.
458
+ * @param appBoxes - An application's global/local/box state.
459
+ * @param appGlobals - An application's global/local/box state.
460
+ * @param appLocals - An application's initial local states tied to different accounts.
461
+ */
462
+ constructor({ id, appBoxes, appGlobals, appLocals, }: {
463
+ id: number | bigint;
464
+ appBoxes?: ApplicationKVStorage;
465
+ appGlobals?: ApplicationKVStorage;
466
+ appLocals?: ApplicationKVStorage[];
467
+ });
468
+ getEncodingSchema(): Schema;
469
+ toEncodingData(): Map<string, unknown>;
470
+ static fromEncodingData(data: unknown): ApplicationInitialStates;
471
+ }
472
+ /**
473
+ * An application's global/local/box state.
474
+ */
475
+ declare class ApplicationKVStorage implements Encodable {
476
+ private static encodingSchemaValue;
477
+ static get encodingSchema(): Schema;
478
+ /**
479
+ * Key-Value pairs representing application states.
480
+ */
481
+ kvs: AvmKeyValue[];
482
+ /**
483
+ * The address of the account associated with the local state.
484
+ */
485
+ account?: Address$1;
486
+ /**
487
+ * Creates a new `ApplicationKVStorage` object.
488
+ * @param kvs - Key-Value pairs representing application states.
489
+ * @param account - The address of the account associated with the local state.
490
+ */
491
+ constructor({ kvs, account, }: {
492
+ kvs: AvmKeyValue[];
493
+ account?: Address$1 | string;
494
+ });
495
+ getEncodingSchema(): Schema;
496
+ toEncodingData(): Map<string, unknown>;
497
+ static fromEncodingData(data: unknown): ApplicationKVStorage;
498
+ }
499
+ /**
500
+ * References an account's local state for an application.
501
+ */
502
+ declare class ApplicationLocalReference implements Encodable {
503
+ private static encodingSchemaValue;
504
+ static get encodingSchema(): Schema;
505
+ /**
506
+ * Address of the account with the local state.
507
+ */
508
+ account: Address$1;
509
+ /**
510
+ * Application ID of the local state application.
511
+ */
512
+ app: bigint;
513
+ /**
514
+ * Creates a new `ApplicationLocalReference` object.
515
+ * @param account - Address of the account with the local state.
516
+ * @param app - Application ID of the local state application.
517
+ */
518
+ constructor({ account, app, }: {
519
+ account: Address$1 | string;
520
+ app: number | bigint;
521
+ });
522
+ getEncodingSchema(): Schema;
523
+ toEncodingData(): Map<string, unknown>;
524
+ static fromEncodingData(data: unknown): ApplicationLocalReference;
525
+ }
526
+ /**
527
+ * An operation against an application's global/local/box state.
528
+ */
529
+ declare class ApplicationStateOperation implements Encodable {
530
+ private static encodingSchemaValue;
531
+ static get encodingSchema(): Schema;
532
+ /**
533
+ * Type of application state. Value `g` is **global state**, `l` is **local
534
+ * state**, `b` is **boxes**.
535
+ */
536
+ appStateType: string;
537
+ /**
538
+ * The key (name) of the global/local/box state.
539
+ */
540
+ key: Uint8Array;
541
+ /**
542
+ * Operation type. Value `w` is **write**, `d` is **delete**.
543
+ */
544
+ operation: string;
545
+ /**
546
+ * For local state changes, the address of the account associated with the local
547
+ * state.
548
+ */
549
+ account?: Address$1;
550
+ /**
551
+ * Represents an AVM value.
552
+ */
553
+ newValue?: AvmValue;
554
+ /**
555
+ * Creates a new `ApplicationStateOperation` object.
556
+ * @param appStateType - Type of application state. Value `g` is **global state**, `l` is **local
557
+ * state**, `b` is **boxes**.
558
+ * @param key - The key (name) of the global/local/box state.
559
+ * @param operation - Operation type. Value `w` is **write**, `d` is **delete**.
560
+ * @param account - For local state changes, the address of the account associated with the local
561
+ * state.
562
+ * @param newValue - Represents an AVM value.
563
+ */
564
+ constructor({ appStateType, key, operation, account, newValue, }: {
565
+ appStateType: string;
566
+ key: string | Uint8Array;
567
+ operation: string;
568
+ account?: Address$1 | string;
569
+ newValue?: AvmValue;
570
+ });
571
+ getEncodingSchema(): Schema;
572
+ toEncodingData(): Map<string, unknown>;
573
+ static fromEncodingData(data: unknown): ApplicationStateOperation;
574
+ }
575
+ /**
576
+ * References an asset held by an account.
577
+ */
578
+ declare class AssetHoldingReference implements Encodable {
579
+ private static encodingSchemaValue;
580
+ static get encodingSchema(): Schema;
581
+ /**
582
+ * Address of the account holding the asset.
583
+ */
584
+ account: Address$1;
585
+ /**
586
+ * Asset ID of the holding.
587
+ */
588
+ asset: bigint;
589
+ /**
590
+ * Creates a new `AssetHoldingReference` object.
591
+ * @param account - Address of the account holding the asset.
592
+ * @param asset - Asset ID of the holding.
593
+ */
594
+ constructor({ account, asset, }: {
595
+ account: Address$1 | string;
596
+ asset: number | bigint;
597
+ });
598
+ getEncodingSchema(): Schema;
599
+ toEncodingData(): Map<string, unknown>;
600
+ static fromEncodingData(data: unknown): AssetHoldingReference;
601
+ }
602
+ /**
603
+ * Represents an AVM key-value pair in an application store.
604
+ */
605
+ declare class AvmKeyValue implements Encodable {
606
+ private static encodingSchemaValue;
607
+ static get encodingSchema(): Schema;
608
+ key: Uint8Array;
609
+ /**
610
+ * Represents an AVM value.
611
+ */
612
+ value: AvmValue;
613
+ /**
614
+ * Creates a new `AvmKeyValue` object.
615
+ * @param key -
616
+ * @param value - Represents an AVM value.
617
+ */
618
+ constructor({ key, value }: {
619
+ key: string | Uint8Array;
620
+ value: AvmValue;
621
+ });
622
+ getEncodingSchema(): Schema;
623
+ toEncodingData(): Map<string, unknown>;
624
+ static fromEncodingData(data: unknown): AvmKeyValue;
625
+ }
626
+ /**
627
+ * Represents an AVM value.
628
+ */
629
+ declare class AvmValue implements Encodable {
630
+ private static encodingSchemaValue;
631
+ static get encodingSchema(): Schema;
632
+ /**
633
+ * value type. Value `1` refers to **bytes**, value `2` refers to **uint64**
634
+ */
635
+ type: number;
636
+ /**
637
+ * bytes value.
638
+ */
639
+ bytes?: Uint8Array;
640
+ /**
641
+ * uint value.
642
+ */
643
+ uint?: bigint;
644
+ /**
645
+ * Creates a new `AvmValue` object.
646
+ * @param type - value type. Value `1` refers to **bytes**, value `2` refers to **uint64**
647
+ * @param bytes - bytes value.
648
+ * @param uint - uint value.
649
+ */
650
+ constructor({ type, bytes, uint, }: {
651
+ type: number | bigint;
652
+ bytes?: string | Uint8Array;
653
+ uint?: number | bigint;
654
+ });
655
+ getEncodingSchema(): Schema;
656
+ toEncodingData(): Map<string, unknown>;
657
+ static fromEncodingData(data: unknown): AvmValue;
658
+ }
659
+ /**
660
+ * References a box of an application.
661
+ */
662
+ declare class BoxReference implements Encodable {
663
+ private static encodingSchemaValue;
664
+ static get encodingSchema(): Schema;
665
+ /**
666
+ * Application ID which this box belongs to
667
+ */
668
+ app: bigint;
669
+ /**
670
+ * Base64 encoded box name
671
+ */
672
+ name: Uint8Array;
673
+ /**
674
+ * Creates a new `BoxReference` object.
675
+ * @param app - Application ID which this box belongs to
676
+ * @param name - Base64 encoded box name
677
+ */
678
+ constructor({ app, name, }: {
679
+ app: number | bigint;
680
+ name: string | Uint8Array;
681
+ });
682
+ getEncodingSchema(): Schema;
683
+ toEncodingData(): Map<string, unknown>;
684
+ static fromEncodingData(data: unknown): BoxReference;
685
+ }
686
+ /**
687
+ * Represents a TEAL value delta.
688
+ */
689
+ declare class EvalDelta implements Encodable {
690
+ private static encodingSchemaValue;
691
+ static get encodingSchema(): Schema;
692
+ /**
693
+ * (at) delta action.
694
+ */
695
+ action: number;
696
+ /**
697
+ * (bs) bytes value.
698
+ */
699
+ bytes?: string;
700
+ /**
701
+ * (ui) uint value.
702
+ */
703
+ uint?: bigint;
704
+ /**
705
+ * Creates a new `EvalDelta` object.
706
+ * @param action - (at) delta action.
707
+ * @param bytes - (bs) bytes value.
708
+ * @param uint - (ui) uint value.
709
+ */
710
+ constructor({ action, bytes, uint, }: {
711
+ action: number | bigint;
712
+ bytes?: string;
713
+ uint?: number | bigint;
714
+ });
715
+ getEncodingSchema(): Schema;
716
+ toEncodingData(): Map<string, unknown>;
717
+ static fromEncodingData(data: unknown): EvalDelta;
718
+ }
719
+ /**
720
+ * Key-value pairs for StateDelta.
721
+ */
722
+ declare class EvalDeltaKeyValue implements Encodable {
723
+ private static encodingSchemaValue;
724
+ static get encodingSchema(): Schema;
725
+ key: string;
726
+ /**
727
+ * Represents a TEAL value delta.
728
+ */
729
+ value: EvalDelta;
730
+ /**
731
+ * Creates a new `EvalDeltaKeyValue` object.
732
+ * @param key -
733
+ * @param value - Represents a TEAL value delta.
734
+ */
735
+ constructor({ key, value }: {
736
+ key: string;
737
+ value: EvalDelta;
738
+ });
739
+ getEncodingSchema(): Schema;
740
+ toEncodingData(): Map<string, unknown>;
741
+ static fromEncodingData(data: unknown): EvalDeltaKeyValue;
742
+ }
743
+ /**
744
+ * Details about a pending transaction. If the transaction was recently confirmed,
745
+ * includes confirmation details like the round and reward details.
746
+ */
747
+ declare class PendingTransactionResponse implements Encodable {
748
+ private static encodingSchemaValue;
749
+ static get encodingSchema(): Schema;
750
+ /**
751
+ * Indicates that the transaction was kicked out of this node's transaction pool
752
+ * (and specifies why that happened). An empty string indicates the transaction
753
+ * wasn't kicked out of this node's txpool due to an error.
754
+ */
755
+ poolError: string;
756
+ /**
757
+ * The raw signed transaction.
758
+ */
759
+ txn: SignedTransaction;
760
+ /**
761
+ * The application index if the transaction was found and it created an
762
+ * application.
763
+ */
764
+ applicationIndex?: bigint;
765
+ /**
766
+ * The number of the asset's unit that were transferred to the close-to address.
767
+ */
768
+ assetClosingAmount?: bigint;
769
+ /**
770
+ * The asset index if the transaction was found and it created an asset.
771
+ */
772
+ assetIndex?: bigint;
773
+ /**
774
+ * Rewards in microalgos applied to the close remainder to account.
775
+ */
776
+ closeRewards?: bigint;
777
+ /**
778
+ * Closing amount for the transaction.
779
+ */
780
+ closingAmount?: bigint;
781
+ /**
782
+ * The round where this transaction was confirmed, if present.
783
+ */
784
+ confirmedRound?: bigint;
785
+ /**
786
+ * Global state key/value changes for the application being executed by this
787
+ * transaction.
788
+ */
789
+ globalStateDelta?: EvalDeltaKeyValue[];
790
+ /**
791
+ * Inner transactions produced by application execution.
792
+ */
793
+ innerTxns?: PendingTransactionResponse[];
794
+ /**
795
+ * Local state key/value changes for the application being executed by this
796
+ * transaction.
797
+ */
798
+ localStateDelta?: AccountStateDelta[];
799
+ /**
800
+ * Logs for the application being executed by this transaction.
801
+ */
802
+ logs?: Uint8Array[];
803
+ /**
804
+ * Rewards in microalgos applied to the receiver account.
805
+ */
806
+ receiverRewards?: bigint;
807
+ /**
808
+ * Rewards in microalgos applied to the sender account.
809
+ */
810
+ senderRewards?: bigint;
811
+ /**
812
+ * Creates a new `PendingTransactionResponse` object.
813
+ * @param poolError - Indicates that the transaction was kicked out of this node's transaction pool
814
+ * (and specifies why that happened). An empty string indicates the transaction
815
+ * wasn't kicked out of this node's txpool due to an error.
816
+ * @param txn - The raw signed transaction.
817
+ * @param applicationIndex - The application index if the transaction was found and it created an
818
+ * application.
819
+ * @param assetClosingAmount - The number of the asset's unit that were transferred to the close-to address.
820
+ * @param assetIndex - The asset index if the transaction was found and it created an asset.
821
+ * @param closeRewards - Rewards in microalgos applied to the close remainder to account.
822
+ * @param closingAmount - Closing amount for the transaction.
823
+ * @param confirmedRound - The round where this transaction was confirmed, if present.
824
+ * @param globalStateDelta - Global state key/value changes for the application being executed by this
825
+ * transaction.
826
+ * @param innerTxns - Inner transactions produced by application execution.
827
+ * @param localStateDelta - Local state key/value changes for the application being executed by this
828
+ * transaction.
829
+ * @param logs - Logs for the application being executed by this transaction.
830
+ * @param receiverRewards - Rewards in microalgos applied to the receiver account.
831
+ * @param senderRewards - Rewards in microalgos applied to the sender account.
832
+ */
833
+ constructor({ poolError, txn, applicationIndex, assetClosingAmount, assetIndex, closeRewards, closingAmount, confirmedRound, globalStateDelta, innerTxns, localStateDelta, logs, receiverRewards, senderRewards, }: {
834
+ poolError: string;
835
+ txn: SignedTransaction;
836
+ applicationIndex?: number | bigint;
837
+ assetClosingAmount?: number | bigint;
838
+ assetIndex?: number | bigint;
839
+ closeRewards?: number | bigint;
840
+ closingAmount?: number | bigint;
841
+ confirmedRound?: number | bigint;
842
+ globalStateDelta?: EvalDeltaKeyValue[];
843
+ innerTxns?: PendingTransactionResponse[];
844
+ localStateDelta?: AccountStateDelta[];
845
+ logs?: Uint8Array[];
846
+ receiverRewards?: number | bigint;
847
+ senderRewards?: number | bigint;
848
+ });
849
+ getEncodingSchema(): Schema;
850
+ toEncodingData(): Map<string, unknown>;
851
+ static fromEncodingData(data: unknown): PendingTransactionResponse;
852
+ }
853
+ /**
854
+ * A write operation into a scratch slot.
855
+ */
856
+ declare class ScratchChange implements Encodable {
857
+ private static encodingSchemaValue;
858
+ static get encodingSchema(): Schema;
859
+ /**
860
+ * Represents an AVM value.
861
+ */
862
+ newValue: AvmValue;
863
+ /**
864
+ * The scratch slot written.
865
+ */
866
+ slot: number;
867
+ /**
868
+ * Creates a new `ScratchChange` object.
869
+ * @param newValue - Represents an AVM value.
870
+ * @param slot - The scratch slot written.
871
+ */
872
+ constructor({ newValue, slot, }: {
873
+ newValue: AvmValue;
874
+ slot: number | bigint;
875
+ });
876
+ getEncodingSchema(): Schema;
877
+ toEncodingData(): Map<string, unknown>;
878
+ static fromEncodingData(data: unknown): ScratchChange;
879
+ }
880
+ /**
881
+ * Initial states of resources that were accessed during simulation.
882
+ */
883
+ declare class SimulateInitialStates implements Encodable {
884
+ private static encodingSchemaValue;
885
+ static get encodingSchema(): Schema;
886
+ /**
887
+ * The initial states of accessed application before simulation. The order of this
888
+ * array is arbitrary.
889
+ */
890
+ appInitialStates?: ApplicationInitialStates[];
891
+ /**
892
+ * Creates a new `SimulateInitialStates` object.
893
+ * @param appInitialStates - The initial states of accessed application before simulation. The order of this
894
+ * array is arbitrary.
895
+ */
896
+ constructor({ appInitialStates, }: {
897
+ appInitialStates?: ApplicationInitialStates[];
898
+ });
899
+ getEncodingSchema(): Schema;
900
+ toEncodingData(): Map<string, unknown>;
901
+ static fromEncodingData(data: unknown): SimulateInitialStates;
902
+ }
903
+ /**
904
+ * Result of a transaction group simulation.
905
+ */
906
+ declare class SimulateResponse implements Encodable {
907
+ private static encodingSchemaValue;
908
+ static get encodingSchema(): Schema;
909
+ /**
910
+ * The round immediately preceding this simulation. State changes through this
911
+ * round were used to run this simulation.
912
+ */
913
+ lastRound: bigint;
914
+ /**
915
+ * A result object for each transaction group that was simulated.
916
+ */
917
+ txnGroups: SimulateTransactionGroupResult[];
918
+ /**
919
+ * The version of this response object.
920
+ */
921
+ version: number;
922
+ /**
923
+ * The set of parameters and limits override during simulation. If this set of
924
+ * parameters is present, then evaluation parameters may differ from standard
925
+ * evaluation in certain ways.
926
+ */
927
+ evalOverrides?: SimulationEvalOverrides;
928
+ /**
929
+ * An object that configures simulation execution trace.
930
+ */
931
+ execTraceConfig?: SimulateTraceConfig;
932
+ /**
933
+ * Initial states of resources that were accessed during simulation.
934
+ */
935
+ initialStates?: SimulateInitialStates;
936
+ /**
937
+ * Creates a new `SimulateResponse` object.
938
+ * @param lastRound - The round immediately preceding this simulation. State changes through this
939
+ * round were used to run this simulation.
940
+ * @param txnGroups - A result object for each transaction group that was simulated.
941
+ * @param version - The version of this response object.
942
+ * @param evalOverrides - The set of parameters and limits override during simulation. If this set of
943
+ * parameters is present, then evaluation parameters may differ from standard
944
+ * evaluation in certain ways.
945
+ * @param execTraceConfig - An object that configures simulation execution trace.
946
+ * @param initialStates - Initial states of resources that were accessed during simulation.
947
+ */
948
+ constructor({ lastRound, txnGroups, version, evalOverrides, execTraceConfig, initialStates, }: {
949
+ lastRound: number | bigint;
950
+ txnGroups: SimulateTransactionGroupResult[];
951
+ version: number | bigint;
952
+ evalOverrides?: SimulationEvalOverrides;
953
+ execTraceConfig?: SimulateTraceConfig;
954
+ initialStates?: SimulateInitialStates;
955
+ });
956
+ getEncodingSchema(): Schema;
957
+ toEncodingData(): Map<string, unknown>;
958
+ static fromEncodingData(data: unknown): SimulateResponse;
959
+ }
960
+ /**
961
+ * An object that configures simulation execution trace.
962
+ */
963
+ declare class SimulateTraceConfig implements Encodable {
964
+ private static encodingSchemaValue;
965
+ static get encodingSchema(): Schema;
966
+ /**
967
+ * A boolean option for opting in execution trace features simulation endpoint.
968
+ */
969
+ enable?: boolean;
970
+ /**
971
+ * A boolean option enabling returning scratch slot changes together with execution
972
+ * trace during simulation.
973
+ */
974
+ scratchChange?: boolean;
975
+ /**
976
+ * A boolean option enabling returning stack changes together with execution trace
977
+ * during simulation.
978
+ */
979
+ stackChange?: boolean;
980
+ /**
981
+ * A boolean option enabling returning application state changes (global, local,
982
+ * and box changes) with the execution trace during simulation.
983
+ */
984
+ stateChange?: boolean;
985
+ /**
986
+ * Creates a new `SimulateTraceConfig` object.
987
+ * @param enable - A boolean option for opting in execution trace features simulation endpoint.
988
+ * @param scratchChange - A boolean option enabling returning scratch slot changes together with execution
989
+ * trace during simulation.
990
+ * @param stackChange - A boolean option enabling returning stack changes together with execution trace
991
+ * during simulation.
992
+ * @param stateChange - A boolean option enabling returning application state changes (global, local,
993
+ * and box changes) with the execution trace during simulation.
994
+ */
995
+ constructor({ enable, scratchChange, stackChange, stateChange, }: {
996
+ enable?: boolean;
997
+ scratchChange?: boolean;
998
+ stackChange?: boolean;
999
+ stateChange?: boolean;
1000
+ });
1001
+ getEncodingSchema(): Schema;
1002
+ toEncodingData(): Map<string, unknown>;
1003
+ static fromEncodingData(data: unknown): SimulateTraceConfig;
1004
+ }
1005
+ /**
1006
+ * Simulation result for an atomic transaction group
1007
+ */
1008
+ declare class SimulateTransactionGroupResult implements Encodable {
1009
+ private static encodingSchemaValue;
1010
+ static get encodingSchema(): Schema;
1011
+ /**
1012
+ * Simulation result for individual transactions
1013
+ */
1014
+ txnResults: SimulateTransactionResult[];
1015
+ /**
1016
+ * Total budget added during execution of app calls in the transaction group.
1017
+ */
1018
+ appBudgetAdded?: number;
1019
+ /**
1020
+ * Total budget consumed during execution of app calls in the transaction group.
1021
+ */
1022
+ appBudgetConsumed?: number;
1023
+ /**
1024
+ * If present, indicates which transaction in this group caused the failure. This
1025
+ * array represents the path to the failing transaction. Indexes are zero based,
1026
+ * the first element indicates the top-level transaction, and successive elements
1027
+ * indicate deeper inner transactions.
1028
+ */
1029
+ failedAt?: number[];
1030
+ /**
1031
+ * If present, indicates that the transaction group failed and specifies why that
1032
+ * happened
1033
+ */
1034
+ failureMessage?: string;
1035
+ /**
1036
+ * These are resources that were accessed by this group that would normally have
1037
+ * caused failure, but were allowed in simulation. Depending on where this object
1038
+ * is in the response, the unnamed resources it contains may or may not qualify for
1039
+ * group resource sharing. If this is a field in SimulateTransactionGroupResult,
1040
+ * the resources do qualify, but if this is a field in SimulateTransactionResult,
1041
+ * they do not qualify. In order to make this group valid for actual submission,
1042
+ * resources that qualify for group sharing can be made available by any
1043
+ * transaction of the group; otherwise, resources must be placed in the same
1044
+ * transaction which accessed them.
1045
+ */
1046
+ unnamedResourcesAccessed?: SimulateUnnamedResourcesAccessed;
1047
+ /**
1048
+ * Creates a new `SimulateTransactionGroupResult` object.
1049
+ * @param txnResults - Simulation result for individual transactions
1050
+ * @param appBudgetAdded - Total budget added during execution of app calls in the transaction group.
1051
+ * @param appBudgetConsumed - Total budget consumed during execution of app calls in the transaction group.
1052
+ * @param failedAt - If present, indicates which transaction in this group caused the failure. This
1053
+ * array represents the path to the failing transaction. Indexes are zero based,
1054
+ * the first element indicates the top-level transaction, and successive elements
1055
+ * indicate deeper inner transactions.
1056
+ * @param failureMessage - If present, indicates that the transaction group failed and specifies why that
1057
+ * happened
1058
+ * @param unnamedResourcesAccessed - These are resources that were accessed by this group that would normally have
1059
+ * caused failure, but were allowed in simulation. Depending on where this object
1060
+ * is in the response, the unnamed resources it contains may or may not qualify for
1061
+ * group resource sharing. If this is a field in SimulateTransactionGroupResult,
1062
+ * the resources do qualify, but if this is a field in SimulateTransactionResult,
1063
+ * they do not qualify. In order to make this group valid for actual submission,
1064
+ * resources that qualify for group sharing can be made available by any
1065
+ * transaction of the group; otherwise, resources must be placed in the same
1066
+ * transaction which accessed them.
1067
+ */
1068
+ constructor({ txnResults, appBudgetAdded, appBudgetConsumed, failedAt, failureMessage, unnamedResourcesAccessed, }: {
1069
+ txnResults: SimulateTransactionResult[];
1070
+ appBudgetAdded?: number | bigint;
1071
+ appBudgetConsumed?: number | bigint;
1072
+ failedAt?: (number | bigint)[];
1073
+ failureMessage?: string;
1074
+ unnamedResourcesAccessed?: SimulateUnnamedResourcesAccessed;
1075
+ });
1076
+ getEncodingSchema(): Schema;
1077
+ toEncodingData(): Map<string, unknown>;
1078
+ static fromEncodingData(data: unknown): SimulateTransactionGroupResult;
1079
+ }
1080
+ /**
1081
+ * Simulation result for an individual transaction
1082
+ */
1083
+ declare class SimulateTransactionResult implements Encodable {
1084
+ private static encodingSchemaValue;
1085
+ static get encodingSchema(): Schema;
1086
+ /**
1087
+ * Details about a pending transaction. If the transaction was recently confirmed,
1088
+ * includes confirmation details like the round and reward details.
1089
+ */
1090
+ txnResult: PendingTransactionResponse;
1091
+ /**
1092
+ * Budget used during execution of an app call transaction. This value includes
1093
+ * budged used by inner app calls spawned by this transaction.
1094
+ */
1095
+ appBudgetConsumed?: number;
1096
+ /**
1097
+ * The execution trace of calling an app or a logic sig, containing the inner app
1098
+ * call trace in a recursive way.
1099
+ */
1100
+ execTrace?: SimulationTransactionExecTrace;
1101
+ /**
1102
+ * The account that needed to sign this transaction when no signature was provided
1103
+ * and the provided signer was incorrect.
1104
+ */
1105
+ fixedSigner?: Address$1;
1106
+ /**
1107
+ * Budget used during execution of a logic sig transaction.
1108
+ */
1109
+ logicSigBudgetConsumed?: number;
1110
+ /**
1111
+ * These are resources that were accessed by this group that would normally have
1112
+ * caused failure, but were allowed in simulation. Depending on where this object
1113
+ * is in the response, the unnamed resources it contains may or may not qualify for
1114
+ * group resource sharing. If this is a field in SimulateTransactionGroupResult,
1115
+ * the resources do qualify, but if this is a field in SimulateTransactionResult,
1116
+ * they do not qualify. In order to make this group valid for actual submission,
1117
+ * resources that qualify for group sharing can be made available by any
1118
+ * transaction of the group; otherwise, resources must be placed in the same
1119
+ * transaction which accessed them.
1120
+ */
1121
+ unnamedResourcesAccessed?: SimulateUnnamedResourcesAccessed;
1122
+ /**
1123
+ * Creates a new `SimulateTransactionResult` object.
1124
+ * @param txnResult - Details about a pending transaction. If the transaction was recently confirmed,
1125
+ * includes confirmation details like the round and reward details.
1126
+ * @param appBudgetConsumed - Budget used during execution of an app call transaction. This value includes
1127
+ * budged used by inner app calls spawned by this transaction.
1128
+ * @param execTrace - The execution trace of calling an app or a logic sig, containing the inner app
1129
+ * call trace in a recursive way.
1130
+ * @param fixedSigner - The account that needed to sign this transaction when no signature was provided
1131
+ * and the provided signer was incorrect.
1132
+ * @param logicSigBudgetConsumed - Budget used during execution of a logic sig transaction.
1133
+ * @param unnamedResourcesAccessed - These are resources that were accessed by this group that would normally have
1134
+ * caused failure, but were allowed in simulation. Depending on where this object
1135
+ * is in the response, the unnamed resources it contains may or may not qualify for
1136
+ * group resource sharing. If this is a field in SimulateTransactionGroupResult,
1137
+ * the resources do qualify, but if this is a field in SimulateTransactionResult,
1138
+ * they do not qualify. In order to make this group valid for actual submission,
1139
+ * resources that qualify for group sharing can be made available by any
1140
+ * transaction of the group; otherwise, resources must be placed in the same
1141
+ * transaction which accessed them.
1142
+ */
1143
+ constructor({ txnResult, appBudgetConsumed, execTrace, fixedSigner, logicSigBudgetConsumed, unnamedResourcesAccessed, }: {
1144
+ txnResult: PendingTransactionResponse;
1145
+ appBudgetConsumed?: number | bigint;
1146
+ execTrace?: SimulationTransactionExecTrace;
1147
+ fixedSigner?: Address$1 | string;
1148
+ logicSigBudgetConsumed?: number | bigint;
1149
+ unnamedResourcesAccessed?: SimulateUnnamedResourcesAccessed;
1150
+ });
1151
+ getEncodingSchema(): Schema;
1152
+ toEncodingData(): Map<string, unknown>;
1153
+ static fromEncodingData(data: unknown): SimulateTransactionResult;
1154
+ }
1155
+ /**
1156
+ * These are resources that were accessed by this group that would normally have
1157
+ * caused failure, but were allowed in simulation. Depending on where this object
1158
+ * is in the response, the unnamed resources it contains may or may not qualify for
1159
+ * group resource sharing. If this is a field in SimulateTransactionGroupResult,
1160
+ * the resources do qualify, but if this is a field in SimulateTransactionResult,
1161
+ * they do not qualify. In order to make this group valid for actual submission,
1162
+ * resources that qualify for group sharing can be made available by any
1163
+ * transaction of the group; otherwise, resources must be placed in the same
1164
+ * transaction which accessed them.
1165
+ */
1166
+ declare class SimulateUnnamedResourcesAccessed implements Encodable {
1167
+ private static encodingSchemaValue;
1168
+ static get encodingSchema(): Schema;
1169
+ /**
1170
+ * The unnamed accounts that were referenced. The order of this array is arbitrary.
1171
+ */
1172
+ accounts?: Address$1[];
1173
+ /**
1174
+ * The unnamed application local states that were referenced. The order of this
1175
+ * array is arbitrary.
1176
+ */
1177
+ appLocals?: ApplicationLocalReference[];
1178
+ /**
1179
+ * The unnamed applications that were referenced. The order of this array is
1180
+ * arbitrary.
1181
+ */
1182
+ apps?: bigint[];
1183
+ /**
1184
+ * The unnamed asset holdings that were referenced. The order of this array is
1185
+ * arbitrary.
1186
+ */
1187
+ assetHoldings?: AssetHoldingReference[];
1188
+ /**
1189
+ * The unnamed assets that were referenced. The order of this array is arbitrary.
1190
+ */
1191
+ assets?: bigint[];
1192
+ /**
1193
+ * The unnamed boxes that were referenced. The order of this array is arbitrary.
1194
+ */
1195
+ boxes?: BoxReference[];
1196
+ /**
1197
+ * The number of extra box references used to increase the IO budget. This is in
1198
+ * addition to the references defined in the input transaction group and any
1199
+ * referenced to unnamed boxes.
1200
+ */
1201
+ extraBoxRefs?: number;
1202
+ /**
1203
+ * Creates a new `SimulateUnnamedResourcesAccessed` object.
1204
+ * @param accounts - The unnamed accounts that were referenced. The order of this array is arbitrary.
1205
+ * @param appLocals - The unnamed application local states that were referenced. The order of this
1206
+ * array is arbitrary.
1207
+ * @param apps - The unnamed applications that were referenced. The order of this array is
1208
+ * arbitrary.
1209
+ * @param assetHoldings - The unnamed asset holdings that were referenced. The order of this array is
1210
+ * arbitrary.
1211
+ * @param assets - The unnamed assets that were referenced. The order of this array is arbitrary.
1212
+ * @param boxes - The unnamed boxes that were referenced. The order of this array is arbitrary.
1213
+ * @param extraBoxRefs - The number of extra box references used to increase the IO budget. This is in
1214
+ * addition to the references defined in the input transaction group and any
1215
+ * referenced to unnamed boxes.
1216
+ */
1217
+ constructor({ accounts, appLocals, apps, assetHoldings, assets, boxes, extraBoxRefs, }: {
1218
+ accounts?: (Address$1 | string)[];
1219
+ appLocals?: ApplicationLocalReference[];
1220
+ apps?: (number | bigint)[];
1221
+ assetHoldings?: AssetHoldingReference[];
1222
+ assets?: (number | bigint)[];
1223
+ boxes?: BoxReference[];
1224
+ extraBoxRefs?: number | bigint;
1225
+ });
1226
+ getEncodingSchema(): Schema;
1227
+ toEncodingData(): Map<string, unknown>;
1228
+ static fromEncodingData(data: unknown): SimulateUnnamedResourcesAccessed;
1229
+ }
1230
+ /**
1231
+ * The set of parameters and limits override during simulation. If this set of
1232
+ * parameters is present, then evaluation parameters may differ from standard
1233
+ * evaluation in certain ways.
1234
+ */
1235
+ declare class SimulationEvalOverrides implements Encodable {
1236
+ private static encodingSchemaValue;
1237
+ static get encodingSchema(): Schema;
1238
+ /**
1239
+ * If true, transactions without signatures are allowed and simulated as if they
1240
+ * were properly signed.
1241
+ */
1242
+ allowEmptySignatures?: boolean;
1243
+ /**
1244
+ * If true, allows access to unnamed resources during simulation.
1245
+ */
1246
+ allowUnnamedResources?: boolean;
1247
+ /**
1248
+ * The extra opcode budget added to each transaction group during simulation
1249
+ */
1250
+ extraOpcodeBudget?: number;
1251
+ /**
1252
+ * If true, signers for transactions that are missing signatures will be fixed
1253
+ * during evaluation.
1254
+ */
1255
+ fixSigners?: boolean;
1256
+ /**
1257
+ * The maximum log calls one can make during simulation
1258
+ */
1259
+ maxLogCalls?: number;
1260
+ /**
1261
+ * The maximum byte number to log during simulation
1262
+ */
1263
+ maxLogSize?: number;
1264
+ /**
1265
+ * Creates a new `SimulationEvalOverrides` object.
1266
+ * @param allowEmptySignatures - If true, transactions without signatures are allowed and simulated as if they
1267
+ * were properly signed.
1268
+ * @param allowUnnamedResources - If true, allows access to unnamed resources during simulation.
1269
+ * @param extraOpcodeBudget - The extra opcode budget added to each transaction group during simulation
1270
+ * @param fixSigners - If true, signers for transactions that are missing signatures will be fixed
1271
+ * during evaluation.
1272
+ * @param maxLogCalls - The maximum log calls one can make during simulation
1273
+ * @param maxLogSize - The maximum byte number to log during simulation
1274
+ */
1275
+ constructor({ allowEmptySignatures, allowUnnamedResources, extraOpcodeBudget, fixSigners, maxLogCalls, maxLogSize, }: {
1276
+ allowEmptySignatures?: boolean;
1277
+ allowUnnamedResources?: boolean;
1278
+ extraOpcodeBudget?: number | bigint;
1279
+ fixSigners?: boolean;
1280
+ maxLogCalls?: number | bigint;
1281
+ maxLogSize?: number | bigint;
1282
+ });
1283
+ getEncodingSchema(): Schema;
1284
+ toEncodingData(): Map<string, unknown>;
1285
+ static fromEncodingData(data: unknown): SimulationEvalOverrides;
1286
+ }
1287
+ /**
1288
+ * The set of trace information and effect from evaluating a single opcode.
1289
+ */
1290
+ declare class SimulationOpcodeTraceUnit implements Encodable {
1291
+ private static encodingSchemaValue;
1292
+ static get encodingSchema(): Schema;
1293
+ /**
1294
+ * The program counter of the current opcode being evaluated.
1295
+ */
1296
+ pc: number;
1297
+ /**
1298
+ * The writes into scratch slots.
1299
+ */
1300
+ scratchChanges?: ScratchChange[];
1301
+ /**
1302
+ * The indexes of the traces for inner transactions spawned by this opcode, if any.
1303
+ */
1304
+ spawnedInners?: number[];
1305
+ /**
1306
+ * The values added by this opcode to the stack.
1307
+ */
1308
+ stackAdditions?: AvmValue[];
1309
+ /**
1310
+ * The number of deleted stack values by this opcode.
1311
+ */
1312
+ stackPopCount?: number;
1313
+ /**
1314
+ * The operations against the current application's states.
1315
+ */
1316
+ stateChanges?: ApplicationStateOperation[];
1317
+ /**
1318
+ * Creates a new `SimulationOpcodeTraceUnit` object.
1319
+ * @param pc - The program counter of the current opcode being evaluated.
1320
+ * @param scratchChanges - The writes into scratch slots.
1321
+ * @param spawnedInners - The indexes of the traces for inner transactions spawned by this opcode, if any.
1322
+ * @param stackAdditions - The values added by this opcode to the stack.
1323
+ * @param stackPopCount - The number of deleted stack values by this opcode.
1324
+ * @param stateChanges - The operations against the current application's states.
1325
+ */
1326
+ constructor({ pc, scratchChanges, spawnedInners, stackAdditions, stackPopCount, stateChanges, }: {
1327
+ pc: number | bigint;
1328
+ scratchChanges?: ScratchChange[];
1329
+ spawnedInners?: (number | bigint)[];
1330
+ stackAdditions?: AvmValue[];
1331
+ stackPopCount?: number | bigint;
1332
+ stateChanges?: ApplicationStateOperation[];
1333
+ });
1334
+ getEncodingSchema(): Schema;
1335
+ toEncodingData(): Map<string, unknown>;
1336
+ static fromEncodingData(data: unknown): SimulationOpcodeTraceUnit;
1337
+ }
1338
+ /**
1339
+ * The execution trace of calling an app or a logic sig, containing the inner app
1340
+ * call trace in a recursive way.
1341
+ */
1342
+ declare class SimulationTransactionExecTrace implements Encodable {
1343
+ private static encodingSchemaValue;
1344
+ static get encodingSchema(): Schema;
1345
+ /**
1346
+ * SHA512_256 hash digest of the approval program executed in transaction.
1347
+ */
1348
+ approvalProgramHash?: Uint8Array;
1349
+ /**
1350
+ * Program trace that contains a trace of opcode effects in an approval program.
1351
+ */
1352
+ approvalProgramTrace?: SimulationOpcodeTraceUnit[];
1353
+ /**
1354
+ * SHA512_256 hash digest of the clear state program executed in transaction.
1355
+ */
1356
+ clearStateProgramHash?: Uint8Array;
1357
+ /**
1358
+ * Program trace that contains a trace of opcode effects in a clear state program.
1359
+ */
1360
+ clearStateProgramTrace?: SimulationOpcodeTraceUnit[];
1361
+ /**
1362
+ * If true, indicates that the clear state program failed and any persistent state
1363
+ * changes it produced should be reverted once the program exits.
1364
+ */
1365
+ clearStateRollback?: boolean;
1366
+ /**
1367
+ * The error message explaining why the clear state program failed. This field will
1368
+ * only be populated if clear-state-rollback is true and the failure was due to an
1369
+ * execution error.
1370
+ */
1371
+ clearStateRollbackError?: string;
1372
+ /**
1373
+ * An array of SimulationTransactionExecTrace representing the execution trace of
1374
+ * any inner transactions executed.
1375
+ */
1376
+ innerTrace?: SimulationTransactionExecTrace[];
1377
+ /**
1378
+ * SHA512_256 hash digest of the logic sig executed in transaction.
1379
+ */
1380
+ logicSigHash?: Uint8Array;
1381
+ /**
1382
+ * Program trace that contains a trace of opcode effects in a logic sig.
1383
+ */
1384
+ logicSigTrace?: SimulationOpcodeTraceUnit[];
1385
+ /**
1386
+ * Creates a new `SimulationTransactionExecTrace` object.
1387
+ * @param approvalProgramHash - SHA512_256 hash digest of the approval program executed in transaction.
1388
+ * @param approvalProgramTrace - Program trace that contains a trace of opcode effects in an approval program.
1389
+ * @param clearStateProgramHash - SHA512_256 hash digest of the clear state program executed in transaction.
1390
+ * @param clearStateProgramTrace - Program trace that contains a trace of opcode effects in a clear state program.
1391
+ * @param clearStateRollback - If true, indicates that the clear state program failed and any persistent state
1392
+ * changes it produced should be reverted once the program exits.
1393
+ * @param clearStateRollbackError - The error message explaining why the clear state program failed. This field will
1394
+ * only be populated if clear-state-rollback is true and the failure was due to an
1395
+ * execution error.
1396
+ * @param innerTrace - An array of SimulationTransactionExecTrace representing the execution trace of
1397
+ * any inner transactions executed.
1398
+ * @param logicSigHash - SHA512_256 hash digest of the logic sig executed in transaction.
1399
+ * @param logicSigTrace - Program trace that contains a trace of opcode effects in a logic sig.
1400
+ */
1401
+ constructor({ approvalProgramHash, approvalProgramTrace, clearStateProgramHash, clearStateProgramTrace, clearStateRollback, clearStateRollbackError, innerTrace, logicSigHash, logicSigTrace, }: {
1402
+ approvalProgramHash?: string | Uint8Array;
1403
+ approvalProgramTrace?: SimulationOpcodeTraceUnit[];
1404
+ clearStateProgramHash?: string | Uint8Array;
1405
+ clearStateProgramTrace?: SimulationOpcodeTraceUnit[];
1406
+ clearStateRollback?: boolean;
1407
+ clearStateRollbackError?: string;
1408
+ innerTrace?: SimulationTransactionExecTrace[];
1409
+ logicSigHash?: string | Uint8Array;
1410
+ logicSigTrace?: SimulationOpcodeTraceUnit[];
1411
+ });
1412
+ getEncodingSchema(): Schema;
1413
+ toEncodingData(): Map<string, unknown>;
1414
+ static fromEncodingData(data: unknown): SimulationTransactionExecTrace;
1415
+ }
1416
+
1417
+ declare function getVkey(zKey: snarkjs.ZKArtifact, curve: any): Promise<VerificationKey>;
1418
+ declare function encodeVk(vkey: VerificationKey, appSpec: Arc56Contract): Uint8Array;
1419
+ declare function getProof(path: string, curve: any): Promise<Proof>;
1420
+ declare function encodeProof(proof: any, curve: any): Proof;
1421
+ declare function encodeSignals(...inputs: string[]): bigint[];
1422
+ type ProofAndSignals = {
1423
+ proof: Proof;
1424
+ signals: bigint[];
1425
+ };
1426
+ declare class AppVerifier {
1427
+ algorand: AlgorandClient$1;
1428
+ zKey: snarkjs.ZKArtifact;
1429
+ wasmProver: snarkjs.ZKArtifact;
1430
+ appClient?: PlonkVerifierClient;
1431
+ curve?: any;
1432
+ constructor(algorand: AlgorandClient$1, zKey: snarkjs.ZKArtifact, wasmProver: snarkjs.ZKArtifact);
1433
+ private ensureCurveInstanttiation;
1434
+ deploy(params: Omit<PlonkVerifierDeployParams, "deployTimeParams"> & {
1435
+ defaultSender: Address;
1436
+ debugLogging?: boolean;
1437
+ }): Promise<PlonkVerifierClient>;
1438
+ proofAndSignals(inputs: snarkjs.CircuitSignals): Promise<ProofAndSignals>;
1439
+ private assertDeployed;
1440
+ simulateVerificationWithProofAndSignals(proofAndSignals: ProofAndSignals, simParams?: RawSimulateOptions): Promise<{
1441
+ groupId: string;
1442
+ txIds: string[];
1443
+ returns: _algorandfoundation_algokit_utils_types_app.ABIReturn[] & [void | undefined];
1444
+ confirmations: PendingTransactionResponse[];
1445
+ transactions: Transaction[];
1446
+ } & {
1447
+ simulateResponse: SimulateResponse;
1448
+ }>;
1449
+ verifyTransactionFromProofAndSignals(proofAndSignals: ProofAndSignals): Promise<Transaction>;
1450
+ callVerifyFromProofAndSignals(proofAndSignals: ProofAndSignals, callParams?: Omit<AppClientMethodCallParams, "method" | "args" | "onComplete">): Promise<{
1451
+ return: (undefined | PlonkVerifierReturns["verify(uint256[],(byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint256,uint256,uint256,uint256,uint256,uint256))void"]);
1452
+ groupId: string;
1453
+ txIds: string[];
1454
+ returns?: _algorandfoundation_algokit_utils_types_app.ABIReturn[] | undefined | undefined;
1455
+ confirmations: PendingTransactionResponse[];
1456
+ transactions: Transaction[];
1457
+ confirmation: PendingTransactionResponse;
1458
+ transaction: Transaction;
1459
+ }>;
1460
+ simulateVerification(inputs: snarkjs.CircuitSignals, simParams?: RawSimulateOptions): Promise<{
1461
+ groupId: string;
1462
+ txIds: string[];
1463
+ returns: _algorandfoundation_algokit_utils_types_app.ABIReturn[] & [void | undefined];
1464
+ confirmations: PendingTransactionResponse[];
1465
+ transactions: Transaction[];
1466
+ } & {
1467
+ simulateResponse: SimulateResponse;
1468
+ }>;
1469
+ verifyTransaction(inputs: snarkjs.CircuitSignals): Promise<Transaction>;
1470
+ callVerify(inputs: snarkjs.CircuitSignals, callParams?: Omit<AppClientMethodCallParams, "method" | "args" | "onComplete">): Promise<{
1471
+ return: (undefined | PlonkVerifierReturns["verify(uint256[],(byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],byte[96],uint256,uint256,uint256,uint256,uint256,uint256))void"]);
1472
+ groupId: string;
1473
+ txIds: string[];
1474
+ returns?: _algorandfoundation_algokit_utils_types_app.ABIReturn[] | undefined | undefined;
1475
+ confirmations: PendingTransactionResponse[];
1476
+ transactions: Transaction[];
1477
+ confirmation: PendingTransactionResponse;
1478
+ transaction: Transaction;
1479
+ }>;
1480
+ }
1481
+
1482
+ export { AppVerifier, PlonkVerifierClient, type PlonkVerifierDeployParams, type Proof, type ProofAndSignals, type VerificationKey, encodeProof, encodeSignals, encodeVk, getProof, getVkey };