@bananapus/nana-sdk-core 2.18.0 → 2.19.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 (57) hide show
  1. package/dist/cjs/v6/deploymentAbi.d.ts +4 -0
  2. package/dist/cjs/v6/deploymentAbi.d.ts.map +1 -0
  3. package/dist/cjs/v6/deploymentAbi.js +15 -0
  4. package/dist/cjs/v6/deploymentAbi.js.map +1 -0
  5. package/dist/cjs/v6/deploymentDiagnostics.d.ts +45 -0
  6. package/dist/cjs/v6/deploymentDiagnostics.d.ts.map +1 -0
  7. package/dist/cjs/v6/deploymentDiagnostics.js +525 -0
  8. package/dist/cjs/v6/deploymentDiagnostics.js.map +1 -0
  9. package/dist/cjs/v6/index.d.ts +3 -0
  10. package/dist/cjs/v6/index.d.ts.map +1 -1
  11. package/dist/cjs/v6/index.js +3 -0
  12. package/dist/cjs/v6/index.js.map +1 -1
  13. package/dist/cjs/v6/nft.d.ts +15 -0
  14. package/dist/cjs/v6/nft.d.ts.map +1 -1
  15. package/dist/cjs/v6/nft.js +49 -29
  16. package/dist/cjs/v6/nft.js.map +1 -1
  17. package/dist/cjs/v6/omnichain.d.ts +3 -2
  18. package/dist/cjs/v6/omnichain.d.ts.map +1 -1
  19. package/dist/cjs/v6/omnichain.js +9 -4
  20. package/dist/cjs/v6/omnichain.js.map +1 -1
  21. package/dist/cjs/v6/revnet721.d.ts +42 -0
  22. package/dist/cjs/v6/revnet721.d.ts.map +1 -0
  23. package/dist/cjs/v6/revnet721.js +74 -0
  24. package/dist/cjs/v6/revnet721.js.map +1 -0
  25. package/dist/cjs/v6/revnets.d.ts +11 -3
  26. package/dist/cjs/v6/revnets.d.ts.map +1 -1
  27. package/dist/cjs/v6/revnets.js +36 -7
  28. package/dist/cjs/v6/revnets.js.map +1 -1
  29. package/dist/esm/v6/deploymentAbi.d.ts +4 -0
  30. package/dist/esm/v6/deploymentAbi.d.ts.map +1 -0
  31. package/dist/esm/v6/deploymentAbi.js +12 -0
  32. package/dist/esm/v6/deploymentAbi.js.map +1 -0
  33. package/dist/esm/v6/deploymentDiagnostics.d.ts +45 -0
  34. package/dist/esm/v6/deploymentDiagnostics.d.ts.map +1 -0
  35. package/dist/esm/v6/deploymentDiagnostics.js +521 -0
  36. package/dist/esm/v6/deploymentDiagnostics.js.map +1 -0
  37. package/dist/esm/v6/index.d.ts +3 -0
  38. package/dist/esm/v6/index.d.ts.map +1 -1
  39. package/dist/esm/v6/index.js +3 -0
  40. package/dist/esm/v6/index.js.map +1 -1
  41. package/dist/esm/v6/nft.d.ts +15 -0
  42. package/dist/esm/v6/nft.d.ts.map +1 -1
  43. package/dist/esm/v6/nft.js +48 -29
  44. package/dist/esm/v6/nft.js.map +1 -1
  45. package/dist/esm/v6/omnichain.d.ts +3 -2
  46. package/dist/esm/v6/omnichain.d.ts.map +1 -1
  47. package/dist/esm/v6/omnichain.js +9 -4
  48. package/dist/esm/v6/omnichain.js.map +1 -1
  49. package/dist/esm/v6/revnet721.d.ts +42 -0
  50. package/dist/esm/v6/revnet721.d.ts.map +1 -0
  51. package/dist/esm/v6/revnet721.js +70 -0
  52. package/dist/esm/v6/revnet721.js.map +1 -0
  53. package/dist/esm/v6/revnets.d.ts +11 -3
  54. package/dist/esm/v6/revnets.d.ts.map +1 -1
  55. package/dist/esm/v6/revnets.js +36 -7
  56. package/dist/esm/v6/revnets.js.map +1 -1
  57. package/package.json +1 -1
