@artblocks/abx-sdk 0.1.0-alpha.0 → 0.1.0-alpha.10

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 (103) hide show
  1. package/README.md +131 -0
  2. package/dist/abi/generated.d.ts +585 -12
  3. package/dist/abi/generated.d.ts.map +1 -1
  4. package/dist/abi/generated.js +16 -16
  5. package/dist/abi/generated.js.map +1 -1
  6. package/dist/abi/index.d.ts +209 -12
  7. package/dist/abi/index.d.ts.map +1 -1
  8. package/dist/anchors.d.ts +150 -0
  9. package/dist/anchors.d.ts.map +1 -0
  10. package/dist/anchors.js +290 -0
  11. package/dist/anchors.js.map +1 -0
  12. package/dist/chains.d.ts +34 -9
  13. package/dist/chains.d.ts.map +1 -1
  14. package/dist/chains.js +45 -18
  15. package/dist/chains.js.map +1 -1
  16. package/dist/chunks.d.ts +53 -23
  17. package/dist/chunks.d.ts.map +1 -1
  18. package/dist/chunks.js +68 -6
  19. package/dist/chunks.js.map +1 -1
  20. package/dist/clients.d.ts +23 -11
  21. package/dist/clients.d.ts.map +1 -1
  22. package/dist/clients.js +17 -18
  23. package/dist/clients.js.map +1 -1
  24. package/dist/creator-token.d.ts +65 -0
  25. package/dist/creator-token.d.ts.map +1 -0
  26. package/dist/creator-token.js +93 -0
  27. package/dist/creator-token.js.map +1 -0
  28. package/dist/deploy.d.ts +24 -10
  29. package/dist/deploy.d.ts.map +1 -1
  30. package/dist/deploy.js +62 -87
  31. package/dist/deploy.js.map +1 -1
  32. package/dist/deployments.d.ts.map +1 -1
  33. package/dist/deployments.js +38 -22
  34. package/dist/deployments.js.map +1 -1
  35. package/dist/deps.d.ts +38 -0
  36. package/dist/deps.d.ts.map +1 -1
  37. package/dist/deps.js +70 -1
  38. package/dist/deps.js.map +1 -1
  39. package/dist/env.d.ts +11 -0
  40. package/dist/env.d.ts.map +1 -1
  41. package/dist/env.js +42 -2
  42. package/dist/env.js.map +1 -1
  43. package/dist/errors.d.ts +63 -0
  44. package/dist/errors.d.ts.map +1 -0
  45. package/dist/errors.js +85 -0
  46. package/dist/errors.js.map +1 -0
  47. package/dist/execute.d.ts +115 -0
  48. package/dist/execute.d.ts.map +1 -0
  49. package/dist/execute.js +142 -0
  50. package/dist/execute.js.map +1 -0
  51. package/dist/index.d.ts +13 -2
  52. package/dist/index.d.ts.map +1 -1
  53. package/dist/index.js +13 -2
  54. package/dist/index.js.map +1 -1
  55. package/dist/inspect.d.ts +48 -0
  56. package/dist/inspect.d.ts.map +1 -0
  57. package/dist/inspect.js +290 -0
  58. package/dist/inspect.js.map +1 -0
  59. package/dist/migrate.d.ts +41 -0
  60. package/dist/migrate.d.ts.map +1 -0
  61. package/dist/migrate.js +140 -0
  62. package/dist/migrate.js.map +1 -0
  63. package/dist/node.d.ts +13 -0
  64. package/dist/node.d.ts.map +1 -0
  65. package/dist/node.js +13 -0
  66. package/dist/node.js.map +1 -0
  67. package/dist/onchain-uri.d.ts +96 -0
  68. package/dist/onchain-uri.d.ts.map +1 -0
  69. package/dist/onchain-uri.js +231 -0
  70. package/dist/onchain-uri.js.map +1 -0
  71. package/dist/ops.d.ts +113 -5
  72. package/dist/ops.d.ts.map +1 -1
  73. package/dist/ops.js +172 -13
  74. package/dist/ops.js.map +1 -1
  75. package/dist/reconstruct.d.ts +20 -1
  76. package/dist/reconstruct.d.ts.map +1 -1
  77. package/dist/reconstruct.js +124 -50
  78. package/dist/reconstruct.js.map +1 -1
  79. package/dist/resume.d.ts +96 -0
  80. package/dist/resume.d.ts.map +1 -0
  81. package/dist/resume.js +95 -0
  82. package/dist/resume.js.map +1 -0
  83. package/dist/service.d.ts +369 -0
  84. package/dist/service.d.ts.map +1 -0
  85. package/dist/service.js +376 -0
  86. package/dist/service.js.map +1 -0
  87. package/dist/staging.d.ts +95 -0
  88. package/dist/staging.d.ts.map +1 -0
  89. package/dist/staging.js +57 -0
  90. package/dist/staging.js.map +1 -0
  91. package/dist/tokendata.d.ts +62 -2
  92. package/dist/tokendata.d.ts.map +1 -1
  93. package/dist/tokendata.js +60 -16
  94. package/dist/tokendata.js.map +1 -1
  95. package/dist/tokens.d.ts +55 -0
  96. package/dist/tokens.d.ts.map +1 -0
  97. package/dist/tokens.js +152 -0
  98. package/dist/tokens.js.map +1 -0
  99. package/dist/util.d.ts +59 -0
  100. package/dist/util.d.ts.map +1 -0
  101. package/dist/util.js +89 -0
  102. package/dist/util.js.map +1 -0
  103. package/package.json +10 -2
