@virtuals-protocol/acp-node 0.1.0-beta.14 → 0.1.0-beta.15

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -73,11 +73,25 @@ import AcpClient from '@virtuals-protocol/acp-node';
73
73
 
74
74
  ```typescript
75
75
  const acpClient = new AcpClient({
76
- acpContractClient: acpContractClient, // Your contract client instance
76
+ acpContractClient: await AcpContractClient.build(
77
+ "<wallet-private-key>",
78
+ "<session-entity-key-id>",
79
+ "<agent-wallet-address>",
80
+ "<custom-rpc-url>", // Optional custom RPC for gas fee estimates
81
+ "<config>" // Optional chain config
82
+ ),
77
83
  onNewTask: (job: AcpJob) => void, // Optional callback for new tasks
78
84
  onEvaluate: (job: AcpJob) => void // Optional callback for job evaluation
79
85
  });
80
86
  ```
87
+ - Note on `<custom-rpc-url>`
88
+ - The RPC url helps avoid rate limits and ensures accurate gas estimates during high-volume activity.
89
+ - If not provided, the SDK uses a default gas RPC with IP-based rate limits (~20–25 calls / 5 min), as mentioned in the [RPC docs](https://viem.sh/docs/clients/transports/http.html#usage)
90
+ - For popular agents with a high volume of job requests, we recommend passing in a custom RPC endpoint to prevent any rate-limit throttling.
91
+
92
+ - Note on `<config>`
93
+ - This refers to the config used for ACP
94
+ - Default would be the Base mainnet production config
81
95
 
82
96
  3. Initialize the client:
83
97
 
package/dist/index.d.mts CHANGED
@@ -73,6 +73,9 @@ type AcpContractConfig = {
73
73
  virtualsTokenAddress: Address;
74
74
  acpUrl: string;
75
75
  alchemyRpcUrl: string;
76
+ priorityFeeMultiplier: number;
77
+ maxFeePerGas: number;
78
+ maxPriorityFeePerGas: number;
76
79
  };
77
80
  declare const baseSepoliaAcpConfig: AcpContractConfig;
78
81
  declare const baseAcpConfig: AcpContractConfig;
@@ -99,12 +102,15 @@ declare class AcpContractClient {
99
102
  private sessionEntityKeyId;
100
103
  private agentWalletAddress;
101
104
  config: AcpContractConfig;
105
+ customRpcUrl?: string | undefined;
106
+ private MAX_RETRIES;
102
107
  private _sessionKeyClient;
103
108
  private chain;
104
109
  private contractAddress;
105
110
  private virtualsTokenAddress;
106
- constructor(walletPrivateKey: Address, sessionEntityKeyId: number, agentWalletAddress: Address, config?: AcpContractConfig);
107
- static build(walletPrivateKey: Address, sessionEntityKeyId: number, agentWalletAddress: Address, config?: AcpContractConfig): Promise<AcpContractClient>;
111
+ private customRpcClient;
112
+ constructor(walletPrivateKey: Address, sessionEntityKeyId: number, agentWalletAddress: Address, config?: AcpContractConfig, customRpcUrl?: string | undefined);
113
+ static build(walletPrivateKey: Address, sessionEntityKeyId: number, agentWalletAddress: Address, customRpcUrl?: string, config?: AcpContractConfig): Promise<AcpContractClient>;
108
114
  init(): Promise<void>;
109
115
  get sessionKeyClient(): {
110
116
  [x: string]: unknown;
@@ -376,8 +382,8 @@ declare class AcpContractClient {
376
382
  [x: `bool[${string}]`]: undefined;
377
383
  [x: `bytes4[${string}]`]: undefined;
378
384
  [x: `bytes[${string}]`]: undefined;
379
- [x: `bytes1[${string}]`]: undefined;
380
385
  [x: `bytes2[${string}]`]: undefined;
386
+ [x: `bytes1[${string}]`]: undefined;
381
387
  [x: `bytes3[${string}]`]: undefined;
382
388
  [x: `bytes5[${string}]`]: undefined;
383
389
  [x: `bytes6[${string}]`]: undefined;
@@ -478,8 +484,8 @@ declare class AcpContractClient {
478
484
  bool?: undefined;
479
485
  bytes4?: undefined;
480
486
  bytes?: undefined;
481
- bytes1?: undefined;
482
487
  bytes2?: undefined;
488
+ bytes1?: undefined;
483
489
  bytes3?: undefined;
484
490
  bytes5?: undefined;
485
491
  bytes6?: undefined;
@@ -620,128 +626,128 @@ declare class AcpContractClient {
620
626
  withdrawalsRoot?: `0x${string}` | undefined;
621
627
  transactions: includeTransactions extends true ? ({
622
628
  type: "legacy";
623
- r: viem.Hex;
624
- s: viem.Hex;
625
- v: bigint;
626
- yParity?: undefined | undefined;
627
- value: bigint;
628
629
  to: Address | null;
629
630
  from: Address;
630
631
  gas: bigint;
631
632
  nonce: number;
633
+ value: bigint;
632
634
  maxFeePerBlobGas?: undefined | undefined;
633
635
  gasPrice: bigint;
634
636
  maxFeePerGas?: undefined | undefined;
635
637
  maxPriorityFeePerGas?: undefined | undefined;
636
- authorizationList?: undefined | undefined;
637
638
  accessList?: undefined | undefined;
638
639
  blobVersionedHashes?: undefined | undefined;
640
+ authorizationList?: undefined | undefined;
639
641
  hash: viem.Hash;
642
+ r: viem.Hex;
643
+ s: viem.Hex;
644
+ v: bigint;
645
+ yParity?: undefined | undefined;
640
646
  input: viem.Hex;
641
647
  typeHex: viem.Hex | null;
642
648
  chainId?: number | undefined;
643
- blockHash: (blockTag extends "pending" ? true : false) extends infer T ? T extends (blockTag extends "pending" ? true : false) ? T extends true ? null : `0x${string}` : never : never;
644
- blockNumber: (blockTag extends "pending" ? true : false) extends infer T_1 ? T_1 extends (blockTag extends "pending" ? true : false) ? T_1 extends true ? null : bigint : never : never;
649
+ blockNumber: (blockTag extends "pending" ? true : false) extends infer T ? T extends (blockTag extends "pending" ? true : false) ? T extends true ? null : bigint : never : never;
650
+ blockHash: (blockTag extends "pending" ? true : false) extends infer T_1 ? T_1 extends (blockTag extends "pending" ? true : false) ? T_1 extends true ? null : `0x${string}` : never : never;
645
651
  transactionIndex: (blockTag extends "pending" ? true : false) extends infer T_2 ? T_2 extends (blockTag extends "pending" ? true : false) ? T_2 extends true ? null : number : never : never;
646
652
  } | {
647
653
  type: "eip2930";
648
- r: viem.Hex;
649
- s: viem.Hex;
650
- v: bigint;
651
- yParity: number;
652
- value: bigint;
653
654
  to: Address | null;
654
655
  from: Address;
655
656
  gas: bigint;
656
657
  nonce: number;
658
+ value: bigint;
657
659
  maxFeePerBlobGas?: undefined | undefined;
658
660
  gasPrice: bigint;
659
661
  maxFeePerGas?: undefined | undefined;
660
662
  maxPriorityFeePerGas?: undefined | undefined;
661
- authorizationList?: undefined | undefined;
662
663
  accessList: viem.AccessList;
663
664
  blobVersionedHashes?: undefined | undefined;
665
+ authorizationList?: undefined | undefined;
664
666
  hash: viem.Hash;
667
+ r: viem.Hex;
668
+ s: viem.Hex;
669
+ v: bigint;
670
+ yParity: number;
665
671
  input: viem.Hex;
666
672
  typeHex: viem.Hex | null;
667
673
  chainId: number;
668
- blockHash: (blockTag extends "pending" ? true : false) extends infer T_3 ? T_3 extends (blockTag extends "pending" ? true : false) ? T_3 extends true ? null : `0x${string}` : never : never;
669
- blockNumber: (blockTag extends "pending" ? true : false) extends infer T_4 ? T_4 extends (blockTag extends "pending" ? true : false) ? T_4 extends true ? null : bigint : never : never;
674
+ blockNumber: (blockTag extends "pending" ? true : false) extends infer T_3 ? T_3 extends (blockTag extends "pending" ? true : false) ? T_3 extends true ? null : bigint : never : never;
675
+ blockHash: (blockTag extends "pending" ? true : false) extends infer T_4 ? T_4 extends (blockTag extends "pending" ? true : false) ? T_4 extends true ? null : `0x${string}` : never : never;
670
676
  transactionIndex: (blockTag extends "pending" ? true : false) extends infer T_5 ? T_5 extends (blockTag extends "pending" ? true : false) ? T_5 extends true ? null : number : never : never;
671
677
  } | {
672
678
  type: "eip1559";
673
- r: viem.Hex;
674
- s: viem.Hex;
675
- v: bigint;
676
- yParity: number;
677
- value: bigint;
678
679
  to: Address | null;
679
680
  from: Address;
680
681
  gas: bigint;
681
682
  nonce: number;
683
+ value: bigint;
682
684
  maxFeePerBlobGas?: undefined | undefined;
683
685
  gasPrice?: undefined | undefined;
684
686
  maxFeePerGas: bigint;
685
687
  maxPriorityFeePerGas: bigint;
686
- authorizationList?: undefined | undefined;
687
688
  accessList: viem.AccessList;
688
689
  blobVersionedHashes?: undefined | undefined;
690
+ authorizationList?: undefined | undefined;
689
691
  hash: viem.Hash;
692
+ r: viem.Hex;
693
+ s: viem.Hex;
694
+ v: bigint;
695
+ yParity: number;
690
696
  input: viem.Hex;
691
697
  typeHex: viem.Hex | null;
692
698
  chainId: number;
693
- blockHash: (blockTag extends "pending" ? true : false) extends infer T_6 ? T_6 extends (blockTag extends "pending" ? true : false) ? T_6 extends true ? null : `0x${string}` : never : never;
694
- blockNumber: (blockTag extends "pending" ? true : false) extends infer T_7 ? T_7 extends (blockTag extends "pending" ? true : false) ? T_7 extends true ? null : bigint : never : never;
699
+ blockNumber: (blockTag extends "pending" ? true : false) extends infer T_6 ? T_6 extends (blockTag extends "pending" ? true : false) ? T_6 extends true ? null : bigint : never : never;
700
+ blockHash: (blockTag extends "pending" ? true : false) extends infer T_7 ? T_7 extends (blockTag extends "pending" ? true : false) ? T_7 extends true ? null : `0x${string}` : never : never;
695
701
  transactionIndex: (blockTag extends "pending" ? true : false) extends infer T_8 ? T_8 extends (blockTag extends "pending" ? true : false) ? T_8 extends true ? null : number : never : never;
696
702
  } | {
697
703
  type: "eip4844";
698
- r: viem.Hex;
699
- s: viem.Hex;
700
- v: bigint;
701
- yParity: number;
702
- value: bigint;
703
704
  to: Address | null;
704
705
  from: Address;
705
706
  gas: bigint;
706
707
  nonce: number;
708
+ value: bigint;
707
709
  maxFeePerBlobGas: bigint;
708
710
  gasPrice?: undefined | undefined;
709
711
  maxFeePerGas: bigint;
710
712
  maxPriorityFeePerGas: bigint;
711
- authorizationList?: undefined | undefined;
712
713
  accessList: viem.AccessList;
713
714
  blobVersionedHashes: readonly viem.Hex[];
715
+ authorizationList?: undefined | undefined;
714
716
  hash: viem.Hash;
717
+ r: viem.Hex;
718
+ s: viem.Hex;
719
+ v: bigint;
720
+ yParity: number;
715
721
  input: viem.Hex;
716
722
  typeHex: viem.Hex | null;
717
723
  chainId: number;
718
- blockHash: (blockTag extends "pending" ? true : false) extends infer T_9 ? T_9 extends (blockTag extends "pending" ? true : false) ? T_9 extends true ? null : `0x${string}` : never : never;
719
- blockNumber: (blockTag extends "pending" ? true : false) extends infer T_10 ? T_10 extends (blockTag extends "pending" ? true : false) ? T_10 extends true ? null : bigint : never : never;
724
+ blockNumber: (blockTag extends "pending" ? true : false) extends infer T_9 ? T_9 extends (blockTag extends "pending" ? true : false) ? T_9 extends true ? null : bigint : never : never;
725
+ blockHash: (blockTag extends "pending" ? true : false) extends infer T_10 ? T_10 extends (blockTag extends "pending" ? true : false) ? T_10 extends true ? null : `0x${string}` : never : never;
720
726
  transactionIndex: (blockTag extends "pending" ? true : false) extends infer T_11 ? T_11 extends (blockTag extends "pending" ? true : false) ? T_11 extends true ? null : number : never : never;
721
727
  } | {
722
728
  type: "eip7702";
723
- r: viem.Hex;
724
- s: viem.Hex;
725
- v: bigint;
726
- yParity: number;
727
- value: bigint;
728
729
  to: Address | null;
729
730
  from: Address;
730
731
  gas: bigint;
731
732
  nonce: number;
733
+ value: bigint;
732
734
  maxFeePerBlobGas?: undefined | undefined;
733
735
  gasPrice?: undefined | undefined;
734
736
  maxFeePerGas: bigint;
735
737
  maxPriorityFeePerGas: bigint;
736
- authorizationList: viem.SignedAuthorizationList;
737
738
  accessList: viem.AccessList;
738
739
  blobVersionedHashes?: undefined | undefined;
740
+ authorizationList: viem.SignedAuthorizationList;
739
741
  hash: viem.Hash;
742
+ r: viem.Hex;
743
+ s: viem.Hex;
744
+ v: bigint;
745
+ yParity: number;
740
746
  input: viem.Hex;
741
747
  typeHex: viem.Hex | null;
742
748
  chainId: number;
743
- blockHash: (blockTag extends "pending" ? true : false) extends infer T_12 ? T_12 extends (blockTag extends "pending" ? true : false) ? T_12 extends true ? null : `0x${string}` : never : never;
744
- blockNumber: (blockTag extends "pending" ? true : false) extends infer T_13 ? T_13 extends (blockTag extends "pending" ? true : false) ? T_13 extends true ? null : bigint : never : never;
749
+ blockNumber: (blockTag extends "pending" ? true : false) extends infer T_12 ? T_12 extends (blockTag extends "pending" ? true : false) ? T_12 extends true ? null : bigint : never : never;
750
+ blockHash: (blockTag extends "pending" ? true : false) extends infer T_13 ? T_13 extends (blockTag extends "pending" ? true : false) ? T_13 extends true ? null : `0x${string}` : never : never;
745
751
  transactionIndex: (blockTag extends "pending" ? true : false) extends infer T_14 ? T_14 extends (blockTag extends "pending" ? true : false) ? T_14 extends true ? null : number : never : never;
746
752
  })[] : `0x${string}`[];
747
753
  }>;
@@ -770,128 +776,128 @@ declare class AcpContractClient {
770
776
  getStorageAt: (args: viem.GetStorageAtParameters) => Promise<viem.GetStorageAtReturnType>;
771
777
  getTransaction: <blockTag extends viem.BlockTag = "latest">(args: viem.GetTransactionParameters<blockTag>) => Promise<{
772
778
  type: "legacy";
773
- r: viem.Hex;
774
- s: viem.Hex;
775
- v: bigint;
776
- yParity?: undefined | undefined;
777
- value: bigint;
778
779
  to: Address | null;
779
780
  from: Address;
780
781
  gas: bigint;
781
782
  nonce: number;
783
+ value: bigint;
782
784
  maxFeePerBlobGas?: undefined | undefined;
783
785
  gasPrice: bigint;
784
786
  maxFeePerGas?: undefined | undefined;
785
787
  maxPriorityFeePerGas?: undefined | undefined;
786
- authorizationList?: undefined | undefined;
787
788
  accessList?: undefined | undefined;
788
789
  blobVersionedHashes?: undefined | undefined;
790
+ authorizationList?: undefined | undefined;
789
791
  hash: viem.Hash;
792
+ r: viem.Hex;
793
+ s: viem.Hex;
794
+ v: bigint;
795
+ yParity?: undefined | undefined;
790
796
  input: viem.Hex;
791
797
  typeHex: viem.Hex | null;
792
798
  chainId?: number | undefined;
793
- blockHash: (blockTag extends "pending" ? true : false) extends infer T ? T extends (blockTag extends "pending" ? true : false) ? T extends true ? null : `0x${string}` : never : never;
794
- blockNumber: (blockTag extends "pending" ? true : false) extends infer T_1 ? T_1 extends (blockTag extends "pending" ? true : false) ? T_1 extends true ? null : bigint : never : never;
799
+ blockNumber: (blockTag extends "pending" ? true : false) extends infer T ? T extends (blockTag extends "pending" ? true : false) ? T extends true ? null : bigint : never : never;
800
+ blockHash: (blockTag extends "pending" ? true : false) extends infer T_1 ? T_1 extends (blockTag extends "pending" ? true : false) ? T_1 extends true ? null : `0x${string}` : never : never;
795
801
  transactionIndex: (blockTag extends "pending" ? true : false) extends infer T_2 ? T_2 extends (blockTag extends "pending" ? true : false) ? T_2 extends true ? null : number : never : never;
796
802
  } | {
797
803
  type: "eip2930";
798
- r: viem.Hex;
799
- s: viem.Hex;
800
- v: bigint;
801
- yParity: number;
802
- value: bigint;
803
804
  to: Address | null;
804
805
  from: Address;
805
806
  gas: bigint;
806
807
  nonce: number;
808
+ value: bigint;
807
809
  maxFeePerBlobGas?: undefined | undefined;
808
810
  gasPrice: bigint;
809
811
  maxFeePerGas?: undefined | undefined;
810
812
  maxPriorityFeePerGas?: undefined | undefined;
811
- authorizationList?: undefined | undefined;
812
813
  accessList: viem.AccessList;
813
814
  blobVersionedHashes?: undefined | undefined;
815
+ authorizationList?: undefined | undefined;
814
816
  hash: viem.Hash;
817
+ r: viem.Hex;
818
+ s: viem.Hex;
819
+ v: bigint;
820
+ yParity: number;
815
821
  input: viem.Hex;
816
822
  typeHex: viem.Hex | null;
817
823
  chainId: number;
818
- blockHash: (blockTag extends "pending" ? true : false) extends infer T_3 ? T_3 extends (blockTag extends "pending" ? true : false) ? T_3 extends true ? null : `0x${string}` : never : never;
819
- blockNumber: (blockTag extends "pending" ? true : false) extends infer T_4 ? T_4 extends (blockTag extends "pending" ? true : false) ? T_4 extends true ? null : bigint : never : never;
824
+ blockNumber: (blockTag extends "pending" ? true : false) extends infer T_3 ? T_3 extends (blockTag extends "pending" ? true : false) ? T_3 extends true ? null : bigint : never : never;
825
+ blockHash: (blockTag extends "pending" ? true : false) extends infer T_4 ? T_4 extends (blockTag extends "pending" ? true : false) ? T_4 extends true ? null : `0x${string}` : never : never;
820
826
  transactionIndex: (blockTag extends "pending" ? true : false) extends infer T_5 ? T_5 extends (blockTag extends "pending" ? true : false) ? T_5 extends true ? null : number : never : never;
821
827
  } | {
822
828
  type: "eip1559";
823
- r: viem.Hex;
824
- s: viem.Hex;
825
- v: bigint;
826
- yParity: number;
827
- value: bigint;
828
829
  to: Address | null;
829
830
  from: Address;
830
831
  gas: bigint;
831
832
  nonce: number;
833
+ value: bigint;
832
834
  maxFeePerBlobGas?: undefined | undefined;
833
835
  gasPrice?: undefined | undefined;
834
836
  maxFeePerGas: bigint;
835
837
  maxPriorityFeePerGas: bigint;
836
- authorizationList?: undefined | undefined;
837
838
  accessList: viem.AccessList;
838
839
  blobVersionedHashes?: undefined | undefined;
840
+ authorizationList?: undefined | undefined;
839
841
  hash: viem.Hash;
842
+ r: viem.Hex;
843
+ s: viem.Hex;
844
+ v: bigint;
845
+ yParity: number;
840
846
  input: viem.Hex;
841
847
  typeHex: viem.Hex | null;
842
848
  chainId: number;
843
- blockHash: (blockTag extends "pending" ? true : false) extends infer T_6 ? T_6 extends (blockTag extends "pending" ? true : false) ? T_6 extends true ? null : `0x${string}` : never : never;
844
- blockNumber: (blockTag extends "pending" ? true : false) extends infer T_7 ? T_7 extends (blockTag extends "pending" ? true : false) ? T_7 extends true ? null : bigint : never : never;
849
+ blockNumber: (blockTag extends "pending" ? true : false) extends infer T_6 ? T_6 extends (blockTag extends "pending" ? true : false) ? T_6 extends true ? null : bigint : never : never;
850
+ blockHash: (blockTag extends "pending" ? true : false) extends infer T_7 ? T_7 extends (blockTag extends "pending" ? true : false) ? T_7 extends true ? null : `0x${string}` : never : never;
845
851
  transactionIndex: (blockTag extends "pending" ? true : false) extends infer T_8 ? T_8 extends (blockTag extends "pending" ? true : false) ? T_8 extends true ? null : number : never : never;
846
852
  } | {
847
853
  type: "eip4844";
848
- r: viem.Hex;
849
- s: viem.Hex;
850
- v: bigint;
851
- yParity: number;
852
- value: bigint;
853
854
  to: Address | null;
854
855
  from: Address;
855
856
  gas: bigint;
856
857
  nonce: number;
858
+ value: bigint;
857
859
  maxFeePerBlobGas: bigint;
858
860
  gasPrice?: undefined | undefined;
859
861
  maxFeePerGas: bigint;
860
862
  maxPriorityFeePerGas: bigint;
861
- authorizationList?: undefined | undefined;
862
863
  accessList: viem.AccessList;
863
864
  blobVersionedHashes: readonly viem.Hex[];
865
+ authorizationList?: undefined | undefined;
864
866
  hash: viem.Hash;
867
+ r: viem.Hex;
868
+ s: viem.Hex;
869
+ v: bigint;
870
+ yParity: number;
865
871
  input: viem.Hex;
866
872
  typeHex: viem.Hex | null;
867
873
  chainId: number;
868
- blockHash: (blockTag extends "pending" ? true : false) extends infer T_9 ? T_9 extends (blockTag extends "pending" ? true : false) ? T_9 extends true ? null : `0x${string}` : never : never;
869
- blockNumber: (blockTag extends "pending" ? true : false) extends infer T_10 ? T_10 extends (blockTag extends "pending" ? true : false) ? T_10 extends true ? null : bigint : never : never;
874
+ blockNumber: (blockTag extends "pending" ? true : false) extends infer T_9 ? T_9 extends (blockTag extends "pending" ? true : false) ? T_9 extends true ? null : bigint : never : never;
875
+ blockHash: (blockTag extends "pending" ? true : false) extends infer T_10 ? T_10 extends (blockTag extends "pending" ? true : false) ? T_10 extends true ? null : `0x${string}` : never : never;
870
876
  transactionIndex: (blockTag extends "pending" ? true : false) extends infer T_11 ? T_11 extends (blockTag extends "pending" ? true : false) ? T_11 extends true ? null : number : never : never;
871
877
  } | {
872
878
  type: "eip7702";
873
- r: viem.Hex;
874
- s: viem.Hex;
875
- v: bigint;
876
- yParity: number;
877
- value: bigint;
878
879
  to: Address | null;
879
880
  from: Address;
880
881
  gas: bigint;
881
882
  nonce: number;
883
+ value: bigint;
882
884
  maxFeePerBlobGas?: undefined | undefined;
883
885
  gasPrice?: undefined | undefined;
884
886
  maxFeePerGas: bigint;
885
887
  maxPriorityFeePerGas: bigint;
886
- authorizationList: viem.SignedAuthorizationList;
887
888
  accessList: viem.AccessList;
888
889
  blobVersionedHashes?: undefined | undefined;
890
+ authorizationList: viem.SignedAuthorizationList;
889
891
  hash: viem.Hash;
892
+ r: viem.Hex;
893
+ s: viem.Hex;
894
+ v: bigint;
895
+ yParity: number;
890
896
  input: viem.Hex;
891
897
  typeHex: viem.Hex | null;
892
898
  chainId: number;
893
- blockHash: (blockTag extends "pending" ? true : false) extends infer T_12 ? T_12 extends (blockTag extends "pending" ? true : false) ? T_12 extends true ? null : `0x${string}` : never : never;
894
- blockNumber: (blockTag extends "pending" ? true : false) extends infer T_13 ? T_13 extends (blockTag extends "pending" ? true : false) ? T_13 extends true ? null : bigint : never : never;
899
+ blockNumber: (blockTag extends "pending" ? true : false) extends infer T_12 ? T_12 extends (blockTag extends "pending" ? true : false) ? T_12 extends true ? null : bigint : never : never;
900
+ blockHash: (blockTag extends "pending" ? true : false) extends infer T_13 ? T_13 extends (blockTag extends "pending" ? true : false) ? T_13 extends true ? null : `0x${string}` : never : never;
895
901
  transactionIndex: (blockTag extends "pending" ? true : false) extends infer T_14 ? T_14 extends (blockTag extends "pending" ? true : false) ? T_14 extends true ? null : number : never : never;
896
902
  }>;
897
903
  getTransactionConfirmations: (args: viem.GetTransactionConfirmationsParameters<viem.Chain | undefined>) => Promise<viem.GetTransactionConfirmationsReturnType>;
@@ -4150,7 +4156,7 @@ declare class AcpContractClient {
4150
4156
  authorizationList: viem.TransactionSerializableEIP7702["authorizationList"];
4151
4157
  } ? "eip7702" : never) | (request["type"] extends string | undefined ? Extract<request["type"], string> : never)>) ? T_25 extends "eip7702" ? viem.TransactionRequestEIP7702 : never : never : never)>> & {
4152
4158
  chainId?: number | undefined;
4153
- }, (request["parameters"] extends readonly viem.PrepareTransactionRequestParameterType[] ? request["parameters"][number] : "type" | "gas" | "nonce" | "blobVersionedHashes" | "chainId" | "fees") extends infer T_26 ? T_26 extends (request["parameters"] extends readonly viem.PrepareTransactionRequestParameterType[] ? request["parameters"][number] : "type" | "gas" | "nonce" | "blobVersionedHashes" | "chainId" | "fees") ? T_26 extends "fees" ? "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" : T_26 : never : never> & (unknown extends request["kzg"] ? {} : Pick<request, "kzg">) extends infer T ? { [K in keyof T]: (viem.UnionRequiredBy<Extract<viem.UnionOmit<viem.ExtractChainFormatterParameters<viem.DeriveChain<viem.Chain | undefined, chainOverride>, "transactionRequest", viem.TransactionRequest>, "from"> & (viem.DeriveChain<viem.Chain | undefined, chainOverride> extends infer T_1 ? T_1 extends viem.DeriveChain<viem.Chain | undefined, chainOverride> ? T_1 extends viem.Chain ? {
4159
+ }, (request["parameters"] extends readonly viem.PrepareTransactionRequestParameterType[] ? request["parameters"][number] : "type" | "gas" | "nonce" | "blobVersionedHashes" | "fees" | "chainId") extends infer T_26 ? T_26 extends (request["parameters"] extends readonly viem.PrepareTransactionRequestParameterType[] ? request["parameters"][number] : "type" | "gas" | "nonce" | "blobVersionedHashes" | "fees" | "chainId") ? T_26 extends "fees" ? "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" : T_26 : never : never> & (unknown extends request["kzg"] ? {} : Pick<request, "kzg">) extends infer T ? { [K in keyof T]: (viem.UnionRequiredBy<Extract<viem.UnionOmit<viem.ExtractChainFormatterParameters<viem.DeriveChain<viem.Chain | undefined, chainOverride>, "transactionRequest", viem.TransactionRequest>, "from"> & (viem.DeriveChain<viem.Chain | undefined, chainOverride> extends infer T_1 ? T_1 extends viem.DeriveChain<viem.Chain | undefined, chainOverride> ? T_1 extends viem.Chain ? {
4154
4160
  chain: T_1;
4155
4161
  } : {
4156
4162
  chain?: undefined;
@@ -7402,7 +7408,7 @@ declare class AcpContractClient {
7402
7408
  authorizationList: viem.TransactionSerializableEIP7702["authorizationList"];
7403
7409
  } ? "eip7702" : never) | (request["type"] extends string | undefined ? Extract<request["type"], string> : never)>) ? T_12 extends "eip7702" ? viem.TransactionRequestEIP7702 : never : never : never)>> & {
7404
7410
  chainId?: number | undefined;
7405
- }, (request["parameters"] extends readonly viem.PrepareTransactionRequestParameterType[] ? request["parameters"][number] : "type" | "gas" | "nonce" | "blobVersionedHashes" | "chainId" | "fees") extends infer T_13 ? T_13 extends (request["parameters"] extends readonly viem.PrepareTransactionRequestParameterType[] ? request["parameters"][number] : "type" | "gas" | "nonce" | "blobVersionedHashes" | "chainId" | "fees") ? T_13 extends "fees" ? "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" : T_13 : never : never> & (unknown extends request["kzg"] ? {} : Pick<request, "kzg">))[K]; } : never>;
7411
+ }, (request["parameters"] extends readonly viem.PrepareTransactionRequestParameterType[] ? request["parameters"][number] : "type" | "gas" | "nonce" | "blobVersionedHashes" | "fees" | "chainId") extends infer T_13 ? T_13 extends (request["parameters"] extends readonly viem.PrepareTransactionRequestParameterType[] ? request["parameters"][number] : "type" | "gas" | "nonce" | "blobVersionedHashes" | "fees" | "chainId") ? T_13 extends "fees" ? "gasPrice" | "maxFeePerGas" | "maxPriorityFeePerGas" : T_13 : never : never> & (unknown extends request["kzg"] ? {} : Pick<request, "kzg">))[K]; } : never>;
7406
7412
  readContract: <const abi extends viem.Abi | readonly unknown[], functionName extends viem.ContractFunctionName<abi, "pure" | "view">, const args extends viem.ContractFunctionArgs<abi, "pure" | "view", functionName>>(args: viem.ReadContractParameters<abi, functionName, args>) => Promise<viem.ReadContractReturnType<abi, functionName, args>>;
7407
7413
  sendRawTransaction: (args: viem.SendRawTransactionParameters) => Promise<viem.SendRawTransactionReturnType>;
7408
7414
  simulate: <const calls extends readonly unknown[]>(args: viem.SimulateBlocksParameters<calls>) => Promise<viem.SimulateBlocksReturnType<calls>>;
@@ -7686,8 +7692,8 @@ declare class AcpContractClient {
7686
7692
  [x: `bool[${string}]`]: undefined;
7687
7693
  [x: `bytes4[${string}]`]: undefined;
7688
7694
  [x: `bytes[${string}]`]: undefined;
7689
- [x: `bytes1[${string}]`]: undefined;
7690
7695
  [x: `bytes2[${string}]`]: undefined;
7696
+ [x: `bytes1[${string}]`]: undefined;
7691
7697
  [x: `bytes3[${string}]`]: undefined;
7692
7698
  [x: `bytes5[${string}]`]: undefined;
7693
7699
  [x: `bytes6[${string}]`]: undefined;
@@ -7788,8 +7794,8 @@ declare class AcpContractClient {
7788
7794
  bool?: undefined;
7789
7795
  bytes4?: undefined;
7790
7796
  bytes?: undefined;
7791
- bytes1?: undefined;
7792
7797
  bytes2?: undefined;
7798
+ bytes1?: undefined;
7793
7799
  bytes3?: undefined;
7794
7800
  bytes5?: undefined;
7795
7801
  bytes6?: undefined;
@@ -8137,8 +8143,8 @@ declare class AcpContractClient {
8137
8143
  [x: `bool[${string}]`]: undefined;
8138
8144
  [x: `bytes4[${string}]`]: undefined;
8139
8145
  [x: `bytes[${string}]`]: undefined;
8140
- [x: `bytes1[${string}]`]: undefined;
8141
8146
  [x: `bytes2[${string}]`]: undefined;
8147
+ [x: `bytes1[${string}]`]: undefined;
8142
8148
  [x: `bytes3[${string}]`]: undefined;
8143
8149
  [x: `bytes5[${string}]`]: undefined;
8144
8150
  [x: `bytes6[${string}]`]: undefined;
@@ -8239,8 +8245,8 @@ declare class AcpContractClient {
8239
8245
  bool?: undefined;
8240
8246
  bytes4?: undefined;
8241
8247
  bytes?: undefined;
8242
- bytes1?: undefined;
8243
8248
  bytes2?: undefined;
8249
+ bytes1?: undefined;
8244
8250
  bytes3?: undefined;
8245
8251
  bytes5?: undefined;
8246
8252
  bytes6?: undefined;
@@ -8338,6 +8344,8 @@ declare class AcpContractClient {
8338
8344
  } & _aa_sdk_core.BundlerActions & viem.PublicActions>;
8339
8345
  };
8340
8346
  get walletAddress(): Address;
8347
+ private calculateGasFees;
8348
+ private handleSendUserOperation;
8341
8349
  private getJobId;
8342
8350
  createJob(providerAddress: string, evaluatorAddress: string, expireAt: Date): Promise<{
8343
8351
  txHash: string;
@@ -8393,6 +8401,7 @@ interface IAcpClientOptions {
8393
8401
  acpContractClient: AcpContractClient;
8394
8402
  onNewTask?: (job: AcpJob) => void;
8395
8403
  onEvaluate?: (job: AcpJob) => void;
8404
+ customRpcUrl?: string;
8396
8405
  }
8397
8406
  type AcpAgent = {
8398
8407
  id: number;