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