@@ -58,6 +58,10 @@ export declare const spineEventAbi: ({
58
58
  readonly name: "royaltyBps";
59
59
  readonly type: "uint16";
60
60
  readonly internalType: "uint16";
61
+ }, {
62
+ readonly name: "transferValidator";
63
+ readonly type: "address";
64
+ readonly internalType: "address";
61
65
  }, {
62
66
  readonly name: "tokenFields";
63
67
  readonly type: "tuple[]";
@@ -147,6 +151,10 @@ export declare const spineEventAbi: ({
147
151
  readonly name: "royaltyBps";
148
152
  readonly type: "uint16";
149
153
  readonly internalType: "uint16";
154
+ }, {
155
+ readonly name: "transferValidator";
156
+ readonly type: "address";
157
+ readonly internalType: "address";
150
158
  }, {
151
159
  readonly name: "tokenFields";
152
160
  readonly type: "tuple[]";
@@ -419,6 +427,30 @@ export declare const spineEventAbi: ({
419
427
  readonly internalType: "address";
420
428
  }];
421
429
  readonly stateMutability: "view";
430
+ } | {
431
+ readonly type: "function";
432
+ readonly name: "getTransferValidationFunction";
433
+ readonly inputs: readonly [];
434
+ readonly outputs: readonly [{
435
+ readonly name: "functionSignature";
436
+ readonly type: "bytes4";
437
+ readonly internalType: "bytes4";
438
+ }, {
439
+ readonly name: "isViewFunction";
440
+ readonly type: "bool";
441
+ readonly internalType: "bool";
442
+ }];
443
+ readonly stateMutability: "pure";
444
+ } | {
445
+ readonly type: "function";
446
+ readonly name: "getTransferValidator";
447
+ readonly inputs: readonly [];
448
+ readonly outputs: readonly [{
449
+ readonly name: "validator";
450
+ readonly type: "address";
451
+ readonly internalType: "address";
452
+ }];
453
+ readonly stateMutability: "view";
422
454
  } | {
423
455
  readonly type: "function";
424
456
  readonly name: "initialize";
@@ -466,6 +498,10 @@ export declare const spineEventAbi: ({
466
498
  readonly name: "royaltyBps";
467
499
  readonly type: "uint16";
468
500
  readonly internalType: "uint16";
501
+ }, {
502
+ readonly name: "transferValidator";
503
+ readonly type: "address";
504
+ readonly internalType: "address";
469
505
  }, {
470
506
  readonly name: "tokenFields";
471
507
  readonly type: "tuple[]";
@@ -836,6 +872,16 @@ export declare const spineEventAbi: ({
836
872
  }];
837
873
  readonly outputs: readonly [];
838
874
  readonly stateMutability: "nonpayable";
875
+ } | {
876
+ readonly type: "function";
877
+ readonly name: "setTransferValidator";
878
+ readonly inputs: readonly [{
879
+ readonly name: "validator";
880
+ readonly type: "address";
881
+ readonly internalType: "address";
882
+ }];
883
+ readonly outputs: readonly [];
884
+ readonly stateMutability: "nonpayable";
839
885
  } | {
840
886
  readonly type: "function";
841
887
  readonly name: "supportsInterface";
@@ -1316,6 +1362,21 @@ export declare const spineEventAbi: ({
1316
1362
  readonly internalType: "uint256";
1317
1363
  }];
1318
1364
  readonly anonymous: false;
1365
+ } | {
1366
+ readonly type: "event";
1367
+ readonly name: "TransferValidatorUpdated";
1368
+ readonly inputs: readonly [{
1369
+ readonly name: "oldValidator";
1370
+ readonly type: "address";
1371
+ readonly indexed: false;
1372
+ readonly internalType: "address";
1373
+ }, {
1374
+ readonly name: "newValidator";
1375
+ readonly type: "address";
1376
+ readonly indexed: false;
1377
+ readonly internalType: "address";
1378
+ }];
1379
+ readonly anonymous: false;
1319
1380
  } | {
1320
1381
  readonly type: "error";
1321
1382
  readonly name: "AccountBalanceOverflow";
@@ -1344,6 +1405,10 @@ export declare const spineEventAbi: ({
1344
1405
  readonly type: "error";
1345
1406
  readonly name: "InvalidInitialization";
1346
1407
  readonly inputs: readonly [];
1408
+ } | {
1409
+ readonly type: "error";
1410
+ readonly name: "InvalidTransferValidator";
1411
+ readonly inputs: readonly [];
1347
1412
  } | {
1348
1413
  readonly type: "error";
1349
1414
  readonly name: "NewOwnerIsZeroAddress";
@@ -1356,6 +1421,10 @@ export declare const spineEventAbi: ({
1356
1421
  readonly type: "error";
1357
1422
  readonly name: "NonexistentToken";
1358
1423
  readonly inputs: readonly [];
1424
+ } | {
1425
+ readonly type: "error";
1426
+ readonly name: "NotCreatorToken";
1427
+ readonly inputs: readonly [];
1359
1428
  } | {
1360
1429
  readonly type: "error";
1361
1430
  readonly name: "NotInitializing";
@@ -1447,6 +1516,10 @@ export declare const spineEventAbi: ({
1447
1516
  readonly name: "royaltyBps";
1448
1517
  readonly type: "uint16";
1449
1518
  readonly internalType: "uint16";
1519
+ }, {
1520
+ readonly name: "transferValidator";
1521
+ readonly type: "address";
1522
+ readonly internalType: "address";
1450
1523
  }, {
1451
1524
  readonly name: "maxInvocations";
1452
1525
  readonly type: "uint256";
@@ -1560,6 +1633,10 @@ export declare const spineEventAbi: ({
1560
1633
  readonly name: "royaltyBps";
1561
1634
  readonly type: "uint16";
1562
1635
  readonly internalType: "uint16";
1636
+ }, {
1637
+ readonly name: "transferValidator";
1638
+ readonly type: "address";
1639
+ readonly internalType: "address";
1563
1640
  }, {
1564
1641
  readonly name: "maxInvocations";
1565
1642
  readonly type: "uint256";
@@ -1677,6 +1754,10 @@ export declare const spineEventAbi: ({
1677
1754
  readonly name: "royaltyBps";
1678
1755
  readonly type: "uint16";
1679
1756
  readonly internalType: "uint16";
1757
+ }, {
1758
+ readonly name: "transferValidator";
1759
+ readonly type: "address";
1760
+ readonly internalType: "address";
1680
1761
  }, {
1681
1762
  readonly name: "maxInvocations";
1682
1763
  readonly type: "uint256";
@@ -1972,6 +2053,10 @@ export declare const spineEventAbi: ({
1972
2053
  readonly name: "royaltyBps";
1973
2054
  readonly type: "uint16";
1974
2055
  readonly internalType: "uint16";
2056
+ }, {
2057
+ readonly name: "transferValidator";
2058
+ readonly type: "address";
2059
+ readonly internalType: "address";
1975
2060
  }, {
1976
2061
  readonly name: "maxInvocations";
1977
2062
  readonly type: "uint256";
@@ -2093,6 +2178,10 @@ export declare const spineEventAbi: ({
2093
2178
  readonly name: "royaltyBps";
2094
2179
  readonly type: "uint16";
2095
2180
  readonly internalType: "uint16";
2181
+ }, {
2182
+ readonly name: "transferValidator";
2183
+ readonly type: "address";
2184
+ readonly internalType: "address";
2096
2185
  }, {
2097
2186
  readonly name: "maxInvocations";
2098
2187
  readonly type: "uint256";
@@ -2271,6 +2360,38 @@ export declare const spineEventAbi: ({
2271
2360
  readonly internalType: "bytes";
2272
2361
  }];
2273
2362
  readonly stateMutability: "view";
2363
+ } | {
2364
+ readonly type: "function";
2365
+ readonly name: "contractParamKeys";
2366
+ readonly inputs: readonly [];
2367
+ readonly outputs: readonly [{
2368
+ readonly name: "";
2369
+ readonly type: "bytes32[]";
2370
+ readonly internalType: "bytes32[]";
2371
+ }];
2372
+ readonly stateMutability: "view";
2373
+ } | {
2374
+ readonly type: "function";
2375
+ readonly name: "contractParamKeysPaged";
2376
+ readonly inputs: readonly [{
2377
+ readonly name: "";
2378
+ readonly type: "uint256";
2379
+ readonly internalType: "uint256";
2380
+ }, {
2381
+ readonly name: "";
2382
+ readonly type: "uint256";
2383
+ readonly internalType: "uint256";
2384
+ }];
2385
+ readonly outputs: readonly [{
2386
+ readonly name: "";
2387
+ readonly type: "bytes32[]";
2388
+ readonly internalType: "bytes32[]";
2389
+ }, {
2390
+ readonly name: "";
2391
+ readonly type: "uint256";
2392
+ readonly internalType: "uint256";
2393
+ }];
2394
+ readonly stateMutability: "view";
2274
2395
  } | {
2275
2396
  readonly type: "function";
2276
2397
  readonly name: "delegateRegistry";
@@ -2372,6 +2493,10 @@ export declare const spineEventAbi: ({
2372
2493
  readonly name: "royaltyBps";
2373
2494
  readonly type: "uint16";
2374
2495
  readonly internalType: "uint16";
2496
+ }, {
2497
+ readonly name: "transferValidator";
2498
+ readonly type: "address";
2499
+ readonly internalType: "address";
2375
2500
  }, {
2376
2501
  readonly name: "maxInvocations";
2377
2502
  readonly type: "uint256";
@@ -2463,15 +2588,15 @@ export declare const spineEventAbi: ({
2463
2588
  readonly name: "paramHooks";
2464
2589
  readonly inputs: readonly [];
2465
2590
  readonly outputs: readonly [{
2466
- readonly name: "configureHook";
2591
+ readonly name: "";
2467
2592
  readonly type: "address";
2468
2593
  readonly internalType: "address";
2469
2594
  }, {
2470
- readonly name: "augmentHook";
2595
+ readonly name: "";
2471
2596
  readonly type: "address";
2472
2597
  readonly internalType: "address";
2473
2598
  }, {
2474
- readonly name: "transferHook";
2599
+ readonly name: "";
2475
2600
  readonly type: "address";
2476
2601
  readonly internalType: "address";
2477
2602
  }];
@@ -2480,44 +2605,76 @@ export declare const spineEventAbi: ({
2480
2605
  readonly type: "function";
2481
2606
  readonly name: "paramSchema";
2482
2607
  readonly inputs: readonly [{
2483
- readonly name: "key";
2608
+ readonly name: "";
2484
2609
  readonly type: "bytes32";
2485
2610
  readonly internalType: "bytes32";
2486
2611
  }];
2487
2612
  readonly outputs: readonly [{
2488
- readonly name: "exists";
2613
+ readonly name: "";
2489
2614
  readonly type: "bool";
2490
2615
  readonly internalType: "bool";
2491
2616
  }, {
2492
- readonly name: "paramType";
2617
+ readonly name: "";
2493
2618
  readonly type: "uint8";
2494
2619
  readonly internalType: "enum IAbxConfigurableParams.ParamType";
2495
2620
  }, {
2496
- readonly name: "auth";
2621
+ readonly name: "";
2497
2622
  readonly type: "uint8";
2498
2623
  readonly internalType: "enum IAbxConfigurableParams.AuthOption";
2499
2624
  }, {
2500
- readonly name: "authAddress";
2625
+ readonly name: "";
2501
2626
  readonly type: "address";
2502
2627
  readonly internalType: "address";
2503
2628
  }, {
2504
- readonly name: "lockAfter";
2629
+ readonly name: "";
2505
2630
  readonly type: "uint48";
2506
2631
  readonly internalType: "uint48";
2507
2632
  }, {
2508
- readonly name: "min";
2633
+ readonly name: "";
2509
2634
  readonly type: "bytes32";
2510
2635
  readonly internalType: "bytes32";
2511
2636
  }, {
2512
- readonly name: "max";
2637
+ readonly name: "";
2513
2638
  readonly type: "bytes32";
2514
2639
  readonly internalType: "bytes32";
2515
2640
  }, {
2516
- readonly name: "selectOptions";
2641
+ readonly name: "";
2517
2642
  readonly type: "string[]";
2518
2643
  readonly internalType: "string[]";
2519
2644
  }];
2520
2645
  readonly stateMutability: "view";
2646
+ } | {
2647
+ readonly type: "function";
2648
+ readonly name: "paramSchemaKeys";
2649
+ readonly inputs: readonly [];
2650
+ readonly outputs: readonly [{
2651
+ readonly name: "";
2652
+ readonly type: "bytes32[]";
2653
+ readonly internalType: "bytes32[]";
2654
+ }];
2655
+ readonly stateMutability: "view";
2656
+ } | {
2657
+ readonly type: "function";
2658
+ readonly name: "paramSchemaKeysPaged";
2659
+ readonly inputs: readonly [{
2660
+ readonly name: "";
2661
+ readonly type: "uint256";
2662
+ readonly internalType: "uint256";
2663
+ }, {
2664
+ readonly name: "";
2665
+ readonly type: "uint256";
2666
+ readonly internalType: "uint256";
2667
+ }];
2668
+ readonly outputs: readonly [{
2669
+ readonly name: "";
2670
+ readonly type: "bytes32[]";
2671
+ readonly internalType: "bytes32[]";
2672
+ }, {
2673
+ readonly name: "";
2674
+ readonly type: "uint256";
2675
+ readonly internalType: "uint256";
2676
+ }];
2677
+ readonly stateMutability: "view";
2521
2678
  } | {
2522
2679
  readonly type: "function";
2523
2680
  readonly name: "removeLastDependency";
@@ -2800,6 +2957,46 @@ export declare const spineEventAbi: ({
2800
2957
  readonly internalType: "bytes";
2801
2958
  }];
2802
2959
  readonly stateMutability: "view";
2960
+ } | {
2961
+ readonly type: "function";
2962
+ readonly name: "tokenParamKeys";
2963
+ readonly inputs: readonly [{
2964
+ readonly name: "";
2965
+ readonly type: "uint256";
2966
+ readonly internalType: "uint256";
2967
+ }];
2968
+ readonly outputs: readonly [{
2969
+ readonly name: "";
2970
+ readonly type: "bytes32[]";
2971
+ readonly internalType: "bytes32[]";
2972
+ }];
2973
+ readonly stateMutability: "view";
2974
+ } | {
2975
+ readonly type: "function";
2976
+ readonly name: "tokenParamKeysPaged";
2977
+ readonly inputs: readonly [{
2978
+ readonly name: "";
2979
+ readonly type: "uint256";
2980
+ readonly internalType: "uint256";
2981
+ }, {
2982
+ readonly name: "";
2983
+ readonly type: "uint256";
2984
+ readonly internalType: "uint256";
2985
+ }, {
2986
+ readonly name: "";
2987
+ readonly type: "uint256";
2988
+ readonly internalType: "uint256";
2989
+ }];
2990
+ readonly outputs: readonly [{
2991
+ readonly name: "";
2992
+ readonly type: "bytes32[]";
2993
+ readonly internalType: "bytes32[]";
2994
+ }, {
2995
+ readonly name: "";
2996
+ readonly type: "uint256";
2997
+ readonly internalType: "uint256";
2998
+ }];
2999
+ readonly stateMutability: "view";
2803
3000
  } | {
2804
3001
  readonly type: "event";
2805
3002
  readonly name: "ContractParamCleared";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/abi/index.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,uBAAuB,EACvB,4BAA4B,EAC5B,gBAAgB,EAChB,qBAAqB,EACrB,qBAAqB,EACrB,0BAA0B,EAC1B,cAAc,EACd,mBAAmB,EACnB,oBAAoB,EACpB,yBAAyB,EACzB,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,EACf,oBAAoB,EACpB,aAAa,EACb,kBAAkB,EAClB,sBAAsB,EACtB,2BAA2B,EAC3B,gBAAgB,EAChB,qBAAqB,EACrB,sBAAsB,EACtB,2BAA2B,GAC5B,MAAM,gBAAgB,CAAC;AAiBxB;;;;;;;GAOG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAmBtB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/abi/index.ts"],"names":[],"mappings":"AAEA,OAAO,EACL,uBAAuB,EACvB,4BAA4B,EAC5B,gBAAgB,EAChB,qBAAqB,EACrB,qBAAqB,EACrB,0BAA0B,EAC1B,cAAc,EACd,mBAAmB,EACnB,oBAAoB,EACpB,yBAAyB,EACzB,aAAa,EACb,kBAAkB,EAClB,gBAAgB,EAChB,qBAAqB,EACrB,eAAe,EACf,oBAAoB,EACpB,aAAa,EACb,kBAAkB,EAClB,sBAAsB,EACtB,2BAA2B,EAC3B,gBAAgB,EAChB,qBAAqB,EACrB,sBAAsB,EACtB,2BAA2B,GAC5B,MAAM,gBAAgB,CAAC;AAiBxB;;;;;;;GAOG;AACH,eAAO,MAAM,aAAa;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAmBtB,CAAC"}
@@ -0,0 +1,150 @@
1
+ import type { Address, Hex, PublicClient } from 'viem';
2
+ import { type AnchorKind } from './errors.js';
3
+ import type { SendTx } from './execute.js';
4
+ /**
5
+ * Bootstrap-or-refuse resolution for ABX's five trust anchors + singletons — the three clone
6
+ * factories (1/1, Series, SeriesCode) and the shared, stateless renderer + seed source — plus the
7
+ * read-only protocol questions that come with owning a deployed clone (which canonical factory made
8
+ * it; its earliest plausible deploy block).
9
+ *
10
+ * Each `ensure*` follows the same shape as {@link ensureChunkStore} (chunks.ts): resolve the listed
11
+ * address → verify code + capability → (renderer / seed-source only — see {@link AnchorEvent})
12
+ * try the CREATE2-deterministic address → deploy via an injected {@link SendTx}, reporting progress
13
+ * through `onEvent` so the SDK never prints. This lived only inside the CLI, hand-duplicated five
14
+ * times with slightly different capability probes — exporting it is what lets a non-CLI integrator
15
+ * bootstrap a chain identically instead of rediscovering "is this factory the current version?" the
16
+ * hard way, the same reasoning `ensureChunkStore`'s own doc comment gives.
17
+ */
18
+ /** Progress from an `ensure*` trust-anchor resolution, so a caller can narrate without the SDK
19
+ * printing anything itself (mirrors {@link ChunkStoreEvent}'s vocabulary). Not every anchor emits
20
+ * every kind: `canonical` (found at the CREATE2-deterministic address) only applies to the renderer
21
+ * and the seed source — the three clone factories have no deterministic address (their bytecode is
22
+ * either constructor-baked or link-time-linked, so there's nothing to predict). The optional
23
+ * `deployed` fields are anchor-specific: `implementation` for the three factories, `specVersion`
24
+ * for the renderer, `paramsLib`/`codeLib` for the SeriesCode factory's linked write-path libraries. */
25
+ export type AnchorEvent = {
26
+ anchor: AnchorKind;
27
+ } & ({
28
+ kind: 'resolved';
29
+ address: Address;
30
+ } | {
31
+ kind: 'stale';
32
+ address: Address;
33
+ reason: 'no-code' | 'stale-version';
34
+ } | {
35
+ kind: 'canonical';
36
+ address: Address;
37
+ } | {
38
+ kind: 'deploying';
39
+ } | {
40
+ kind: 'deployed';
41
+ address: Address;
42
+ inManifest: boolean;
43
+ txHash: Hex;
44
+ implementation?: Address;
45
+ specVersion?: bigint;
46
+ paramsLib?: Address;
47
+ codeLib?: Address;
48
+ });
49
+ /** Is the deployed factory this build's version? Reads its implementation and probes the
50
+ * NEWEST capability the current implementation exposes — `totalSupply()` (the live-count
51
+ * read) — so an older factory whose impl predates it is detected and a fresh, source-current
52
+ * (and thus Etherscan-verifiable) one deployed. A stale impl reverts the probe. (Bump this to
53
+ * the newest capability with each impl change.) */
54
+ export declare function isCurrentFactory(publicClient: PublicClient, factory: Address): Promise<boolean>;
55
+ /**
56
+ * Get (or deploy) the chain's canonical 1/1 clone factory — the trust anchor: a factory is THE
57
+ * address platforms allowlist by. Resolves the manifest (override → env → manifest); on a chain
58
+ * with no current entry, deploys a fresh one when `allowBootstrap` is set (else throws
59
+ * {@link AnchorUnavailableError} so the caller can refuse with guidance instead of silently
60
+ * fragmenting trust across duplicate "canonical" factories).
61
+ */
62
+ export declare function ensureFactory(publicClient: PublicClient, send: SendTx, opts: {
63
+ chainId: number;
64
+ override?: string;
65
+ allowBootstrap?: boolean;
66
+ onEvent?: (e: AnchorEvent) => void;
67
+ }): Promise<Address>;
68
+ /** Is the deployed Series factory this build's version? Probes the impl for `nextTokenId()`
69
+ * (the Series-specific issuance cursor), which a stale/incompatible impl won't expose. */
70
+ export declare function isCurrentSeriesFactory(publicClient: PublicClient, factory: Address): Promise<boolean>;
71
+ /** Get (or deploy) the chain's `SeriesImageFactory` — the multi-token trust anchor, the sibling
72
+ * of {@link ensureFactory}. Ownerless + immutable; one deployment serves every Series. */
73
+ export declare function ensureSeriesFactory(publicClient: PublicClient, send: SendTx, opts: {
74
+ chainId: number;
75
+ override?: string;
76
+ allowBootstrap?: boolean;
77
+ onEvent?: (e: AnchorEvent) => void;
78
+ }): Promise<Address>;
79
+ /** Is the configured renderer the spec version this build expects (v4 — the computed `abx_params`
80
+ * object, enumerated from chain, plus `animation_url` wrapped as `data:text/html;base64` for the
81
+ * inline/reader representations)? A behind-spec renderer is treated as stale so {@link ensureRenderer}
82
+ * deploys a fresh one (greenfield redeploy-freely: this number is what tells the CLI a deployed
83
+ * renderer predates a projection the current build emits). A v4 renderer is safe on ANY token —
84
+ * pointed at a legacy implementation it simply emits no params block. Bump in lockstep with
85
+ * `AbxMetadataRenderer.SPEC_VERSION`. */
86
+ export declare function isCurrentRenderer(publicClient: PublicClient, renderer: Address): Promise<boolean>;
87
+ /** Get (or deploy) the chain's shared `AbxMetadataRenderer` — the on-chain metadata
88
+ * renderer that fully-on-chain tokens point at. Stateless + shared, so one deployment
89
+ * serves every project; redeployed only if missing or a stale spec version. */
90
+ export declare function ensureRenderer(publicClient: PublicClient, send: SendTx, opts: {
91
+ chainId: number;
92
+ override?: string;
93
+ onEvent?: (e: AnchorEvent) => void;
94
+ }): Promise<Address>;
95
+ /** The code-project trust anchor: use the canonical factory, else deploy one (a sandbox /
96
+ * fresh chain — libraries linked in-flight; see {@link deploySeriesCodeFactory}). Unlike the
97
+ * 1/1 and Series factories there is no version probe (no `isCurrentSeriesCodeFactory` — a
98
+ * configured factory with code is always accepted) and no CREATE2 self-heal (its bytecode is
99
+ * link-time-linked against two libraries deployed by plain CREATE, so nothing about its address
100
+ * is predictable — see {@link deploySeriesCodeFactory}'s own doc comment). */
101
+ export declare function ensureSeriesCodeFactory(publicClient: PublicClient, send: SendTx, opts: {
102
+ chainId: number;
103
+ override?: string;
104
+ allowBootstrap?: boolean;
105
+ onEvent?: (e: AnchorEvent) => void;
106
+ }): Promise<Address>;
107
+ /** The canonical seed source — a clean keyless singleton (like the renderer / chunk store / minter):
108
+ * single-profile, so CREATE2 lands at THE canonical address on any chain. Resolves from the manifest,
109
+ * self-heals to the predicted address (deployed but not yet repointed), else auto-deploys via CREATE2. */
110
+ export declare function ensureSeedSource(publicClient: PublicClient, send: SendTx, opts: {
111
+ chainId: number;
112
+ onEvent?: (e: AnchorEvent) => void;
113
+ }): Promise<Address>;
114
+ /**
115
+ * Pick the canonical factory for a clone being added. An explicit override or a stored value
116
+ * wins; otherwise probe the chain's known factories (SeriesCode, Series, 1/1) for the ONE whose
117
+ * `isAbxClone` confirms this address, so `abx add` of a code / Series project records the RIGHT
118
+ * factory and canonicity actually verifies. Without this, `add` defaulted to the 1/1 factory, so a
119
+ * code/Series clone read `canonical: unverified` (the check ran against the wrong factory). One
120
+ * multicall, only when the factory isn't already known; falls back to the 1/1 default on any miss/RPC
121
+ * error (`isAbxClone` shares a selector across all factory ABIs, so one ABI probes them all).
122
+ */
123
+ export declare function detectCanonicalFactory(publicClient: PublicClient, address: Address, opts: {
124
+ chainId: number;
125
+ override?: string;
126
+ stored?: string | null;
127
+ }): Promise<Address | undefined>;
128
+ /** Progress from {@link resolveScanFloor}'s on-chain discovery fallback, so a caller can narrate
129
+ * without the SDK printing. */
130
+ export type ScanFloorEvent = {
131
+ kind: 'genesis-warning';
132
+ } | {
133
+ kind: 'discovered';
134
+ block: bigint;
135
+ };
136
+ /**
137
+ * Resolve the scan floor (fromBlock) for an add/index: an explicit override wins, else the deploy
138
+ * block the local deploy already stored, else discover it from chain (getCode binary search). It
139
+ * NEVER silently defaults to genesis — a from-0 full scan of a live chain must be an explicit
140
+ * opt-in, because on a range-capped RPC it's the difference between an instant index and grinding
141
+ * millions of blocks (the #1 reason a hosted resolver appears "not to index"). Returns a decimal
142
+ * block string. Only touches RPC in the discovery fallback (rare — a foreign contract we didn't
143
+ * deploy here), so the common post-deploy path makes no extra call.
144
+ */
145
+ export declare function resolveScanFloor(publicClient: PublicClient, address: Address, opts?: {
146
+ explicit?: string;
147
+ localFromBlock?: string;
148
+ onEvent?: (e: ScanFloorEvent) => void;
149
+ }): Promise<string>;
150
+ //# sourceMappingURL=anchors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"anchors.d.ts","sourceRoot":"","sources":["../src/anchors.ts"],"names":[],"mappings":"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"}