@sudobility/contracts 0.14.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 (322) hide show
  1. package/README.md +353 -0
  2. package/artifacts/contracts/Mailer.sol/Mailer.d.ts +1146 -0
  3. package/artifacts/contracts/Mailer.sol/Mailer.dbg.json +4 -0
  4. package/artifacts/contracts/Mailer.sol/Mailer.json +1096 -0
  5. package/artifacts/contracts/Mailer.sol/artifacts.d.ts +21 -0
  6. package/artifacts/contracts/MockUSDC.sol/MockUSDC.d.ts +284 -0
  7. package/artifacts/contracts/MockUSDC.sol/MockUSDC.dbg.json +4 -0
  8. package/artifacts/contracts/MockUSDC.sol/MockUSDC.json +234 -0
  9. package/artifacts/contracts/MockUSDC.sol/artifacts.d.ts +21 -0
  10. package/artifacts/contracts/interfaces/IERC20.sol/IERC20.d.ts +157 -0
  11. package/artifacts/contracts/interfaces/IERC20.sol/IERC20.dbg.json +4 -0
  12. package/artifacts/contracts/interfaces/IERC20.sol/IERC20.json +107 -0
  13. package/artifacts/contracts/interfaces/IERC20.sol/artifacts.d.ts +21 -0
  14. package/dist/evm/src/evm/index.d.ts +4 -0
  15. package/dist/evm/src/evm/index.d.ts.map +1 -0
  16. package/dist/evm/src/evm/index.js +10 -0
  17. package/dist/evm/src/evm/index.js.map +1 -0
  18. package/dist/evm/src/evm/mailer-client.d.ts +966 -0
  19. package/dist/evm/src/evm/mailer-client.d.ts.map +1 -0
  20. package/dist/evm/src/evm/mailer-client.js +619 -0
  21. package/dist/evm/src/evm/mailer-client.js.map +1 -0
  22. package/dist/evm/typechain-types/Mailer.d.ts +698 -0
  23. package/dist/evm/typechain-types/Mailer.d.ts.map +1 -0
  24. package/dist/evm/typechain-types/Mailer.js +3 -0
  25. package/dist/evm/typechain-types/Mailer.js.map +1 -0
  26. package/dist/evm/typechain-types/MockUSDC.d.ts +118 -0
  27. package/dist/evm/typechain-types/MockUSDC.d.ts.map +1 -0
  28. package/dist/evm/typechain-types/MockUSDC.js +3 -0
  29. package/dist/evm/typechain-types/MockUSDC.js.map +1 -0
  30. package/dist/evm/typechain-types/common.d.ts +51 -0
  31. package/dist/evm/typechain-types/common.d.ts.map +1 -0
  32. package/dist/evm/typechain-types/common.js +3 -0
  33. package/dist/evm/typechain-types/common.js.map +1 -0
  34. package/dist/evm/typechain-types/factories/Mailer__factory.d.ts +875 -0
  35. package/dist/evm/typechain-types/factories/Mailer__factory.d.ts.map +1 -0
  36. package/dist/evm/typechain-types/factories/Mailer__factory.js +1125 -0
  37. package/dist/evm/typechain-types/factories/Mailer__factory.js.map +1 -0
  38. package/dist/evm/typechain-types/factories/MockUSDC__factory.d.ts +193 -0
  39. package/dist/evm/typechain-types/factories/MockUSDC__factory.d.ts.map +1 -0
  40. package/dist/evm/typechain-types/factories/MockUSDC__factory.js +263 -0
  41. package/dist/evm/typechain-types/factories/MockUSDC__factory.js.map +1 -0
  42. package/dist/evm/typechain-types/factories/index.d.ts +4 -0
  43. package/dist/evm/typechain-types/factories/index.d.ts.map +1 -0
  44. package/dist/evm/typechain-types/factories/index.js +45 -0
  45. package/dist/evm/typechain-types/factories/index.js.map +1 -0
  46. package/dist/evm/typechain-types/factories/interfaces/IERC20__factory.d.ts +80 -0
  47. package/dist/evm/typechain-types/factories/interfaces/IERC20__factory.d.ts.map +1 -0
  48. package/dist/evm/typechain-types/factories/interfaces/IERC20__factory.js +116 -0
  49. package/dist/evm/typechain-types/factories/interfaces/IERC20__factory.js.map +1 -0
  50. package/dist/evm/typechain-types/factories/interfaces/index.d.ts +2 -0
  51. package/dist/evm/typechain-types/factories/interfaces/index.d.ts.map +1 -0
  52. package/dist/evm/typechain-types/factories/interfaces/index.js +9 -0
  53. package/dist/evm/typechain-types/factories/interfaces/index.js.map +1 -0
  54. package/dist/evm/typechain-types/index.d.ts +10 -0
  55. package/dist/evm/typechain-types/index.d.ts.map +1 -0
  56. package/dist/evm/typechain-types/index.js +44 -0
  57. package/dist/evm/typechain-types/index.js.map +1 -0
  58. package/dist/evm/typechain-types/interfaces/IERC20.d.ts +70 -0
  59. package/dist/evm/typechain-types/interfaces/IERC20.d.ts.map +1 -0
  60. package/dist/evm/typechain-types/interfaces/IERC20.js +3 -0
  61. package/dist/evm/typechain-types/interfaces/IERC20.js.map +1 -0
  62. package/dist/evm/typechain-types/interfaces/index.d.ts +2 -0
  63. package/dist/evm/typechain-types/interfaces/index.d.ts.map +1 -0
  64. package/dist/evm/typechain-types/interfaces/index.js +3 -0
  65. package/dist/evm/typechain-types/interfaces/index.js.map +1 -0
  66. package/dist/solana/solana/index.d.ts +3 -0
  67. package/dist/solana/solana/index.d.ts.map +1 -0
  68. package/dist/solana/solana/index.js +21 -0
  69. package/dist/solana/solana/index.js.map +1 -0
  70. package/dist/solana/solana/mailer-client.d.ts +282 -0
  71. package/dist/solana/solana/mailer-client.d.ts.map +1 -0
  72. package/dist/solana/solana/mailer-client.js +989 -0
  73. package/dist/solana/solana/mailer-client.js.map +1 -0
  74. package/dist/solana/solana/types.d.ts +28 -0
  75. package/dist/solana/solana/types.d.ts.map +1 -0
  76. package/dist/solana/solana/types.js +23 -0
  77. package/dist/solana/solana/types.js.map +1 -0
  78. package/dist/solana/utils/currency.d.ts +26 -0
  79. package/dist/solana/utils/currency.d.ts.map +1 -0
  80. package/dist/solana/utils/currency.js +36 -0
  81. package/dist/solana/utils/currency.js.map +1 -0
  82. package/dist/unified/package.json +3 -0
  83. package/dist/unified/src/evm/index.d.ts +4 -0
  84. package/dist/unified/src/evm/index.d.ts.map +1 -0
  85. package/dist/unified/src/evm/index.js +10 -0
  86. package/dist/unified/src/evm/index.js.map +1 -0
  87. package/dist/unified/src/evm/mailer-client.d.ts +966 -0
  88. package/dist/unified/src/evm/mailer-client.d.ts.map +1 -0
  89. package/dist/unified/src/evm/mailer-client.js +619 -0
  90. package/dist/unified/src/evm/mailer-client.js.map +1 -0
  91. package/dist/unified/src/react/context/MailerProvider.d.ts +102 -0
  92. package/dist/unified/src/react/context/MailerProvider.d.ts.map +1 -0
  93. package/dist/unified/src/react/context/MailerProvider.js +160 -0
  94. package/dist/unified/src/react/context/MailerProvider.js.map +1 -0
  95. package/dist/unified/src/react/hooks/useMailerMutations.d.ts +301 -0
  96. package/dist/unified/src/react/hooks/useMailerMutations.d.ts.map +1 -0
  97. package/dist/unified/src/react/hooks/useMailerMutations.js +417 -0
  98. package/dist/unified/src/react/hooks/useMailerMutations.js.map +1 -0
  99. package/dist/unified/src/react/hooks/useMailerQueries.d.ts +130 -0
  100. package/dist/unified/src/react/hooks/useMailerQueries.d.ts.map +1 -0
  101. package/dist/unified/src/react/hooks/useMailerQueries.js +197 -0
  102. package/dist/unified/src/react/hooks/useMailerQueries.js.map +1 -0
  103. package/dist/unified/src/react/index.d.ts +37 -0
  104. package/dist/unified/src/react/index.d.ts.map +1 -0
  105. package/dist/unified/src/react/index.js +70 -0
  106. package/dist/unified/src/react/index.js.map +1 -0
  107. package/dist/unified/src/solana/index.d.ts +3 -0
  108. package/dist/unified/src/solana/index.d.ts.map +1 -0
  109. package/dist/unified/src/solana/index.js +21 -0
  110. package/dist/unified/src/solana/index.js.map +1 -0
  111. package/dist/unified/src/solana/mailer-client.d.ts +282 -0
  112. package/dist/unified/src/solana/mailer-client.d.ts.map +1 -0
  113. package/dist/unified/src/solana/mailer-client.js +989 -0
  114. package/dist/unified/src/solana/mailer-client.js.map +1 -0
  115. package/dist/unified/src/solana/types.d.ts +28 -0
  116. package/dist/unified/src/solana/types.d.ts.map +1 -0
  117. package/dist/unified/src/solana/types.js +23 -0
  118. package/dist/unified/src/solana/types.js.map +1 -0
  119. package/dist/unified/src/unified/index.d.ts +4 -0
  120. package/dist/unified/src/unified/index.d.ts.map +1 -0
  121. package/dist/unified/src/unified/index.js +9 -0
  122. package/dist/unified/src/unified/index.js.map +1 -0
  123. package/dist/unified/src/unified/onchain-mailer-client.d.ts +173 -0
  124. package/dist/unified/src/unified/onchain-mailer-client.d.ts.map +1 -0
  125. package/dist/unified/src/unified/onchain-mailer-client.js +1048 -0
  126. package/dist/unified/src/unified/onchain-mailer-client.js.map +1 -0
  127. package/dist/unified/src/unified/types.d.ts +47 -0
  128. package/dist/unified/src/unified/types.d.ts.map +1 -0
  129. package/dist/unified/src/unified/types.js +3 -0
  130. package/dist/unified/src/unified/types.js.map +1 -0
  131. package/dist/unified/src/unified/wallet-detector.d.ts +28 -0
  132. package/dist/unified/src/unified/wallet-detector.d.ts.map +1 -0
  133. package/dist/unified/src/unified/wallet-detector.js +63 -0
  134. package/dist/unified/src/unified/wallet-detector.js.map +1 -0
  135. package/dist/unified/src/utils/chain-config.d.ts +75 -0
  136. package/dist/unified/src/utils/chain-config.d.ts.map +1 -0
  137. package/dist/unified/src/utils/chain-config.js +203 -0
  138. package/dist/unified/src/utils/chain-config.js.map +1 -0
  139. package/dist/unified/src/utils/currency.d.ts +26 -0
  140. package/dist/unified/src/utils/currency.d.ts.map +1 -0
  141. package/dist/unified/src/utils/currency.js +36 -0
  142. package/dist/unified/src/utils/currency.js.map +1 -0
  143. package/dist/unified/src/utils/index.d.ts +4 -0
  144. package/dist/unified/src/utils/index.d.ts.map +1 -0
  145. package/dist/unified/src/utils/index.js +20 -0
  146. package/dist/unified/src/utils/index.js.map +1 -0
  147. package/dist/unified/src/utils/validation.d.ts +10 -0
  148. package/dist/unified/src/utils/validation.d.ts.map +1 -0
  149. package/dist/unified/src/utils/validation.js +102 -0
  150. package/dist/unified/src/utils/validation.js.map +1 -0
  151. package/dist/unified/typechain-types/Mailer.d.ts +698 -0
  152. package/dist/unified/typechain-types/Mailer.d.ts.map +1 -0
  153. package/dist/unified/typechain-types/Mailer.js +3 -0
  154. package/dist/unified/typechain-types/Mailer.js.map +1 -0
  155. package/dist/unified/typechain-types/MockUSDC.d.ts +118 -0
  156. package/dist/unified/typechain-types/MockUSDC.d.ts.map +1 -0
  157. package/dist/unified/typechain-types/MockUSDC.js +3 -0
  158. package/dist/unified/typechain-types/MockUSDC.js.map +1 -0
  159. package/dist/unified/typechain-types/common.d.ts +51 -0
  160. package/dist/unified/typechain-types/common.d.ts.map +1 -0
  161. package/dist/unified/typechain-types/common.js +3 -0
  162. package/dist/unified/typechain-types/common.js.map +1 -0
  163. package/dist/unified/typechain-types/factories/Mailer__factory.d.ts +875 -0
  164. package/dist/unified/typechain-types/factories/Mailer__factory.d.ts.map +1 -0
  165. package/dist/unified/typechain-types/factories/Mailer__factory.js +1125 -0
  166. package/dist/unified/typechain-types/factories/Mailer__factory.js.map +1 -0
  167. package/dist/unified/typechain-types/factories/MockUSDC__factory.d.ts +193 -0
  168. package/dist/unified/typechain-types/factories/MockUSDC__factory.d.ts.map +1 -0
  169. package/dist/unified/typechain-types/factories/MockUSDC__factory.js +263 -0
  170. package/dist/unified/typechain-types/factories/MockUSDC__factory.js.map +1 -0
  171. package/dist/unified/typechain-types/factories/index.d.ts +4 -0
  172. package/dist/unified/typechain-types/factories/index.d.ts.map +1 -0
  173. package/dist/unified/typechain-types/factories/index.js +45 -0
  174. package/dist/unified/typechain-types/factories/index.js.map +1 -0
  175. package/dist/unified/typechain-types/factories/interfaces/IERC20__factory.d.ts +80 -0
  176. package/dist/unified/typechain-types/factories/interfaces/IERC20__factory.d.ts.map +1 -0
  177. package/dist/unified/typechain-types/factories/interfaces/IERC20__factory.js +116 -0
  178. package/dist/unified/typechain-types/factories/interfaces/IERC20__factory.js.map +1 -0
  179. package/dist/unified/typechain-types/factories/interfaces/index.d.ts +2 -0
  180. package/dist/unified/typechain-types/factories/interfaces/index.d.ts.map +1 -0
  181. package/dist/unified/typechain-types/factories/interfaces/index.js +9 -0
  182. package/dist/unified/typechain-types/factories/interfaces/index.js.map +1 -0
  183. package/dist/unified/typechain-types/index.d.ts +10 -0
  184. package/dist/unified/typechain-types/index.d.ts.map +1 -0
  185. package/dist/unified/typechain-types/index.js +44 -0
  186. package/dist/unified/typechain-types/index.js.map +1 -0
  187. package/dist/unified/typechain-types/interfaces/IERC20.d.ts +70 -0
  188. package/dist/unified/typechain-types/interfaces/IERC20.d.ts.map +1 -0
  189. package/dist/unified/typechain-types/interfaces/IERC20.js +3 -0
  190. package/dist/unified/typechain-types/interfaces/IERC20.js.map +1 -0
  191. package/dist/unified/typechain-types/interfaces/index.d.ts +2 -0
  192. package/dist/unified/typechain-types/interfaces/index.d.ts.map +1 -0
  193. package/dist/unified/typechain-types/interfaces/index.js +3 -0
  194. package/dist/unified/typechain-types/interfaces/index.js.map +1 -0
  195. package/dist/unified-esm/src/evm/index.d.ts +4 -0
  196. package/dist/unified-esm/src/evm/index.d.ts.map +1 -0
  197. package/dist/unified-esm/src/evm/index.js +5 -0
  198. package/dist/unified-esm/src/evm/index.js.map +1 -0
  199. package/dist/unified-esm/src/evm/mailer-client.d.ts +966 -0
  200. package/dist/unified-esm/src/evm/mailer-client.d.ts.map +1 -0
  201. package/dist/unified-esm/src/evm/mailer-client.js +615 -0
  202. package/dist/unified-esm/src/evm/mailer-client.js.map +1 -0
  203. package/dist/unified-esm/src/react/context/MailerProvider.d.ts +102 -0
  204. package/dist/unified-esm/src/react/context/MailerProvider.d.ts.map +1 -0
  205. package/dist/unified-esm/src/react/context/MailerProvider.js +120 -0
  206. package/dist/unified-esm/src/react/context/MailerProvider.js.map +1 -0
  207. package/dist/unified-esm/src/react/hooks/useMailerMutations.d.ts +301 -0
  208. package/dist/unified-esm/src/react/hooks/useMailerMutations.d.ts.map +1 -0
  209. package/dist/unified-esm/src/react/hooks/useMailerMutations.js +400 -0
  210. package/dist/unified-esm/src/react/hooks/useMailerMutations.js.map +1 -0
  211. package/dist/unified-esm/src/react/hooks/useMailerQueries.d.ts +130 -0
  212. package/dist/unified-esm/src/react/hooks/useMailerQueries.d.ts.map +1 -0
  213. package/dist/unified-esm/src/react/hooks/useMailerQueries.js +186 -0
  214. package/dist/unified-esm/src/react/hooks/useMailerQueries.js.map +1 -0
  215. package/dist/unified-esm/src/react/index.d.ts +37 -0
  216. package/dist/unified-esm/src/react/index.d.ts.map +1 -0
  217. package/dist/unified-esm/src/react/index.js +39 -0
  218. package/dist/unified-esm/src/react/index.js.map +1 -0
  219. package/dist/unified-esm/src/solana/index.d.ts +3 -0
  220. package/dist/unified-esm/src/solana/index.d.ts.map +1 -0
  221. package/dist/unified-esm/src/solana/index.js +3 -0
  222. package/dist/unified-esm/src/solana/index.js.map +1 -0
  223. package/dist/unified-esm/src/solana/mailer-client.d.ts +282 -0
  224. package/dist/unified-esm/src/solana/mailer-client.d.ts.map +1 -0
  225. package/dist/unified-esm/src/solana/mailer-client.js +985 -0
  226. package/dist/unified-esm/src/solana/mailer-client.js.map +1 -0
  227. package/dist/unified-esm/src/solana/types.d.ts +28 -0
  228. package/dist/unified-esm/src/solana/types.d.ts.map +1 -0
  229. package/dist/unified-esm/src/solana/types.js +16 -0
  230. package/dist/unified-esm/src/solana/types.js.map +1 -0
  231. package/dist/unified-esm/src/unified/index.d.ts +4 -0
  232. package/dist/unified-esm/src/unified/index.d.ts.map +1 -0
  233. package/dist/unified-esm/src/unified/index.js +4 -0
  234. package/dist/unified-esm/src/unified/index.js.map +1 -0
  235. package/dist/unified-esm/src/unified/onchain-mailer-client.d.ts +173 -0
  236. package/dist/unified-esm/src/unified/onchain-mailer-client.d.ts.map +1 -0
  237. package/dist/unified-esm/src/unified/onchain-mailer-client.js +1011 -0
  238. package/dist/unified-esm/src/unified/onchain-mailer-client.js.map +1 -0
  239. package/dist/unified-esm/src/unified/types.d.ts +47 -0
  240. package/dist/unified-esm/src/unified/types.d.ts.map +1 -0
  241. package/dist/unified-esm/src/unified/types.js +2 -0
  242. package/dist/unified-esm/src/unified/types.js.map +1 -0
  243. package/dist/unified-esm/src/unified/wallet-detector.d.ts +28 -0
  244. package/dist/unified-esm/src/unified/wallet-detector.d.ts.map +1 -0
  245. package/dist/unified-esm/src/unified/wallet-detector.js +59 -0
  246. package/dist/unified-esm/src/unified/wallet-detector.js.map +1 -0
  247. package/dist/unified-esm/src/utils/chain-config.d.ts +75 -0
  248. package/dist/unified-esm/src/utils/chain-config.d.ts.map +1 -0
  249. package/dist/unified-esm/src/utils/chain-config.js +199 -0
  250. package/dist/unified-esm/src/utils/chain-config.js.map +1 -0
  251. package/dist/unified-esm/src/utils/currency.d.ts +26 -0
  252. package/dist/unified-esm/src/utils/currency.d.ts.map +1 -0
  253. package/dist/unified-esm/src/utils/currency.js +31 -0
  254. package/dist/unified-esm/src/utils/currency.js.map +1 -0
  255. package/dist/unified-esm/src/utils/index.d.ts +4 -0
  256. package/dist/unified-esm/src/utils/index.d.ts.map +1 -0
  257. package/dist/unified-esm/src/utils/index.js +4 -0
  258. package/dist/unified-esm/src/utils/index.js.map +1 -0
  259. package/dist/unified-esm/src/utils/validation.d.ts +10 -0
  260. package/dist/unified-esm/src/utils/validation.d.ts.map +1 -0
  261. package/dist/unified-esm/src/utils/validation.js +96 -0
  262. package/dist/unified-esm/src/utils/validation.js.map +1 -0
  263. package/dist/unified-esm/typechain-types/Mailer.d.ts +698 -0
  264. package/dist/unified-esm/typechain-types/Mailer.d.ts.map +1 -0
  265. package/dist/unified-esm/typechain-types/Mailer.js +2 -0
  266. package/dist/unified-esm/typechain-types/Mailer.js.map +1 -0
  267. package/dist/unified-esm/typechain-types/MockUSDC.d.ts +118 -0
  268. package/dist/unified-esm/typechain-types/MockUSDC.d.ts.map +1 -0
  269. package/dist/unified-esm/typechain-types/MockUSDC.js +2 -0
  270. package/dist/unified-esm/typechain-types/MockUSDC.js.map +1 -0
  271. package/dist/unified-esm/typechain-types/common.d.ts +51 -0
  272. package/dist/unified-esm/typechain-types/common.d.ts.map +1 -0
  273. package/dist/unified-esm/typechain-types/common.js +2 -0
  274. package/dist/unified-esm/typechain-types/common.js.map +1 -0
  275. package/dist/unified-esm/typechain-types/factories/Mailer__factory.d.ts +875 -0
  276. package/dist/unified-esm/typechain-types/factories/Mailer__factory.d.ts.map +1 -0
  277. package/dist/unified-esm/typechain-types/factories/Mailer__factory.js +1121 -0
  278. package/dist/unified-esm/typechain-types/factories/Mailer__factory.js.map +1 -0
  279. package/dist/unified-esm/typechain-types/factories/MockUSDC__factory.d.ts +193 -0
  280. package/dist/unified-esm/typechain-types/factories/MockUSDC__factory.d.ts.map +1 -0
  281. package/dist/unified-esm/typechain-types/factories/MockUSDC__factory.js +259 -0
  282. package/dist/unified-esm/typechain-types/factories/MockUSDC__factory.js.map +1 -0
  283. package/dist/unified-esm/typechain-types/factories/index.d.ts +4 -0
  284. package/dist/unified-esm/typechain-types/factories/index.d.ts.map +1 -0
  285. package/dist/unified-esm/typechain-types/factories/index.js +7 -0
  286. package/dist/unified-esm/typechain-types/factories/index.js.map +1 -0
  287. package/dist/unified-esm/typechain-types/factories/interfaces/IERC20__factory.d.ts +80 -0
  288. package/dist/unified-esm/typechain-types/factories/interfaces/IERC20__factory.d.ts.map +1 -0
  289. package/dist/unified-esm/typechain-types/factories/interfaces/IERC20__factory.js +112 -0
  290. package/dist/unified-esm/typechain-types/factories/interfaces/IERC20__factory.js.map +1 -0
  291. package/dist/unified-esm/typechain-types/factories/interfaces/index.d.ts +2 -0
  292. package/dist/unified-esm/typechain-types/factories/interfaces/index.d.ts.map +1 -0
  293. package/dist/unified-esm/typechain-types/factories/interfaces/index.js +5 -0
  294. package/dist/unified-esm/typechain-types/factories/interfaces/index.js.map +1 -0
  295. package/dist/unified-esm/typechain-types/index.d.ts +10 -0
  296. package/dist/unified-esm/typechain-types/index.d.ts.map +1 -0
  297. package/dist/unified-esm/typechain-types/index.js +5 -0
  298. package/dist/unified-esm/typechain-types/index.js.map +1 -0
  299. package/dist/unified-esm/typechain-types/interfaces/IERC20.d.ts +70 -0
  300. package/dist/unified-esm/typechain-types/interfaces/IERC20.d.ts.map +1 -0
  301. package/dist/unified-esm/typechain-types/interfaces/IERC20.js +2 -0
  302. package/dist/unified-esm/typechain-types/interfaces/IERC20.js.map +1 -0
  303. package/dist/unified-esm/typechain-types/interfaces/index.d.ts +2 -0
  304. package/dist/unified-esm/typechain-types/interfaces/index.d.ts.map +1 -0
  305. package/dist/unified-esm/typechain-types/interfaces/index.js +2 -0
  306. package/dist/unified-esm/typechain-types/interfaces/index.js.map +1 -0
  307. package/package.json +250 -0
  308. package/programs/mailer/Cargo.toml +29 -0
  309. package/programs/mailer/src/lib.rs +2034 -0
  310. package/programs/mailer/tests/integration_tests.rs +1236 -0
  311. package/typechain-types/Mailer.ts +1393 -0
  312. package/typechain-types/MockUSDC.ts +236 -0
  313. package/typechain-types/common.ts +131 -0
  314. package/typechain-types/factories/Mailer__factory.ts +1157 -0
  315. package/typechain-types/factories/MockUSDC__factory.ts +284 -0
  316. package/typechain-types/factories/index.ts +6 -0
  317. package/typechain-types/factories/interfaces/IERC20__factory.ts +115 -0
  318. package/typechain-types/factories/interfaces/index.ts +4 -0
  319. package/typechain-types/hardhat.d.ts +99 -0
  320. package/typechain-types/index.ts +12 -0
  321. package/typechain-types/interfaces/IERC20.ts +148 -0
  322. package/typechain-types/interfaces/index.ts +4 -0
