@bananapus/nana-sdk-core 2.16.0 → 2.18.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 (199) hide show
  1. package/dist/cjs/constants.d.ts +1 -13
  2. package/dist/cjs/constants.d.ts.map +1 -1
  3. package/dist/cjs/constants.js +4 -22
  4. package/dist/cjs/constants.js.map +1 -1
  5. package/dist/cjs/generated/abi/jbBuybackHookAbi.d.ts +1187 -0
  6. package/dist/cjs/generated/abi/jbBuybackHookAbi.d.ts.map +1 -0
  7. package/dist/cjs/generated/abi/jbBuybackHookAbi.js +841 -0
  8. package/dist/cjs/generated/abi/jbBuybackHookAbi.js.map +1 -0
  9. package/dist/cjs/generated/abi/jbBuybackHookRegistryAbi.d.ts +791 -0
  10. package/dist/cjs/generated/abi/jbBuybackHookRegistryAbi.d.ts.map +1 -0
  11. package/dist/cjs/generated/abi/jbBuybackHookRegistryAbi.js +632 -0
  12. package/dist/cjs/generated/abi/jbBuybackHookRegistryAbi.js.map +1 -0
  13. package/dist/cjs/generated/abi/jbControllerAbi.d.ts +2569 -0
  14. package/dist/cjs/generated/abi/jbControllerAbi.d.ts.map +1 -0
  15. package/dist/cjs/generated/abi/jbControllerAbi.js +1906 -0
  16. package/dist/cjs/generated/abi/jbControllerAbi.js.map +1 -0
  17. package/dist/cjs/generated/abi/jbDirectoryAbi.d.ts +410 -0
  18. package/dist/cjs/generated/abi/jbDirectoryAbi.d.ts.map +1 -0
  19. package/dist/cjs/generated/abi/jbDirectoryAbi.js +365 -0
  20. package/dist/cjs/generated/abi/jbDirectoryAbi.js.map +1 -0
  21. package/dist/cjs/generated/abi/jbMultiTerminalAbi.d.ts +1863 -0
  22. package/dist/cjs/generated/abi/jbMultiTerminalAbi.d.ts.map +1 -0
  23. package/dist/cjs/generated/abi/jbMultiTerminalAbi.js +1459 -0
  24. package/dist/cjs/generated/abi/jbMultiTerminalAbi.js.map +1 -0
  25. package/dist/cjs/generated/abi/jbPermissionsAbi.d.ts +240 -0
  26. package/dist/cjs/generated/abi/jbPermissionsAbi.d.ts.map +1 -0
  27. package/dist/cjs/generated/abi/jbPermissionsAbi.js +164 -0
  28. package/dist/cjs/generated/abi/jbPermissionsAbi.js.map +1 -0
  29. package/dist/cjs/generated/abi/jbProjectsAbi.d.ts +626 -0
  30. package/dist/cjs/generated/abi/jbProjectsAbi.d.ts.map +1 -0
  31. package/dist/cjs/generated/abi/jbProjectsAbi.js +470 -0
  32. package/dist/cjs/generated/abi/jbProjectsAbi.js.map +1 -0
  33. package/dist/cjs/generated/abi/jbRouterTerminalGatewayAbi.d.ts +1503 -0
  34. package/dist/cjs/generated/abi/jbRouterTerminalGatewayAbi.d.ts.map +1 -0
  35. package/dist/cjs/generated/abi/jbRouterTerminalGatewayAbi.js +1037 -0
  36. package/dist/cjs/generated/abi/jbRouterTerminalGatewayAbi.js.map +1 -0
  37. package/dist/cjs/generated/abi/jbRouterTerminalRegistryAbi.d.ts +1119 -0
  38. package/dist/cjs/generated/abi/jbRouterTerminalRegistryAbi.d.ts.map +1 -0
  39. package/dist/cjs/generated/abi/jbRouterTerminalRegistryAbi.js +925 -0
  40. package/dist/cjs/generated/abi/jbRouterTerminalRegistryAbi.js.map +1 -0
  41. package/dist/cjs/generated/abi/jbSplitsAbi.d.ts +244 -0
  42. package/dist/cjs/generated/abi/jbSplitsAbi.d.ts.map +1 -0
  43. package/dist/cjs/generated/abi/jbSplitsAbi.js +198 -0
  44. package/dist/cjs/generated/abi/jbSplitsAbi.js.map +1 -0
  45. package/dist/cjs/generated/abi/jbTokensAbi.d.ts +602 -0
  46. package/dist/cjs/generated/abi/jbTokensAbi.d.ts.map +1 -0
  47. package/dist/cjs/generated/abi/jbTokensAbi.js +501 -0
  48. package/dist/cjs/generated/abi/jbTokensAbi.js.map +1 -0
  49. package/dist/cjs/generated/juicebox.d.ts +25405 -36537
  50. package/dist/cjs/generated/juicebox.d.ts.map +1 -1
  51. package/dist/cjs/generated/juicebox.js +14362 -22761
  52. package/dist/cjs/generated/juicebox.js.map +1 -1
  53. package/dist/cjs/pureConstants.d.ts +15 -0
  54. package/dist/cjs/pureConstants.d.ts.map +1 -0
  55. package/dist/cjs/pureConstants.js +28 -0
  56. package/dist/cjs/pureConstants.js.map +1 -0
  57. package/dist/cjs/review/decode.d.ts.map +1 -1
  58. package/dist/cjs/review/decode.js +35 -51
  59. package/dist/cjs/review/decode.js.map +1 -1
  60. package/dist/cjs/review/relayr.d.ts +380 -0
  61. package/dist/cjs/review/relayr.d.ts.map +1 -0
  62. package/dist/cjs/review/relayr.js +899 -0
  63. package/dist/cjs/review/relayr.js.map +1 -0
  64. package/dist/cjs/safe.d.ts +376 -8
  65. package/dist/cjs/safe.d.ts.map +1 -1
  66. package/dist/cjs/safe.js +1088 -29
  67. package/dist/cjs/safe.js.map +1 -1
  68. package/dist/cjs/safeService.d.ts +361 -1
  69. package/dist/cjs/safeService.d.ts.map +1 -1
  70. package/dist/cjs/safeService.js +844 -6
  71. package/dist/cjs/safeService.js.map +1 -1
  72. package/dist/cjs/untrusted.d.ts +8 -0
  73. package/dist/cjs/untrusted.d.ts.map +1 -0
  74. package/dist/cjs/untrusted.js +33 -0
  75. package/dist/cjs/untrusted.js.map +1 -0
  76. package/dist/cjs/v6/distributions.d.ts +90 -0
  77. package/dist/cjs/v6/distributions.d.ts.map +1 -0
  78. package/dist/cjs/v6/distributions.js +287 -0
  79. package/dist/cjs/v6/distributions.js.map +1 -0
  80. package/dist/cjs/v6/index.d.ts +1 -0
  81. package/dist/cjs/v6/index.d.ts.map +1 -1
  82. package/dist/cjs/v6/index.js +1 -0
  83. package/dist/cjs/v6/index.js.map +1 -1
  84. package/dist/cjs/v6/permissionIds.d.ts +62 -0
  85. package/dist/cjs/v6/permissionIds.d.ts.map +1 -0
  86. package/dist/cjs/v6/permissionIds.js +70 -0
  87. package/dist/cjs/v6/permissionIds.js.map +1 -0
  88. package/dist/cjs/v6/permissions.d.ts +3 -62
  89. package/dist/cjs/v6/permissions.d.ts.map +1 -1
  90. package/dist/cjs/v6/permissions.js +6 -67
  91. package/dist/cjs/v6/permissions.js.map +1 -1
  92. package/dist/cjs/v6/splits.d.ts +1 -1
  93. package/dist/cjs/v6/splits.d.ts.map +1 -1
  94. package/dist/cjs/v6/splits.js +3 -3
  95. package/dist/cjs/v6/splits.js.map +1 -1
  96. package/dist/cjs/v6/sticky.d.ts +2 -2
  97. package/dist/cjs/v6/sticky.d.ts.map +1 -1
  98. package/dist/cjs/v6/types.d.ts +1 -1
  99. package/dist/cjs/v6/types.d.ts.map +1 -1
  100. package/dist/esm/constants.d.ts +1 -13
  101. package/dist/esm/constants.d.ts.map +1 -1
  102. package/dist/esm/constants.js +1 -21
  103. package/dist/esm/constants.js.map +1 -1
  104. package/dist/esm/generated/abi/jbBuybackHookAbi.d.ts +1187 -0
  105. package/dist/esm/generated/abi/jbBuybackHookAbi.d.ts.map +1 -0
  106. package/dist/esm/generated/abi/jbBuybackHookAbi.js +838 -0
  107. package/dist/esm/generated/abi/jbBuybackHookAbi.js.map +1 -0
  108. package/dist/esm/generated/abi/jbBuybackHookRegistryAbi.d.ts +791 -0
  109. package/dist/esm/generated/abi/jbBuybackHookRegistryAbi.d.ts.map +1 -0
  110. package/dist/esm/generated/abi/jbBuybackHookRegistryAbi.js +629 -0
  111. package/dist/esm/generated/abi/jbBuybackHookRegistryAbi.js.map +1 -0
  112. package/dist/esm/generated/abi/jbControllerAbi.d.ts +2569 -0
  113. package/dist/esm/generated/abi/jbControllerAbi.d.ts.map +1 -0
  114. package/dist/esm/generated/abi/jbControllerAbi.js +1903 -0
  115. package/dist/esm/generated/abi/jbControllerAbi.js.map +1 -0
  116. package/dist/esm/generated/abi/jbDirectoryAbi.d.ts +410 -0
  117. package/dist/esm/generated/abi/jbDirectoryAbi.d.ts.map +1 -0
  118. package/dist/esm/generated/abi/jbDirectoryAbi.js +362 -0
  119. package/dist/esm/generated/abi/jbDirectoryAbi.js.map +1 -0
  120. package/dist/esm/generated/abi/jbMultiTerminalAbi.d.ts +1863 -0
  121. package/dist/esm/generated/abi/jbMultiTerminalAbi.d.ts.map +1 -0
  122. package/dist/esm/generated/abi/jbMultiTerminalAbi.js +1456 -0
  123. package/dist/esm/generated/abi/jbMultiTerminalAbi.js.map +1 -0
  124. package/dist/esm/generated/abi/jbPermissionsAbi.d.ts +240 -0
  125. package/dist/esm/generated/abi/jbPermissionsAbi.d.ts.map +1 -0
  126. package/dist/esm/generated/abi/jbPermissionsAbi.js +161 -0
  127. package/dist/esm/generated/abi/jbPermissionsAbi.js.map +1 -0
  128. package/dist/esm/generated/abi/jbProjectsAbi.d.ts +626 -0
  129. package/dist/esm/generated/abi/jbProjectsAbi.d.ts.map +1 -0
  130. package/dist/esm/generated/abi/jbProjectsAbi.js +467 -0
  131. package/dist/esm/generated/abi/jbProjectsAbi.js.map +1 -0
  132. package/dist/esm/generated/abi/jbRouterTerminalGatewayAbi.d.ts +1503 -0
  133. package/dist/esm/generated/abi/jbRouterTerminalGatewayAbi.d.ts.map +1 -0
  134. package/dist/esm/generated/abi/jbRouterTerminalGatewayAbi.js +1034 -0
  135. package/dist/esm/generated/abi/jbRouterTerminalGatewayAbi.js.map +1 -0
  136. package/dist/esm/generated/abi/jbRouterTerminalRegistryAbi.d.ts +1119 -0
  137. package/dist/esm/generated/abi/jbRouterTerminalRegistryAbi.d.ts.map +1 -0
  138. package/dist/esm/generated/abi/jbRouterTerminalRegistryAbi.js +922 -0
  139. package/dist/esm/generated/abi/jbRouterTerminalRegistryAbi.js.map +1 -0
  140. package/dist/esm/generated/abi/jbSplitsAbi.d.ts +244 -0
  141. package/dist/esm/generated/abi/jbSplitsAbi.d.ts.map +1 -0
  142. package/dist/esm/generated/abi/jbSplitsAbi.js +195 -0
  143. package/dist/esm/generated/abi/jbSplitsAbi.js.map +1 -0
  144. package/dist/esm/generated/abi/jbTokensAbi.d.ts +602 -0
  145. package/dist/esm/generated/abi/jbTokensAbi.d.ts.map +1 -0
  146. package/dist/esm/generated/abi/jbTokensAbi.js +498 -0
  147. package/dist/esm/generated/abi/jbTokensAbi.js.map +1 -0
  148. package/dist/esm/generated/juicebox.d.ts +25405 -36537
  149. package/dist/esm/generated/juicebox.d.ts.map +1 -1
  150. package/dist/esm/generated/juicebox.js +14634 -23044
  151. package/dist/esm/generated/juicebox.js.map +1 -1
  152. package/dist/esm/pureConstants.d.ts +15 -0
  153. package/dist/esm/pureConstants.d.ts.map +1 -0
  154. package/dist/esm/pureConstants.js +25 -0
  155. package/dist/esm/pureConstants.js.map +1 -0
  156. package/dist/esm/review/decode.d.ts.map +1 -1
  157. package/dist/esm/review/decode.js +21 -37
  158. package/dist/esm/review/decode.js.map +1 -1
  159. package/dist/esm/review/relayr.d.ts +380 -0
  160. package/dist/esm/review/relayr.d.ts.map +1 -0
  161. package/dist/esm/review/relayr.js +874 -0
  162. package/dist/esm/review/relayr.js.map +1 -0
  163. package/dist/esm/safe.d.ts +376 -8
  164. package/dist/esm/safe.d.ts.map +1 -1
  165. package/dist/esm/safe.js +1070 -29
  166. package/dist/esm/safe.js.map +1 -1
  167. package/dist/esm/safeService.d.ts +361 -1
  168. package/dist/esm/safeService.d.ts.map +1 -1
  169. package/dist/esm/safeService.js +818 -5
  170. package/dist/esm/safeService.js.map +1 -1
  171. package/dist/esm/untrusted.d.ts +8 -0
  172. package/dist/esm/untrusted.d.ts.map +1 -0
  173. package/dist/esm/untrusted.js +28 -0
  174. package/dist/esm/untrusted.js.map +1 -0
  175. package/dist/esm/v6/distributions.d.ts +90 -0
  176. package/dist/esm/v6/distributions.d.ts.map +1 -0
  177. package/dist/esm/v6/distributions.js +283 -0
  178. package/dist/esm/v6/distributions.js.map +1 -0
  179. package/dist/esm/v6/index.d.ts +1 -0
  180. package/dist/esm/v6/index.d.ts.map +1 -1
  181. package/dist/esm/v6/index.js +1 -0
  182. package/dist/esm/v6/index.js.map +1 -1
  183. package/dist/esm/v6/permissionIds.d.ts +62 -0
  184. package/dist/esm/v6/permissionIds.d.ts.map +1 -0
  185. package/dist/esm/v6/permissionIds.js +66 -0
  186. package/dist/esm/v6/permissionIds.js.map +1 -0
  187. package/dist/esm/v6/permissions.d.ts +3 -62
  188. package/dist/esm/v6/permissions.d.ts.map +1 -1
  189. package/dist/esm/v6/permissions.js +2 -64
  190. package/dist/esm/v6/permissions.js.map +1 -1
  191. package/dist/esm/v6/splits.d.ts +1 -1
  192. package/dist/esm/v6/splits.d.ts.map +1 -1
  193. package/dist/esm/v6/splits.js +1 -1
  194. package/dist/esm/v6/splits.js.map +1 -1
  195. package/dist/esm/v6/sticky.d.ts +2 -2
  196. package/dist/esm/v6/sticky.d.ts.map +1 -1
  197. package/dist/esm/v6/types.d.ts +1 -1
  198. package/dist/esm/v6/types.d.ts.map +1 -1
  199. package/package.json +6 -1
