From 59a23921d677c3c70dd06ff784fe77e56a417fd2 Mon Sep 17 00:00:00 2001 From: George Date: Wed, 18 Mar 2026 13:50:38 -0700 Subject: [PATCH] Bump XDR to latest Protocol 26 --- Makefile | 4 +- src/generated/curr_generated.js | 191 ++++++++++++-- src/generated/next_generated.js | 191 ++++++++++++-- types/curr.d.ts | 279 +++++++++++++++++++- types/next.d.ts | 282 +++++++++++++++++++-- xdr/curr/Stellar-SCP.x | 4 +- xdr/curr/Stellar-contract-config-setting.x | 70 ++++- xdr/curr/Stellar-contract-spec.x | 14 +- xdr/curr/Stellar-transaction.x | 19 +- xdr/next/Stellar-SCP.x | 4 +- xdr/next/Stellar-contract-config-setting.x | 70 ++++- xdr/next/Stellar-contract-spec.x | 14 +- xdr/next/Stellar-transaction.x | 19 +- 13 files changed, 1059 insertions(+), 102 deletions(-) diff --git a/Makefile b/Makefile index 213be4ecc..2a1becea2 100644 --- a/Makefile +++ b/Makefile @@ -1,4 +1,4 @@ -XDR_BASE_URL_CURR=https://github.com/stellar/stellar-xdr/raw/4b7a2ef7931ab2ca2499be68d849f38190b443ca +XDR_BASE_URL_CURR=https://github.com/stellar/stellar-xdr/raw/cff714a5ebaaaf2dac343b3546c2df73f0b7a36e XDR_BASE_LOCAL_CURR=xdr/curr XDR_FILES_CURR= \ Stellar-SCP.x \ @@ -15,7 +15,7 @@ XDR_FILES_CURR= \ Stellar-exporter.x XDR_FILES_LOCAL_CURR=$(addprefix xdr/curr/,$(XDR_FILES_CURR)) -XDR_BASE_URL_NEXT=https://github.com/stellar/stellar-xdr/raw/4b7a2ef7931ab2ca2499be68d849f38190b443ca +XDR_BASE_URL_NEXT=https://github.com/stellar/stellar-xdr/raw/cff714a5ebaaaf2dac343b3546c2df73f0b7a36e XDR_BASE_LOCAL_NEXT=xdr/next XDR_FILES_NEXT= \ Stellar-SCP.x \ diff --git a/src/generated/curr_generated.js b/src/generated/curr_generated.js index 977a3c5d9..d4e763ce1 100644 --- a/src/generated/curr_generated.js +++ b/src/generated/curr_generated.js @@ -8,6 +8,7 @@ import * as XDR from '@stellar/js-xdr'; var types = XDR.config(xdr => { + // Workaround for https://github.com/stellar/xdrgen/issues/152 // // The "correct" way would be to replace bare instances of each constant with @@ -7414,7 +7415,8 @@ xdr.union("CreateClaimableBalanceResult", { // CLAIM_CLAIMABLE_BALANCE_CANNOT_CLAIM = -2, // CLAIM_CLAIMABLE_BALANCE_LINE_FULL = -3, // CLAIM_CLAIMABLE_BALANCE_NO_TRUST = -4, -// CLAIM_CLAIMABLE_BALANCE_NOT_AUTHORIZED = -5 +// CLAIM_CLAIMABLE_BALANCE_NOT_AUTHORIZED = -5, +// CLAIM_CLAIMABLE_BALANCE_TRUSTLINE_FROZEN = -6 // }; // // =========================================================================== @@ -7425,6 +7427,7 @@ xdr.enum("ClaimClaimableBalanceResultCode", { claimClaimableBalanceLineFull: -3, claimClaimableBalanceNoTrust: -4, claimClaimableBalanceNotAuthorized: -5, + claimClaimableBalanceTrustlineFrozen: -6, }); // === xdr source ============================================================ @@ -7438,6 +7441,7 @@ xdr.enum("ClaimClaimableBalanceResultCode", { // case CLAIM_CLAIMABLE_BALANCE_LINE_FULL: // case CLAIM_CLAIMABLE_BALANCE_NO_TRUST: // case CLAIM_CLAIMABLE_BALANCE_NOT_AUTHORIZED: +// case CLAIM_CLAIMABLE_BALANCE_TRUSTLINE_FROZEN: // void; // }; // @@ -7452,6 +7456,7 @@ xdr.union("ClaimClaimableBalanceResult", { ["claimClaimableBalanceLineFull", xdr.void()], ["claimClaimableBalanceNoTrust", xdr.void()], ["claimClaimableBalanceNotAuthorized", xdr.void()], + ["claimClaimableBalanceTrustlineFrozen", xdr.void()], ], arms: { }, @@ -7773,7 +7778,9 @@ xdr.union("SetTrustLineFlagsResult", { // LIQUIDITY_POOL_DEPOSIT_LINE_FULL = -5, // pool share trust line doesn't // // have sufficient limit // LIQUIDITY_POOL_DEPOSIT_BAD_PRICE = -6, // deposit price outside bounds -// LIQUIDITY_POOL_DEPOSIT_POOL_FULL = -7 // pool reserves are full +// LIQUIDITY_POOL_DEPOSIT_POOL_FULL = -7, // pool reserves are full +// LIQUIDITY_POOL_DEPOSIT_TRUSTLINE_FROZEN = -8 // trustline for one of the +// // assets is frozen // }; // // =========================================================================== @@ -7786,6 +7793,7 @@ xdr.enum("LiquidityPoolDepositResultCode", { liquidityPoolDepositLineFull: -5, liquidityPoolDepositBadPrice: -6, liquidityPoolDepositPoolFull: -7, + liquidityPoolDepositTrustlineFrozen: -8, }); // === xdr source ============================================================ @@ -7801,6 +7809,7 @@ xdr.enum("LiquidityPoolDepositResultCode", { // case LIQUIDITY_POOL_DEPOSIT_LINE_FULL: // case LIQUIDITY_POOL_DEPOSIT_BAD_PRICE: // case LIQUIDITY_POOL_DEPOSIT_POOL_FULL: +// case LIQUIDITY_POOL_DEPOSIT_TRUSTLINE_FROZEN: // void; // }; // @@ -7817,6 +7826,7 @@ xdr.union("LiquidityPoolDepositResult", { ["liquidityPoolDepositLineFull", xdr.void()], ["liquidityPoolDepositBadPrice", xdr.void()], ["liquidityPoolDepositPoolFull", xdr.void()], + ["liquidityPoolDepositTrustlineFrozen", xdr.void()], ], arms: { }, @@ -7837,7 +7847,9 @@ xdr.union("LiquidityPoolDepositResult", { // // pool share // LIQUIDITY_POOL_WITHDRAW_LINE_FULL = -4, // would go above limit for one // // of the assets -// LIQUIDITY_POOL_WITHDRAW_UNDER_MINIMUM = -5 // didn't withdraw enough +// LIQUIDITY_POOL_WITHDRAW_UNDER_MINIMUM = -5, // didn't withdraw enough +// LIQUIDITY_POOL_WITHDRAW_TRUSTLINE_FROZEN = -6 // trustline for one of the +// // assets is frozen // }; // // =========================================================================== @@ -7848,6 +7860,7 @@ xdr.enum("LiquidityPoolWithdrawResultCode", { liquidityPoolWithdrawUnderfunded: -3, liquidityPoolWithdrawLineFull: -4, liquidityPoolWithdrawUnderMinimum: -5, + liquidityPoolWithdrawTrustlineFrozen: -6, }); // === xdr source ============================================================ @@ -7861,6 +7874,7 @@ xdr.enum("LiquidityPoolWithdrawResultCode", { // case LIQUIDITY_POOL_WITHDRAW_UNDERFUNDED: // case LIQUIDITY_POOL_WITHDRAW_LINE_FULL: // case LIQUIDITY_POOL_WITHDRAW_UNDER_MINIMUM: +// case LIQUIDITY_POOL_WITHDRAW_TRUSTLINE_FROZEN: // void; // }; // @@ -7875,6 +7889,7 @@ xdr.union("LiquidityPoolWithdrawResult", { ["liquidityPoolWithdrawUnderfunded", xdr.void()], ["liquidityPoolWithdrawLineFull", xdr.void()], ["liquidityPoolWithdrawUnderMinimum", xdr.void()], + ["liquidityPoolWithdrawTrustlineFrozen", xdr.void()], ], arms: { }, @@ -8295,7 +8310,8 @@ xdr.union("OperationResult", { // txBAD_SPONSORSHIP = -14, // sponsorship not confirmed // txBAD_MIN_SEQ_AGE_OR_GAP = -15, // minSeqAge or minSeqLedgerGap conditions not met // txMALFORMED = -16, // precondition is invalid -// txSOROBAN_INVALID = -17 // soroban-specific preconditions were not met +// txSOROBAN_INVALID = -17, // soroban-specific preconditions were not met +// txFROZEN_KEY_ACCESSED = -18 // a 'frozen' ledger key is accessed by any operation // }; // // =========================================================================== @@ -8319,6 +8335,7 @@ xdr.enum("TransactionResultCode", { txBadMinSeqAgeOrGap: -15, txMalformed: -16, txSorobanInvalid: -17, + txFrozenKeyAccessed: -18, }); // === xdr source ============================================================ @@ -8345,6 +8362,7 @@ xdr.enum("TransactionResultCode", { // case txBAD_MIN_SEQ_AGE_OR_GAP: // case txMALFORMED: // case txSOROBAN_INVALID: +// case txFROZEN_KEY_ACCESSED: // void; // } // @@ -8370,6 +8388,7 @@ xdr.union("InnerTransactionResultResult", { ["txBadMinSeqAgeOrGap", xdr.void()], ["txMalformed", xdr.void()], ["txSorobanInvalid", xdr.void()], + ["txFrozenKeyAccessed", xdr.void()], ], arms: { results: xdr.varArray(xdr.lookup("OperationResult"), 2147483647), @@ -8424,6 +8443,7 @@ xdr.union("InnerTransactionResultExt", { // case txBAD_MIN_SEQ_AGE_OR_GAP: // case txMALFORMED: // case txSOROBAN_INVALID: +// case txFROZEN_KEY_ACCESSED: // void; // } // result; @@ -8484,6 +8504,7 @@ xdr.struct("InnerTransactionResultPair", [ // case txBAD_MIN_SEQ_AGE_OR_GAP: // case txMALFORMED: // case txSOROBAN_INVALID: +// case txFROZEN_KEY_ACCESSED: // void; // } // @@ -8511,6 +8532,7 @@ xdr.union("TransactionResultResult", { ["txBadMinSeqAgeOrGap", xdr.void()], ["txMalformed", xdr.void()], ["txSorobanInvalid", xdr.void()], + ["txFrozenKeyAccessed", xdr.void()], ], arms: { innerResultPair: xdr.lookup("InnerTransactionResultPair"), @@ -8567,6 +8589,7 @@ xdr.union("TransactionResultExt", { // case txBAD_MIN_SEQ_AGE_OR_GAP: // case txMALFORMED: // case txSOROBAN_INVALID: +// case txFROZEN_KEY_ACCESSED: // void; // } // result; @@ -9882,7 +9905,7 @@ xdr.struct("ScSpecUdtStructFieldV0", [ // string doc; // string lib<80>; // string name<60>; -// SCSpecUDTStructFieldV0 fields<40>; +// SCSpecUDTStructFieldV0 fields<>; // }; // // =========================================================================== @@ -9890,7 +9913,7 @@ xdr.struct("ScSpecUdtStructV0", [ ["doc", xdr.string(SC_SPEC_DOC_LIMIT)], ["lib", xdr.string(80)], ["name", xdr.string(60)], - ["fields", xdr.varArray(xdr.lookup("ScSpecUdtStructFieldV0"), 40)], + ["fields", xdr.varArray(xdr.lookup("ScSpecUdtStructFieldV0"), 2147483647)], ]); // === xdr source ============================================================ @@ -9913,14 +9936,14 @@ xdr.struct("ScSpecUdtUnionCaseVoidV0", [ // { // string doc; // string name<60>; -// SCSpecTypeDef type<12>; +// SCSpecTypeDef type<>; // }; // // =========================================================================== xdr.struct("ScSpecUdtUnionCaseTupleV0", [ ["doc", xdr.string(SC_SPEC_DOC_LIMIT)], ["name", xdr.string(60)], - ["type", xdr.varArray(xdr.lookup("ScSpecTypeDef"), 12)], + ["type", xdr.varArray(xdr.lookup("ScSpecTypeDef"), 2147483647)], ]); // === xdr source ============================================================ @@ -9968,7 +9991,7 @@ xdr.union("ScSpecUdtUnionCaseV0", { // string doc; // string lib<80>; // string name<60>; -// SCSpecUDTUnionCaseV0 cases<50>; +// SCSpecUDTUnionCaseV0 cases<>; // }; // // =========================================================================== @@ -9976,7 +9999,7 @@ xdr.struct("ScSpecUdtUnionV0", [ ["doc", xdr.string(SC_SPEC_DOC_LIMIT)], ["lib", xdr.string(80)], ["name", xdr.string(60)], - ["cases", xdr.varArray(xdr.lookup("ScSpecUdtUnionCaseV0"), 50)], + ["cases", xdr.varArray(xdr.lookup("ScSpecUdtUnionCaseV0"), 2147483647)], ]); // === xdr source ============================================================ @@ -10002,7 +10025,7 @@ xdr.struct("ScSpecUdtEnumCaseV0", [ // string doc; // string lib<80>; // string name<60>; -// SCSpecUDTEnumCaseV0 cases<50>; +// SCSpecUDTEnumCaseV0 cases<>; // }; // // =========================================================================== @@ -10010,7 +10033,7 @@ xdr.struct("ScSpecUdtEnumV0", [ ["doc", xdr.string(SC_SPEC_DOC_LIMIT)], ["lib", xdr.string(80)], ["name", xdr.string(60)], - ["cases", xdr.varArray(xdr.lookup("ScSpecUdtEnumCaseV0"), 50)], + ["cases", xdr.varArray(xdr.lookup("ScSpecUdtEnumCaseV0"), 2147483647)], ]); // === xdr source ============================================================ @@ -10036,7 +10059,7 @@ xdr.struct("ScSpecUdtErrorEnumCaseV0", [ // string doc; // string lib<80>; // string name<60>; -// SCSpecUDTErrorEnumCaseV0 cases<50>; +// SCSpecUDTErrorEnumCaseV0 cases<>; // }; // // =========================================================================== @@ -10044,7 +10067,7 @@ xdr.struct("ScSpecUdtErrorEnumV0", [ ["doc", xdr.string(SC_SPEC_DOC_LIMIT)], ["lib", xdr.string(80)], ["name", xdr.string(60)], - ["cases", xdr.varArray(xdr.lookup("ScSpecUdtErrorEnumCaseV0"), 50)], + ["cases", xdr.varArray(xdr.lookup("ScSpecUdtErrorEnumCaseV0"), 2147483647)], ]); // === xdr source ============================================================ @@ -10069,7 +10092,7 @@ xdr.struct("ScSpecFunctionInputV0", [ // { // string doc; // SCSymbol name; -// SCSpecFunctionInputV0 inputs<10>; +// SCSpecFunctionInputV0 inputs<>; // SCSpecTypeDef outputs<1>; // }; // @@ -10077,7 +10100,7 @@ xdr.struct("ScSpecFunctionInputV0", [ xdr.struct("ScSpecFunctionV0", [ ["doc", xdr.string(SC_SPEC_DOC_LIMIT)], ["name", xdr.lookup("ScSymbol")], - ["inputs", xdr.varArray(xdr.lookup("ScSpecFunctionInputV0"), 10)], + ["inputs", xdr.varArray(xdr.lookup("ScSpecFunctionInputV0"), 2147483647)], ["outputs", xdr.varArray(xdr.lookup("ScSpecTypeDef"), 1)], ]); @@ -10137,7 +10160,7 @@ xdr.enum("ScSpecEventDataFormat", { // string lib<80>; // SCSymbol name; // SCSymbol prefixTopics<2>; -// SCSpecEventParamV0 params<50>; +// SCSpecEventParamV0 params<>; // SCSpecEventDataFormat dataFormat; // }; // @@ -10147,7 +10170,7 @@ xdr.struct("ScSpecEventV0", [ ["lib", xdr.string(80)], ["name", xdr.lookup("ScSymbol")], ["prefixTopics", xdr.varArray(xdr.lookup("ScSymbol"), 2)], - ["params", xdr.varArray(xdr.lookup("ScSpecEventParamV0"), 50)], + ["params", xdr.varArray(xdr.lookup("ScSpecEventParamV0"), 2147483647)], ["dataFormat", xdr.lookup("ScSpecEventDataFormat")], ]); @@ -10213,6 +10236,13 @@ xdr.union("ScSpecEntry", { }, }); +// === xdr source ============================================================ +// +// typedef opaque EncodedLedgerKey<>; +// +// =========================================================================== +xdr.typedef("EncodedLedgerKey", xdr.varOpaque()); + // === xdr source ============================================================ // // struct ConfigSettingContractExecutionLanesV0 @@ -10541,7 +10571,40 @@ xdr.struct("ConfigSettingContractBandwidthV0", [ // // Cost of performing BLS12-381 scalar element exponentiation // Bls12381FrPow = 68, // // Cost of performing BLS12-381 scalar element inversion -// Bls12381FrInv = 69 +// Bls12381FrInv = 69, +// +// // Cost of encoding a BN254 Fp (base field element) +// Bn254EncodeFp = 70, +// // Cost of decoding a BN254 Fp (base field element) +// Bn254DecodeFp = 71, +// // Cost of checking a G1 point lies on the curve +// Bn254G1CheckPointOnCurve = 72, +// // Cost of checking a G2 point lies on the curve +// Bn254G2CheckPointOnCurve = 73, +// // Cost of checking a G2 point belongs to the correct subgroup +// Bn254G2CheckPointInSubgroup = 74, +// // Cost of converting a BN254 G1 point from projective to affine coordinates +// Bn254G1ProjectiveToAffine = 75, +// // Cost of performing BN254 G1 point addition +// Bn254G1Add = 76, +// // Cost of performing BN254 G1 scalar multiplication +// Bn254G1Mul = 77, +// // Cost of performing BN254 pairing operation +// Bn254Pairing = 78, +// // Cost of converting a BN254 scalar element from U256 +// Bn254FrFromU256 = 79, +// // Cost of converting a BN254 scalar element to U256 +// Bn254FrToU256 = 80, +// // // Cost of performing BN254 scalar element addition/subtraction +// Bn254FrAddSub = 81, +// // Cost of performing BN254 scalar element multiplication +// Bn254FrMul = 82, +// // Cost of performing BN254 scalar element exponentiation +// Bn254FrPow = 83, +// // Cost of performing BN254 scalar element inversion +// Bn254FrInv = 84, +// // Cost of performing BN254 G1 multi-scalar multiplication (MSM) +// Bn254G1Msm = 85 // }; // // =========================================================================== @@ -10616,6 +10679,22 @@ xdr.enum("ContractCostType", { bls12381FrMul: 67, bls12381FrPow: 68, bls12381FrInv: 69, + bn254EncodeFp: 70, + bn254DecodeFp: 71, + bn254G1CheckPointOnCurve: 72, + bn254G2CheckPointOnCurve: 73, + bn254G2CheckPointInSubgroup: 74, + bn254G1ProjectiveToAffine: 75, + bn254G1Add: 76, + bn254G1Mul: 77, + bn254Pairing: 78, + bn254FrFromU256: 79, + bn254FrToU256: 80, + bn254FrAddSub: 81, + bn254FrMul: 82, + bn254FrPow: 83, + bn254FrInv: 84, + bn254G1Msm: 85, }); // === xdr source ============================================================ @@ -10710,6 +10789,54 @@ xdr.struct("ConfigSettingScpTiming", [ ["ballotTimeoutIncrementMilliseconds", xdr.lookup("Uint32")], ]); +// === xdr source ============================================================ +// +// struct FrozenLedgerKeys { +// EncodedLedgerKey keys<>; +// }; +// +// =========================================================================== +xdr.struct("FrozenLedgerKeys", [ + ["keys", xdr.varArray(xdr.lookup("EncodedLedgerKey"), 2147483647)], +]); + +// === xdr source ============================================================ +// +// struct FrozenLedgerKeysDelta { +// EncodedLedgerKey keysToFreeze<>; +// EncodedLedgerKey keysToUnfreeze<>; +// }; +// +// =========================================================================== +xdr.struct("FrozenLedgerKeysDelta", [ + ["keysToFreeze", xdr.varArray(xdr.lookup("EncodedLedgerKey"), 2147483647)], + ["keysToUnfreeze", xdr.varArray(xdr.lookup("EncodedLedgerKey"), 2147483647)], +]); + +// === xdr source ============================================================ +// +// struct FreezeBypassTxs { +// Hash txHashes<>; +// }; +// +// =========================================================================== +xdr.struct("FreezeBypassTxes", [ + ["txHashes", xdr.varArray(xdr.lookup("Hash"), 2147483647)], +]); + +// === xdr source ============================================================ +// +// struct FreezeBypassTxsDelta { +// Hash addTxs<>; +// Hash removeTxs<>; +// }; +// +// =========================================================================== +xdr.struct("FreezeBypassTxsDelta", [ + ["addTxes", xdr.varArray(xdr.lookup("Hash"), 2147483647)], + ["removeTxes", xdr.varArray(xdr.lookup("Hash"), 2147483647)], +]); + // === xdr source ============================================================ // // const CONTRACT_COST_COUNT_LIMIT = 1024; @@ -10744,7 +10871,11 @@ xdr.typedef("ContractCostParams", xdr.varArray(xdr.lookup("ContractCostParamEntr // CONFIG_SETTING_EVICTION_ITERATOR = 13, // CONFIG_SETTING_CONTRACT_PARALLEL_COMPUTE_V0 = 14, // CONFIG_SETTING_CONTRACT_LEDGER_COST_EXT_V0 = 15, -// CONFIG_SETTING_SCP_TIMING = 16 +// CONFIG_SETTING_SCP_TIMING = 16, +// CONFIG_SETTING_FROZEN_LEDGER_KEYS = 17, +// CONFIG_SETTING_FROZEN_LEDGER_KEYS_DELTA = 18, +// CONFIG_SETTING_FREEZE_BYPASS_TXS = 19, +// CONFIG_SETTING_FREEZE_BYPASS_TXS_DELTA = 20 // }; // // =========================================================================== @@ -10766,6 +10897,10 @@ xdr.enum("ConfigSettingId", { configSettingContractParallelComputeV0: 14, configSettingContractLedgerCostExtV0: 15, configSettingScpTiming: 16, + configSettingFrozenLedgerKeys: 17, + configSettingFrozenLedgerKeysDelta: 18, + configSettingFreezeBypassTxes: 19, + configSettingFreezeBypassTxsDelta: 20, }); // === xdr source ============================================================ @@ -10806,6 +10941,14 @@ xdr.enum("ConfigSettingId", { // ConfigSettingContractLedgerCostExtV0 contractLedgerCostExt; // case CONFIG_SETTING_SCP_TIMING: // ConfigSettingSCPTiming contractSCPTiming; +// case CONFIG_SETTING_FROZEN_LEDGER_KEYS: +// FrozenLedgerKeys frozenLedgerKeys; +// case CONFIG_SETTING_FROZEN_LEDGER_KEYS_DELTA: +// FrozenLedgerKeysDelta frozenLedgerKeysDelta; +// case CONFIG_SETTING_FREEZE_BYPASS_TXS: +// FreezeBypassTxs freezeBypassTxs; +// case CONFIG_SETTING_FREEZE_BYPASS_TXS_DELTA: +// FreezeBypassTxsDelta freezeBypassTxsDelta; // }; // // =========================================================================== @@ -10830,6 +10973,10 @@ xdr.union("ConfigSettingEntry", { ["configSettingContractParallelComputeV0", "contractParallelCompute"], ["configSettingContractLedgerCostExtV0", "contractLedgerCostExt"], ["configSettingScpTiming", "contractScpTiming"], + ["configSettingFrozenLedgerKeys", "frozenLedgerKeys"], + ["configSettingFrozenLedgerKeysDelta", "frozenLedgerKeysDelta"], + ["configSettingFreezeBypassTxes", "freezeBypassTxes"], + ["configSettingFreezeBypassTxsDelta", "freezeBypassTxsDelta"], ], arms: { contractMaxSizeBytes: xdr.lookup("Uint32"), @@ -10849,6 +10996,10 @@ xdr.union("ConfigSettingEntry", { contractParallelCompute: xdr.lookup("ConfigSettingContractParallelComputeV0"), contractLedgerCostExt: xdr.lookup("ConfigSettingContractLedgerCostExtV0"), contractScpTiming: xdr.lookup("ConfigSettingScpTiming"), + frozenLedgerKeys: xdr.lookup("FrozenLedgerKeys"), + frozenLedgerKeysDelta: xdr.lookup("FrozenLedgerKeysDelta"), + freezeBypassTxes: xdr.lookup("FreezeBypassTxes"), + freezeBypassTxsDelta: xdr.lookup("FreezeBypassTxsDelta"), }, }); diff --git a/src/generated/next_generated.js b/src/generated/next_generated.js index 977a3c5d9..d4e763ce1 100644 --- a/src/generated/next_generated.js +++ b/src/generated/next_generated.js @@ -8,6 +8,7 @@ import * as XDR from '@stellar/js-xdr'; var types = XDR.config(xdr => { + // Workaround for https://github.com/stellar/xdrgen/issues/152 // // The "correct" way would be to replace bare instances of each constant with @@ -7414,7 +7415,8 @@ xdr.union("CreateClaimableBalanceResult", { // CLAIM_CLAIMABLE_BALANCE_CANNOT_CLAIM = -2, // CLAIM_CLAIMABLE_BALANCE_LINE_FULL = -3, // CLAIM_CLAIMABLE_BALANCE_NO_TRUST = -4, -// CLAIM_CLAIMABLE_BALANCE_NOT_AUTHORIZED = -5 +// CLAIM_CLAIMABLE_BALANCE_NOT_AUTHORIZED = -5, +// CLAIM_CLAIMABLE_BALANCE_TRUSTLINE_FROZEN = -6 // }; // // =========================================================================== @@ -7425,6 +7427,7 @@ xdr.enum("ClaimClaimableBalanceResultCode", { claimClaimableBalanceLineFull: -3, claimClaimableBalanceNoTrust: -4, claimClaimableBalanceNotAuthorized: -5, + claimClaimableBalanceTrustlineFrozen: -6, }); // === xdr source ============================================================ @@ -7438,6 +7441,7 @@ xdr.enum("ClaimClaimableBalanceResultCode", { // case CLAIM_CLAIMABLE_BALANCE_LINE_FULL: // case CLAIM_CLAIMABLE_BALANCE_NO_TRUST: // case CLAIM_CLAIMABLE_BALANCE_NOT_AUTHORIZED: +// case CLAIM_CLAIMABLE_BALANCE_TRUSTLINE_FROZEN: // void; // }; // @@ -7452,6 +7456,7 @@ xdr.union("ClaimClaimableBalanceResult", { ["claimClaimableBalanceLineFull", xdr.void()], ["claimClaimableBalanceNoTrust", xdr.void()], ["claimClaimableBalanceNotAuthorized", xdr.void()], + ["claimClaimableBalanceTrustlineFrozen", xdr.void()], ], arms: { }, @@ -7773,7 +7778,9 @@ xdr.union("SetTrustLineFlagsResult", { // LIQUIDITY_POOL_DEPOSIT_LINE_FULL = -5, // pool share trust line doesn't // // have sufficient limit // LIQUIDITY_POOL_DEPOSIT_BAD_PRICE = -6, // deposit price outside bounds -// LIQUIDITY_POOL_DEPOSIT_POOL_FULL = -7 // pool reserves are full +// LIQUIDITY_POOL_DEPOSIT_POOL_FULL = -7, // pool reserves are full +// LIQUIDITY_POOL_DEPOSIT_TRUSTLINE_FROZEN = -8 // trustline for one of the +// // assets is frozen // }; // // =========================================================================== @@ -7786,6 +7793,7 @@ xdr.enum("LiquidityPoolDepositResultCode", { liquidityPoolDepositLineFull: -5, liquidityPoolDepositBadPrice: -6, liquidityPoolDepositPoolFull: -7, + liquidityPoolDepositTrustlineFrozen: -8, }); // === xdr source ============================================================ @@ -7801,6 +7809,7 @@ xdr.enum("LiquidityPoolDepositResultCode", { // case LIQUIDITY_POOL_DEPOSIT_LINE_FULL: // case LIQUIDITY_POOL_DEPOSIT_BAD_PRICE: // case LIQUIDITY_POOL_DEPOSIT_POOL_FULL: +// case LIQUIDITY_POOL_DEPOSIT_TRUSTLINE_FROZEN: // void; // }; // @@ -7817,6 +7826,7 @@ xdr.union("LiquidityPoolDepositResult", { ["liquidityPoolDepositLineFull", xdr.void()], ["liquidityPoolDepositBadPrice", xdr.void()], ["liquidityPoolDepositPoolFull", xdr.void()], + ["liquidityPoolDepositTrustlineFrozen", xdr.void()], ], arms: { }, @@ -7837,7 +7847,9 @@ xdr.union("LiquidityPoolDepositResult", { // // pool share // LIQUIDITY_POOL_WITHDRAW_LINE_FULL = -4, // would go above limit for one // // of the assets -// LIQUIDITY_POOL_WITHDRAW_UNDER_MINIMUM = -5 // didn't withdraw enough +// LIQUIDITY_POOL_WITHDRAW_UNDER_MINIMUM = -5, // didn't withdraw enough +// LIQUIDITY_POOL_WITHDRAW_TRUSTLINE_FROZEN = -6 // trustline for one of the +// // assets is frozen // }; // // =========================================================================== @@ -7848,6 +7860,7 @@ xdr.enum("LiquidityPoolWithdrawResultCode", { liquidityPoolWithdrawUnderfunded: -3, liquidityPoolWithdrawLineFull: -4, liquidityPoolWithdrawUnderMinimum: -5, + liquidityPoolWithdrawTrustlineFrozen: -6, }); // === xdr source ============================================================ @@ -7861,6 +7874,7 @@ xdr.enum("LiquidityPoolWithdrawResultCode", { // case LIQUIDITY_POOL_WITHDRAW_UNDERFUNDED: // case LIQUIDITY_POOL_WITHDRAW_LINE_FULL: // case LIQUIDITY_POOL_WITHDRAW_UNDER_MINIMUM: +// case LIQUIDITY_POOL_WITHDRAW_TRUSTLINE_FROZEN: // void; // }; // @@ -7875,6 +7889,7 @@ xdr.union("LiquidityPoolWithdrawResult", { ["liquidityPoolWithdrawUnderfunded", xdr.void()], ["liquidityPoolWithdrawLineFull", xdr.void()], ["liquidityPoolWithdrawUnderMinimum", xdr.void()], + ["liquidityPoolWithdrawTrustlineFrozen", xdr.void()], ], arms: { }, @@ -8295,7 +8310,8 @@ xdr.union("OperationResult", { // txBAD_SPONSORSHIP = -14, // sponsorship not confirmed // txBAD_MIN_SEQ_AGE_OR_GAP = -15, // minSeqAge or minSeqLedgerGap conditions not met // txMALFORMED = -16, // precondition is invalid -// txSOROBAN_INVALID = -17 // soroban-specific preconditions were not met +// txSOROBAN_INVALID = -17, // soroban-specific preconditions were not met +// txFROZEN_KEY_ACCESSED = -18 // a 'frozen' ledger key is accessed by any operation // }; // // =========================================================================== @@ -8319,6 +8335,7 @@ xdr.enum("TransactionResultCode", { txBadMinSeqAgeOrGap: -15, txMalformed: -16, txSorobanInvalid: -17, + txFrozenKeyAccessed: -18, }); // === xdr source ============================================================ @@ -8345,6 +8362,7 @@ xdr.enum("TransactionResultCode", { // case txBAD_MIN_SEQ_AGE_OR_GAP: // case txMALFORMED: // case txSOROBAN_INVALID: +// case txFROZEN_KEY_ACCESSED: // void; // } // @@ -8370,6 +8388,7 @@ xdr.union("InnerTransactionResultResult", { ["txBadMinSeqAgeOrGap", xdr.void()], ["txMalformed", xdr.void()], ["txSorobanInvalid", xdr.void()], + ["txFrozenKeyAccessed", xdr.void()], ], arms: { results: xdr.varArray(xdr.lookup("OperationResult"), 2147483647), @@ -8424,6 +8443,7 @@ xdr.union("InnerTransactionResultExt", { // case txBAD_MIN_SEQ_AGE_OR_GAP: // case txMALFORMED: // case txSOROBAN_INVALID: +// case txFROZEN_KEY_ACCESSED: // void; // } // result; @@ -8484,6 +8504,7 @@ xdr.struct("InnerTransactionResultPair", [ // case txBAD_MIN_SEQ_AGE_OR_GAP: // case txMALFORMED: // case txSOROBAN_INVALID: +// case txFROZEN_KEY_ACCESSED: // void; // } // @@ -8511,6 +8532,7 @@ xdr.union("TransactionResultResult", { ["txBadMinSeqAgeOrGap", xdr.void()], ["txMalformed", xdr.void()], ["txSorobanInvalid", xdr.void()], + ["txFrozenKeyAccessed", xdr.void()], ], arms: { innerResultPair: xdr.lookup("InnerTransactionResultPair"), @@ -8567,6 +8589,7 @@ xdr.union("TransactionResultExt", { // case txBAD_MIN_SEQ_AGE_OR_GAP: // case txMALFORMED: // case txSOROBAN_INVALID: +// case txFROZEN_KEY_ACCESSED: // void; // } // result; @@ -9882,7 +9905,7 @@ xdr.struct("ScSpecUdtStructFieldV0", [ // string doc; // string lib<80>; // string name<60>; -// SCSpecUDTStructFieldV0 fields<40>; +// SCSpecUDTStructFieldV0 fields<>; // }; // // =========================================================================== @@ -9890,7 +9913,7 @@ xdr.struct("ScSpecUdtStructV0", [ ["doc", xdr.string(SC_SPEC_DOC_LIMIT)], ["lib", xdr.string(80)], ["name", xdr.string(60)], - ["fields", xdr.varArray(xdr.lookup("ScSpecUdtStructFieldV0"), 40)], + ["fields", xdr.varArray(xdr.lookup("ScSpecUdtStructFieldV0"), 2147483647)], ]); // === xdr source ============================================================ @@ -9913,14 +9936,14 @@ xdr.struct("ScSpecUdtUnionCaseVoidV0", [ // { // string doc; // string name<60>; -// SCSpecTypeDef type<12>; +// SCSpecTypeDef type<>; // }; // // =========================================================================== xdr.struct("ScSpecUdtUnionCaseTupleV0", [ ["doc", xdr.string(SC_SPEC_DOC_LIMIT)], ["name", xdr.string(60)], - ["type", xdr.varArray(xdr.lookup("ScSpecTypeDef"), 12)], + ["type", xdr.varArray(xdr.lookup("ScSpecTypeDef"), 2147483647)], ]); // === xdr source ============================================================ @@ -9968,7 +9991,7 @@ xdr.union("ScSpecUdtUnionCaseV0", { // string doc; // string lib<80>; // string name<60>; -// SCSpecUDTUnionCaseV0 cases<50>; +// SCSpecUDTUnionCaseV0 cases<>; // }; // // =========================================================================== @@ -9976,7 +9999,7 @@ xdr.struct("ScSpecUdtUnionV0", [ ["doc", xdr.string(SC_SPEC_DOC_LIMIT)], ["lib", xdr.string(80)], ["name", xdr.string(60)], - ["cases", xdr.varArray(xdr.lookup("ScSpecUdtUnionCaseV0"), 50)], + ["cases", xdr.varArray(xdr.lookup("ScSpecUdtUnionCaseV0"), 2147483647)], ]); // === xdr source ============================================================ @@ -10002,7 +10025,7 @@ xdr.struct("ScSpecUdtEnumCaseV0", [ // string doc; // string lib<80>; // string name<60>; -// SCSpecUDTEnumCaseV0 cases<50>; +// SCSpecUDTEnumCaseV0 cases<>; // }; // // =========================================================================== @@ -10010,7 +10033,7 @@ xdr.struct("ScSpecUdtEnumV0", [ ["doc", xdr.string(SC_SPEC_DOC_LIMIT)], ["lib", xdr.string(80)], ["name", xdr.string(60)], - ["cases", xdr.varArray(xdr.lookup("ScSpecUdtEnumCaseV0"), 50)], + ["cases", xdr.varArray(xdr.lookup("ScSpecUdtEnumCaseV0"), 2147483647)], ]); // === xdr source ============================================================ @@ -10036,7 +10059,7 @@ xdr.struct("ScSpecUdtErrorEnumCaseV0", [ // string doc; // string lib<80>; // string name<60>; -// SCSpecUDTErrorEnumCaseV0 cases<50>; +// SCSpecUDTErrorEnumCaseV0 cases<>; // }; // // =========================================================================== @@ -10044,7 +10067,7 @@ xdr.struct("ScSpecUdtErrorEnumV0", [ ["doc", xdr.string(SC_SPEC_DOC_LIMIT)], ["lib", xdr.string(80)], ["name", xdr.string(60)], - ["cases", xdr.varArray(xdr.lookup("ScSpecUdtErrorEnumCaseV0"), 50)], + ["cases", xdr.varArray(xdr.lookup("ScSpecUdtErrorEnumCaseV0"), 2147483647)], ]); // === xdr source ============================================================ @@ -10069,7 +10092,7 @@ xdr.struct("ScSpecFunctionInputV0", [ // { // string doc; // SCSymbol name; -// SCSpecFunctionInputV0 inputs<10>; +// SCSpecFunctionInputV0 inputs<>; // SCSpecTypeDef outputs<1>; // }; // @@ -10077,7 +10100,7 @@ xdr.struct("ScSpecFunctionInputV0", [ xdr.struct("ScSpecFunctionV0", [ ["doc", xdr.string(SC_SPEC_DOC_LIMIT)], ["name", xdr.lookup("ScSymbol")], - ["inputs", xdr.varArray(xdr.lookup("ScSpecFunctionInputV0"), 10)], + ["inputs", xdr.varArray(xdr.lookup("ScSpecFunctionInputV0"), 2147483647)], ["outputs", xdr.varArray(xdr.lookup("ScSpecTypeDef"), 1)], ]); @@ -10137,7 +10160,7 @@ xdr.enum("ScSpecEventDataFormat", { // string lib<80>; // SCSymbol name; // SCSymbol prefixTopics<2>; -// SCSpecEventParamV0 params<50>; +// SCSpecEventParamV0 params<>; // SCSpecEventDataFormat dataFormat; // }; // @@ -10147,7 +10170,7 @@ xdr.struct("ScSpecEventV0", [ ["lib", xdr.string(80)], ["name", xdr.lookup("ScSymbol")], ["prefixTopics", xdr.varArray(xdr.lookup("ScSymbol"), 2)], - ["params", xdr.varArray(xdr.lookup("ScSpecEventParamV0"), 50)], + ["params", xdr.varArray(xdr.lookup("ScSpecEventParamV0"), 2147483647)], ["dataFormat", xdr.lookup("ScSpecEventDataFormat")], ]); @@ -10213,6 +10236,13 @@ xdr.union("ScSpecEntry", { }, }); +// === xdr source ============================================================ +// +// typedef opaque EncodedLedgerKey<>; +// +// =========================================================================== +xdr.typedef("EncodedLedgerKey", xdr.varOpaque()); + // === xdr source ============================================================ // // struct ConfigSettingContractExecutionLanesV0 @@ -10541,7 +10571,40 @@ xdr.struct("ConfigSettingContractBandwidthV0", [ // // Cost of performing BLS12-381 scalar element exponentiation // Bls12381FrPow = 68, // // Cost of performing BLS12-381 scalar element inversion -// Bls12381FrInv = 69 +// Bls12381FrInv = 69, +// +// // Cost of encoding a BN254 Fp (base field element) +// Bn254EncodeFp = 70, +// // Cost of decoding a BN254 Fp (base field element) +// Bn254DecodeFp = 71, +// // Cost of checking a G1 point lies on the curve +// Bn254G1CheckPointOnCurve = 72, +// // Cost of checking a G2 point lies on the curve +// Bn254G2CheckPointOnCurve = 73, +// // Cost of checking a G2 point belongs to the correct subgroup +// Bn254G2CheckPointInSubgroup = 74, +// // Cost of converting a BN254 G1 point from projective to affine coordinates +// Bn254G1ProjectiveToAffine = 75, +// // Cost of performing BN254 G1 point addition +// Bn254G1Add = 76, +// // Cost of performing BN254 G1 scalar multiplication +// Bn254G1Mul = 77, +// // Cost of performing BN254 pairing operation +// Bn254Pairing = 78, +// // Cost of converting a BN254 scalar element from U256 +// Bn254FrFromU256 = 79, +// // Cost of converting a BN254 scalar element to U256 +// Bn254FrToU256 = 80, +// // // Cost of performing BN254 scalar element addition/subtraction +// Bn254FrAddSub = 81, +// // Cost of performing BN254 scalar element multiplication +// Bn254FrMul = 82, +// // Cost of performing BN254 scalar element exponentiation +// Bn254FrPow = 83, +// // Cost of performing BN254 scalar element inversion +// Bn254FrInv = 84, +// // Cost of performing BN254 G1 multi-scalar multiplication (MSM) +// Bn254G1Msm = 85 // }; // // =========================================================================== @@ -10616,6 +10679,22 @@ xdr.enum("ContractCostType", { bls12381FrMul: 67, bls12381FrPow: 68, bls12381FrInv: 69, + bn254EncodeFp: 70, + bn254DecodeFp: 71, + bn254G1CheckPointOnCurve: 72, + bn254G2CheckPointOnCurve: 73, + bn254G2CheckPointInSubgroup: 74, + bn254G1ProjectiveToAffine: 75, + bn254G1Add: 76, + bn254G1Mul: 77, + bn254Pairing: 78, + bn254FrFromU256: 79, + bn254FrToU256: 80, + bn254FrAddSub: 81, + bn254FrMul: 82, + bn254FrPow: 83, + bn254FrInv: 84, + bn254G1Msm: 85, }); // === xdr source ============================================================ @@ -10710,6 +10789,54 @@ xdr.struct("ConfigSettingScpTiming", [ ["ballotTimeoutIncrementMilliseconds", xdr.lookup("Uint32")], ]); +// === xdr source ============================================================ +// +// struct FrozenLedgerKeys { +// EncodedLedgerKey keys<>; +// }; +// +// =========================================================================== +xdr.struct("FrozenLedgerKeys", [ + ["keys", xdr.varArray(xdr.lookup("EncodedLedgerKey"), 2147483647)], +]); + +// === xdr source ============================================================ +// +// struct FrozenLedgerKeysDelta { +// EncodedLedgerKey keysToFreeze<>; +// EncodedLedgerKey keysToUnfreeze<>; +// }; +// +// =========================================================================== +xdr.struct("FrozenLedgerKeysDelta", [ + ["keysToFreeze", xdr.varArray(xdr.lookup("EncodedLedgerKey"), 2147483647)], + ["keysToUnfreeze", xdr.varArray(xdr.lookup("EncodedLedgerKey"), 2147483647)], +]); + +// === xdr source ============================================================ +// +// struct FreezeBypassTxs { +// Hash txHashes<>; +// }; +// +// =========================================================================== +xdr.struct("FreezeBypassTxes", [ + ["txHashes", xdr.varArray(xdr.lookup("Hash"), 2147483647)], +]); + +// === xdr source ============================================================ +// +// struct FreezeBypassTxsDelta { +// Hash addTxs<>; +// Hash removeTxs<>; +// }; +// +// =========================================================================== +xdr.struct("FreezeBypassTxsDelta", [ + ["addTxes", xdr.varArray(xdr.lookup("Hash"), 2147483647)], + ["removeTxes", xdr.varArray(xdr.lookup("Hash"), 2147483647)], +]); + // === xdr source ============================================================ // // const CONTRACT_COST_COUNT_LIMIT = 1024; @@ -10744,7 +10871,11 @@ xdr.typedef("ContractCostParams", xdr.varArray(xdr.lookup("ContractCostParamEntr // CONFIG_SETTING_EVICTION_ITERATOR = 13, // CONFIG_SETTING_CONTRACT_PARALLEL_COMPUTE_V0 = 14, // CONFIG_SETTING_CONTRACT_LEDGER_COST_EXT_V0 = 15, -// CONFIG_SETTING_SCP_TIMING = 16 +// CONFIG_SETTING_SCP_TIMING = 16, +// CONFIG_SETTING_FROZEN_LEDGER_KEYS = 17, +// CONFIG_SETTING_FROZEN_LEDGER_KEYS_DELTA = 18, +// CONFIG_SETTING_FREEZE_BYPASS_TXS = 19, +// CONFIG_SETTING_FREEZE_BYPASS_TXS_DELTA = 20 // }; // // =========================================================================== @@ -10766,6 +10897,10 @@ xdr.enum("ConfigSettingId", { configSettingContractParallelComputeV0: 14, configSettingContractLedgerCostExtV0: 15, configSettingScpTiming: 16, + configSettingFrozenLedgerKeys: 17, + configSettingFrozenLedgerKeysDelta: 18, + configSettingFreezeBypassTxes: 19, + configSettingFreezeBypassTxsDelta: 20, }); // === xdr source ============================================================ @@ -10806,6 +10941,14 @@ xdr.enum("ConfigSettingId", { // ConfigSettingContractLedgerCostExtV0 contractLedgerCostExt; // case CONFIG_SETTING_SCP_TIMING: // ConfigSettingSCPTiming contractSCPTiming; +// case CONFIG_SETTING_FROZEN_LEDGER_KEYS: +// FrozenLedgerKeys frozenLedgerKeys; +// case CONFIG_SETTING_FROZEN_LEDGER_KEYS_DELTA: +// FrozenLedgerKeysDelta frozenLedgerKeysDelta; +// case CONFIG_SETTING_FREEZE_BYPASS_TXS: +// FreezeBypassTxs freezeBypassTxs; +// case CONFIG_SETTING_FREEZE_BYPASS_TXS_DELTA: +// FreezeBypassTxsDelta freezeBypassTxsDelta; // }; // // =========================================================================== @@ -10830,6 +10973,10 @@ xdr.union("ConfigSettingEntry", { ["configSettingContractParallelComputeV0", "contractParallelCompute"], ["configSettingContractLedgerCostExtV0", "contractLedgerCostExt"], ["configSettingScpTiming", "contractScpTiming"], + ["configSettingFrozenLedgerKeys", "frozenLedgerKeys"], + ["configSettingFrozenLedgerKeysDelta", "frozenLedgerKeysDelta"], + ["configSettingFreezeBypassTxes", "freezeBypassTxes"], + ["configSettingFreezeBypassTxsDelta", "freezeBypassTxsDelta"], ], arms: { contractMaxSizeBytes: xdr.lookup("Uint32"), @@ -10849,6 +10996,10 @@ xdr.union("ConfigSettingEntry", { contractParallelCompute: xdr.lookup("ConfigSettingContractParallelComputeV0"), contractLedgerCostExt: xdr.lookup("ConfigSettingContractLedgerCostExtV0"), contractScpTiming: xdr.lookup("ConfigSettingScpTiming"), + frozenLedgerKeys: xdr.lookup("FrozenLedgerKeys"), + frozenLedgerKeysDelta: xdr.lookup("FrozenLedgerKeysDelta"), + freezeBypassTxes: xdr.lookup("FreezeBypassTxes"), + freezeBypassTxsDelta: xdr.lookup("FreezeBypassTxsDelta"), }, }); diff --git a/types/curr.d.ts b/types/curr.d.ts index 528f78f9a..7b24280ca 100644 --- a/types/curr.d.ts +++ b/types/curr.d.ts @@ -1,4 +1,4 @@ -// Automatically generated by xdrgen on 2024-09-12T11:09:00-08:00 +// Automatically generated by xdrgen on 2026-03-18T11:09:00-08:00 // DO NOT EDIT or your changes may be overwritten import { Operation } from './index'; @@ -90,6 +90,7 @@ export namespace xdr { validateXDR(input: Buffer, format?: 'raw'): boolean; validateXDR(input: string, format: 'hex' | 'base64'): boolean; } + class Hyper { low: number; @@ -1502,9 +1503,10 @@ export namespace xdr { | 'claimClaimableBalanceCannotClaim' | 'claimClaimableBalanceLineFull' | 'claimClaimableBalanceNoTrust' - | 'claimClaimableBalanceNotAuthorized'; + | 'claimClaimableBalanceNotAuthorized' + | 'claimClaimableBalanceTrustlineFrozen'; - readonly value: 0 | -1 | -2 | -3 | -4 | -5; + readonly value: 0 | -1 | -2 | -3 | -4 | -5 | -6; static claimClaimableBalanceSuccess(): ClaimClaimableBalanceResultCode; @@ -1517,6 +1519,8 @@ export namespace xdr { static claimClaimableBalanceNoTrust(): ClaimClaimableBalanceResultCode; static claimClaimableBalanceNotAuthorized(): ClaimClaimableBalanceResultCode; + + static claimClaimableBalanceTrustlineFrozen(): ClaimClaimableBalanceResultCode; } class BeginSponsoringFutureReservesResultCode { @@ -1645,9 +1649,10 @@ export namespace xdr { | 'liquidityPoolDepositUnderfunded' | 'liquidityPoolDepositLineFull' | 'liquidityPoolDepositBadPrice' - | 'liquidityPoolDepositPoolFull'; + | 'liquidityPoolDepositPoolFull' + | 'liquidityPoolDepositTrustlineFrozen'; - readonly value: 0 | -1 | -2 | -3 | -4 | -5 | -6 | -7; + readonly value: 0 | -1 | -2 | -3 | -4 | -5 | -6 | -7 | -8; static liquidityPoolDepositSuccess(): LiquidityPoolDepositResultCode; @@ -1664,6 +1669,8 @@ export namespace xdr { static liquidityPoolDepositBadPrice(): LiquidityPoolDepositResultCode; static liquidityPoolDepositPoolFull(): LiquidityPoolDepositResultCode; + + static liquidityPoolDepositTrustlineFrozen(): LiquidityPoolDepositResultCode; } class LiquidityPoolWithdrawResultCode { @@ -1673,9 +1680,10 @@ export namespace xdr { | 'liquidityPoolWithdrawNoTrust' | 'liquidityPoolWithdrawUnderfunded' | 'liquidityPoolWithdrawLineFull' - | 'liquidityPoolWithdrawUnderMinimum'; + | 'liquidityPoolWithdrawUnderMinimum' + | 'liquidityPoolWithdrawTrustlineFrozen'; - readonly value: 0 | -1 | -2 | -3 | -4 | -5; + readonly value: 0 | -1 | -2 | -3 | -4 | -5 | -6; static liquidityPoolWithdrawSuccess(): LiquidityPoolWithdrawResultCode; @@ -1688,6 +1696,8 @@ export namespace xdr { static liquidityPoolWithdrawLineFull(): LiquidityPoolWithdrawResultCode; static liquidityPoolWithdrawUnderMinimum(): LiquidityPoolWithdrawResultCode; + + static liquidityPoolWithdrawTrustlineFrozen(): LiquidityPoolWithdrawResultCode; } class InvokeHostFunctionResultCode { @@ -1797,7 +1807,8 @@ export namespace xdr { | 'txBadSponsorship' | 'txBadMinSeqAgeOrGap' | 'txMalformed' - | 'txSorobanInvalid'; + | 'txSorobanInvalid' + | 'txFrozenKeyAccessed'; readonly value: | 1 @@ -1818,7 +1829,8 @@ export namespace xdr { | -14 | -15 | -16 - | -17; + | -17 + | -18; static txFeeBumpInnerSuccess(): TransactionResultCode; @@ -1857,6 +1869,8 @@ export namespace xdr { static txMalformed(): TransactionResultCode; static txSorobanInvalid(): TransactionResultCode; + + static txFrozenKeyAccessed(): TransactionResultCode; } class CryptoKeyType { @@ -2384,7 +2398,23 @@ export namespace xdr { | 'bls12381FrAddSub' | 'bls12381FrMul' | 'bls12381FrPow' - | 'bls12381FrInv'; + | 'bls12381FrInv' + | 'bn254EncodeFp' + | 'bn254DecodeFp' + | 'bn254G1CheckPointOnCurve' + | 'bn254G2CheckPointOnCurve' + | 'bn254G2CheckPointInSubgroup' + | 'bn254G1ProjectiveToAffine' + | 'bn254G1Add' + | 'bn254G1Mul' + | 'bn254Pairing' + | 'bn254FrFromU256' + | 'bn254FrToU256' + | 'bn254FrAddSub' + | 'bn254FrMul' + | 'bn254FrPow' + | 'bn254FrInv' + | 'bn254G1Msm'; readonly value: | 0 @@ -2456,7 +2486,23 @@ export namespace xdr { | 66 | 67 | 68 - | 69; + | 69 + | 70 + | 71 + | 72 + | 73 + | 74 + | 75 + | 76 + | 77 + | 78 + | 79 + | 80 + | 81 + | 82 + | 83 + | 84 + | 85; static wasmInsnExec(): ContractCostType; @@ -2597,6 +2643,38 @@ export namespace xdr { static bls12381FrPow(): ContractCostType; static bls12381FrInv(): ContractCostType; + + static bn254EncodeFp(): ContractCostType; + + static bn254DecodeFp(): ContractCostType; + + static bn254G1CheckPointOnCurve(): ContractCostType; + + static bn254G2CheckPointOnCurve(): ContractCostType; + + static bn254G2CheckPointInSubgroup(): ContractCostType; + + static bn254G1ProjectiveToAffine(): ContractCostType; + + static bn254G1Add(): ContractCostType; + + static bn254G1Mul(): ContractCostType; + + static bn254Pairing(): ContractCostType; + + static bn254FrFromU256(): ContractCostType; + + static bn254FrToU256(): ContractCostType; + + static bn254FrAddSub(): ContractCostType; + + static bn254FrMul(): ContractCostType; + + static bn254FrPow(): ContractCostType; + + static bn254FrInv(): ContractCostType; + + static bn254G1Msm(): ContractCostType; } class ConfigSettingId { @@ -2617,7 +2695,11 @@ export namespace xdr { | 'configSettingEvictionIterator' | 'configSettingContractParallelComputeV0' | 'configSettingContractLedgerCostExtV0' - | 'configSettingScpTiming'; + | 'configSettingScpTiming' + | 'configSettingFrozenLedgerKeys' + | 'configSettingFrozenLedgerKeysDelta' + | 'configSettingFreezeBypassTxes' + | 'configSettingFreezeBypassTxsDelta'; readonly value: | 0 @@ -2636,7 +2718,11 @@ export namespace xdr { | 13 | 14 | 15 - | 16; + | 16 + | 17 + | 18 + | 19 + | 20; static configSettingContractMaxSizeBytes(): ConfigSettingId; @@ -2671,6 +2757,14 @@ export namespace xdr { static configSettingContractLedgerCostExtV0(): ConfigSettingId; static configSettingScpTiming(): ConfigSettingId; + + static configSettingFrozenLedgerKeys(): ConfigSettingId; + + static configSettingFrozenLedgerKeysDelta(): ConfigSettingId; + + static configSettingFreezeBypassTxes(): ConfigSettingId; + + static configSettingFreezeBypassTxsDelta(): ConfigSettingId; } const Value: VarOpaque; @@ -2747,6 +2841,8 @@ export namespace xdr { const ScSymbol: XDRString; + const EncodedLedgerKey: VarOpaque; + const ContractCostParams: XDRArray; class ScpBallot { @@ -10602,6 +10698,123 @@ export namespace xdr { static validateXDR(input: string, format: 'hex' | 'base64'): boolean; } + class FrozenLedgerKeys { + constructor(attributes: { keys: Buffer[] }); + + keys(value?: Buffer[]): Buffer[]; + + toXDR(format?: 'raw'): Buffer; + + toXDR(format: 'hex' | 'base64'): string; + + static read(io: Buffer): FrozenLedgerKeys; + + static write(value: FrozenLedgerKeys, io: Buffer): void; + + static isValid(value: FrozenLedgerKeys): boolean; + + static toXDR(value: FrozenLedgerKeys): Buffer; + + static fromXDR(input: Buffer, format?: 'raw'): FrozenLedgerKeys; + + static fromXDR(input: string, format: 'hex' | 'base64'): FrozenLedgerKeys; + + static validateXDR(input: Buffer, format?: 'raw'): boolean; + + static validateXDR(input: string, format: 'hex' | 'base64'): boolean; + } + + class FrozenLedgerKeysDelta { + constructor(attributes: { + keysToFreeze: Buffer[]; + keysToUnfreeze: Buffer[]; + }); + + keysToFreeze(value?: Buffer[]): Buffer[]; + + keysToUnfreeze(value?: Buffer[]): Buffer[]; + + toXDR(format?: 'raw'): Buffer; + + toXDR(format: 'hex' | 'base64'): string; + + static read(io: Buffer): FrozenLedgerKeysDelta; + + static write(value: FrozenLedgerKeysDelta, io: Buffer): void; + + static isValid(value: FrozenLedgerKeysDelta): boolean; + + static toXDR(value: FrozenLedgerKeysDelta): Buffer; + + static fromXDR(input: Buffer, format?: 'raw'): FrozenLedgerKeysDelta; + + static fromXDR( + input: string, + format: 'hex' | 'base64', + ): FrozenLedgerKeysDelta; + + static validateXDR(input: Buffer, format?: 'raw'): boolean; + + static validateXDR(input: string, format: 'hex' | 'base64'): boolean; + } + + class FreezeBypassTxes { + constructor(attributes: { txHashes: Buffer[] }); + + txHashes(value?: Buffer[]): Buffer[]; + + toXDR(format?: 'raw'): Buffer; + + toXDR(format: 'hex' | 'base64'): string; + + static read(io: Buffer): FreezeBypassTxes; + + static write(value: FreezeBypassTxes, io: Buffer): void; + + static isValid(value: FreezeBypassTxes): boolean; + + static toXDR(value: FreezeBypassTxes): Buffer; + + static fromXDR(input: Buffer, format?: 'raw'): FreezeBypassTxes; + + static fromXDR(input: string, format: 'hex' | 'base64'): FreezeBypassTxes; + + static validateXDR(input: Buffer, format?: 'raw'): boolean; + + static validateXDR(input: string, format: 'hex' | 'base64'): boolean; + } + + class FreezeBypassTxsDelta { + constructor(attributes: { addTxes: Buffer[]; removeTxes: Buffer[] }); + + addTxes(value?: Buffer[]): Buffer[]; + + removeTxes(value?: Buffer[]): Buffer[]; + + toXDR(format?: 'raw'): Buffer; + + toXDR(format: 'hex' | 'base64'): string; + + static read(io: Buffer): FreezeBypassTxsDelta; + + static write(value: FreezeBypassTxsDelta, io: Buffer): void; + + static isValid(value: FreezeBypassTxsDelta): boolean; + + static toXDR(value: FreezeBypassTxsDelta): Buffer; + + static fromXDR(input: Buffer, format?: 'raw'): FreezeBypassTxsDelta; + + static fromXDR( + input: string, + format: 'hex' | 'base64', + ): FreezeBypassTxsDelta; + + static validateXDR(input: Buffer, format?: 'raw'): boolean; + + static validateXDR(input: string, format: 'hex' | 'base64'): boolean; + } + class LedgerCloseMetaBatch { constructor(attributes: { startSequence: number; @@ -14117,6 +14330,8 @@ export namespace xdr { static claimClaimableBalanceNotAuthorized(): ClaimClaimableBalanceResult; + static claimClaimableBalanceTrustlineFrozen(): ClaimClaimableBalanceResult; + value(): void; toXDR(format?: 'raw'): Buffer; @@ -14396,6 +14611,8 @@ export namespace xdr { static liquidityPoolDepositPoolFull(): LiquidityPoolDepositResult; + static liquidityPoolDepositTrustlineFrozen(): LiquidityPoolDepositResult; + value(): void; toXDR(format?: 'raw'): Buffer; @@ -14437,6 +14654,8 @@ export namespace xdr { static liquidityPoolWithdrawUnderMinimum(): LiquidityPoolWithdrawResult; + static liquidityPoolWithdrawTrustlineFrozen(): LiquidityPoolWithdrawResult; + value(): void; toXDR(format?: 'raw'): Buffer; @@ -14875,6 +15094,8 @@ export namespace xdr { static txSorobanInvalid(): InnerTransactionResultResult; + static txFrozenKeyAccessed(): InnerTransactionResultResult; + value(): OperationResult[] | void; toXDR(format?: 'raw'): Buffer; @@ -14983,6 +15204,8 @@ export namespace xdr { static txSorobanInvalid(): TransactionResultResult; + static txFrozenKeyAccessed(): TransactionResultResult; + value(): InnerTransactionResultPair | OperationResult[] | void; toXDR(format?: 'raw'): Buffer; @@ -15755,6 +15978,14 @@ export namespace xdr { contractScpTiming(value?: ConfigSettingScpTiming): ConfigSettingScpTiming; + frozenLedgerKeys(value?: FrozenLedgerKeys): FrozenLedgerKeys; + + frozenLedgerKeysDelta(value?: FrozenLedgerKeysDelta): FrozenLedgerKeysDelta; + + freezeBypassTxes(value?: FreezeBypassTxes): FreezeBypassTxes; + + freezeBypassTxsDelta(value?: FreezeBypassTxsDelta): FreezeBypassTxsDelta; + static configSettingContractMaxSizeBytes(value: number): ConfigSettingEntry; static configSettingContractComputeV0( @@ -15821,6 +16052,22 @@ export namespace xdr { value: ConfigSettingScpTiming, ): ConfigSettingEntry; + static configSettingFrozenLedgerKeys( + value: FrozenLedgerKeys, + ): ConfigSettingEntry; + + static configSettingFrozenLedgerKeysDelta( + value: FrozenLedgerKeysDelta, + ): ConfigSettingEntry; + + static configSettingFreezeBypassTxes( + value: FreezeBypassTxes, + ): ConfigSettingEntry; + + static configSettingFreezeBypassTxsDelta( + value: FreezeBypassTxsDelta, + ): ConfigSettingEntry; + value(): | number | ConfigSettingContractComputeV0 @@ -15835,7 +16082,11 @@ export namespace xdr { | EvictionIterator | ConfigSettingContractParallelComputeV0 | ConfigSettingContractLedgerCostExtV0 - | ConfigSettingScpTiming; + | ConfigSettingScpTiming + | FrozenLedgerKeys + | FrozenLedgerKeysDelta + | FreezeBypassTxes + | FreezeBypassTxsDelta; toXDR(format?: 'raw'): Buffer; diff --git a/types/next.d.ts b/types/next.d.ts index cb9be8da9..7b24280ca 100644 --- a/types/next.d.ts +++ b/types/next.d.ts @@ -1,4 +1,4 @@ -// Automatically generated by xdrgen on 2024-09-12T11:09:00-08:00 +// Automatically generated by xdrgen on 2026-03-18T11:09:00-08:00 // DO NOT EDIT or your changes may be overwritten import { Operation } from './index'; @@ -1503,9 +1503,10 @@ export namespace xdr { | 'claimClaimableBalanceCannotClaim' | 'claimClaimableBalanceLineFull' | 'claimClaimableBalanceNoTrust' - | 'claimClaimableBalanceNotAuthorized'; + | 'claimClaimableBalanceNotAuthorized' + | 'claimClaimableBalanceTrustlineFrozen'; - readonly value: 0 | -1 | -2 | -3 | -4 | -5; + readonly value: 0 | -1 | -2 | -3 | -4 | -5 | -6; static claimClaimableBalanceSuccess(): ClaimClaimableBalanceResultCode; @@ -1518,6 +1519,8 @@ export namespace xdr { static claimClaimableBalanceNoTrust(): ClaimClaimableBalanceResultCode; static claimClaimableBalanceNotAuthorized(): ClaimClaimableBalanceResultCode; + + static claimClaimableBalanceTrustlineFrozen(): ClaimClaimableBalanceResultCode; } class BeginSponsoringFutureReservesResultCode { @@ -1646,9 +1649,10 @@ export namespace xdr { | 'liquidityPoolDepositUnderfunded' | 'liquidityPoolDepositLineFull' | 'liquidityPoolDepositBadPrice' - | 'liquidityPoolDepositPoolFull'; + | 'liquidityPoolDepositPoolFull' + | 'liquidityPoolDepositTrustlineFrozen'; - readonly value: 0 | -1 | -2 | -3 | -4 | -5 | -6 | -7; + readonly value: 0 | -1 | -2 | -3 | -4 | -5 | -6 | -7 | -8; static liquidityPoolDepositSuccess(): LiquidityPoolDepositResultCode; @@ -1665,6 +1669,8 @@ export namespace xdr { static liquidityPoolDepositBadPrice(): LiquidityPoolDepositResultCode; static liquidityPoolDepositPoolFull(): LiquidityPoolDepositResultCode; + + static liquidityPoolDepositTrustlineFrozen(): LiquidityPoolDepositResultCode; } class LiquidityPoolWithdrawResultCode { @@ -1674,9 +1680,10 @@ export namespace xdr { | 'liquidityPoolWithdrawNoTrust' | 'liquidityPoolWithdrawUnderfunded' | 'liquidityPoolWithdrawLineFull' - | 'liquidityPoolWithdrawUnderMinimum'; + | 'liquidityPoolWithdrawUnderMinimum' + | 'liquidityPoolWithdrawTrustlineFrozen'; - readonly value: 0 | -1 | -2 | -3 | -4 | -5; + readonly value: 0 | -1 | -2 | -3 | -4 | -5 | -6; static liquidityPoolWithdrawSuccess(): LiquidityPoolWithdrawResultCode; @@ -1689,6 +1696,8 @@ export namespace xdr { static liquidityPoolWithdrawLineFull(): LiquidityPoolWithdrawResultCode; static liquidityPoolWithdrawUnderMinimum(): LiquidityPoolWithdrawResultCode; + + static liquidityPoolWithdrawTrustlineFrozen(): LiquidityPoolWithdrawResultCode; } class InvokeHostFunctionResultCode { @@ -1798,7 +1807,8 @@ export namespace xdr { | 'txBadSponsorship' | 'txBadMinSeqAgeOrGap' | 'txMalformed' - | 'txSorobanInvalid'; + | 'txSorobanInvalid' + | 'txFrozenKeyAccessed'; readonly value: | 1 @@ -1819,7 +1829,8 @@ export namespace xdr { | -14 | -15 | -16 - | -17; + | -17 + | -18; static txFeeBumpInnerSuccess(): TransactionResultCode; @@ -1858,6 +1869,8 @@ export namespace xdr { static txMalformed(): TransactionResultCode; static txSorobanInvalid(): TransactionResultCode; + + static txFrozenKeyAccessed(): TransactionResultCode; } class CryptoKeyType { @@ -2385,7 +2398,23 @@ export namespace xdr { | 'bls12381FrAddSub' | 'bls12381FrMul' | 'bls12381FrPow' - | 'bls12381FrInv'; + | 'bls12381FrInv' + | 'bn254EncodeFp' + | 'bn254DecodeFp' + | 'bn254G1CheckPointOnCurve' + | 'bn254G2CheckPointOnCurve' + | 'bn254G2CheckPointInSubgroup' + | 'bn254G1ProjectiveToAffine' + | 'bn254G1Add' + | 'bn254G1Mul' + | 'bn254Pairing' + | 'bn254FrFromU256' + | 'bn254FrToU256' + | 'bn254FrAddSub' + | 'bn254FrMul' + | 'bn254FrPow' + | 'bn254FrInv' + | 'bn254G1Msm'; readonly value: | 0 @@ -2457,7 +2486,23 @@ export namespace xdr { | 66 | 67 | 68 - | 69; + | 69 + | 70 + | 71 + | 72 + | 73 + | 74 + | 75 + | 76 + | 77 + | 78 + | 79 + | 80 + | 81 + | 82 + | 83 + | 84 + | 85; static wasmInsnExec(): ContractCostType; @@ -2598,6 +2643,38 @@ export namespace xdr { static bls12381FrPow(): ContractCostType; static bls12381FrInv(): ContractCostType; + + static bn254EncodeFp(): ContractCostType; + + static bn254DecodeFp(): ContractCostType; + + static bn254G1CheckPointOnCurve(): ContractCostType; + + static bn254G2CheckPointOnCurve(): ContractCostType; + + static bn254G2CheckPointInSubgroup(): ContractCostType; + + static bn254G1ProjectiveToAffine(): ContractCostType; + + static bn254G1Add(): ContractCostType; + + static bn254G1Mul(): ContractCostType; + + static bn254Pairing(): ContractCostType; + + static bn254FrFromU256(): ContractCostType; + + static bn254FrToU256(): ContractCostType; + + static bn254FrAddSub(): ContractCostType; + + static bn254FrMul(): ContractCostType; + + static bn254FrPow(): ContractCostType; + + static bn254FrInv(): ContractCostType; + + static bn254G1Msm(): ContractCostType; } class ConfigSettingId { @@ -2618,7 +2695,11 @@ export namespace xdr { | 'configSettingEvictionIterator' | 'configSettingContractParallelComputeV0' | 'configSettingContractLedgerCostExtV0' - | 'configSettingScpTiming'; + | 'configSettingScpTiming' + | 'configSettingFrozenLedgerKeys' + | 'configSettingFrozenLedgerKeysDelta' + | 'configSettingFreezeBypassTxes' + | 'configSettingFreezeBypassTxsDelta'; readonly value: | 0 @@ -2637,7 +2718,11 @@ export namespace xdr { | 13 | 14 | 15 - | 16; + | 16 + | 17 + | 18 + | 19 + | 20; static configSettingContractMaxSizeBytes(): ConfigSettingId; @@ -2672,6 +2757,14 @@ export namespace xdr { static configSettingContractLedgerCostExtV0(): ConfigSettingId; static configSettingScpTiming(): ConfigSettingId; + + static configSettingFrozenLedgerKeys(): ConfigSettingId; + + static configSettingFrozenLedgerKeysDelta(): ConfigSettingId; + + static configSettingFreezeBypassTxes(): ConfigSettingId; + + static configSettingFreezeBypassTxsDelta(): ConfigSettingId; } const Value: VarOpaque; @@ -2748,6 +2841,8 @@ export namespace xdr { const ScSymbol: XDRString; + const EncodedLedgerKey: VarOpaque; + const ContractCostParams: XDRArray; class ScpBallot { @@ -10055,7 +10150,7 @@ export namespace xdr { doc: string | Buffer; lib: string | Buffer; name: string | Buffer; - prefixTopics: (string | Buffer)[]; + prefixTopics: Array; params: ScSpecEventParamV0[]; dataFormat: ScSpecEventDataFormat; }); @@ -10066,7 +10161,7 @@ export namespace xdr { name(value?: string | Buffer): string | Buffer; - prefixTopics(value?: (string | Buffer)[]): (string | Buffer)[]; + prefixTopics(value?: Array): Array; params(value?: ScSpecEventParamV0[]): ScSpecEventParamV0[]; @@ -10603,6 +10698,123 @@ export namespace xdr { static validateXDR(input: string, format: 'hex' | 'base64'): boolean; } + class FrozenLedgerKeys { + constructor(attributes: { keys: Buffer[] }); + + keys(value?: Buffer[]): Buffer[]; + + toXDR(format?: 'raw'): Buffer; + + toXDR(format: 'hex' | 'base64'): string; + + static read(io: Buffer): FrozenLedgerKeys; + + static write(value: FrozenLedgerKeys, io: Buffer): void; + + static isValid(value: FrozenLedgerKeys): boolean; + + static toXDR(value: FrozenLedgerKeys): Buffer; + + static fromXDR(input: Buffer, format?: 'raw'): FrozenLedgerKeys; + + static fromXDR(input: string, format: 'hex' | 'base64'): FrozenLedgerKeys; + + static validateXDR(input: Buffer, format?: 'raw'): boolean; + + static validateXDR(input: string, format: 'hex' | 'base64'): boolean; + } + + class FrozenLedgerKeysDelta { + constructor(attributes: { + keysToFreeze: Buffer[]; + keysToUnfreeze: Buffer[]; + }); + + keysToFreeze(value?: Buffer[]): Buffer[]; + + keysToUnfreeze(value?: Buffer[]): Buffer[]; + + toXDR(format?: 'raw'): Buffer; + + toXDR(format: 'hex' | 'base64'): string; + + static read(io: Buffer): FrozenLedgerKeysDelta; + + static write(value: FrozenLedgerKeysDelta, io: Buffer): void; + + static isValid(value: FrozenLedgerKeysDelta): boolean; + + static toXDR(value: FrozenLedgerKeysDelta): Buffer; + + static fromXDR(input: Buffer, format?: 'raw'): FrozenLedgerKeysDelta; + + static fromXDR( + input: string, + format: 'hex' | 'base64', + ): FrozenLedgerKeysDelta; + + static validateXDR(input: Buffer, format?: 'raw'): boolean; + + static validateXDR(input: string, format: 'hex' | 'base64'): boolean; + } + + class FreezeBypassTxes { + constructor(attributes: { txHashes: Buffer[] }); + + txHashes(value?: Buffer[]): Buffer[]; + + toXDR(format?: 'raw'): Buffer; + + toXDR(format: 'hex' | 'base64'): string; + + static read(io: Buffer): FreezeBypassTxes; + + static write(value: FreezeBypassTxes, io: Buffer): void; + + static isValid(value: FreezeBypassTxes): boolean; + + static toXDR(value: FreezeBypassTxes): Buffer; + + static fromXDR(input: Buffer, format?: 'raw'): FreezeBypassTxes; + + static fromXDR(input: string, format: 'hex' | 'base64'): FreezeBypassTxes; + + static validateXDR(input: Buffer, format?: 'raw'): boolean; + + static validateXDR(input: string, format: 'hex' | 'base64'): boolean; + } + + class FreezeBypassTxsDelta { + constructor(attributes: { addTxes: Buffer[]; removeTxes: Buffer[] }); + + addTxes(value?: Buffer[]): Buffer[]; + + removeTxes(value?: Buffer[]): Buffer[]; + + toXDR(format?: 'raw'): Buffer; + + toXDR(format: 'hex' | 'base64'): string; + + static read(io: Buffer): FreezeBypassTxsDelta; + + static write(value: FreezeBypassTxsDelta, io: Buffer): void; + + static isValid(value: FreezeBypassTxsDelta): boolean; + + static toXDR(value: FreezeBypassTxsDelta): Buffer; + + static fromXDR(input: Buffer, format?: 'raw'): FreezeBypassTxsDelta; + + static fromXDR( + input: string, + format: 'hex' | 'base64', + ): FreezeBypassTxsDelta; + + static validateXDR(input: Buffer, format?: 'raw'): boolean; + + static validateXDR(input: string, format: 'hex' | 'base64'): boolean; + } + class LedgerCloseMetaBatch { constructor(attributes: { startSequence: number; @@ -14118,6 +14330,8 @@ export namespace xdr { static claimClaimableBalanceNotAuthorized(): ClaimClaimableBalanceResult; + static claimClaimableBalanceTrustlineFrozen(): ClaimClaimableBalanceResult; + value(): void; toXDR(format?: 'raw'): Buffer; @@ -14397,6 +14611,8 @@ export namespace xdr { static liquidityPoolDepositPoolFull(): LiquidityPoolDepositResult; + static liquidityPoolDepositTrustlineFrozen(): LiquidityPoolDepositResult; + value(): void; toXDR(format?: 'raw'): Buffer; @@ -14438,6 +14654,8 @@ export namespace xdr { static liquidityPoolWithdrawUnderMinimum(): LiquidityPoolWithdrawResult; + static liquidityPoolWithdrawTrustlineFrozen(): LiquidityPoolWithdrawResult; + value(): void; toXDR(format?: 'raw'): Buffer; @@ -14876,6 +15094,8 @@ export namespace xdr { static txSorobanInvalid(): InnerTransactionResultResult; + static txFrozenKeyAccessed(): InnerTransactionResultResult; + value(): OperationResult[] | void; toXDR(format?: 'raw'): Buffer; @@ -14984,6 +15204,8 @@ export namespace xdr { static txSorobanInvalid(): TransactionResultResult; + static txFrozenKeyAccessed(): TransactionResultResult; + value(): InnerTransactionResultPair | OperationResult[] | void; toXDR(format?: 'raw'): Buffer; @@ -15756,6 +15978,14 @@ export namespace xdr { contractScpTiming(value?: ConfigSettingScpTiming): ConfigSettingScpTiming; + frozenLedgerKeys(value?: FrozenLedgerKeys): FrozenLedgerKeys; + + frozenLedgerKeysDelta(value?: FrozenLedgerKeysDelta): FrozenLedgerKeysDelta; + + freezeBypassTxes(value?: FreezeBypassTxes): FreezeBypassTxes; + + freezeBypassTxsDelta(value?: FreezeBypassTxsDelta): FreezeBypassTxsDelta; + static configSettingContractMaxSizeBytes(value: number): ConfigSettingEntry; static configSettingContractComputeV0( @@ -15822,6 +16052,22 @@ export namespace xdr { value: ConfigSettingScpTiming, ): ConfigSettingEntry; + static configSettingFrozenLedgerKeys( + value: FrozenLedgerKeys, + ): ConfigSettingEntry; + + static configSettingFrozenLedgerKeysDelta( + value: FrozenLedgerKeysDelta, + ): ConfigSettingEntry; + + static configSettingFreezeBypassTxes( + value: FreezeBypassTxes, + ): ConfigSettingEntry; + + static configSettingFreezeBypassTxsDelta( + value: FreezeBypassTxsDelta, + ): ConfigSettingEntry; + value(): | number | ConfigSettingContractComputeV0 @@ -15836,7 +16082,11 @@ export namespace xdr { | EvictionIterator | ConfigSettingContractParallelComputeV0 | ConfigSettingContractLedgerCostExtV0 - | ConfigSettingScpTiming; + | ConfigSettingScpTiming + | FrozenLedgerKeys + | FrozenLedgerKeysDelta + | FreezeBypassTxes + | FreezeBypassTxsDelta; toXDR(format?: 'raw'): Buffer; diff --git a/xdr/curr/Stellar-SCP.x b/xdr/curr/Stellar-SCP.x index 7ec99216f..1c45741f8 100644 --- a/xdr/curr/Stellar-SCP.x +++ b/xdr/curr/Stellar-SCP.x @@ -75,8 +75,8 @@ struct SCPEnvelope Signature signature; }; -// supports things like: A,B,C,(D,E,F),(G,H,(I,J,K,L)) -// only allows 2 levels of nesting +// supports things like: A,B,(C,D,E),(F,G,(H,I,(J,K,(L,M)))) +// only allows 4 levels of nesting struct SCPQuorumSet { uint32 threshold; diff --git a/xdr/curr/Stellar-contract-config-setting.x b/xdr/curr/Stellar-contract-config-setting.x index b075c6b4f..80c0d7fcf 100644 --- a/xdr/curr/Stellar-contract-config-setting.x +++ b/xdr/curr/Stellar-contract-config-setting.x @@ -1,6 +1,9 @@ %#include "xdr/Stellar-types.h" namespace stellar { + +typedef opaque EncodedLedgerKey<>; + // General “Soroban execution lane” settings struct ConfigSettingContractExecutionLanesV0 { @@ -260,7 +263,40 @@ enum ContractCostType { // Cost of performing BLS12-381 scalar element exponentiation Bls12381FrPow = 68, // Cost of performing BLS12-381 scalar element inversion - Bls12381FrInv = 69 + Bls12381FrInv = 69, + + // Cost of encoding a BN254 Fp (base field element) + Bn254EncodeFp = 70, + // Cost of decoding a BN254 Fp (base field element) + Bn254DecodeFp = 71, + // Cost of checking a G1 point lies on the curve + Bn254G1CheckPointOnCurve = 72, + // Cost of checking a G2 point lies on the curve + Bn254G2CheckPointOnCurve = 73, + // Cost of checking a G2 point belongs to the correct subgroup + Bn254G2CheckPointInSubgroup = 74, + // Cost of converting a BN254 G1 point from projective to affine coordinates + Bn254G1ProjectiveToAffine = 75, + // Cost of performing BN254 G1 point addition + Bn254G1Add = 76, + // Cost of performing BN254 G1 scalar multiplication + Bn254G1Mul = 77, + // Cost of performing BN254 pairing operation + Bn254Pairing = 78, + // Cost of converting a BN254 scalar element from U256 + Bn254FrFromU256 = 79, + // Cost of converting a BN254 scalar element to U256 + Bn254FrToU256 = 80, + // // Cost of performing BN254 scalar element addition/subtraction + Bn254FrAddSub = 81, + // Cost of performing BN254 scalar element multiplication + Bn254FrMul = 82, + // Cost of performing BN254 scalar element exponentiation + Bn254FrPow = 83, + // Cost of performing BN254 scalar element inversion + Bn254FrInv = 84, + // Cost of performing BN254 G1 multi-scalar multiplication (MSM) + Bn254G1Msm = 85 }; struct ContractCostParamEntry { @@ -310,6 +346,24 @@ struct ConfigSettingSCPTiming { uint32 ballotTimeoutIncrementMilliseconds; }; +struct FrozenLedgerKeys { + EncodedLedgerKey keys<>; +}; + +struct FrozenLedgerKeysDelta { + EncodedLedgerKey keysToFreeze<>; + EncodedLedgerKey keysToUnfreeze<>; +}; + +struct FreezeBypassTxs { + Hash txHashes<>; +}; + +struct FreezeBypassTxsDelta { + Hash addTxs<>; + Hash removeTxs<>; +}; + // limits the ContractCostParams size to 20kB const CONTRACT_COST_COUNT_LIMIT = 1024; @@ -334,7 +388,11 @@ enum ConfigSettingID CONFIG_SETTING_EVICTION_ITERATOR = 13, CONFIG_SETTING_CONTRACT_PARALLEL_COMPUTE_V0 = 14, CONFIG_SETTING_CONTRACT_LEDGER_COST_EXT_V0 = 15, - CONFIG_SETTING_SCP_TIMING = 16 + CONFIG_SETTING_SCP_TIMING = 16, + CONFIG_SETTING_FROZEN_LEDGER_KEYS = 17, + CONFIG_SETTING_FROZEN_LEDGER_KEYS_DELTA = 18, + CONFIG_SETTING_FREEZE_BYPASS_TXS = 19, + CONFIG_SETTING_FREEZE_BYPASS_TXS_DELTA = 20 }; union ConfigSettingEntry switch (ConfigSettingID configSettingID) @@ -373,5 +431,13 @@ case CONFIG_SETTING_CONTRACT_LEDGER_COST_EXT_V0: ConfigSettingContractLedgerCostExtV0 contractLedgerCostExt; case CONFIG_SETTING_SCP_TIMING: ConfigSettingSCPTiming contractSCPTiming; +case CONFIG_SETTING_FROZEN_LEDGER_KEYS: + FrozenLedgerKeys frozenLedgerKeys; +case CONFIG_SETTING_FROZEN_LEDGER_KEYS_DELTA: + FrozenLedgerKeysDelta frozenLedgerKeysDelta; +case CONFIG_SETTING_FREEZE_BYPASS_TXS: + FreezeBypassTxs freezeBypassTxs; +case CONFIG_SETTING_FREEZE_BYPASS_TXS_DELTA: + FreezeBypassTxsDelta freezeBypassTxsDelta; }; } diff --git a/xdr/curr/Stellar-contract-spec.x b/xdr/curr/Stellar-contract-spec.x index ce6e03072..33c4cec1e 100644 --- a/xdr/curr/Stellar-contract-spec.x +++ b/xdr/curr/Stellar-contract-spec.x @@ -135,7 +135,7 @@ struct SCSpecUDTStructV0 string doc; string lib<80>; string name<60>; - SCSpecUDTStructFieldV0 fields<40>; + SCSpecUDTStructFieldV0 fields<>; }; struct SCSpecUDTUnionCaseVoidV0 @@ -148,7 +148,7 @@ struct SCSpecUDTUnionCaseTupleV0 { string doc; string name<60>; - SCSpecTypeDef type<12>; + SCSpecTypeDef type<>; }; enum SCSpecUDTUnionCaseV0Kind @@ -170,7 +170,7 @@ struct SCSpecUDTUnionV0 string doc; string lib<80>; string name<60>; - SCSpecUDTUnionCaseV0 cases<50>; + SCSpecUDTUnionCaseV0 cases<>; }; struct SCSpecUDTEnumCaseV0 @@ -185,7 +185,7 @@ struct SCSpecUDTEnumV0 string doc; string lib<80>; string name<60>; - SCSpecUDTEnumCaseV0 cases<50>; + SCSpecUDTEnumCaseV0 cases<>; }; struct SCSpecUDTErrorEnumCaseV0 @@ -200,7 +200,7 @@ struct SCSpecUDTErrorEnumV0 string doc; string lib<80>; string name<60>; - SCSpecUDTErrorEnumCaseV0 cases<50>; + SCSpecUDTErrorEnumCaseV0 cases<>; }; struct SCSpecFunctionInputV0 @@ -214,7 +214,7 @@ struct SCSpecFunctionV0 { string doc; SCSymbol name; - SCSpecFunctionInputV0 inputs<10>; + SCSpecFunctionInputV0 inputs<>; SCSpecTypeDef outputs<1>; }; @@ -245,7 +245,7 @@ struct SCSpecEventV0 string lib<80>; SCSymbol name; SCSymbol prefixTopics<2>; - SCSpecEventParamV0 params<50>; + SCSpecEventParamV0 params<>; SCSpecEventDataFormat dataFormat; }; diff --git a/xdr/curr/Stellar-transaction.x b/xdr/curr/Stellar-transaction.x index 9a14d6e4f..c22f5b4a5 100644 --- a/xdr/curr/Stellar-transaction.x +++ b/xdr/curr/Stellar-transaction.x @@ -1597,7 +1597,8 @@ enum ClaimClaimableBalanceResultCode CLAIM_CLAIMABLE_BALANCE_CANNOT_CLAIM = -2, CLAIM_CLAIMABLE_BALANCE_LINE_FULL = -3, CLAIM_CLAIMABLE_BALANCE_NO_TRUST = -4, - CLAIM_CLAIMABLE_BALANCE_NOT_AUTHORIZED = -5 + CLAIM_CLAIMABLE_BALANCE_NOT_AUTHORIZED = -5, + CLAIM_CLAIMABLE_BALANCE_TRUSTLINE_FROZEN = -6 }; union ClaimClaimableBalanceResult switch (ClaimClaimableBalanceResultCode code) @@ -1609,6 +1610,7 @@ case CLAIM_CLAIMABLE_BALANCE_CANNOT_CLAIM: case CLAIM_CLAIMABLE_BALANCE_LINE_FULL: case CLAIM_CLAIMABLE_BALANCE_NO_TRUST: case CLAIM_CLAIMABLE_BALANCE_NOT_AUTHORIZED: +case CLAIM_CLAIMABLE_BALANCE_TRUSTLINE_FROZEN: void; }; @@ -1778,7 +1780,9 @@ enum LiquidityPoolDepositResultCode LIQUIDITY_POOL_DEPOSIT_LINE_FULL = -5, // pool share trust line doesn't // have sufficient limit LIQUIDITY_POOL_DEPOSIT_BAD_PRICE = -6, // deposit price outside bounds - LIQUIDITY_POOL_DEPOSIT_POOL_FULL = -7 // pool reserves are full + LIQUIDITY_POOL_DEPOSIT_POOL_FULL = -7, // pool reserves are full + LIQUIDITY_POOL_DEPOSIT_TRUSTLINE_FROZEN = -8 // trustline for one of the + // assets is frozen }; union LiquidityPoolDepositResult switch (LiquidityPoolDepositResultCode code) @@ -1792,6 +1796,7 @@ case LIQUIDITY_POOL_DEPOSIT_UNDERFUNDED: case LIQUIDITY_POOL_DEPOSIT_LINE_FULL: case LIQUIDITY_POOL_DEPOSIT_BAD_PRICE: case LIQUIDITY_POOL_DEPOSIT_POOL_FULL: +case LIQUIDITY_POOL_DEPOSIT_TRUSTLINE_FROZEN: void; }; @@ -1810,7 +1815,9 @@ enum LiquidityPoolWithdrawResultCode // pool share LIQUIDITY_POOL_WITHDRAW_LINE_FULL = -4, // would go above limit for one // of the assets - LIQUIDITY_POOL_WITHDRAW_UNDER_MINIMUM = -5 // didn't withdraw enough + LIQUIDITY_POOL_WITHDRAW_UNDER_MINIMUM = -5, // didn't withdraw enough + LIQUIDITY_POOL_WITHDRAW_TRUSTLINE_FROZEN = -6 // trustline for one of the + // assets is frozen }; union LiquidityPoolWithdrawResult switch (LiquidityPoolWithdrawResultCode code) @@ -1822,6 +1829,7 @@ case LIQUIDITY_POOL_WITHDRAW_NO_TRUST: case LIQUIDITY_POOL_WITHDRAW_UNDERFUNDED: case LIQUIDITY_POOL_WITHDRAW_LINE_FULL: case LIQUIDITY_POOL_WITHDRAW_UNDER_MINIMUM: +case LIQUIDITY_POOL_WITHDRAW_TRUSTLINE_FROZEN: void; }; @@ -1999,7 +2007,8 @@ enum TransactionResultCode txBAD_SPONSORSHIP = -14, // sponsorship not confirmed txBAD_MIN_SEQ_AGE_OR_GAP = -15, // minSeqAge or minSeqLedgerGap conditions not met txMALFORMED = -16, // precondition is invalid - txSOROBAN_INVALID = -17 // soroban-specific preconditions were not met + txSOROBAN_INVALID = -17, // soroban-specific preconditions were not met + txFROZEN_KEY_ACCESSED = -18 // a 'frozen' ledger key is accessed by any operation }; // InnerTransactionResult must be binary compatible with TransactionResult @@ -2031,6 +2040,7 @@ struct InnerTransactionResult case txBAD_MIN_SEQ_AGE_OR_GAP: case txMALFORMED: case txSOROBAN_INVALID: + case txFROZEN_KEY_ACCESSED: void; } result; @@ -2078,6 +2088,7 @@ struct TransactionResult case txBAD_MIN_SEQ_AGE_OR_GAP: case txMALFORMED: case txSOROBAN_INVALID: + case txFROZEN_KEY_ACCESSED: void; } result; diff --git a/xdr/next/Stellar-SCP.x b/xdr/next/Stellar-SCP.x index 7ec99216f..1c45741f8 100644 --- a/xdr/next/Stellar-SCP.x +++ b/xdr/next/Stellar-SCP.x @@ -75,8 +75,8 @@ struct SCPEnvelope Signature signature; }; -// supports things like: A,B,C,(D,E,F),(G,H,(I,J,K,L)) -// only allows 2 levels of nesting +// supports things like: A,B,(C,D,E),(F,G,(H,I,(J,K,(L,M)))) +// only allows 4 levels of nesting struct SCPQuorumSet { uint32 threshold; diff --git a/xdr/next/Stellar-contract-config-setting.x b/xdr/next/Stellar-contract-config-setting.x index b075c6b4f..80c0d7fcf 100644 --- a/xdr/next/Stellar-contract-config-setting.x +++ b/xdr/next/Stellar-contract-config-setting.x @@ -1,6 +1,9 @@ %#include "xdr/Stellar-types.h" namespace stellar { + +typedef opaque EncodedLedgerKey<>; + // General “Soroban execution lane” settings struct ConfigSettingContractExecutionLanesV0 { @@ -260,7 +263,40 @@ enum ContractCostType { // Cost of performing BLS12-381 scalar element exponentiation Bls12381FrPow = 68, // Cost of performing BLS12-381 scalar element inversion - Bls12381FrInv = 69 + Bls12381FrInv = 69, + + // Cost of encoding a BN254 Fp (base field element) + Bn254EncodeFp = 70, + // Cost of decoding a BN254 Fp (base field element) + Bn254DecodeFp = 71, + // Cost of checking a G1 point lies on the curve + Bn254G1CheckPointOnCurve = 72, + // Cost of checking a G2 point lies on the curve + Bn254G2CheckPointOnCurve = 73, + // Cost of checking a G2 point belongs to the correct subgroup + Bn254G2CheckPointInSubgroup = 74, + // Cost of converting a BN254 G1 point from projective to affine coordinates + Bn254G1ProjectiveToAffine = 75, + // Cost of performing BN254 G1 point addition + Bn254G1Add = 76, + // Cost of performing BN254 G1 scalar multiplication + Bn254G1Mul = 77, + // Cost of performing BN254 pairing operation + Bn254Pairing = 78, + // Cost of converting a BN254 scalar element from U256 + Bn254FrFromU256 = 79, + // Cost of converting a BN254 scalar element to U256 + Bn254FrToU256 = 80, + // // Cost of performing BN254 scalar element addition/subtraction + Bn254FrAddSub = 81, + // Cost of performing BN254 scalar element multiplication + Bn254FrMul = 82, + // Cost of performing BN254 scalar element exponentiation + Bn254FrPow = 83, + // Cost of performing BN254 scalar element inversion + Bn254FrInv = 84, + // Cost of performing BN254 G1 multi-scalar multiplication (MSM) + Bn254G1Msm = 85 }; struct ContractCostParamEntry { @@ -310,6 +346,24 @@ struct ConfigSettingSCPTiming { uint32 ballotTimeoutIncrementMilliseconds; }; +struct FrozenLedgerKeys { + EncodedLedgerKey keys<>; +}; + +struct FrozenLedgerKeysDelta { + EncodedLedgerKey keysToFreeze<>; + EncodedLedgerKey keysToUnfreeze<>; +}; + +struct FreezeBypassTxs { + Hash txHashes<>; +}; + +struct FreezeBypassTxsDelta { + Hash addTxs<>; + Hash removeTxs<>; +}; + // limits the ContractCostParams size to 20kB const CONTRACT_COST_COUNT_LIMIT = 1024; @@ -334,7 +388,11 @@ enum ConfigSettingID CONFIG_SETTING_EVICTION_ITERATOR = 13, CONFIG_SETTING_CONTRACT_PARALLEL_COMPUTE_V0 = 14, CONFIG_SETTING_CONTRACT_LEDGER_COST_EXT_V0 = 15, - CONFIG_SETTING_SCP_TIMING = 16 + CONFIG_SETTING_SCP_TIMING = 16, + CONFIG_SETTING_FROZEN_LEDGER_KEYS = 17, + CONFIG_SETTING_FROZEN_LEDGER_KEYS_DELTA = 18, + CONFIG_SETTING_FREEZE_BYPASS_TXS = 19, + CONFIG_SETTING_FREEZE_BYPASS_TXS_DELTA = 20 }; union ConfigSettingEntry switch (ConfigSettingID configSettingID) @@ -373,5 +431,13 @@ case CONFIG_SETTING_CONTRACT_LEDGER_COST_EXT_V0: ConfigSettingContractLedgerCostExtV0 contractLedgerCostExt; case CONFIG_SETTING_SCP_TIMING: ConfigSettingSCPTiming contractSCPTiming; +case CONFIG_SETTING_FROZEN_LEDGER_KEYS: + FrozenLedgerKeys frozenLedgerKeys; +case CONFIG_SETTING_FROZEN_LEDGER_KEYS_DELTA: + FrozenLedgerKeysDelta frozenLedgerKeysDelta; +case CONFIG_SETTING_FREEZE_BYPASS_TXS: + FreezeBypassTxs freezeBypassTxs; +case CONFIG_SETTING_FREEZE_BYPASS_TXS_DELTA: + FreezeBypassTxsDelta freezeBypassTxsDelta; }; } diff --git a/xdr/next/Stellar-contract-spec.x b/xdr/next/Stellar-contract-spec.x index ce6e03072..33c4cec1e 100644 --- a/xdr/next/Stellar-contract-spec.x +++ b/xdr/next/Stellar-contract-spec.x @@ -135,7 +135,7 @@ struct SCSpecUDTStructV0 string doc; string lib<80>; string name<60>; - SCSpecUDTStructFieldV0 fields<40>; + SCSpecUDTStructFieldV0 fields<>; }; struct SCSpecUDTUnionCaseVoidV0 @@ -148,7 +148,7 @@ struct SCSpecUDTUnionCaseTupleV0 { string doc; string name<60>; - SCSpecTypeDef type<12>; + SCSpecTypeDef type<>; }; enum SCSpecUDTUnionCaseV0Kind @@ -170,7 +170,7 @@ struct SCSpecUDTUnionV0 string doc; string lib<80>; string name<60>; - SCSpecUDTUnionCaseV0 cases<50>; + SCSpecUDTUnionCaseV0 cases<>; }; struct SCSpecUDTEnumCaseV0 @@ -185,7 +185,7 @@ struct SCSpecUDTEnumV0 string doc; string lib<80>; string name<60>; - SCSpecUDTEnumCaseV0 cases<50>; + SCSpecUDTEnumCaseV0 cases<>; }; struct SCSpecUDTErrorEnumCaseV0 @@ -200,7 +200,7 @@ struct SCSpecUDTErrorEnumV0 string doc; string lib<80>; string name<60>; - SCSpecUDTErrorEnumCaseV0 cases<50>; + SCSpecUDTErrorEnumCaseV0 cases<>; }; struct SCSpecFunctionInputV0 @@ -214,7 +214,7 @@ struct SCSpecFunctionV0 { string doc; SCSymbol name; - SCSpecFunctionInputV0 inputs<10>; + SCSpecFunctionInputV0 inputs<>; SCSpecTypeDef outputs<1>; }; @@ -245,7 +245,7 @@ struct SCSpecEventV0 string lib<80>; SCSymbol name; SCSymbol prefixTopics<2>; - SCSpecEventParamV0 params<50>; + SCSpecEventParamV0 params<>; SCSpecEventDataFormat dataFormat; }; diff --git a/xdr/next/Stellar-transaction.x b/xdr/next/Stellar-transaction.x index 9a14d6e4f..c22f5b4a5 100644 --- a/xdr/next/Stellar-transaction.x +++ b/xdr/next/Stellar-transaction.x @@ -1597,7 +1597,8 @@ enum ClaimClaimableBalanceResultCode CLAIM_CLAIMABLE_BALANCE_CANNOT_CLAIM = -2, CLAIM_CLAIMABLE_BALANCE_LINE_FULL = -3, CLAIM_CLAIMABLE_BALANCE_NO_TRUST = -4, - CLAIM_CLAIMABLE_BALANCE_NOT_AUTHORIZED = -5 + CLAIM_CLAIMABLE_BALANCE_NOT_AUTHORIZED = -5, + CLAIM_CLAIMABLE_BALANCE_TRUSTLINE_FROZEN = -6 }; union ClaimClaimableBalanceResult switch (ClaimClaimableBalanceResultCode code) @@ -1609,6 +1610,7 @@ case CLAIM_CLAIMABLE_BALANCE_CANNOT_CLAIM: case CLAIM_CLAIMABLE_BALANCE_LINE_FULL: case CLAIM_CLAIMABLE_BALANCE_NO_TRUST: case CLAIM_CLAIMABLE_BALANCE_NOT_AUTHORIZED: +case CLAIM_CLAIMABLE_BALANCE_TRUSTLINE_FROZEN: void; }; @@ -1778,7 +1780,9 @@ enum LiquidityPoolDepositResultCode LIQUIDITY_POOL_DEPOSIT_LINE_FULL = -5, // pool share trust line doesn't // have sufficient limit LIQUIDITY_POOL_DEPOSIT_BAD_PRICE = -6, // deposit price outside bounds - LIQUIDITY_POOL_DEPOSIT_POOL_FULL = -7 // pool reserves are full + LIQUIDITY_POOL_DEPOSIT_POOL_FULL = -7, // pool reserves are full + LIQUIDITY_POOL_DEPOSIT_TRUSTLINE_FROZEN = -8 // trustline for one of the + // assets is frozen }; union LiquidityPoolDepositResult switch (LiquidityPoolDepositResultCode code) @@ -1792,6 +1796,7 @@ case LIQUIDITY_POOL_DEPOSIT_UNDERFUNDED: case LIQUIDITY_POOL_DEPOSIT_LINE_FULL: case LIQUIDITY_POOL_DEPOSIT_BAD_PRICE: case LIQUIDITY_POOL_DEPOSIT_POOL_FULL: +case LIQUIDITY_POOL_DEPOSIT_TRUSTLINE_FROZEN: void; }; @@ -1810,7 +1815,9 @@ enum LiquidityPoolWithdrawResultCode // pool share LIQUIDITY_POOL_WITHDRAW_LINE_FULL = -4, // would go above limit for one // of the assets - LIQUIDITY_POOL_WITHDRAW_UNDER_MINIMUM = -5 // didn't withdraw enough + LIQUIDITY_POOL_WITHDRAW_UNDER_MINIMUM = -5, // didn't withdraw enough + LIQUIDITY_POOL_WITHDRAW_TRUSTLINE_FROZEN = -6 // trustline for one of the + // assets is frozen }; union LiquidityPoolWithdrawResult switch (LiquidityPoolWithdrawResultCode code) @@ -1822,6 +1829,7 @@ case LIQUIDITY_POOL_WITHDRAW_NO_TRUST: case LIQUIDITY_POOL_WITHDRAW_UNDERFUNDED: case LIQUIDITY_POOL_WITHDRAW_LINE_FULL: case LIQUIDITY_POOL_WITHDRAW_UNDER_MINIMUM: +case LIQUIDITY_POOL_WITHDRAW_TRUSTLINE_FROZEN: void; }; @@ -1999,7 +2007,8 @@ enum TransactionResultCode txBAD_SPONSORSHIP = -14, // sponsorship not confirmed txBAD_MIN_SEQ_AGE_OR_GAP = -15, // minSeqAge or minSeqLedgerGap conditions not met txMALFORMED = -16, // precondition is invalid - txSOROBAN_INVALID = -17 // soroban-specific preconditions were not met + txSOROBAN_INVALID = -17, // soroban-specific preconditions were not met + txFROZEN_KEY_ACCESSED = -18 // a 'frozen' ledger key is accessed by any operation }; // InnerTransactionResult must be binary compatible with TransactionResult @@ -2031,6 +2040,7 @@ struct InnerTransactionResult case txBAD_MIN_SEQ_AGE_OR_GAP: case txMALFORMED: case txSOROBAN_INVALID: + case txFROZEN_KEY_ACCESSED: void; } result; @@ -2078,6 +2088,7 @@ struct TransactionResult case txBAD_MIN_SEQ_AGE_OR_GAP: case txMALFORMED: case txSOROBAN_INVALID: + case txFROZEN_KEY_ACCESSED: void; } result;