@@ -9,6 +9,8 @@ exports.getCashOutDelay = getCashOutDelay;
9
9
  exports.isRevnetOperator = isRevnetOperator;
10
10
  exports.getRevnetTiered721Hook = getRevnetTiered721Hook;
11
11
  const juicebox_js_1 = require("../generated/juicebox.js");
12
+ const revnet721_js_1 = require("./revnet721.js");
13
+ const deploymentAbi_js_1 = require("./deploymentAbi.js");
12
14
  const types_js_1 = require("./types.js");
13
15
  /**
14
16
  * Ruleset `extraMetadata` bit 2: allows `REVDeployer.deploySuckersFor` to extend
@@ -66,7 +68,9 @@ function buildRevnetStageConfig(args) {
66
68
  }
67
69
  /**
68
70
  * Build a `REVDeployer.deployFor` transaction request deploying a new revnet
69
- * (or a 721-shop revnet when `tiered721Config` is given).
71
+ * Every canonical v6 revnet has a 721 shop, including the four-argument overload.
72
+ * Omit shop configuration to retain the contract defaults, or use
73
+ * `tiered721Config` / `default721Config` to choose pricing and operator powers.
70
74
  *
71
75
  * Deploying a NEW revnet (`revnetId` 0n) is payable and must send EXACTLY the
72
76
  * current project creation fee — read it with `getProjectCreationFee` on the
@@ -113,18 +117,43 @@ function buildDeployRevnetTx(args) {
113
117
  throw new Error("creationFee is required when deploying a new revnet");
114
118
  }
115
119
  const value = revnetId === 0n ? args.creationFee : 0n;
116
- if (args.tiered721Config) {
120
+ if (args.tiered721Config && args.default721Config) {
121
+ throw new Error("Choose either tiered721Config or default721Config, not both.");
122
+ }
123
+ if (!args.tiered721Config &&
124
+ !args.default721Config &&
125
+ args.allowedPosts?.length) {
126
+ throw new Error("allowedPosts requires an explicit tiered721Config or default721Config.");
127
+ }
128
+ const tiered721Config = args.tiered721Config ??
129
+ (args.default721Config
130
+ ? (0, revnet721_js_1.buildRevnet721Config)({
131
+ name: `${args.config.description.name} Store`,
132
+ symbol: `${args.config.description.ticker}STORE`,
133
+ contractUri: args.config.description.uri,
134
+ salt: args.config.description.salt,
135
+ pricing: (0, revnet721_js_1.resolve721PricingContext)({
136
+ currency: args.config.baseCurrency,
137
+ accountingContexts: args.accountingContexts,
138
+ decimals: args.default721Config.pricingDecimals,
139
+ }),
140
+ operatorPermissions: args.default721Config.operatorPermissions,
141
+ })
142
+ : undefined);
143
+ if (tiered721Config) {
144
+ // Validate supported units without changing deliberately supplied configuration.
145
+ (0, revnet721_js_1.resolve721PricingContext)(tiered721Config.baseline721HookConfiguration.tiersConfig);
117
146
  return {
118
147
  chainId: args.chainId,
119
148
  address,
120
- abi: juicebox_js_1.revDeployerAbi,
149
+ abi: (0, deploymentAbi_js_1.selectDeploymentAbi)(juicebox_js_1.revDeployerAbi, "deployFor", 6),
121
150
  functionName: "deployFor",
122
151
  args: [
123
152
  revnetId,
124
153
  args.config,
125
154
  args.accountingContexts,
126
155
  args.suckerConfig,
127
- args.tiered721Config,
156
+ tiered721Config,
128
157
  args.allowedPosts ?? [],
129
158
  ],
130
159
  value,
@@ -133,7 +162,7 @@ function buildDeployRevnetTx(args) {
133
162
  return {
134
163
  chainId: args.chainId,
135
164
  address,
136
- abi: juicebox_js_1.revDeployerAbi,
165
+ abi: (0, deploymentAbi_js_1.selectDeploymentAbi)(juicebox_js_1.revDeployerAbi, "deployFor", 4),
137
166
  functionName: "deployFor",
138
167
  args: [
139
168
  revnetId,
@@ -197,8 +226,8 @@ async function isRevnetOperator(client, args) {
197
226
  });
198
227
  }
199
228
  /**
200
- * Read the tiered 721 hook deployed for the revnet (zero address if the
201
- * revnet was deployed without one).
229
+ * Read the tiered 721 hook registered for a revnet. Canonical v6 deployment
230
+ * creates one even for an empty shop; zero means no hook is registered.
202
231
  */
