@artblocks/abx-sdk 0.1.0-alpha.4 → 0.1.0-alpha.40

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 (159) hide show
  1. package/CHANGELOG.md +64 -0
  2. package/README.md +130 -0
  3. package/dist/abi/generated.d.ts +8502 -129
  4. package/dist/abi/generated.d.ts.map +1 -1
  5. package/dist/abi/generated.js +40 -22
  6. package/dist/abi/generated.js.map +1 -1
  7. package/dist/abi/index.d.ts +2645 -168
  8. package/dist/abi/index.d.ts.map +1 -1
  9. package/dist/abi/index.js +34 -7
  10. package/dist/abi/index.js.map +1 -1
  11. package/dist/anchors.d.ts +325 -0
  12. package/dist/anchors.d.ts.map +1 -0
  13. package/dist/anchors.js +740 -0
  14. package/dist/anchors.js.map +1 -0
  15. package/dist/chain-support.d.ts +28 -0
  16. package/dist/chain-support.d.ts.map +1 -0
  17. package/dist/chain-support.js +65 -0
  18. package/dist/chain-support.js.map +1 -0
  19. package/dist/chain-support.json +60 -0
  20. package/dist/chains.d.ts +24 -10
  21. package/dist/chains.d.ts.map +1 -1
  22. package/dist/chains.js +51 -17
  23. package/dist/chains.js.map +1 -1
  24. package/dist/chunks.d.ts +162 -31
  25. package/dist/chunks.d.ts.map +1 -1
  26. package/dist/chunks.js +179 -14
  27. package/dist/chunks.js.map +1 -1
  28. package/dist/clients.d.ts +23 -11
  29. package/dist/clients.d.ts.map +1 -1
  30. package/dist/clients.js +17 -18
  31. package/dist/clients.js.map +1 -1
  32. package/dist/contract-generations.d.ts +58 -0
  33. package/dist/contract-generations.d.ts.map +1 -0
  34. package/dist/contract-generations.js +109 -0
  35. package/dist/contract-generations.js.map +1 -0
  36. package/dist/contract-generations.json +48 -0
  37. package/dist/create2.d.ts +84 -1
  38. package/dist/create2.d.ts.map +1 -1
  39. package/dist/create2.js +158 -2
  40. package/dist/create2.js.map +1 -1
  41. package/dist/creator-token.d.ts +132 -0
  42. package/dist/creator-token.d.ts.map +1 -0
  43. package/dist/creator-token.js +183 -0
  44. package/dist/creator-token.js.map +1 -0
  45. package/dist/deploy.d.ts +234 -14
  46. package/dist/deploy.d.ts.map +1 -1
  47. package/dist/deploy.js +289 -111
  48. package/dist/deploy.js.map +1 -1
  49. package/dist/deployments.d.ts +38 -5
  50. package/dist/deployments.d.ts.map +1 -1
  51. package/dist/deployments.js +156 -30
  52. package/dist/deployments.js.map +1 -1
  53. package/dist/deps.d.ts +123 -6
  54. package/dist/deps.d.ts.map +1 -1
  55. package/dist/deps.js +249 -7
  56. package/dist/deps.js.map +1 -1
  57. package/dist/env.d.ts +5 -4
  58. package/dist/env.d.ts.map +1 -1
  59. package/dist/env.js +20 -5
  60. package/dist/env.js.map +1 -1
  61. package/dist/errors.d.ts +109 -0
  62. package/dist/errors.d.ts.map +1 -0
  63. package/dist/errors.js +148 -0
  64. package/dist/errors.js.map +1 -0
  65. package/dist/execute.d.ts +118 -0
  66. package/dist/execute.d.ts.map +1 -0
  67. package/dist/execute.js +159 -0
  68. package/dist/execute.js.map +1 -0
  69. package/dist/gateways.d.ts +79 -0
  70. package/dist/gateways.d.ts.map +1 -0
  71. package/dist/gateways.js +156 -0
  72. package/dist/gateways.js.map +1 -0
  73. package/dist/generator-document.d.ts +57 -0
  74. package/dist/generator-document.d.ts.map +1 -0
  75. package/dist/generator-document.js +123 -0
  76. package/dist/generator-document.js.map +1 -0
  77. package/dist/generator.d.ts +44 -2
  78. package/dist/generator.d.ts.map +1 -1
  79. package/dist/generator.js +29 -0
  80. package/dist/generator.js.map +1 -1
  81. package/dist/index.d.ts +19 -3
  82. package/dist/index.d.ts.map +1 -1
  83. package/dist/index.js +19 -3
  84. package/dist/index.js.map +1 -1
  85. package/dist/inspect.d.ts +48 -0
  86. package/dist/inspect.d.ts.map +1 -0
  87. package/dist/inspect.js +295 -0
  88. package/dist/inspect.js.map +1 -0
  89. package/dist/migrate.d.ts +41 -0
  90. package/dist/migrate.d.ts.map +1 -0
  91. package/dist/migrate.js +142 -0
  92. package/dist/migrate.js.map +1 -0
  93. package/dist/mime.d.ts +11 -0
  94. package/dist/mime.d.ts.map +1 -0
  95. package/dist/mime.js +40 -0
  96. package/dist/mime.js.map +1 -0
  97. package/dist/node.d.ts +69 -0
  98. package/dist/node.d.ts.map +1 -0
  99. package/dist/node.js +92 -0
  100. package/dist/node.js.map +1 -0
  101. package/dist/onchain-uri.d.ts +110 -0
  102. package/dist/onchain-uri.d.ts.map +1 -0
  103. package/dist/onchain-uri.js +276 -0
  104. package/dist/onchain-uri.js.map +1 -0
  105. package/dist/ops.d.ts +507 -14
  106. package/dist/ops.d.ts.map +1 -1
  107. package/dist/ops.js +850 -34
  108. package/dist/ops.js.map +1 -1
  109. package/dist/policy.d.ts +57 -0
  110. package/dist/policy.d.ts.map +1 -0
  111. package/dist/policy.js +35 -0
  112. package/dist/policy.js.map +1 -0
  113. package/dist/probe.d.ts +58 -0
  114. package/dist/probe.d.ts.map +1 -1
  115. package/dist/probe.js +190 -9
  116. package/dist/probe.js.map +1 -1
  117. package/dist/reconstruct.d.ts +141 -3
  118. package/dist/reconstruct.d.ts.map +1 -1
  119. package/dist/reconstruct.js +479 -100
  120. package/dist/reconstruct.js.map +1 -1
  121. package/dist/resume.d.ts +147 -0
  122. package/dist/resume.d.ts.map +1 -0
  123. package/dist/resume.js +146 -0
  124. package/dist/resume.js.map +1 -0
  125. package/dist/script-chunks.d.ts +105 -0
  126. package/dist/script-chunks.d.ts.map +1 -0
  127. package/dist/script-chunks.js +158 -0
  128. package/dist/script-chunks.js.map +1 -0
  129. package/dist/service.d.ts +155 -9
  130. package/dist/service.d.ts.map +1 -1
  131. package/dist/service.js +103 -11
  132. package/dist/service.js.map +1 -1
  133. package/dist/spine.d.ts +47 -4
  134. package/dist/spine.d.ts.map +1 -1
  135. package/dist/spine.js +0 -0
  136. package/dist/spine.js.map +1 -1
  137. package/dist/staging.d.ts +139 -0
  138. package/dist/staging.d.ts.map +1 -0
  139. package/dist/staging.js +139 -0
  140. package/dist/staging.js.map +1 -0
  141. package/dist/token.d.ts +11 -1
  142. package/dist/token.d.ts.map +1 -1
  143. package/dist/token.js +32 -1
  144. package/dist/token.js.map +1 -1
  145. package/dist/tokendata.d.ts +63 -3
  146. package/dist/tokendata.d.ts.map +1 -1
  147. package/dist/tokendata.js +81 -19
  148. package/dist/tokendata.js.map +1 -1
  149. package/dist/tokens.d.ts +119 -0
  150. package/dist/tokens.d.ts.map +1 -0
  151. package/dist/tokens.js +317 -0
  152. package/dist/tokens.js.map +1 -0
  153. package/dist/types.d.ts +107 -5
  154. package/dist/types.d.ts.map +1 -1
  155. package/dist/util.d.ts +74 -0
  156. package/dist/util.d.ts.map +1 -0
  157. package/dist/util.js +106 -0
  158. package/dist/util.js.map +1 -0
  159. package/package.json +15 -6
