starknet 5.27.0 → 5.29.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,3 +1,15 @@
1
+ # [5.29.0](https://github.com/starknet-io/starknet.js/compare/v5.28.0...v5.29.0) (2024-02-02)
2
+
3
+ ### Features
4
+
5
+ - add provider.decodeParameters ([39595f3](https://github.com/starknet-io/starknet.js/commit/39595f3303204b273fadd53764c59767ce6c5b36))
6
+
7
+ # [5.28.0](https://github.com/starknet-io/starknet.js/compare/v5.27.0...v5.28.0) (2024-02-01)
8
+
9
+ ### Features
10
+
11
+ - expand structured data hashing in line with SNIP-12 ([#920](https://github.com/starknet-io/starknet.js/issues/920)) ([cb20590](https://github.com/starknet-io/starknet.js/commit/cb2059039e3b42501cdfefec7802da83eb73645b))
12
+
1
13
  # [5.27.0](https://github.com/starknet-io/starknet.js/compare/v5.26.1...v5.27.0) (2024-01-23)
2
14
 
3
15
  ### Features
package/README.md CHANGED
@@ -64,7 +64,7 @@ If you consider to contribute to this project please read [CONTRIBUTING.md](http
64
64
 
65
65
  Special thanks to all the [contributors](https://github.com/starknet-io/starknet.js/graphs/contributors), especially to:
66
66
 
67
- - Sean ([@0xs34n](https://github.com/0xs34n)), the original creator of Straknet.js!
67
+ - Sean ([@0xs34n](https://github.com/0xs34n)), the original creator of Starknet.js!
68
68
 
69
69
  - Janek ([@janek26](https://github.com/janek26)) and Dhruv ([@dhruvkelawala](https://github.com/dhruvkelawala)) from [Argent](https://github.com/argentlabs)
70
70
 
package/dist/index.d.ts CHANGED
@@ -143,15 +143,15 @@ declare enum NetworkName {
143
143
  SN_SEPOLIA = "SN_SEPOLIA"
144
144
  }
145
145
  declare enum StarknetChainId {
146
- SN_MAIN = "0x534e5f4d41494e",
147
- SN_GOERLI = "0x534e5f474f45524c49",
146
+ SN_MAIN = "0x534e5f4d41494e",// encodeShortString('SN_MAIN'),
147
+ SN_GOERLI = "0x534e5f474f45524c49",// encodeShortString('SN_GOERLI')
148
148
  SN_SEPOLIA = "0x534e5f5345504f4c4941"
149
149
  }
150
150
  declare enum TransactionHashPrefix {
151
- DECLARE = "0x6465636c617265",
152
- DEPLOY = "0x6465706c6f79",
153
- DEPLOY_ACCOUNT = "0x6465706c6f795f6163636f756e74",
154
- INVOKE = "0x696e766f6b65",
151
+ DECLARE = "0x6465636c617265",// encodeShortString('declare'),
152
+ DEPLOY = "0x6465706c6f79",// encodeShortString('deploy'),
153
+ DEPLOY_ACCOUNT = "0x6465706c6f795f6163636f756e74",// encodeShortString('deploy_account'),
154
+ INVOKE = "0x696e766f6b65",// encodeShortString('invoke'),
155
155
  L1_HANDLER = "0x6c315f68616e646c6572"
156
156
  }
157
157
  declare const UDC: {
@@ -407,7 +407,7 @@ type LegacyContractClass = {
407
407
  abi: Abi;
408
408
  };
409
409
  /**
410
- * format produced after compile .cairo to .json
410
+ * format produced after compiling .cairo to .json
411
411
  */
412
412
  type LegacyCompiledContract = Omit<LegacyContractClass, 'program'> & {
413
413
  program: Program;
@@ -2888,7 +2888,7 @@ declare enum Uint {
2888
2888
  u128 = "core::integer::u128",
2889
2889
  u256 = "core::integer::u256"
2890
2890
  }
2891
- declare enum Litteral {
2891
+ declare enum Literal {
2892
2892
  ClassHash = "core::starknet::class_hash::ClassHash",
2893
2893
  ContractAddress = "core::starknet::contract_address::ContractAddress"
2894
2894
  }
@@ -2938,6 +2938,15 @@ type DeployAccountSignerDetails = Required<DeployAccountContractPayload> & Requi
2938
2938
  chainId: StarknetChainId;
2939
2939
  };
2940
2940
 
2941
+ declare enum TypedDataRevision {
2942
+ Active = "1",
2943
+ Legacy = "0"
2944
+ }
2945
+ type StarkNetEnumType = {
2946
+ name: string;
2947
+ type: 'enum';
2948
+ contains: string;
2949
+ };
2941
2950
  type StarkNetMerkleType = {
2942
2951
  name: string;
2943
2952
  type: 'merkletree';
@@ -2952,7 +2961,7 @@ type StarkNetMerkleType = {
2952
2961
  type StarkNetType = {
2953
2962
  name: string;
2954
2963
  type: string;
2955
- } | StarkNetMerkleType;
2964
+ } | StarkNetEnumType | StarkNetMerkleType;
2956
2965
  /**
2957
2966
  * The EIP712 domain struct. Any of these fields are optional, but it must contain at least one field.
2958
2967
  */
@@ -2960,6 +2969,7 @@ interface StarkNetDomain extends Record<string, unknown> {
2960
2969
  name?: string;
2961
2970
  version?: string;
2962
2971
  chainId?: string | number;
2972
+ revision?: string;
2963
2973
  }
2964
2974
  /**
2965
2975
  * The complete typed data, with all the structs, domain data, primary type of the message, and the message itself.
@@ -3070,8 +3080,8 @@ type index$1_InvokeTransactionResponse = InvokeTransactionResponse;
3070
3080
  type index$1_LegacyCompiledContract = LegacyCompiledContract;
3071
3081
  type index$1_LegacyContractClass = LegacyContractClass;
3072
3082
  type index$1_LegacyEvent = LegacyEvent;
3073
- type index$1_Litteral = Litteral;
3074
- declare const index$1_Litteral: typeof Litteral;
3083
+ type index$1_Literal = Literal;
3084
+ declare const index$1_Literal: typeof Literal;
3075
3085
  type index$1_MessageToL1 = MessageToL1;
3076
3086
  type index$1_MessageToL2 = MessageToL2;
3077
3087
  type index$1_MultiDeployContractResponse = MultiDeployContractResponse;
@@ -3108,6 +3118,7 @@ type index$1_SimulateTransactionResponse = SimulateTransactionResponse;
3108
3118
  type index$1_SimulatedTransaction = SimulatedTransaction;
3109
3119
  type index$1_SimulationFlags = SimulationFlags;
3110
3120
  type index$1_StarkNetDomain = StarkNetDomain;
3121
+ type index$1_StarkNetEnumType = StarkNetEnumType;
3111
3122
  type index$1_StarkNetMerkleType = StarkNetMerkleType;
3112
3123
  type index$1_StarkNetType = StarkNetType;
3113
3124
  type index$1_StateUpdateResponse = StateUpdateResponse;
@@ -3122,6 +3133,8 @@ type index$1_TransactionType = TransactionType;
3122
3133
  declare const index$1_TransactionType: typeof TransactionType;
3123
3134
  type index$1_Tupled = Tupled;
3124
3135
  type index$1_TypedData = TypedData;
3136
+ type index$1_TypedDataRevision = TypedDataRevision;
3137
+ declare const index$1_TypedDataRevision: typeof TypedDataRevision;
3125
3138
  type index$1_Uint = Uint;
3126
3139
  declare const index$1_Uint: typeof Uint;
3127
3140
  type index$1_Uint256 = Uint256;
@@ -3232,7 +3245,7 @@ declare namespace index$1 {
3232
3245
  index$1_LegacyCompiledContract as LegacyCompiledContract,
3233
3246
  index$1_LegacyContractClass as LegacyContractClass,
3234
3247
  index$1_LegacyEvent as LegacyEvent,
3235
- index$1_Litteral as Litteral,
3248
+ index$1_Literal as Literal,
3236
3249
  index$1_MessageToL1 as MessageToL1,
3237
3250
  index$1_MessageToL2 as MessageToL2,
3238
3251
  index$1_MultiDeployContractResponse as MultiDeployContractResponse,
@@ -3270,6 +3283,7 @@ declare namespace index$1 {
3270
3283
  index$1_SimulatedTransaction as SimulatedTransaction,
3271
3284
  index$1_SimulationFlags as SimulationFlags,
3272
3285
  index$1_StarkNetDomain as StarkNetDomain,
3286
+ index$1_StarkNetEnumType as StarkNetEnumType,
3273
3287
  index$1_StarkNetMerkleType as StarkNetMerkleType,
3274
3288
  index$1_StarkNetType as StarkNetType,
3275
3289
  index$1_StateUpdateResponse as StateUpdateResponse,
@@ -3282,6 +3296,7 @@ declare namespace index$1 {
3282
3296
  index$1_TransactionType as TransactionType,
3283
3297
  index$1_Tupled as Tupled,
3284
3298
  index$1_TypedData as TypedData,
3299
+ index$1_TypedDataRevision as TypedDataRevision,
3285
3300
  index$1_Uint as Uint,
3286
3301
  index$1_Uint256 as Uint256,
3287
3302
  index$1_UniversalDeployerContractPayload as UniversalDeployerContractPayload,
@@ -3385,7 +3400,7 @@ declare abstract class ProviderInterface {
3385
3400
  abstract deployAccountContract(payload: DeployAccountContractPayload, details: InvocationsDetailsWithNonce): Promise<DeployContractResponse>;
3386
3401
  /**
3387
3402
  * Invokes a function on starknet
3388
- * @deprecated This method wont be supported as soon as fees are mandatory. Should not be used outside of Account class
3403
+ * @deprecated This method won't be supported as soon as fees are mandatory. Should not be used outside of Account class
3389
3404
  *
3390
3405
  * @param invocation the invocation object containing:
3391
3406
  * - contractAddress - the address of the contract
@@ -4074,8 +4089,8 @@ declare abstract class AccountInterface extends ProviderInterface {
4074
4089
  */
4075
4090
  abstract deployAccount(contractPayload: DeployAccountContractPayload, transactionsDetail?: InvocationsDetails): Promise<DeployContractResponse>;
4076
4091
  /**
4077
- * Sign an JSON object for off-chain usage with the starknet private key and return the signature
4078
- * This adds a message prefix so it cant be interchanged with transactions
4092
+ * Signs a JSON object for off-chain usage with the Starknet private key and returns the signature
4093
+ * This adds a message prefix so it can't be interchanged with transactions
4079
4094
  *
4080
4095
  * @param json - JSON object to be signed
4081
4096
  * @returns the signature of the JSON object
@@ -4083,8 +4098,8 @@ declare abstract class AccountInterface extends ProviderInterface {
4083
4098
  */
4084
4099
  abstract signMessage(typedData: TypedData): Promise<Signature>;
4085
4100
  /**
4086
- * Hash a JSON object with pederson hash and return the hash
4087
- * This adds a message prefix so it cant be interchanged with transactions
4101
+ * Hash a JSON object with Pedersen hash and return the hash
4102
+ * This adds a message prefix so it can't be interchanged with transactions
4088
4103
  *
4089
4104
  * @param json - JSON object to be hashed
4090
4105
  * @returns the hash of the JSON object
@@ -4126,7 +4141,7 @@ declare abstract class AccountInterface extends ProviderInterface {
4126
4141
  */
4127
4142
  abstract getSuggestedMaxFee(estimateFeeAction: EstimateFeeAction, details: EstimateFeeDetails): Promise<bigint>;
4128
4143
  /**
4129
- * Simulates an array of transaction and returns an array of transaction trace and estimated fee.
4144
+ * Simulates an array of transactions and returns an array of transaction trace and estimated fee.
4130
4145
  *
4131
4146
  * @param invocations Invocations containing:
4132
4147
  * - type - transaction type: DECLARE, (multi)DEPLOY, DEPLOY_ACCOUNT, (multi)INVOKE_FUNCTION
@@ -4460,11 +4475,15 @@ declare function getVersionsByType(versionType?: 'fee' | 'transaction'): {
4460
4475
  v1: bigint;
4461
4476
  v2: bigint;
4462
4477
  };
4478
+ declare function computePedersenHash(a: BigNumberish, b: BigNumberish): string;
4479
+ declare function computePoseidonHash(a: BigNumberish, b: BigNumberish): string;
4463
4480
  /**
4464
4481
  * Compute pedersen hash from data
4465
4482
  * @returns format: hex-string - pedersen hash
4466
4483
  */
4467
4484
  declare function computeHashOnElements(data: BigNumberish[]): string;
4485
+ declare const computePedersenHashOnElements: typeof computeHashOnElements;
4486
+ declare function computePoseidonHashOnElements(data: BigNumberish[]): string;
4468
4487
  /**
4469
4488
  * Calculate transaction pedersen hash for common properties
4470
4489
  *
@@ -4541,6 +4560,10 @@ declare const hash_computeCompiledClassHash: typeof computeCompiledClassHash;
4541
4560
  declare const hash_computeContractClassHash: typeof computeContractClassHash;
4542
4561
  declare const hash_computeHashOnElements: typeof computeHashOnElements;
4543
4562
  declare const hash_computeLegacyContractClassHash: typeof computeLegacyContractClassHash;
4563
+ declare const hash_computePedersenHash: typeof computePedersenHash;
4564
+ declare const hash_computePedersenHashOnElements: typeof computePedersenHashOnElements;
4565
+ declare const hash_computePoseidonHash: typeof computePoseidonHash;
4566
+ declare const hash_computePoseidonHashOnElements: typeof computePoseidonHashOnElements;
4544
4567
  declare const hash_computeSierraContractClassHash: typeof computeSierraContractClassHash;
4545
4568
  declare const hash_feeTransactionVersion: typeof feeTransactionVersion;
4546
4569
  declare const hash_feeTransactionVersion_2: typeof feeTransactionVersion_2;
@@ -4565,6 +4588,10 @@ declare namespace hash {
4565
4588
  hash_computeContractClassHash as computeContractClassHash,
4566
4589
  hash_computeHashOnElements as computeHashOnElements,
4567
4590
  hash_computeLegacyContractClassHash as computeLegacyContractClassHash,
4591
+ hash_computePedersenHash as computePedersenHash,
4592
+ hash_computePedersenHashOnElements as computePedersenHashOnElements,
4593
+ hash_computePoseidonHash as computePoseidonHash,
4594
+ hash_computePoseidonHashOnElements as computePoseidonHashOnElements,
4568
4595
  hash_computeSierraContractClassHash as computeSierraContractClassHash,
4569
4596
  computeHintedClassHash as default,
4570
4597
  hash_feeTransactionVersion as feeTransactionVersion,
@@ -4865,7 +4892,8 @@ declare class MerkleTree {
4865
4892
  leaves: string[];
4866
4893
  branches: string[][];
4867
4894
  root: string;
4868
- constructor(leafHashes: string[]);
4895
+ hashMethod: (a: BigNumberish, b: BigNumberish) => string;
4896
+ constructor(leafHashes: string[], hashMethod?: (a: BigNumberish, b: BigNumberish) => string);
4869
4897
  /**
4870
4898
  * Create Merkle tree
4871
4899
  * @param leaves hex-string array
@@ -4873,10 +4901,10 @@ declare class MerkleTree {
4873
4901
  */
4874
4902
  private build;
4875
4903
  /**
4876
- * Create pedersen hash from a and b
4904
+ * Create hash from ordered a and b, Pedersen hash default
4877
4905
  * @returns format: hex-string
4878
4906
  */
4879
- static hash(a: string, b: string): string;
4907
+ static hash(a: BigNumberish, b: BigNumberish, hashMethod?: (a: BigNumberish, b: BigNumberish) => string): string;
4880
4908
  /**
4881
4909
  * Return path to leaf
4882
4910
  * @param leaf hex-string
@@ -4891,8 +4919,9 @@ declare class MerkleTree {
4891
4919
  * @param root hex-string
4892
4920
  * @param leaf hex-string
4893
4921
  * @param path hex-string array
4922
+ * @param hashMethod hash method override, Pedersen default
4894
4923
  */
4895
- declare function proofMerklePath(root: string, leaf: string, path: string[]): boolean;
4924
+ declare function proofMerklePath(root: string, leaf: string, path: string[], hashMethod?: (a: BigNumberish, b: BigNumberish) => string): boolean;
4896
4925
 
4897
4926
  type merkle_MerkleTree = MerkleTree;
4898
4927
  declare const merkle_MerkleTree: typeof MerkleTree;
@@ -5010,54 +5039,58 @@ declare namespace shortString {
5010
5039
  };
5011
5040
  }
5012
5041
 
5013
- declare function prepareSelector(selector: string): string;
5014
- declare function isMerkleTreeType(type: StarkNetType): type is StarkNetMerkleType;
5015
5042
  interface Context {
5016
5043
  parent?: string;
5017
5044
  key?: string;
5018
5045
  }
5046
+ declare function byteArrayFromString(targetString: string): {
5047
+ data: BigNumberish[];
5048
+ pending_word: BigNumberish;
5049
+ pending_word_len: number;
5050
+ };
5051
+ declare function prepareSelector(selector: string): string;
5052
+ declare function isMerkleTreeType(type: StarkNetType): type is StarkNetMerkleType;
5019
5053
  /**
5020
5054
  * Get the dependencies of a struct type. If a struct has the same dependency multiple times, it's only included once
5021
5055
  * in the resulting array.
5022
- *
5023
- * @param {TypedData} typedData
5024
- * @param {string} type
5025
- * @param {string[]} [dependencies]
5026
- * @return {string[]}
5027
5056
  */
5028
- declare const getDependencies: (types: TypedData['types'], type: string, dependencies?: string[]) => string[];
5057
+ declare function getDependencies(types: TypedData['types'], type: string, dependencies?: string[], contains?: string, revision?: TypedDataRevision): string[];
5029
5058
  /**
5030
5059
  * Encode a type to a string. All dependent types are alphabetically sorted.
5031
5060
  */
5032
- declare const encodeType: (types: TypedData['types'], type: string) => string;
5061
+ declare function encodeType(types: TypedData['types'], type: string, revision?: TypedDataRevision): string;
5033
5062
  /**
5034
5063
  * Get a type string as hash.
5035
5064
  */
5036
- declare const getTypeHash: (types: TypedData['types'], type: string) => string;
5065
+ declare function getTypeHash(types: TypedData['types'], type: string, revision?: TypedDataRevision): string;
5037
5066
  /**
5038
5067
  * Encodes a single value to an ABI serialisable string, number or Buffer. Returns the data as tuple, which consists of
5039
5068
  * an array of ABI compatible types, and an array of corresponding values.
5040
5069
  */
5041
- declare const encodeValue: (types: TypedData['types'], type: string, data: unknown, ctx?: Context) => [string, string];
5070
+ declare function encodeValue(types: TypedData['types'], type: string, data: unknown, ctx?: Context, revision?: TypedDataRevision): [string, string];
5042
5071
  /**
5043
5072
  * Encode the data to an ABI encoded Buffer. The data should be a key -> value object with all the required values.
5044
5073
  * All dependent types are automatically encoded.
5045
5074
  */
5046
- declare const encodeData: <T extends TypedData>(types: T["types"], type: string, data: T["message"]) => string[][];
5075
+ declare function encodeData<T extends TypedData>(types: T['types'], type: string, data: T['message'], revision?: TypedDataRevision): string[][];
5047
5076
  /**
5048
5077
  * Get encoded data as a hash. The data should be a key -> value object with all the required values.
5049
5078
  * All dependent types are automatically encoded.
5050
5079
  */
5051
- declare const getStructHash: <T extends TypedData>(types: T["types"], type: string, data: T["message"]) => string;
5080
+ declare function getStructHash<T extends TypedData>(types: T['types'], type: string, data: T['message'], revision?: TypedDataRevision): string;
5052
5081
  /**
5053
- * Get the EIP-191 encoded message to sign, from the typedData object.
5082
+ * Get the SNIP-12 encoded message to sign, from the typedData object.
5054
5083
  */
5055
- declare const getMessageHash: (typedData: TypedData, account: BigNumberish) => string;
5084
+ declare function getMessageHash(typedData: TypedData, account: BigNumberish): string;
5056
5085
 
5057
5086
  type typedData_StarkNetDomain = StarkNetDomain;
5087
+ type typedData_StarkNetEnumType = StarkNetEnumType;
5058
5088
  type typedData_StarkNetMerkleType = StarkNetMerkleType;
5059
5089
  type typedData_StarkNetType = StarkNetType;
5060
5090
  type typedData_TypedData = TypedData;
5091
+ type typedData_TypedDataRevision = TypedDataRevision;
5092
+ declare const typedData_TypedDataRevision: typeof TypedDataRevision;
5093
+ declare const typedData_byteArrayFromString: typeof byteArrayFromString;
5061
5094
  declare const typedData_encodeData: typeof encodeData;
5062
5095
  declare const typedData_encodeType: typeof encodeType;
5063
5096
  declare const typedData_encodeValue: typeof encodeValue;
@@ -5070,9 +5103,12 @@ declare const typedData_prepareSelector: typeof prepareSelector;
5070
5103
  declare namespace typedData {
5071
5104
  export {
5072
5105
  typedData_StarkNetDomain as StarkNetDomain,
5106
+ typedData_StarkNetEnumType as StarkNetEnumType,
5073
5107
  typedData_StarkNetMerkleType as StarkNetMerkleType,
5074
5108
  typedData_StarkNetType as StarkNetType,
5075
5109
  typedData_TypedData as TypedData,
5110
+ typedData_TypedDataRevision as TypedDataRevision,
5111
+ typedData_byteArrayFromString as byteArrayFromString,
5076
5112
  typedData_encodeData as encodeData,
5077
5113
  typedData_encodeType as encodeType,
5078
5114
  typedData_encodeValue as encodeValue,
@@ -5195,7 +5231,7 @@ declare const isTypeEnum: (type: string, enums: AbiEnums) => boolean;
5195
5231
  declare const isTypeOption: (type: string) => boolean;
5196
5232
  declare const isTypeResult: (type: string) => boolean;
5197
5233
  declare const isTypeUint: (type: string) => boolean;
5198
- declare const isTypeLitteral: (type: string) => boolean;
5234
+ declare const isTypeLiteral: (type: string) => boolean;
5199
5235
  declare const isTypeUint256: (type: string) => boolean;
5200
5236
  declare const isTypeBool: (type: string) => boolean;
5201
5237
  declare const isTypeContractAddress: (type: string) => boolean;
@@ -5258,7 +5294,7 @@ declare const cairo_isTypeContractAddress: typeof isTypeContractAddress;
5258
5294
  declare const cairo_isTypeEnum: typeof isTypeEnum;
5259
5295
  declare const cairo_isTypeEthAddress: typeof isTypeEthAddress;
5260
5296
  declare const cairo_isTypeFelt: typeof isTypeFelt;
5261
- declare const cairo_isTypeLitteral: typeof isTypeLitteral;
5297
+ declare const cairo_isTypeLiteral: typeof isTypeLiteral;
5262
5298
  declare const cairo_isTypeNamedTuple: typeof isTypeNamedTuple;
5263
5299
  declare const cairo_isTypeOption: typeof isTypeOption;
5264
5300
  declare const cairo_isTypeResult: typeof isTypeResult;
@@ -5282,7 +5318,7 @@ declare namespace cairo {
5282
5318
  cairo_isTypeEnum as isTypeEnum,
5283
5319
  cairo_isTypeEthAddress as isTypeEthAddress,
5284
5320
  cairo_isTypeFelt as isTypeFelt,
5285
- cairo_isTypeLitteral as isTypeLitteral,
5321
+ cairo_isTypeLiteral as isTypeLiteral,
5286
5322
  cairo_isTypeNamedTuple as isTypeNamedTuple,
5287
5323
  cairo_isTypeOption as isTypeOption,
5288
5324
  cairo_isTypeResult as isTypeResult,
@@ -5368,6 +5404,17 @@ declare class CallData {
5368
5404
  * @returns HexCalldata
5369
5405
  */
5370
5406
  static toHex(raw?: RawArgs): HexCalldata;
5407
+ /**
5408
+ * Parse the elements of a contract response and structure them into one or several Result.
5409
+ * In Cairo 0, arrays are not supported.
5410
+ * @param typeCairo string or string[] - Cairo type name, ex : "hello::hello::UserData"
5411
+ * @param response string[] - serialized data corresponding to typeCairo.
5412
+ * @return Result or Result[] - parsed response corresponding to typeData.
5413
+ * @example
5414
+ * const res2=helloCallData.decodeParameters("hello::hello::UserData",["0x123456","0x1"]);
5415
+ * result = { address: 1193046n, is_claimed: true }
5416
+ */
5417
+ decodeParameters(typeCairo: AllowArray<string>, response: string[]): AllowArray<Result>;
5371
5418
  }
5372
5419
 
5373
5420
  declare function isSierra(contract: CairoContract | string): contract is SierraContractClass | CompiledSierra;
@@ -5402,4 +5449,4 @@ declare function parseUDCEvent(txReceipt: InvokeTransactionReceiptResponse): {
5402
5449
  /** @deprecated prefer the 'num' naming */
5403
5450
  declare const number: typeof num;
5404
5451
 
5405
- export { Abi, AbiEntry, AbiEnums, AbiEvents, AbiStructs, Account, AccountInterface, AccountInvocationItem, AccountInvocations, AccountInvocationsFactoryDetails, AllowArray, Args, ArgsOrCalldata, ArgsOrCalldataWithOptions, ArraySignatureType, AsyncContractFunction, BigNumberish, BlockIdentifier, BlockNumber, BlockStatus, BlockTag, Builtins, ByteCode, Cairo1Event, CairoAssembly, CairoContract, CairoCustomEnum, CairoEnum, CairoEnumRaw, CairoOption, CairoOptionVariant, CairoResult, CairoResultVariant, CairoVersion, Call, CallContractResponse, CallData, CallDetails, CallL1Handler, CallOptions, CallStruct, Calldata, CommonTransactionResponse, CompiledContract, CompiledSierra, CompiledSierraCasm, CompilerVersion, CompleteDeclareContractPayload, CompressedProgram, Contract, ContractClass$1 as ContractClass, ContractClassResponse, ContractEntryPoint, ContractEntryPointFields, ContractFactory, ContractFactoryParams, ContractFunction, ContractInterface, ContractOptions, ContractVersion, CustomError, DeclareAndDeployContractPayload, DeclareContractPayload, DeclareContractResponse, DeclareContractTransaction, DeclareDeployUDCResponse, DeclareSignerDetails, DeclareTransactionReceiptResponse, DeclareTransactionResponse, DeployAccountContractPayload, DeployAccountContractTransaction, DeployAccountSignerDetails, DeployContractResponse, DeployContractUDCResponse, DeployTransactionReceiptResponse, DeployedContractItem, Details, EntryPointType, EntryPointsByType, EnumAbi, EstimateFee, EstimateFeeAction, EstimateFeeBulk, EstimateFeeDetails, EstimateFeeResponse, EstimateFeeResponseBulk, Event, EventAbi, EventEntry, ExecutionResources, FunctionAbi, FunctionInvocation, GatewayError, GetBlockResponse, GetCodeResponse, GetContractAddressesResponse, GetTransactionReceiptResponse, GetTransactionResponse, GetTransactionStatusResponse, HexCalldata, HttpError, Invocation, Invocations, InvocationsDetails, InvocationsDetailsWithNonce, InvocationsSignerDetails, InvokeFunctionResponse, InvokeOptions, InvokeTransactionReceiptResponse, InvokeTransactionResponse, LegacyCompiledContract, LegacyContractClass, LegacyEvent, LibraryError, Litteral, MessageToL1, MessageToL2, MultiDeployContractResponse, MultiType, Nonce, OptionalPayload, ParsedEvent, ParsedEvents, ParsedStruct, Program, Provider, ProviderInterface, ProviderOptions, PythonicHints, rpc as RPC, RawArgs, RawArgsArray, RawArgsObject, RawCalldata, RejectedTransactionReceiptResponse, RejectedTransactionResponse, Result, RevertedTransactionReceiptResponse, RpcProvider, RpcProviderOptions, SIMULATION_FLAG, sequencer as Sequencer, SequencerHttpMethod, SequencerIdentifier, SequencerProvider, SequencerProviderOptions, SierraContractClass, SierraContractEntryPointFields, SierraEntryPointsByType, SierraProgramDebugInfo, Signature, Signer, SignerInterface, SimulateTransactionDetails, SimulateTransactionResponse, SimulatedTransaction, SimulationFlags, StarkNetDomain, StarkNetMerkleType, StarkNetType, StateUpdateResponse, Storage, StructAbi, SuccessfulTransactionReceiptResponse, TransactionExecutionStatus, TransactionFinalityStatus, TransactionStatus$1 as TransactionStatus, TransactionType, Tupled, TypedContractV1, TypedContractV2, TypedData, Uint, Uint256, UniversalDeployerContractPayload, ValidateType, WeierstrassSignatureType, addAddressPadding, buildUrl, cairo, constants, contractClassResponseToLegacyCompiledContract, defaultProvider, ec, encode, index as events, extractContractHashes, fixProto, fixStack, getCalldata, getChecksumAddress, getContractVersionOptions, getDefaultNodeUrl, getEstimateFeeBulkOptions, getSimulateTransactionOptions, hash, isSierra, isUrl, json, merkle, num, number, parseUDCEvent, provider, selector, shortString, splitArgsAndOptions, stark, starknetId, transaction, typedData, index$1 as types, uint256$1 as uint256, validateAndParseAddress, validateChecksumAddress, waitForTransactionOptions };
5452
+ export { Abi, AbiEntry, AbiEnums, AbiEvents, AbiStructs, Account, AccountInterface, AccountInvocationItem, AccountInvocations, AccountInvocationsFactoryDetails, AllowArray, Args, ArgsOrCalldata, ArgsOrCalldataWithOptions, ArraySignatureType, AsyncContractFunction, BigNumberish, BlockIdentifier, BlockNumber, BlockStatus, BlockTag, Builtins, ByteCode, Cairo1Event, CairoAssembly, CairoContract, CairoCustomEnum, CairoEnum, CairoEnumRaw, CairoOption, CairoOptionVariant, CairoResult, CairoResultVariant, CairoVersion, Call, CallContractResponse, CallData, CallDetails, CallL1Handler, CallOptions, CallStruct, Calldata, CommonTransactionResponse, CompiledContract, CompiledSierra, CompiledSierraCasm, CompilerVersion, CompleteDeclareContractPayload, CompressedProgram, Contract, ContractClass$1 as ContractClass, ContractClassResponse, ContractEntryPoint, ContractEntryPointFields, ContractFactory, ContractFactoryParams, ContractFunction, ContractInterface, ContractOptions, ContractVersion, CustomError, DeclareAndDeployContractPayload, DeclareContractPayload, DeclareContractResponse, DeclareContractTransaction, DeclareDeployUDCResponse, DeclareSignerDetails, DeclareTransactionReceiptResponse, DeclareTransactionResponse, DeployAccountContractPayload, DeployAccountContractTransaction, DeployAccountSignerDetails, DeployContractResponse, DeployContractUDCResponse, DeployTransactionReceiptResponse, DeployedContractItem, Details, EntryPointType, EntryPointsByType, EnumAbi, EstimateFee, EstimateFeeAction, EstimateFeeBulk, EstimateFeeDetails, EstimateFeeResponse, EstimateFeeResponseBulk, Event, EventAbi, EventEntry, ExecutionResources, FunctionAbi, FunctionInvocation, GatewayError, GetBlockResponse, GetCodeResponse, GetContractAddressesResponse, GetTransactionReceiptResponse, GetTransactionResponse, GetTransactionStatusResponse, HexCalldata, HttpError, Invocation, Invocations, InvocationsDetails, InvocationsDetailsWithNonce, InvocationsSignerDetails, InvokeFunctionResponse, InvokeOptions, InvokeTransactionReceiptResponse, InvokeTransactionResponse, LegacyCompiledContract, LegacyContractClass, LegacyEvent, LibraryError, Literal, MessageToL1, MessageToL2, MultiDeployContractResponse, MultiType, Nonce, OptionalPayload, ParsedEvent, ParsedEvents, ParsedStruct, Program, Provider, ProviderInterface, ProviderOptions, PythonicHints, rpc as RPC, RawArgs, RawArgsArray, RawArgsObject, RawCalldata, RejectedTransactionReceiptResponse, RejectedTransactionResponse, Result, RevertedTransactionReceiptResponse, RpcProvider, RpcProviderOptions, SIMULATION_FLAG, sequencer as Sequencer, SequencerHttpMethod, SequencerIdentifier, SequencerProvider, SequencerProviderOptions, SierraContractClass, SierraContractEntryPointFields, SierraEntryPointsByType, SierraProgramDebugInfo, Signature, Signer, SignerInterface, SimulateTransactionDetails, SimulateTransactionResponse, SimulatedTransaction, SimulationFlags, StarkNetDomain, StarkNetEnumType, StarkNetMerkleType, StarkNetType, StateUpdateResponse, Storage, StructAbi, SuccessfulTransactionReceiptResponse, TransactionExecutionStatus, TransactionFinalityStatus, TransactionStatus$1 as TransactionStatus, TransactionType, Tupled, TypedContractV1, TypedContractV2, TypedData, TypedDataRevision, Uint, Uint256, UniversalDeployerContractPayload, ValidateType, WeierstrassSignatureType, addAddressPadding, buildUrl, cairo, constants, contractClassResponseToLegacyCompiledContract, defaultProvider, ec, encode, index as events, extractContractHashes, fixProto, fixStack, getCalldata, getChecksumAddress, getContractVersionOptions, getDefaultNodeUrl, getEstimateFeeBulkOptions, getSimulateTransactionOptions, hash, isSierra, isUrl, json, merkle, num, number, parseUDCEvent, provider, selector, shortString, splitArgsAndOptions, stark, starknetId, transaction, typedData, index$1 as types, uint256$1 as uint256, validateAndParseAddress, validateChecksumAddress, waitForTransactionOptions };