@@ -0,0 +1,1146 @@
1
+ // This file was autogenerated by hardhat-viem, do not edit it.
2
+ // prettier-ignore
3
+ // tslint:disable
4
+ // eslint-disable
5
+
6
+ import type { Address } from "viem";
7
+ import type { AbiParameterToPrimitiveType, GetContractReturnType } from "@nomicfoundation/hardhat-viem/types";
8
+ import "@nomicfoundation/hardhat-viem/types";
9
+
10
+ export interface Mailer$Type {
11
+ "_format": "hh-sol-artifact-1",
12
+ "contractName": "Mailer",
13
+ "sourceName": "contracts/Mailer.sol",
14
+ "abi": [
15
+ {
16
+ "inputs": [
17
+ {
18
+ "internalType": "address",
19
+ "name": "_usdcToken",
20
+ "type": "address"
21
+ },
22
+ {
23
+ "internalType": "address",
24
+ "name": "_owner",
25
+ "type": "address"
26
+ }
27
+ ],
28
+ "stateMutability": "nonpayable",
29
+ "type": "constructor"
30
+ },
31
+ {
32
+ "inputs": [],
33
+ "name": "ClaimPeriodNotExpired",
34
+ "type": "error"
35
+ },
36
+ {
37
+ "inputs": [],
38
+ "name": "ContractIsPaused",
39
+ "type": "error"
40
+ },
41
+ {
42
+ "inputs": [],
43
+ "name": "ContractNotPaused",
44
+ "type": "error"
45
+ },
46
+ {
47
+ "inputs": [],
48
+ "name": "FeePaymentRequired",
49
+ "type": "error"
50
+ },
51
+ {
52
+ "inputs": [],
53
+ "name": "InvalidAddress",
54
+ "type": "error"
55
+ },
56
+ {
57
+ "inputs": [],
58
+ "name": "InvalidPercentage",
59
+ "type": "error"
60
+ },
61
+ {
62
+ "inputs": [],
63
+ "name": "MathOverflow",
64
+ "type": "error"
65
+ },
66
+ {
67
+ "inputs": [],
68
+ "name": "NoClaimableAmount",
69
+ "type": "error"
70
+ },
71
+ {
72
+ "inputs": [],
73
+ "name": "OnlyOwner",
74
+ "type": "error"
75
+ },
76
+ {
77
+ "inputs": [],
78
+ "name": "ReentrancyGuard",
79
+ "type": "error"
80
+ },
81
+ {
82
+ "inputs": [],
83
+ "name": "TransferFailed",
84
+ "type": "error"
85
+ },
86
+ {
87
+ "inputs": [],
88
+ "name": "UnpermittedPayer",
89
+ "type": "error"
90
+ },
91
+ {
92
+ "anonymous": false,
93
+ "inputs": [],
94
+ "name": "ContractPaused",
95
+ "type": "event"
96
+ },
97
+ {
98
+ "anonymous": false,
99
+ "inputs": [],
100
+ "name": "ContractUnpaused",
101
+ "type": "event"
102
+ },
103
+ {
104
+ "anonymous": false,
105
+ "inputs": [
106
+ {
107
+ "indexed": true,
108
+ "internalType": "address",
109
+ "name": "account",
110
+ "type": "address"
111
+ },
112
+ {
113
+ "indexed": false,
114
+ "internalType": "uint256",
115
+ "name": "percentage",
116
+ "type": "uint256"
117
+ }
118
+ ],
119
+ "name": "CustomFeePercentageSet",
120
+ "type": "event"
121
+ },
122
+ {
123
+ "anonymous": false,
124
+ "inputs": [
125
+ {
126
+ "indexed": false,
127
+ "internalType": "uint256",
128
+ "name": "oldFee",
129
+ "type": "uint256"
130
+ },
131
+ {
132
+ "indexed": false,
133
+ "internalType": "uint256",
134
+ "name": "newFee",
135
+ "type": "uint256"
136
+ }
137
+ ],
138
+ "name": "DelegationFeeUpdated",
139
+ "type": "event"
140
+ },
141
+ {
142
+ "anonymous": false,
143
+ "inputs": [
144
+ {
145
+ "indexed": true,
146
+ "internalType": "address",
147
+ "name": "delegator",
148
+ "type": "address"
149
+ },
150
+ {
151
+ "indexed": true,
152
+ "internalType": "address",
153
+ "name": "delegate",
154
+ "type": "address"
155
+ }
156
+ ],
157
+ "name": "DelegationSet",
158
+ "type": "event"
159
+ },
160
+ {
161
+ "anonymous": false,
162
+ "inputs": [],
163
+ "name": "EmergencyUnpaused",
164
+ "type": "event"
165
+ },
166
+ {
167
+ "anonymous": false,
168
+ "inputs": [
169
+ {
170
+ "indexed": true,
171
+ "internalType": "address",
172
+ "name": "recipient",
173
+ "type": "address"
174
+ },
175
+ {
176
+ "indexed": false,
177
+ "internalType": "uint256",
178
+ "name": "amount",
179
+ "type": "uint256"
180
+ }
181
+ ],
182
+ "name": "ExpiredSharesClaimed",
183
+ "type": "event"
184
+ },
185
+ {
186
+ "anonymous": false,
187
+ "inputs": [
188
+ {
189
+ "indexed": false,
190
+ "internalType": "uint256",
191
+ "name": "oldFee",
192
+ "type": "uint256"
193
+ },
194
+ {
195
+ "indexed": false,
196
+ "internalType": "uint256",
197
+ "name": "newFee",
198
+ "type": "uint256"
199
+ }
200
+ ],
201
+ "name": "FeeUpdated",
202
+ "type": "event"
203
+ },
204
+ {
205
+ "anonymous": false,
206
+ "inputs": [
207
+ {
208
+ "indexed": true,
209
+ "internalType": "address",
210
+ "name": "recipient",
211
+ "type": "address"
212
+ },
213
+ {
214
+ "indexed": false,
215
+ "internalType": "uint256",
216
+ "name": "amount",
217
+ "type": "uint256"
218
+ }
219
+ ],
220
+ "name": "FundsDistributed",
221
+ "type": "event"
222
+ },
223
+ {
224
+ "anonymous": false,
225
+ "inputs": [
226
+ {
227
+ "indexed": true,
228
+ "internalType": "address",
229
+ "name": "from",
230
+ "type": "address"
231
+ },
232
+ {
233
+ "indexed": true,
234
+ "internalType": "address",
235
+ "name": "to",
236
+ "type": "address"
237
+ },
238
+ {
239
+ "indexed": false,
240
+ "internalType": "string",
241
+ "name": "subject",
242
+ "type": "string"
243
+ },
244
+ {
245
+ "indexed": false,
246
+ "internalType": "string",
247
+ "name": "body",
248
+ "type": "string"
249
+ },
250
+ {
251
+ "indexed": false,
252
+ "internalType": "bool",
253
+ "name": "revenueShareToReceiver",
254
+ "type": "bool"
255
+ },
256
+ {
257
+ "indexed": false,
258
+ "internalType": "bool",
259
+ "name": "resolveSenderToName",
260
+ "type": "bool"
261
+ }
262
+ ],
263
+ "name": "MailSent",
264
+ "type": "event"
265
+ },
266
+ {
267
+ "anonymous": false,
268
+ "inputs": [
269
+ {
270
+ "indexed": true,
271
+ "internalType": "address",
272
+ "name": "from",
273
+ "type": "address"
274
+ },
275
+ {
276
+ "indexed": false,
277
+ "internalType": "string",
278
+ "name": "toEmail",
279
+ "type": "string"
280
+ },
281
+ {
282
+ "indexed": false,
283
+ "internalType": "string",
284
+ "name": "subject",
285
+ "type": "string"
286
+ },
287
+ {
288
+ "indexed": false,
289
+ "internalType": "string",
290
+ "name": "body",
291
+ "type": "string"
292
+ }
293
+ ],
294
+ "name": "MailSentToEmail",
295
+ "type": "event"
296
+ },
297
+ {
298
+ "anonymous": false,
299
+ "inputs": [
300
+ {
301
+ "indexed": false,
302
+ "internalType": "uint256",
303
+ "name": "amount",
304
+ "type": "uint256"
305
+ }
306
+ ],
307
+ "name": "OwnerClaimed",
308
+ "type": "event"
309
+ },
310
+ {
311
+ "anonymous": false,
312
+ "inputs": [
313
+ {
314
+ "indexed": true,
315
+ "internalType": "address",
316
+ "name": "contractAddress",
317
+ "type": "address"
318
+ },
319
+ {
320
+ "indexed": true,
321
+ "internalType": "address",
322
+ "name": "wallet",
323
+ "type": "address"
324
+ }
325
+ ],
326
+ "name": "PermissionGranted",
327
+ "type": "event"
328
+ },
329
+ {
330
+ "anonymous": false,
331
+ "inputs": [
332
+ {
333
+ "indexed": true,
334
+ "internalType": "address",
335
+ "name": "contractAddress",
336
+ "type": "address"
337
+ },
338
+ {
339
+ "indexed": true,
340
+ "internalType": "address",
341
+ "name": "wallet",
342
+ "type": "address"
343
+ }
344
+ ],
345
+ "name": "PermissionRevoked",
346
+ "type": "event"
347
+ },
348
+ {
349
+ "anonymous": false,
350
+ "inputs": [
351
+ {
352
+ "indexed": true,
353
+ "internalType": "address",
354
+ "name": "from",
355
+ "type": "address"
356
+ },
357
+ {
358
+ "indexed": true,
359
+ "internalType": "address",
360
+ "name": "to",
361
+ "type": "address"
362
+ },
363
+ {
364
+ "indexed": true,
365
+ "internalType": "string",
366
+ "name": "mailId",
367
+ "type": "string"
368
+ },
369
+ {
370
+ "indexed": false,
371
+ "internalType": "bool",
372
+ "name": "revenueShareToReceiver",
373
+ "type": "bool"
374
+ },
375
+ {
376
+ "indexed": false,
377
+ "internalType": "bool",
378
+ "name": "resolveSenderToName",
379
+ "type": "bool"
380
+ }
381
+ ],
382
+ "name": "PreparedMailSent",
383
+ "type": "event"
384
+ },
385
+ {
386
+ "anonymous": false,
387
+ "inputs": [
388
+ {
389
+ "indexed": true,
390
+ "internalType": "address",
391
+ "name": "from",
392
+ "type": "address"
393
+ },
394
+ {
395
+ "indexed": false,
396
+ "internalType": "string",
397
+ "name": "toEmail",
398
+ "type": "string"
399
+ },
400
+ {
401
+ "indexed": true,
402
+ "internalType": "string",
403
+ "name": "mailId",
404
+ "type": "string"
405
+ }
406
+ ],
407
+ "name": "PreparedMailSentToEmail",
408
+ "type": "event"
409
+ },
410
+ {
411
+ "anonymous": false,
412
+ "inputs": [
413
+ {
414
+ "indexed": true,
415
+ "internalType": "address",
416
+ "name": "recipient",
417
+ "type": "address"
418
+ },
419
+ {
420
+ "indexed": false,
421
+ "internalType": "uint256",
422
+ "name": "amount",
423
+ "type": "uint256"
424
+ }
425
+ ],
426
+ "name": "RecipientClaimed",
427
+ "type": "event"
428
+ },
429
+ {
430
+ "anonymous": false,
431
+ "inputs": [
432
+ {
433
+ "indexed": true,
434
+ "internalType": "address",
435
+ "name": "recipient",
436
+ "type": "address"
437
+ },
438
+ {
439
+ "indexed": false,
440
+ "internalType": "uint256",
441
+ "name": "recipientAmount",
442
+ "type": "uint256"
443
+ },
444
+ {
445
+ "indexed": false,
446
+ "internalType": "uint256",
447
+ "name": "ownerAmount",
448
+ "type": "uint256"
449
+ }
450
+ ],
451
+ "name": "SharesRecorded",
452
+ "type": "event"
453
+ },
454
+ {
455
+ "anonymous": false,
456
+ "inputs": [
457
+ {
458
+ "indexed": true,
459
+ "internalType": "address",
460
+ "name": "from",
461
+ "type": "address"
462
+ },
463
+ {
464
+ "indexed": true,
465
+ "internalType": "address",
466
+ "name": "to",
467
+ "type": "address"
468
+ },
469
+ {
470
+ "indexed": true,
471
+ "internalType": "string",
472
+ "name": "webhookId",
473
+ "type": "string"
474
+ },
475
+ {
476
+ "indexed": false,
477
+ "internalType": "bool",
478
+ "name": "revenueShareToReceiver",
479
+ "type": "bool"
480
+ },
481
+ {
482
+ "indexed": false,
483
+ "internalType": "bool",
484
+ "name": "resolveSenderToName",
485
+ "type": "bool"
486
+ }
487
+ ],
488
+ "name": "WebhookMailSent",
489
+ "type": "event"
490
+ },
491
+ {
492
+ "inputs": [],
493
+ "name": "CLAIM_PERIOD",
494
+ "outputs": [
495
+ {
496
+ "internalType": "uint256",
497
+ "name": "",
498
+ "type": "uint256"
499
+ }
500
+ ],
501
+ "stateMutability": "view",
502
+ "type": "function"
503
+ },
504
+ {
505
+ "inputs": [],
506
+ "name": "OWNER_SHARE",
507
+ "outputs": [
508
+ {
509
+ "internalType": "uint256",
510
+ "name": "",
511
+ "type": "uint256"
512
+ }
513
+ ],
514
+ "stateMutability": "view",
515
+ "type": "function"
516
+ },
517
+ {
518
+ "inputs": [],
519
+ "name": "RECIPIENT_SHARE",
520
+ "outputs": [
521
+ {
522
+ "internalType": "uint256",
523
+ "name": "",
524
+ "type": "uint256"
525
+ }
526
+ ],
527
+ "stateMutability": "view",
528
+ "type": "function"
529
+ },
530
+ {
531
+ "inputs": [
532
+ {
533
+ "internalType": "address",
534
+ "name": "recipient",
535
+ "type": "address"
536
+ }
537
+ ],
538
+ "name": "claimExpiredShares",
539
+ "outputs": [],
540
+ "stateMutability": "nonpayable",
541
+ "type": "function"
542
+ },
543
+ {
544
+ "inputs": [],
545
+ "name": "claimOwnerShare",
546
+ "outputs": [],
547
+ "stateMutability": "nonpayable",
548
+ "type": "function"
549
+ },
550
+ {
551
+ "inputs": [],
552
+ "name": "claimRecipientShare",
553
+ "outputs": [],
554
+ "stateMutability": "nonpayable",
555
+ "type": "function"
556
+ },
557
+ {
558
+ "inputs": [
559
+ {
560
+ "internalType": "address",
561
+ "name": "account",
562
+ "type": "address"
563
+ }
564
+ ],
565
+ "name": "clearCustomFeePercentage",
566
+ "outputs": [],
567
+ "stateMutability": "nonpayable",
568
+ "type": "function"
569
+ },
570
+ {
571
+ "inputs": [
572
+ {
573
+ "internalType": "address",
574
+ "name": "",
575
+ "type": "address"
576
+ }
577
+ ],
578
+ "name": "customFeeDiscount",
579
+ "outputs": [
580
+ {
581
+ "internalType": "uint256",
582
+ "name": "",
583
+ "type": "uint256"
584
+ }
585
+ ],
586
+ "stateMutability": "view",
587
+ "type": "function"
588
+ },
589
+ {
590
+ "inputs": [
591
+ {
592
+ "internalType": "address",
593
+ "name": "delegate",
594
+ "type": "address"
595
+ }
596
+ ],
597
+ "name": "delegateTo",
598
+ "outputs": [],
599
+ "stateMutability": "nonpayable",
600
+ "type": "function"
601
+ },
602
+ {
603
+ "inputs": [],
604
+ "name": "delegationFee",
605
+ "outputs": [
606
+ {
607
+ "internalType": "uint256",
608
+ "name": "",
609
+ "type": "uint256"
610
+ }
611
+ ],
612
+ "stateMutability": "view",
613
+ "type": "function"
614
+ },
615
+ {
616
+ "inputs": [
617
+ {
618
+ "internalType": "address",
619
+ "name": "recipient",
620
+ "type": "address"
621
+ }
622
+ ],
623
+ "name": "distributeClaimableFunds",
624
+ "outputs": [],
625
+ "stateMutability": "nonpayable",
626
+ "type": "function"
627
+ },
628
+ {
629
+ "inputs": [],
630
+ "name": "emergencyUnpause",
631
+ "outputs": [],
632
+ "stateMutability": "nonpayable",
633
+ "type": "function"
634
+ },
635
+ {
636
+ "inputs": [
637
+ {
638
+ "internalType": "address",
639
+ "name": "account",
640
+ "type": "address"
641
+ }
642
+ ],
643
+ "name": "getCustomFeePercentage",
644
+ "outputs": [
645
+ {
646
+ "internalType": "uint256",
647
+ "name": "",
648
+ "type": "uint256"
649
+ }
650
+ ],
651
+ "stateMutability": "view",
652
+ "type": "function"
653
+ },
654
+ {
655
+ "inputs": [],
656
+ "name": "getDelegationFee",
657
+ "outputs": [
658
+ {
659
+ "internalType": "uint256",
660
+ "name": "",
661
+ "type": "uint256"
662
+ }
663
+ ],
664
+ "stateMutability": "view",
665
+ "type": "function"
666
+ },
667
+ {
668
+ "inputs": [],
669
+ "name": "getFee",
670
+ "outputs": [
671
+ {
672
+ "internalType": "uint256",
673
+ "name": "",
674
+ "type": "uint256"
675
+ }
676
+ ],
677
+ "stateMutability": "view",
678
+ "type": "function"
679
+ },
680
+ {
681
+ "inputs": [],
682
+ "name": "getOwnerClaimable",
683
+ "outputs": [
684
+ {
685
+ "internalType": "uint256",
686
+ "name": "",
687
+ "type": "uint256"
688
+ }
689
+ ],
690
+ "stateMutability": "view",
691
+ "type": "function"
692
+ },
693
+ {
694
+ "inputs": [
695
+ {
696
+ "internalType": "address",
697
+ "name": "recipient",
698
+ "type": "address"
699
+ }
700
+ ],
701
+ "name": "getRecipientClaimable",
702
+ "outputs": [
703
+ {
704
+ "internalType": "uint256",
705
+ "name": "amount",
706
+ "type": "uint256"
707
+ },
708
+ {
709
+ "internalType": "uint256",
710
+ "name": "expiresAt",
711
+ "type": "uint256"
712
+ },
713
+ {
714
+ "internalType": "bool",
715
+ "name": "isExpired",
716
+ "type": "bool"
717
+ }
718
+ ],
719
+ "stateMutability": "view",
720
+ "type": "function"
721
+ },
722
+ {
723
+ "inputs": [],
724
+ "name": "isPaused",
725
+ "outputs": [
726
+ {
727
+ "internalType": "bool",
728
+ "name": "",
729
+ "type": "bool"
730
+ }
731
+ ],
732
+ "stateMutability": "view",
733
+ "type": "function"
734
+ },
735
+ {
736
+ "inputs": [],
737
+ "name": "owner",
738
+ "outputs": [
739
+ {
740
+ "internalType": "address",
741
+ "name": "",
742
+ "type": "address"
743
+ }
744
+ ],
745
+ "stateMutability": "view",
746
+ "type": "function"
747
+ },
748
+ {
749
+ "inputs": [],
750
+ "name": "ownerClaimable",
751
+ "outputs": [
752
+ {
753
+ "internalType": "uint256",
754
+ "name": "",
755
+ "type": "uint256"
756
+ }
757
+ ],
758
+ "stateMutability": "view",
759
+ "type": "function"
760
+ },
761
+ {
762
+ "inputs": [],
763
+ "name": "pause",
764
+ "outputs": [],
765
+ "stateMutability": "nonpayable",
766
+ "type": "function"
767
+ },
768
+ {
769
+ "inputs": [],
770
+ "name": "paused",
771
+ "outputs": [
772
+ {
773
+ "internalType": "bool",
774
+ "name": "",
775
+ "type": "bool"
776
+ }
777
+ ],
778
+ "stateMutability": "view",
779
+ "type": "function"
780
+ },
781
+ {
782
+ "inputs": [
783
+ {
784
+ "internalType": "address",
785
+ "name": "",
786
+ "type": "address"
787
+ },
788
+ {
789
+ "internalType": "address",
790
+ "name": "",
791
+ "type": "address"
792
+ }
793
+ ],
794
+ "name": "permissions",
795
+ "outputs": [
796
+ {
797
+ "internalType": "bool",
798
+ "name": "",
799
+ "type": "bool"
800
+ }
801
+ ],
802
+ "stateMutability": "view",
803
+ "type": "function"
804
+ },
805
+ {
806
+ "inputs": [
807
+ {
808
+ "internalType": "address",
809
+ "name": "",
810
+ "type": "address"
811
+ }
812
+ ],
813
+ "name": "recipientClaims",
814
+ "outputs": [
815
+ {
816
+ "internalType": "uint256",
817
+ "name": "amount",
818
+ "type": "uint256"
819
+ },
820
+ {
821
+ "internalType": "uint256",
822
+ "name": "timestamp",
823
+ "type": "uint256"
824
+ }
825
+ ],
826
+ "stateMutability": "view",
827
+ "type": "function"
828
+ },
829
+ {
830
+ "inputs": [
831
+ {
832
+ "internalType": "address",
833
+ "name": "delegatingAddress",
834
+ "type": "address"
835
+ }
836
+ ],
837
+ "name": "rejectDelegation",
838
+ "outputs": [],
839
+ "stateMutability": "nonpayable",
840
+ "type": "function"
841
+ },
842
+ {
843
+ "inputs": [
844
+ {
845
+ "internalType": "address",
846
+ "name": "contractAddress",
847
+ "type": "address"
848
+ }
849
+ ],
850
+ "name": "removePermission",
851
+ "outputs": [],
852
+ "stateMutability": "nonpayable",
853
+ "type": "function"
854
+ },
855
+ {
856
+ "inputs": [
857
+ {
858
+ "internalType": "address",
859
+ "name": "to",
860
+ "type": "address"
861
+ },
862
+ {
863
+ "internalType": "string",
864
+ "name": "subject",
865
+ "type": "string"
866
+ },
867
+ {
868
+ "internalType": "string",
869
+ "name": "body",
870
+ "type": "string"
871
+ },
872
+ {
873
+ "internalType": "address",
874
+ "name": "payer",
875
+ "type": "address"
876
+ },
877
+ {
878
+ "internalType": "bool",
879
+ "name": "revenueShareToReceiver",
880
+ "type": "bool"
881
+ },
882
+ {
883
+ "internalType": "bool",
884
+ "name": "resolveSenderToName",
885
+ "type": "bool"
886
+ }
887
+ ],
888
+ "name": "send",
889
+ "outputs": [],
890
+ "stateMutability": "nonpayable",
891
+ "type": "function"
892
+ },
893
+ {
894
+ "inputs": [],
895
+ "name": "sendFee",
896
+ "outputs": [
897
+ {
898
+ "internalType": "uint256",
899
+ "name": "",
900
+ "type": "uint256"
901
+ }
902
+ ],
903
+ "stateMutability": "view",
904
+ "type": "function"
905
+ },
906
+ {
907
+ "inputs": [
908
+ {
909
+ "internalType": "address",
910
+ "name": "to",
911
+ "type": "address"
912
+ },
913
+ {
914
+ "internalType": "string",
915
+ "name": "mailId",
916
+ "type": "string"
917
+ },
918
+ {
919
+ "internalType": "address",
920
+ "name": "payer",
921
+ "type": "address"
922
+ },
923
+ {
924
+ "internalType": "bool",
925
+ "name": "revenueShareToReceiver",
926
+ "type": "bool"
927
+ },
928
+ {
929
+ "internalType": "bool",
930
+ "name": "resolveSenderToName",
931
+ "type": "bool"
932
+ }
933
+ ],
934
+ "name": "sendPrepared",
935
+ "outputs": [],
936
+ "stateMutability": "nonpayable",
937
+ "type": "function"
938
+ },
939
+ {
940
+ "inputs": [
941
+ {
942
+ "internalType": "string",
943
+ "name": "toEmail",
944
+ "type": "string"
945
+ },
946
+ {
947
+ "internalType": "string",
948
+ "name": "mailId",
949
+ "type": "string"
950
+ },
951
+ {
952
+ "internalType": "address",
953
+ "name": "payer",
954
+ "type": "address"
955
+ }
956
+ ],
957
+ "name": "sendPreparedToEmailAddress",
958
+ "outputs": [],
959
+ "stateMutability": "nonpayable",
960
+ "type": "function"
961
+ },
962
+ {
963
+ "inputs": [
964
+ {
965
+ "internalType": "address",
966
+ "name": "to",
967
+ "type": "address"
968
+ },
969
+ {
970
+ "internalType": "string",
971
+ "name": "webhookId",
972
+ "type": "string"
973
+ },
974
+ {
975
+ "internalType": "address",
976
+ "name": "payer",
977
+ "type": "address"
978
+ },
979
+ {
980
+ "internalType": "bool",
981
+ "name": "revenueShareToReceiver",
982
+ "type": "bool"
983
+ },
984
+ {
985
+ "internalType": "bool",
986
+ "name": "resolveSenderToName",
987
+ "type": "bool"
988
+ }
989
+ ],
990
+ "name": "sendThroughWebhook",
991
+ "outputs": [],
992
+ "stateMutability": "nonpayable",
993
+ "type": "function"
994
+ },
995
+ {
996
+ "inputs": [
997
+ {
998
+ "internalType": "string",
999
+ "name": "toEmail",
1000
+ "type": "string"
1001
+ },
1002
+ {
1003
+ "internalType": "string",
1004
+ "name": "subject",
1005
+ "type": "string"
1006
+ },
1007
+ {
1008
+ "internalType": "string",
1009
+ "name": "body",
1010
+ "type": "string"
1011
+ },
1012
+ {
1013
+ "internalType": "address",
1014
+ "name": "payer",
1015
+ "type": "address"
1016
+ }
1017
+ ],
1018
+ "name": "sendToEmailAddress",
1019
+ "outputs": [],
1020
+ "stateMutability": "nonpayable",
1021
+ "type": "function"
1022
+ },
1023
+ {
1024
+ "inputs": [
1025
+ {
1026
+ "internalType": "address",
1027
+ "name": "account",
1028
+ "type": "address"
1029
+ },
1030
+ {
1031
+ "internalType": "uint256",
1032
+ "name": "percentage",
1033
+ "type": "uint256"
1034
+ }
1035
+ ],
1036
+ "name": "setCustomFeePercentage",
1037
+ "outputs": [],
1038
+ "stateMutability": "nonpayable",
1039
+ "type": "function"
1040
+ },
1041
+ {
1042
+ "inputs": [
1043
+ {
1044
+ "internalType": "uint256",
1045
+ "name": "usdcAmount",
1046
+ "type": "uint256"
1047
+ }
1048
+ ],
1049
+ "name": "setDelegationFee",
1050
+ "outputs": [],
1051
+ "stateMutability": "nonpayable",
1052
+ "type": "function"
1053
+ },
1054
+ {
1055
+ "inputs": [
1056
+ {
1057
+ "internalType": "uint256",
1058
+ "name": "usdcAmount",
1059
+ "type": "uint256"
1060
+ }
1061
+ ],
1062
+ "name": "setFee",
1063
+ "outputs": [],
1064
+ "stateMutability": "nonpayable",
1065
+ "type": "function"
1066
+ },
1067
+ {
1068
+ "inputs": [
1069
+ {
1070
+ "internalType": "address",
1071
+ "name": "contractAddress",
1072
+ "type": "address"
1073
+ }
1074
+ ],
1075
+ "name": "setPermission",
1076
+ "outputs": [],
1077
+ "stateMutability": "nonpayable",
1078
+ "type": "function"
1079
+ },
1080
+ {
1081
+ "inputs": [],
1082
+ "name": "unpause",
1083
+ "outputs": [],
1084
+ "stateMutability": "nonpayable",
1085
+ "type": "function"
1086
+ },
1087
+ {
1088
+ "inputs": [],
1089
+ "name": "usdcToken",
1090
+ "outputs": [
1091
+ {
1092
+ "internalType": "contract IERC20",
1093
+ "name": "",
1094
+ "type": "address"
1095
+ }
1096
+ ],
1097
+ "stateMutability": "view",
1098
+ "type": "function"
1099
+ }
1100
+ ],
1101
+ "bytecode": "0x60c0604052620186a0600055629896806001553480156200001f57600080fd5b5060405162002251380380620022518339810160408190526200004291620000b4565b6001600160a01b03821615806200006057506001600160a01b038116155b156200007f5760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b039182166080521660a052620000ec565b80516001600160a01b0381168114620000af57600080fd5b919050565b60008060408385031215620000c857600080fd5b620000d38362000097565b9150620000e36020840162000097565b90509250929050565b60805160a0516120c162000190600039600081816103df01528181610543015281816107d30152818161087d0152818161098301528181610a2401528181610c5001528181610e4801528181610ef301528181611030015281816110c80152818161117101526114e2015260008181610250015281816108af01528181610b70015281816110fa0152818161134a015281816117ff015261198901526120c16000f3fe608060405234801561001057600080fd5b50600436106102315760003560e01c80638456cb5911610130578063b85a35d2116100b8578063d15786871161007c578063d1578687146104ee578063dbb24ff5146104f6578063e074bb4714610509578063ebf77de01461051c578063f2292f091461052f57600080fd5b8063b85a35d214610487578063bbb2fe7c1461049a578063c5f0a58f146104ad578063cd564ccd146104b6578063ced72f87146104e657600080fd5b80639ded51dd116100ff5780639ded51dd1461041c578063a3a336bf14610424578063ac637c7a14610460578063ae39279f14610473578063b187bd261461047c57600080fd5b80638456cb59146103d25780638da5cb5b146103da5780638db3c5fd14610401578063931e02381461040957600080fd5b80633ff5aecd116101be578063585450141161018257806358545014146103845780635c975abb1461039757806369fe0e2d146103a45780636a1c6e78146103b7578063720e586f146103bf57600080fd5b80633ff5aecd1461032e5780634a4e3bd51461034e5780634b0b1b8b1461035657806355bfc81c1461035e578063573321bb1461037157600080fd5b806327fe3a031161020557806327fe3a03146102e5578063285298af146102f85780632fad573e1461030b578063358cbf0a1461031e5780633f4ba83a1461032657600080fd5b80620270a41461023657806311eac8551461024b5780631f9838b51461028f57806321241dfe146102cd575b600080fd5b610249610244366004611bc0565b610538565b005b6102727f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b6102bd61029d366004611be2565b600760209081526000928352604080842090915290825290205460ff1681565b6040519015158152602001610286565b6102d7624f1a0081565b604051908152602001610286565b6102496102f3366004611c6f565b610625565b6102d7610306366004611bc0565b6106ea565b610249610319366004611c6f565b610714565b6102496107c8565b610249610978565b6102d761033c366004611bc0565b60066020526000908152604090205481565b610249610a19565b610249610aba565b61024961036c366004611cfa565b610c45565b61024961037f366004611d13565b610cf8565b610249610392366004611bc0565b610db3565b6005546102bd9060ff1681565b6102496103b2366004611cfa565b610e3d565b6102d7600a81565b6102496103cd366004611bc0565b610ee8565b610249611025565b6102727f000000000000000000000000000000000000000000000000000000000000000081565b6102d7605a81565b610249610417366004611dcb565b61120b565b6001546102d7565b61044b610432366004611bc0565b6002602052600090815260409020805460019091015482565b60408051928352602083019190915201610286565b61024961046e366004611bc0565b6112ca565b6102d760005481565b60055460ff166102bd565b610249610495366004611bc0565b611433565b6102496104a8366004611e4c565b6114d7565b6102d760015481565b6104c96104c4366004611bc0565b6115f3565b604080519384526020840192909252151590820152606001610286565b6000546102d7565b6003546102d7565b610249610504366004611e76565b611640565b610249610517366004611bc0565b6116f1565b61024961052a366004611bc0565b61176e565b6102d760035481565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461058157604051635fc483c560e01b815260040160405180910390fd5b60055460ff16156105a5576040516306d39fcd60e41b815260040160405180910390fd5b6001600160a01b0381166105cc5760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b03811660008181526006602052604080822091909155517fb6ddac613582447a8fcbbe869621560344bdbe26d6fea183b1e155cd223d864d9061061a906064815260200190565b60405180910390a250565b600454600103610648576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff1615610671576040516306d39fcd60e41b815260040160405180910390fd5b61067c8387846118cc565b848460405161068c929190611f21565b6040805191829003822084151583528315156020840152916001600160a01b0389169133917f6c92a5c8a1b6c49076a075d1a499458f543fd2588ea971574373865f817ce83d91015b60405180910390a45050600060045550505050565b6001600160a01b03811660009081526006602052604081205461070e906064611f47565b92915050565b600454600103610737576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff1615610760576040516306d39fcd60e41b815260040160405180910390fd5b61076b8387846118cc565b848460405161077b929190611f21565b6040805191829003822084151583528315156020840152916001600160a01b0389169133917f6a00347d56e88979c493ca2baa527a6cd1009b34431c4ef1021a5c0edd78562591016106d5565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461081157604051635fc483c560e01b815260040160405180910390fd5b600454600103610834576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560035460000361085c5760405163493c1ab760e01b815260040160405180910390fd5b6003805460009182905560405163a9059cbb60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152602482018390529192917f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af11580156108f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061091c9190611f5a565b90508061093c576040516312171d8360e31b815260040160405180910390fd5b6040518281527f81521279371b94892737e5e06851c322303c72e5493db1453314ea08f55cb9379060200160405180910390a150506000600455565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146109c157604051635fc483c560e01b815260040160405180910390fd5b60055460ff166109e45760405163dcdde9dd60e01b815260040160405180910390fd5b6005805460ff191690556040517f0e5e3b3fb504c22cf5c42fa07d521225937514c654007e1f12646f89768d6f9490600090a1565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610a6257604051635fc483c560e01b815260040160405180910390fd5b60055460ff16610a855760405163dcdde9dd60e01b815260040160405180910390fd5b6005805460ff191690556040517f15de7ad89d29fd1c6d2e6b1e878453569b4080edf34e0105faaa3bd52f01853090600090a1565b600454600103610add576040516345f5ce8b60e11b815260040160405180910390fd5b60016004553360009081526002602052604081208054909103610b135760405163493c1ab760e01b815260040160405180910390fd5b624f1a008160010154610b269190611f77565b421115610b465760405163493c1ab760e01b815260040160405180910390fd5b805460008083556001830181905560405163a9059cbb60e01b8152336004820152602481018390527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015610bc1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610be59190611f5a565b905080610c05576040516312171d8360e31b815260040160405180910390fd5b60405182815233907f6673747791df7fe01578fcaebe4082d6d7680f052dbdd7d2cf345f88121be421906020015b60405180910390a25050600060045550565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610c8e57604051635fc483c560e01b815260040160405180910390fd5b60055460ff1615610cb2576040516306d39fcd60e41b815260040160405180910390fd5b600180549082905560408051828152602081018490527f83b05743f1284b2faed08b3f927951e6663e5277e09a40c939f0dfe5075af77891015b60405180910390a15050565b600454600103610d1b576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff1615610d44576040516306d39fcd60e41b815260040160405180910390fd5b610d4f8389846118cc565b876001600160a01b0316336001600160a01b03167f4576724219bca1c695ff280c4eba3f012c99252acd6c7d90c0407f63f8e6ad26898989898888604051610d9c96959493929190611fb3565b60405180910390a350506000600455505050505050565b600454600103610dd6576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff1615610dff576040516306d39fcd60e41b815260040160405180910390fd5b6040516000906001600160a01b038316907f39e3ace752997a751bda5ecf126da84d0d23d5e61f3f56f26a6b22990d7beed8908390a3506000600455565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610e8657604051635fc483c560e01b815260040160405180910390fd5b60055460ff1615610eaa576040516306d39fcd60e41b815260040160405180910390fd5b600080549082905560408051828152602081018490527f528d9479e9f9889a87a3c30c7f7ba537e5e59c4c85a37733b16e57c62df613029101610cec565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610f3157604051635fc483c560e01b815260040160405180910390fd5b600454600103610f54576040516345f5ce8b60e11b815260040160405180910390fd5b60016004556001600160a01b03811660009081526002602052604081208054909103610f935760405163493c1ab760e01b815260040160405180910390fd5b624f1a008160010154610fa69190611f77565b4211610fc5576040516326f6703f60e11b815260040160405180910390fd5b805460008083556001830181905560038054839290610fe5908490611f77565b90915550506040518181526001600160a01b038416907fb4572b7f0782a4b7672a2341d00e4f1a0af99d81a3f8e959f25ff679eb31448190602001610c33565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461106e57604051635fc483c560e01b815260040160405180910390fd5b60055460ff1615611092576040516306d39fcd60e41b815260040160405180910390fd5b6005805460ff19166001179055600354156111e0576003805460009182905560405163a9059cbb60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152602482018390529192917f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af1158015611143573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111679190611f5a565b905080156111d7577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03167f26536799ace2c3dbe12e638ec3ade6b4173dcf1289be0a58d51a5003015649bd836040516111ca91815260200190565b60405180910390a26111dd565b60038290555b50505b6040517fab35696f06e428ebc5ceba8cd17f8fed287baf43440206d1943af1ee53e6d26790600090a1565b60045460010361122e576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff1615611257576040516306d39fcd60e41b815260040160405180910390fd5b611263816000806118cc565b8282604051611273929190611f21565b6040518091039020336001600160a01b03167ffadda1f12158473f0f6a95450c4108a36fc8aa62f3dee6a9de94c8c59947044387876040516112b6929190611ff5565b60405180910390a350506000600455505050565b6004546001036112ed576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff1615611316576040516306d39fcd60e41b815260040160405180910390fd5b6001600160a01b038116156113f5576001546040516323b872dd60e01b8152336004820152306024820152604481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906323b872dd906064016020604051808303816000875af115801561139b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113bf9190611f5a565b6113dc57604051634aa23e8f60e11b815260040160405180910390fd5b80600360008282546113ee9190611f77565b9091555050505b6040516001600160a01b0382169033907f39e3ace752997a751bda5ecf126da84d0d23d5e61f3f56f26a6b22990d7beed890600090a3506000600455565b60055460ff1615611457576040516306d39fcd60e41b815260040160405180910390fd5b6001600160a01b03811661147e5760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b0381166000818152600760209081526040808320338085529252808320805460ff19166001179055519092917f0ceda602a8e00ef76afe24614343eb6c034877c816b6184d641d2d8b713a0fc691a350565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461152057604051635fc483c560e01b815260040160405180910390fd5b60055460ff1615611544576040516306d39fcd60e41b815260040160405180910390fd5b6001600160a01b03821661156b5760405163e6c4247b60e01b815260040160405180910390fd5b606481111561158d57604051631f3b85d360e01b815260040160405180910390fd5b611598816064611f47565b6001600160a01b038316600081815260066020526040908190209290925590517fb6ddac613582447a8fcbbe869621560344bdbe26d6fea183b1e155cd223d864d906115e79084815260200190565b60405180910390a25050565b6001600160a01b038116600090815260026020526040812080546001820154909291829161162590624f1a0090611f77565b81549093501580159061163757508242115b93959294505050565b600454600103611663576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff161561168c576040516306d39fcd60e41b815260040160405180910390fd5b611698816000806118cc565b336001600160a01b03167fe137336c26280396075fb19ebe313eb4c539c2d845386ad035d8dee029bba3138888888888886040516116db96959493929190612009565b60405180910390a2505060006004555050505050565b6001600160a01b0381166117185760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b0381166000818152600760209081526040808320338085529252808320805460ff19169055519092917f5f708ef9fc37d19d88246c264788c8cdf640c9ff500bd168e941ea1421c4f6c491a350565b60055460ff166117915760405163dcdde9dd60e01b815260040160405180910390fd5b6001600160a01b038116600090815260026020526040812080549091036117cb5760405163493c1ab760e01b815260040160405180910390fd5b805460008083556001830181905560405163a9059cbb60e01b81526001600160a01b038581166004830152602482018490527f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af1158015611848573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061186c9190611f5a565b905080156118bc57836001600160a01b03167f26536799ace2c3dbe12e638ec3ade6b4173dcf1289be0a58d51a5003015649bd836040516118af91815260200190565b60405180910390a26118c6565b8183554260018401555b50505050565b336001600160a01b0384161480159061190957503360009081526007602090815260408083206001600160a01b038716845290915290205460ff16155b156119275760405163184d62c560e01b815260040160405180910390fd5b600061193584600054611a5d565b9050806000036119455750505050565b600082611958576064600a83020461195a565b815b6040516323b872dd60e01b81526001600160a01b038781166004830152306024830152604482018390529192507f0000000000000000000000000000000000000000000000000000000000000000909116906323b872dd906064016020604051808303816000875af11580156119d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119f89190611f5a565b611a1557604051634aa23e8f60e11b815260040160405180910390fd5b828015611a2a57506001600160a01b03841615155b15611a3e57611a398483611a9e565b611a56565b8060036000828254611a509190611f77565b90915550505b5050505050565b6001600160a01b0382166000908152600660205260408120546064611a828282611f47565b611a8c9085612052565b611a969190612069565b949350505050565b611aab605a600019612069565b811115611acb57604051634eab2ea760e11b815260040160405180910390fd5b60006064611ada600a84612052565b611ae49190612069565b90506000611af28284611f47565b6001600160a01b038516600090815260026020526040812080549293508392909190611b1f908490611f77565b90915550506001600160a01b03841660009081526002602052604081204260019091015560038054849290611b55908490611f77565b909155505060408051828152602081018490526001600160a01b038616917fad83ccf4aebaf9db0cc5658b24e378a4a865a51b863e0289e3ee0e4947d97b1c910160405180910390a250505050565b80356001600160a01b0381168114611bbb57600080fd5b919050565b600060208284031215611bd257600080fd5b611bdb82611ba4565b9392505050565b60008060408385031215611bf557600080fd5b611bfe83611ba4565b9150611c0c60208401611ba4565b90509250929050565b60008083601f840112611c2757600080fd5b50813567ffffffffffffffff811115611c3f57600080fd5b602083019150836020828501011115611c5757600080fd5b9250929050565b8015158114611c6c57600080fd5b50565b60008060008060008060a08789031215611c8857600080fd5b611c9187611ba4565b9550602087013567ffffffffffffffff811115611cad57600080fd5b611cb989828a01611c15565b9096509450611ccc905060408801611ba4565b92506060870135611cdc81611c5e565b91506080870135611cec81611c5e565b809150509295509295509295565b600060208284031215611d0c57600080fd5b5035919050565b60008060008060008060008060c0898b031215611d2f57600080fd5b611d3889611ba4565b9750602089013567ffffffffffffffff80821115611d5557600080fd5b611d618c838d01611c15565b909950975060408b0135915080821115611d7a57600080fd5b50611d878b828c01611c15565b9096509450611d9a905060608a01611ba4565b92506080890135611daa81611c5e565b915060a0890135611dba81611c5e565b809150509295985092959890939650565b600080600080600060608688031215611de357600080fd5b853567ffffffffffffffff80821115611dfb57600080fd5b611e0789838a01611c15565b90975095506020880135915080821115611e2057600080fd5b50611e2d88828901611c15565b9094509250611e40905060408701611ba4565b90509295509295909350565b60008060408385031215611e5f57600080fd5b611e6883611ba4565b946020939093013593505050565b60008060008060008060006080888a031215611e9157600080fd5b873567ffffffffffffffff80821115611ea957600080fd5b611eb58b838c01611c15565b909950975060208a0135915080821115611ece57600080fd5b611eda8b838c01611c15565b909750955060408a0135915080821115611ef357600080fd5b50611f008a828b01611c15565b9094509250611f13905060608901611ba4565b905092959891949750929550565b8183823760009101908152919050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561070e5761070e611f31565b600060208284031215611f6c57600080fd5b8151611bdb81611c5e565b8082018082111561070e5761070e611f31565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b608081526000611fc760808301888a611f8a565b8281036020840152611fda818789611f8a565b94151560408401525050901515606090910152949350505050565b602081526000611a96602083018486611f8a565b60608152600061201d60608301888a611f8a565b8281036020840152612030818789611f8a565b90508281036040840152612045818587611f8a565b9998505050505050505050565b808202811582820484141761070e5761070e611f31565b60008261208657634e487b7160e01b600052601260045260246000fd5b50049056fea2646970667358221220bdb7b8067400d75405ab1fb3f11f89738859958485c40e306e1acf1686f2ff8364736f6c63430008180033",
1102
+ "deployedBytecode": "0x608060405234801561001057600080fd5b50600436106102315760003560e01c80638456cb5911610130578063b85a35d2116100b8578063d15786871161007c578063d1578687146104ee578063dbb24ff5146104f6578063e074bb4714610509578063ebf77de01461051c578063f2292f091461052f57600080fd5b8063b85a35d214610487578063bbb2fe7c1461049a578063c5f0a58f146104ad578063cd564ccd146104b6578063ced72f87146104e657600080fd5b80639ded51dd116100ff5780639ded51dd1461041c578063a3a336bf14610424578063ac637c7a14610460578063ae39279f14610473578063b187bd261461047c57600080fd5b80638456cb59146103d25780638da5cb5b146103da5780638db3c5fd14610401578063931e02381461040957600080fd5b80633ff5aecd116101be578063585450141161018257806358545014146103845780635c975abb1461039757806369fe0e2d146103a45780636a1c6e78146103b7578063720e586f146103bf57600080fd5b80633ff5aecd1461032e5780634a4e3bd51461034e5780634b0b1b8b1461035657806355bfc81c1461035e578063573321bb1461037157600080fd5b806327fe3a031161020557806327fe3a03146102e5578063285298af146102f85780632fad573e1461030b578063358cbf0a1461031e5780633f4ba83a1461032657600080fd5b80620270a41461023657806311eac8551461024b5780631f9838b51461028f57806321241dfe146102cd575b600080fd5b610249610244366004611bc0565b610538565b005b6102727f000000000000000000000000000000000000000000000000000000000000000081565b6040516001600160a01b0390911681526020015b60405180910390f35b6102bd61029d366004611be2565b600760209081526000928352604080842090915290825290205460ff1681565b6040519015158152602001610286565b6102d7624f1a0081565b604051908152602001610286565b6102496102f3366004611c6f565b610625565b6102d7610306366004611bc0565b6106ea565b610249610319366004611c6f565b610714565b6102496107c8565b610249610978565b6102d761033c366004611bc0565b60066020526000908152604090205481565b610249610a19565b610249610aba565b61024961036c366004611cfa565b610c45565b61024961037f366004611d13565b610cf8565b610249610392366004611bc0565b610db3565b6005546102bd9060ff1681565b6102496103b2366004611cfa565b610e3d565b6102d7600a81565b6102496103cd366004611bc0565b610ee8565b610249611025565b6102727f000000000000000000000000000000000000000000000000000000000000000081565b6102d7605a81565b610249610417366004611dcb565b61120b565b6001546102d7565b61044b610432366004611bc0565b6002602052600090815260409020805460019091015482565b60408051928352602083019190915201610286565b61024961046e366004611bc0565b6112ca565b6102d760005481565b60055460ff166102bd565b610249610495366004611bc0565b611433565b6102496104a8366004611e4c565b6114d7565b6102d760015481565b6104c96104c4366004611bc0565b6115f3565b604080519384526020840192909252151590820152606001610286565b6000546102d7565b6003546102d7565b610249610504366004611e76565b611640565b610249610517366004611bc0565b6116f1565b61024961052a366004611bc0565b61176e565b6102d760035481565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461058157604051635fc483c560e01b815260040160405180910390fd5b60055460ff16156105a5576040516306d39fcd60e41b815260040160405180910390fd5b6001600160a01b0381166105cc5760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b03811660008181526006602052604080822091909155517fb6ddac613582447a8fcbbe869621560344bdbe26d6fea183b1e155cd223d864d9061061a906064815260200190565b60405180910390a250565b600454600103610648576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff1615610671576040516306d39fcd60e41b815260040160405180910390fd5b61067c8387846118cc565b848460405161068c929190611f21565b6040805191829003822084151583528315156020840152916001600160a01b0389169133917f6c92a5c8a1b6c49076a075d1a499458f543fd2588ea971574373865f817ce83d91015b60405180910390a45050600060045550505050565b6001600160a01b03811660009081526006602052604081205461070e906064611f47565b92915050565b600454600103610737576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff1615610760576040516306d39fcd60e41b815260040160405180910390fd5b61076b8387846118cc565b848460405161077b929190611f21565b6040805191829003822084151583528315156020840152916001600160a01b0389169133917f6a00347d56e88979c493ca2baa527a6cd1009b34431c4ef1021a5c0edd78562591016106d5565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461081157604051635fc483c560e01b815260040160405180910390fd5b600454600103610834576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560035460000361085c5760405163493c1ab760e01b815260040160405180910390fd5b6003805460009182905560405163a9059cbb60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152602482018390529192917f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af11580156108f8573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061091c9190611f5a565b90508061093c576040516312171d8360e31b815260040160405180910390fd5b6040518281527f81521279371b94892737e5e06851c322303c72e5493db1453314ea08f55cb9379060200160405180910390a150506000600455565b336001600160a01b037f000000000000000000000000000000000000000000000000000000000000000016146109c157604051635fc483c560e01b815260040160405180910390fd5b60055460ff166109e45760405163dcdde9dd60e01b815260040160405180910390fd5b6005805460ff191690556040517f0e5e3b3fb504c22cf5c42fa07d521225937514c654007e1f12646f89768d6f9490600090a1565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610a6257604051635fc483c560e01b815260040160405180910390fd5b60055460ff16610a855760405163dcdde9dd60e01b815260040160405180910390fd5b6005805460ff191690556040517f15de7ad89d29fd1c6d2e6b1e878453569b4080edf34e0105faaa3bd52f01853090600090a1565b600454600103610add576040516345f5ce8b60e11b815260040160405180910390fd5b60016004553360009081526002602052604081208054909103610b135760405163493c1ab760e01b815260040160405180910390fd5b624f1a008160010154610b269190611f77565b421115610b465760405163493c1ab760e01b815260040160405180910390fd5b805460008083556001830181905560405163a9059cbb60e01b8152336004820152602481018390527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03169063a9059cbb906044016020604051808303816000875af1158015610bc1573d6000803e3d6000fd5b505050506040513d601f19601f82011682018060405250810190610be59190611f5a565b905080610c05576040516312171d8360e31b815260040160405180910390fd5b60405182815233907f6673747791df7fe01578fcaebe4082d6d7680f052dbdd7d2cf345f88121be421906020015b60405180910390a25050600060045550565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610c8e57604051635fc483c560e01b815260040160405180910390fd5b60055460ff1615610cb2576040516306d39fcd60e41b815260040160405180910390fd5b600180549082905560408051828152602081018490527f83b05743f1284b2faed08b3f927951e6663e5277e09a40c939f0dfe5075af77891015b60405180910390a15050565b600454600103610d1b576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff1615610d44576040516306d39fcd60e41b815260040160405180910390fd5b610d4f8389846118cc565b876001600160a01b0316336001600160a01b03167f4576724219bca1c695ff280c4eba3f012c99252acd6c7d90c0407f63f8e6ad26898989898888604051610d9c96959493929190611fb3565b60405180910390a350506000600455505050505050565b600454600103610dd6576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff1615610dff576040516306d39fcd60e41b815260040160405180910390fd5b6040516000906001600160a01b038316907f39e3ace752997a751bda5ecf126da84d0d23d5e61f3f56f26a6b22990d7beed8908390a3506000600455565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610e8657604051635fc483c560e01b815260040160405180910390fd5b60055460ff1615610eaa576040516306d39fcd60e41b815260040160405180910390fd5b600080549082905560408051828152602081018490527f528d9479e9f9889a87a3c30c7f7ba537e5e59c4c85a37733b16e57c62df613029101610cec565b336001600160a01b037f00000000000000000000000000000000000000000000000000000000000000001614610f3157604051635fc483c560e01b815260040160405180910390fd5b600454600103610f54576040516345f5ce8b60e11b815260040160405180910390fd5b60016004556001600160a01b03811660009081526002602052604081208054909103610f935760405163493c1ab760e01b815260040160405180910390fd5b624f1a008160010154610fa69190611f77565b4211610fc5576040516326f6703f60e11b815260040160405180910390fd5b805460008083556001830181905560038054839290610fe5908490611f77565b90915550506040518181526001600160a01b038416907fb4572b7f0782a4b7672a2341d00e4f1a0af99d81a3f8e959f25ff679eb31448190602001610c33565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461106e57604051635fc483c560e01b815260040160405180910390fd5b60055460ff1615611092576040516306d39fcd60e41b815260040160405180910390fd5b6005805460ff19166001179055600354156111e0576003805460009182905560405163a9059cbb60e01b81526001600160a01b037f000000000000000000000000000000000000000000000000000000000000000081166004830152602482018390529192917f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af1158015611143573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906111679190611f5a565b905080156111d7577f00000000000000000000000000000000000000000000000000000000000000006001600160a01b03167f26536799ace2c3dbe12e638ec3ade6b4173dcf1289be0a58d51a5003015649bd836040516111ca91815260200190565b60405180910390a26111dd565b60038290555b50505b6040517fab35696f06e428ebc5ceba8cd17f8fed287baf43440206d1943af1ee53e6d26790600090a1565b60045460010361122e576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff1615611257576040516306d39fcd60e41b815260040160405180910390fd5b611263816000806118cc565b8282604051611273929190611f21565b6040518091039020336001600160a01b03167ffadda1f12158473f0f6a95450c4108a36fc8aa62f3dee6a9de94c8c59947044387876040516112b6929190611ff5565b60405180910390a350506000600455505050565b6004546001036112ed576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff1615611316576040516306d39fcd60e41b815260040160405180910390fd5b6001600160a01b038116156113f5576001546040516323b872dd60e01b8152336004820152306024820152604481018290527f00000000000000000000000000000000000000000000000000000000000000006001600160a01b0316906323b872dd906064016020604051808303816000875af115801561139b573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906113bf9190611f5a565b6113dc57604051634aa23e8f60e11b815260040160405180910390fd5b80600360008282546113ee9190611f77565b9091555050505b6040516001600160a01b0382169033907f39e3ace752997a751bda5ecf126da84d0d23d5e61f3f56f26a6b22990d7beed890600090a3506000600455565b60055460ff1615611457576040516306d39fcd60e41b815260040160405180910390fd5b6001600160a01b03811661147e5760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b0381166000818152600760209081526040808320338085529252808320805460ff19166001179055519092917f0ceda602a8e00ef76afe24614343eb6c034877c816b6184d641d2d8b713a0fc691a350565b336001600160a01b037f0000000000000000000000000000000000000000000000000000000000000000161461152057604051635fc483c560e01b815260040160405180910390fd5b60055460ff1615611544576040516306d39fcd60e41b815260040160405180910390fd5b6001600160a01b03821661156b5760405163e6c4247b60e01b815260040160405180910390fd5b606481111561158d57604051631f3b85d360e01b815260040160405180910390fd5b611598816064611f47565b6001600160a01b038316600081815260066020526040908190209290925590517fb6ddac613582447a8fcbbe869621560344bdbe26d6fea183b1e155cd223d864d906115e79084815260200190565b60405180910390a25050565b6001600160a01b038116600090815260026020526040812080546001820154909291829161162590624f1a0090611f77565b81549093501580159061163757508242115b93959294505050565b600454600103611663576040516345f5ce8b60e11b815260040160405180910390fd5b600160045560055460ff161561168c576040516306d39fcd60e41b815260040160405180910390fd5b611698816000806118cc565b336001600160a01b03167fe137336c26280396075fb19ebe313eb4c539c2d845386ad035d8dee029bba3138888888888886040516116db96959493929190612009565b60405180910390a2505060006004555050505050565b6001600160a01b0381166117185760405163e6c4247b60e01b815260040160405180910390fd5b6001600160a01b0381166000818152600760209081526040808320338085529252808320805460ff19169055519092917f5f708ef9fc37d19d88246c264788c8cdf640c9ff500bd168e941ea1421c4f6c491a350565b60055460ff166117915760405163dcdde9dd60e01b815260040160405180910390fd5b6001600160a01b038116600090815260026020526040812080549091036117cb5760405163493c1ab760e01b815260040160405180910390fd5b805460008083556001830181905560405163a9059cbb60e01b81526001600160a01b038581166004830152602482018490527f0000000000000000000000000000000000000000000000000000000000000000169063a9059cbb906044016020604051808303816000875af1158015611848573d6000803e3d6000fd5b505050506040513d601f19601f8201168201806040525081019061186c9190611f5a565b905080156118bc57836001600160a01b03167f26536799ace2c3dbe12e638ec3ade6b4173dcf1289be0a58d51a5003015649bd836040516118af91815260200190565b60405180910390a26118c6565b8183554260018401555b50505050565b336001600160a01b0384161480159061190957503360009081526007602090815260408083206001600160a01b038716845290915290205460ff16155b156119275760405163184d62c560e01b815260040160405180910390fd5b600061193584600054611a5d565b9050806000036119455750505050565b600082611958576064600a83020461195a565b815b6040516323b872dd60e01b81526001600160a01b038781166004830152306024830152604482018390529192507f0000000000000000000000000000000000000000000000000000000000000000909116906323b872dd906064016020604051808303816000875af11580156119d4573d6000803e3d6000fd5b505050506040513d601f19601f820116820180604052508101906119f89190611f5a565b611a1557604051634aa23e8f60e11b815260040160405180910390fd5b828015611a2a57506001600160a01b03841615155b15611a3e57611a398483611a9e565b611a56565b8060036000828254611a509190611f77565b90915550505b5050505050565b6001600160a01b0382166000908152600660205260408120546064611a828282611f47565b611a8c9085612052565b611a969190612069565b949350505050565b611aab605a600019612069565b811115611acb57604051634eab2ea760e11b815260040160405180910390fd5b60006064611ada600a84612052565b611ae49190612069565b90506000611af28284611f47565b6001600160a01b038516600090815260026020526040812080549293508392909190611b1f908490611f77565b90915550506001600160a01b03841660009081526002602052604081204260019091015560038054849290611b55908490611f77565b909155505060408051828152602081018490526001600160a01b038616917fad83ccf4aebaf9db0cc5658b24e378a4a865a51b863e0289e3ee0e4947d97b1c910160405180910390a250505050565b80356001600160a01b0381168114611bbb57600080fd5b919050565b600060208284031215611bd257600080fd5b611bdb82611ba4565b9392505050565b60008060408385031215611bf557600080fd5b611bfe83611ba4565b9150611c0c60208401611ba4565b90509250929050565b60008083601f840112611c2757600080fd5b50813567ffffffffffffffff811115611c3f57600080fd5b602083019150836020828501011115611c5757600080fd5b9250929050565b8015158114611c6c57600080fd5b50565b60008060008060008060a08789031215611c8857600080fd5b611c9187611ba4565b9550602087013567ffffffffffffffff811115611cad57600080fd5b611cb989828a01611c15565b9096509450611ccc905060408801611ba4565b92506060870135611cdc81611c5e565b91506080870135611cec81611c5e565b809150509295509295509295565b600060208284031215611d0c57600080fd5b5035919050565b60008060008060008060008060c0898b031215611d2f57600080fd5b611d3889611ba4565b9750602089013567ffffffffffffffff80821115611d5557600080fd5b611d618c838d01611c15565b909950975060408b0135915080821115611d7a57600080fd5b50611d878b828c01611c15565b9096509450611d9a905060608a01611ba4565b92506080890135611daa81611c5e565b915060a0890135611dba81611c5e565b809150509295985092959890939650565b600080600080600060608688031215611de357600080fd5b853567ffffffffffffffff80821115611dfb57600080fd5b611e0789838a01611c15565b90975095506020880135915080821115611e2057600080fd5b50611e2d88828901611c15565b9094509250611e40905060408701611ba4565b90509295509295909350565b60008060408385031215611e5f57600080fd5b611e6883611ba4565b946020939093013593505050565b60008060008060008060006080888a031215611e9157600080fd5b873567ffffffffffffffff80821115611ea957600080fd5b611eb58b838c01611c15565b909950975060208a0135915080821115611ece57600080fd5b611eda8b838c01611c15565b909750955060408a0135915080821115611ef357600080fd5b50611f008a828b01611c15565b9094509250611f13905060608901611ba4565b905092959891949750929550565b8183823760009101908152919050565b634e487b7160e01b600052601160045260246000fd5b8181038181111561070e5761070e611f31565b600060208284031215611f6c57600080fd5b8151611bdb81611c5e565b8082018082111561070e5761070e611f31565b81835281816020850137506000828201602090810191909152601f909101601f19169091010190565b608081526000611fc760808301888a611f8a565b8281036020840152611fda818789611f8a565b94151560408401525050901515606090910152949350505050565b602081526000611a96602083018486611f8a565b60608152600061201d60608301888a611f8a565b8281036020840152612030818789611f8a565b90508281036040840152612045818587611f8a565b9998505050505050505050565b808202811582820484141761070e5761070e611f31565b60008261208657634e487b7160e01b600052601260045260246000fd5b50049056fea2646970667358221220bdb7b8067400d75405ab1fb3f11f89738859958485c40e306e1acf1686f2ff8364736f6c63430008180033",
1103
+ "linkReferences": {},
1104
+ "deployedLinkReferences": {}
1105
+ }
1106
+
1107
+ declare module "@nomicfoundation/hardhat-viem/types" {
1108
+ export function deployContract(
1109
+ contractName: "Mailer",
1110
+ constructorArgs: [_usdcToken: AbiParameterToPrimitiveType<{"name":"_usdcToken","type":"address"}>, _owner: AbiParameterToPrimitiveType<{"name":"_owner","type":"address"}>],
1111
+ config?: DeployContractConfig
1112
+ ): Promise<GetContractReturnType<Mailer$Type["abi"]>>;
1113
+ export function deployContract(
1114
+ contractName: "contracts/Mailer.sol:Mailer",
1115
+ constructorArgs: [_usdcToken: AbiParameterToPrimitiveType<{"name":"_usdcToken","type":"address"}>, _owner: AbiParameterToPrimitiveType<{"name":"_owner","type":"address"}>],
1116
+ config?: DeployContractConfig
1117
+ ): Promise<GetContractReturnType<Mailer$Type["abi"]>>;
1118
+
1119
+ export function sendDeploymentTransaction(
1120
+ contractName: "Mailer",
1121
+ constructorArgs: [_usdcToken: AbiParameterToPrimitiveType<{"name":"_usdcToken","type":"address"}>, _owner: AbiParameterToPrimitiveType<{"name":"_owner","type":"address"}>],
1122
+ config?: SendDeploymentTransactionConfig
1123
+ ): Promise<{
1124
+ contract: GetContractReturnType<Mailer$Type["abi"]>;
1125
+ deploymentTransaction: GetTransactionReturnType;
1126
+ }>;
1127
+ export function sendDeploymentTransaction(
1128
+ contractName: "contracts/Mailer.sol:Mailer",
1129
+ constructorArgs: [_usdcToken: AbiParameterToPrimitiveType<{"name":"_usdcToken","type":"address"}>, _owner: AbiParameterToPrimitiveType<{"name":"_owner","type":"address"}>],
1130
+ config?: SendDeploymentTransactionConfig
1131
+ ): Promise<{
1132
+ contract: GetContractReturnType<Mailer$Type["abi"]>;
1133
+ deploymentTransaction: GetTransactionReturnType;
1134
+ }>;
1135
+
1136
+ export function getContractAt(
1137
+ contractName: "Mailer",
1138
+ address: Address,
1139
+ config?: GetContractAtConfig
1140
+ ): Promise<GetContractReturnType<Mailer$Type["abi"]>>;
1141
+ export function getContractAt(
1142
+ contractName: "contracts/Mailer.sol:Mailer",
1143
+ address: Address,
1144
+ config?: GetContractAtConfig
1145
+ ): Promise<GetContractReturnType<Mailer$Type["abi"]>>;
1146
+ }