@coinbase/cdp-sdk 1.48.3 → 1.49.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.
Files changed (78) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/_cjs/client/end-user/endUser.js +47 -0
  3. package/_cjs/client/end-user/endUser.js.map +1 -1
  4. package/_cjs/client/end-user/toEndUserAccount.js +11 -0
  5. package/_cjs/client/end-user/toEndUserAccount.js.map +1 -1
  6. package/_cjs/index.js.map +1 -1
  7. package/_cjs/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.js +34 -2
  8. package/_cjs/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.js.map +1 -1
  9. package/_cjs/openapi-client/generated/embedded-wallets/embedded-wallets.js +47 -2
  10. package/_cjs/openapi-client/generated/embedded-wallets/embedded-wallets.js.map +1 -1
  11. package/_cjs/openapi-client/generated/end-user-accounts/end-user-accounts.js +24 -2
  12. package/_cjs/openapi-client/generated/end-user-accounts/end-user-accounts.js.map +1 -1
  13. package/_cjs/openapi-client/generated/onramp/onramp.js +23 -1
  14. package/_cjs/openapi-client/generated/onramp/onramp.js.map +1 -1
  15. package/_cjs/policies/evmSchema.js +65 -1
  16. package/_cjs/policies/evmSchema.js.map +1 -1
  17. package/_cjs/policies/solanaSchema.js +34 -1
  18. package/_cjs/policies/solanaSchema.js.map +1 -1
  19. package/_cjs/policies/types.js +3 -0
  20. package/_cjs/policies/types.js.map +1 -1
  21. package/_cjs/version.js +1 -1
  22. package/_esm/client/end-user/endUser.js +47 -0
  23. package/_esm/client/end-user/endUser.js.map +1 -1
  24. package/_esm/client/end-user/toEndUserAccount.js +11 -0
  25. package/_esm/client/end-user/toEndUserAccount.js.map +1 -1
  26. package/_esm/index.js.map +1 -1
  27. package/_esm/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.js +32 -0
  28. package/_esm/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.js.map +1 -1
  29. package/_esm/openapi-client/generated/embedded-wallets/embedded-wallets.js +43 -1
  30. package/_esm/openapi-client/generated/embedded-wallets/embedded-wallets.js.map +1 -1
  31. package/_esm/openapi-client/generated/end-user-accounts/end-user-accounts.js +22 -1
  32. package/_esm/openapi-client/generated/end-user-accounts/end-user-accounts.js.map +1 -1
  33. package/_esm/openapi-client/generated/onramp/onramp.js +21 -0
  34. package/_esm/openapi-client/generated/onramp/onramp.js.map +1 -1
  35. package/_esm/policies/evmSchema.js +64 -0
  36. package/_esm/policies/evmSchema.js.map +1 -1
  37. package/_esm/policies/solanaSchema.js +33 -0
  38. package/_esm/policies/solanaSchema.js.map +1 -1
  39. package/_esm/policies/types.js +5 -2
  40. package/_esm/policies/types.js.map +1 -1
  41. package/_esm/version.js +1 -1
  42. package/_types/client/end-user/endUser.d.ts +35 -1
  43. package/_types/client/end-user/endUser.d.ts.map +1 -1
  44. package/_types/client/end-user/endUser.types.d.ts +68 -1
  45. package/_types/client/end-user/endUser.types.d.ts.map +1 -1
  46. package/_types/client/end-user/toEndUserAccount.d.ts.map +1 -1
  47. package/_types/index.d.ts +1 -1
  48. package/_types/index.d.ts.map +1 -1
  49. package/_types/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.d.ts +207 -1
  50. package/_types/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.d.ts.map +1 -1
  51. package/_types/openapi-client/generated/embedded-wallets/embedded-wallets.d.ts +24 -2
  52. package/_types/openapi-client/generated/embedded-wallets/embedded-wallets.d.ts.map +1 -1
  53. package/_types/openapi-client/generated/end-user-accounts/end-user-accounts.d.ts +22 -2
  54. package/_types/openapi-client/generated/end-user-accounts/end-user-accounts.d.ts.map +1 -1
  55. package/_types/openapi-client/generated/onramp/onramp.d.ts +16 -1
  56. package/_types/openapi-client/generated/onramp/onramp.d.ts.map +1 -1
  57. package/_types/openapi-client/index.d.ts +5 -1
  58. package/_types/openapi-client/index.d.ts.map +1 -1
  59. package/_types/policies/evmSchema.d.ts +1448 -0
  60. package/_types/policies/evmSchema.d.ts.map +1 -1
  61. package/_types/policies/solanaSchema.d.ts +472 -0
  62. package/_types/policies/solanaSchema.d.ts.map +1 -1
  63. package/_types/policies/types.d.ts +7642 -4536
  64. package/_types/policies/types.d.ts.map +1 -1
  65. package/_types/version.d.ts +1 -1
  66. package/client/end-user/endUser.ts +67 -0
  67. package/client/end-user/endUser.types.ts +83 -0
  68. package/client/end-user/toEndUserAccount.ts +27 -0
  69. package/index.ts +3 -0
  70. package/openapi-client/generated/coinbaseDeveloperPlatformAPIs.schemas.ts +266 -1
  71. package/openapi-client/generated/embedded-wallets/embedded-wallets.ts +86 -0
  72. package/openapi-client/generated/end-user-accounts/end-user-accounts.ts +31 -1
  73. package/openapi-client/generated/onramp/onramp.ts +31 -0
  74. package/package.json +1 -1
  75. package/policies/evmSchema.ts +82 -0
  76. package/policies/solanaSchema.ts +42 -0
  77. package/policies/types.ts +6 -0
  78. package/version.ts +1 -1
@@ -6751,4 +6751,1452 @@ export declare const SignEndUserEvmTypedDataRuleSchema: z.ZodObject<{
6751
6751
  })[];
6752
6752
  }>;
6753
6753
  export type SignEndUserEvmTypedDataRule = z.infer<typeof SignEndUserEvmTypedDataRuleSchema>;