203
232
  async function getRevnetTiered721Hook(client, args) {
204
233
  return client.readContract({
@@ -1 +1 @@
1
- {"version":3,"file":"revnets.js","sourceRoot":"","sources":["../../../src/v6/revnets.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"revnets.js","sourceRoot":"","sources":["../../../src/v6/revnets.ts"],"names":[],"mappings":";;;AAwGA,wDAgCC;AA6BD,kDA8GC;AAOD,4CAaC;AAMD,oDAeC;AAQD,0CAUC;AAMD,4CAUC;AAMD,wDAUC;AA7WD,0DAAuE;AAEvE,iDAIwB;AAExB,yDAAyD;AACzD,yCAAuC;AAuDvC;;;;;;GAMG;AACU,QAAA,oCAAoC,GAAG,CAAC,IAAI,CAAC,CAAC;AAE3D;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,SAAgB,sBAAsB,CAAC,IAgBtC;IACC,MAAM,aAAa,GACjB,IAAI,CAAC,qBAAqB,KAAK,KAAK;QAClC,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,CAAC;QAC3B,CAAC,CAAC,CAAC,IAAI,CAAC,aAAa,IAAI,CAAC,CAAC,GAAG,4CAAoC,CAAC;IACvE,OAAO;QACL,eAAe,EAAE,IAAI,CAAC,eAAe;QACrC,aAAa,EAAE,IAAI,CAAC,aAAa,IAAI,EAAE;QACvC,YAAY,EAAE,IAAI,CAAC,YAAY,IAAI,CAAC;QACpC,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,EAAE;QACzB,eAAe,EAAE,IAAI,CAAC,eAAe;QACrC,oBAAoB,EAAE,IAAI,CAAC,oBAAoB,IAAI,CAAC;QACpD,kBAAkB,EAAE,IAAI,CAAC,kBAAkB,IAAI,CAAC;QAChD,cAAc,EAAE,IAAI,CAAC,cAAc,IAAI,CAAC;QACxC,aAAa;KACd,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AACH,SAAgB,mBAAmB,CAAC,IAcnC;IACC,MAAM,OAAO,GAAG,IAAA,oBAAS,EAAC,aAAa,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC;IACvD,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,IAAI,EAAE,CAAC;IAErC,4EAA4E;IAC5E,4EAA4E;IAC5E,8EAA8E;IAC9E,8EAA8E;IAC9E,IAAI,IAAI,CAAC,YAAY,CAAC,sBAAsB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxD,MAAM,YAAY,GAAG,IAAI,CAAC,MAAM,CAAC,mBAAmB,CAAC,SAAS,CAC5D,CAAC,KAAK,EAAE,EAAE,CACR,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,4CAAoC,CAAC;YACpE,CAAC,CACJ,CAAC;QACF,IAAI,YAAY,KAAK,CAAC,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CACb,SAAS,YAAY,qDAAqD;gBACxE,uEAAuE;gBACvE,6DAA6D;gBAC7D,wEAAwE;gBACxE,qBAAqB,CACxB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,gFAAgF;IAChF,8DAA8D;IAC9D,IAAI,QAAQ,KAAK,EAAE,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;QACtD,MAAM,IAAI,KAAK,CAAC,qDAAqD,CAAC,CAAC;IACzE,CAAC;IACD,MAAM,KAAK,GAAG,QAAQ,KAAK,EAAE,CAAC,CAAC,CAAE,IAAI,CAAC,WAAsB,CAAC,CAAC,CAAC,EAAE,CAAC;IAElE,IAAI,IAAI,CAAC,eAAe,IAAI,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAClD,MAAM,IAAI,KAAK,CACb,8DAA8D,CAC/D,CAAC;IACJ,CAAC;IACD,IACE,CAAC,IAAI,CAAC,eAAe;QACrB,CAAC,IAAI,CAAC,gBAAgB;QACtB,IAAI,CAAC,YAAY,EAAE,MAAM,EACzB,CAAC;QACD,MAAM,IAAI,KAAK,CACb,wEAAwE,CACzE,CAAC;IACJ,CAAC;IACD,MAAM,eAAe,GACnB,IAAI,CAAC,eAAe;QACpB,CAAC,IAAI,CAAC,gBAAgB;YACpB,CAAC,CAAC,IAAA,mCAAoB,EAAC;gBACnB,IAAI,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI,QAAQ;gBAC7C,MAAM,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,MAAM,OAAO;gBAChD,WAAW,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,GAAG;gBACxC,IAAI,EAAE,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,IAAI;gBAClC,OAAO,EAAE,IAAA,uCAAwB,EAAC;oBAChC,QAAQ,EAAE,IAAI,CAAC,MAAM,CAAC,YAAY;oBAClC,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;oBAC3C,QAAQ,EAAE,IAAI,CAAC,gBAAgB,CAAC,eAAe;iBAChD,CAAC;gBACF,mBAAmB,EAAE,IAAI,CAAC,gBAAgB,CAAC,mBAAmB;aAC/D,CAAC;YACJ,CAAC,CAAC,SAAS,CAAC,CAAC;IACjB,IAAI,eAAe,EAAE,CAAC;QACpB,iFAAiF;QACjF,IAAA,uCAAwB,EACtB,eAAe,CAAC,4BAA4B,CAAC,WAAW,CACzD,CAAC;QACF,OAAO;YACL,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO;YACP,GAAG,EAAE,IAAA,sCAAmB,EAAC,4BAAc,EAAE,WAAW,EAAE,CAAC,CAAC;YACxD,YAAY,EAAE,WAAoB;YAClC,IAAI,EAAE;gBACJ,QAAQ;gBACR,IAAI,CAAC,MAAM;gBACX,IAAI,CAAC,kBAAkB;gBACvB,IAAI,CAAC,YAAY;gBACjB,eAAe;gBACf,IAAI,CAAC,YAAY,IAAI,EAAE;aACf;YACV,KAAK;SACN,CAAC;IACJ,CAAC;IACD,OAAO;QACL,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,OAAO;QACP,GAAG,EAAE,IAAA,sCAAmB,EAAC,4BAAc,EAAE,WAAW,EAAE,CAAC,CAAC;QACxD,YAAY,EAAE,WAAoB;QAClC,IAAI,EAAE;YACJ,QAAQ;YACR,IAAI,CAAC,MAAM;YACX,IAAI,CAAC,kBAAkB;YACvB,IAAI,CAAC,YAAY;SACT;QACV,KAAK;KACN,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAgB,gBAAgB,CAAC,IAKhC;IACC,OAAO;QACL,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,OAAO,EAAE,IAAA,oBAAS,EAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC;QAC5C,GAAG,EAAE,yBAAW;QAChB,YAAY,EAAE,cAAuB;QACrC,IAAI,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAU;KAC/D,CAAC;AACJ,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,oBAAoB,CACxC,MAAoB,EACpB,IAKC;IAED,OAAO,MAAM,CAAC,YAAY,CAAC;QACzB,OAAO,EAAE,IAAA,oBAAS,EAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC;QAC5C,GAAG,EAAE,yBAAW;QAChB,YAAY,EAAE,mBAAmB;QACjC,IAAI,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC;KACtD,CAAC,CAAC;AACL,CAAC;AAED;;;;;GAKG;AACI,KAAK,UAAU,eAAe,CACnC,MAAoB,EACpB,IAA8C;IAE9C,OAAO,MAAM,CAAC,YAAY,CAAC;QACzB,OAAO,EAAE,IAAA,oBAAS,EAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC;QAC5C,GAAG,EAAE,yBAAW;QAChB,YAAY,EAAE,gBAAgB;QAC9B,IAAI,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC;KACtB,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,gBAAgB,CACpC,MAAoB,EACpB,IAAiE;IAEjE,OAAO,MAAM,CAAC,YAAY,CAAC;QACzB,OAAO,EAAE,IAAA,oBAAS,EAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC;QAC5C,GAAG,EAAE,yBAAW;QAChB,YAAY,EAAE,cAAc;QAC5B,IAAI,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC;KACrC,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACI,KAAK,UAAU,sBAAsB,CAC1C,MAAoB,EACpB,IAA8C;IAE9C,OAAO,MAAM,CAAC,YAAY,CAAC;QACzB,OAAO,EAAE,IAAA,oBAAS,EAAC,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC;QAC5C,GAAG,EAAE,yBAAW;QAChB,YAAY,EAAE,iBAAiB;QAC/B,IAAI,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC;KACtB,CAAC,CAAC;AACL,CAAC"}
@@ -0,0 +1,4 @@
1
+ import type { Abi } from "viem";
2
+ /** Preserve errors/events while selecting one tuple-heavy deployment overload. */
3
+ export declare function selectDeploymentAbi<T extends Abi>(abi: T, functionName: string, argumentCount: number): T;
4
+ //# sourceMappingURL=deploymentAbi.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deploymentAbi.d.ts","sourceRoot":"","sources":["../../../src/v6/deploymentAbi.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,GAAG,EAAE,MAAM,MAAM,CAAC;AAEhC,kFAAkF;AAClF,wBAAgB,mBAAmB,CAAC,CAAC,SAAS,GAAG,EAC/C,GAAG,EAAE,CAAC,EACN,YAAY,EAAE,MAAM,EACpB,aAAa,EAAE,MAAM,GACpB,CAAC,CAmBH"}
@@ -0,0 +1,12 @@
1
+ /** Preserve errors/events while selecting one tuple-heavy deployment overload. */
2
+ export function selectDeploymentAbi(abi, functionName, argumentCount) {
3
+ if (abi.filter((item) => item.type === "function" &&
4
+ item.name === functionName &&
5
+ item.inputs.length === argumentCount).length !== 1) {
6
+ throw new Error(`Expected one ${functionName} overload with ${argumentCount} arguments.`);
7
+ }
8
+ return abi.filter((item) => item.type !== "function" ||
9
+ item.name !== functionName ||
10
+ item.inputs.length === argumentCount);
11
+ }
12
+ //# sourceMappingURL=deploymentAbi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deploymentAbi.js","sourceRoot":"","sources":["../../../src/v6/deploymentAbi.ts"],"names":[],"mappings":"AAEA,kFAAkF;AAClF,MAAM,UAAU,mBAAmB,CACjC,GAAM,EACN,YAAoB,EACpB,aAAqB;IAErB,IACE,GAAG,CAAC,MAAM,CACR,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,IAAI,KAAK,UAAU;QACxB,IAAI,CAAC,IAAI,KAAK,YAAY;QAC1B,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,aAAa,CACvC,CAAC,MAAM,KAAK,CAAC,EACd,CAAC;QACD,MAAM,IAAI,KAAK,CACb,gBAAgB,YAAY,kBAAkB,aAAa,aAAa,CACzE,CAAC;IACJ,CAAC;IACD,OAAO,GAAG,CAAC,MAAM,CACf,CAAC,IAAI,EAAE,EAAE,CACP,IAAI,CAAC,IAAI,KAAK,UAAU;QACxB,IAAI,CAAC,IAAI,KAAK,YAAY;QAC1B,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,aAAa,CACvB,CAAC;AACpB,CAAC"}
@@ -0,0 +1,45 @@
1
+ import { Address, PublicClient } from "viem";
2
+ import { JBChainId } from "../types.js";
3
+ /** Indexer evidence is supplied by the caller, independently of chain reads. */
4
+ export type ProjectDataStatus = "available" | "missing" | "incomplete" | "unavailable" | "not-checked";
5
+ export declare function describeProjectDataStatus(status: ProjectDataStatus): string;
6
+ export interface ProjectDeploymentCheck {
7
+ id: string;
8
+ category: "project" | "hook" | "pricing" | "permissions";
9
+ status: "passed" | "mismatch" | "unsupported" | "unavailable" | "info";
10
+ label: string;
11
+ message: string;
12
+ actual?: string;
13
+ expected?: string;
14
+ action?: string;
15
+ }
16
+ /** Copyable, JSON-safe evidence. A passed check is limited to its stated claim. */
17
+ export interface ProjectDeploymentDiagnostics {
18
+ version: 6;
19
+ chainId: number;
20
+ projectId: string;
21
+ operator?: Address;
22
+ checkedAt: string;
23
+ checkedBlock: string | null;
24
+ kind: "revnet" | "juicebox" | "custom" | "unknown";
25
+ checks: ProjectDeploymentCheck[];
26
+ }
27
+ /** Inspect current v6 wiring without a wallet, tier enumeration or indexer.
28
+ * Reads are pinned to one block. Caller-supplied indexer evidence belongs in a
29
+ * separate report section: a failed indexer request proves nothing about wiring.
30
+ * Custom hooks/controllers are unsupported where capabilities cannot be verified,
31
+ * never invalid merely for differing from canonical deployments. Pricing units
32
+ * and operator powers are informational unless explicit expectations are supplied.
33
+ */
34
+ export declare function getProjectDeploymentDiagnostics(client: PublicClient, args: {
35
+ chainId: JBChainId;
36
+ projectId: bigint;
37
+ /** Optional operator candidate, for reading actual shop powers. */
38
+ operator?: Address;
39
+ /** An intended pricing context, only when supplied by the deployer. */
40
+ expectedPricing?: {
41
+ currency: number;
42
+ decimals: number;
43
+ };
44
+ }): Promise<ProjectDeploymentDiagnostics>;
45
+ //# sourceMappingURL=deploymentDiagnostics.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"deploymentDiagnostics.d.ts","sourceRoot":"","sources":["../../../src/v6/deploymentDiagnostics.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,YAAY,EAAoC,MAAM,MAAM,CAAC;AAS/E,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAOxC,gFAAgF;AAChF,MAAM,MAAM,iBAAiB,GACzB,WAAW,GACX,SAAS,GACT,YAAY,GACZ,aAAa,GACb,aAAa,CAAC;AAElB,wBAAgB,yBAAyB,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,CAa3E;AAED,MAAM,WAAW,sBAAsB;IACrC,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,SAAS,GAAG,MAAM,GAAG,SAAS,GAAG,aAAa,CAAC;IACzD,MAAM,EAAE,QAAQ,GAAG,UAAU,GAAG,aAAa,GAAG,aAAa,GAAG,MAAM,CAAC;IACvE,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,mFAAmF;AACnF,MAAM,WAAW,4BAA4B;IAC3C,OAAO,EAAE,CAAC,CAAC;IACX,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,IAAI,EAAE,QAAQ,GAAG,UAAU,GAAG,QAAQ,GAAG,SAAS,CAAC;IACnD,MAAM,EAAE,sBAAsB,EAAE,CAAC;CAClC;AAKD;;;;;;GAMG;AACH,wBAAsB,+BAA+B,CACnD,MAAM,EAAE,YAAY,EACpB,IAAI,EAAE;IACJ,OAAO,EAAE,SAAS,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,mEAAmE;IACnE,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,uEAAuE;IACvE,eAAe,CAAC,EAAE;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAA;KAAE,CAAC;CAC1D,GACA,OAAO,CAAC,4BAA4B,CAAC,CAiiBvC"}