@@ -0,0 +1,1903 @@
1
+ // Generated by scripts/addJBProjectDeploymentAddresses.ts. Do not edit.
2
+ // The review decoder reads this ABI, so it has a module of its own: a page
3
+ // that imports other ABIs from the SDK does not load it.
4
+ export const jbControllerAbi = [
5
+ {
6
+ type: 'constructor',
7
+ inputs: [
8
+ {
9
+ name: 'directory',
10
+ internalType: 'contract IJBDirectory',
11
+ type: 'address',
12
+ },
13
+ {
14
+ name: 'fundAccessLimits',
15
+ internalType: 'contract IJBFundAccessLimits',
16
+ type: 'address',
17
+ },
18
+ {
19
+ name: 'permissions',
20
+ internalType: 'contract IJBPermissions',
21
+ type: 'address',
22
+ },
23
+ { name: 'prices', internalType: 'contract IJBPrices', type: 'address' },
24
+ {
25
+ name: 'projects',
26
+ internalType: 'contract IJBProjects',
27
+ type: 'address',
28
+ },
29
+ {
30
+ name: 'rulesets',
31
+ internalType: 'contract IJBRulesets',
32
+ type: 'address',
33
+ },
34
+ { name: 'splits', internalType: 'contract IJBSplits', type: 'address' },
35
+ { name: 'tokens', internalType: 'contract IJBTokens', type: 'address' },
36
+ {
37
+ name: 'omnichainRulesetOperator',
38
+ internalType: 'address',
39
+ type: 'address',
40
+ },
41
+ { name: 'trustedForwarder', internalType: 'address', type: 'address' },
42
+ ],
43
+ stateMutability: 'nonpayable',
44
+ },
45
+ {
46
+ type: 'function',
47
+ inputs: [],
48
+ name: 'DIRECTORY',
49
+ outputs: [
50
+ { name: '', internalType: 'contract IJBDirectory', type: 'address' },
51
+ ],
52
+ stateMutability: 'view',
53
+ },
54
+ {
55
+ type: 'function',
56
+ inputs: [],
57
+ name: 'FUND_ACCESS_LIMITS',
58
+ outputs: [
59
+ {
60
+ name: '',
61
+ internalType: 'contract IJBFundAccessLimits',
62
+ type: 'address',
63
+ },
64
+ ],
65
+ stateMutability: 'view',
66
+ },
67
+ {
68
+ type: 'function',
69
+ inputs: [],
70
+ name: 'OMNICHAIN_RULESET_OPERATOR',
71
+ outputs: [{ name: '', internalType: 'address', type: 'address' }],
72
+ stateMutability: 'view',
73
+ },
74
+ {
75
+ type: 'function',
76
+ inputs: [],
77
+ name: 'PERMISSIONS',
78
+ outputs: [
79
+ { name: '', internalType: 'contract IJBPermissions', type: 'address' },
80
+ ],
81
+ stateMutability: 'view',
82
+ },
83
+ {
84
+ type: 'function',
85
+ inputs: [],
86
+ name: 'PRICES',
87
+ outputs: [
88
+ { name: '', internalType: 'contract IJBPrices', type: 'address' },
89
+ ],
90
+ stateMutability: 'view',
91
+ },
92
+ {
93
+ type: 'function',
94
+ inputs: [],
95
+ name: 'PROJECTS',
96
+ outputs: [
97
+ { name: '', internalType: 'contract IJBProjects', type: 'address' },
98
+ ],
99
+ stateMutability: 'view',
100
+ },
101
+ {
102
+ type: 'function',
103
+ inputs: [],
104
+ name: 'RULESETS',
105
+ outputs: [
106
+ { name: '', internalType: 'contract IJBRulesets', type: 'address' },
107
+ ],
108
+ stateMutability: 'view',
109
+ },
110
+ {
111
+ type: 'function',
112
+ inputs: [],
113
+ name: 'SPLITS',
114
+ outputs: [
115
+ { name: '', internalType: 'contract IJBSplits', type: 'address' },
116
+ ],
117
+ stateMutability: 'view',
118
+ },
119
+ {
120
+ type: 'function',
121
+ inputs: [],
122
+ name: 'TOKENS',
123
+ outputs: [
124
+ { name: '', internalType: 'contract IJBTokens', type: 'address' },
125
+ ],
126
+ stateMutability: 'view',
127
+ },
128
+ {
129
+ type: 'function',
130
+ inputs: [
131
+ { name: 'projectId', internalType: 'uint256', type: 'uint256' },
132
+ { name: 'pricingCurrency', internalType: 'uint256', type: 'uint256' },
133
+ { name: 'unitCurrency', internalType: 'uint256', type: 'uint256' },
134
+ { name: 'feed', internalType: 'contract IJBPriceFeed', type: 'address' },
135
+ ],
136
+ name: 'addPriceFeedFor',
137
+ outputs: [],
138
+ stateMutability: 'nonpayable',
139
+ },
140
+ {
141
+ type: 'function',
142
+ inputs: [
143
+ { name: 'from', internalType: 'contract IERC165', type: 'address' },
144
+ { name: 'projectId', internalType: 'uint256', type: 'uint256' },
145
+ ],
146
+ name: 'afterReceiveMigrationFrom',
147
+ outputs: [],
148
+ stateMutability: 'view',
149
+ },
150
+ {
151
+ type: 'function',
152
+ inputs: [
153
+ { name: 'projectId', internalType: 'uint256', type: 'uint256' },
154
+ { name: 'startingId', internalType: 'uint256', type: 'uint256' },
155
+ { name: 'size', internalType: 'uint256', type: 'uint256' },
156
+ ],
157
+ name: 'allRulesetsOf',
158
+ outputs: [
159
+ {
160
+ name: 'rulesets',
161
+ internalType: 'struct JBRulesetWithMetadata[]',
162
+ type: 'tuple[]',
163
+ components: [
164
+ {
165
+ name: 'ruleset',
166
+ internalType: 'struct JBRuleset',
167
+ type: 'tuple',
168
+ components: [
169
+ { name: 'cycleNumber', internalType: 'uint48', type: 'uint48' },
170
+ { name: 'id', internalType: 'uint48', type: 'uint48' },
171
+ { name: 'basedOnId', internalType: 'uint48', type: 'uint48' },
172
+ { name: 'start', internalType: 'uint48', type: 'uint48' },
173
+ { name: 'duration', internalType: 'uint32', type: 'uint32' },
174
+ { name: 'weight', internalType: 'uint112', type: 'uint112' },
175
+ {
176
+ name: 'weightCutPercent',
177
+ internalType: 'uint32',
178
+ type: 'uint32',
179
+ },
180
+ {
181
+ name: 'approvalHook',
182
+ internalType: 'contract IJBRulesetApprovalHook',
183
+ type: 'address',
184
+ },
185
+ { name: 'metadata', internalType: 'uint256', type: 'uint256' },
186
+ ],
187
+ },
188
+ {
189
+ name: 'metadata',
190
+ internalType: 'struct JBRulesetMetadata',
191
+ type: 'tuple',
192
+ components: [
193
+ {
194
+ name: 'reservedPercent',
195
+ internalType: 'uint16',
196
+ type: 'uint16',
197
+ },
198
+ {
199
+ name: 'cashOutTaxRate',
200
+ internalType: 'uint16',
201
+ type: 'uint16',
202
+ },
203
+ { name: 'baseCurrency', internalType: 'uint32', type: 'uint32' },
204
+ { name: 'pausePay', internalType: 'bool', type: 'bool' },
205
+ {
206
+ name: 'pauseCreditTransfers',
207
+ internalType: 'bool',
208
+ type: 'bool',
209
+ },
210
+ { name: 'allowOwnerMinting', internalType: 'bool', type: 'bool' },
211
+ {
212
+ name: 'allowSetCustomToken',
213
+ internalType: 'bool',
214
+ type: 'bool',
215
+ },
216
+ {
217
+ name: 'allowTerminalMigration',
218
+ internalType: 'bool',
219
+ type: 'bool',
220
+ },
221
+ { name: 'allowSetTerminals', internalType: 'bool', type: 'bool' },
222
+ {
223
+ name: 'allowSetController',
224
+ internalType: 'bool',
225
+ type: 'bool',
226
+ },
227
+ {
228
+ name: 'allowAddAccountingContext',
229
+ internalType: 'bool',
230
+ type: 'bool',
231
+ },
232
+ { name: 'allowAddPriceFeed', internalType: 'bool', type: 'bool' },
233
+ {
234
+ name: 'ownerMustSendPayouts',
235
+ internalType: 'bool',
236
+ type: 'bool',
237
+ },
238
+ { name: 'holdFees', internalType: 'bool', type: 'bool' },
239
+ {
240
+ name: 'scopeCashOutsToLocalBalances',
241
+ internalType: 'bool',
242
+ type: 'bool',
243
+ },
244
+ { name: 'useDataHookForPay', internalType: 'bool', type: 'bool' },
245
+ {
246
+ name: 'useDataHookForCashOut',
247
+ internalType: 'bool',
248
+ type: 'bool',
249
+ },
250
+ { name: 'dataHook', internalType: 'address', type: 'address' },
251
+ { name: 'metadata', internalType: 'uint16', type: 'uint16' },
252
+ ],
253
+ },
254
+ ],
255
+ },
256
+ ],
257
+ stateMutability: 'view',
258
+ },
259
+ {
260
+ type: 'function',
261
+ inputs: [
262
+ { name: 'from', internalType: 'contract IERC165', type: 'address' },
263
+ { name: 'projectId', internalType: 'uint256', type: 'uint256' },
264
+ ],
265
+ name: 'beforeReceiveMigrationFrom',
266
+ outputs: [],
267
+ stateMutability: 'nonpayable',
268
+ },
269
+ {
270
+ type: 'function',
271
+ inputs: [
272
+ { name: 'holder', internalType: 'address', type: 'address' },
273
+ { name: 'projectId', internalType: 'uint256', type: 'uint256' },
274
+ { name: 'tokenCount', internalType: 'uint256', type: 'uint256' },
275
+ { name: 'memo', internalType: 'string', type: 'string' },
276
+ ],
277
+ name: 'burnTokensOf',
278
+ outputs: [],
279
+ stateMutability: 'nonpayable',
280
+ },
281
+ {
282
+ type: 'function',
283
+ inputs: [
284
+ { name: 'holder', internalType: 'address', type: 'address' },
285
+ { name: 'projectId', internalType: 'uint256', type: 'uint256' },
286
+ { name: 'tokenCount', internalType: 'uint256', type: 'uint256' },
287
+ { name: 'beneficiary', internalType: 'address', type: 'address' },
288
+ ],
289
+ name: 'claimTokensFor',
290
+ outputs: [],
291
+ stateMutability: 'nonpayable',
292
+ },
293
+ {
294
+ type: 'function',
295
+ inputs: [{ name: 'projectId', internalType: 'uint256', type: 'uint256' }],
296
+ name: 'currentRulesetOf',
297
+ outputs: [
298
+ {
299
+ name: 'ruleset',
300
+ internalType: 'struct JBRuleset',
301
+ type: 'tuple',
302
+ components: [
303
+ { name: 'cycleNumber', internalType: 'uint48', type: 'uint48' },
304
+ { name: 'id', internalType: 'uint48', type: 'uint48' },
305
+ { name: 'basedOnId', internalType: 'uint48', type: 'uint48' },
306
+ { name: 'start', internalType: 'uint48', type: 'uint48' },
307
+ { name: 'duration', internalType: 'uint32', type: 'uint32' },
308
+ { name: 'weight', internalType: 'uint112', type: 'uint112' },
309
+ { name: 'weightCutPercent', internalType: 'uint32', type: 'uint32' },
310
+ {
311
+ name: 'approvalHook',
312
+ internalType: 'contract IJBRulesetApprovalHook',
313
+ type: 'address',
314
+ },
315
+ { name: 'metadata', internalType: 'uint256', type: 'uint256' },
316
+ ],
317
+ },
318
+ {
319
+ name: 'metadata',
320
+ internalType: 'struct JBRulesetMetadata',
321
+ type: 'tuple',
322
+ components: [
323
+ { name: 'reservedPercent', internalType: 'uint16', type: 'uint16' },
324
+ { name: 'cashOutTaxRate', internalType: 'uint16', type: 'uint16' },
325
+ { name: 'baseCurrency', internalType: 'uint32', type: 'uint32' },
326
+ { name: 'pausePay', internalType: 'bool', type: 'bool' },
327
+ { name: 'pauseCreditTransfers', internalType: 'bool', type: 'bool' },
328
+ { name: 'allowOwnerMinting', internalType: 'bool', type: 'bool' },
329
+ { name: 'allowSetCustomToken', internalType: 'bool', type: 'bool' },
330
+ {
331
+ name: 'allowTerminalMigration',
332
+ internalType: 'bool',
333
+ type: 'bool',
334
+ },
335
+ { name: 'allowSetTerminals', internalType: 'bool', type: 'bool' },
336
+ { name: 'allowSetController', internalType: 'bool', type: 'bool' },
337
+ {
338
+ name: 'allowAddAccountingContext',
339
+ internalType: 'bool',
340
+ type: 'bool',
341
+ },
342
+ { name: 'allowAddPriceFeed', internalType: 'bool', type: 'bool' },
343
+ { name: 'ownerMustSendPayouts', internalType: 'bool', type: 'bool' },
344
+ { name: 'holdFees', internalType: 'bool', type: 'bool' },
345
+ {
346
+ name: 'scopeCashOutsToLocalBalances',
347
+ internalType: 'bool',
348
+ type: 'bool',
349
+ },
350
+ { name: 'useDataHookForPay', internalType: 'bool', type: 'bool' },
351
+ { name: 'useDataHookForCashOut', internalType: 'bool', type: 'bool' },
352
+ { name: 'dataHook', internalType: 'address', type: 'address' },
353
+ { name: 'metadata', internalType: 'uint16', type: 'uint16' },
354
+ ],
355
+ },
356
+ ],
357
+ stateMutability: 'view',
358
+ },
359
+ {
360
+ type: 'function',
361
+ inputs: [
362
+ { name: 'projectId', internalType: 'uint256', type: 'uint256' },
363
+ { name: 'name', internalType: 'string', type: 'string' },
364
+ { name: 'symbol', internalType: 'string', type: 'string' },
365
+ { name: 'salt', internalType: 'bytes32', type: 'bytes32' },
366
+ ],
367
+ name: 'deployERC20For',
368
+ outputs: [
369
+ { name: 'token', internalType: 'contract IJBToken', type: 'address' },
370
+ ],
371
+ stateMutability: 'nonpayable',
372
+ },
373
+ {
374
+ type: 'function',
375
+ inputs: [
376
+ {
377
+ name: 'terminal',
378
+ internalType: 'contract IJBTerminal',
379
+ type: 'address',
380
+ },
381
+ { name: 'projectId', internalType: 'uint256', type: 'uint256' },
382
+ { name: 'token', internalType: 'contract IJBToken', type: 'address' },
383
+ { name: 'splitTokenCount', internalType: 'uint256', type: 'uint256' },
384
+ { name: 'beneficiary', internalType: 'address', type: 'address' },
385
+ { name: 'metadata', internalType: 'bytes', type: 'bytes' },
386
+ ],
387
+ name: 'executePayReservedTokenToTerminal',
388
+ outputs: [],
389
+ stateMutability: 'nonpayable',
390
+ },
391
+ {
392
+ type: 'function',
393
+ inputs: [
394
+ { name: 'projectId', internalType: 'uint256', type: 'uint256' },
395
+ { name: 'rulesetId', internalType: 'uint256', type: 'uint256' },
396
+ ],
397
+ name: 'getRulesetOf',
398
+ outputs: [
399
+ {
400
+ name: 'ruleset',
401
+ internalType: 'struct JBRuleset',
402
+ type: 'tuple',
403
+ components: [
404
+ { name: 'cycleNumber', internalType: 'uint48', type: 'uint48' },
405
+ { name: 'id', internalType: 'uint48', type: 'uint48' },
406
+ { name: 'basedOnId', internalType: 'uint48', type: 'uint48' },
407
+ { name: 'start', internalType: 'uint48', type: 'uint48' },
408
+ { name: 'duration', internalType: 'uint32', type: 'uint32' },
409
+ { name: 'weight', internalType: 'uint112', type: 'uint112' },
410
+ { name: 'weightCutPercent', internalType: 'uint32', type: 'uint32' },
411
+ {
412
+ name: 'approvalHook',
413
+ internalType: 'contract IJBRulesetApprovalHook',
414
+ type: 'address',
415
+ },
416
+ { name: 'metadata', internalType: 'uint256', type: 'uint256' },
417
+ ],
418
+ },
419
+ {
420
+ name: 'metadata',
421
+ internalType: 'struct JBRulesetMetadata',
422
+ type: 'tuple',
423
+ components: [
424
+ { name: 'reservedPercent', internalType: 'uint16', type: 'uint16' },
425
+ { name: 'cashOutTaxRate', internalType: 'uint16', type: 'uint16' },
426
+ { name: 'baseCurrency', internalType: 'uint32', type: 'uint32' },
427
+ { name: 'pausePay', internalType: 'bool', type: 'bool' },
428
+ { name: 'pauseCreditTransfers', internalType: 'bool', type: 'bool' },
429
+ { name: 'allowOwnerMinting', internalType: 'bool', type: 'bool' },
430
+ { name: 'allowSetCustomToken', internalType: 'bool', type: 'bool' },
431
+ {
432
+ name: 'allowTerminalMigration',
433
+ internalType: 'bool',
434
+ type: 'bool',
435
+ },
436
+ { name: 'allowSetTerminals', internalType: 'bool', type: 'bool' },
437
+ { name: 'allowSetController', internalType: 'bool', type: 'bool' },
438
+ {
439
+ name: 'allowAddAccountingContext',
440
+ internalType: 'bool',
441
+ type: 'bool',
442
+ },
443
+ { name: 'allowAddPriceFeed', internalType: 'bool', type: 'bool' },
444
+ { name: 'ownerMustSendPayouts', internalType: 'bool', type: 'bool' },
445
+ { name: 'holdFees', internalType: 'bool', type: 'bool' },
446
+ {
447
+ name: 'scopeCashOutsToLocalBalances',
448
+ internalType: 'bool',
449
+ type: 'bool',
450
+ },
451
+ { name: 'useDataHookForPay', internalType: 'bool', type: 'bool' },
452
+ { name: 'useDataHookForCashOut', internalType: 'bool', type: 'bool' },
453
+ { name: 'dataHook', internalType: 'address', type: 'address' },
454
+ { name: 'metadata', internalType: 'uint16', type: 'uint16' },
455
+ ],
456
+ },
457
+ ],
458
+ stateMutability: 'view',
459
+ },
460
+ {
461
+ type: 'function',
462
+ inputs: [{ name: 'forwarder', internalType: 'address', type: 'address' }],
463
+ name: 'isTrustedForwarder',
464
+ outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
465
+ stateMutability: 'view',
466
+ },
467
+ {
468
+ type: 'function',
469
+ inputs: [{ name: 'projectId', internalType: 'uint256', type: 'uint256' }],
470
+ name: 'latestQueuedRulesetOf',
471
+ outputs: [
472
+ {
473
+ name: 'ruleset',
474
+ internalType: 'struct JBRuleset',
475
+ type: 'tuple',
476
+ components: [
477
+ { name: 'cycleNumber', internalType: 'uint48', type: 'uint48' },
478
+ { name: 'id', internalType: 'uint48', type: 'uint48' },
479
+ { name: 'basedOnId', internalType: 'uint48', type: 'uint48' },
480
+ { name: 'start', internalType: 'uint48', type: 'uint48' },
481
+ { name: 'duration', internalType: 'uint32', type: 'uint32' },
482
+ { name: 'weight', internalType: 'uint112', type: 'uint112' },
483
+ { name: 'weightCutPercent', internalType: 'uint32', type: 'uint32' },
484
+ {
485
+ name: 'approvalHook',
486
+ internalType: 'contract IJBRulesetApprovalHook',
487
+ type: 'address',
488
+ },
489
+ { name: 'metadata', internalType: 'uint256', type: 'uint256' },
490
+ ],
491
+ },
492
+ {
493
+ name: 'metadata',
494
+ internalType: 'struct JBRulesetMetadata',
495
+ type: 'tuple',
496
+ components: [
497
+ { name: 'reservedPercent', internalType: 'uint16', type: 'uint16' },
498
+ { name: 'cashOutTaxRate', internalType: 'uint16', type: 'uint16' },
499
+ { name: 'baseCurrency', internalType: 'uint32', type: 'uint32' },
500
+ { name: 'pausePay', internalType: 'bool', type: 'bool' },
501
+ { name: 'pauseCreditTransfers', internalType: 'bool', type: 'bool' },
502
+ { name: 'allowOwnerMinting', internalType: 'bool', type: 'bool' },
503
+ { name: 'allowSetCustomToken', internalType: 'bool', type: 'bool' },
504
+ {
505
+ name: 'allowTerminalMigration',
506
+ internalType: 'bool',
507
+ type: 'bool',
508
+ },
509
+ { name: 'allowSetTerminals', internalType: 'bool', type: 'bool' },
510
+ { name: 'allowSetController', internalType: 'bool', type: 'bool' },
511
+ {
512
+ name: 'allowAddAccountingContext',
513
+ internalType: 'bool',
514
+ type: 'bool',
515
+ },
516
+ { name: 'allowAddPriceFeed', internalType: 'bool', type: 'bool' },
517
+ { name: 'ownerMustSendPayouts', internalType: 'bool', type: 'bool' },
518
+ { name: 'holdFees', internalType: 'bool', type: 'bool' },
519
+ {
520
+ name: 'scopeCashOutsToLocalBalances',
521
+ internalType: 'bool',
522
+ type: 'bool',
523
+ },
524
+ { name: 'useDataHookForPay', internalType: 'bool', type: 'bool' },
525
+ { name: 'useDataHookForCashOut', internalType: 'bool', type: 'bool' },
526
+ { name: 'dataHook', internalType: 'address', type: 'address' },
527
+ { name: 'metadata', internalType: 'uint16', type: 'uint16' },
528
+ ],
529
+ },
530
+ {
531
+ name: 'approvalStatus',
532
+ internalType: 'enum JBApprovalStatus',
533
+ type: 'uint8',
534
+ },
535
+ ],
536
+ stateMutability: 'view',
537
+ },
538
+ {
539
+ type: 'function',
540
+ inputs: [
541
+ { name: 'owner', internalType: 'address', type: 'address' },
542
+ { name: 'projectUri', internalType: 'string', type: 'string' },
543
+ {
544
+ name: 'rulesetConfigurations',
545
+ internalType: 'struct JBRulesetConfig[]',
546
+ type: 'tuple[]',
547
+ components: [
548
+ {
549
+ name: 'mustStartAtOrAfter',
550
+ internalType: 'uint48',
551
+ type: 'uint48',
552
+ },
553
+ { name: 'duration', internalType: 'uint32', type: 'uint32' },
554
+ { name: 'weight', internalType: 'uint112', type: 'uint112' },
555
+ { name: 'weightCutPercent', internalType: 'uint32', type: 'uint32' },
556
+ {
557
+ name: 'approvalHook',
558
+ internalType: 'contract IJBRulesetApprovalHook',
559
+ type: 'address',
560
+ },
561
+ {
562
+ name: 'metadata',
563
+ internalType: 'struct JBRulesetMetadata',
564
+ type: 'tuple',
565
+ components: [
566
+ {
567
+ name: 'reservedPercent',
568
+ internalType: 'uint16',
569
+ type: 'uint16',
570
+ },
571
+ {
572
+ name: 'cashOutTaxRate',
573
+ internalType: 'uint16',
574
+ type: 'uint16',
575
+ },
576
+ { name: 'baseCurrency', internalType: 'uint32', type: 'uint32' },
577
+ { name: 'pausePay', internalType: 'bool', type: 'bool' },
578
+ {
579
+ name: 'pauseCreditTransfers',
580
+ internalType: 'bool',
581
+ type: 'bool',
582
+ },
583
+ { name: 'allowOwnerMinting', internalType: 'bool', type: 'bool' },
584
+ {
585
+ name: 'allowSetCustomToken',
586
+ internalType: 'bool',
587
+ type: 'bool',
588
+ },
589
+ {
590
+ name: 'allowTerminalMigration',
591
+ internalType: 'bool',
592
+ type: 'bool',
593
+ },
594
+ { name: 'allowSetTerminals', internalType: 'bool', type: 'bool' },
595
+ {
596
+ name: 'allowSetController',
597
+ internalType: 'bool',
598
+ type: 'bool',
599
+ },
600
+ {
601
+ name: 'allowAddAccountingContext',
602
+ internalType: 'bool',
603
+ type: 'bool',
604
+ },
605
+ { name: 'allowAddPriceFeed', internalType: 'bool', type: 'bool' },
606
+ {
607
+ name: 'ownerMustSendPayouts',
608
+ internalType: 'bool',
609
+ type: 'bool',
610
+ },
611
+ { name: 'holdFees', internalType: 'bool', type: 'bool' },
612
+ {
613
+ name: 'scopeCashOutsToLocalBalances',
614
+ internalType: 'bool',
615
+ type: 'bool',
616
+ },
617
+ { name: 'useDataHookForPay', internalType: 'bool', type: 'bool' },
618
+ {
619
+ name: 'useDataHookForCashOut',
620
+ internalType: 'bool',
621
+ type: 'bool',
622
+ },
623
+ { name: 'dataHook', internalType: 'address', type: 'address' },
624
+ { name: 'metadata', internalType: 'uint16', type: 'uint16' },
625
+ ],
626
+ },
627
+ {
628
+ name: 'splitGroups',
629
+ internalType: 'struct JBSplitGroup[]',
630
+ type: 'tuple[]',
631
+ components: [
632
+ { name: 'groupId', internalType: 'uint256', type: 'uint256' },
633
+ {
634
+ name: 'splits',
635
+ internalType: 'struct JBSplit[]',
636
+ type: 'tuple[]',
637
+ components: [
638
+ { name: 'percent', internalType: 'uint32', type: 'uint32' },
639
+ { name: 'projectId', internalType: 'uint64', type: 'uint64' },
640
+ {
641
+ name: 'beneficiary',
642
+ internalType: 'address payable',
643
+ type: 'address',
644
+ },
645
+ {
646
+ name: 'preferAddToBalance',
647
+ internalType: 'bool',
648
+ type: 'bool',
649
+ },
650
+ {
651
+ name: 'lockedUntil',
652
+ internalType: 'uint48',
653
+ type: 'uint48',
654
+ },
655
+ {
656
+ name: 'hook',
657
+ internalType: 'contract IJBSplitHook',
658
+ type: 'address',
659
+ },
660
+ ],
661
+ },
662
+ ],
663
+ },
664
+ {
665
+ name: 'fundAccessLimitGroups',
666
+ internalType: 'struct JBFundAccessLimitGroup[]',
667
+ type: 'tuple[]',
668
+ components: [
669
+ { name: 'terminal', internalType: 'address', type: 'address' },
670
+ { name: 'token', internalType: 'address', type: 'address' },
671
+ {
672
+ name: 'payoutLimits',
673
+ internalType: 'struct JBCurrencyAmount[]',
674
+ type: 'tuple[]',
675
+ components: [
676
+ { name: 'amount', internalType: 'uint224', type: 'uint224' },
677
+ { name: 'currency', internalType: 'uint32', type: 'uint32' },
678
+ ],
679
+ },
680
+ {
681
+ name: 'surplusAllowances',
682
+ internalType: 'struct JBCurrencyAmount[]',
683
+ type: 'tuple[]',
684
+ components: [
685
+ { name: 'amount', internalType: 'uint224', type: 'uint224' },
686
+ { name: 'currency', internalType: 'uint32', type: 'uint32' },
687
+ ],
688
+ },
689
+ ],
690
+ },
691
+ ],
692
+ },
693
+ {
694
+ name: 'terminalConfigurations',
695
+ internalType: 'struct JBTerminalConfig[]',
696
+ type: 'tuple[]',
697
+ components: [
698
+ {
699
+ name: 'terminal',
700
+ internalType: 'contract IJBTerminal',
701
+ type: 'address',
702
+ },
703
+ {
704
+ name: 'accountingContextsToAccept',
705
+ internalType: 'struct JBAccountingContext[]',
706
+ type: 'tuple[]',
707
+ components: [
708
+ { name: 'token', internalType: 'address', type: 'address' },
709
+ { name: 'decimals', internalType: 'uint8', type: 'uint8' },
710
+ { name: 'currency', internalType: 'uint32', type: 'uint32' },
711
+ ],
712
+ },
713
+ ],
714
+ },
715
+ { name: 'memo', internalType: 'string', type: 'string' },
716
+ ],
717
+ name: 'launchProjectFor',
718
+ outputs: [{ name: 'projectId', internalType: 'uint256', type: 'uint256' }],
719
+ stateMutability: 'payable',
720
+ },
721
+ {
722
+ type: 'function',
723
+ inputs: [
724
+ { name: 'projectId', internalType: 'uint256', type: 'uint256' },
725
+ { name: 'projectUri', internalType: 'string', type: 'string' },
726
+ {
727
+ name: 'rulesetConfigurations',
728
+ internalType: 'struct JBRulesetConfig[]',
729
+ type: 'tuple[]',
730
+ components: [
731
+ {
732
+ name: 'mustStartAtOrAfter',
733
+ internalType: 'uint48',
734
+ type: 'uint48',
735
+ },
736
+ { name: 'duration', internalType: 'uint32', type: 'uint32' },
737
+ { name: 'weight', internalType: 'uint112', type: 'uint112' },
738
+ { name: 'weightCutPercent', internalType: 'uint32', type: 'uint32' },
739
+ {
740
+ name: 'approvalHook',
741
+ internalType: 'contract IJBRulesetApprovalHook',
742
+ type: 'address',
743
+ },
744
+ {
745
+ name: 'metadata',
746
+ internalType: 'struct JBRulesetMetadata',
747
+ type: 'tuple',
748
+ components: [
749
+ {
750
+ name: 'reservedPercent',
751
+ internalType: 'uint16',
752
+ type: 'uint16',
753
+ },
754
+ {
755
+ name: 'cashOutTaxRate',
756
+ internalType: 'uint16',
757
+ type: 'uint16',
758
+ },
759
+ { name: 'baseCurrency', internalType: 'uint32', type: 'uint32' },
760
+ { name: 'pausePay', internalType: 'bool', type: 'bool' },
761
+ {
762
+ name: 'pauseCreditTransfers',
763
+ internalType: 'bool',
764
+ type: 'bool',
765
+ },
766
+ { name: 'allowOwnerMinting', internalType: 'bool', type: 'bool' },
767
+ {
768
+ name: 'allowSetCustomToken',
769
+ internalType: 'bool',
770
+ type: 'bool',
771
+ },
772
+ {
773
+ name: 'allowTerminalMigration',
774
+ internalType: 'bool',
775
+ type: 'bool',
776
+ },
777
+ { name: 'allowSetTerminals', internalType: 'bool', type: 'bool' },
778
+ {
779
+ name: 'allowSetController',
780
+ internalType: 'bool',
781
+ type: 'bool',
782
+ },
783
+ {
784
+ name: 'allowAddAccountingContext',
785
+ internalType: 'bool',
786
+ type: 'bool',
787
+ },
788
+ { name: 'allowAddPriceFeed', internalType: 'bool', type: 'bool' },
789
+ {
790
+ name: 'ownerMustSendPayouts',
791
+ internalType: 'bool',
792
+ type: 'bool',
793
+ },
794
+ { name: 'holdFees', internalType: 'bool', type: 'bool' },
795
+ {
796
+ name: 'scopeCashOutsToLocalBalances',
797
+ internalType: 'bool',
798
+ type: 'bool',
799
+ },
800
+ { name: 'useDataHookForPay', internalType: 'bool', type: 'bool' },
801
+ {
802
+ name: 'useDataHookForCashOut',
803
+ internalType: 'bool',
804
+ type: 'bool',
805
+ },
806
+ { name: 'dataHook', internalType: 'address', type: 'address' },
807
+ { name: 'metadata', internalType: 'uint16', type: 'uint16' },
808
+ ],
809
+ },
810
+ {
811
+ name: 'splitGroups',
812
+ internalType: 'struct JBSplitGroup[]',
813
+ type: 'tuple[]',
814
+ components: [
815
+ { name: 'groupId', internalType: 'uint256', type: 'uint256' },
816
+ {
817
+ name: 'splits',
818
+ internalType: 'struct JBSplit[]',
819
+ type: 'tuple[]',
820
+ components: [
821
+ { name: 'percent', internalType: 'uint32', type: 'uint32' },
822
+ { name: 'projectId', internalType: 'uint64', type: 'uint64' },
823
+ {
824
+ name: 'beneficiary',
825
+ internalType: 'address payable',
826
+ type: 'address',
827
+ },
828
+ {
829
+ name: 'preferAddToBalance',
830
+ internalType: 'bool',
831
+ type: 'bool',
832
+ },
833
+ {
834
+ name: 'lockedUntil',
835
+ internalType: 'uint48',
836
+ type: 'uint48',
837
+ },
838
+ {
839
+ name: 'hook',
840
+ internalType: 'contract IJBSplitHook',
841
+ type: 'address',
842
+ },
843
+ ],
844
+ },
845
+ ],
846
+ },
847
+ {
848
+ name: 'fundAccessLimitGroups',
849
+ internalType: 'struct JBFundAccessLimitGroup[]',
850
+ type: 'tuple[]',
851
+ components: [
852
+ { name: 'terminal', internalType: 'address', type: 'address' },
853
+ { name: 'token', internalType: 'address', type: 'address' },
854
+ {
855
+ name: 'payoutLimits',
856
+ internalType: 'struct JBCurrencyAmount[]',
857
+ type: 'tuple[]',
858
+ components: [
859
+ { name: 'amount', internalType: 'uint224', type: 'uint224' },
860
+ { name: 'currency', internalType: 'uint32', type: 'uint32' },
861
+ ],
862
+ },
863
+ {
864
+ name: 'surplusAllowances',
865
+ internalType: 'struct JBCurrencyAmount[]',
866
+ type: 'tuple[]',
867
+ components: [
868
+ { name: 'amount', internalType: 'uint224', type: 'uint224' },
869
+ { name: 'currency', internalType: 'uint32', type: 'uint32' },
870
+ ],
871
+ },
872
+ ],
873
+ },
874
+ ],
875
+ },
876
+ {
877
+ name: 'terminalConfigurations',
878
+ internalType: 'struct JBTerminalConfig[]',
879
+ type: 'tuple[]',
880
+ components: [
881
+ {
882
+ name: 'terminal',
883
+ internalType: 'contract IJBTerminal',
884
+ type: 'address',
885
+ },
886
+ {
887
+ name: 'accountingContextsToAccept',
888
+ internalType: 'struct JBAccountingContext[]',
889
+ type: 'tuple[]',
890
+ components: [
891
+ { name: 'token', internalType: 'address', type: 'address' },
892
+ { name: 'decimals', internalType: 'uint8', type: 'uint8' },
893
+ { name: 'currency', internalType: 'uint32', type: 'uint32' },
894
+ ],
895
+ },
896
+ ],
897
+ },
898
+ { name: 'memo', internalType: 'string', type: 'string' },
899
+ ],
900
+ name: 'launchRulesetsFor',
901
+ outputs: [{ name: 'rulesetId', internalType: 'uint256', type: 'uint256' }],
902
+ stateMutability: 'nonpayable',
903
+ },
904
+ {
905
+ type: 'function',
906
+ inputs: [
907
+ { name: 'projectId', internalType: 'uint256', type: 'uint256' },
908
+ { name: 'to', internalType: 'contract IERC165', type: 'address' },
909
+ ],
910
+ name: 'migrate',
911
+ outputs: [],
912
+ stateMutability: 'nonpayable',
913
+ },
914
+ {
915
+ type: 'function',
916
+ inputs: [
917
+ { name: 'projectId', internalType: 'uint256', type: 'uint256' },
918
+ { name: 'tokenCount', internalType: 'uint256', type: 'uint256' },
919
+ { name: 'beneficiary', internalType: 'address', type: 'address' },
920
+ { name: 'memo', internalType: 'string', type: 'string' },
921
+ { name: 'useReservedPercent', internalType: 'bool', type: 'bool' },
922
+ ],
923
+ name: 'mintTokensOf',
924
+ outputs: [
925
+ {
926
+ name: 'beneficiaryTokenCount',
927
+ internalType: 'uint256',
928
+ type: 'uint256',
929
+ },
930
+ ],
931
+ stateMutability: 'nonpayable',
932
+ },
933
+ {
934
+ type: 'function',
935
+ inputs: [],
936
+ name: 'originalPayer',
937
+ outputs: [{ name: '', internalType: 'address', type: 'address' }],
938
+ stateMutability: 'view',
939
+ },
940
+ {
941
+ type: 'function',
942
+ inputs: [{ name: 'projectId', internalType: 'uint256', type: 'uint256' }],
943
+ name: 'pendingReservedTokenBalanceOf',
944
+ outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
945
+ stateMutability: 'view',
946
+ },
947
+ {
948
+ type: 'function',
949
+ inputs: [
950
+ { name: 'projectId', internalType: 'uint256', type: 'uint256' },
951
+ { name: 'tokenCount', internalType: 'uint256', type: 'uint256' },
952
+ { name: 'useReservedPercent', internalType: 'bool', type: 'bool' },
953
+ ],
954
+ name: 'previewMintOf',
955
+ outputs: [
956
+ {
957
+ name: 'beneficiaryTokenCount',
958
+ internalType: 'uint256',
959
+ type: 'uint256',
960
+ },
961
+ { name: 'reservedTokenCount', internalType: 'uint256', type: 'uint256' },
962
+ ],
963
+ stateMutability: 'view',
964
+ },
965
+ {
966
+ type: 'function',
967
+ inputs: [
968
+ { name: 'projectId', internalType: 'uint256', type: 'uint256' },
969
+ {
970
+ name: 'rulesetConfigurations',
971
+ internalType: 'struct JBRulesetConfig[]',
972
+ type: 'tuple[]',
973
+ components: [
974
+ {
975
+ name: 'mustStartAtOrAfter',
976
+ internalType: 'uint48',
977
+ type: 'uint48',
978
+ },
979
+ { name: 'duration', internalType: 'uint32', type: 'uint32' },
980
+ { name: 'weight', internalType: 'uint112', type: 'uint112' },
981
+ { name: 'weightCutPercent', internalType: 'uint32', type: 'uint32' },
982
+ {
983
+ name: 'approvalHook',
984
+ internalType: 'contract IJBRulesetApprovalHook',
985
+ type: 'address',
986
+ },
987
+ {
988
+ name: 'metadata',
989
+ internalType: 'struct JBRulesetMetadata',
990
+ type: 'tuple',
991
+ components: [
992
+ {
993
+ name: 'reservedPercent',
994
+ internalType: 'uint16',
995
+ type: 'uint16',
996
+ },
997
+ {
998
+ name: 'cashOutTaxRate',
999
+ internalType: 'uint16',
1000
+ type: 'uint16',
1001
+ },
1002
+ { name: 'baseCurrency', internalType: 'uint32', type: 'uint32' },
1003
+ { name: 'pausePay', internalType: 'bool', type: 'bool' },
1004
+ {
1005
+ name: 'pauseCreditTransfers',
1006
+ internalType: 'bool',
1007
+ type: 'bool',
1008
+ },
1009
+ { name: 'allowOwnerMinting', internalType: 'bool', type: 'bool' },
1010
+ {
1011
+ name: 'allowSetCustomToken',
1012
+ internalType: 'bool',
1013
+ type: 'bool',
1014
+ },
1015
+ {
1016
+ name: 'allowTerminalMigration',
1017
+ internalType: 'bool',
1018
+ type: 'bool',
1019
+ },
1020
+ { name: 'allowSetTerminals', internalType: 'bool', type: 'bool' },
1021
+ {
1022
+ name: 'allowSetController',
1023
+ internalType: 'bool',
1024
+ type: 'bool',
1025
+ },
1026
+ {
1027
+ name: 'allowAddAccountingContext',
1028
+ internalType: 'bool',
1029
+ type: 'bool',
1030
+ },
1031
+ { name: 'allowAddPriceFeed', internalType: 'bool', type: 'bool' },
1032
+ {
1033
+ name: 'ownerMustSendPayouts',
1034
+ internalType: 'bool',
1035
+ type: 'bool',
1036
+ },
1037
+ { name: 'holdFees', internalType: 'bool', type: 'bool' },
1038
+ {
1039
+ name: 'scopeCashOutsToLocalBalances',
1040
+ internalType: 'bool',
1041
+ type: 'bool',
1042
+ },
1043
+ { name: 'useDataHookForPay', internalType: 'bool', type: 'bool' },
1044
+ {
1045
+ name: 'useDataHookForCashOut',
1046
+ internalType: 'bool',
1047
+ type: 'bool',
1048
+ },
1049
+ { name: 'dataHook', internalType: 'address', type: 'address' },
1050
+ { name: 'metadata', internalType: 'uint16', type: 'uint16' },
1051
+ ],
1052
+ },
1053
+ {
1054
+ name: 'splitGroups',
1055
+ internalType: 'struct JBSplitGroup[]',
1056
+ type: 'tuple[]',
1057
+ components: [
1058
+ { name: 'groupId', internalType: 'uint256', type: 'uint256' },
1059
+ {
1060
+ name: 'splits',
1061
+ internalType: 'struct JBSplit[]',
1062
+ type: 'tuple[]',
1063
+ components: [
1064
+ { name: 'percent', internalType: 'uint32', type: 'uint32' },
1065
+ { name: 'projectId', internalType: 'uint64', type: 'uint64' },
1066
+ {
1067
+ name: 'beneficiary',
1068
+ internalType: 'address payable',
1069
+ type: 'address',
1070
+ },
1071
+ {
1072
+ name: 'preferAddToBalance',
1073
+ internalType: 'bool',
1074
+ type: 'bool',
1075
+ },
1076
+ {
1077
+ name: 'lockedUntil',
1078
+ internalType: 'uint48',
1079
+ type: 'uint48',
1080
+ },
1081
+ {
1082
+ name: 'hook',
1083
+ internalType: 'contract IJBSplitHook',
1084
+ type: 'address',
1085
+ },
1086
+ ],
1087
+ },
1088
+ ],
1089
+ },
1090
+ {
1091
+ name: 'fundAccessLimitGroups',
1092
+ internalType: 'struct JBFundAccessLimitGroup[]',
1093
+ type: 'tuple[]',
1094
+ components: [
1095
+ { name: 'terminal', internalType: 'address', type: 'address' },
1096
+ { name: 'token', internalType: 'address', type: 'address' },
1097
+ {
1098
+ name: 'payoutLimits',
1099
+ internalType: 'struct JBCurrencyAmount[]',
1100
+ type: 'tuple[]',
1101
+ components: [
1102
+ { name: 'amount', internalType: 'uint224', type: 'uint224' },
1103
+ { name: 'currency', internalType: 'uint32', type: 'uint32' },
1104
+ ],
1105
+ },
1106
+ {
1107
+ name: 'surplusAllowances',
1108
+ internalType: 'struct JBCurrencyAmount[]',
1109
+ type: 'tuple[]',
1110
+ components: [
1111
+ { name: 'amount', internalType: 'uint224', type: 'uint224' },
1112
+ { name: 'currency', internalType: 'uint32', type: 'uint32' },
1113
+ ],
1114
+ },
1115
+ ],
1116
+ },
1117
+ ],
1118
+ },
1119
+ { name: 'memo', internalType: 'string', type: 'string' },
1120
+ ],
1121
+ name: 'queueRulesetsOf',
1122
+ outputs: [{ name: 'rulesetId', internalType: 'uint256', type: 'uint256' }],
1123
+ stateMutability: 'nonpayable',
1124
+ },
1125
+ {
1126
+ type: 'function',
1127
+ inputs: [{ name: 'projectId', internalType: 'uint256', type: 'uint256' }],
1128
+ name: 'sendReservedTokensToSplitsOf',
1129
+ outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
1130
+ stateMutability: 'nonpayable',
1131
+ },
1132
+ {
1133
+ type: 'function',
1134
+ inputs: [{ name: 'projectId', internalType: 'uint256', type: 'uint256' }],
1135
+ name: 'setControllerAllowed',
1136
+ outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
1137
+ stateMutability: 'view',
1138
+ },
1139
+ {
1140
+ type: 'function',
1141
+ inputs: [
1142
+ { name: 'projectId', internalType: 'uint256', type: 'uint256' },
1143
+ { name: 'rulesetId', internalType: 'uint256', type: 'uint256' },
1144
+ {
1145
+ name: 'splitGroups',
1146
+ internalType: 'struct JBSplitGroup[]',
1147
+ type: 'tuple[]',
1148
+ components: [
1149
+ { name: 'groupId', internalType: 'uint256', type: 'uint256' },
1150
+ {
1151
+ name: 'splits',
1152
+ internalType: 'struct JBSplit[]',
1153
+ type: 'tuple[]',
1154
+ components: [
1155
+ { name: 'percent', internalType: 'uint32', type: 'uint32' },
1156
+ { name: 'projectId', internalType: 'uint64', type: 'uint64' },
1157
+ {
1158
+ name: 'beneficiary',
1159
+ internalType: 'address payable',
1160
+ type: 'address',
1161
+ },
1162
+ {
1163
+ name: 'preferAddToBalance',
1164
+ internalType: 'bool',
1165
+ type: 'bool',
1166
+ },
1167
+ { name: 'lockedUntil', internalType: 'uint48', type: 'uint48' },
1168
+ {
1169
+ name: 'hook',
1170
+ internalType: 'contract IJBSplitHook',
1171
+ type: 'address',
1172
+ },
1173
+ ],
1174
+ },
1175
+ ],
1176
+ },
1177
+ ],
1178
+ name: 'setSplitGroupsOf',
1179
+ outputs: [],
1180
+ stateMutability: 'nonpayable',
1181
+ },
1182
+ {
1183
+ type: 'function',
1184
+ inputs: [{ name: 'projectId', internalType: 'uint256', type: 'uint256' }],
1185
+ name: 'setTerminalsAllowed',
1186
+ outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
1187
+ stateMutability: 'view',
1188
+ },
1189
+ {
1190
+ type: 'function',
1191
+ inputs: [
1192
+ { name: 'projectId', internalType: 'uint256', type: 'uint256' },
1193
+ { name: 'token', internalType: 'contract IJBToken', type: 'address' },
1194
+ ],
1195
+ name: 'setTokenFor',
1196
+ outputs: [],
1197
+ stateMutability: 'nonpayable',
1198
+ },
1199
+ {
1200
+ type: 'function',
1201
+ inputs: [
1202
+ { name: 'projectId', internalType: 'uint256', type: 'uint256' },
1203
+ { name: 'name', internalType: 'string', type: 'string' },
1204
+ { name: 'symbol', internalType: 'string', type: 'string' },
1205
+ ],
1206
+ name: 'setTokenMetadataOf',
1207
+ outputs: [],
1208
+ stateMutability: 'nonpayable',
1209
+ },
1210
+ {
1211
+ type: 'function',
1212
+ inputs: [
1213
+ { name: 'projectId', internalType: 'uint256', type: 'uint256' },
1214
+ { name: 'uri', internalType: 'string', type: 'string' },
1215
+ ],
1216
+ name: 'setUriOf',
1217
+ outputs: [],
1218
+ stateMutability: 'nonpayable',
1219
+ },
1220
+ {
1221
+ type: 'function',
1222
+ inputs: [{ name: 'interfaceId', internalType: 'bytes4', type: 'bytes4' }],
1223
+ name: 'supportsInterface',
1224
+ outputs: [{ name: '', internalType: 'bool', type: 'bool' }],
1225
+ stateMutability: 'pure',
1226
+ },
1227
+ {
1228
+ type: 'function',
1229
+ inputs: [{ name: 'projectId', internalType: 'uint256', type: 'uint256' }],
1230
+ name: 'totalTokenSupplyWithReservedTokensOf',
1231
+ outputs: [{ name: '', internalType: 'uint256', type: 'uint256' }],
1232
+ stateMutability: 'view',
1233
+ },
1234
+ {
1235
+ type: 'function',
1236
+ inputs: [
1237
+ { name: 'holder', internalType: 'address', type: 'address' },
1238
+ { name: 'projectId', internalType: 'uint256', type: 'uint256' },
1239
+ { name: 'recipient', internalType: 'address', type: 'address' },
1240
+ { name: 'creditCount', internalType: 'uint256', type: 'uint256' },
1241
+ ],
1242
+ name: 'transferCreditsFrom',
1243
+ outputs: [],
1244
+ stateMutability: 'nonpayable',
1245
+ },
1246
+ {
1247
+ type: 'function',
1248
+ inputs: [],
1249
+ name: 'trustedForwarder',
1250
+ outputs: [{ name: '', internalType: 'address', type: 'address' }],
1251
+ stateMutability: 'view',
1252
+ },
1253
+ {
1254
+ type: 'function',
1255
+ inputs: [{ name: 'projectId', internalType: 'uint256', type: 'uint256' }],
1256
+ name: 'upcomingRulesetOf',
1257
+ outputs: [
1258
+ {
1259
+ name: 'ruleset',
1260
+ internalType: 'struct JBRuleset',
1261
+ type: 'tuple',
1262
+ components: [
1263
+ { name: 'cycleNumber', internalType: 'uint48', type: 'uint48' },
1264
+ { name: 'id', internalType: 'uint48', type: 'uint48' },
1265
+ { name: 'basedOnId', internalType: 'uint48', type: 'uint48' },
1266
+ { name: 'start', internalType: 'uint48', type: 'uint48' },
1267
+ { name: 'duration', internalType: 'uint32', type: 'uint32' },
1268
+ { name: 'weight', internalType: 'uint112', type: 'uint112' },
1269
+ { name: 'weightCutPercent', internalType: 'uint32', type: 'uint32' },
1270
+ {
1271
+ name: 'approvalHook',
1272
+ internalType: 'contract IJBRulesetApprovalHook',
1273
+ type: 'address',
1274
+ },
1275
+ { name: 'metadata', internalType: 'uint256', type: 'uint256' },
1276
+ ],
1277
+ },
1278
+ {
1279
+ name: 'metadata',
1280
+ internalType: 'struct JBRulesetMetadata',
1281
+ type: 'tuple',
1282
+ components: [
1283
+ { name: 'reservedPercent', internalType: 'uint16', type: 'uint16' },
1284
+ { name: 'cashOutTaxRate', internalType: 'uint16', type: 'uint16' },
1285
+ { name: 'baseCurrency', internalType: 'uint32', type: 'uint32' },
1286
+ { name: 'pausePay', internalType: 'bool', type: 'bool' },
1287
+ { name: 'pauseCreditTransfers', internalType: 'bool', type: 'bool' },
1288
+ { name: 'allowOwnerMinting', internalType: 'bool', type: 'bool' },
1289
+ { name: 'allowSetCustomToken', internalType: 'bool', type: 'bool' },
1290
+ {
1291
+ name: 'allowTerminalMigration',
1292
+ internalType: 'bool',
1293
+ type: 'bool',
1294
+ },
1295
+ { name: 'allowSetTerminals', internalType: 'bool', type: 'bool' },
1296
+ { name: 'allowSetController', internalType: 'bool', type: 'bool' },
1297
+ {
1298
+ name: 'allowAddAccountingContext',
1299
+ internalType: 'bool',
1300
+ type: 'bool',
1301
+ },
1302
+ { name: 'allowAddPriceFeed', internalType: 'bool', type: 'bool' },
1303
+ { name: 'ownerMustSendPayouts', internalType: 'bool', type: 'bool' },
1304
+ { name: 'holdFees', internalType: 'bool', type: 'bool' },
1305
+ {
1306
+ name: 'scopeCashOutsToLocalBalances',
1307
+ internalType: 'bool',
1308
+ type: 'bool',
1309
+ },
1310
+ { name: 'useDataHookForPay', internalType: 'bool', type: 'bool' },
1311
+ { name: 'useDataHookForCashOut', internalType: 'bool', type: 'bool' },
1312
+ { name: 'dataHook', internalType: 'address', type: 'address' },
1313
+ { name: 'metadata', internalType: 'uint16', type: 'uint16' },
1314
+ ],
1315
+ },
1316
+ ],
1317
+ stateMutability: 'view',
1318
+ },
1319
+ {
1320
+ type: 'function',
1321
+ inputs: [{ name: 'projectId', internalType: 'uint256', type: 'uint256' }],
1322
+ name: 'uriOf',
1323
+ outputs: [{ name: '', internalType: 'string', type: 'string' }],
1324
+ stateMutability: 'view',
1325
+ },
1326
+ {
1327
+ type: 'event',
1328
+ anonymous: false,
1329
+ inputs: [
1330
+ {
1331
+ name: 'holder',
1332
+ internalType: 'address',
1333
+ type: 'address',
1334
+ indexed: true,
1335
+ },
1336
+ {
1337
+ name: 'projectId',
1338
+ internalType: 'uint256',
1339
+ type: 'uint256',
1340
+ indexed: true,
1341
+ },
1342
+ {
1343
+ name: 'tokenCount',
1344
+ internalType: 'uint256',
1345
+ type: 'uint256',
1346
+ indexed: false,
1347
+ },
1348
+ { name: 'memo', internalType: 'string', type: 'string', indexed: false },
1349
+ {
1350
+ name: 'caller',
1351
+ internalType: 'address',
1352
+ type: 'address',
1353
+ indexed: false,
1354
+ },
1355
+ ],
1356
+ name: 'BurnTokens',
1357
+ },
1358
+ {
1359
+ type: 'event',
1360
+ anonymous: false,
1361
+ inputs: [
1362
+ {
1363
+ name: 'projectId',
1364
+ internalType: 'uint256',
1365
+ type: 'uint256',
1366
+ indexed: true,
1367
+ },
1368
+ {
1369
+ name: 'deployer',
1370
+ internalType: 'address',
1371
+ type: 'address',
1372
+ indexed: true,
1373
+ },
1374
+ {
1375
+ name: 'salt',
1376
+ internalType: 'bytes32',
1377
+ type: 'bytes32',
1378
+ indexed: false,
1379
+ },
1380
+ {
1381
+ name: 'saltHash',
1382
+ internalType: 'bytes32',
1383
+ type: 'bytes32',
1384
+ indexed: false,
1385
+ },
1386
+ {
1387
+ name: 'caller',
1388
+ internalType: 'address',
1389
+ type: 'address',
1390
+ indexed: false,
1391
+ },
1392
+ ],
1393
+ name: 'DeployERC20',
1394
+ },
1395
+ {
1396
+ type: 'event',
1397
+ anonymous: false,
1398
+ inputs: [
1399
+ {
1400
+ name: 'rulesetId',
1401
+ internalType: 'uint256',
1402
+ type: 'uint256',
1403
+ indexed: false,
1404
+ },
1405
+ {
1406
+ name: 'projectId',
1407
+ internalType: 'uint256',
1408
+ type: 'uint256',
1409
+ indexed: false,
1410
+ },
1411
+ {
1412
+ name: 'projectUri',
1413
+ internalType: 'string',
1414
+ type: 'string',
1415
+ indexed: false,
1416
+ },
1417
+ { name: 'memo', internalType: 'string', type: 'string', indexed: false },
1418
+ {
1419
+ name: 'caller',
1420
+ internalType: 'address',
1421
+ type: 'address',
1422
+ indexed: false,
1423
+ },
1424
+ ],
1425
+ name: 'LaunchProject',
1426
+ },
1427
+ {
1428
+ type: 'event',
1429
+ anonymous: false,
1430
+ inputs: [
1431
+ {
1432
+ name: 'rulesetId',
1433
+ internalType: 'uint256',
1434
+ type: 'uint256',
1435
+ indexed: false,
1436
+ },
1437
+ {
1438
+ name: 'projectId',
1439
+ internalType: 'uint256',
1440
+ type: 'uint256',
1441
+ indexed: false,
1442
+ },
1443
+ {
1444
+ name: 'projectUri',
1445
+ internalType: 'string',
1446
+ type: 'string',
1447
+ indexed: false,
1448
+ },
1449
+ { name: 'memo', internalType: 'string', type: 'string', indexed: false },
1450
+ {
1451
+ name: 'caller',
1452
+ internalType: 'address',
1453
+ type: 'address',
1454
+ indexed: false,
1455
+ },
1456
+ ],
1457
+ name: 'LaunchRulesets',
1458
+ },
1459
+ {
1460
+ type: 'event',
1461
+ anonymous: false,
1462
+ inputs: [
1463
+ {
1464
+ name: 'projectId',
1465
+ internalType: 'uint256',
1466
+ type: 'uint256',
1467
+ indexed: true,
1468
+ },
1469
+ {
1470
+ name: 'to',
1471
+ internalType: 'contract IERC165',
1472
+ type: 'address',
1473
+ indexed: false,
1474
+ },
1475
+ {
1476
+ name: 'caller',
1477
+ internalType: 'address',
1478
+ type: 'address',
1479
+ indexed: false,
1480
+ },
1481
+ ],
1482
+ name: 'Migrate',
1483
+ },
1484
+ {
1485
+ type: 'event',
1486
+ anonymous: false,
1487
+ inputs: [
1488
+ {
1489
+ name: 'beneficiary',
1490
+ internalType: 'address',
1491
+ type: 'address',
1492
+ indexed: true,
1493
+ },
1494
+ {
1495
+ name: 'projectId',
1496
+ internalType: 'uint256',
1497
+ type: 'uint256',
1498
+ indexed: true,
1499
+ },
1500
+ {
1501
+ name: 'tokenCount',
1502
+ internalType: 'uint256',
1503
+ type: 'uint256',
1504
+ indexed: false,
1505
+ },
1506
+ {
1507
+ name: 'beneficiaryTokenCount',
1508
+ internalType: 'uint256',
1509
+ type: 'uint256',
1510
+ indexed: false,
1511
+ },
1512
+ { name: 'memo', internalType: 'string', type: 'string', indexed: false },
1513
+ {
1514
+ name: 'reservedPercent',
1515
+ internalType: 'uint256',
1516
+ type: 'uint256',
1517
+ indexed: false,
1518
+ },
1519
+ {
1520
+ name: 'caller',
1521
+ internalType: 'address',
1522
+ type: 'address',
1523
+ indexed: false,
1524
+ },
1525
+ ],
1526
+ name: 'MintTokens',
1527
+ },
1528
+ {
1529
+ type: 'event',
1530
+ anonymous: false,
1531
+ inputs: [
1532
+ {
1533
+ name: 'rulesetId',
1534
+ internalType: 'uint256',
1535
+ type: 'uint256',
1536
+ indexed: false,
1537
+ },
1538
+ {
1539
+ name: 'projectId',
1540
+ internalType: 'uint256',
1541
+ type: 'uint256',
1542
+ indexed: false,
1543
+ },
1544
+ { name: 'memo', internalType: 'string', type: 'string', indexed: false },
1545
+ {
1546
+ name: 'caller',
1547
+ internalType: 'address',
1548
+ type: 'address',
1549
+ indexed: false,
1550
+ },
1551
+ ],
1552
+ name: 'QueueRulesets',
1553
+ },
1554
+ {
1555
+ type: 'event',
1556
+ anonymous: false,
1557
+ inputs: [
1558
+ {
1559
+ name: 'projectId',
1560
+ internalType: 'uint256',
1561
+ type: 'uint256',
1562
+ indexed: true,
1563
+ },
1564
+ {
1565
+ name: 'split',
1566
+ internalType: 'struct JBSplit',
1567
+ type: 'tuple',
1568
+ components: [
1569
+ { name: 'percent', internalType: 'uint32', type: 'uint32' },
1570
+ { name: 'projectId', internalType: 'uint64', type: 'uint64' },
1571
+ {
1572
+ name: 'beneficiary',
1573
+ internalType: 'address payable',
1574
+ type: 'address',
1575
+ },
1576
+ { name: 'preferAddToBalance', internalType: 'bool', type: 'bool' },
1577
+ { name: 'lockedUntil', internalType: 'uint48', type: 'uint48' },
1578
+ {
1579
+ name: 'hook',
1580
+ internalType: 'contract IJBSplitHook',
1581
+ type: 'address',
1582
+ },
1583
+ ],
1584
+ indexed: false,
1585
+ },
1586
+ {
1587
+ name: 'tokenCount',
1588
+ internalType: 'uint256',
1589
+ type: 'uint256',
1590
+ indexed: false,
1591
+ },
1592
+ { name: 'reason', internalType: 'bytes', type: 'bytes', indexed: false },
1593
+ {
1594
+ name: 'caller',
1595
+ internalType: 'address',
1596
+ type: 'address',
1597
+ indexed: false,
1598
+ },
1599
+ ],
1600
+ name: 'ReservedDistributionReverted',
1601
+ },
1602
+ {
1603
+ type: 'event',
1604
+ anonymous: false,
1605
+ inputs: [
1606
+ {
1607
+ name: 'projectId',
1608
+ internalType: 'uint256',
1609
+ type: 'uint256',
1610
+ indexed: true,
1611
+ },
1612
+ {
1613
+ name: 'rulesetId',
1614
+ internalType: 'uint256',
1615
+ type: 'uint256',
1616
+ indexed: true,
1617
+ },
1618
+ {
1619
+ name: 'groupId',
1620
+ internalType: 'uint256',
1621
+ type: 'uint256',
1622
+ indexed: true,
1623
+ },
1624
+ {
1625
+ name: 'split',
1626
+ internalType: 'struct JBSplit',
1627
+ type: 'tuple',
1628
+ components: [
1629
+ { name: 'percent', internalType: 'uint32', type: 'uint32' },
1630
+ { name: 'projectId', internalType: 'uint64', type: 'uint64' },
1631
+ {
1632
+ name: 'beneficiary',
1633
+ internalType: 'address payable',
1634
+ type: 'address',
1635
+ },
1636
+ { name: 'preferAddToBalance', internalType: 'bool', type: 'bool' },
1637
+ { name: 'lockedUntil', internalType: 'uint48', type: 'uint48' },
1638
+ {
1639
+ name: 'hook',
1640
+ internalType: 'contract IJBSplitHook',
1641
+ type: 'address',
1642
+ },
1643
+ ],
1644
+ indexed: false,
1645
+ },
1646
+ {
1647
+ name: 'tokenCount',
1648
+ internalType: 'uint256',
1649
+ type: 'uint256',
1650
+ indexed: false,
1651
+ },
1652
+ {
1653
+ name: 'caller',
1654
+ internalType: 'address',
1655
+ type: 'address',
1656
+ indexed: false,
1657
+ },
1658
+ ],
1659
+ name: 'SendReservedTokensToSplit',
1660
+ },
1661
+ {
1662
+ type: 'event',
1663
+ anonymous: false,
1664
+ inputs: [
1665
+ {
1666
+ name: 'rulesetId',
1667
+ internalType: 'uint256',
1668
+ type: 'uint256',
1669
+ indexed: true,
1670
+ },
1671
+ {
1672
+ name: 'rulesetCycleNumber',
1673
+ internalType: 'uint256',
1674
+ type: 'uint256',
1675
+ indexed: true,
1676
+ },
1677
+ {
1678
+ name: 'projectId',
1679
+ internalType: 'uint256',
1680
+ type: 'uint256',
1681
+ indexed: true,
1682
+ },
1683
+ {
1684
+ name: 'owner',
1685
+ internalType: 'address',
1686
+ type: 'address',
1687
+ indexed: false,
1688
+ },
1689
+ {
1690
+ name: 'tokenCount',
1691
+ internalType: 'uint256',
1692
+ type: 'uint256',
1693
+ indexed: false,
1694
+ },
1695
+ {
1696
+ name: 'leftoverAmount',
1697
+ internalType: 'uint256',
1698
+ type: 'uint256',
1699
+ indexed: false,
1700
+ },
1701
+ {
1702
+ name: 'caller',
1703
+ internalType: 'address',
1704
+ type: 'address',
1705
+ indexed: false,
1706
+ },
1707
+ ],
1708
+ name: 'SendReservedTokensToSplits',
1709
+ },
1710
+ {
1711
+ type: 'event',
1712
+ anonymous: false,
1713
+ inputs: [
1714
+ {
1715
+ name: 'projectId',
1716
+ internalType: 'uint256',
1717
+ type: 'uint256',
1718
+ indexed: true,
1719
+ },
1720
+ { name: 'uri', internalType: 'string', type: 'string', indexed: false },
1721
+ {
1722
+ name: 'caller',
1723
+ internalType: 'address',
1724
+ type: 'address',
1725
+ indexed: false,
1726
+ },
1727
+ ],
1728
+ name: 'SetUri',
1729
+ },
1730
+ {
1731
+ type: 'event',
1732
+ anonymous: false,
1733
+ inputs: [
1734
+ {
1735
+ name: 'projectId',
1736
+ internalType: 'uint256',
1737
+ type: 'uint256',
1738
+ indexed: true,
1739
+ },
1740
+ {
1741
+ name: 'hook',
1742
+ internalType: 'address',
1743
+ type: 'address',
1744
+ indexed: false,
1745
+ },
1746
+ { name: 'reason', internalType: 'bytes', type: 'bytes', indexed: false },
1747
+ {
1748
+ name: 'caller',
1749
+ internalType: 'address',
1750
+ type: 'address',
1751
+ indexed: false,
1752
+ },
1753
+ ],
1754
+ name: 'SplitHookReverted',
1755
+ },
1756
+ {
1757
+ type: 'error',
1758
+ inputs: [{ name: 'projectId', internalType: 'uint256', type: 'uint256' }],
1759
+ name: 'JBController_AddingPriceFeedNotAllowed',
1760
+ },
1761
+ {
1762
+ type: 'error',
1763
+ inputs: [
1764
+ { name: 'projectId', internalType: 'uint256', type: 'uint256' },
1765
+ { name: 'rulesetId', internalType: 'uint256', type: 'uint256' },
1766
+ ],
1767
+ name: 'JBController_CreditTransfersPaused',
1768
+ },
1769
+ {
1770
+ type: 'error',
1771
+ inputs: [
1772
+ { name: 'rate', internalType: 'uint256', type: 'uint256' },
1773
+ { name: 'limit', internalType: 'uint256', type: 'uint256' },
1774
+ ],
1775
+ name: 'JBController_InvalidCashOutTaxRate',
1776
+ },
1777
+ {
1778
+ type: 'error',
1779
+ inputs: [
1780
+ { name: 'value', internalType: 'uint256', type: 'uint256' },
1781
+ { name: 'requiredFee', internalType: 'uint256', type: 'uint256' },
1782
+ ],
1783
+ name: 'JBController_InvalidCreationFee',
1784
+ },
1785
+ {
1786
+ type: 'error',
1787
+ inputs: [
1788
+ { name: 'percent', internalType: 'uint256', type: 'uint256' },
1789
+ { name: 'limit', internalType: 'uint256', type: 'uint256' },
1790
+ ],
1791
+ name: 'JBController_InvalidReservedPercent',
1792
+ },
1793
+ {
1794
+ type: 'error',
1795
+ inputs: [{ name: 'caller', internalType: 'address', type: 'address' }],
1796
+ name: 'JBController_MintNotAllowedAndNotTerminalOrHook',
1797
+ },
1798
+ {
1799
+ type: 'error',
1800
+ inputs: [{ name: 'projectId', internalType: 'uint256', type: 'uint256' }],
1801
+ name: 'JBController_NoReservedTokens',
1802
+ },
1803
+ {
1804
+ type: 'error',
1805
+ inputs: [
1806
+ { name: 'sender', internalType: 'address', type: 'address' },
1807
+ {
1808
+ name: 'directory',
1809
+ internalType: 'contract IJBDirectory',
1810
+ type: 'address',
1811
+ },
1812
+ ],
1813
+ name: 'JBController_OnlyDirectory',
1814
+ },
1815
+ {
1816
+ type: 'error',
1817
+ inputs: [
1818
+ {
1819
+ name: 'pendingReservedTokenBalance',
1820
+ internalType: 'uint256',
1821
+ type: 'uint256',
1822
+ },
1823
+ ],
1824
+ name: 'JBController_PendingReservedTokens',
1825
+ },
1826
+ {
1827
+ type: 'error',
1828
+ inputs: [{ name: 'projectId', internalType: 'uint256', type: 'uint256' }],
1829
+ name: 'JBController_ReservedTokenSplitProjectSameAsOwner',
1830
+ },
1831
+ {
1832
+ type: 'error',
1833
+ inputs: [{ name: 'projectId', internalType: 'uint256', type: 'uint256' }],
1834
+ name: 'JBController_RulesetSetTokenNotAllowed',
1835
+ },
1836
+ {
1837
+ type: 'error',
1838
+ inputs: [{ name: 'projectId', internalType: 'uint256', type: 'uint256' }],
1839
+ name: 'JBController_RulesetsAlreadyLaunched',
1840
+ },
1841
+ {
1842
+ type: 'error',
1843
+ inputs: [
1844
+ { name: 'projectId', internalType: 'uint256', type: 'uint256' },
1845
+ {
1846
+ name: 'rulesetConfigurationCount',
1847
+ internalType: 'uint256',
1848
+ type: 'uint256',
1849
+ },
1850
+ ],
1851
+ name: 'JBController_RulesetsArrayEmpty',
1852
+ },
1853
+ {
1854
+ type: 'error',
1855
+ inputs: [
1856
+ { name: 'terminal', internalType: 'address', type: 'address' },
1857
+ { name: 'token', internalType: 'address', type: 'address' },
1858
+ { name: 'allowance', internalType: 'uint256', type: 'uint256' },
1859
+ ],
1860
+ name: 'JBController_TerminalTokensNotTransferred',
1861
+ },
1862
+ {
1863
+ type: 'error',
1864
+ inputs: [
1865
+ { name: 'projectId', internalType: 'uint256', type: 'uint256' },
1866
+ { name: 'holder', internalType: 'address', type: 'address' },
1867
+ ],
1868
+ name: 'JBController_ZeroTokensToBurn',
1869
+ },
1870
+ {
1871
+ type: 'error',
1872
+ inputs: [
1873
+ { name: 'projectId', internalType: 'uint256', type: 'uint256' },
1874
+ { name: 'beneficiary', internalType: 'address', type: 'address' },
1875
+ ],
1876
+ name: 'JBController_ZeroTokensToMint',
1877
+ },
1878
+ {
1879
+ type: 'error',
1880
+ inputs: [
1881
+ { name: 'account', internalType: 'address', type: 'address' },
1882
+ { name: 'sender', internalType: 'address', type: 'address' },
1883
+ { name: 'projectId', internalType: 'uint256', type: 'uint256' },
1884
+ { name: 'permissionId', internalType: 'uint256', type: 'uint256' },
1885
+ ],
1886
+ name: 'JBPermissioned_Unauthorized',
1887
+ },
1888
+ {
1889
+ type: 'error',
1890
+ inputs: [
1891
+ { name: 'x', internalType: 'uint256', type: 'uint256' },
1892
+ { name: 'y', internalType: 'uint256', type: 'uint256' },
1893
+ { name: 'denominator', internalType: 'uint256', type: 'uint256' },
1894
+ ],
1895
+ name: 'PRBMath_MulDiv_Overflow',
1896
+ },
1897
+ {
1898
+ type: 'error',
1899
+ inputs: [{ name: 'token', internalType: 'address', type: 'address' }],
1900
+ name: 'SafeERC20FailedOperation',
1901
+ },
1902
+ ];
1903
+ //# sourceMappingURL=jbControllerAbi.js.map