6754
+ /**
6755
+ * Schema for criteria used in SendEndUserEvmAsset operations
6756
+ */
6757
+ export declare const SendEndUserEvmAssetCriteriaSchema: z.ZodArray<z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
6758
+ /** The type of criterion, must be "evmAddress" for EVM address-based rules. */
6759
+ type: z.ZodLiteral<"evmNetwork">;
6760
+ /**
6761
+ * Array of EVM network identifiers to compare against.
6762
+ * Either "base", "base-sepolia", "ethereum", "ethereum-sepolia", "avalanche", "polygon", "optimism", "arbitrum"
6763
+ */
6764
+ networks: z.ZodArray<z.ZodEnum<["base", "base-sepolia", "ethereum", "ethereum-sepolia", "avalanche", "polygon", "optimism", "arbitrum"]>, "many">;
6765
+ /**
6766
+ * The operator to use for evaluating transaction network.
6767
+ * "in" checks if a network is in the provided list.
6768
+ * "not in" checks if a network is not in the provided list.
6769
+ */
6770
+ operator: z.ZodEnum<["in", "not in"]>;
6771
+ }, "strip", z.ZodTypeAny, {
6772
+ type: "evmNetwork";
6773
+ operator: "in" | "not in";
6774
+ networks: ("base-sepolia" | "base" | "arbitrum" | "optimism" | "polygon" | "ethereum" | "ethereum-sepolia" | "avalanche")[];
6775
+ }, {
6776
+ type: "evmNetwork";
6777
+ operator: "in" | "not in";
6778
+ networks: ("base-sepolia" | "base" | "arbitrum" | "optimism" | "polygon" | "ethereum" | "ethereum-sepolia" | "avalanche")[];
6779
+ }>, z.ZodObject<{
6780
+ /** The type of criterion, must be "evmData" for EVM transaction rules. */
6781
+ type: z.ZodLiteral<"evmData">;
6782
+ /**
6783
+ * The ABI of the smart contract being called. This can be a partial structure with only specific functions.
6784
+ */
6785
+ abi: z.ZodUnion<[z.ZodEnum<["erc20", "erc721", "erc1155"]>, z.ZodReadonly<z.ZodArray<z.ZodUnion<[z.ZodObject<{
6786
+ type: z.ZodLiteral<"error">;
6787
+ inputs: z.ZodReadonly<z.ZodArray<z.ZodType<import("abitype").AbiParameter, z.ZodTypeDef, import("abitype").AbiParameter>, "many">>;
6788
+ name: z.ZodString;
6789
+ }, "strip", z.ZodTypeAny, {
6790
+ inputs: readonly import("abitype").AbiParameter[];
6791
+ type: "error";
6792
+ name: string;
6793
+ }, {
6794
+ inputs: readonly import("abitype").AbiParameter[];
6795
+ type: "error";
6796
+ name: string;
6797
+ }>, z.ZodObject<{
6798
+ type: z.ZodLiteral<"event">;
6799
+ anonymous: z.ZodOptional<z.ZodBoolean>;
6800
+ inputs: z.ZodReadonly<z.ZodArray<z.ZodType<import("abitype").AbiEventParameter, z.ZodTypeDef, import("abitype").AbiEventParameter>, "many">>;
6801
+ name: z.ZodString;
6802
+ }, "strip", z.ZodTypeAny, {
6803
+ inputs: readonly import("abitype").AbiEventParameter[];
6804
+ type: "event";
6805
+ name: string;
6806
+ anonymous?: boolean | undefined;
6807
+ }, {
6808
+ inputs: readonly import("abitype").AbiEventParameter[];
6809
+ type: "event";
6810
+ name: string;
6811
+ anonymous?: boolean | undefined;
6812
+ }>, z.ZodEffects<z.ZodIntersection<z.ZodObject<{
6813
+ constant: z.ZodOptional<z.ZodBoolean>;
6814
+ gas: z.ZodOptional<z.ZodNumber>;
6815
+ payable: z.ZodOptional<z.ZodBoolean>;
6816
+ }, "strip", z.ZodTypeAny, {
6817
+ payable?: boolean | undefined;
6818
+ constant?: boolean | undefined;
6819
+ gas?: number | undefined;
6820
+ }, {
6821
+ payable?: boolean | undefined;
6822
+ constant?: boolean | undefined;
6823
+ gas?: number | undefined;
6824
+ }>, z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
6825
+ type: z.ZodLiteral<"function">;
6826
+ inputs: z.ZodReadonly<z.ZodArray<z.ZodType<import("abitype").AbiParameter, z.ZodTypeDef, import("abitype").AbiParameter>, "many">>;
6827
+ name: z.ZodString;
6828
+ outputs: z.ZodReadonly<z.ZodArray<z.ZodType<import("abitype").AbiParameter, z.ZodTypeDef, import("abitype").AbiParameter>, "many">>;
6829
+ stateMutability: z.ZodUnion<[z.ZodLiteral<"pure">, z.ZodLiteral<"view">, z.ZodLiteral<"nonpayable">, z.ZodLiteral<"payable">]>;
6830
+ }, "strip", z.ZodTypeAny, {
6831
+ inputs: readonly import("abitype").AbiParameter[];
6832
+ outputs: readonly import("abitype").AbiParameter[];
6833
+ type: "function";
6834
+ name: string;
6835
+ stateMutability: "pure" | "view" | "nonpayable" | "payable";
6836
+ }, {
6837
+ inputs: readonly import("abitype").AbiParameter[];
6838
+ outputs: readonly import("abitype").AbiParameter[];
6839
+ type: "function";
6840
+ name: string;
6841
+ stateMutability: "pure" | "view" | "nonpayable" | "payable";
6842
+ }>, z.ZodObject<{
6843
+ type: z.ZodLiteral<"constructor">;
6844
+ inputs: z.ZodReadonly<z.ZodArray<z.ZodType<import("abitype").AbiParameter, z.ZodTypeDef, import("abitype").AbiParameter>, "many">>;
6845
+ stateMutability: z.ZodUnion<[z.ZodLiteral<"payable">, z.ZodLiteral<"nonpayable">]>;
6846
+ }, "strip", z.ZodTypeAny, {
6847
+ inputs: readonly import("abitype").AbiParameter[];
6848
+ type: "constructor";
6849
+ stateMutability: "nonpayable" | "payable";
6850
+ }, {
6851
+ inputs: readonly import("abitype").AbiParameter[];
6852
+ type: "constructor";
6853
+ stateMutability: "nonpayable" | "payable";
6854
+ }>, z.ZodObject<{
6855
+ type: z.ZodLiteral<"fallback">;
6856
+ inputs: z.ZodOptional<z.ZodTuple<[], null>>;
6857
+ stateMutability: z.ZodUnion<[z.ZodLiteral<"payable">, z.ZodLiteral<"nonpayable">]>;
6858
+ }, "strip", z.ZodTypeAny, {
6859
+ type: "fallback";
6860
+ stateMutability: "nonpayable" | "payable";
6861
+ inputs?: [] | undefined;
6862
+ }, {
6863
+ type: "fallback";
6864
+ stateMutability: "nonpayable" | "payable";
6865
+ inputs?: [] | undefined;
6866
+ }>, z.ZodObject<{
6867
+ type: z.ZodLiteral<"receive">;
6868
+ stateMutability: z.ZodLiteral<"payable">;
6869
+ }, "strip", z.ZodTypeAny, {
6870
+ type: "receive";
6871
+ stateMutability: "payable";
6872
+ }, {
6873
+ type: "receive";
6874
+ stateMutability: "payable";
6875
+ }>]>>, {
6876
+ payable?: boolean | undefined;
6877
+ constant?: boolean | undefined;
6878
+ gas?: number | undefined;
6879
+ } & ({
6880
+ inputs: readonly import("abitype").AbiParameter[];
6881
+ outputs: readonly import("abitype").AbiParameter[];
6882
+ type: "function";
6883
+ name: string;
6884
+ stateMutability: "pure" | "view" | "nonpayable" | "payable";
6885
+ } | {
6886
+ inputs: readonly import("abitype").AbiParameter[];
6887
+ type: "constructor";
6888
+ stateMutability: "nonpayable" | "payable";
6889
+ } | {
6890
+ type: "fallback";
6891
+ stateMutability: "nonpayable" | "payable";
6892
+ inputs?: [] | undefined;
6893
+ } | {
6894
+ type: "receive";
6895
+ stateMutability: "payable";
6896
+ }), unknown>]>, "many">>]>;
6897
+ /**
6898
+ * A list of conditions to apply against the function and encoded arguments in the transaction's `data` field.
6899
+ * Each condition must be met in order for this policy to be accepted or rejected.
6900
+ */
6901
+ conditions: z.ZodArray<z.ZodObject<{
6902
+ /**
6903
+ * The name of a smart contract function being called.
6904
+ */
6905
+ function: z.ZodString;
6906
+ /**
6907
+ * An optional list of parameter conditions to apply against encoded arguments in the transaction's `data` field.
6908
+ */
6909
+ params: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodObject<{
6910
+ /**
6911
+ * The name of the parameter to check against a transaction's calldata.
6912
+ * If name is unknown, or is not named, you may supply an array index, e.g., `0` for first parameter.
6913
+ */
6914
+ name: z.ZodUnion<[z.ZodString, z.ZodString]>;
6915
+ /**
6916
+ * The operator to use for the comparison. The value resolved at the `name` will be on the
6917
+ * left-hand side of the operator, and the `value` field will be on the right-hand side.
6918
+ */
6919
+ operator: z.ZodEnum<[">", ">=", "<", "<=", "=="]>;
6920
+ /**
6921
+ * A single value to compare the value resolved at `name` to.
6922
+ * All values are encoded as strings. Refer to the table in the documentation for how values
6923
+ * should be encoded, and which operators are supported for each type.
6924
+ */
6925
+ value: z.ZodString;
6926
+ }, "strip", z.ZodTypeAny, {
6927
+ value: string;
6928
+ name: string;
6929
+ operator: ">" | ">=" | "<" | "<=" | "==";
6930
+ }, {
6931
+ value: string;
6932
+ name: string;
6933
+ operator: ">" | ">=" | "<" | "<=" | "==";
6934
+ }>, z.ZodObject<{
6935
+ /**
6936
+ * The name of the parameter to check against a transaction's calldata.
6937
+ * If name is unknown, or is not named, you may supply an array index, e.g., `0` for first parameter.
6938
+ */
6939
+ name: z.ZodUnion<[z.ZodString, z.ZodString]>;
6940
+ /**
6941
+ * The operator to use for the comparison. The value resolved at the `name` will be on the
6942
+ * left-hand side of the operator, and the `values` field will be on the right-hand side.
6943
+ */
6944
+ operator: z.ZodEnum<["in", "not in"]>;
6945
+ /**
6946
+ * Values to compare against the resolved `name` value.
6947
+ * All values are encoded as strings. Refer to the table in the documentation for how values
6948
+ * should be encoded, and which operators are supported for each type.
6949
+ */
6950
+ values: z.ZodArray<z.ZodString, "many">;
6951
+ }, "strip", z.ZodTypeAny, {
6952
+ values: string[];
6953
+ name: string;
6954
+ operator: "in" | "not in";
6955
+ }, {
6956
+ values: string[];
6957
+ name: string;
6958
+ operator: "in" | "not in";
6959
+ }>]>, "many">>;
6960
+ }, "strip", z.ZodTypeAny, {
6961
+ function: string;
6962
+ params?: ({
6963
+ values: string[];
6964
+ name: string;
6965
+ operator: "in" | "not in";
6966
+ } | {
6967
+ value: string;
6968
+ name: string;
6969
+ operator: ">" | ">=" | "<" | "<=" | "==";
6970
+ })[] | undefined;
6971
+ }, {
6972
+ function: string;
6973
+ params?: ({
6974
+ values: string[];
6975
+ name: string;
6976
+ operator: "in" | "not in";
6977
+ } | {
6978
+ value: string;
6979
+ name: string;
6980
+ operator: ">" | ">=" | "<" | "<=" | "==";
6981
+ })[] | undefined;
6982
+ }>, "many">;
6983
+ }, "strip", z.ZodTypeAny, {
6984
+ type: "evmData";
6985
+ abi: "erc20" | "erc721" | "erc1155" | readonly ({
6986
+ inputs: readonly import("abitype").AbiParameter[];
6987
+ type: "error";
6988
+ name: string;
6989
+ } | {
6990
+ inputs: readonly import("abitype").AbiEventParameter[];
6991
+ type: "event";
6992
+ name: string;
6993
+ anonymous?: boolean | undefined;
6994
+ } | ({
6995
+ payable?: boolean | undefined;
6996
+ constant?: boolean | undefined;
6997
+ gas?: number | undefined;
6998
+ } & ({
6999
+ inputs: readonly import("abitype").AbiParameter[];
7000
+ outputs: readonly import("abitype").AbiParameter[];
7001
+ type: "function";
7002
+ name: string;
7003
+ stateMutability: "pure" | "view" | "nonpayable" | "payable";
7004
+ } | {
7005
+ inputs: readonly import("abitype").AbiParameter[];
7006
+ type: "constructor";
7007
+ stateMutability: "nonpayable" | "payable";
7008
+ } | {
7009
+ type: "fallback";
7010
+ stateMutability: "nonpayable" | "payable";
7011
+ inputs?: [] | undefined;
7012
+ } | {
7013
+ type: "receive";
7014
+ stateMutability: "payable";
7015
+ })))[];
7016
+ conditions: {
7017
+ function: string;
7018
+ params?: ({
7019
+ values: string[];
7020
+ name: string;
7021
+ operator: "in" | "not in";
7022
+ } | {
7023
+ value: string;
7024
+ name: string;
7025
+ operator: ">" | ">=" | "<" | "<=" | "==";
7026
+ })[] | undefined;
7027
+ }[];
7028
+ }, {
7029
+ type: "evmData";
7030
+ abi: "erc20" | "erc721" | "erc1155" | readonly unknown[];
7031
+ conditions: {
7032
+ function: string;
7033
+ params?: ({
7034
+ values: string[];
7035
+ name: string;
7036
+ operator: "in" | "not in";
7037
+ } | {
7038
+ value: string;
7039
+ name: string;
7040
+ operator: ">" | ">=" | "<" | "<=" | "==";
7041
+ })[] | undefined;
7042
+ }[];
7043
+ }>, z.ZodObject<{
7044
+ /** The type of criterion, must be "netUSDChange" for USD denominated asset transfer rules. */
7045
+ type: z.ZodLiteral<"netUSDChange">;
7046
+ /**
7047
+ * The amount of USD, in cents, that the total USD value of a transaction's asset transfer and exposure should be compared to.
7048
+ */
7049
+ changeCents: z.ZodNumber;
7050
+ /**
7051
+ * The operator to use for the comparison. The total value of a transaction's asset transfer and exposure in USD will be on the left-hand side of the operator, and the `changeCents` field will be on the right-hand side.
7052
+ */
7053
+ operator: z.ZodEnum<[">", ">=", "<", "<=", "=="]>;
7054
+ }, "strip", z.ZodTypeAny, {
7055
+ type: "netUSDChange";
7056
+ operator: ">" | ">=" | "<" | "<=" | "==";
7057
+ changeCents: number;
7058
+ }, {
7059
+ type: "netUSDChange";
7060
+ operator: ">" | ">=" | "<" | "<=" | "==";
7061
+ changeCents: number;
7062
+ }>]>, "many">;
7063
+ /**
7064
+ * Type representing a set of criteria for the sendEndUserEvmAsset operation.
7065
+ */
7066
+ export type SendEndUserEvmAssetCriteria = z.infer<typeof SendEndUserEvmAssetCriteriaSchema>;
7067
+ /**
7068
+ * Type representing a 'sendEndUserEvmAsset' policy rule that can accept or reject specific operations
7069
+ * based on a set of criteria.
7070
+ */
7071
+ export declare const SendEndUserEvmAssetRuleSchema: z.ZodObject<{
7072
+ /**
7073
+ * Determines whether matching the rule will cause a request to be rejected or accepted.
7074
+ * "accept" will allow the operation, "reject" will block it.
7075
+ */
7076
+ action: z.ZodEnum<["reject", "accept"]>;
7077
+ /**
7078
+ * The operation to which this rule applies.
7079
+ * Must be "sendEndUserEvmAsset".
7080
+ */
7081
+ operation: z.ZodLiteral<"sendEndUserEvmAsset">;
7082
+ /**
7083
+ * The set of criteria that must be matched for this rule to apply.
7084
+ * Must be compatible with the specified operation type.
7085
+ */
7086
+ criteria: z.ZodArray<z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
7087
+ /** The type of criterion, must be "evmAddress" for EVM address-based rules. */
7088
+ type: z.ZodLiteral<"evmNetwork">;
7089
+ /**
7090
+ * Array of EVM network identifiers to compare against.
7091
+ * Either "base", "base-sepolia", "ethereum", "ethereum-sepolia", "avalanche", "polygon", "optimism", "arbitrum"
7092
+ */
7093
+ networks: z.ZodArray<z.ZodEnum<["base", "base-sepolia", "ethereum", "ethereum-sepolia", "avalanche", "polygon", "optimism", "arbitrum"]>, "many">;
7094
+ /**
7095
+ * The operator to use for evaluating transaction network.
7096
+ * "in" checks if a network is in the provided list.
7097
+ * "not in" checks if a network is not in the provided list.
7098
+ */
7099
+ operator: z.ZodEnum<["in", "not in"]>;
7100
+ }, "strip", z.ZodTypeAny, {
7101
+ type: "evmNetwork";
7102
+ operator: "in" | "not in";
7103
+ networks: ("base-sepolia" | "base" | "arbitrum" | "optimism" | "polygon" | "ethereum" | "ethereum-sepolia" | "avalanche")[];
7104
+ }, {
7105
+ type: "evmNetwork";
7106
+ operator: "in" | "not in";
7107
+ networks: ("base-sepolia" | "base" | "arbitrum" | "optimism" | "polygon" | "ethereum" | "ethereum-sepolia" | "avalanche")[];
7108
+ }>, z.ZodObject<{
7109
+ /** The type of criterion, must be "evmData" for EVM transaction rules. */
7110
+ type: z.ZodLiteral<"evmData">;
7111
+ /**
7112
+ * The ABI of the smart contract being called. This can be a partial structure with only specific functions.
7113
+ */
7114
+ abi: z.ZodUnion<[z.ZodEnum<["erc20", "erc721", "erc1155"]>, z.ZodReadonly<z.ZodArray<z.ZodUnion<[z.ZodObject<{
7115
+ type: z.ZodLiteral<"error">;
7116
+ inputs: z.ZodReadonly<z.ZodArray<z.ZodType<import("abitype").AbiParameter, z.ZodTypeDef, import("abitype").AbiParameter>, "many">>;
7117
+ name: z.ZodString;
7118
+ }, "strip", z.ZodTypeAny, {
7119
+ inputs: readonly import("abitype").AbiParameter[];
7120
+ type: "error";
7121
+ name: string;
7122
+ }, {
7123
+ inputs: readonly import("abitype").AbiParameter[];
7124
+ type: "error";
7125
+ name: string;
7126
+ }>, z.ZodObject<{
7127
+ type: z.ZodLiteral<"event">;
7128
+ anonymous: z.ZodOptional<z.ZodBoolean>;
7129
+ inputs: z.ZodReadonly<z.ZodArray<z.ZodType<import("abitype").AbiEventParameter, z.ZodTypeDef, import("abitype").AbiEventParameter>, "many">>;
7130
+ name: z.ZodString;
7131
+ }, "strip", z.ZodTypeAny, {
7132
+ inputs: readonly import("abitype").AbiEventParameter[];
7133
+ type: "event";
7134
+ name: string;
7135
+ anonymous?: boolean | undefined;
7136
+ }, {
7137
+ inputs: readonly import("abitype").AbiEventParameter[];
7138
+ type: "event";
7139
+ name: string;
7140
+ anonymous?: boolean | undefined;
7141
+ }>, z.ZodEffects<z.ZodIntersection<z.ZodObject<{
7142
+ constant: z.ZodOptional<z.ZodBoolean>;
7143
+ gas: z.ZodOptional<z.ZodNumber>;
7144
+ payable: z.ZodOptional<z.ZodBoolean>;
7145
+ }, "strip", z.ZodTypeAny, {
7146
+ payable?: boolean | undefined;
7147
+ constant?: boolean | undefined;
7148
+ gas?: number | undefined;
7149
+ }, {
7150
+ payable?: boolean | undefined;
7151
+ constant?: boolean | undefined;
7152
+ gas?: number | undefined;
7153
+ }>, z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
7154
+ type: z.ZodLiteral<"function">;
7155
+ inputs: z.ZodReadonly<z.ZodArray<z.ZodType<import("abitype").AbiParameter, z.ZodTypeDef, import("abitype").AbiParameter>, "many">>;
7156
+ name: z.ZodString;
7157
+ outputs: z.ZodReadonly<z.ZodArray<z.ZodType<import("abitype").AbiParameter, z.ZodTypeDef, import("abitype").AbiParameter>, "many">>;
7158
+ stateMutability: z.ZodUnion<[z.ZodLiteral<"pure">, z.ZodLiteral<"view">, z.ZodLiteral<"nonpayable">, z.ZodLiteral<"payable">]>;
7159
+ }, "strip", z.ZodTypeAny, {
7160
+ inputs: readonly import("abitype").AbiParameter[];
7161
+ outputs: readonly import("abitype").AbiParameter[];
7162
+ type: "function";
7163
+ name: string;
7164
+ stateMutability: "pure" | "view" | "nonpayable" | "payable";
7165
+ }, {
7166
+ inputs: readonly import("abitype").AbiParameter[];
7167
+ outputs: readonly import("abitype").AbiParameter[];
7168
+ type: "function";
7169
+ name: string;
7170
+ stateMutability: "pure" | "view" | "nonpayable" | "payable";
7171
+ }>, z.ZodObject<{
7172
+ type: z.ZodLiteral<"constructor">;
7173
+ inputs: z.ZodReadonly<z.ZodArray<z.ZodType<import("abitype").AbiParameter, z.ZodTypeDef, import("abitype").AbiParameter>, "many">>;
7174
+ stateMutability: z.ZodUnion<[z.ZodLiteral<"payable">, z.ZodLiteral<"nonpayable">]>;
7175
+ }, "strip", z.ZodTypeAny, {
7176
+ inputs: readonly import("abitype").AbiParameter[];
7177
+ type: "constructor";
7178
+ stateMutability: "nonpayable" | "payable";
7179
+ }, {
7180
+ inputs: readonly import("abitype").AbiParameter[];
7181
+ type: "constructor";
7182
+ stateMutability: "nonpayable" | "payable";
7183
+ }>, z.ZodObject<{
7184
+ type: z.ZodLiteral<"fallback">;
7185
+ inputs: z.ZodOptional<z.ZodTuple<[], null>>;
7186
+ stateMutability: z.ZodUnion<[z.ZodLiteral<"payable">, z.ZodLiteral<"nonpayable">]>;
7187
+ }, "strip", z.ZodTypeAny, {
7188
+ type: "fallback";
7189
+ stateMutability: "nonpayable" | "payable";
7190
+ inputs?: [] | undefined;
7191
+ }, {
7192
+ type: "fallback";
7193
+ stateMutability: "nonpayable" | "payable";
7194
+ inputs?: [] | undefined;
7195
+ }>, z.ZodObject<{
7196
+ type: z.ZodLiteral<"receive">;
7197
+ stateMutability: z.ZodLiteral<"payable">;
7198
+ }, "strip", z.ZodTypeAny, {
7199
+ type: "receive";
7200
+ stateMutability: "payable";
7201
+ }, {
7202
+ type: "receive";
7203
+ stateMutability: "payable";
7204
+ }>]>>, {
7205
+ payable?: boolean | undefined;
7206
+ constant?: boolean | undefined;
7207
+ gas?: number | undefined;
7208
+ } & ({
7209
+ inputs: readonly import("abitype").AbiParameter[];
7210
+ outputs: readonly import("abitype").AbiParameter[];
7211
+ type: "function";
7212
+ name: string;
7213
+ stateMutability: "pure" | "view" | "nonpayable" | "payable";
7214
+ } | {
7215
+ inputs: readonly import("abitype").AbiParameter[];
7216
+ type: "constructor";
7217
+ stateMutability: "nonpayable" | "payable";
7218
+ } | {
7219
+ type: "fallback";
7220
+ stateMutability: "nonpayable" | "payable";
7221
+ inputs?: [] | undefined;
7222
+ } | {
7223
+ type: "receive";
7224
+ stateMutability: "payable";
7225
+ }), unknown>]>, "many">>]>;
7226
+ /**
7227
+ * A list of conditions to apply against the function and encoded arguments in the transaction's `data` field.
7228
+ * Each condition must be met in order for this policy to be accepted or rejected.
7229
+ */
7230
+ conditions: z.ZodArray<z.ZodObject<{
7231
+ /**
7232
+ * The name of a smart contract function being called.
7233
+ */
7234
+ function: z.ZodString;
7235
+ /**
7236
+ * An optional list of parameter conditions to apply against encoded arguments in the transaction's `data` field.
7237
+ */
7238
+ params: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodObject<{
7239
+ /**
7240
+ * The name of the parameter to check against a transaction's calldata.
7241
+ * If name is unknown, or is not named, you may supply an array index, e.g., `0` for first parameter.
7242
+ */
7243
+ name: z.ZodUnion<[z.ZodString, z.ZodString]>;
7244
+ /**
7245
+ * The operator to use for the comparison. The value resolved at the `name` will be on the
7246
+ * left-hand side of the operator, and the `value` field will be on the right-hand side.
7247
+ */
7248
+ operator: z.ZodEnum<[">", ">=", "<", "<=", "=="]>;
7249
+ /**
7250
+ * A single value to compare the value resolved at `name` to.
7251
+ * All values are encoded as strings. Refer to the table in the documentation for how values
7252
+ * should be encoded, and which operators are supported for each type.
7253
+ */
7254
+ value: z.ZodString;
7255
+ }, "strip", z.ZodTypeAny, {
7256
+ value: string;
7257
+ name: string;
7258
+ operator: ">" | ">=" | "<" | "<=" | "==";
7259
+ }, {
7260
+ value: string;
7261
+ name: string;
7262
+ operator: ">" | ">=" | "<" | "<=" | "==";
7263
+ }>, z.ZodObject<{
7264
+ /**
7265
+ * The name of the parameter to check against a transaction's calldata.
7266
+ * If name is unknown, or is not named, you may supply an array index, e.g., `0` for first parameter.
7267
+ */
7268
+ name: z.ZodUnion<[z.ZodString, z.ZodString]>;
7269
+ /**
7270
+ * The operator to use for the comparison. The value resolved at the `name` will be on the
7271
+ * left-hand side of the operator, and the `values` field will be on the right-hand side.
7272
+ */
7273
+ operator: z.ZodEnum<["in", "not in"]>;
7274
+ /**
7275
+ * Values to compare against the resolved `name` value.
7276
+ * All values are encoded as strings. Refer to the table in the documentation for how values
7277
+ * should be encoded, and which operators are supported for each type.
7278
+ */
7279
+ values: z.ZodArray<z.ZodString, "many">;
7280
+ }, "strip", z.ZodTypeAny, {
7281
+ values: string[];
7282
+ name: string;
7283
+ operator: "in" | "not in";
7284
+ }, {
7285
+ values: string[];
7286
+ name: string;
7287
+ operator: "in" | "not in";
7288
+ }>]>, "many">>;
7289
+ }, "strip", z.ZodTypeAny, {
7290
+ function: string;
7291
+ params?: ({
7292
+ values: string[];
7293
+ name: string;
7294
+ operator: "in" | "not in";
7295
+ } | {
7296
+ value: string;
7297
+ name: string;
7298
+ operator: ">" | ">=" | "<" | "<=" | "==";
7299
+ })[] | undefined;
7300
+ }, {
7301
+ function: string;
7302
+ params?: ({
7303
+ values: string[];
7304
+ name: string;
7305
+ operator: "in" | "not in";
7306
+ } | {
7307
+ value: string;
7308
+ name: string;
7309
+ operator: ">" | ">=" | "<" | "<=" | "==";
7310
+ })[] | undefined;
7311
+ }>, "many">;
7312
+ }, "strip", z.ZodTypeAny, {
7313
+ type: "evmData";
7314
+ abi: "erc20" | "erc721" | "erc1155" | readonly ({
7315
+ inputs: readonly import("abitype").AbiParameter[];
7316
+ type: "error";
7317
+ name: string;
7318
+ } | {
7319
+ inputs: readonly import("abitype").AbiEventParameter[];
7320
+ type: "event";
7321
+ name: string;
7322
+ anonymous?: boolean | undefined;
7323
+ } | ({
7324
+ payable?: boolean | undefined;
7325
+ constant?: boolean | undefined;
7326
+ gas?: number | undefined;
7327
+ } & ({
7328
+ inputs: readonly import("abitype").AbiParameter[];
7329
+ outputs: readonly import("abitype").AbiParameter[];
7330
+ type: "function";
7331
+ name: string;
7332
+ stateMutability: "pure" | "view" | "nonpayable" | "payable";
7333
+ } | {
7334
+ inputs: readonly import("abitype").AbiParameter[];
7335
+ type: "constructor";
7336
+ stateMutability: "nonpayable" | "payable";
7337
+ } | {
7338
+ type: "fallback";
7339
+ stateMutability: "nonpayable" | "payable";
7340
+ inputs?: [] | undefined;
7341
+ } | {
7342
+ type: "receive";
7343
+ stateMutability: "payable";
7344
+ })))[];
7345
+ conditions: {
7346
+ function: string;
7347
+ params?: ({
7348
+ values: string[];
7349
+ name: string;
7350
+ operator: "in" | "not in";
7351
+ } | {
7352
+ value: string;
7353
+ name: string;
7354
+ operator: ">" | ">=" | "<" | "<=" | "==";
7355
+ })[] | undefined;
7356
+ }[];
7357
+ }, {
7358
+ type: "evmData";
7359
+ abi: "erc20" | "erc721" | "erc1155" | readonly unknown[];
7360
+ conditions: {
7361
+ function: string;
7362
+ params?: ({
7363
+ values: string[];
7364
+ name: string;
7365
+ operator: "in" | "not in";
7366
+ } | {
7367
+ value: string;
7368
+ name: string;
7369
+ operator: ">" | ">=" | "<" | "<=" | "==";
7370
+ })[] | undefined;
7371
+ }[];
7372
+ }>, z.ZodObject<{
7373
+ /** The type of criterion, must be "netUSDChange" for USD denominated asset transfer rules. */
7374
+ type: z.ZodLiteral<"netUSDChange">;
7375
+ /**
7376
+ * The amount of USD, in cents, that the total USD value of a transaction's asset transfer and exposure should be compared to.
7377
+ */
7378
+ changeCents: z.ZodNumber;
7379
+ /**
7380
+ * The operator to use for the comparison. The total value of a transaction's asset transfer and exposure in USD will be on the left-hand side of the operator, and the `changeCents` field will be on the right-hand side.
7381
+ */
7382
+ operator: z.ZodEnum<[">", ">=", "<", "<=", "=="]>;
7383
+ }, "strip", z.ZodTypeAny, {
7384
+ type: "netUSDChange";
7385
+ operator: ">" | ">=" | "<" | "<=" | "==";
7386
+ changeCents: number;
7387
+ }, {
7388
+ type: "netUSDChange";
7389
+ operator: ">" | ">=" | "<" | "<=" | "==";
7390
+ changeCents: number;
7391
+ }>]>, "many">;
7392
+ }, "strip", z.ZodTypeAny, {
7393
+ action: "reject" | "accept";
7394
+ operation: "sendEndUserEvmAsset";
7395
+ criteria: ({
7396
+ type: "evmNetwork";
7397
+ operator: "in" | "not in";
7398
+ networks: ("base-sepolia" | "base" | "arbitrum" | "optimism" | "polygon" | "ethereum" | "ethereum-sepolia" | "avalanche")[];
7399
+ } | {
7400
+ type: "netUSDChange";
7401
+ operator: ">" | ">=" | "<" | "<=" | "==";
7402
+ changeCents: number;
7403
+ } | {
7404
+ type: "evmData";
7405
+ abi: "erc20" | "erc721" | "erc1155" | readonly ({
7406
+ inputs: readonly import("abitype").AbiParameter[];
7407
+ type: "error";
7408
+ name: string;
7409
+ } | {
7410
+ inputs: readonly import("abitype").AbiEventParameter[];
7411
+ type: "event";
7412
+ name: string;
7413
+ anonymous?: boolean | undefined;
7414
+ } | ({
7415
+ payable?: boolean | undefined;
7416
+ constant?: boolean | undefined;
7417
+ gas?: number | undefined;
7418
+ } & ({
7419
+ inputs: readonly import("abitype").AbiParameter[];
7420
+ outputs: readonly import("abitype").AbiParameter[];
7421
+ type: "function";
7422
+ name: string;
7423
+ stateMutability: "pure" | "view" | "nonpayable" | "payable";
7424
+ } | {
7425
+ inputs: readonly import("abitype").AbiParameter[];
7426
+ type: "constructor";
7427
+ stateMutability: "nonpayable" | "payable";
7428
+ } | {
7429
+ type: "fallback";
7430
+ stateMutability: "nonpayable" | "payable";
7431
+ inputs?: [] | undefined;
7432
+ } | {
7433
+ type: "receive";
7434
+ stateMutability: "payable";
7435
+ })))[];
7436
+ conditions: {
7437
+ function: string;
7438
+ params?: ({
7439
+ values: string[];
7440
+ name: string;
7441
+ operator: "in" | "not in";
7442
+ } | {
7443
+ value: string;
7444
+ name: string;
7445
+ operator: ">" | ">=" | "<" | "<=" | "==";
7446
+ })[] | undefined;
7447
+ }[];
7448
+ })[];
7449
+ }, {
7450
+ action: "reject" | "accept";
7451
+ operation: "sendEndUserEvmAsset";
7452
+ criteria: ({
7453
+ type: "evmNetwork";
7454
+ operator: "in" | "not in";
7455
+ networks: ("base-sepolia" | "base" | "arbitrum" | "optimism" | "polygon" | "ethereum" | "ethereum-sepolia" | "avalanche")[];
7456
+ } | {
7457
+ type: "netUSDChange";
7458
+ operator: ">" | ">=" | "<" | "<=" | "==";
7459
+ changeCents: number;
7460
+ } | {
7461
+ type: "evmData";
7462
+ abi: "erc20" | "erc721" | "erc1155" | readonly unknown[];
7463
+ conditions: {
7464
+ function: string;
7465
+ params?: ({
7466
+ values: string[];
7467
+ name: string;
7468
+ operator: "in" | "not in";
7469
+ } | {
7470
+ value: string;
7471
+ name: string;
7472
+ operator: ">" | ">=" | "<" | "<=" | "==";
7473
+ })[] | undefined;
7474
+ }[];
7475
+ })[];
7476
+ }>;
7477
+ export type SendEndUserEvmAssetRule = z.infer<typeof SendEndUserEvmAssetRuleSchema>;
7478
+ /**
7479
+ * Schema for criteria used in CreateEndUserEvmSwap operations
7480
+ */
7481
+ export declare const CreateEndUserEvmSwapCriteriaSchema: z.ZodArray<z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
7482
+ /** The type of criterion, must be "evmAddress" for EVM address-based rules. */
7483
+ type: z.ZodLiteral<"evmNetwork">;
7484
+ /**
7485
+ * Array of EVM network identifiers to compare against.
7486
+ * Either "base", "base-sepolia", "ethereum", "ethereum-sepolia", "avalanche", "polygon", "optimism", "arbitrum"
7487
+ */
7488
+ networks: z.ZodArray<z.ZodEnum<["base", "base-sepolia", "ethereum", "ethereum-sepolia", "avalanche", "polygon", "optimism", "arbitrum"]>, "many">;
7489
+ /**
7490
+ * The operator to use for evaluating transaction network.
7491
+ * "in" checks if a network is in the provided list.
7492
+ * "not in" checks if a network is not in the provided list.
7493
+ */
7494
+ operator: z.ZodEnum<["in", "not in"]>;
7495
+ }, "strip", z.ZodTypeAny, {
7496
+ type: "evmNetwork";
7497
+ operator: "in" | "not in";
7498
+ networks: ("base-sepolia" | "base" | "arbitrum" | "optimism" | "polygon" | "ethereum" | "ethereum-sepolia" | "avalanche")[];
7499
+ }, {
7500
+ type: "evmNetwork";
7501
+ operator: "in" | "not in";
7502
+ networks: ("base-sepolia" | "base" | "arbitrum" | "optimism" | "polygon" | "ethereum" | "ethereum-sepolia" | "avalanche")[];
7503
+ }>, z.ZodObject<{
7504
+ /** The type of criterion, must be "evmData" for EVM transaction rules. */
7505
+ type: z.ZodLiteral<"evmData">;
7506
+ /**
7507
+ * The ABI of the smart contract being called. This can be a partial structure with only specific functions.
7508
+ */
7509
+ abi: z.ZodUnion<[z.ZodEnum<["erc20", "erc721", "erc1155"]>, z.ZodReadonly<z.ZodArray<z.ZodUnion<[z.ZodObject<{
7510
+ type: z.ZodLiteral<"error">;
7511
+ inputs: z.ZodReadonly<z.ZodArray<z.ZodType<import("abitype").AbiParameter, z.ZodTypeDef, import("abitype").AbiParameter>, "many">>;
7512
+ name: z.ZodString;
7513
+ }, "strip", z.ZodTypeAny, {
7514
+ inputs: readonly import("abitype").AbiParameter[];
7515
+ type: "error";
7516
+ name: string;
7517
+ }, {
7518
+ inputs: readonly import("abitype").AbiParameter[];
7519
+ type: "error";
7520
+ name: string;
7521
+ }>, z.ZodObject<{
7522
+ type: z.ZodLiteral<"event">;
7523
+ anonymous: z.ZodOptional<z.ZodBoolean>;
7524
+ inputs: z.ZodReadonly<z.ZodArray<z.ZodType<import("abitype").AbiEventParameter, z.ZodTypeDef, import("abitype").AbiEventParameter>, "many">>;
7525
+ name: z.ZodString;
7526
+ }, "strip", z.ZodTypeAny, {
7527
+ inputs: readonly import("abitype").AbiEventParameter[];
7528
+ type: "event";
7529
+ name: string;
7530
+ anonymous?: boolean | undefined;
7531
+ }, {
7532
+ inputs: readonly import("abitype").AbiEventParameter[];
7533
+ type: "event";
7534
+ name: string;
7535
+ anonymous?: boolean | undefined;
7536
+ }>, z.ZodEffects<z.ZodIntersection<z.ZodObject<{
7537
+ constant: z.ZodOptional<z.ZodBoolean>;
7538
+ gas: z.ZodOptional<z.ZodNumber>;
7539
+ payable: z.ZodOptional<z.ZodBoolean>;
7540
+ }, "strip", z.ZodTypeAny, {
7541
+ payable?: boolean | undefined;
7542
+ constant?: boolean | undefined;
7543
+ gas?: number | undefined;
7544
+ }, {
7545
+ payable?: boolean | undefined;
7546
+ constant?: boolean | undefined;
7547
+ gas?: number | undefined;
7548
+ }>, z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
7549
+ type: z.ZodLiteral<"function">;
7550
+ inputs: z.ZodReadonly<z.ZodArray<z.ZodType<import("abitype").AbiParameter, z.ZodTypeDef, import("abitype").AbiParameter>, "many">>;
7551
+ name: z.ZodString;
7552
+ outputs: z.ZodReadonly<z.ZodArray<z.ZodType<import("abitype").AbiParameter, z.ZodTypeDef, import("abitype").AbiParameter>, "many">>;
7553
+ stateMutability: z.ZodUnion<[z.ZodLiteral<"pure">, z.ZodLiteral<"view">, z.ZodLiteral<"nonpayable">, z.ZodLiteral<"payable">]>;
7554
+ }, "strip", z.ZodTypeAny, {
7555
+ inputs: readonly import("abitype").AbiParameter[];
7556
+ outputs: readonly import("abitype").AbiParameter[];
7557
+ type: "function";
7558
+ name: string;
7559
+ stateMutability: "pure" | "view" | "nonpayable" | "payable";
7560
+ }, {
7561
+ inputs: readonly import("abitype").AbiParameter[];
7562
+ outputs: readonly import("abitype").AbiParameter[];
7563
+ type: "function";
7564
+ name: string;
7565
+ stateMutability: "pure" | "view" | "nonpayable" | "payable";
7566
+ }>, z.ZodObject<{
7567
+ type: z.ZodLiteral<"constructor">;
7568
+ inputs: z.ZodReadonly<z.ZodArray<z.ZodType<import("abitype").AbiParameter, z.ZodTypeDef, import("abitype").AbiParameter>, "many">>;
7569
+ stateMutability: z.ZodUnion<[z.ZodLiteral<"payable">, z.ZodLiteral<"nonpayable">]>;
7570
+ }, "strip", z.ZodTypeAny, {
7571
+ inputs: readonly import("abitype").AbiParameter[];
7572
+ type: "constructor";
7573
+ stateMutability: "nonpayable" | "payable";
7574
+ }, {
7575
+ inputs: readonly import("abitype").AbiParameter[];
7576
+ type: "constructor";
7577
+ stateMutability: "nonpayable" | "payable";
7578
+ }>, z.ZodObject<{
7579
+ type: z.ZodLiteral<"fallback">;
7580
+ inputs: z.ZodOptional<z.ZodTuple<[], null>>;
7581
+ stateMutability: z.ZodUnion<[z.ZodLiteral<"payable">, z.ZodLiteral<"nonpayable">]>;
7582
+ }, "strip", z.ZodTypeAny, {
7583
+ type: "fallback";
7584
+ stateMutability: "nonpayable" | "payable";
7585
+ inputs?: [] | undefined;
7586
+ }, {
7587
+ type: "fallback";
7588
+ stateMutability: "nonpayable" | "payable";
7589
+ inputs?: [] | undefined;
7590
+ }>, z.ZodObject<{
7591
+ type: z.ZodLiteral<"receive">;
7592
+ stateMutability: z.ZodLiteral<"payable">;
7593
+ }, "strip", z.ZodTypeAny, {
7594
+ type: "receive";
7595
+ stateMutability: "payable";
7596
+ }, {
7597
+ type: "receive";
7598
+ stateMutability: "payable";
7599
+ }>]>>, {
7600
+ payable?: boolean | undefined;
7601
+ constant?: boolean | undefined;
7602
+ gas?: number | undefined;
7603
+ } & ({
7604
+ inputs: readonly import("abitype").AbiParameter[];
7605
+ outputs: readonly import("abitype").AbiParameter[];
7606
+ type: "function";
7607
+ name: string;
7608
+ stateMutability: "pure" | "view" | "nonpayable" | "payable";
7609
+ } | {
7610
+ inputs: readonly import("abitype").AbiParameter[];
7611
+ type: "constructor";
7612
+ stateMutability: "nonpayable" | "payable";
7613
+ } | {
7614
+ type: "fallback";
7615
+ stateMutability: "nonpayable" | "payable";
7616
+ inputs?: [] | undefined;
7617
+ } | {
7618
+ type: "receive";
7619
+ stateMutability: "payable";
7620
+ }), unknown>]>, "many">>]>;
7621
+ /**
7622
+ * A list of conditions to apply against the function and encoded arguments in the transaction's `data` field.
7623
+ * Each condition must be met in order for this policy to be accepted or rejected.
7624
+ */
7625
+ conditions: z.ZodArray<z.ZodObject<{
7626
+ /**
7627
+ * The name of a smart contract function being called.
7628
+ */
7629
+ function: z.ZodString;
7630
+ /**
7631
+ * An optional list of parameter conditions to apply against encoded arguments in the transaction's `data` field.
7632
+ */
7633
+ params: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodObject<{
7634
+ /**
7635
+ * The name of the parameter to check against a transaction's calldata.
7636
+ * If name is unknown, or is not named, you may supply an array index, e.g., `0` for first parameter.
7637
+ */
7638
+ name: z.ZodUnion<[z.ZodString, z.ZodString]>;
7639
+ /**
7640
+ * The operator to use for the comparison. The value resolved at the `name` will be on the
7641
+ * left-hand side of the operator, and the `value` field will be on the right-hand side.
7642
+ */
7643
+ operator: z.ZodEnum<[">", ">=", "<", "<=", "=="]>;
7644
+ /**
7645
+ * A single value to compare the value resolved at `name` to.
7646
+ * All values are encoded as strings. Refer to the table in the documentation for how values
7647
+ * should be encoded, and which operators are supported for each type.
7648
+ */
7649
+ value: z.ZodString;
7650
+ }, "strip", z.ZodTypeAny, {
7651
+ value: string;
7652
+ name: string;
7653
+ operator: ">" | ">=" | "<" | "<=" | "==";
7654
+ }, {
7655
+ value: string;
7656
+ name: string;
7657
+ operator: ">" | ">=" | "<" | "<=" | "==";
7658
+ }>, z.ZodObject<{
7659
+ /**
7660
+ * The name of the parameter to check against a transaction's calldata.
7661
+ * If name is unknown, or is not named, you may supply an array index, e.g., `0` for first parameter.
7662
+ */
7663
+ name: z.ZodUnion<[z.ZodString, z.ZodString]>;
7664
+ /**
7665
+ * The operator to use for the comparison. The value resolved at the `name` will be on the
7666
+ * left-hand side of the operator, and the `values` field will be on the right-hand side.
7667
+ */
7668
+ operator: z.ZodEnum<["in", "not in"]>;
7669
+ /**
7670
+ * Values to compare against the resolved `name` value.
7671
+ * All values are encoded as strings. Refer to the table in the documentation for how values
7672
+ * should be encoded, and which operators are supported for each type.
7673
+ */
7674
+ values: z.ZodArray<z.ZodString, "many">;
7675
+ }, "strip", z.ZodTypeAny, {
7676
+ values: string[];
7677
+ name: string;
7678
+ operator: "in" | "not in";
7679
+ }, {
7680
+ values: string[];
7681
+ name: string;
7682
+ operator: "in" | "not in";
7683
+ }>]>, "many">>;
7684
+ }, "strip", z.ZodTypeAny, {
7685
+ function: string;
7686
+ params?: ({
7687
+ values: string[];
7688
+ name: string;
7689
+ operator: "in" | "not in";
7690
+ } | {
7691
+ value: string;
7692
+ name: string;
7693
+ operator: ">" | ">=" | "<" | "<=" | "==";
7694
+ })[] | undefined;
7695
+ }, {
7696
+ function: string;
7697
+ params?: ({
7698
+ values: string[];
7699
+ name: string;
7700
+ operator: "in" | "not in";
7701
+ } | {
7702
+ value: string;
7703
+ name: string;
7704
+ operator: ">" | ">=" | "<" | "<=" | "==";
7705
+ })[] | undefined;
7706
+ }>, "many">;
7707
+ }, "strip", z.ZodTypeAny, {
7708
+ type: "evmData";
7709
+ abi: "erc20" | "erc721" | "erc1155" | readonly ({
7710
+ inputs: readonly import("abitype").AbiParameter[];
7711
+ type: "error";
7712
+ name: string;
7713
+ } | {
7714
+ inputs: readonly import("abitype").AbiEventParameter[];
7715
+ type: "event";
7716
+ name: string;
7717
+ anonymous?: boolean | undefined;
7718
+ } | ({
7719
+ payable?: boolean | undefined;
7720
+ constant?: boolean | undefined;
7721
+ gas?: number | undefined;
7722
+ } & ({
7723
+ inputs: readonly import("abitype").AbiParameter[];
7724
+ outputs: readonly import("abitype").AbiParameter[];
7725
+ type: "function";
7726
+ name: string;
7727
+ stateMutability: "pure" | "view" | "nonpayable" | "payable";
7728
+ } | {
7729
+ inputs: readonly import("abitype").AbiParameter[];
7730
+ type: "constructor";
7731
+ stateMutability: "nonpayable" | "payable";
7732
+ } | {
7733
+ type: "fallback";
7734
+ stateMutability: "nonpayable" | "payable";
7735
+ inputs?: [] | undefined;
7736
+ } | {
7737
+ type: "receive";
7738
+ stateMutability: "payable";
7739
+ })))[];
7740
+ conditions: {
7741
+ function: string;
7742
+ params?: ({
7743
+ values: string[];
7744
+ name: string;
7745
+ operator: "in" | "not in";
7746
+ } | {
7747
+ value: string;
7748
+ name: string;
7749
+ operator: ">" | ">=" | "<" | "<=" | "==";
7750
+ })[] | undefined;
7751
+ }[];
7752
+ }, {
7753
+ type: "evmData";
7754
+ abi: "erc20" | "erc721" | "erc1155" | readonly unknown[];
7755
+ conditions: {
7756
+ function: string;
7757
+ params?: ({
7758
+ values: string[];
7759
+ name: string;
7760
+ operator: "in" | "not in";
7761
+ } | {
7762
+ value: string;
7763
+ name: string;
7764
+ operator: ">" | ">=" | "<" | "<=" | "==";
7765
+ })[] | undefined;
7766
+ }[];
7767
+ }>, z.ZodObject<{
7768
+ /** The type of criterion, must be "netUSDChange" for USD denominated asset transfer rules. */
7769
+ type: z.ZodLiteral<"netUSDChange">;
7770
+ /**
7771
+ * The amount of USD, in cents, that the total USD value of a transaction's asset transfer and exposure should be compared to.
7772
+ */
7773
+ changeCents: z.ZodNumber;
7774
+ /**
7775
+ * The operator to use for the comparison. The total value of a transaction's asset transfer and exposure in USD will be on the left-hand side of the operator, and the `changeCents` field will be on the right-hand side.
7776
+ */
7777
+ operator: z.ZodEnum<[">", ">=", "<", "<=", "=="]>;
7778
+ }, "strip", z.ZodTypeAny, {
7779
+ type: "netUSDChange";
7780
+ operator: ">" | ">=" | "<" | "<=" | "==";
7781
+ changeCents: number;
7782
+ }, {
7783
+ type: "netUSDChange";
7784
+ operator: ">" | ">=" | "<" | "<=" | "==";
7785
+ changeCents: number;
7786
+ }>]>, "many">;
7787
+ /**
7788
+ * Type representing a set of criteria for the createEndUserEvmSwap operation.
7789
+ */
7790
+ export type CreateEndUserEvmSwapCriteria = z.infer<typeof CreateEndUserEvmSwapCriteriaSchema>;
7791
+ /**
7792
+ * Type representing a 'createEndUserEvmSwap' policy rule that can accept or reject specific operations
7793
+ * based on a set of criteria.
7794
+ */
7795
+ export declare const CreateEndUserEvmSwapRuleSchema: z.ZodObject<{
7796
+ /**
7797
+ * Determines whether matching the rule will cause a request to be rejected or accepted.
7798
+ * "accept" will allow the operation, "reject" will block it.
7799
+ */
7800
+ action: z.ZodEnum<["reject", "accept"]>;
7801
+ /**
7802
+ * The operation to which this rule applies.
7803
+ * Must be "createEndUserEvmSwap".
7804
+ */
7805
+ operation: z.ZodLiteral<"createEndUserEvmSwap">;
7806
+ /**
7807
+ * The set of criteria that must be matched for this rule to apply.
7808
+ * Must be compatible with the specified operation type.
7809
+ */
7810
+ criteria: z.ZodArray<z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
7811
+ /** The type of criterion, must be "evmAddress" for EVM address-based rules. */
7812
+ type: z.ZodLiteral<"evmNetwork">;
7813
+ /**
7814
+ * Array of EVM network identifiers to compare against.
7815
+ * Either "base", "base-sepolia", "ethereum", "ethereum-sepolia", "avalanche", "polygon", "optimism", "arbitrum"
7816
+ */
7817
+ networks: z.ZodArray<z.ZodEnum<["base", "base-sepolia", "ethereum", "ethereum-sepolia", "avalanche", "polygon", "optimism", "arbitrum"]>, "many">;
7818
+ /**
7819
+ * The operator to use for evaluating transaction network.
7820
+ * "in" checks if a network is in the provided list.
7821
+ * "not in" checks if a network is not in the provided list.
7822
+ */
7823
+ operator: z.ZodEnum<["in", "not in"]>;
7824
+ }, "strip", z.ZodTypeAny, {
7825
+ type: "evmNetwork";
7826
+ operator: "in" | "not in";
7827
+ networks: ("base-sepolia" | "base" | "arbitrum" | "optimism" | "polygon" | "ethereum" | "ethereum-sepolia" | "avalanche")[];
7828
+ }, {
7829
+ type: "evmNetwork";
7830
+ operator: "in" | "not in";
7831
+ networks: ("base-sepolia" | "base" | "arbitrum" | "optimism" | "polygon" | "ethereum" | "ethereum-sepolia" | "avalanche")[];
7832
+ }>, z.ZodObject<{
7833
+ /** The type of criterion, must be "evmData" for EVM transaction rules. */
7834
+ type: z.ZodLiteral<"evmData">;
7835
+ /**
7836
+ * The ABI of the smart contract being called. This can be a partial structure with only specific functions.
7837
+ */
7838
+ abi: z.ZodUnion<[z.ZodEnum<["erc20", "erc721", "erc1155"]>, z.ZodReadonly<z.ZodArray<z.ZodUnion<[z.ZodObject<{
7839
+ type: z.ZodLiteral<"error">;
7840
+ inputs: z.ZodReadonly<z.ZodArray<z.ZodType<import("abitype").AbiParameter, z.ZodTypeDef, import("abitype").AbiParameter>, "many">>;
7841
+ name: z.ZodString;
7842
+ }, "strip", z.ZodTypeAny, {
7843
+ inputs: readonly import("abitype").AbiParameter[];
7844
+ type: "error";
7845
+ name: string;
7846
+ }, {
7847
+ inputs: readonly import("abitype").AbiParameter[];
7848
+ type: "error";
7849
+ name: string;
7850
+ }>, z.ZodObject<{
7851
+ type: z.ZodLiteral<"event">;
7852
+ anonymous: z.ZodOptional<z.ZodBoolean>;
7853
+ inputs: z.ZodReadonly<z.ZodArray<z.ZodType<import("abitype").AbiEventParameter, z.ZodTypeDef, import("abitype").AbiEventParameter>, "many">>;
7854
+ name: z.ZodString;
7855
+ }, "strip", z.ZodTypeAny, {
7856
+ inputs: readonly import("abitype").AbiEventParameter[];
7857
+ type: "event";
7858
+ name: string;
7859
+ anonymous?: boolean | undefined;
7860
+ }, {
7861
+ inputs: readonly import("abitype").AbiEventParameter[];
7862
+ type: "event";
7863
+ name: string;
7864
+ anonymous?: boolean | undefined;
7865
+ }>, z.ZodEffects<z.ZodIntersection<z.ZodObject<{
7866
+ constant: z.ZodOptional<z.ZodBoolean>;
7867
+ gas: z.ZodOptional<z.ZodNumber>;
7868
+ payable: z.ZodOptional<z.ZodBoolean>;
7869
+ }, "strip", z.ZodTypeAny, {
7870
+ payable?: boolean | undefined;
7871
+ constant?: boolean | undefined;
7872
+ gas?: number | undefined;
7873
+ }, {
7874
+ payable?: boolean | undefined;
7875
+ constant?: boolean | undefined;
7876
+ gas?: number | undefined;
7877
+ }>, z.ZodDiscriminatedUnion<"type", [z.ZodObject<{
7878
+ type: z.ZodLiteral<"function">;
7879
+ inputs: z.ZodReadonly<z.ZodArray<z.ZodType<import("abitype").AbiParameter, z.ZodTypeDef, import("abitype").AbiParameter>, "many">>;
7880
+ name: z.ZodString;
7881
+ outputs: z.ZodReadonly<z.ZodArray<z.ZodType<import("abitype").AbiParameter, z.ZodTypeDef, import("abitype").AbiParameter>, "many">>;
7882
+ stateMutability: z.ZodUnion<[z.ZodLiteral<"pure">, z.ZodLiteral<"view">, z.ZodLiteral<"nonpayable">, z.ZodLiteral<"payable">]>;
7883
+ }, "strip", z.ZodTypeAny, {
7884
+ inputs: readonly import("abitype").AbiParameter[];
7885
+ outputs: readonly import("abitype").AbiParameter[];
7886
+ type: "function";
7887
+ name: string;
7888
+ stateMutability: "pure" | "view" | "nonpayable" | "payable";
7889
+ }, {
7890
+ inputs: readonly import("abitype").AbiParameter[];
7891
+ outputs: readonly import("abitype").AbiParameter[];
7892
+ type: "function";
7893
+ name: string;
7894
+ stateMutability: "pure" | "view" | "nonpayable" | "payable";
7895
+ }>, z.ZodObject<{
7896
+ type: z.ZodLiteral<"constructor">;
7897
+ inputs: z.ZodReadonly<z.ZodArray<z.ZodType<import("abitype").AbiParameter, z.ZodTypeDef, import("abitype").AbiParameter>, "many">>;
7898
+ stateMutability: z.ZodUnion<[z.ZodLiteral<"payable">, z.ZodLiteral<"nonpayable">]>;
7899
+ }, "strip", z.ZodTypeAny, {
7900
+ inputs: readonly import("abitype").AbiParameter[];
7901
+ type: "constructor";
7902
+ stateMutability: "nonpayable" | "payable";
7903
+ }, {
7904
+ inputs: readonly import("abitype").AbiParameter[];
7905
+ type: "constructor";
7906
+ stateMutability: "nonpayable" | "payable";
7907
+ }>, z.ZodObject<{
7908
+ type: z.ZodLiteral<"fallback">;
7909
+ inputs: z.ZodOptional<z.ZodTuple<[], null>>;
7910
+ stateMutability: z.ZodUnion<[z.ZodLiteral<"payable">, z.ZodLiteral<"nonpayable">]>;
7911
+ }, "strip", z.ZodTypeAny, {
7912
+ type: "fallback";
7913
+ stateMutability: "nonpayable" | "payable";
7914
+ inputs?: [] | undefined;
7915
+ }, {
7916
+ type: "fallback";
7917
+ stateMutability: "nonpayable" | "payable";
7918
+ inputs?: [] | undefined;
7919
+ }>, z.ZodObject<{
7920
+ type: z.ZodLiteral<"receive">;
7921
+ stateMutability: z.ZodLiteral<"payable">;
7922
+ }, "strip", z.ZodTypeAny, {
7923
+ type: "receive";
7924
+ stateMutability: "payable";
7925
+ }, {
7926
+ type: "receive";
7927
+ stateMutability: "payable";
7928
+ }>]>>, {
7929
+ payable?: boolean | undefined;
7930
+ constant?: boolean | undefined;
7931
+ gas?: number | undefined;
7932
+ } & ({
7933
+ inputs: readonly import("abitype").AbiParameter[];
7934
+ outputs: readonly import("abitype").AbiParameter[];
7935
+ type: "function";
7936
+ name: string;
7937
+ stateMutability: "pure" | "view" | "nonpayable" | "payable";
7938
+ } | {
7939
+ inputs: readonly import("abitype").AbiParameter[];
7940
+ type: "constructor";
7941
+ stateMutability: "nonpayable" | "payable";
7942
+ } | {
7943
+ type: "fallback";
7944
+ stateMutability: "nonpayable" | "payable";
7945
+ inputs?: [] | undefined;
7946
+ } | {
7947
+ type: "receive";
7948
+ stateMutability: "payable";
7949
+ }), unknown>]>, "many">>]>;
7950
+ /**
7951
+ * A list of conditions to apply against the function and encoded arguments in the transaction's `data` field.
7952
+ * Each condition must be met in order for this policy to be accepted or rejected.
7953
+ */
7954
+ conditions: z.ZodArray<z.ZodObject<{
7955
+ /**
7956
+ * The name of a smart contract function being called.
7957
+ */
7958
+ function: z.ZodString;
7959
+ /**
7960
+ * An optional list of parameter conditions to apply against encoded arguments in the transaction's `data` field.
7961
+ */
7962
+ params: z.ZodOptional<z.ZodArray<z.ZodUnion<[z.ZodObject<{
7963
+ /**
7964
+ * The name of the parameter to check against a transaction's calldata.
7965
+ * If name is unknown, or is not named, you may supply an array index, e.g., `0` for first parameter.
7966
+ */
7967
+ name: z.ZodUnion<[z.ZodString, z.ZodString]>;
7968
+ /**
7969
+ * The operator to use for the comparison. The value resolved at the `name` will be on the
7970
+ * left-hand side of the operator, and the `value` field will be on the right-hand side.
7971
+ */
7972
+ operator: z.ZodEnum<[">", ">=", "<", "<=", "=="]>;
7973
+ /**
7974
+ * A single value to compare the value resolved at `name` to.
7975
+ * All values are encoded as strings. Refer to the table in the documentation for how values
7976
+ * should be encoded, and which operators are supported for each type.
7977
+ */
7978
+ value: z.ZodString;
7979
+ }, "strip", z.ZodTypeAny, {
7980
+ value: string;
7981
+ name: string;
7982
+ operator: ">" | ">=" | "<" | "<=" | "==";
7983
+ }, {
7984
+ value: string;
7985
+ name: string;
7986
+ operator: ">" | ">=" | "<" | "<=" | "==";
7987
+ }>, z.ZodObject<{
7988
+ /**
7989
+ * The name of the parameter to check against a transaction's calldata.
7990
+ * If name is unknown, or is not named, you may supply an array index, e.g., `0` for first parameter.
7991
+ */
7992
+ name: z.ZodUnion<[z.ZodString, z.ZodString]>;
7993
+ /**
7994
+ * The operator to use for the comparison. The value resolved at the `name` will be on the
7995
+ * left-hand side of the operator, and the `values` field will be on the right-hand side.
7996
+ */
7997
+ operator: z.ZodEnum<["in", "not in"]>;
7998
+ /**
7999
+ * Values to compare against the resolved `name` value.
8000
+ * All values are encoded as strings. Refer to the table in the documentation for how values
8001
+ * should be encoded, and which operators are supported for each type.
8002
+ */
8003
+ values: z.ZodArray<z.ZodString, "many">;
8004
+ }, "strip", z.ZodTypeAny, {
8005
+ values: string[];
8006
+ name: string;
8007
+ operator: "in" | "not in";
8008
+ }, {
8009
+ values: string[];
8010
+ name: string;
8011
+ operator: "in" | "not in";
8012
+ }>]>, "many">>;
8013
+ }, "strip", z.ZodTypeAny, {
8014
+ function: string;
8015
+ params?: ({
8016
+ values: string[];
8017
+ name: string;
8018
+ operator: "in" | "not in";
8019
+ } | {
8020
+ value: string;
8021
+ name: string;
8022
+ operator: ">" | ">=" | "<" | "<=" | "==";
8023
+ })[] | undefined;
8024
+ }, {
8025
+ function: string;
8026
+ params?: ({
8027
+ values: string[];
8028
+ name: string;
8029
+ operator: "in" | "not in";
8030
+ } | {
8031
+ value: string;
8032
+ name: string;
8033
+ operator: ">" | ">=" | "<" | "<=" | "==";
8034
+ })[] | undefined;
8035
+ }>, "many">;
8036
+ }, "strip", z.ZodTypeAny, {
8037
+ type: "evmData";
8038
+ abi: "erc20" | "erc721" | "erc1155" | readonly ({
8039
+ inputs: readonly import("abitype").AbiParameter[];
8040
+ type: "error";
8041
+ name: string;
8042
+ } | {
8043
+ inputs: readonly import("abitype").AbiEventParameter[];
8044
+ type: "event";
8045
+ name: string;
8046
+ anonymous?: boolean | undefined;
8047
+ } | ({
8048
+ payable?: boolean | undefined;
8049
+ constant?: boolean | undefined;
8050
+ gas?: number | undefined;
8051
+ } & ({
8052
+ inputs: readonly import("abitype").AbiParameter[];
8053
+ outputs: readonly import("abitype").AbiParameter[];
8054
+ type: "function";
8055
+ name: string;
8056
+ stateMutability: "pure" | "view" | "nonpayable" | "payable";
8057
+ } | {
8058
+ inputs: readonly import("abitype").AbiParameter[];
8059
+ type: "constructor";
8060
+ stateMutability: "nonpayable" | "payable";
8061
+ } | {
8062
+ type: "fallback";
8063
+ stateMutability: "nonpayable" | "payable";
8064
+ inputs?: [] | undefined;
8065
+ } | {
8066
+ type: "receive";
8067
+ stateMutability: "payable";
8068
+ })))[];
8069
+ conditions: {
8070
+ function: string;
8071
+ params?: ({
8072
+ values: string[];
8073
+ name: string;
8074
+ operator: "in" | "not in";
8075
+ } | {
8076
+ value: string;
8077
+ name: string;
8078
+ operator: ">" | ">=" | "<" | "<=" | "==";
8079
+ })[] | undefined;
8080
+ }[];
8081
+ }, {
8082
+ type: "evmData";
8083
+ abi: "erc20" | "erc721" | "erc1155" | readonly unknown[];
8084
+ conditions: {
8085
+ function: string;
8086
+ params?: ({
8087
+ values: string[];
8088
+ name: string;
8089
+ operator: "in" | "not in";
8090
+ } | {
8091
+ value: string;
8092
+ name: string;
8093
+ operator: ">" | ">=" | "<" | "<=" | "==";
8094
+ })[] | undefined;
8095
+ }[];
8096
+ }>, z.ZodObject<{
8097
+ /** The type of criterion, must be "netUSDChange" for USD denominated asset transfer rules. */
8098
+ type: z.ZodLiteral<"netUSDChange">;
8099
+ /**
8100
+ * The amount of USD, in cents, that the total USD value of a transaction's asset transfer and exposure should be compared to.
8101
+ */
8102
+ changeCents: z.ZodNumber;
8103
+ /**
8104
+ * The operator to use for the comparison. The total value of a transaction's asset transfer and exposure in USD will be on the left-hand side of the operator, and the `changeCents` field will be on the right-hand side.
8105
+ */
8106
+ operator: z.ZodEnum<[">", ">=", "<", "<=", "=="]>;
8107
+ }, "strip", z.ZodTypeAny, {
8108
+ type: "netUSDChange";
8109
+ operator: ">" | ">=" | "<" | "<=" | "==";
8110
+ changeCents: number;
8111
+ }, {
8112
+ type: "netUSDChange";
8113
+ operator: ">" | ">=" | "<" | "<=" | "==";
8114
+ changeCents: number;
8115
+ }>]>, "many">;
8116
+ }, "strip", z.ZodTypeAny, {
8117
+ action: "reject" | "accept";
8118
+ operation: "createEndUserEvmSwap";
8119
+ criteria: ({
8120
+ type: "evmNetwork";
8121
+ operator: "in" | "not in";
8122
+ networks: ("base-sepolia" | "base" | "arbitrum" | "optimism" | "polygon" | "ethereum" | "ethereum-sepolia" | "avalanche")[];
8123
+ } | {
8124
+ type: "netUSDChange";
8125
+ operator: ">" | ">=" | "<" | "<=" | "==";
8126
+ changeCents: number;
8127
+ } | {
8128
+ type: "evmData";
8129
+ abi: "erc20" | "erc721" | "erc1155" | readonly ({
8130
+ inputs: readonly import("abitype").AbiParameter[];
8131
+ type: "error";
8132
+ name: string;
8133
+ } | {
8134
+ inputs: readonly import("abitype").AbiEventParameter[];
8135
+ type: "event";
8136
+ name: string;
8137
+ anonymous?: boolean | undefined;
8138
+ } | ({
8139
+ payable?: boolean | undefined;
8140
+ constant?: boolean | undefined;
8141
+ gas?: number | undefined;
8142
+ } & ({
8143
+ inputs: readonly import("abitype").AbiParameter[];
8144
+ outputs: readonly import("abitype").AbiParameter[];
8145
+ type: "function";
8146
+ name: string;
8147
+ stateMutability: "pure" | "view" | "nonpayable" | "payable";
8148
+ } | {
8149
+ inputs: readonly import("abitype").AbiParameter[];
8150
+ type: "constructor";
8151
+ stateMutability: "nonpayable" | "payable";
8152
+ } | {
8153
+ type: "fallback";
8154
+ stateMutability: "nonpayable" | "payable";
8155
+ inputs?: [] | undefined;
8156
+ } | {
8157
+ type: "receive";
8158
+ stateMutability: "payable";
8159
+ })))[];
8160
+ conditions: {
8161
+ function: string;
8162
+ params?: ({
8163
+ values: string[];
8164
+ name: string;
8165
+ operator: "in" | "not in";
8166
+ } | {
8167
+ value: string;
8168
+ name: string;
8169
+ operator: ">" | ">=" | "<" | "<=" | "==";
8170
+ })[] | undefined;
8171
+ }[];
8172
+ })[];
8173
+ }, {
8174
+ action: "reject" | "accept";
8175
+ operation: "createEndUserEvmSwap";
8176
+ criteria: ({
8177
+ type: "evmNetwork";
8178
+ operator: "in" | "not in";
8179
+ networks: ("base-sepolia" | "base" | "arbitrum" | "optimism" | "polygon" | "ethereum" | "ethereum-sepolia" | "avalanche")[];
8180
+ } | {
8181
+ type: "netUSDChange";
8182
+ operator: ">" | ">=" | "<" | "<=" | "==";
8183
+ changeCents: number;
8184
+ } | {
8185
+ type: "evmData";
8186
+ abi: "erc20" | "erc721" | "erc1155" | readonly unknown[];
8187
+ conditions: {
8188
+ function: string;
8189
+ params?: ({
8190
+ values: string[];
8191
+ name: string;
8192
+ operator: "in" | "not in";
8193
+ } | {
8194
+ value: string;
8195
+ name: string;
8196
+ operator: ">" | ">=" | "<" | "<=" | "==";
8197
+ })[] | undefined;
8198
+ }[];
8199
+ })[];
8200
+ }>;
8201
+ export type CreateEndUserEvmSwapRule = z.infer<typeof CreateEndUserEvmSwapRuleSchema>;
6754
8202
  //# sourceMappingURL=evmSchema.d.ts.map