starknet 7.1.0 → 7.2.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/dist/index.d.ts CHANGED
@@ -2,7 +2,7 @@ import * as RPCSPEC07 from 'starknet-types-07';
2
2
  import { STRUCT_EVENT, EVENT_FIELD, ENUM_EVENT, BlockHash, TransactionHash, StarknetDomain, StarknetEnumType, StarknetMerkleType, StarknetType, TypedData, TypedDataRevision, StarknetWindowObject, Address, Permission, WatchAssetParameters as WatchAssetParameters$1, AddStarknetChainParameters as AddStarknetChainParameters$1, ChainId, AccountDeploymentData, AddInvokeTransactionParameters, AddInvokeTransactionResult, AddDeclareTransactionParameters, AddDeclareTransactionResult, Signature as Signature$2, SpecVersion, AccountChangeEventHandler as AccountChangeEventHandler$1, NetworkChangeEventHandler as NetworkChangeEventHandler$1 } from 'starknet-types-07';
3
3
  export { StarknetDomain, StarknetEnumType, StarknetMerkleType, StarknetType, TypedData, TypedDataRevision } from 'starknet-types-07';
4
4
  import * as RPCSPEC08 from 'starknet-types-08';
5
- import { EDataAvailabilityMode as EDataAvailabilityMode$1, SUBSCRIPTION_BLOCK_TAG, BLOCK_WITH_TX_HASHES, PENDING_BLOCK_WITH_TX_HASHES, BlockWithTxHashes as BlockWithTxHashes$1, TransactionReceipt as TransactionReceipt$1, IsSucceeded, IsReverted, IsType, ETransactionVersion as ETransactionVersion$1, ETransactionVersion2 as ETransactionVersion2$1, ETransactionVersion3 as ETransactionVersion3$1, SubscriptionReorgResponse, SubscriptionNewHeadsResponse, SubscriptionEventsResponse, SubscriptionTransactionsStatusResponse, SubscriptionPendingTransactionsResponse, SUBSCRIPTION_ID, WebSocketMethods, BLOCK_STATUS, BLOCK_HEADER, BLOCK_BODY_WITH_RECEIPTS, PENDING_BLOCK_HEADER, BlockTransactionsTraces, CONTRACT_STORAGE_KEYS, AccountChangeEventHandler, NetworkChangeEventHandler, WatchAssetParameters, AddStarknetChainParameters, Signature as Signature$1, EDAMode as EDAMode$1, PRICE_UNIT as PRICE_UNIT$1, EmittedEvent as EmittedEvent$1, Methods as Methods$1 } from 'starknet-types-08';
5
+ import { EDataAvailabilityMode as EDataAvailabilityMode$1, SUBSCRIPTION_BLOCK_TAG, BLOCK_WITH_TX_HASHES, PENDING_BLOCK_WITH_TX_HASHES, BlockWithTxHashes as BlockWithTxHashes$1, TransactionReceipt as TransactionReceipt$1, IsSucceeded, IsReverted, IsType, ETransactionVersion as ETransactionVersion$1, ETransactionVersion2 as ETransactionVersion2$1, ETransactionVersion3 as ETransactionVersion3$1, SubscriptionReorgResponse, SubscriptionNewHeadsResponse, SubscriptionEventsResponse, SubscriptionTransactionsStatusResponse, SubscriptionPendingTransactionsResponse, SUBSCRIPTION_ID, WebSocketMethods, BLOCK_STATUS, BLOCK_HEADER, BLOCK_BODY_WITH_RECEIPTS, PENDING_BLOCK_HEADER, BlockTransactionsTraces, L1L2MessagesStatus, CONTRACT_STORAGE_KEYS, StorageProof, CASM_COMPILED_CONTRACT_CLASS, AccountChangeEventHandler, NetworkChangeEventHandler, WatchAssetParameters, AddStarknetChainParameters, Signature as Signature$1, EDAMode as EDAMode$1, PRICE_UNIT as PRICE_UNIT$1, EmittedEvent as EmittedEvent$1, Methods as Methods$1 } from 'starknet-types-08';
6
6
  import * as weierstrass from '@noble/curves/abstract/weierstrass';
7
7
  import { RecoveredSignatureType } from '@noble/curves/abstract/weierstrass';
8
8
  import { Abi as Abi$1, TypedContract } from 'abi-wan-kanabi';
@@ -1705,10 +1705,10 @@ type _TransactionHashPrefix = ValuesType<typeof _TransactionHashPrefix>;
1705
1705
  * dot format rpc versions
1706
1706
  */
1707
1707
  declare const _SupportedRpcVersion: {
1708
- readonly 0.7: "0.7";
1709
- readonly 0.8: "0.8";
1710
- readonly v07: "0.7";
1711
- readonly v08: "0.8";
1708
+ readonly '0.7.1': "0.7.1";
1709
+ readonly '0.8.1': "0.8.1";
1710
+ readonly v0_7_1: "0.7.1";
1711
+ readonly v0_8_1: "0.8.1";
1712
1712
  };
1713
1713
  type _SupportedRpcVersion = ValuesType<typeof _SupportedRpcVersion>;
1714
1714
 
@@ -1719,6 +1719,8 @@ declare const DEFAULT_GLOBAL_CONFIG: {
1719
1719
  rpcVersion: _SupportedRpcVersion;
1720
1720
  transactionVersion: SupportedTransactionVersion;
1721
1721
  feeMarginPercentage: FeeMarginPercentage;
1722
+ fetch: any;
1723
+ websocket: any;
1722
1724
  };
