algosdk 2.3.0 → 2.5.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +4 -4
- package/dist/browser/algosdk.min.js +1 -1
- package/dist/browser/algosdk.min.js.map +1 -1
- package/dist/cjs/client/urlTokenBaseHTTPClient.js +0 -3
- package/dist/cjs/client/urlTokenBaseHTTPClient.js.map +1 -1
- package/dist/cjs/client/v2/algod/algod.js +51 -0
- package/dist/cjs/client/v2/algod/algod.js.map +1 -1
- package/dist/cjs/client/v2/algod/getLedgerStateDelta.js +20 -0
- package/dist/cjs/client/v2/algod/getLedgerStateDelta.js.map +1 -0
- package/dist/cjs/client/v2/algod/getLedgerStateDeltaForTransactionGroup.js +20 -0
- package/dist/cjs/client/v2/algod/getLedgerStateDeltaForTransactionGroup.js.map +1 -0
- package/dist/cjs/client/v2/algod/getTransactionGroupLedgerStateDeltasForRound.js +25 -0
- package/dist/cjs/client/v2/algod/getTransactionGroupLedgerStateDeltasForRound.js.map +1 -0
- package/dist/cjs/client/v2/algod/models/types.js +301 -6
- package/dist/cjs/client/v2/algod/models/types.js.map +1 -1
- package/dist/cjs/client/v2/indexer/lookupAccountTransactions.js +2 -3
- package/dist/cjs/client/v2/indexer/lookupAccountTransactions.js.map +1 -1
- package/dist/cjs/client/v2/indexer/lookupAssetBalances.js +2 -1
- package/dist/cjs/client/v2/indexer/lookupAssetBalances.js.map +1 -1
- package/dist/cjs/client/v2/indexer/lookupAssetTransactions.js +2 -4
- package/dist/cjs/client/v2/indexer/lookupAssetTransactions.js.map +1 -1
- package/dist/cjs/client/v2/indexer/searchAccounts.js +2 -1
- package/dist/cjs/client/v2/indexer/searchAccounts.js.map +1 -1
- package/dist/cjs/client/v2/indexer/searchForTransactions.js +61 -62
- package/dist/cjs/client/v2/indexer/searchForTransactions.js.map +1 -1
- package/dist/cjs/client/v2/serviceClient.js +3 -0
- package/dist/cjs/client/v2/serviceClient.js.map +1 -1
- package/dist/cjs/composer.js +1 -1
- package/dist/cjs/composer.js.map +1 -1
- package/dist/cjs/nacl/naclWrappers.js +4 -0
- package/dist/cjs/nacl/naclWrappers.js.map +1 -1
- package/dist/cjs/utils/utils.js +13 -1
- package/dist/cjs/utils/utils.js.map +1 -1
- package/dist/esm/client/urlTokenBaseHTTPClient.js +0 -3
- package/dist/esm/client/urlTokenBaseHTTPClient.js.map +1 -1
- package/dist/esm/client/v2/algod/algod.js +51 -0
- package/dist/esm/client/v2/algod/algod.js.map +1 -1
- package/dist/esm/client/v2/algod/getLedgerStateDelta.js +14 -0
- package/dist/esm/client/v2/algod/getLedgerStateDelta.js.map +1 -0
- package/dist/esm/client/v2/algod/getLedgerStateDeltaForTransactionGroup.js +14 -0
- package/dist/esm/client/v2/algod/getLedgerStateDeltaForTransactionGroup.js.map +1 -0
- package/dist/esm/client/v2/algod/getTransactionGroupLedgerStateDeltasForRound.js +19 -0
- package/dist/esm/client/v2/algod/getTransactionGroupLedgerStateDeltasForRound.js.map +1 -0
- package/dist/esm/client/v2/algod/models/types.js +292 -5
- package/dist/esm/client/v2/algod/models/types.js.map +1 -1
- package/dist/esm/client/v2/indexer/lookupAccountTransactions.js +2 -3
- package/dist/esm/client/v2/indexer/lookupAccountTransactions.js.map +1 -1
- package/dist/esm/client/v2/indexer/lookupAssetBalances.js +2 -1
- package/dist/esm/client/v2/indexer/lookupAssetBalances.js.map +1 -1
- package/dist/esm/client/v2/indexer/lookupAssetTransactions.js +2 -4
- package/dist/esm/client/v2/indexer/lookupAssetTransactions.js.map +1 -1
- package/dist/esm/client/v2/indexer/searchAccounts.js +2 -1
- package/dist/esm/client/v2/indexer/searchAccounts.js.map +1 -1
- package/dist/esm/client/v2/indexer/searchForTransactions.js +61 -62
- package/dist/esm/client/v2/indexer/searchForTransactions.js.map +1 -1
- package/dist/esm/client/v2/serviceClient.js +3 -0
- package/dist/esm/client/v2/serviceClient.js.map +1 -1
- package/dist/esm/composer.js +1 -1
- package/dist/esm/composer.js.map +1 -1
- package/dist/esm/nacl/naclWrappers.js +4 -0
- package/dist/esm/nacl/naclWrappers.js.map +1 -1
- package/dist/esm/utils/utils.js +11 -0
- package/dist/esm/utils/utils.js.map +1 -1
- package/dist/types/client/v2/algod/algod.d.ts +45 -0
- package/dist/types/client/v2/algod/getLedgerStateDelta.d.ts +8 -0
- package/dist/types/client/v2/algod/getLedgerStateDeltaForTransactionGroup.d.ts +8 -0
- package/dist/types/client/v2/algod/getTransactionGroupLedgerStateDeltasForRound.d.ts +10 -0
- package/dist/types/client/v2/algod/models/types.d.ts +242 -5
- package/dist/types/client/v2/indexer/lookupAccountTransactions.d.ts +0 -2
- package/dist/types/client/v2/indexer/lookupAssetTransactions.d.ts +0 -3
- package/dist/types/client/v2/indexer/searchForTransactions.d.ts +54 -56
- package/dist/types/utils/utils.d.ts +5 -0
- package/package.json +4 -6
- package/src/client/urlTokenBaseHTTPClient.ts +0 -3
- package/src/client/v2/algod/algod.ts +62 -0
- package/src/client/v2/algod/getLedgerStateDelta.ts +16 -0
- package/src/client/v2/algod/getLedgerStateDeltaForTransactionGroup.ts +16 -0
- package/src/client/v2/algod/getTransactionGroupLedgerStateDeltasForRound.ts +29 -0
- package/src/client/v2/algod/models/types.ts +527 -0
- package/src/client/v2/indexer/lookupAccountTransactions.ts +2 -3
- package/src/client/v2/indexer/lookupAssetBalances.ts +2 -1
- package/src/client/v2/indexer/lookupAssetTransactions.ts +2 -4
- package/src/client/v2/indexer/searchAccounts.ts +2 -1
- package/src/client/v2/indexer/searchForTransactions.ts +63 -64
- package/src/client/v2/serviceClient.ts +3 -0
- package/src/composer.ts +1 -1
- package/src/nacl/naclWrappers.ts +6 -0
- package/src/utils/utils.ts +12 -0
|
@@ -1397,6 +1397,69 @@ export class AssetParams extends BaseModel {
|
|
|
1397
1397
|
}
|
|
1398
1398
|
}
|
|
1399
1399
|
|
|
1400
|
+
/**
|
|
1401
|
+
* Represents an AVM value.
|
|
1402
|
+
*/
|
|
1403
|
+
export class AvmValue extends BaseModel {
|
|
1404
|
+
/**
|
|
1405
|
+
* value type. Value `1` refers to **bytes**, value `2` refers to **uint64**
|
|
1406
|
+
*/
|
|
1407
|
+
public type: number | bigint;
|
|
1408
|
+
|
|
1409
|
+
/**
|
|
1410
|
+
* bytes value.
|
|
1411
|
+
*/
|
|
1412
|
+
public bytes?: Uint8Array;
|
|
1413
|
+
|
|
1414
|
+
/**
|
|
1415
|
+
* uint value.
|
|
1416
|
+
*/
|
|
1417
|
+
public uint?: number | bigint;
|
|
1418
|
+
|
|
1419
|
+
/**
|
|
1420
|
+
* Creates a new `AvmValue` object.
|
|
1421
|
+
* @param type - value type. Value `1` refers to **bytes**, value `2` refers to **uint64**
|
|
1422
|
+
* @param bytes - bytes value.
|
|
1423
|
+
* @param uint - uint value.
|
|
1424
|
+
*/
|
|
1425
|
+
constructor({
|
|
1426
|
+
type,
|
|
1427
|
+
bytes,
|
|
1428
|
+
uint,
|
|
1429
|
+
}: {
|
|
1430
|
+
type: number | bigint;
|
|
1431
|
+
bytes?: string | Uint8Array;
|
|
1432
|
+
uint?: number | bigint;
|
|
1433
|
+
}) {
|
|
1434
|
+
super();
|
|
1435
|
+
this.type = type;
|
|
1436
|
+
this.bytes =
|
|
1437
|
+
typeof bytes === 'string'
|
|
1438
|
+
? new Uint8Array(Buffer.from(bytes, 'base64'))
|
|
1439
|
+
: bytes;
|
|
1440
|
+
this.uint = uint;
|
|
1441
|
+
|
|
1442
|
+
this.attribute_map = {
|
|
1443
|
+
type: 'type',
|
|
1444
|
+
bytes: 'bytes',
|
|
1445
|
+
uint: 'uint',
|
|
1446
|
+
};
|
|
1447
|
+
}
|
|
1448
|
+
|
|
1449
|
+
// eslint-disable-next-line camelcase
|
|
1450
|
+
static from_obj_for_encoding(data: Record<string, any>): AvmValue {
|
|
1451
|
+
/* eslint-disable dot-notation */
|
|
1452
|
+
if (typeof data['type'] === 'undefined')
|
|
1453
|
+
throw new Error(`Response is missing required field 'type': ${data}`);
|
|
1454
|
+
return new AvmValue({
|
|
1455
|
+
type: data['type'],
|
|
1456
|
+
bytes: data['bytes'],
|
|
1457
|
+
uint: data['uint'],
|
|
1458
|
+
});
|
|
1459
|
+
/* eslint-enable dot-notation */
|
|
1460
|
+
}
|
|
1461
|
+
}
|
|
1462
|
+
|
|
1400
1463
|
/**
|
|
1401
1464
|
* Hash of a block header.
|
|
1402
1465
|
*/
|
|
@@ -1493,6 +1556,11 @@ export class Box extends BaseModel {
|
|
|
1493
1556
|
*/
|
|
1494
1557
|
public name: Uint8Array;
|
|
1495
1558
|
|
|
1559
|
+
/**
|
|
1560
|
+
* The round for which this information is relevant
|
|
1561
|
+
*/
|
|
1562
|
+
public round: number | bigint;
|
|
1563
|
+
|
|
1496
1564
|
/**
|
|
1497
1565
|
* (value) box value, base64 encoded.
|
|
1498
1566
|
*/
|
|
@@ -1501,13 +1569,16 @@ export class Box extends BaseModel {
|
|
|
1501
1569
|
/**
|
|
1502
1570
|
* Creates a new `Box` object.
|
|
1503
1571
|
* @param name - (name) box name, base64 encoded
|
|
1572
|
+
* @param round - The round for which this information is relevant
|
|
1504
1573
|
* @param value - (value) box value, base64 encoded.
|
|
1505
1574
|
*/
|
|
1506
1575
|
constructor({
|
|
1507
1576
|
name,
|
|
1577
|
+
round,
|
|
1508
1578
|
value,
|
|
1509
1579
|
}: {
|
|
1510
1580
|
name: string | Uint8Array;
|
|
1581
|
+
round: number | bigint;
|
|
1511
1582
|
value: string | Uint8Array;
|
|
1512
1583
|
}) {
|
|
1513
1584
|
super();
|
|
@@ -1515,6 +1586,7 @@ export class Box extends BaseModel {
|
|
|
1515
1586
|
typeof name === 'string'
|
|
1516
1587
|
? new Uint8Array(Buffer.from(name, 'base64'))
|
|
1517
1588
|
: name;
|
|
1589
|
+
this.round = round;
|
|
1518
1590
|
this.value =
|
|
1519
1591
|
typeof value === 'string'
|
|
1520
1592
|
? new Uint8Array(Buffer.from(value, 'base64'))
|
|
@@ -1522,6 +1594,7 @@ export class Box extends BaseModel {
|
|
|
1522
1594
|
|
|
1523
1595
|
this.attribute_map = {
|
|
1524
1596
|
name: 'name',
|
|
1597
|
+
round: 'round',
|
|
1525
1598
|
value: 'value',
|
|
1526
1599
|
};
|
|
1527
1600
|
}
|
|
@@ -1531,10 +1604,13 @@ export class Box extends BaseModel {
|
|
|
1531
1604
|
/* eslint-disable dot-notation */
|
|
1532
1605
|
if (typeof data['name'] === 'undefined')
|
|
1533
1606
|
throw new Error(`Response is missing required field 'name': ${data}`);
|
|
1607
|
+
if (typeof data['round'] === 'undefined')
|
|
1608
|
+
throw new Error(`Response is missing required field 'round': ${data}`);
|
|
1534
1609
|
if (typeof data['value'] === 'undefined')
|
|
1535
1610
|
throw new Error(`Response is missing required field 'value': ${data}`);
|
|
1536
1611
|
return new Box({
|
|
1537
1612
|
name: data['name'],
|
|
1613
|
+
round: data['round'],
|
|
1538
1614
|
value: data['value'],
|
|
1539
1615
|
});
|
|
1540
1616
|
/* eslint-enable dot-notation */
|
|
@@ -2558,6 +2634,52 @@ export class KvDelta extends BaseModel {
|
|
|
2558
2634
|
}
|
|
2559
2635
|
}
|
|
2560
2636
|
|
|
2637
|
+
/**
|
|
2638
|
+
* Contains a ledger delta for a single transaction group
|
|
2639
|
+
*/
|
|
2640
|
+
export class LedgerStateDeltaForTransactionGroup extends BaseModel {
|
|
2641
|
+
/**
|
|
2642
|
+
* Ledger StateDelta object
|
|
2643
|
+
*/
|
|
2644
|
+
public delta: Record<string, any>;
|
|
2645
|
+
|
|
2646
|
+
public ids: string[];
|
|
2647
|
+
|
|
2648
|
+
/**
|
|
2649
|
+
* Creates a new `LedgerStateDeltaForTransactionGroup` object.
|
|
2650
|
+
* @param delta - Ledger StateDelta object
|
|
2651
|
+
* @param ids -
|
|
2652
|
+
*/
|
|
2653
|
+
constructor({ delta, ids }: { delta: Record<string, any>; ids: string[] }) {
|
|
2654
|
+
super();
|
|
2655
|
+
this.delta = delta;
|
|
2656
|
+
this.ids = ids;
|
|
2657
|
+
|
|
2658
|
+
this.attribute_map = {
|
|
2659
|
+
delta: 'Delta',
|
|
2660
|
+
ids: 'Ids',
|
|
2661
|
+
};
|
|
2662
|
+
}
|
|
2663
|
+
|
|
2664
|
+
// eslint-disable-next-line camelcase
|
|
2665
|
+
static from_obj_for_encoding(
|
|
2666
|
+
data: Record<string, any>
|
|
2667
|
+
): LedgerStateDeltaForTransactionGroup {
|
|
2668
|
+
/* eslint-disable dot-notation */
|
|
2669
|
+
if (typeof data['Delta'] === 'undefined')
|
|
2670
|
+
throw new Error(`Response is missing required field 'Delta': ${data}`);
|
|
2671
|
+
if (!Array.isArray(data['Ids']))
|
|
2672
|
+
throw new Error(
|
|
2673
|
+
`Response is missing required array field 'Ids': ${data}`
|
|
2674
|
+
);
|
|
2675
|
+
return new LedgerStateDeltaForTransactionGroup({
|
|
2676
|
+
delta: data['Delta'],
|
|
2677
|
+
ids: data['Ids'],
|
|
2678
|
+
});
|
|
2679
|
+
/* eslint-enable dot-notation */
|
|
2680
|
+
}
|
|
2681
|
+
}
|
|
2682
|
+
|
|
2561
2683
|
/**
|
|
2562
2684
|
* Proof of membership and position of a light block header.
|
|
2563
2685
|
*/
|
|
@@ -3298,6 +3420,59 @@ export class PostTransactionsResponse extends BaseModel {
|
|
|
3298
3420
|
}
|
|
3299
3421
|
}
|
|
3300
3422
|
|
|
3423
|
+
/**
|
|
3424
|
+
* A write operation into a scratch slot.
|
|
3425
|
+
*/
|
|
3426
|
+
export class ScratchChange extends BaseModel {
|
|
3427
|
+
/**
|
|
3428
|
+
* Represents an AVM value.
|
|
3429
|
+
*/
|
|
3430
|
+
public newValue: AvmValue;
|
|
3431
|
+
|
|
3432
|
+
/**
|
|
3433
|
+
* The scratch slot written.
|
|
3434
|
+
*/
|
|
3435
|
+
public slot: number | bigint;
|
|
3436
|
+
|
|
3437
|
+
/**
|
|
3438
|
+
* Creates a new `ScratchChange` object.
|
|
3439
|
+
* @param newValue - Represents an AVM value.
|
|
3440
|
+
* @param slot - The scratch slot written.
|
|
3441
|
+
*/
|
|
3442
|
+
constructor({
|
|
3443
|
+
newValue,
|
|
3444
|
+
slot,
|
|
3445
|
+
}: {
|
|
3446
|
+
newValue: AvmValue;
|
|
3447
|
+
slot: number | bigint;
|
|
3448
|
+
}) {
|
|
3449
|
+
super();
|
|
3450
|
+
this.newValue = newValue;
|
|
3451
|
+
this.slot = slot;
|
|
3452
|
+
|
|
3453
|
+
this.attribute_map = {
|
|
3454
|
+
newValue: 'new-value',
|
|
3455
|
+
slot: 'slot',
|
|
3456
|
+
};
|
|
3457
|
+
}
|
|
3458
|
+
|
|
3459
|
+
// eslint-disable-next-line camelcase
|
|
3460
|
+
static from_obj_for_encoding(data: Record<string, any>): ScratchChange {
|
|
3461
|
+
/* eslint-disable dot-notation */
|
|
3462
|
+
if (typeof data['new-value'] === 'undefined')
|
|
3463
|
+
throw new Error(
|
|
3464
|
+
`Response is missing required field 'new-value': ${data}`
|
|
3465
|
+
);
|
|
3466
|
+
if (typeof data['slot'] === 'undefined')
|
|
3467
|
+
throw new Error(`Response is missing required field 'slot': ${data}`);
|
|
3468
|
+
return new ScratchChange({
|
|
3469
|
+
newValue: AvmValue.from_obj_for_encoding(data['new-value']),
|
|
3470
|
+
slot: data['slot'],
|
|
3471
|
+
});
|
|
3472
|
+
/* eslint-enable dot-notation */
|
|
3473
|
+
}
|
|
3474
|
+
}
|
|
3475
|
+
|
|
3301
3476
|
/**
|
|
3302
3477
|
* Request type for simulation endpoint.
|
|
3303
3478
|
*/
|
|
@@ -3318,31 +3493,51 @@ export class SimulateRequest extends BaseModel {
|
|
|
3318
3493
|
*/
|
|
3319
3494
|
public allowMoreLogging?: boolean;
|
|
3320
3495
|
|
|
3496
|
+
/**
|
|
3497
|
+
* An object that configures simulation execution trace.
|
|
3498
|
+
*/
|
|
3499
|
+
public execTraceConfig?: SimulateTraceConfig;
|
|
3500
|
+
|
|
3501
|
+
/**
|
|
3502
|
+
* Applies extra opcode budget during simulation for each transaction group.
|
|
3503
|
+
*/
|
|
3504
|
+
public extraOpcodeBudget?: number | bigint;
|
|
3505
|
+
|
|
3321
3506
|
/**
|
|
3322
3507
|
* Creates a new `SimulateRequest` object.
|
|
3323
3508
|
* @param txnGroups - The transaction groups to simulate.
|
|
3324
3509
|
* @param allowEmptySignatures - Allow transactions without signatures to be simulated as if they had correct
|
|
3325
3510
|
* signatures.
|
|
3326
3511
|
* @param allowMoreLogging - Lifts limits on log opcode usage during simulation.
|
|
3512
|
+
* @param execTraceConfig - An object that configures simulation execution trace.
|
|
3513
|
+
* @param extraOpcodeBudget - Applies extra opcode budget during simulation for each transaction group.
|
|
3327
3514
|
*/
|
|
3328
3515
|
constructor({
|
|
3329
3516
|
txnGroups,
|
|
3330
3517
|
allowEmptySignatures,
|
|
3331
3518
|
allowMoreLogging,
|
|
3519
|
+
execTraceConfig,
|
|
3520
|
+
extraOpcodeBudget,
|
|
3332
3521
|
}: {
|
|
3333
3522
|
txnGroups: SimulateRequestTransactionGroup[];
|
|
3334
3523
|
allowEmptySignatures?: boolean;
|
|
3335
3524
|
allowMoreLogging?: boolean;
|
|
3525
|
+
execTraceConfig?: SimulateTraceConfig;
|
|
3526
|
+
extraOpcodeBudget?: number | bigint;
|
|
3336
3527
|
}) {
|
|
3337
3528
|
super();
|
|
3338
3529
|
this.txnGroups = txnGroups;
|
|
3339
3530
|
this.allowEmptySignatures = allowEmptySignatures;
|
|
3340
3531
|
this.allowMoreLogging = allowMoreLogging;
|
|
3532
|
+
this.execTraceConfig = execTraceConfig;
|
|
3533
|
+
this.extraOpcodeBudget = extraOpcodeBudget;
|
|
3341
3534
|
|
|
3342
3535
|
this.attribute_map = {
|
|
3343
3536
|
txnGroups: 'txn-groups',
|
|
3344
3537
|
allowEmptySignatures: 'allow-empty-signatures',
|
|
3345
3538
|
allowMoreLogging: 'allow-more-logging',
|
|
3539
|
+
execTraceConfig: 'exec-trace-config',
|
|
3540
|
+
extraOpcodeBudget: 'extra-opcode-budget',
|
|
3346
3541
|
};
|
|
3347
3542
|
}
|
|
3348
3543
|
|
|
@@ -3359,6 +3554,11 @@ export class SimulateRequest extends BaseModel {
|
|
|
3359
3554
|
),
|
|
3360
3555
|
allowEmptySignatures: data['allow-empty-signatures'],
|
|
3361
3556
|
allowMoreLogging: data['allow-more-logging'],
|
|
3557
|
+
execTraceConfig:
|
|
3558
|
+
typeof data['exec-trace-config'] !== 'undefined'
|
|
3559
|
+
? SimulateTraceConfig.from_obj_for_encoding(data['exec-trace-config'])
|
|
3560
|
+
: undefined,
|
|
3561
|
+
extraOpcodeBudget: data['extra-opcode-budget'],
|
|
3362
3562
|
});
|
|
3363
3563
|
/* eslint-enable dot-notation */
|
|
3364
3564
|
}
|
|
@@ -3429,6 +3629,11 @@ export class SimulateResponse extends BaseModel {
|
|
|
3429
3629
|
*/
|
|
3430
3630
|
public evalOverrides?: SimulationEvalOverrides;
|
|
3431
3631
|
|
|
3632
|
+
/**
|
|
3633
|
+
* An object that configures simulation execution trace.
|
|
3634
|
+
*/
|
|
3635
|
+
public execTraceConfig?: SimulateTraceConfig;
|
|
3636
|
+
|
|
3432
3637
|
/**
|
|
3433
3638
|
* Creates a new `SimulateResponse` object.
|
|
3434
3639
|
* @param lastRound - The round immediately preceding this simulation. State changes through this
|
|
@@ -3438,29 +3643,34 @@ export class SimulateResponse extends BaseModel {
|
|
|
3438
3643
|
* @param evalOverrides - The set of parameters and limits override during simulation. If this set of
|
|
3439
3644
|
* parameters is present, then evaluation parameters may differ from standard
|
|
3440
3645
|
* evaluation in certain ways.
|
|
3646
|
+
* @param execTraceConfig - An object that configures simulation execution trace.
|
|
3441
3647
|
*/
|
|
3442
3648
|
constructor({
|
|
3443
3649
|
lastRound,
|
|
3444
3650
|
txnGroups,
|
|
3445
3651
|
version,
|
|
3446
3652
|
evalOverrides,
|
|
3653
|
+
execTraceConfig,
|
|
3447
3654
|
}: {
|
|
3448
3655
|
lastRound: number | bigint;
|
|
3449
3656
|
txnGroups: SimulateTransactionGroupResult[];
|
|
3450
3657
|
version: number | bigint;
|
|
3451
3658
|
evalOverrides?: SimulationEvalOverrides;
|
|
3659
|
+
execTraceConfig?: SimulateTraceConfig;
|
|
3452
3660
|
}) {
|
|
3453
3661
|
super();
|
|
3454
3662
|
this.lastRound = lastRound;
|
|
3455
3663
|
this.txnGroups = txnGroups;
|
|
3456
3664
|
this.version = version;
|
|
3457
3665
|
this.evalOverrides = evalOverrides;
|
|
3666
|
+
this.execTraceConfig = execTraceConfig;
|
|
3458
3667
|
|
|
3459
3668
|
this.attribute_map = {
|
|
3460
3669
|
lastRound: 'last-round',
|
|
3461
3670
|
txnGroups: 'txn-groups',
|
|
3462
3671
|
version: 'version',
|
|
3463
3672
|
evalOverrides: 'eval-overrides',
|
|
3673
|
+
execTraceConfig: 'exec-trace-config',
|
|
3464
3674
|
};
|
|
3465
3675
|
}
|
|
3466
3676
|
|
|
@@ -3489,6 +3699,72 @@ export class SimulateResponse extends BaseModel {
|
|
|
3489
3699
|
data['eval-overrides']
|
|
3490
3700
|
)
|
|
3491
3701
|
: undefined,
|
|
3702
|
+
execTraceConfig:
|
|
3703
|
+
typeof data['exec-trace-config'] !== 'undefined'
|
|
3704
|
+
? SimulateTraceConfig.from_obj_for_encoding(data['exec-trace-config'])
|
|
3705
|
+
: undefined,
|
|
3706
|
+
});
|
|
3707
|
+
/* eslint-enable dot-notation */
|
|
3708
|
+
}
|
|
3709
|
+
}
|
|
3710
|
+
|
|
3711
|
+
/**
|
|
3712
|
+
* An object that configures simulation execution trace.
|
|
3713
|
+
*/
|
|
3714
|
+
export class SimulateTraceConfig extends BaseModel {
|
|
3715
|
+
/**
|
|
3716
|
+
* A boolean option for opting in execution trace features simulation endpoint.
|
|
3717
|
+
*/
|
|
3718
|
+
public enable?: boolean;
|
|
3719
|
+
|
|
3720
|
+
/**
|
|
3721
|
+
* A boolean option enabling returning scratch slot changes together with execution
|
|
3722
|
+
* trace during simulation.
|
|
3723
|
+
*/
|
|
3724
|
+
public scratchChange?: boolean;
|
|
3725
|
+
|
|
3726
|
+
/**
|
|
3727
|
+
* A boolean option enabling returning stack changes together with execution trace
|
|
3728
|
+
* during simulation.
|
|
3729
|
+
*/
|
|
3730
|
+
public stackChange?: boolean;
|
|
3731
|
+
|
|
3732
|
+
/**
|
|
3733
|
+
* Creates a new `SimulateTraceConfig` object.
|
|
3734
|
+
* @param enable - A boolean option for opting in execution trace features simulation endpoint.
|
|
3735
|
+
* @param scratchChange - A boolean option enabling returning scratch slot changes together with execution
|
|
3736
|
+
* trace during simulation.
|
|
3737
|
+
* @param stackChange - A boolean option enabling returning stack changes together with execution trace
|
|
3738
|
+
* during simulation.
|
|
3739
|
+
*/
|
|
3740
|
+
constructor({
|
|
3741
|
+
enable,
|
|
3742
|
+
scratchChange,
|
|
3743
|
+
stackChange,
|
|
3744
|
+
}: {
|
|
3745
|
+
enable?: boolean;
|
|
3746
|
+
scratchChange?: boolean;
|
|
3747
|
+
stackChange?: boolean;
|
|
3748
|
+
}) {
|
|
3749
|
+
super();
|
|
3750
|
+
this.enable = enable;
|
|
3751
|
+
this.scratchChange = scratchChange;
|
|
3752
|
+
this.stackChange = stackChange;
|
|
3753
|
+
|
|
3754
|
+
this.attribute_map = {
|
|
3755
|
+
enable: 'enable',
|
|
3756
|
+
scratchChange: 'scratch-change',
|
|
3757
|
+
stackChange: 'stack-change',
|
|
3758
|
+
};
|
|
3759
|
+
}
|
|
3760
|
+
|
|
3761
|
+
// eslint-disable-next-line camelcase
|
|
3762
|
+
static from_obj_for_encoding(data: Record<string, any>): SimulateTraceConfig {
|
|
3763
|
+
/* eslint-disable dot-notation */
|
|
3764
|
+
return new SimulateTraceConfig({
|
|
3765
|
+
enable: data['enable'],
|
|
3766
|
+
scratchChange: data['scratch-change'],
|
|
3767
|
+
stackChange: data['stack-change'],
|
|
3492
3768
|
});
|
|
3493
3769
|
/* eslint-enable dot-notation */
|
|
3494
3770
|
}
|
|
@@ -3606,6 +3882,12 @@ export class SimulateTransactionResult extends BaseModel {
|
|
|
3606
3882
|
*/
|
|
3607
3883
|
public appBudgetConsumed?: number | bigint;
|
|
3608
3884
|
|
|
3885
|
+
/**
|
|
3886
|
+
* The execution trace of calling an app or a logic sig, containing the inner app
|
|
3887
|
+
* call trace in a recursive way.
|
|
3888
|
+
*/
|
|
3889
|
+
public execTrace?: SimulationTransactionExecTrace;
|
|
3890
|
+
|
|
3609
3891
|
/**
|
|
3610
3892
|
* Budget used during execution of a logic sig transaction.
|
|
3611
3893
|
*/
|
|
@@ -3617,25 +3899,31 @@ export class SimulateTransactionResult extends BaseModel {
|
|
|
3617
3899
|
* includes confirmation details like the round and reward details.
|
|
3618
3900
|
* @param appBudgetConsumed - Budget used during execution of an app call transaction. This value includes
|
|
3619
3901
|
* budged used by inner app calls spawned by this transaction.
|
|
3902
|
+
* @param execTrace - The execution trace of calling an app or a logic sig, containing the inner app
|
|
3903
|
+
* call trace in a recursive way.
|
|
3620
3904
|
* @param logicSigBudgetConsumed - Budget used during execution of a logic sig transaction.
|
|
3621
3905
|
*/
|
|
3622
3906
|
constructor({
|
|
3623
3907
|
txnResult,
|
|
3624
3908
|
appBudgetConsumed,
|
|
3909
|
+
execTrace,
|
|
3625
3910
|
logicSigBudgetConsumed,
|
|
3626
3911
|
}: {
|
|
3627
3912
|
txnResult: PendingTransactionResponse;
|
|
3628
3913
|
appBudgetConsumed?: number | bigint;
|
|
3914
|
+
execTrace?: SimulationTransactionExecTrace;
|
|
3629
3915
|
logicSigBudgetConsumed?: number | bigint;
|
|
3630
3916
|
}) {
|
|
3631
3917
|
super();
|
|
3632
3918
|
this.txnResult = txnResult;
|
|
3633
3919
|
this.appBudgetConsumed = appBudgetConsumed;
|
|
3920
|
+
this.execTrace = execTrace;
|
|
3634
3921
|
this.logicSigBudgetConsumed = logicSigBudgetConsumed;
|
|
3635
3922
|
|
|
3636
3923
|
this.attribute_map = {
|
|
3637
3924
|
txnResult: 'txn-result',
|
|
3638
3925
|
appBudgetConsumed: 'app-budget-consumed',
|
|
3926
|
+
execTrace: 'exec-trace',
|
|
3639
3927
|
logicSigBudgetConsumed: 'logic-sig-budget-consumed',
|
|
3640
3928
|
};
|
|
3641
3929
|
}
|
|
@@ -3654,6 +3942,12 @@ export class SimulateTransactionResult extends BaseModel {
|
|
|
3654
3942
|
data['txn-result']
|
|
3655
3943
|
),
|
|
3656
3944
|
appBudgetConsumed: data['app-budget-consumed'],
|
|
3945
|
+
execTrace:
|
|
3946
|
+
typeof data['exec-trace'] !== 'undefined'
|
|
3947
|
+
? SimulationTransactionExecTrace.from_obj_for_encoding(
|
|
3948
|
+
data['exec-trace']
|
|
3949
|
+
)
|
|
3950
|
+
: undefined,
|
|
3657
3951
|
logicSigBudgetConsumed: data['logic-sig-budget-consumed'],
|
|
3658
3952
|
});
|
|
3659
3953
|
/* eslint-enable dot-notation */
|
|
@@ -3672,6 +3966,11 @@ export class SimulationEvalOverrides extends BaseModel {
|
|
|
3672
3966
|
*/
|
|
3673
3967
|
public allowEmptySignatures?: boolean;
|
|
3674
3968
|
|
|
3969
|
+
/**
|
|
3970
|
+
* The extra opcode budget added to each transaction group during simulation
|
|
3971
|
+
*/
|
|
3972
|
+
public extraOpcodeBudget?: number | bigint;
|
|
3973
|
+
|
|
3675
3974
|
/**
|
|
3676
3975
|
* The maximum log calls one can make during simulation
|
|
3677
3976
|
*/
|
|
@@ -3686,25 +3985,30 @@ export class SimulationEvalOverrides extends BaseModel {
|
|
|
3686
3985
|
* Creates a new `SimulationEvalOverrides` object.
|
|
3687
3986
|
* @param allowEmptySignatures - If true, transactions without signatures are allowed and simulated as if they
|
|
3688
3987
|
* were properly signed.
|
|
3988
|
+
* @param extraOpcodeBudget - The extra opcode budget added to each transaction group during simulation
|
|
3689
3989
|
* @param maxLogCalls - The maximum log calls one can make during simulation
|
|
3690
3990
|
* @param maxLogSize - The maximum byte number to log during simulation
|
|
3691
3991
|
*/
|
|
3692
3992
|
constructor({
|
|
3693
3993
|
allowEmptySignatures,
|
|
3994
|
+
extraOpcodeBudget,
|
|
3694
3995
|
maxLogCalls,
|
|
3695
3996
|
maxLogSize,
|
|
3696
3997
|
}: {
|
|
3697
3998
|
allowEmptySignatures?: boolean;
|
|
3999
|
+
extraOpcodeBudget?: number | bigint;
|
|
3698
4000
|
maxLogCalls?: number | bigint;
|
|
3699
4001
|
maxLogSize?: number | bigint;
|
|
3700
4002
|
}) {
|
|
3701
4003
|
super();
|
|
3702
4004
|
this.allowEmptySignatures = allowEmptySignatures;
|
|
4005
|
+
this.extraOpcodeBudget = extraOpcodeBudget;
|
|
3703
4006
|
this.maxLogCalls = maxLogCalls;
|
|
3704
4007
|
this.maxLogSize = maxLogSize;
|
|
3705
4008
|
|
|
3706
4009
|
this.attribute_map = {
|
|
3707
4010
|
allowEmptySignatures: 'allow-empty-signatures',
|
|
4011
|
+
extraOpcodeBudget: 'extra-opcode-budget',
|
|
3708
4012
|
maxLogCalls: 'max-log-calls',
|
|
3709
4013
|
maxLogSize: 'max-log-size',
|
|
3710
4014
|
};
|
|
@@ -3717,6 +4021,7 @@ export class SimulationEvalOverrides extends BaseModel {
|
|
|
3717
4021
|
/* eslint-disable dot-notation */
|
|
3718
4022
|
return new SimulationEvalOverrides({
|
|
3719
4023
|
allowEmptySignatures: data['allow-empty-signatures'],
|
|
4024
|
+
extraOpcodeBudget: data['extra-opcode-budget'],
|
|
3720
4025
|
maxLogCalls: data['max-log-calls'],
|
|
3721
4026
|
maxLogSize: data['max-log-size'],
|
|
3722
4027
|
});
|
|
@@ -3724,6 +4029,190 @@ export class SimulationEvalOverrides extends BaseModel {
|
|
|
3724
4029
|
}
|
|
3725
4030
|
}
|
|
3726
4031
|
|
|
4032
|
+
/**
|
|
4033
|
+
* The set of trace information and effect from evaluating a single opcode.
|
|
4034
|
+
*/
|
|
4035
|
+
export class SimulationOpcodeTraceUnit extends BaseModel {
|
|
4036
|
+
/**
|
|
4037
|
+
* The program counter of the current opcode being evaluated.
|
|
4038
|
+
*/
|
|
4039
|
+
public pc: number | bigint;
|
|
4040
|
+
|
|
4041
|
+
/**
|
|
4042
|
+
* The writes into scratch slots.
|
|
4043
|
+
*/
|
|
4044
|
+
public scratchChanges?: ScratchChange[];
|
|
4045
|
+
|
|
4046
|
+
/**
|
|
4047
|
+
* The indexes of the traces for inner transactions spawned by this opcode, if any.
|
|
4048
|
+
*/
|
|
4049
|
+
public spawnedInners?: (number | bigint)[];
|
|
4050
|
+
|
|
4051
|
+
/**
|
|
4052
|
+
* The values added by this opcode to the stack.
|
|
4053
|
+
*/
|
|
4054
|
+
public stackAdditions?: AvmValue[];
|
|
4055
|
+
|
|
4056
|
+
/**
|
|
4057
|
+
* The number of deleted stack values by this opcode.
|
|
4058
|
+
*/
|
|
4059
|
+
public stackPopCount?: number | bigint;
|
|
4060
|
+
|
|
4061
|
+
/**
|
|
4062
|
+
* Creates a new `SimulationOpcodeTraceUnit` object.
|
|
4063
|
+
* @param pc - The program counter of the current opcode being evaluated.
|
|
4064
|
+
* @param scratchChanges - The writes into scratch slots.
|
|
4065
|
+
* @param spawnedInners - The indexes of the traces for inner transactions spawned by this opcode, if any.
|
|
4066
|
+
* @param stackAdditions - The values added by this opcode to the stack.
|
|
4067
|
+
* @param stackPopCount - The number of deleted stack values by this opcode.
|
|
4068
|
+
*/
|
|
4069
|
+
constructor({
|
|
4070
|
+
pc,
|
|
4071
|
+
scratchChanges,
|
|
4072
|
+
spawnedInners,
|
|
4073
|
+
stackAdditions,
|
|
4074
|
+
stackPopCount,
|
|
4075
|
+
}: {
|
|
4076
|
+
pc: number | bigint;
|
|
4077
|
+
scratchChanges?: ScratchChange[];
|
|
4078
|
+
spawnedInners?: (number | bigint)[];
|
|
4079
|
+
stackAdditions?: AvmValue[];
|
|
4080
|
+
stackPopCount?: number | bigint;
|
|
4081
|
+
}) {
|
|
4082
|
+
super();
|
|
4083
|
+
this.pc = pc;
|
|
4084
|
+
this.scratchChanges = scratchChanges;
|
|
4085
|
+
this.spawnedInners = spawnedInners;
|
|
4086
|
+
this.stackAdditions = stackAdditions;
|
|
4087
|
+
this.stackPopCount = stackPopCount;
|
|
4088
|
+
|
|
4089
|
+
this.attribute_map = {
|
|
4090
|
+
pc: 'pc',
|
|
4091
|
+
scratchChanges: 'scratch-changes',
|
|
4092
|
+
spawnedInners: 'spawned-inners',
|
|
4093
|
+
stackAdditions: 'stack-additions',
|
|
4094
|
+
stackPopCount: 'stack-pop-count',
|
|
4095
|
+
};
|
|
4096
|
+
}
|
|
4097
|
+
|
|
4098
|
+
// eslint-disable-next-line camelcase
|
|
4099
|
+
static from_obj_for_encoding(
|
|
4100
|
+
data: Record<string, any>
|
|
4101
|
+
): SimulationOpcodeTraceUnit {
|
|
4102
|
+
/* eslint-disable dot-notation */
|
|
4103
|
+
if (typeof data['pc'] === 'undefined')
|
|
4104
|
+
throw new Error(`Response is missing required field 'pc': ${data}`);
|
|
4105
|
+
return new SimulationOpcodeTraceUnit({
|
|
4106
|
+
pc: data['pc'],
|
|
4107
|
+
scratchChanges:
|
|
4108
|
+
typeof data['scratch-changes'] !== 'undefined'
|
|
4109
|
+
? data['scratch-changes'].map(ScratchChange.from_obj_for_encoding)
|
|
4110
|
+
: undefined,
|
|
4111
|
+
spawnedInners: data['spawned-inners'],
|
|
4112
|
+
stackAdditions:
|
|
4113
|
+
typeof data['stack-additions'] !== 'undefined'
|
|
4114
|
+
? data['stack-additions'].map(AvmValue.from_obj_for_encoding)
|
|
4115
|
+
: undefined,
|
|
4116
|
+
stackPopCount: data['stack-pop-count'],
|
|
4117
|
+
});
|
|
4118
|
+
/* eslint-enable dot-notation */
|
|
4119
|
+
}
|
|
4120
|
+
}
|
|
4121
|
+
|
|
4122
|
+
/**
|
|
4123
|
+
* The execution trace of calling an app or a logic sig, containing the inner app
|
|
4124
|
+
* call trace in a recursive way.
|
|
4125
|
+
*/
|
|
4126
|
+
export class SimulationTransactionExecTrace extends BaseModel {
|
|
4127
|
+
/**
|
|
4128
|
+
* Program trace that contains a trace of opcode effects in an approval program.
|
|
4129
|
+
*/
|
|
4130
|
+
public approvalProgramTrace?: SimulationOpcodeTraceUnit[];
|
|
4131
|
+
|
|
4132
|
+
/**
|
|
4133
|
+
* Program trace that contains a trace of opcode effects in a clear state program.
|
|
4134
|
+
*/
|
|
4135
|
+
public clearStateProgramTrace?: SimulationOpcodeTraceUnit[];
|
|
4136
|
+
|
|
4137
|
+
/**
|
|
4138
|
+
* An array of SimulationTransactionExecTrace representing the execution trace of
|
|
4139
|
+
* any inner transactions executed.
|
|
4140
|
+
*/
|
|
4141
|
+
public innerTrace?: SimulationTransactionExecTrace[];
|
|
4142
|
+
|
|
4143
|
+
/**
|
|
4144
|
+
* Program trace that contains a trace of opcode effects in a logic sig.
|
|
4145
|
+
*/
|
|
4146
|
+
public logicSigTrace?: SimulationOpcodeTraceUnit[];
|
|
4147
|
+
|
|
4148
|
+
/**
|
|
4149
|
+
* Creates a new `SimulationTransactionExecTrace` object.
|
|
4150
|
+
* @param approvalProgramTrace - Program trace that contains a trace of opcode effects in an approval program.
|
|
4151
|
+
* @param clearStateProgramTrace - Program trace that contains a trace of opcode effects in a clear state program.
|
|
4152
|
+
* @param innerTrace - An array of SimulationTransactionExecTrace representing the execution trace of
|
|
4153
|
+
* any inner transactions executed.
|
|
4154
|
+
* @param logicSigTrace - Program trace that contains a trace of opcode effects in a logic sig.
|
|
4155
|
+
*/
|
|
4156
|
+
constructor({
|
|
4157
|
+
approvalProgramTrace,
|
|
4158
|
+
clearStateProgramTrace,
|
|
4159
|
+
innerTrace,
|
|
4160
|
+
logicSigTrace,
|
|
4161
|
+
}: {
|
|
4162
|
+
approvalProgramTrace?: SimulationOpcodeTraceUnit[];
|
|
4163
|
+
clearStateProgramTrace?: SimulationOpcodeTraceUnit[];
|
|
4164
|
+
innerTrace?: SimulationTransactionExecTrace[];
|
|
4165
|
+
logicSigTrace?: SimulationOpcodeTraceUnit[];
|
|
4166
|
+
}) {
|
|
4167
|
+
super();
|
|
4168
|
+
this.approvalProgramTrace = approvalProgramTrace;
|
|
4169
|
+
this.clearStateProgramTrace = clearStateProgramTrace;
|
|
4170
|
+
this.innerTrace = innerTrace;
|
|
4171
|
+
this.logicSigTrace = logicSigTrace;
|
|
4172
|
+
|
|
4173
|
+
this.attribute_map = {
|
|
4174
|
+
approvalProgramTrace: 'approval-program-trace',
|
|
4175
|
+
clearStateProgramTrace: 'clear-state-program-trace',
|
|
4176
|
+
innerTrace: 'inner-trace',
|
|
4177
|
+
logicSigTrace: 'logic-sig-trace',
|
|
4178
|
+
};
|
|
4179
|
+
}
|
|
4180
|
+
|
|
4181
|
+
// eslint-disable-next-line camelcase
|
|
4182
|
+
static from_obj_for_encoding(
|
|
4183
|
+
data: Record<string, any>
|
|
4184
|
+
): SimulationTransactionExecTrace {
|
|
4185
|
+
/* eslint-disable dot-notation */
|
|
4186
|
+
return new SimulationTransactionExecTrace({
|
|
4187
|
+
approvalProgramTrace:
|
|
4188
|
+
typeof data['approval-program-trace'] !== 'undefined'
|
|
4189
|
+
? data['approval-program-trace'].map(
|
|
4190
|
+
SimulationOpcodeTraceUnit.from_obj_for_encoding
|
|
4191
|
+
)
|
|
4192
|
+
: undefined,
|
|
4193
|
+
clearStateProgramTrace:
|
|
4194
|
+
typeof data['clear-state-program-trace'] !== 'undefined'
|
|
4195
|
+
? data['clear-state-program-trace'].map(
|
|
4196
|
+
SimulationOpcodeTraceUnit.from_obj_for_encoding
|
|
4197
|
+
)
|
|
4198
|
+
: undefined,
|
|
4199
|
+
innerTrace:
|
|
4200
|
+
typeof data['inner-trace'] !== 'undefined'
|
|
4201
|
+
? data['inner-trace'].map(
|
|
4202
|
+
SimulationTransactionExecTrace.from_obj_for_encoding
|
|
4203
|
+
)
|
|
4204
|
+
: undefined,
|
|
4205
|
+
logicSigTrace:
|
|
4206
|
+
typeof data['logic-sig-trace'] !== 'undefined'
|
|
4207
|
+
? data['logic-sig-trace'].map(
|
|
4208
|
+
SimulationOpcodeTraceUnit.from_obj_for_encoding
|
|
4209
|
+
)
|
|
4210
|
+
: undefined,
|
|
4211
|
+
});
|
|
4212
|
+
/* eslint-enable dot-notation */
|
|
4213
|
+
}
|
|
4214
|
+
}
|
|
4215
|
+
|
|
3727
4216
|
/**
|
|
3728
4217
|
* Represents a state proof and its corresponding message
|
|
3729
4218
|
*/
|
|
@@ -4066,6 +4555,44 @@ export class TealValue extends BaseModel {
|
|
|
4066
4555
|
}
|
|
4067
4556
|
}
|
|
4068
4557
|
|
|
4558
|
+
/**
|
|
4559
|
+
* Response containing all ledger state deltas for transaction groups, with their
|
|
4560
|
+
* associated Ids, in a single round.
|
|
4561
|
+
*/
|
|
4562
|
+
export class TransactionGroupLedgerStateDeltasForRoundResponse extends BaseModel {
|
|
4563
|
+
public deltas: LedgerStateDeltaForTransactionGroup[];
|
|
4564
|
+
|
|
4565
|
+
/**
|
|
4566
|
+
* Creates a new `TransactionGroupLedgerStateDeltasForRoundResponse` object.
|
|
4567
|
+
* @param deltas -
|
|
4568
|
+
*/
|
|
4569
|
+
constructor({ deltas }: { deltas: LedgerStateDeltaForTransactionGroup[] }) {
|
|
4570
|
+
super();
|
|
4571
|
+
this.deltas = deltas;
|
|
4572
|
+
|
|
4573
|
+
this.attribute_map = {
|
|
4574
|
+
deltas: 'Deltas',
|
|
4575
|
+
};
|
|
4576
|
+
}
|
|
4577
|
+
|
|
4578
|
+
// eslint-disable-next-line camelcase
|
|
4579
|
+
static from_obj_for_encoding(
|
|
4580
|
+
data: Record<string, any>
|
|
4581
|
+
): TransactionGroupLedgerStateDeltasForRoundResponse {
|
|
4582
|
+
/* eslint-disable dot-notation */
|
|
4583
|
+
if (!Array.isArray(data['Deltas']))
|
|
4584
|
+
throw new Error(
|
|
4585
|
+
`Response is missing required array field 'Deltas': ${data}`
|
|
4586
|
+
);
|
|
4587
|
+
return new TransactionGroupLedgerStateDeltasForRoundResponse({
|
|
4588
|
+
deltas: data['Deltas'].map(
|
|
4589
|
+
LedgerStateDeltaForTransactionGroup.from_obj_for_encoding
|
|
4590
|
+
),
|
|
4591
|
+
});
|
|
4592
|
+
/* eslint-enable dot-notation */
|
|
4593
|
+
}
|
|
4594
|
+
}
|
|
4595
|
+
|
|
4069
4596
|
/**
|
|
4070
4597
|
* TransactionParams contains the parameters that help a client construct a new
|
|
4071
4598
|
* transaction.
|