package/dist/deploy.d.ts CHANGED
@@ -1,4 +1,5 @@
1
- import { type Account, type Address, type Hex, type PublicClient, type WalletClient } from 'viem';
1
+ import { type Address, type Hex, type PublicClient } from 'viem';
2
+ import type { SendTx } from './execute.js';
2
3
  /** One on-chain metadata field to set at deploy (bytes32 `field`/`representation`, bytes `value`). */
3
4
  export interface OnChainFieldInput {
4
5
  field: Hex;
@@ -23,6 +24,18 @@ export interface OneOfOneInitParams {
23
24
  contractURIRenderer: Address;
24
25
  royaltyReceiver: Address;
25
26
  royaltyBps: number;
27
+ /** Royalty ceiling in basis points (0–10000, up to 100%). Owner-set at deploy and reduce-only
28
+ * after (`reduceMaxRoyaltyBps`); the initial `royaltyBps` must be <= this. Tooling defaults it
29
+ * to 1000 (10%). A monotonic-down cap is a buyer-readable "royalty can never exceed X" guarantee. */
30
+ maxRoyaltyBps: number;
31
+ /** Opt-in burn (default `false`). `true` lets holders (or approved operators) burn their token via
32
+ * `burn(...)`; `false` means the token can never be destroyed, by anyone. Fixed at deploy. */
33
+ burnable: boolean;
34
+ /** `zeroAddress` = plain ERC-721 (the default — no trace of 721C, ever); non-zero = permanent
35
+ * ERC-721C enrollment with that transfer validator (must have code on-chain, else the deploy
36
+ * reverts `InvalidTransferValidator()`). Enrollment is deploy-time-only and irreversible —
37
+ * the owner can later re-point or suspend (zero) the validator, never un-enroll. */
38
+ transferValidator: Address;
26
39
  /** Optional on-chain metadata fields for token 0 and for the collection. */
27
40
  tokenFields: OnChainFieldInput[];
28
41
  contractFields: OnChainFieldInput[];
@@ -47,6 +60,18 @@ export interface SeriesInitParams {
47
60
  contractURIRenderer: Address;
48
61
  royaltyReceiver: Address;
49
62
  royaltyBps: number;
63
+ /** Royalty ceiling in basis points (0–10000, up to 100%). Owner-set at deploy and reduce-only
64
+ * after (`reduceMaxRoyaltyBps`); the initial `royaltyBps` must be <= this. Tooling defaults it
65
+ * to 1000 (10%). A monotonic-down cap is a buyer-readable "royalty can never exceed X" guarantee. */
66
+ maxRoyaltyBps: number;
67
+ /** Opt-in burn (default `false`). `true` lets holders (or approved operators) burn their token via
68
+ * `burn(...)`; `false` means the token can never be destroyed, by anyone. Fixed at deploy. */
69
+ burnable: boolean;
70
+ /** `zeroAddress` = plain ERC-721 (the default — no trace of 721C, ever); non-zero = permanent
71
+ * ERC-721C enrollment with that transfer validator (must have code on-chain, else the deploy
72
+ * reverts `InvalidTransferValidator()`). Enrollment is deploy-time-only and irreversible —
73
+ * the owner can later re-point or suspend (zero) the validator, never un-enroll. */
74
+ transferValidator: Address;
50
75
  /** Series size N (> 0): the supply cap. Monotonically non-increasing after deploy. */
51
76
  maxInvocations: bigint | number;
52
77
  /** Primary-sale payout destination (`0x0` = none). */
@@ -71,6 +96,97 @@ export interface SeriesCodeInitParams extends SeriesInitParams {
71
96
  /** Opt out of delegate.xyz on the TokenOwner auth leg (default false = canonical registry). */
72
97
  disableTokenOwnerDelegation: boolean;
73
98
  }
99
+ /** One per-token on-chain metadata field to set at deploy, keyed by `tokenId` — the edition twin
100
+ * of {@link SeriesTokenFieldInput} (identical shape; ABX's `OnChainMetadata.TokenFieldInput` has
101
+ * no standard-specific fields). Reused directly rather than duplicated. */
102
+ export type EditionTokenFieldInput = SeriesTokenFieldInput;
103
+ /** Mirrors `OneOfOneEdition.InitParams` — copies of a single work, id space fixed to `{0}`. */
104
+ export interface OneOfOneEditionInitParams {
105
+ owner: Address;
106
+ /** Recipient of the deploy-time mint (`0x0` or `mintAmount: 0` ⇒ defer all minting). */
107
+ mintTo: Address;
108
+ /** Copies of id 0 to mint to `mintTo` at deploy (`0` ⇒ none). */
109
+ mintAmount: bigint | number;
110
+ name: string;
111
+ symbol: string;
112
+ /** Off-chain resolver base for `uri(id)`; the pointer is derived on-chain as
113
+ * `{base}/{chainId}/{address}/{id}`. */
114
+ tokenURIBase: string;
115
+ /** On-chain renderer for `uri(id)`; `0x0` ⇒ resolve off-chain via the base. */
116
+ tokenURIRenderer: Address;
117
+ contractURIBase: string;
118
+ contractURIRenderer: Address;
119
+ royaltyReceiver: Address;
120
+ royaltyBps: number;
121
+ /** Royalty ceiling in basis points (0–10000, up to 100%). Owner-set at deploy and reduce-only
122
+ * after (`reduceMaxRoyaltyBps`); the initial `royaltyBps` must be <= this. Tooling defaults it
123
+ * to 1000 (10%). A monotonic-down cap is a buyer-readable "royalty can never exceed X" guarantee. */
124
+ maxRoyaltyBps: number;
125
+ /** Opt-in burn (default `false`). `true` lets holders (or approved operators) burn their token via
126
+ * `burn(...)`; `false` means the token can never be destroyed, by anyone. Fixed at deploy. */
127
+ burnable: boolean;
128
+ /** `zeroAddress` = a plain ERC-1155 forever (the default). Non-zero = permanent ERC-1155C
129
+ * enrollment with that transfer validator (must have code on-chain). */
130
+ transferValidator: Address;
131
+ /** The default supply cap for id 0 (`0` = open edition, uncapped). */
132
+ editionSize: bigint | number;
133
+ /** Primary-sale payout destination (`0x0` = none). */
134
+ primaryPayee: Address;
135
+ /** Initial authorized minter — a single address (`0x0` = owner-only). */
136
+ minter: Address;
137
+ /** Initial mint-pause state — `true` restricts minting to the owner until unpaused (deploy-time
138
+ * reserves still mint). */
139
+ paused: boolean;
140
+ /** Optional on-chain metadata fields for id 0 (each field → one representation). */
141
+ tokenFields: OnChainFieldInput[];
142
+ contractFields: OnChainFieldInput[];
143
+ }
144
+ /** Mirrors `EditionImage.InitParams` — copies of many distinct works (N ids × copies each). */
145
+ export interface EditionImageInitParams {
146
+ owner: Address;
147
+ name: string;
148
+ symbol: string;
149
+ tokenURIBase: string;
150
+ tokenURIRenderer: Address;
151
+ contractURIBase: string;
152
+ contractURIRenderer: Address;
153
+ royaltyReceiver: Address;
154
+ royaltyBps: number;
155
+ /** Royalty ceiling in basis points (0–10000, up to 100%). Owner-set at deploy and reduce-only
156
+ * after (`reduceMaxRoyaltyBps`); the initial `royaltyBps` must be <= this. Tooling defaults it
157
+ * to 1000 (10%). A monotonic-down cap is a buyer-readable "royalty can never exceed X" guarantee. */
158
+ maxRoyaltyBps: number;
159
+ /** Opt-in burn (default `false`). `true` lets holders (or approved operators) burn their token via
160
+ * `burn(...)`; `false` means the token can never be destroyed, by anyone. Fixed at deploy. */
161
+ burnable: boolean;
162
+ transferValidator: Address;
163
+ /** The id-space cap N (> 0): the number of distinct works this project may ever have.
164
+ * Monotonically non-increasing (floor = the id high-water mark, NOT `totalSupply()` — ids are
165
+ * caller-named, not sequential). */
166
+ maxInvocations: bigint | number;
167
+ /** The default per-id copy cap for EVERY id (`0` = open edition, uncapped). */
168
+ editionSize: bigint | number;
169
+ primaryPayee: Address;
170
+ minter: Address;
171
+ paused: boolean;
172
+ /** Recipient for the deploy-time mint (`0x0` ⇒ defer all minting). */
173
+ mintTo: Address;
174
+ /** Distinct works to mint at deploy, ids `[0, mintCount)`; `<= maxInvocations`. */
175
+ mintCount: bigint | number;
176
+ /** Copies of EACH deploy-minted id (must be `> 0` if `mintCount > 0`). */
177
+ mintAmount: bigint | number;
178
+ /** Optional per-token on-chain metadata fields, keyed by id. */
179
+ tokenFields: EditionTokenFieldInput[];
180
+ contractFields: OnChainFieldInput[];
181
+ }
182
+ /** {@link EditionImageInitParams} plus the code-project extension config ({EditionCode.InitParams}).
183
+ * NOTE: unlike {@link SeriesCodeInitParams}, there is no `disableTokenOwnerDelegation` — editions
184
+ * have no TokenOwner-leg delegation to opt out of (see `ConfigurableParams`'s edition init path;
185
+ * the auth leg generalizes to "any holder" instead — `balanceOf(sender, id) > 0`). */
186
+ export interface EditionCodeInitParams extends EditionImageInitParams {
187
+ /** IAbxSeedSource the token calls at each id's FIRST mint (`0x0` = no mint-time seed). */
188
+ seedSource: Address;
189
+ }
74
190
  export interface DeployResult<T extends string> {
75
191
  txHash: Hex;
76
192
  blockNumber: bigint;
@@ -89,6 +205,11 @@ export declare function saltFor(deployer: Address, entropy?: Hex): Hex;
89
205
  * A permissionless salt: an all-zero guard prefix, so **anyone** may deploy to the
90
206
  * address it predicts (a shared, canonical deployment). No front-run protection —
91
207
  * use only when a publicly-deployable, caller-independent address is the point.
208
+ *
209
+ * **Never use this for a pre-published or pre-funded address.** If you predict an address with
210
+ * this salt and share it (or send value to it) before deploying, a third party can occupy that
211
+ * exact address first with their own `InitParams` (their owner, their URIs). For any address a
212
+ * creator reserves, use {@link saltFor} — its deployer-bound prefix is front-run-proof.
92
213
  */
93
214
  export declare function permissionlessSalt(entropy?: Hex): Hex;
94
215
  /** The address a salt reserves the deploy to (`0x0` ⇒ permissionless). */
@@ -98,29 +219,40 @@ export declare function saltGuard(salt: Hex): Address;
98
219
  * once deployed, its address is what platforms allowlist. Deploy this once per
99
220
  * (chain, core version) and reuse it for every clone.
100
221
  */
101
- export declare function deployFactory(wallet: WalletClient, account: Account, publicClient: PublicClient): Promise<DeployResult<'factory'> & {
222
+ export declare function deployFactory(send: SendTx, publicClient: PublicClient): Promise<DeployResult<'factory'> & {
102
223
  factory: Address;
103
224
  implementation: Address;
225
+ metadataLib: Address;
104
226
  }>;
105
227
  /**
106
228
  * Deploy the canonical Series clone factory — the trust anchor for multi-token drops.
107
229
  * Ownerless and immutable; the sibling of `deployFactory`. Deploy once per (chain, core
108
230
  * version). The shared renderer + chunk store are reused (deploy them separately).
109
231
  */
110
- export declare function deploySeriesFactory(wallet: WalletClient, account: Account, publicClient: PublicClient): Promise<DeployResult<'seriesFactory'> & {
232
+ export declare function deploySeriesFactory(send: SendTx, publicClient: PublicClient): Promise<DeployResult<'seriesFactory'> & {
111
233
  factory: Address;
112
234
  implementation: Address;
235
+ metadataLib: Address;
113
236
  }>;
114
237
  /**
115
- * Deploy the code-project trust root on a chain with no canonical set: the two
116
- * delegatecalled write-path libraries first ({AbxParamsLib}, {AbxCodeLib}), the factory
117
- * bytecode LINKED against them (solc placeholders replaced — what forge does at build
118
- * time, done here so a sandbox/fresh chain needs no forge), then the factory (whose
119
- * constructor deploys the {SeriesCode} implementation).
238
+ * Deploy the code-project trust root on a chain with no canonical set: the two delegatecalled
239
+ * write-path libraries first ({AbxParamsLib}, {AbxCodeLib}), the factory bytecode LINKED against
240
+ * them (solc placeholders replaced — what forge does at build time, done here so a sandbox/fresh
241
+ * chain needs no forge), then the factory (whose constructor deploys the {SeriesCode}
242
+ * implementation).
243
+ *
244
+ * All three go through the keyless CREATE2 proxy at canonical `AbxSalts` salts, so all three land at
245
+ * addresses that are the same on every chain and computable before the first transaction — the
246
+ * factory's included: linking substitutes an address into already-compiled bytecode, so once the
247
+ * libraries are predictable the linked initcode is fixed too (`predictSeriesCodeFactory()`). The
248
+ * ordering below is still sequential, but now for a plain data-dependency reason rather than a
249
+ * nonce one. See `create2.ts`'s write-path-library note for why the old "libraries are
250
+ * nonce-dependent" story was wrong, and for the compile-time-linking trap that IS real.
120
251
  */
121
- export declare function deploySeriesCodeFactory(wallet: WalletClient, account: Account, publicClient: PublicClient): Promise<{
252
+ export declare function deploySeriesCodeFactory(send: SendTx, publicClient: PublicClient): Promise<{
122
253
  factory: Address;
123
254
  implementation: Address;
255
+ metadataLib: Address;
124
256
  paramsLib: Address;
125
257
  codeLib: Address;
126
258
  txHash: Hex;
@@ -130,7 +262,7 @@ export declare function deploySeriesCodeFactory(wallet: WalletClient, account: A
130
262
  * keyless proxy + canonical salt → the SAME address on every chain (matches `DeploySeedSource.s.sol`
131
263
  * and the manifest). The seed source is single-profile, so — unlike the SeriesCode factory — the
132
264
  * SDK's bytecode is the canonical one. */
133
- export declare function deploySeedSource(wallet: WalletClient, account: Account, publicClient: PublicClient): Promise<{
265
+ export declare function deploySeedSource(send: SendTx, publicClient: PublicClient): Promise<{
134
266
  seedSource: Address;
135
267
  txHash: Hex;
136
268
  }>;
@@ -140,7 +272,7 @@ export declare function deploySeedSource(wallet: WalletClient, account: Account,
140
272
  * their URI-renderer config. It reads each token's on-chain fields and returns a
141
273
  * `data:application/json` URI, so a token using it resolves with zero off-chain infra.
142
274
  */
143
- export declare function deployRenderer(wallet: WalletClient, account: Account, publicClient: PublicClient): Promise<DeployResult<'renderer'> & {
275
+ export declare function deployRenderer(send: SendTx, publicClient: PublicClient): Promise<DeployResult<'renderer'> & {
144
276
  renderer: Address;
145
277
  specVersion: bigint;
146
278
  }>;
@@ -150,7 +282,7 @@ export declare function deployRenderer(wallet: WalletClient, account: Account, p
150
282
  * (config is keyed by token address, authority defers to each token's owner). Sibling of
151
283
  * `deployRenderer` — ownerless, no constructor args, safe for any funded signer to stand up.
152
284
  */
153
- export declare function deployFixedPriceMinter(wallet: WalletClient, account: Account, publicClient: PublicClient): Promise<DeployResult<'fixedPriceMinter'> & {
285
+ export declare function deployFixedPriceMinter(send: SendTx, publicClient: PublicClient): Promise<DeployResult<'fixedPriceMinter'> & {
154
286
  minter: Address;
155
287
  }>;
156
288
  /**
@@ -168,7 +300,7 @@ export declare function predictClone(publicClient: PublicClient, args: {
168
300
  * address (so URIs can be baked in before deploy). Returns the clone address and
169
301
  * the block it landed in — the indexer's start block.
170
302
  */
171
- export declare function deployOneOfOne(wallet: WalletClient, account: Account | Address, publicClient: PublicClient, args: {
303
+ export declare function deployOneOfOne(send: SendTx, publicClient: PublicClient, args: {
172
304
  factory: Address;
173
305
  params: OneOfOneInitParams;
174
306
  salt: Hex;
@@ -182,11 +314,99 @@ export declare function deployOneOfOne(wallet: WalletClient, account: Account |
182
314
  * computes with its own implementation. `params.mintCount`/`mintTo` decide the deploy-time
183
315
  * mint; anything larger mints post-deploy under a gas budget.
184
316
  */
185
- export declare function deploySeries(wallet: WalletClient, account: Account | Address, publicClient: PublicClient, args: {
317
+ export declare function deploySeries(send: SendTx, publicClient: PublicClient, args: {
186
318
  factory: Address;
187
319
  params: SeriesInitParams;
188
320
  salt: Hex;
189
321
  }): Promise<DeployResult<'clone'> & {
190
322
  clone: Address;
191
323
  }>;
324
+ /**
325
+ * Deploy the canonical `OneOfOneEditionFactory` — the 1/1-edition trust anchor. Unlike {@link
326
+ * deployFactory} (the 721 1/1 factory, a plain contract creation), this one goes through the
327
+ * keyless CREATE2 proxy with the canonical `AbxSalts.ONE_OF_ONE_EDITION_FACTORY` salt — matching
328
+ * how `contracts/script/DeployOneOfOneEdition.s.sol` actually deploys it — so its address is the
329
+ * SAME on every chain and predictable before the deploy tx (`predictOneOfOneEditionFactory()`).
330
+ *
331
+ * Library-linked, like the two code factories: `OneOfOneEdition` delegates its uri /
332
+ * creator-token / edition-supply bodies into `AbxEditionLib`, so this deploys `AbxParamsLib` +
333
+ * `AbxEditionLib` first ({@link ensureEditionLibraries}) and sends the factory's initcode LINKED
334
+ * against the settled library address. Linking costs nothing in determinism — see `create2.ts`'s
335
+ * write-path-library note.
336
+ */
337
+ export declare function deployOneOfOneEditionFactory(send: SendTx, publicClient: PublicClient): Promise<DeployResult<'factory'> & {
338
+ factory: Address;
339
+ implementation: Address;
340
+ metadataLib: Address;
341
+ paramsLib: Address;
342
+ editionLib: Address;
343
+ }>;
344
+ /** Deploy the canonical `EditionImageFactory` — the multi-work edition trust anchor. CREATE2
345
+ * via the keyless proxy + the canonical `AbxSalts.EDITION_FACTORY` salt (see {@link
346
+ * deployOneOfOneEditionFactory}'s doc note on why this differs from the 721 series factory's
347
+ * plain-creation bootstrap, and why `AbxEditionLib` has to land first). */
348
+ export declare function deployEditionFactory(send: SendTx, publicClient: PublicClient): Promise<DeployResult<'factory'> & {
349
+ factory: Address;
350
+ implementation: Address;
351
+ metadataLib: Address;
352
+ paramsLib: Address;
353
+ editionLib: Address;
354
+ }>;
355
+ /** Deploy `AbxFixedPriceMinter1155` — the canonical, ownerless, multi-tenant edition sale
356
+ * singleton (the Minter spine's edition lane). Sibling of `deployFixedPriceMinter`, one id
357
+ * finer at the contract level (`(token, id)`-keyed sales) — the deploy itself is identical in
358
+ * shape: CREATE2 via the keyless proxy + canonical salt. */
359
+ export declare function deployFixedPriceMinter1155(send: SendTx, publicClient: PublicClient): Promise<DeployResult<'fixedPriceMinter1155'> & {
360
+ minter: Address;
361
+ }>;
362
+ /**
363
+ * Deploy a 1/1 edition NFT as an immutable EIP-1167 clone, at a deterministic address. The
364
+ * edition twin of `deployOneOfOne` — `predictClone` works unchanged (the
365
+ * `predictDeterministicAddress` fragment is identical across every factory, 721 or 1155).
366
+ */
367
+ export declare function deployOneOfOneEdition(send: SendTx, publicClient: PublicClient, args: {
368
+ factory: Address;
369
+ params: OneOfOneEditionInitParams;
370
+ salt: Hex;
371
+ }): Promise<DeployResult<'clone'> & {
372
+ clone: Address;
373
+ }>;
374
+ /**
375
+ * Deploy an EditionImage (multi-work edition) NFT as an immutable EIP-1167 clone, at a
376
+ * deterministic address. The edition twin of `deploySeries`.
377
+ */
378
+ export declare function deployEditionImage(send: SendTx, publicClient: PublicClient, args: {
379
+ factory: Address;
380
+ params: EditionImageInitParams;
381
+ salt: Hex;
382
+ }): Promise<DeployResult<'clone'> & {
383
+ clone: Address;
384
+ }>;
385
+ /**
386
+ * Deploy the code-project edition trust root on a chain with no canonical set: the THREE
387
+ * delegatecalled write-path libraries first ({AbxParamsLib}, {AbxCodeLib}, {AbxEditionLib} — the
388
+ * edition twin of `deploySeriesCodeFactory`'s two-lib dance, plus the 1155 write path {@link
389
+ * deployOneOfOneEditionFactory} and {@link deployEditionFactory} link too), the factory bytecode
390
+ * LINKED against all three, then the factory (whose constructor deploys the {EditionCode}
391
+ * implementation). CREATE2 at canonical `AbxSalts` salts throughout, exactly like
392
+ * {@link deploySeriesCodeFactory}, so the whole set is cross-chain-identical and predictable
393
+ * (`predictEditionCodeFactory()`). This is the only factory linking all three libraries; it is NOT
394
+ * the only one linking {AbxEditionLib} — all three 1155 token types delegate into it.
395
+ *
396
+ * One wrinkle the 721 twin doesn't have: {AbxEditionLib} delegatecalls {AbxParamsLib}, so its OWN
397
+ * shipped bytecode carries an unlinked placeholder and has to be linked before it can be deployed
398
+ * ({@link ensureEditionLib} does this via `linkEditionLib()`). Deploying it raw is what made this
399
+ * function fail with an opaque `Invalid byte sequence` — `__$…$__` is not hex, and the old
400
+ * unlinked-placeholder guard only checked the factory's bytecode, never the library's.
401
+ */
402
+ export declare function deployEditionCodeFactory(send: SendTx, publicClient: PublicClient): Promise<{
403
+ factory: Address;
404
+ implementation: Address;
405
+ metadataLib: Address;
406
+ paramsLib: Address;
407
+ codeLib: Address;
408
+ editionLib: Address;
409
+ txHash: Hex;
410
+ blockNumber: bigint;
411
+ }>;
192
412
  //# sourceMappingURL=deploy.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../src/deploy.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"deploy.d.ts","sourceRoot":"","sources":["../src/deploy.ts"],"names":[],"mappings":"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"}