@t2000/sdk 10.11.1 → 10.13.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.
- package/dist/browser.cjs.map +1 -1
- package/dist/browser.d.cts +1 -1
- package/dist/browser.d.ts +1 -1
- package/dist/browser.js.map +1 -1
- package/dist/{commerce-D78r4-MZ.d.cts → commerce-Cj8Zh9Tm.d.cts} +17 -1
- package/dist/{commerce-D78r4-MZ.d.ts → commerce-Cj8Zh9Tm.d.ts} +17 -1
- package/dist/index.cjs +52 -0
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/index.js +52 -1
- package/dist/index.js.map +1 -1
- package/package.json +1 -1
|
@@ -1515,6 +1515,22 @@ declare function listServices(base: string, filter?: {
|
|
|
1515
1515
|
}>;
|
|
1516
1516
|
/** Fetch one agent's live service by slug (the buy-path resolver). */
|
|
1517
1517
|
declare function fetchService(base: string, agent: string, slug: string): Promise<ServiceListing>;
|
|
1518
|
+
/**
|
|
1519
|
+
* The buyer-requirements gate (SPEC_ACP_JOB_SPEC_V1 §4.1) — ONE implementation
|
|
1520
|
+
* shared by `t2 job create`, MCP `t2000_job_create`, and the console's
|
|
1521
|
+
* hire-prepare, so a hire can never fund with an unusable brief.
|
|
1522
|
+
*
|
|
1523
|
+
* 1. Listing has no `requirements` → the buyer may omit (anything passes).
|
|
1524
|
+
* 2. String listing → any NON-object payload whose `String(v).trim()` is
|
|
1525
|
+
* non-empty (scalars fine; objects rejected — the seller asked for text).
|
|
1526
|
+
* 3. Object listing (or `{ properties: {…} }`) → payload must be an object
|
|
1527
|
+
* and EVERY listing key present + trim-non-empty. EXTRA buyer keys are
|
|
1528
|
+
* allowed (forward-compatible; never required).
|
|
1529
|
+
*
|
|
1530
|
+
* Fails closed with the missing keys + the seller's own hints echoed, so an
|
|
1531
|
+
* agent can self-correct without a human reading the listing.
|
|
1532
|
+
*/
|
|
1533
|
+
declare function assertBuyerRequirements(listingRequirements: unknown, buyerPayload: unknown): void;
|
|
1518
1534
|
/** Upload a job-spec payload to the content-addressed store; returns the
|
|
1519
1535
|
* sha256 (no 0x) the chain pins as `spec_hash`. */
|
|
1520
1536
|
declare function putJobSpec(base: string, content: string): Promise<string>;
|
|
@@ -1522,4 +1538,4 @@ declare function putJobSpec(base: string, content: string): Promise<string>;
|
|
|
1522
1538
|
* the store is untrusted; the chain hash is the authority). */
|
|
1523
1539
|
declare function getJobSpec(base: string, hash: string): Promise<string>;
|
|
1524
1540
|
|
|
1525
|
-
export { TOKEN_MAP as $, A2A_ESCROW_FEE_CONFIG_ID as A, type BalanceResponse as B, CLOCK_ID as C, DEFAULT_COMMERCE_API_BASE as D, ETH_TYPE as E, type SendResult as F, GAS_RESERVE_MIN as G, type ServiceListing as H, IKA_TYPE as I, JOB_STATES as J, KNOWN_TARGETS as K, LABEL_PATTERNS as L, MANIFEST_TYPE as M, NAVX_TYPE as N, OVERLAY_FEE_RATE as O, PREFLIGHT_MAX_AMOUNT as P, type SimulationResult as Q, type StableAsset as R, STABLE_ASSETS as S, type SuiHolding as T, type SuiRpcTxBlock as U, type SupportedAsset as V, type SwapRouteResult as W, T2000Error as X, type T2000ErrorCode as Y, type T2000ErrorData as Z, T2000_OVERLAY_FEE_WALLET as _, A2A_ESCROW_PACKAGE_ID as a, validateAddress as a$, type TransactionLeg as a0, type TransactionRecord as a1, type TransactionSigner as a2, type TxDirection as a3, USDC_DECIMALS as a4, USDC_TYPE as a5, USDE_TYPE as a6, USDSUI_TYPE as a7, USDT_TYPE as a8, WAL_TYPE as a9, getDecimals as aA, getDecimalsForCoinType as aB, getJob as aC, getJobSpec as aD, jobActionsFor as aE, listServices as aF, mapMoveAbortCode as aG, mapWalletError as aH, mistToSui as aI, parseMppSuiChallenge as aJ, parseSuiRpcTx as aK, payWithMpp as aL, preflightCreateJob as aM, preflightFail as aN, preflightPay as aO, preflightSend as aP, preflightSwap as aQ, putJobSpec as aR, rawToStable as aS, rawToUsdc as aT, refineLendingLabel as aU, resolveSymbol as aV, resolveTokenType as aW, stableToRaw as aX, suiToMist as aY, truncateAddress as aZ, usdcToRaw as a_, WBTC_TYPE as aa, type ZkLoginProof as ab, ZkLoginSigner as ac, buildCreateJobTx as ad, buildDeliverJobTx as ae, buildRefundJobTx as af, buildRejectJobTx as ag, buildReleaseJobTx as ah, buildSendTx as ai, buildSwapTx as aj, checkPositiveAmount as ak, checkSuiAddress as al, classifyAction as am, classifyLabel as an, classifyTransaction as ao, executeTx as ap, extractAllUserLegs as aq, extractTransferDetails as ar, extractTxCommands as as, extractTxSender as at, fallbackLabel as au, fetchService as av, findSwapRoute as aw, formatAssetAmount as ax, formatSui as ay, formatUsd as az, COIN_REGISTRY as b, verifyJobForSeller as b0, type T2000Options as b1, type SwapResult as b2, type SwapQuoteResult as b3, type PaymentRequest as b4, type SuiCoreClient as b5, type SponsoredCoinMergeCache as b6, type SendableAsset as b7, CETUS_USDC_SUI_POOL as b8, type CoinPage as b9,
|
|
1541
|
+
export { TOKEN_MAP as $, A2A_ESCROW_FEE_CONFIG_ID as A, type BalanceResponse as B, CLOCK_ID as C, DEFAULT_COMMERCE_API_BASE as D, ETH_TYPE as E, type SendResult as F, GAS_RESERVE_MIN as G, type ServiceListing as H, IKA_TYPE as I, JOB_STATES as J, KNOWN_TARGETS as K, LABEL_PATTERNS as L, MANIFEST_TYPE as M, NAVX_TYPE as N, OVERLAY_FEE_RATE as O, PREFLIGHT_MAX_AMOUNT as P, type SimulationResult as Q, type StableAsset as R, STABLE_ASSETS as S, type SuiHolding as T, type SuiRpcTxBlock as U, type SupportedAsset as V, type SwapRouteResult as W, T2000Error as X, type T2000ErrorCode as Y, type T2000ErrorData as Z, T2000_OVERLAY_FEE_WALLET as _, A2A_ESCROW_PACKAGE_ID as a, validateAddress as a$, type TransactionLeg as a0, type TransactionRecord as a1, type TransactionSigner as a2, type TxDirection as a3, USDC_DECIMALS as a4, USDC_TYPE as a5, USDE_TYPE as a6, USDSUI_TYPE as a7, USDT_TYPE as a8, WAL_TYPE as a9, getDecimals as aA, getDecimalsForCoinType as aB, getJob as aC, getJobSpec as aD, jobActionsFor as aE, listServices as aF, mapMoveAbortCode as aG, mapWalletError as aH, mistToSui as aI, parseMppSuiChallenge as aJ, parseSuiRpcTx as aK, payWithMpp as aL, preflightCreateJob as aM, preflightFail as aN, preflightPay as aO, preflightSend as aP, preflightSwap as aQ, putJobSpec as aR, rawToStable as aS, rawToUsdc as aT, refineLendingLabel as aU, resolveSymbol as aV, resolveTokenType as aW, stableToRaw as aX, suiToMist as aY, truncateAddress as aZ, usdcToRaw as a_, WBTC_TYPE as aa, type ZkLoginProof as ab, ZkLoginSigner as ac, buildCreateJobTx as ad, buildDeliverJobTx as ae, buildRefundJobTx as af, buildRejectJobTx as ag, buildReleaseJobTx as ah, buildSendTx as ai, buildSwapTx as aj, checkPositiveAmount as ak, checkSuiAddress as al, classifyAction as am, classifyLabel as an, classifyTransaction as ao, executeTx as ap, extractAllUserLegs as aq, extractTransferDetails as ar, extractTxCommands as as, extractTxSender as at, fallbackLabel as au, fetchService as av, findSwapRoute as aw, formatAssetAmount as ax, formatSui as ay, formatUsd as az, COIN_REGISTRY as b, verifyJobForSeller as b0, type T2000Options as b1, type SwapResult as b2, type SwapQuoteResult as b3, type PaymentRequest as b4, type SuiCoreClient as b5, type SponsoredCoinMergeCache as b6, type SendableAsset as b7, CETUS_USDC_SUI_POOL as b8, type CoinPage as b9, selectAndSplitCoin as bA, selectSuiCoin as bB, serializeCetusRoute as bC, simulateTransaction as bD, throwIfSimulationFailed as bE, verifyCetusRouteCoinMatch as bF, DEFAULT_GRPC_URL as ba, GASLESS_MIN_STABLE_AMOUNT as bb, GASLESS_STABLE_TYPES as bc, OPERATION_ASSETS as bd, type Operation as be, SENDABLE_ASSETS as bf, type SelectAndSplitResult as bg, type SerializedCetusRoute as bh, type SerializedCetusRoutePath as bi, type SerializedRouterDataV3 as bj, addSendToTx as bk, addSwapToTx as bl, assertAllowedAsset as bm, assertBuyerRequirements as bn, deserializeCetusRoute as bo, fetchAllCoins as bp, getCoinMeta as bq, getSuiClient as br, getSuiGrpcClient as bs, isAllowedAsset as bt, isCetusRouteFresh as bu, isInRegistry as bv, normalizeAsset as bw, normalizeCoinType as bx, queryHistory as by, queryTransaction as bz, type ClassifyBalanceChange as c, type ClassifyResult as d, type CoinMeta as e, DEFAULT_NETWORK as f, type DepositInfo as g, type ExtractedTransfer as h, type Job as i, type JobState as j, type JobTerms as k, type JobVerification as l, KeypairSigner as m, LOFI_TYPE as n, MAX_DELIVER_HORIZON_MS as o, MAX_JOB_USDC as p, MAX_REVIEW_WINDOW_MS as q, MIST_PER_SUI as r, type OverlayFeeConfig as s, PREFLIGHT_OK as t, type PayOptions as u, type PayResult as v, type PreflightResult as w, SUI_DECIMALS as x, SUI_TYPE as y, SUPPORTED_ASSETS as z };
|
|
@@ -1515,6 +1515,22 @@ declare function listServices(base: string, filter?: {
|
|
|
1515
1515
|
}>;
|
|
1516
1516
|
/** Fetch one agent's live service by slug (the buy-path resolver). */
|
|
1517
1517
|
declare function fetchService(base: string, agent: string, slug: string): Promise<ServiceListing>;
|
|
1518
|
+
/**
|
|
1519
|
+
* The buyer-requirements gate (SPEC_ACP_JOB_SPEC_V1 §4.1) — ONE implementation
|
|
1520
|
+
* shared by `t2 job create`, MCP `t2000_job_create`, and the console's
|
|
1521
|
+
* hire-prepare, so a hire can never fund with an unusable brief.
|
|
1522
|
+
*
|
|
1523
|
+
* 1. Listing has no `requirements` → the buyer may omit (anything passes).
|
|
1524
|
+
* 2. String listing → any NON-object payload whose `String(v).trim()` is
|
|
1525
|
+
* non-empty (scalars fine; objects rejected — the seller asked for text).
|
|
1526
|
+
* 3. Object listing (or `{ properties: {…} }`) → payload must be an object
|
|
1527
|
+
* and EVERY listing key present + trim-non-empty. EXTRA buyer keys are
|
|
1528
|
+
* allowed (forward-compatible; never required).
|
|
1529
|
+
*
|
|
1530
|
+
* Fails closed with the missing keys + the seller's own hints echoed, so an
|
|
1531
|
+
* agent can self-correct without a human reading the listing.
|
|
1532
|
+
*/
|
|
1533
|
+
declare function assertBuyerRequirements(listingRequirements: unknown, buyerPayload: unknown): void;
|
|
1518
1534
|
/** Upload a job-spec payload to the content-addressed store; returns the
|
|
1519
1535
|
* sha256 (no 0x) the chain pins as `spec_hash`. */
|
|
1520
1536
|
declare function putJobSpec(base: string, content: string): Promise<string>;
|
|
@@ -1522,4 +1538,4 @@ declare function putJobSpec(base: string, content: string): Promise<string>;
|
|
|
1522
1538
|
* the store is untrusted; the chain hash is the authority). */
|
|
1523
1539
|
declare function getJobSpec(base: string, hash: string): Promise<string>;
|
|
1524
1540
|
|
|
1525
|
-
export { TOKEN_MAP as $, A2A_ESCROW_FEE_CONFIG_ID as A, type BalanceResponse as B, CLOCK_ID as C, DEFAULT_COMMERCE_API_BASE as D, ETH_TYPE as E, type SendResult as F, GAS_RESERVE_MIN as G, type ServiceListing as H, IKA_TYPE as I, JOB_STATES as J, KNOWN_TARGETS as K, LABEL_PATTERNS as L, MANIFEST_TYPE as M, NAVX_TYPE as N, OVERLAY_FEE_RATE as O, PREFLIGHT_MAX_AMOUNT as P, type SimulationResult as Q, type StableAsset as R, STABLE_ASSETS as S, type SuiHolding as T, type SuiRpcTxBlock as U, type SupportedAsset as V, type SwapRouteResult as W, T2000Error as X, type T2000ErrorCode as Y, type T2000ErrorData as Z, T2000_OVERLAY_FEE_WALLET as _, A2A_ESCROW_PACKAGE_ID as a, validateAddress as a$, type TransactionLeg as a0, type TransactionRecord as a1, type TransactionSigner as a2, type TxDirection as a3, USDC_DECIMALS as a4, USDC_TYPE as a5, USDE_TYPE as a6, USDSUI_TYPE as a7, USDT_TYPE as a8, WAL_TYPE as a9, getDecimals as aA, getDecimalsForCoinType as aB, getJob as aC, getJobSpec as aD, jobActionsFor as aE, listServices as aF, mapMoveAbortCode as aG, mapWalletError as aH, mistToSui as aI, parseMppSuiChallenge as aJ, parseSuiRpcTx as aK, payWithMpp as aL, preflightCreateJob as aM, preflightFail as aN, preflightPay as aO, preflightSend as aP, preflightSwap as aQ, putJobSpec as aR, rawToStable as aS, rawToUsdc as aT, refineLendingLabel as aU, resolveSymbol as aV, resolveTokenType as aW, stableToRaw as aX, suiToMist as aY, truncateAddress as aZ, usdcToRaw as a_, WBTC_TYPE as aa, type ZkLoginProof as ab, ZkLoginSigner as ac, buildCreateJobTx as ad, buildDeliverJobTx as ae, buildRefundJobTx as af, buildRejectJobTx as ag, buildReleaseJobTx as ah, buildSendTx as ai, buildSwapTx as aj, checkPositiveAmount as ak, checkSuiAddress as al, classifyAction as am, classifyLabel as an, classifyTransaction as ao, executeTx as ap, extractAllUserLegs as aq, extractTransferDetails as ar, extractTxCommands as as, extractTxSender as at, fallbackLabel as au, fetchService as av, findSwapRoute as aw, formatAssetAmount as ax, formatSui as ay, formatUsd as az, COIN_REGISTRY as b, verifyJobForSeller as b0, type T2000Options as b1, type SwapResult as b2, type SwapQuoteResult as b3, type PaymentRequest as b4, type SuiCoreClient as b5, type SponsoredCoinMergeCache as b6, type SendableAsset as b7, CETUS_USDC_SUI_POOL as b8, type CoinPage as b9,
|
|
1541
|
+
export { TOKEN_MAP as $, A2A_ESCROW_FEE_CONFIG_ID as A, type BalanceResponse as B, CLOCK_ID as C, DEFAULT_COMMERCE_API_BASE as D, ETH_TYPE as E, type SendResult as F, GAS_RESERVE_MIN as G, type ServiceListing as H, IKA_TYPE as I, JOB_STATES as J, KNOWN_TARGETS as K, LABEL_PATTERNS as L, MANIFEST_TYPE as M, NAVX_TYPE as N, OVERLAY_FEE_RATE as O, PREFLIGHT_MAX_AMOUNT as P, type SimulationResult as Q, type StableAsset as R, STABLE_ASSETS as S, type SuiHolding as T, type SuiRpcTxBlock as U, type SupportedAsset as V, type SwapRouteResult as W, T2000Error as X, type T2000ErrorCode as Y, type T2000ErrorData as Z, T2000_OVERLAY_FEE_WALLET as _, A2A_ESCROW_PACKAGE_ID as a, validateAddress as a$, type TransactionLeg as a0, type TransactionRecord as a1, type TransactionSigner as a2, type TxDirection as a3, USDC_DECIMALS as a4, USDC_TYPE as a5, USDE_TYPE as a6, USDSUI_TYPE as a7, USDT_TYPE as a8, WAL_TYPE as a9, getDecimals as aA, getDecimalsForCoinType as aB, getJob as aC, getJobSpec as aD, jobActionsFor as aE, listServices as aF, mapMoveAbortCode as aG, mapWalletError as aH, mistToSui as aI, parseMppSuiChallenge as aJ, parseSuiRpcTx as aK, payWithMpp as aL, preflightCreateJob as aM, preflightFail as aN, preflightPay as aO, preflightSend as aP, preflightSwap as aQ, putJobSpec as aR, rawToStable as aS, rawToUsdc as aT, refineLendingLabel as aU, resolveSymbol as aV, resolveTokenType as aW, stableToRaw as aX, suiToMist as aY, truncateAddress as aZ, usdcToRaw as a_, WBTC_TYPE as aa, type ZkLoginProof as ab, ZkLoginSigner as ac, buildCreateJobTx as ad, buildDeliverJobTx as ae, buildRefundJobTx as af, buildRejectJobTx as ag, buildReleaseJobTx as ah, buildSendTx as ai, buildSwapTx as aj, checkPositiveAmount as ak, checkSuiAddress as al, classifyAction as am, classifyLabel as an, classifyTransaction as ao, executeTx as ap, extractAllUserLegs as aq, extractTransferDetails as ar, extractTxCommands as as, extractTxSender as at, fallbackLabel as au, fetchService as av, findSwapRoute as aw, formatAssetAmount as ax, formatSui as ay, formatUsd as az, COIN_REGISTRY as b, verifyJobForSeller as b0, type T2000Options as b1, type SwapResult as b2, type SwapQuoteResult as b3, type PaymentRequest as b4, type SuiCoreClient as b5, type SponsoredCoinMergeCache as b6, type SendableAsset as b7, CETUS_USDC_SUI_POOL as b8, type CoinPage as b9, selectAndSplitCoin as bA, selectSuiCoin as bB, serializeCetusRoute as bC, simulateTransaction as bD, throwIfSimulationFailed as bE, verifyCetusRouteCoinMatch as bF, DEFAULT_GRPC_URL as ba, GASLESS_MIN_STABLE_AMOUNT as bb, GASLESS_STABLE_TYPES as bc, OPERATION_ASSETS as bd, type Operation as be, SENDABLE_ASSETS as bf, type SelectAndSplitResult as bg, type SerializedCetusRoute as bh, type SerializedCetusRoutePath as bi, type SerializedRouterDataV3 as bj, addSendToTx as bk, addSwapToTx as bl, assertAllowedAsset as bm, assertBuyerRequirements as bn, deserializeCetusRoute as bo, fetchAllCoins as bp, getCoinMeta as bq, getSuiClient as br, getSuiGrpcClient as bs, isAllowedAsset as bt, isCetusRouteFresh as bu, isInRegistry as bv, normalizeAsset as bw, normalizeCoinType as bx, queryHistory as by, queryTransaction as bz, type ClassifyBalanceChange as c, type ClassifyResult as d, type CoinMeta as e, DEFAULT_NETWORK as f, type DepositInfo as g, type ExtractedTransfer as h, type Job as i, type JobState as j, type JobTerms as k, type JobVerification as l, KeypairSigner as m, LOFI_TYPE as n, MAX_DELIVER_HORIZON_MS as o, MAX_JOB_USDC as p, MAX_REVIEW_WINDOW_MS as q, MIST_PER_SUI as r, type OverlayFeeConfig as s, PREFLIGHT_OK as t, type PayOptions as u, type PayResult as v, type PreflightResult as w, SUI_DECIMALS as x, SUI_TYPE as y, SUPPORTED_ASSETS as z };
|
package/dist/index.cjs
CHANGED
|
@@ -3431,6 +3431,57 @@ async function fetchService(base, agent, slug) {
|
|
|
3431
3431
|
}
|
|
3432
3432
|
return match;
|
|
3433
3433
|
}
|
|
3434
|
+
function requirementFieldMap(listing) {
|
|
3435
|
+
const props = listing.properties;
|
|
3436
|
+
if (props && typeof props === "object" && !Array.isArray(props)) {
|
|
3437
|
+
return props;
|
|
3438
|
+
}
|
|
3439
|
+
return listing;
|
|
3440
|
+
}
|
|
3441
|
+
function requirementHint(value) {
|
|
3442
|
+
return typeof value === "string" ? value : JSON.stringify(value);
|
|
3443
|
+
}
|
|
3444
|
+
function isPlainObject(value) {
|
|
3445
|
+
return typeof value === "object" && value !== null && !Array.isArray(value);
|
|
3446
|
+
}
|
|
3447
|
+
function assertBuyerRequirements(listingRequirements, buyerPayload) {
|
|
3448
|
+
if (listingRequirements == null) {
|
|
3449
|
+
return;
|
|
3450
|
+
}
|
|
3451
|
+
if (isPlainObject(listingRequirements)) {
|
|
3452
|
+
const fields = requirementFieldMap(listingRequirements);
|
|
3453
|
+
const keys = Object.keys(fields);
|
|
3454
|
+
if (keys.length === 0) {
|
|
3455
|
+
return;
|
|
3456
|
+
}
|
|
3457
|
+
if (!isPlainObject(buyerPayload)) {
|
|
3458
|
+
throw new Error(
|
|
3459
|
+
`This service needs a JSON requirements object with: ${keys.join(", ")}. The seller asks for: ${JSON.stringify(fields)}`
|
|
3460
|
+
);
|
|
3461
|
+
}
|
|
3462
|
+
const missing = keys.filter(
|
|
3463
|
+
(key) => String(buyerPayload[key] ?? "").trim().length === 0
|
|
3464
|
+
);
|
|
3465
|
+
if (missing.length > 0) {
|
|
3466
|
+
const hints = missing.map((key) => `${key} \u2014 ${requirementHint(fields[key])}`).join("; ");
|
|
3467
|
+
throw new Error(
|
|
3468
|
+
`Missing required field(s): ${missing.join(", ")}. The seller asks for: ${hints}`
|
|
3469
|
+
);
|
|
3470
|
+
}
|
|
3471
|
+
return;
|
|
3472
|
+
}
|
|
3473
|
+
const hint = requirementHint(listingRequirements);
|
|
3474
|
+
if (typeof buyerPayload === "object" && buyerPayload !== null) {
|
|
3475
|
+
throw new Error(
|
|
3476
|
+
`This service expects free-text requirements, not JSON. The seller asks for: ${hint}`
|
|
3477
|
+
);
|
|
3478
|
+
}
|
|
3479
|
+
if (String(buyerPayload ?? "").trim().length === 0) {
|
|
3480
|
+
throw new Error(
|
|
3481
|
+
`This service needs requirements. The seller asks for: ${hint}`
|
|
3482
|
+
);
|
|
3483
|
+
}
|
|
3484
|
+
}
|
|
3434
3485
|
async function sha256Hex(content) {
|
|
3435
3486
|
const digest = await crypto.subtle.digest(
|
|
3436
3487
|
"SHA-256",
|
|
@@ -4333,6 +4384,7 @@ exports.addSendToTx = addSendToTx;
|
|
|
4333
4384
|
exports.addSwapToTx = addSwapToTx;
|
|
4334
4385
|
exports.approxUsdValue = approxUsdValue;
|
|
4335
4386
|
exports.assertAllowedAsset = assertAllowedAsset;
|
|
4387
|
+
exports.assertBuyerRequirements = assertBuyerRequirements;
|
|
4336
4388
|
exports.assertLimitConfig = assertLimitConfig;
|
|
4337
4389
|
exports.buildAddLeafTx = buildAddLeafTx;
|
|
4338
4390
|
exports.buildAgentCoinModule = buildAgentCoinModule;
|