1723
1725
  declare const RPC_DEFAULT_NODES: {
1724
1726
  readonly SN_MAIN: readonly ["https://starknet-mainnet.public.blastapi.io/rpc/", "https://free-rpc.nethermind.io/mainnet-juno/"];
@@ -1728,6 +1730,8 @@ declare const SYSTEM_MESSAGES: {
1728
1730
  legacyTxWarningMessage: string;
1729
1731
  legacyTxRPC08Message: string;
1730
1732
  SWOldV3: string;
1733
+ channelVersionMismatch: string;
1734
+ unsupportedSpecVersion: string;
1731
1735
  };
1732
1736
 
1733
1737
  declare const constants_ADDR_BOUND: typeof ADDR_BOUND;
@@ -1758,7 +1762,11 @@ declare namespace constants {
1758
1762
  }
1759
1763
 
1760
1764
  declare class RpcChannel$1 {
1761
- readonly id = "RPC07";
1765
+ readonly id = "RPC071";
1766
+ /**
1767
+ * RPC specification version this Channel class implements
1768
+ */
1769
+ readonly channelSpecVersion: _SupportedRpcVersion;
1762
1770
  nodeUrl: string;
1763
1771
  headers: object;
1764
1772
  requestId: number;
@@ -1766,12 +1774,15 @@ declare class RpcChannel$1 {
1766
1774
  readonly retries: number;
1767
1775
  readonly waitMode: boolean;
1768
1776
  private chainId?;
1777
+ /**
1778
+ * RPC specification version of the connected node
1779
+ */
1769
1780
  private specVersion?;
1770
1781
  private transactionRetryIntervalFallback?;
1771
1782
  private batchClient?;
1772
1783
  private baseFetch;
1773
1784
  constructor(optionsOrProvider?: RpcProviderOptions);
1774
- readSpecVersion(): "0.7" | "0.8" | undefined;
1785
+ readSpecVersion(): "0.7.1" | "0.8.1" | undefined;
1775
1786
  private get transactionRetryIntervalDefault();
1776
1787
  setChainId(chainId: _StarknetChainId): void;
1777
1788
  fetch(method: string, params?: object, id?: string | number): Promise<Response>;
@@ -1779,15 +1790,15 @@ declare class RpcChannel$1 {
1779
1790
  protected fetchEndpoint<T extends keyof RPCSPEC07.Methods>(method: T, params?: RPCSPEC07.Methods[T]['params']): Promise<RPCSPEC07.Methods[T]['result']>;
1780
1791
  getChainId(): Promise<"0x534e5f4d41494e" | "0x534e5f5345504f4c4941">;
1781
1792
  /**
1782
- * fetch if undefined else just return this.specVersion
1783
- * return this.specVersion as 'M.m'
1784
- * @example this.specVersion = "0.8"
1793
+ * fetch rpc node specVersion
1794
+ * @example this.specVersion = "0.7.1"
1785
1795
  */
1786
- getSpecVersion(): Promise<"0.7" | "0.8">;
1796
+ getSpecVersion(): Promise<string>;
1787
1797
  /**
1788
- * fetch spec version in extended format "M.m.p-?"
1798
+ * fetch if undefined test and set specVersion, else just return this.specVersion
1799
+ * @example this.specVersion = "0.7.1"
1789
1800
  */
1790
- getSpecificationVersion(): Promise<string>;
1801
+ setUpSpecVersion(): Promise<"0.7.1" | "0.8.1">;
1791
1802
  getNonceForAddress(contractAddress: BigNumberish, blockIdentifier?: BlockIdentifier): Promise<string>;
1792
1803
  /**
1793
1804
  * Get the most recent accepted block hash and number
@@ -1849,12 +1860,16 @@ declare class RpcChannel$1 {
1849
1860
  buildTransaction(invocation: AccountInvocationItem, versionType?: 'fee' | 'transaction'): RPCSPEC07.BaseTransaction;
1850
1861
  }
1851
1862
 
1852
- declare namespace rpc_0_7 {
1863
+ declare namespace rpc_0_7_1 {
1853
1864
  export { RpcChannel$1 as RpcChannel };
1854
1865
  }
1855
1866
 
1856
1867
  declare class RpcChannel {
1857
- readonly id = "RPC08";
1868
+ readonly id = "RPC081";
1869
+ /**
1870
+ * RPC specification version this Channel class implements
1871
+ */
1872
+ readonly channelSpecVersion: _SupportedRpcVersion;
1858
1873
  nodeUrl: string;
1859
1874
  headers: object;
1860
1875
  requestId: number;
@@ -1862,12 +1877,15 @@ declare class RpcChannel {
1862
1877
  readonly retries: number;
1863
1878
  readonly waitMode: boolean;
1864
1879
  private chainId?;
1880
+ /**
1881
+ * RPC specification version of the connected node
1882
+ */
1865
1883
  private specVersion?;
1866
1884
  private transactionRetryIntervalFallback?;
1867
1885
  private batchClient?;
1868
1886
  private baseFetch;
1869
1887
  constructor(optionsOrProvider?: RpcProviderOptions);
1870
- readSpecVersion(): "0.7" | "0.8" | undefined;
1888
+ readSpecVersion(): "0.7.1" | "0.8.1" | undefined;
1871
1889
  private get transactionRetryIntervalDefault();
1872
1890
  setChainId(chainId: _StarknetChainId): void;
1873
1891
  fetch(method: string, params?: object, id?: string | number): Promise<Response>;
@@ -1875,22 +1893,22 @@ declare class RpcChannel {
1875
1893
  protected fetchEndpoint<T extends keyof RPCSPEC08.Methods>(method: T, params?: RPCSPEC08.Methods[T]['params']): Promise<RPCSPEC08.Methods[T]['result']>;
1876
1894
  getChainId(): Promise<"0x534e5f4d41494e" | "0x534e5f5345504f4c4941">;
1877
1895
  /**
1878
- * Given an l1 tx hash, returns the associated l1_handler tx hashes and statuses for all L1 -> L2 messages sent by the l1 transaction, ordered by the l1 tx sending order
1896
+ * fetch rpc node specVersion
1897
+ * @example this.specVersion = "0.7.1"
1879
1898
  */
1880
- getMessagesStatus(txHash: BigNumberish): Promise<RPCSPEC08.L1L2MessagesStatus>;
1881
- getStorageProof(classHashes?: BigNumberish[], contractAddresses?: BigNumberish[], contractsStorageKeys?: RPCSPEC08.CONTRACT_STORAGE_KEYS[], // TODO: allow BigNUmberish[] and fix formatting before request
1882
- blockIdentifier?: BlockIdentifier): Promise<RPCSPEC08.StorageProof>;
1883
- getCompiledCasm(classHash: BigNumberish): Promise<RPCSPEC08.CASM_COMPILED_CONTRACT_CLASS>;
1899
+ getSpecVersion(): Promise<string>;
1884
1900
  /**
1885
1901
  * fetch if undefined else just return this.specVersion
1886
- * return this.specVersion as 'M.m'
1887
- * @example this.specVersion = "0.8"
1902
+ * @example this.specVersion = "0.8.1"
1888
1903
  */
1889
- getSpecVersion(): Promise<"0.7" | "0.8">;
1904
+ setUpSpecVersion(): Promise<"0.7.1" | "0.8.1">;
1890
1905
  /**
1891
- * fetch spec version in extended format "M.m.p-?"
1906
+ * Given an l1 tx hash, returns the associated l1_handler tx hashes and statuses for all L1 -> L2 messages sent by the l1 transaction, ordered by the l1 tx sending order
1892
1907
  */
1893
- getSpecificationVersion(): Promise<string>;
1908
+ getMessagesStatus(txHash: BigNumberish): Promise<RPCSPEC08.L1L2MessagesStatus>;
1909
+ getStorageProof(classHashes?: BigNumberish[], contractAddresses?: BigNumberish[], contractsStorageKeys?: RPCSPEC08.CONTRACT_STORAGE_KEYS[], // TODO: allow BigNUmberish[] and fix formatting before request
1910
+ blockIdentifier?: BlockIdentifier): Promise<RPCSPEC08.StorageProof>;
1911
+ getCompiledCasm(classHash: BigNumberish): Promise<RPCSPEC08.CASM_COMPILED_CONTRACT_CLASS>;
1894
1912
  getNonceForAddress(contractAddress: BigNumberish, blockIdentifier?: BlockIdentifier): Promise<string>;
1895
1913
  /**
1896
1914
  * Get the most recent accepted block hash and number
@@ -1985,10 +2003,10 @@ declare class RpcChannel {
1985
2003
  buildTransaction(invocation: AccountInvocationItem, versionType?: 'fee' | 'transaction'): RPCSPEC08.BaseTransaction;
1986
2004
  }
1987
2005
 
1988
- type rpc_0_8_RpcChannel = RpcChannel;
1989
- declare const rpc_0_8_RpcChannel: typeof RpcChannel;
1990
- declare namespace rpc_0_8 {
1991
- export { rpc_0_8_RpcChannel as RpcChannel };
2006
+ type rpc_0_8_1_RpcChannel = RpcChannel;
2007
+ declare const rpc_0_8_1_RpcChannel: typeof RpcChannel;
2008
+ declare namespace rpc_0_8_1 {
2009
+ export { rpc_0_8_1_RpcChannel as RpcChannel };
1992
2010
  }
1993
2011
 
1994
2012
  declare const WSSubscriptions: {
@@ -2005,9 +2023,10 @@ type WebSocketOptions = {
2005
2023
  */
2006
2024
  nodeUrl?: string;
2007
2025
  /**
2008
- * You can provide websocket object defined by protocol standard else library will use default 'isows'/'ws' package
2009
- * https://developer.mozilla.org/en-US/docs/Web/API/WebSocket/WebSocket#protocols .
2010
- * https://www.rfc-editor.org/rfc/rfc6455.html#section-1 .
2026
+ * This parameter should be used when working in an environment without native WebSocket support by providing
2027
+ * an equivalent WebSocket object that conforms to the protocol, e.g. from the 'isows' and/or 'ws' modules
2028
+ * * https://developer.mozilla.org/en-US/docs/Web/API/WebSocket/WebSocket#protocols .
2029
+ * * https://www.rfc-editor.org/rfc/rfc6455.html#section-1 .
2011
2030
  * @default WebSocket
2012
2031
  */
2013
2032
  websocket?: WebSocket;
@@ -2523,13 +2542,17 @@ declare class RpcProvider$1 implements ProviderInterface {
2523
2542
  fetch(method: string, params?: object, id?: string | number): Promise<Response>;
2524
2543
  getChainId(): Promise<"0x534e5f4d41494e" | "0x534e5f5345504f4c4941">;
2525
2544
  /**
2526
- * return spec version in format "M.m"
2545
+ * read channel spec version
2527
2546
  */
2528
- getSpecVersion(): Promise<"0.7" | "0.8">;
2547
+ readSpecVersion(): "0.7.1" | "0.8.1" | undefined;
2529
2548
  /**
2530
- * @returns return spec version in format 'M.m.p-rc'
2549
+ * get channel spec version
2531
2550
  */
2532
- getSpecificationVersion(): Promise<string>;
2551
+ getSpecVersion(): Promise<string>;
2552
+ /**
2553
+ * setup channel spec version and return it
2554
+ */
2555
+ setUpSpecVersion(): Promise<"0.7.1" | "0.8.1">;
2533
2556
  getNonceForAddress(contractAddress: BigNumberish, blockIdentifier?: BlockIdentifier): Promise<string>;
2534
2557
  getBlock(): Promise<PendingBlock>;
2535
2558
  getBlock(blockIdentifier: 'pending'): Promise<PendingBlock>;
@@ -2677,15 +2700,15 @@ declare class RpcProvider$1 implements ProviderInterface {
2677
2700
  /**
2678
2701
  * Given an l1 tx hash, returns the associated l1_handler tx hashes and statuses for all L1 -> L2 messages sent by the l1 transaction, ordered by the l1 tx sending order
2679
2702
  */
2680
- getL1MessagesStatus(transactionHash: BigNumberish): void;
2703
+ getL1MessagesStatus(transactionHash: BigNumberish): Promise<L1L2MessagesStatus>;
2681
2704
  /**
2682
2705
  * Get merkle paths in one of the state tries: global state, classes, individual contract
2683
2706
  */
2684
- getStorageProof(classHashes: BigNumberish[], contractAddresses: BigNumberish[], contractsStorageKeys: CONTRACT_STORAGE_KEYS[], blockIdentifier?: BlockIdentifier): void;
2707
+ getStorageProof(classHashes: BigNumberish[], contractAddresses: BigNumberish[], contractsStorageKeys: CONTRACT_STORAGE_KEYS[], blockIdentifier?: BlockIdentifier): Promise<StorageProof>;
2685
2708
  /**
2686
2709
  * Get the contract class definition in the given block associated with the given hash
2687
2710
  */
2688
- getCompiledCasm(classHash: BigNumberish): void;
2711
+ getCompiledCasm(classHash: BigNumberish): Promise<CASM_COMPILED_CONTRACT_CLASS>;
2689
2712
  }
2690
2713
 
2691
2714
  declare class StarknetId {
@@ -2716,7 +2739,7 @@ declare class RpcError<BaseErrorT extends RPC_ERROR = RPC_ERROR> extends Library
2716
2739
  params: any;
2717
2740
  };
2718
2741
  constructor(baseError: BaseErrorT, method: string, params: any);
2719
- get code(): 1 | 31 | 10 | 20 | 21 | 24 | 27 | 28 | 29 | 32 | 33 | 34 | 40 | 41 | 42 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 66 | 67 | 68 | 100;
2742
+ get code(): 1 | 31 | 10 | 66 | 20 | 32 | 21 | 24 | 27 | 28 | 29 | 33 | 34 | 40 | 41 | 42 | 51 | 52 | 53 | 54 | 55 | 56 | 57 | 58 | 59 | 60 | 61 | 62 | 63 | 67 | 68 | 100;
2720
2743
  /**
2721
2744
  * Verifies the underlying RPC error, also serves as a type guard for the _baseError_ property
2722
2745
  * @example
@@ -3290,6 +3313,167 @@ declare class LedgerSigner221<Transport extends Record<any, any> = any> extends
3290
3313
  */
3291
3314
  declare function getLedgerPathBuffer221(accountId: number, applicationName?: string): Uint8Array;
3292
3315
 
3316
+ /**
3317
+ * Signer for accounts using a Ledger Nano S+/X signature (Starknet Ledger APP version 2.3.1).
3318
+ *
3319
+ * The Ledger has to be connected, unlocked and the Starknet APP has to be selected prior of use of this class.
3320
+ */
3321
+ declare class LedgerSigner231<Transport extends Record<any, any> = any> extends LedgerSigner221 implements SignerInterface {
3322
+ /**
3323
+ * constructor of the LedgerSigner class.
3324
+ * @param {Transport} transport 5 transports are available to handle USB, bluetooth, Node, Web, Mobile.
3325
+ * See Guides for more details.
3326
+ * @param {number} accountID ID of Ledger Nano account (can handle 2**31 accounts).
3327
+ * @param {string} [eip2645application='LedgerW'] A wallet is defined by an ERC2645 derivation path (6 items).
3328
+ * One item is called `application` and can be customized.
3329
+ * Default value is `LedgerW`.
3330
+ * @param {LedgerPathCalculation} [pathFunction=getLedgerPathBuffer221]
3331
+ * defines the function that will calculate the path. By default `getLedgerPathBuffer221` is selected.
3332
+ *
3333
+ * If you are using APP v2.3.1 with an account created with the v1.1.1, you need to use :
3334
+ * ```typescript
3335
+ * const myLedgerSigner = new LedgerSigner231(myNodeTransport, 0, undefined, getLedgerPathBuffer111);
3336
+ * ```
3337
+ * @example
3338
+ * ```typescript
3339
+ * import TransportNodeHid from "@ledgerhq/hw-transport-node-hid";
3340
+ * const myNodeTransport = await TransportNodeHid.create();
3341
+ * const myLedgerSigner = new LedgerSigner231(myNodeTransport, 0);
3342
+ * ```
3343
+ */
3344
+ constructor(transport: Transport, accountID: number, eip2645application?: string, pathFunction?: LedgerPathCalculation);
3345
+ /**
3346
+ * Ask the Ledger Nano to display and sign a Starknet V1 transaction.
3347
+ * @param {V2InvocationsSignerDetails} txDetails All the details needed for a txV1.
3348
+ * @param {Call[]} calls array of Starknet invocations
3349
+ * @returns an object including the transaction Hash and the signature
3350
+ * @example
3351
+ * ```typescript
3352
+ * const calls: Call[] = [{contractAddress: "0x049d36570d4e46f48e99674bd3fcc84644ddd6b96f7c741b1562b82f9e004dc7",
3353
+ * entrypoint: "transfer",
3354
+ * calldata:["0x11f5fc2a92ac03434a7937fe982f5e5293b65ad438a989c5b78fb8f04a12016",
3355
+ * "0x9184e72a000", "0x0"]}];
3356
+ * const txDet: V2InvocationsSignerDetails = {
3357
+ * walletAddress: txDetails.accountAddress,
3358
+ * chainId: constants.StarknetChainId.SN_MAIN,
3359
+ * cairoVersion: "1", maxFee: txDetails.max_fee,
3360
+ * nonce: txDetails.nonce, version: "0x1"
3361
+ * };
3362
+ * const res = await myLedgerSigner.signTxV1(txDet, calls);
3363
+ * // res = {hash:
3364
+ * // signature:
3365
+ * // }
3366
+ * ```
3367
+ */
3368
+ signTxV1(txDetails: V2InvocationsSignerDetails, calls: Call[]): Promise<{
3369
+ hash: bigint;
3370
+ signature: Signature;
3371
+ }>;
3372
+ /**
3373
+ * Ask to the Ledger Nano to display and sign a Starknet V3 transaction (Rpc 0.7 & Rpc 0.8).
3374
+ * @param {V3InvocationsSignerDetails} txDetails All the details needed for a txV3.
3375
+ * @param {Call[]} calls array of Starknet invocations
3376
+ * @returns an object including the transaction Hash and the signature
3377
+ * @example
3378
+ * ```typescript
3379
+ * const calls: Call[] = [{contractAddress: "0x049d36570d4e46f48e99674bd3fcc84644ddd6b96f7c741b1562b82f9e004dc7",
3380
+ * entrypoint: "transfer",
3381
+ * calldata:["0x11f5fc2a92ac03434a7937fe982f5e5293b65ad438a989c5b78fb8f04a12016",
3382
+ * "0x9184e72a000", "0x0"]}];
3383
+ * const txDetailsV3: V3InvocationsSignerDetails = {
3384
+ * chainId: constants.StarknetChainId.SN_MAIN,
3385
+ * nonce: "28", accountDeploymentData: [],
3386
+ * paymasterData: [], cairoVersion: "1",
3387
+ * feeDataAvailabilityMode: "L1", nonceDataAvailabilityMode: "L1",
3388
+ * resourceBounds: {
3389
+ * l1_gas: { max_amount: "0x2a00", max_price_per_unit: "0x5c00000"
3390
+ * },
3391
+ * l2_gas: { max_amount: "0x00", max_price_per_unit: "0x00"},
3392
+ * }, tip: 0, version: "0x3", walletAddress: account0.address
3393
+ * }; // Rpc 0.7 transaction.
3394
+ * const res = await myLedgerSigner.signTxV3(txDetailsV3, calls);
3395
+ * // res = {hash:
3396
+ * // signature:
3397
+ * // }
3398
+ * ```
3399
+ */
3400
+ signTxV3(txDetails: V3InvocationsSignerDetails, calls: Call[]): Promise<{
3401
+ hash: bigint;
3402
+ signature: Signature;
3403
+ }>;
3404
+ /**
3405
+ * Ask the Ledger Nano to display and sign a Starknet V1 account deployment.
3406
+ * @param {V2DeployAccountSignerDetails} deployAccountDetail All the details needed for a V1 deploy account.
3407
+ * @returns an object including the transaction Hash and the signature
3408
+ * @example
3409
+ * ```typescript
3410
+ * const deployData: V2DeployAccountSignerDetails =
3411
+ * {
3412
+ * tip: 0, paymasterData: [], accountDeploymentData: [],
3413
+ * nonceDataAvailabilityMode: 'L1', feeDataAvailabilityMode: 'L1',
3414
+ * resourceBounds: {
3415
+ * l2_gas: { max_amount: '0x0', max_price_per_unit: '0x0' },
3416
+ * l1_gas: { max_amount: '0x0', max_price_per_unit: '0x0' }
3417
+ * },
3418
+ * classHash: '0x540d7f5ec7ecf317e68d48564934cb99259781b1ee3cedbbc37ec5337f8e688',
3419
+ * constructorCalldata: [
3420
+ * '89832696000889662999767022750851886674077821293893187900664573372145410755'
3421
+ * ],
3422
+ * contractAddress: '0x32c60fba64eb96831d064bbb2319375b7b7381543abe66da872e4344bcd72a0',
3423
+ * addressSalt: '0x0032d7efe2a9232f9b463e7206c68fdea4aeb13fec0cb308c6ba1d197d5922c3',
3424
+ * chainId: '0x534e5f5345504f4c4941', maxFee: 55050000000000n,
3425
+ * version: '0x1', nonce: 0n
3426
+ *}
3427
+ * const res = await myLedgerSigner.signDeployAccountV1(deployData);
3428
+ * // res = {hash:
3429
+ * // signature:
3430
+ * // }
3431
+ * ```
3432
+ */
3433
+ signDeployAccountV1(deployAccountDetail: V2DeployAccountSignerDetails): Promise<{
3434
+ hash: bigint;
3435
+ signature: Signature;
3436
+ }>;
3437
+ /**
3438
+ *Ask the Ledger Nano to display and sign a Starknet V3 account deployment (Rpc 0.7 & Rpc 0.8).
3439
+ * @param {V3DeployAccountSignerDetails} deployAccountDetail All the details needed for a V3 deploy account.
3440
+ * @returns an object including the transaction Hash and the signature
3441
+ * @example
3442
+ * ```typescript
3443
+ * const deployData: V3DeployAccountSignerDetails =
3444
+ * {
3445
+ * tip: 0, paymasterData: [], accountDeploymentData: [],
3446
+ * nonceDataAvailabilityMode: 'L1', feeDataAvailabilityMode: 'L1',
3447
+ * resourceBounds: {
3448
+ * l2_gas: { max_amount: '0x0', max_price_per_unit: '0x0' },
3449
+ * l1_gas: { max_amount: '0x226', max_price_per_unit: '0x22ecb25c00' }
3450
+ * },
3451
+ * classHash: '0x540d7f5ec7ecf317e68d48564934cb99259781b1ee3cedbbc37ec5337f8e688',
3452
+ * constructorCalldata: [
3453
+ * '3571125127744830445572285574469842579401255431821644822726857471463672199621'
3454
+ * ],
3455
+ * contractAddress: '0x4ca062add1cf12a107be1107af17981cf6e544a24d987693230ea481d3d5e34',
3456
+ * addressSalt: '0x07e52f68e3160e1ef698211cdf6d3792368fe347e7e2d4a8ace14d9b248f39c5',
3457
+ * chainId: '0x534e5f5345504f4c4941', maxFee: 0,
3458
+ * version: '0x3', nonce: 0n
3459
+ *} // Rpc 0.7 transaction.
3460
+ * const res = await myLedgerSigner.signDeployAccountV3(deployData);
3461
+ * // res = {hash:
3462
+ * // signature:
3463
+ * // }
3464
+ * ```
3465
+ */
3466
+ signDeployAccountV3(deployAccountDetail: V3DeployAccountSignerDetails): Promise<{
3467
+ hash: bigint;
3468
+ signature: Signature;
3469
+ }>;
3470
+ /** Internal function to convert a Call to an array of Uint8Array.
3471
+ * @param {Call} call A Call to convert.
3472
+ * @return {Uint8Array[]} Call encoded in an array of Uint8Array (each containing 7 u256).
3473
+ */
3474
+ protected encodeCall(call: Call): Uint8Array[];
3475
+ }
3476
+
3293
3477
  declare abstract class AccountInterface extends ProviderInterface {
3294
3478
  abstract address: string;
3295
3479
  abstract signer: SignerInterface;
@@ -5060,12 +5244,12 @@ declare function estimatedFeeToMaxFee(estimatedFee: BigNumberish, overhead?: num
5060
5244
  * @returns {ResourceBounds} The resource bounds with overhead.
5061
5245
  * @throws {Error} If the estimate object is undefined or does not have the required properties.
5062
5246
  */
5063
- declare function estimateFeeToBounds(estimate: FeeEstimate | 0n, overhead?: ResourceBoundsOverhead, specVersion?: string): ResourceBounds;
5247
+ declare function estimateFeeToBounds(estimate: FeeEstimate | 0n, overhead?: ResourceBoundsOverhead, specVersion?: _SupportedRpcVersion): ResourceBounds;
5064
5248
  type feeOverhead = ResourceBounds;
5065
5249
  /**
5066
5250
  * Mock zero fee response
5067
5251
  */
5068
- declare function ZEROFee(specVersion: string): {
5252
+ declare function ZEROFee(specVersion: _SupportedRpcVersion): {
5069
5253
  l1_gas_consumed: bigint;
5070
5254
  l1_gas_price: bigint;
5071
5255
  l1_data_gas_consumed: bigint;
@@ -6086,96 +6270,17 @@ declare class Block {
6086
6270
  valueOf: () => BlockIdentifier;
6087
6271
  toString: () => BlockIdentifier;
6088
6272
  }
6089
- /**
6090
- * Check if the given transaction details is a V3 transaction.
6091
- *
6092
- * @param {InvocationsDetailsWithNonce} details The transaction details to be checked.
6093
- * @return {boolean} Returns true if the transaction is a V3 transaction, otherwise false.
6094
- * @example
6095
- * ```typescript
6096
- * const invocation: InvocationsDetailsWithNonce = {
6097
- * nonce: 1,
6098
- * version: 3,
6099
- * maxFee: 10 ** 15,
6100
- * feeDataAvailabilityMode: RPC.EDataAvailabilityMode.L1,
6101
- * tip: 10 ** 13,
6102
- * paymasterData: [],
6103
- * resourceBounds: {
6104
- * l1_gas: { max_amount: num.toHex(10 ** 14), max_price_per_unit: num.toHex(50) },
6105
- * l2_gas: { max_amount: num.toHex(0), max_price_per_unit: num.toHex(0) }}};
6106
- * const result = provider.isV3Tx(invocation);
6107
- * // result = true
6108
- * ```
6109
- */
6110
- declare function isV3Tx(details: InvocationsDetailsWithNonce): details is V3TransactionDetails;
6111
- /**
6112
- * Determines if the given response matches the specified version.
6113
- *
6114
- * @param {SupportedRpcVersion} version The version to compare against the response.
6115
- * @param {string} response The response to check against the version.
6116
- * @returns {boolean} True if the response matches the version, false otherwise.
6117
- * @example
6118
- * ``` typescript
6119
- * const result = provider.isVersion("0.7","0_7");
6120
- * // result = false
6121
- * ```
6122
- */
6123
- declare function isVersion(version: _SupportedRpcVersion, response: string): boolean;
6124
- declare function stringToSpecVersion(version: string): _SupportedRpcVersion;
6125
- /**
6126
- * Guard Pending Block
6127
- * @param {GetBlockResponse} response answer of myProvider.getBlock()
6128
- * @return {boolean} true if block is the pending block
6129
- * @example
6130
- * ```typescript
6131
- * const block = await myProvider.getBlock("pending");
6132
- * const result = provider.isPendingBlock(block);
6133
- * // result = true
6134
- * ```
6135
- */
6136
- declare function isPendingBlock(response: GetBlockResponse): response is PendingBlock;
6137
- /**
6138
- * Guard Pending Transaction
6139
- * @param {GetTransactionReceiptResponse} response transaction Receipt
6140
- * @return {boolean} true if the transaction is part of the pending block
6141
- * @example
6142
- * ```typescript
6143
- * const block = await myProvider.getBlockWithTxs("pending");
6144
- * const txR = await myProvider.getTransactionReceipt(block.transactions[0].transaction_hash);
6145
- * const result = provider.isPendingTransaction(txR);
6146
- * // result = true
6147
- * ```
6148
- */
6149
- declare function isPendingTransaction(response: GetTransactionReceiptResponse): boolean;
6150
- /**
6151
- * Guard Pending State Update
6152
- * @param {StateUpdateResponse} response State of a block
6153
- * @return {boolean} true if the block is pending
6154
- * @example
6155
- * ```typescript
6156
- * const state: StateUpdateResponse = await myProvider.getStateUpdate("pending");
6157
- * const result = provider.isPendingStateUpdate(state);
6158
- * // result = true
6159
- * ```
6160
- */
6161
- declare function isPendingStateUpdate(response: StateUpdateResponse): response is PendingStateUpdate;
6162
6273
 
6163
6274
  type provider_Block = Block;
6164
6275
  declare const provider_Block: typeof Block;
6165
6276
  declare const provider_createSierraContractClass: typeof createSierraContractClass;
6166
6277
  declare const provider_getDefaultNodeUrl: typeof getDefaultNodeUrl;
6167
6278
  declare const provider_getDefaultNodes: typeof getDefaultNodes;
6168
- declare const provider_isPendingBlock: typeof isPendingBlock;
6169
- declare const provider_isPendingStateUpdate: typeof isPendingStateUpdate;
6170
- declare const provider_isPendingTransaction: typeof isPendingTransaction;
6171
- declare const provider_isV3Tx: typeof isV3Tx;
6172
- declare const provider_isVersion: typeof isVersion;
6173
6279
  declare const provider_parseContract: typeof parseContract;
6174
- declare const provider_stringToSpecVersion: typeof stringToSpecVersion;
6175
6280
  declare const provider_validBlockTags: typeof validBlockTags;
6176
6281
  declare const provider_wait: typeof wait;
6177
6282
  declare namespace provider {
6178
- export { provider_Block as Block, provider_createSierraContractClass as createSierraContractClass, provider_getDefaultNodeUrl as getDefaultNodeUrl, provider_getDefaultNodes as getDefaultNodes, provider_isPendingBlock as isPendingBlock, provider_isPendingStateUpdate as isPendingStateUpdate, provider_isPendingTransaction as isPendingTransaction, provider_isV3Tx as isV3Tx, provider_isVersion as isVersion, provider_parseContract as parseContract, provider_stringToSpecVersion as stringToSpecVersion, provider_validBlockTags as validBlockTags, provider_wait as wait };
6283
+ export { provider_Block as Block, provider_createSierraContractClass as createSierraContractClass, provider_getDefaultNodeUrl as getDefaultNodeUrl, provider_getDefaultNodes as getDefaultNodes, provider_parseContract as parseContract, provider_validBlockTags as validBlockTags, provider_wait as wait };
6179
6284
  }
6180
6285
 
6181
6286
  /**
@@ -6385,6 +6490,94 @@ declare namespace src5 {
6385
6490
  export { src5_supportsInterface as supportsInterface };
6386
6491
  }
6387
6492
 
6493
+ /**
6494
+ * Check if the given transaction details is a V3 transaction.
6495
+ *
6496
+ * @param {InvocationsDetailsWithNonce} details The transaction details to be checked.
6497
+ * @return {boolean} Returns true if the transaction is a V3 transaction, otherwise false.
6498
+ * @example
6499
+ * ```typescript
6500
+ * const invocation: InvocationsDetailsWithNonce = {
6501
+ * nonce: 1,
6502
+ * version: 3,
6503
+ * maxFee: 10 ** 15,
6504
+ * feeDataAvailabilityMode: RPC.EDataAvailabilityMode.L1,
6505
+ * tip: 10 ** 13,
6506
+ * paymasterData: [],
6507
+ * resourceBounds: {
6508
+ * l1_gas: { max_amount: num.toHex(10 ** 14), max_price_per_unit: num.toHex(50) },
6509
+ * l2_gas: { max_amount: num.toHex(0), max_price_per_unit: num.toHex(0) }}};
6510
+ * const result = provider.isV3Tx(invocation);
6511
+ * // result = true
6512
+ * ```
6513
+ */
6514
+ declare function isV3Tx(details: InvocationsDetailsWithNonce): details is V3TransactionDetails;
6515
+ /**
6516
+ * Determines if the provided version matches the specified version.
6517
+ * Version must be formatted "major.minor.patch" using dot delimiters.
6518
+ * Use wildcard * or unspecified to match 'any' value on the position.
6519
+ * ex. 7.3.* == 7.3.15, * == 1.1.1, 0.8 == 0.8.5. '' != 0.8.5
6520
+ *
6521
+ *
6522
+ * @param {string} expected version.
6523
+ * @param {string} provided to check against the expected version.
6524
+ * @returns {boolean} True if the response matches the version, false otherwise.
6525
+ * @example
6526
+ * ``` typescript
6527
+ * const result = provider.isVersion("0.7","0.7.1");
6528
+ * // result = true
6529
+ * ```
6530
+ */
6531
+ declare function isVersion(expected: string, provided: string): boolean;
6532
+ /**
6533
+ * Define if provided version is SDK supported rpc specification version
6534
+ */
6535
+ declare function isSupportedSpecVersion(version: string, options?: {
6536
+ allowAnyPatchVersion: boolean;
6537
+ }): version is _SupportedRpcVersion;
6538
+ /**
6539
+ * Convert fixed version to any patch version.
6540
+ * ex. 0.8.1 -> 0.8.*
6541
+ */
6542
+ declare function toAnyPatchVersion(version: string): string;
6543
+ /**
6544
+ * Guard Pending Block
6545
+ * @param {GetBlockResponse} response answer of myProvider.getBlock()
6546
+ * @return {boolean} true if block is the pending block
6547
+ * @example
6548
+ * ```typescript
6549
+ * const block = await myProvider.getBlock("pending");
6550
+ * const result = provider.isPendingBlock(block);
6551
+ * // result = true
6552
+ * ```
6553
+ */
6554
+ declare function isPendingBlock(response: GetBlockResponse): response is PendingBlock;
6555
+ /**
6556
+ * Guard Pending Transaction
6557
+ * @param {GetTransactionReceiptResponse} response transaction Receipt
6558
+ * @return {boolean} true if the transaction is part of the pending block
6559
+ * @example
6560
+ * ```typescript
6561
+ * const block = await myProvider.getBlockWithTxs("pending");
6562
+ * const txR = await myProvider.getTransactionReceipt(block.transactions[0].transaction_hash);
6563
+ * const result = provider.isPendingTransaction(txR);
6564
+ * // result = true
6565
+ * ```
6566
+ */
6567
+ declare function isPendingTransaction(response: GetTransactionReceiptResponse): boolean;
6568
+ /**
6569
+ * Guard Pending State Update
6570
+ * @param {StateUpdateResponse} response State of a block
6571
+ * @return {boolean} true if the block is pending
6572
+ * @example
6573
+ * ```typescript
6574
+ * const state: StateUpdateResponse = await myProvider.getStateUpdate("pending");
6575
+ * const result = provider.isPendingStateUpdate(state);
6576
+ * // result = true
6577
+ * ```
6578
+ */
6579
+ declare function isPendingStateUpdate(response: StateUpdateResponse): response is PendingStateUpdate;
6580
+
6388
6581
  type BatchClientOptions = {
6389
6582
  nodeUrl: string;
6390
6583
  headers: object;
@@ -7421,4 +7614,4 @@ declare class Logger {
7421
7614
  */
7422
7615
  declare const logger: Logger;
7423
7616
 
7424
- export { type Abi, type AbiEntry, type AbiEnum, type AbiEnums, type AbiEvent, type AbiEvents, type AbiInterfaces, type AbiStruct, type AbiStructs, Account, AccountInterface, type AccountInvocationItem, type AccountInvocations, type AccountInvocationsFactoryDetails, type AllowArray, type Args, type ArgsOrCalldata, type ArgsOrCalldataWithOptions, type ArraySignatureType, type AsyncContractFunction, type BLOCK_HASH, type BLOCK_NUMBER, BatchClient, type BatchClientOptions, type BigNumberish, type Block$1 as Block, type BlockIdentifier, type BlockNumber, BlockStatus, BlockTag, type BlockWithTxHashes, type Builtins, type ByteArray, type ByteCode, type CairoAssembly, type CairoContract, CairoCustomEnum, type CairoEnum, type CairoEnumRaw, type CairoEvent, type CairoEventDefinition, type CairoEventVariant, CairoFixedArray, CairoOption, CairoOptionVariant, CairoResult, CairoResultVariant, CairoUint256, CairoUint512, type CairoVersion, type Call, type CallContractResponse, CallData, type CallDetails, type CallOptions, type Calldata, type CompiledContract, type CompiledSierra, type CompiledSierraCasm, type CompilerVersion, type CompleteDeclareContractPayload, type CompressedProgram, Contract, type ContractClass, type ContractClassIdentifier, type ContractClassPayload, type ContractClassResponse, type ContractEntryPointFields, ContractFactory, type ContractFactoryParams, type ContractFunction, ContractInterface, type ContractOptions, type ContractVersion, CustomError, type DeclareAndDeployContractPayload, type DeclareContractPayload, type DeclareContractResponse, type DeclareContractTransaction, type DeclareDeployUDCResponse, type DeclareSignerDetails, type DeclareTransactionReceiptResponse, type DeclaredTransaction, type DeployAccountContractPayload, type DeployAccountContractTransaction, type DeployAccountSignerDetails, type DeployAccountTransactionReceiptResponse, type DeployContractResponse, type DeployContractUDCResponse, type DeployTransactionReceiptResponse, type DeployedAccountTransaction, type Details, EDAMode, EDataAvailabilityMode, ETH_ADDRESS, ETransactionExecutionStatus, ETransactionStatus, ETransactionVersion, ETransactionVersion2, ETransactionVersion3, type EVENTS_CHUNK, type EmittedEvent, EntryPointType, type EntryPointsByType, type EstimateFee, type EstimateFeeAction, type EstimateFeeBulk, type EstimateFeeDetails, type EstimateFeeResponse, type EstimateFeeResponseBulk, EthSigner, type Event$1 as Event, type EventEntry, type EventFilter, type FEE_ESTIMATE, type FELT, type FeeEstimate, type FeeMarginPercentage, type FunctionAbi, type GetBlockResponse, type GetTransactionReceiptResponse, type GetTransactionResponse, type GetTxReceiptResponseWithoutHelper, type HexCalldata, type InterfaceAbi, type Invocation, type Invocations, type InvocationsDetails, type InvocationsDetailsWithNonce, type InvocationsSignerDetails, type InvokeFunctionResponse, type InvokeOptions, type InvokeTransactionReceiptResponse, type InvokedTransaction, type L1HandlerTransactionReceiptResponse, type L1Message, type L1_HANDLER_TXN, type LedgerPathCalculation, LedgerSigner111 as LedgerSigner, LedgerSigner111, LedgerSigner221, type LegacyCompiledContract, type LegacyContractClass, type LegacyEvent, LibraryError, Literal, type LogLevel, LogLevelIndex, type Methods, type MultiDeployContractResponse, type MultiType, NON_ZERO_PREFIX, type Nonce, type OptionalPayload, type OutsideCall, type OutsideExecution, type OutsideExecutionOptions, OutsideExecutionTypesV1, OutsideExecutionTypesV2, OutsideExecutionVersion, type OutsideTransaction, type PENDING_DECLARE_TXN_RECEIPT, type PENDING_DEPLOY_ACCOUNT_TXN_RECEIPT, type PENDING_INVOKE_TXN_RECEIPT, type PENDING_L1_HANDLER_TXN_RECEIPT, type PENDING_STATE_UPDATE, type PRICE_UNIT, type ParsedEvent, type ParsedEvents, type ParsedStruct, type PendingBlock, type PendingReceipt, type PendingStateUpdate, type Program, RpcProvider as Provider, ProviderInterface, type ProviderOptions, type PythonicHints, type RESOURCE_PRICE, index$4 as RPC, rpc_0_7 as RPC07, rpc_0_8 as RPC08, RPCResponseParser, type RPC_ERROR, type RPC_ERROR_SET, type RawArgs, type RawArgsArray, type RawArgsObject, type RawCalldata, type Receipt, ReceiptTx, type RequiredKeysOf, type ResourceBounds, type ResourceBoundsOverhead, type ResourceBoundsOverheadRPC07, type ResourceBoundsOverheadRPC08, ResponseParser, type Result, type RevertedTransactionReceiptResponse, RpcChannel, RpcError, RpcProvider, type RpcProviderOptions, type SIMULATION_FLAG, type STATE_UPDATE, type SierraContractClass, type SierraContractEntryPointFields, type SierraEntryPointsByType, type SierraProgramDebugInfo, type Signature, Signer, SignerInterface, type Simplify, type SimulateTransaction, type SimulateTransactionDetails, type SimulateTransactionResponse, type SimulatedTransaction, type SimulationFlags, type StarkProfile, type StateUpdate, type StateUpdateResponse, type Storage, type SubscriptionBlockIdentifier, type SuccessfulTransactionReceiptResponse, type TRANSACTION_TRACE, type TXN_EXECUTION_STATUS, type TXN_HASH, type TXN_STATUS, TransactionExecutionStatus, TransactionFinalityStatus, type TransactionReceipt, type TransactionReceiptCallbacks, type TransactionReceiptCallbacksDefault, type TransactionReceiptCallbacksDefined, type TransactionReceiptStatus, type TransactionReceiptValue, type TransactionStatus, type TransactionStatusReceiptSets, TransactionType, type TransactionWithHash, type Tupled, type TypedContractV2, UINT_128_MAX, UINT_128_MIN, UINT_256_HIGH_MAX, UINT_256_HIGH_MIN, UINT_256_LOW_MAX, UINT_256_LOW_MIN, UINT_256_MAX, UINT_256_MIN, UINT_512_MAX, UINT_512_MIN, Uint, type Uint256, type Uint512, type UniversalDeployerContractPayload, type UniversalDetails, type UniversalSuggestedFee, type V2DeclareSignerDetails, type V2DeployAccountSignerDetails, type V2InvocationsSignerDetails, type V3DeclareSignerDetails, type V3DeployAccountSignerDetails, type V3InvocationsSignerDetails, type V3TransactionDetails, ValidateType, WSSubscriptions, WalletAccount, WebSocketChannel, type WebSocketOptions, type WeierstrassSignatureType, addAddressPadding, byteArray, cairo, config, constants, contractClassResponseToLegacyCompiledContract, defaultProvider, ec, encode, eth, index as events, extractContractHashes, fixProto, fixStack, getCalldata, getChecksumAddress, type getContractVersionOptions, type getEstimateFeeBulkOptions, getLedgerPathBuffer111 as getLedgerPathBuffer, getLedgerPathBuffer111, getLedgerPathBuffer221, type getSimulateTransactionOptions, index$2 as hash, isRPC08_FeeEstimate, isRPC08_ResourceBounds, isSierra, json, logger, merkle, num, outsideExecution, parseCalldataField, provider, selector, shortString, src5, index$1 as stark, starknetId, transaction, typedData, index$3 as types, uint256$1 as uint256, units, v2 as v2hash, v3 as v3hash, validateAndParseAddress, validateChecksumAddress, type waitForTransactionOptions, connect as wallet };
7617
+ export { type Abi, type AbiEntry, type AbiEnum, type AbiEnums, type AbiEvent, type AbiEvents, type AbiInterfaces, type AbiStruct, type AbiStructs, Account, AccountInterface, type AccountInvocationItem, type AccountInvocations, type AccountInvocationsFactoryDetails, type AllowArray, type Args, type ArgsOrCalldata, type ArgsOrCalldataWithOptions, type ArraySignatureType, type AsyncContractFunction, type BLOCK_HASH, type BLOCK_NUMBER, BatchClient, type BatchClientOptions, type BigNumberish, type Block$1 as Block, type BlockIdentifier, type BlockNumber, BlockStatus, BlockTag, type BlockWithTxHashes, type Builtins, type ByteArray, type ByteCode, type CairoAssembly, type CairoContract, CairoCustomEnum, type CairoEnum, type CairoEnumRaw, type CairoEvent, type CairoEventDefinition, type CairoEventVariant, CairoFixedArray, CairoOption, CairoOptionVariant, CairoResult, CairoResultVariant, CairoUint256, CairoUint512, type CairoVersion, type Call, type CallContractResponse, CallData, type CallDetails, type CallOptions, type Calldata, type CompiledContract, type CompiledSierra, type CompiledSierraCasm, type CompilerVersion, type CompleteDeclareContractPayload, type CompressedProgram, Contract, type ContractClass, type ContractClassIdentifier, type ContractClassPayload, type ContractClassResponse, type ContractEntryPointFields, ContractFactory, type ContractFactoryParams, type ContractFunction, ContractInterface, type ContractOptions, type ContractVersion, CustomError, type DeclareAndDeployContractPayload, type DeclareContractPayload, type DeclareContractResponse, type DeclareContractTransaction, type DeclareDeployUDCResponse, type DeclareSignerDetails, type DeclareTransactionReceiptResponse, type DeclaredTransaction, type DeployAccountContractPayload, type DeployAccountContractTransaction, type DeployAccountSignerDetails, type DeployAccountTransactionReceiptResponse, type DeployContractResponse, type DeployContractUDCResponse, type DeployTransactionReceiptResponse, type DeployedAccountTransaction, type Details, EDAMode, EDataAvailabilityMode, ETH_ADDRESS, ETransactionExecutionStatus, ETransactionStatus, ETransactionVersion, ETransactionVersion2, ETransactionVersion3, type EVENTS_CHUNK, type EmittedEvent, EntryPointType, type EntryPointsByType, type EstimateFee, type EstimateFeeAction, type EstimateFeeBulk, type EstimateFeeDetails, type EstimateFeeResponse, type EstimateFeeResponseBulk, EthSigner, type Event$1 as Event, type EventEntry, type EventFilter, type FEE_ESTIMATE, type FELT, type FeeEstimate, type FeeMarginPercentage, type FunctionAbi, type GetBlockResponse, type GetTransactionReceiptResponse, type GetTransactionResponse, type GetTxReceiptResponseWithoutHelper, type HexCalldata, type InterfaceAbi, type Invocation, type Invocations, type InvocationsDetails, type InvocationsDetailsWithNonce, type InvocationsSignerDetails, type InvokeFunctionResponse, type InvokeOptions, type InvokeTransactionReceiptResponse, type InvokedTransaction, type L1HandlerTransactionReceiptResponse, type L1Message, type L1_HANDLER_TXN, type LedgerPathCalculation, LedgerSigner111 as LedgerSigner, LedgerSigner111, LedgerSigner221, LedgerSigner231, type LegacyCompiledContract, type LegacyContractClass, type LegacyEvent, LibraryError, Literal, type LogLevel, LogLevelIndex, type Methods, type MultiDeployContractResponse, type MultiType, NON_ZERO_PREFIX, type Nonce, type OptionalPayload, type OutsideCall, type OutsideExecution, type OutsideExecutionOptions, OutsideExecutionTypesV1, OutsideExecutionTypesV2, OutsideExecutionVersion, type OutsideTransaction, type PENDING_DECLARE_TXN_RECEIPT, type PENDING_DEPLOY_ACCOUNT_TXN_RECEIPT, type PENDING_INVOKE_TXN_RECEIPT, type PENDING_L1_HANDLER_TXN_RECEIPT, type PENDING_STATE_UPDATE, type PRICE_UNIT, type ParsedEvent, type ParsedEvents, type ParsedStruct, type PendingBlock, type PendingReceipt, type PendingStateUpdate, type Program, RpcProvider as Provider, ProviderInterface, type ProviderOptions, type PythonicHints, type RESOURCE_PRICE, index$4 as RPC, rpc_0_7_1 as RPC07, rpc_0_8_1 as RPC08, RPCResponseParser, type RPC_ERROR, type RPC_ERROR_SET, type RawArgs, type RawArgsArray, type RawArgsObject, type RawCalldata, type Receipt, ReceiptTx, type RequiredKeysOf, type ResourceBounds, type ResourceBoundsOverhead, type ResourceBoundsOverheadRPC07, type ResourceBoundsOverheadRPC08, ResponseParser, type Result, type RevertedTransactionReceiptResponse, RpcChannel, RpcError, RpcProvider, type RpcProviderOptions, type SIMULATION_FLAG, type STATE_UPDATE, type SierraContractClass, type SierraContractEntryPointFields, type SierraEntryPointsByType, type SierraProgramDebugInfo, type Signature, Signer, SignerInterface, type Simplify, type SimulateTransaction, type SimulateTransactionDetails, type SimulateTransactionResponse, type SimulatedTransaction, type SimulationFlags, type StarkProfile, type StateUpdate, type StateUpdateResponse, type Storage, type SubscriptionBlockIdentifier, type SuccessfulTransactionReceiptResponse, type TRANSACTION_TRACE, type TXN_EXECUTION_STATUS, type TXN_HASH, type TXN_STATUS, TransactionExecutionStatus, TransactionFinalityStatus, type TransactionReceipt, type TransactionReceiptCallbacks, type TransactionReceiptCallbacksDefault, type TransactionReceiptCallbacksDefined, type TransactionReceiptStatus, type TransactionReceiptValue, type TransactionStatus, type TransactionStatusReceiptSets, TransactionType, type TransactionWithHash, type Tupled, type TypedContractV2, UINT_128_MAX, UINT_128_MIN, UINT_256_HIGH_MAX, UINT_256_HIGH_MIN, UINT_256_LOW_MAX, UINT_256_LOW_MIN, UINT_256_MAX, UINT_256_MIN, UINT_512_MAX, UINT_512_MIN, Uint, type Uint256, type Uint512, type UniversalDeployerContractPayload, type UniversalDetails, type UniversalSuggestedFee, type V2DeclareSignerDetails, type V2DeployAccountSignerDetails, type V2InvocationsSignerDetails, type V3DeclareSignerDetails, type V3DeployAccountSignerDetails, type V3InvocationsSignerDetails, type V3TransactionDetails, ValidateType, WSSubscriptions, WalletAccount, WebSocketChannel, type WebSocketOptions, type WeierstrassSignatureType, addAddressPadding, byteArray, cairo, config, constants, contractClassResponseToLegacyCompiledContract, defaultProvider, ec, encode, eth, index as events, extractContractHashes, fixProto, fixStack, getCalldata, getChecksumAddress, type getContractVersionOptions, type getEstimateFeeBulkOptions, getLedgerPathBuffer111 as getLedgerPathBuffer, getLedgerPathBuffer111, getLedgerPathBuffer221, type getSimulateTransactionOptions, index$2 as hash, isPendingBlock, isPendingStateUpdate, isPendingTransaction, isRPC08_FeeEstimate, isRPC08_ResourceBounds, isSierra, isSupportedSpecVersion, isV3Tx, isVersion, json, logger, merkle, num, outsideExecution, parseCalldataField, provider, selector, shortString, src5, index$1 as stark, starknetId, toAnyPatchVersion, transaction, typedData, index$3 as types, uint256$1 as uint256, units, v2 as v2hash, v3 as v3hash, validateAndParseAddress, validateChecksumAddress, type waitForTransactionOptions, connect as wallet };