tenzro-sdk 0.1.0 → 0.3.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/LICENSE +4 -15
- package/README.md +197 -4
- package/dist/adaptive-burn.d.ts +40 -0
- package/dist/adaptive-burn.d.ts.map +1 -0
- package/dist/adaptive-burn.js +53 -0
- package/dist/adaptive-burn.js.map +1 -0
- package/dist/agent.d.ts +127 -12
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +176 -15
- package/dist/agent.js.map +1 -1
- package/dist/ap2.d.ts +96 -0
- package/dist/ap2.d.ts.map +1 -1
- package/dist/ap2.js +65 -0
- package/dist/ap2.js.map +1 -1
- package/dist/app.js +5 -5
- package/dist/app.js.map +1 -1
- package/dist/auth.d.ts +394 -0
- package/dist/auth.d.ts.map +1 -0
- package/dist/auth.js +237 -0
- package/dist/auth.js.map +1 -0
- package/dist/bond.d.ts +70 -0
- package/dist/bond.d.ts.map +1 -0
- package/dist/bond.js +172 -0
- package/dist/bond.js.map +1 -0
- package/dist/cct.d.ts +53 -0
- package/dist/cct.d.ts.map +1 -0
- package/dist/cct.js +30 -0
- package/dist/cct.js.map +1 -0
- package/dist/client.d.ts +215 -2
- package/dist/client.d.ts.map +1 -1
- package/dist/client.js +295 -12
- package/dist/client.js.map +1 -1
- package/dist/cortex.d.ts +227 -0
- package/dist/cortex.d.ts.map +1 -0
- package/dist/cortex.js +137 -0
- package/dist/cortex.js.map +1 -0
- package/dist/custody.d.ts +251 -0
- package/dist/custody.d.ts.map +1 -1
- package/dist/custody.js +216 -0
- package/dist/custody.js.map +1 -1
- package/dist/eip6963.d.ts +63 -0
- package/dist/eip6963.d.ts.map +1 -0
- package/dist/eip6963.js +67 -0
- package/dist/eip6963.js.map +1 -0
- package/dist/eip7702.d.ts +110 -0
- package/dist/eip7702.d.ts.map +1 -0
- package/dist/eip7702.js +73 -0
- package/dist/eip7702.js.map +1 -0
- package/dist/erc7683.d.ts +79 -0
- package/dist/erc7683.d.ts.map +1 -0
- package/dist/erc7683.js +82 -0
- package/dist/erc7683.js.map +1 -0
- package/dist/erc8004.d.ts +97 -0
- package/dist/erc8004.d.ts.map +1 -0
- package/dist/erc8004.js +182 -0
- package/dist/erc8004.js.map +1 -0
- package/dist/events.d.ts +45 -15
- package/dist/events.d.ts.map +1 -1
- package/dist/events.js +38 -8
- package/dist/events.js.map +1 -1
- package/dist/identity.d.ts +16 -2
- package/dist/identity.d.ts.map +1 -1
- package/dist/identity.js +19 -1
- package/dist/identity.js.map +1 -1
- package/dist/index.d.ts +52 -6
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +83 -1
- package/dist/index.js.map +1 -1
- package/dist/insurance.d.ts +38 -0
- package/dist/insurance.d.ts.map +1 -0
- package/dist/insurance.js +51 -0
- package/dist/insurance.js.map +1 -0
- package/dist/iroh.d.ts +104 -0
- package/dist/iroh.d.ts.map +1 -0
- package/dist/iroh.js +102 -0
- package/dist/iroh.js.map +1 -0
- package/dist/lifecycle.d.ts +41 -0
- package/dist/lifecycle.d.ts.map +1 -0
- package/dist/lifecycle.js +56 -0
- package/dist/lifecycle.js.map +1 -0
- package/dist/marketplace.d.ts +30 -2
- package/dist/marketplace.d.ts.map +1 -1
- package/dist/marketplace.js +36 -2
- package/dist/marketplace.js.map +1 -1
- package/dist/memory.d.ts +78 -0
- package/dist/memory.d.ts.map +1 -0
- package/dist/memory.js +60 -0
- package/dist/memory.js.map +1 -0
- package/dist/multimodal.d.ts +294 -0
- package/dist/multimodal.d.ts.map +1 -0
- package/dist/multimodal.js +160 -0
- package/dist/multimodal.js.map +1 -0
- package/dist/passkey.d.ts +193 -0
- package/dist/passkey.d.ts.map +1 -0
- package/dist/passkey.js +481 -0
- package/dist/passkey.js.map +1 -0
- package/dist/payment.d.ts +14 -1
- package/dist/payment.d.ts.map +1 -1
- package/dist/payment.js +15 -0
- package/dist/payment.js.map +1 -1
- package/dist/principal-chain.d.ts +41 -0
- package/dist/principal-chain.d.ts.map +1 -0
- package/dist/principal-chain.js +56 -0
- package/dist/principal-chain.js.map +1 -0
- package/dist/provider.d.ts +7 -6
- package/dist/provider.d.ts.map +1 -1
- package/dist/provider.js +9 -6
- package/dist/provider.js.map +1 -1
- package/dist/quota.d.ts +54 -0
- package/dist/quota.d.ts.map +1 -0
- package/dist/quota.js +71 -0
- package/dist/quota.js.map +1 -0
- package/dist/rpc.d.ts +43 -4
- package/dist/rpc.d.ts.map +1 -1
- package/dist/rpc.js +110 -3
- package/dist/rpc.js.map +1 -1
- package/dist/seed-agent.d.ts +52 -0
- package/dist/seed-agent.d.ts.map +1 -0
- package/dist/seed-agent.js +69 -0
- package/dist/seed-agent.js.map +1 -0
- package/dist/settlement.d.ts +69 -10
- package/dist/settlement.d.ts.map +1 -1
- package/dist/settlement.js +220 -16
- package/dist/settlement.js.map +1 -1
- package/dist/signer.d.ts +181 -0
- package/dist/signer.d.ts.map +1 -0
- package/dist/signer.js +69 -0
- package/dist/signer.js.map +1 -0
- package/dist/sla.d.ts +95 -0
- package/dist/sla.d.ts.map +1 -0
- package/dist/sla.js +70 -0
- package/dist/sla.js.map +1 -0
- package/dist/snapshot.d.ts +122 -0
- package/dist/snapshot.d.ts.map +1 -0
- package/dist/snapshot.js +80 -0
- package/dist/snapshot.js.map +1 -0
- package/dist/staking.d.ts +5 -5
- package/dist/staking.d.ts.map +1 -1
- package/dist/staking.js +8 -6
- package/dist/staking.js.map +1 -1
- package/dist/streaming.js.map +1 -1
- package/dist/svm-cross-vm.d.ts +109 -0
- package/dist/svm-cross-vm.d.ts.map +1 -0
- package/dist/svm-cross-vm.js +215 -0
- package/dist/svm-cross-vm.js.map +1 -0
- package/dist/task.d.ts +56 -22
- package/dist/task.d.ts.map +1 -1
- package/dist/task.js +65 -31
- package/dist/task.js.map +1 -1
- package/dist/token.d.ts +41 -11
- package/dist/token.d.ts.map +1 -1
- package/dist/token.js.map +1 -1
- package/dist/training.d.ts +108 -0
- package/dist/training.d.ts.map +1 -0
- package/dist/training.js +53 -0
- package/dist/training.js.map +1 -0
- package/dist/types.d.ts +247 -17
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/dist/validator.d.ts +76 -0
- package/dist/validator.d.ts.map +1 -0
- package/dist/validator.js +47 -0
- package/dist/validator.js.map +1 -0
- package/dist/wallet.d.ts +26 -9
- package/dist/wallet.d.ts.map +1 -1
- package/dist/wallet.js +34 -19
- package/dist/wallet.js.map +1 -1
- package/dist/wormhole.d.ts +76 -0
- package/dist/wormhole.d.ts.map +1 -0
- package/dist/wormhole.js +56 -0
- package/dist/wormhole.js.map +1 -0
- package/package.json +3 -2
package/dist/bond.d.ts
ADDED
|
@@ -0,0 +1,70 @@
|
|
|
1
|
+
import { RpcClient } from "./rpc";
|
|
2
|
+
/**
|
|
3
|
+
* Client for AgentBond operations (Agent-Swarm Spec 9).
|
|
4
|
+
*
|
|
5
|
+
* Bonds are TNZO-denominated stakes posted by a controller against a
|
|
6
|
+
* specific agent DID. While Active and ≥ `bond_min_for_promotion`, the
|
|
7
|
+
* bonded agent is promoted to the Delegated admission lane. Bonds are
|
|
8
|
+
* locked at a deterministic vault address derived from the agent DID:
|
|
9
|
+
* `Address(SHA-256("tenzro/agent-bond/vault" || agent_did))`.
|
|
10
|
+
*
|
|
11
|
+
* Read methods query node state directly. Write methods build typed
|
|
12
|
+
* `PostAgentBond` / `IncreaseAgentBond` / `WithdrawAgentBond`
|
|
13
|
+
* transactions and submit them through `tenzro_signAndSendTransaction`,
|
|
14
|
+
* matching the {@link SettlementClient.createEscrow} pattern.
|
|
15
|
+
*/
|
|
16
|
+
export declare class BondClient {
|
|
17
|
+
private rpc;
|
|
18
|
+
constructor(rpc: RpcClient);
|
|
19
|
+
/**
|
|
20
|
+
* Fetch a single AgentBond record by its 32-byte bond id.
|
|
21
|
+
* @param bondId - 32-byte bond identifier (hex with or without 0x)
|
|
22
|
+
* @returns Bond record or null if not found
|
|
23
|
+
*/
|
|
24
|
+
getAgentBond(bondId: string): Promise<any>;
|
|
25
|
+
/**
|
|
26
|
+
* List all AgentBonds posted by a given controller DID.
|
|
27
|
+
* @param controllerDid - The controller DID (e.g. `did:tenzro:human:...`)
|
|
28
|
+
* @returns Array of bond records (empty if controller has none)
|
|
29
|
+
*/
|
|
30
|
+
listAgentBondsByController(controllerDid: string): Promise<any[]>;
|
|
31
|
+
/**
|
|
32
|
+
* Post a fresh AgentBond for `agentDid` from `controller` (the controller
|
|
33
|
+
* wallet address, used as `tx.from`). Locks `amount` TNZO into the bond
|
|
34
|
+
* vault and promotes the agent to Delegated lane while ≥
|
|
35
|
+
* `bond_min_for_promotion`.
|
|
36
|
+
*
|
|
37
|
+
* Authentication is ambient (DPoP-bound bearer JWT). Signing happens
|
|
38
|
+
* server-side against the holder's MPC wallet.
|
|
39
|
+
*
|
|
40
|
+
* @param controller - Controller wallet address (signer / `tx.from`)
|
|
41
|
+
* @param agentDid - DID of the agent being bonded
|
|
42
|
+
* @param controllerDid - DID of the controller posting the bond
|
|
43
|
+
* @param amount - TNZO base units to lock
|
|
44
|
+
* @returns Transaction hash
|
|
45
|
+
*/
|
|
46
|
+
postAgentBond(controller: string, agentDid: string, controllerDid: string, amount: bigint): Promise<string>;
|
|
47
|
+
/**
|
|
48
|
+
* Top up an existing Active AgentBond by `amount`. `tx.from` MUST equal
|
|
49
|
+
* the original poster (the bond's controller).
|
|
50
|
+
*
|
|
51
|
+
* @param controller - Controller wallet address (signer / `tx.from`)
|
|
52
|
+
* @param agentDid - DID of the bonded agent
|
|
53
|
+
* @param amount - Additional TNZO base units to lock
|
|
54
|
+
* @returns Transaction hash
|
|
55
|
+
*/
|
|
56
|
+
increaseAgentBond(controller: string, agentDid: string, amount: bigint): Promise<string>;
|
|
57
|
+
/**
|
|
58
|
+
* Initiate the cooldown timer on an Active AgentBond. Funds are not
|
|
59
|
+
* released by the VM — finalisation happens off-VM via the node-side
|
|
60
|
+
* `BondManager` once `cooldown_ms` has elapsed. `tx.from` MUST equal
|
|
61
|
+
* the bond's controller.
|
|
62
|
+
*
|
|
63
|
+
* @param controller - Controller wallet address (signer / `tx.from`)
|
|
64
|
+
* @param agentDid - DID of the bonded agent
|
|
65
|
+
* @returns Transaction hash
|
|
66
|
+
*/
|
|
67
|
+
withdrawAgentBond(controller: string, agentDid: string): Promise<string>;
|
|
68
|
+
private fetchNonceAndChainId;
|
|
69
|
+
}
|
|
70
|
+
//# sourceMappingURL=bond.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bond.d.ts","sourceRoot":"","sources":["../src/bond.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC;;;;;;;;;;;;;GAaG;AACH,qBAAa,UAAU;IACT,OAAO,CAAC,GAAG;gBAAH,GAAG,EAAE,SAAS;IAElC;;;;OAIG;IACG,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC;IAIhD;;;;OAIG;IACG,0BAA0B,CAAC,aAAa,EAAE,MAAM,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAMvE;;;;;;;;;;;;;;OAcG;IACG,aAAa,CACjB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,aAAa,EAAE,MAAM,EACrB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,CAAC;IA6BlB;;;;;;;;OAQG;IACG,iBAAiB,CACrB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,GACb,OAAO,CAAC,MAAM,CAAC;IA4BlB;;;;;;;;;OASG;IACG,iBAAiB,CACrB,UAAU,EAAE,MAAM,EAClB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,MAAM,CAAC;YAyBJ,oBAAoB;CAsBnC"}
|
package/dist/bond.js
ADDED
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.BondClient = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Client for AgentBond operations (Agent-Swarm Spec 9).
|
|
6
|
+
*
|
|
7
|
+
* Bonds are TNZO-denominated stakes posted by a controller against a
|
|
8
|
+
* specific agent DID. While Active and ≥ `bond_min_for_promotion`, the
|
|
9
|
+
* bonded agent is promoted to the Delegated admission lane. Bonds are
|
|
10
|
+
* locked at a deterministic vault address derived from the agent DID:
|
|
11
|
+
* `Address(SHA-256("tenzro/agent-bond/vault" || agent_did))`.
|
|
12
|
+
*
|
|
13
|
+
* Read methods query node state directly. Write methods build typed
|
|
14
|
+
* `PostAgentBond` / `IncreaseAgentBond` / `WithdrawAgentBond`
|
|
15
|
+
* transactions and submit them through `tenzro_signAndSendTransaction`,
|
|
16
|
+
* matching the {@link SettlementClient.createEscrow} pattern.
|
|
17
|
+
*/
|
|
18
|
+
class BondClient {
|
|
19
|
+
rpc;
|
|
20
|
+
constructor(rpc) {
|
|
21
|
+
this.rpc = rpc;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Fetch a single AgentBond record by its 32-byte bond id.
|
|
25
|
+
* @param bondId - 32-byte bond identifier (hex with or without 0x)
|
|
26
|
+
* @returns Bond record or null if not found
|
|
27
|
+
*/
|
|
28
|
+
async getAgentBond(bondId) {
|
|
29
|
+
return this.rpc.call("tenzro_getAgentBond", [bondId]);
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* List all AgentBonds posted by a given controller DID.
|
|
33
|
+
* @param controllerDid - The controller DID (e.g. `did:tenzro:human:...`)
|
|
34
|
+
* @returns Array of bond records (empty if controller has none)
|
|
35
|
+
*/
|
|
36
|
+
async listAgentBondsByController(controllerDid) {
|
|
37
|
+
return this.rpc.call("tenzro_listAgentBondsByController", [
|
|
38
|
+
controllerDid,
|
|
39
|
+
]);
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Post a fresh AgentBond for `agentDid` from `controller` (the controller
|
|
43
|
+
* wallet address, used as `tx.from`). Locks `amount` TNZO into the bond
|
|
44
|
+
* vault and promotes the agent to Delegated lane while ≥
|
|
45
|
+
* `bond_min_for_promotion`.
|
|
46
|
+
*
|
|
47
|
+
* Authentication is ambient (DPoP-bound bearer JWT). Signing happens
|
|
48
|
+
* server-side against the holder's MPC wallet.
|
|
49
|
+
*
|
|
50
|
+
* @param controller - Controller wallet address (signer / `tx.from`)
|
|
51
|
+
* @param agentDid - DID of the agent being bonded
|
|
52
|
+
* @param controllerDid - DID of the controller posting the bond
|
|
53
|
+
* @param amount - TNZO base units to lock
|
|
54
|
+
* @returns Transaction hash
|
|
55
|
+
*/
|
|
56
|
+
async postAgentBond(controller, agentDid, controllerDid, amount) {
|
|
57
|
+
const { nonce, chainId } = await this.fetchNonceAndChainId(controller);
|
|
58
|
+
const txType = {
|
|
59
|
+
type: "PostAgentBond",
|
|
60
|
+
data: {
|
|
61
|
+
agent_did: agentDid,
|
|
62
|
+
controller_did: controllerDid,
|
|
63
|
+
amount: amount.toString(),
|
|
64
|
+
},
|
|
65
|
+
};
|
|
66
|
+
const result = await this.rpc.call("tenzro_signAndSendTransaction", [
|
|
67
|
+
{
|
|
68
|
+
from: controller,
|
|
69
|
+
to: "0x0000000000000000000000000000000000000000000000000000000000000000",
|
|
70
|
+
value: 0,
|
|
71
|
+
gas_limit: 75_000,
|
|
72
|
+
gas_price: 1_000_000_000,
|
|
73
|
+
nonce,
|
|
74
|
+
chain_id: chainId,
|
|
75
|
+
tx_type: txType,
|
|
76
|
+
},
|
|
77
|
+
]);
|
|
78
|
+
return typeof result === "string"
|
|
79
|
+
? result
|
|
80
|
+
: result?.tx_hash || result?.transaction_hash || "";
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Top up an existing Active AgentBond by `amount`. `tx.from` MUST equal
|
|
84
|
+
* the original poster (the bond's controller).
|
|
85
|
+
*
|
|
86
|
+
* @param controller - Controller wallet address (signer / `tx.from`)
|
|
87
|
+
* @param agentDid - DID of the bonded agent
|
|
88
|
+
* @param amount - Additional TNZO base units to lock
|
|
89
|
+
* @returns Transaction hash
|
|
90
|
+
*/
|
|
91
|
+
async increaseAgentBond(controller, agentDid, amount) {
|
|
92
|
+
const { nonce, chainId } = await this.fetchNonceAndChainId(controller);
|
|
93
|
+
const txType = {
|
|
94
|
+
type: "IncreaseAgentBond",
|
|
95
|
+
data: {
|
|
96
|
+
agent_did: agentDid,
|
|
97
|
+
amount: amount.toString(),
|
|
98
|
+
},
|
|
99
|
+
};
|
|
100
|
+
const result = await this.rpc.call("tenzro_signAndSendTransaction", [
|
|
101
|
+
{
|
|
102
|
+
from: controller,
|
|
103
|
+
to: "0x0000000000000000000000000000000000000000000000000000000000000000",
|
|
104
|
+
value: 0,
|
|
105
|
+
gas_limit: 60_000,
|
|
106
|
+
gas_price: 1_000_000_000,
|
|
107
|
+
nonce,
|
|
108
|
+
chain_id: chainId,
|
|
109
|
+
tx_type: txType,
|
|
110
|
+
},
|
|
111
|
+
]);
|
|
112
|
+
return typeof result === "string"
|
|
113
|
+
? result
|
|
114
|
+
: result?.tx_hash || result?.transaction_hash || "";
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* Initiate the cooldown timer on an Active AgentBond. Funds are not
|
|
118
|
+
* released by the VM — finalisation happens off-VM via the node-side
|
|
119
|
+
* `BondManager` once `cooldown_ms` has elapsed. `tx.from` MUST equal
|
|
120
|
+
* the bond's controller.
|
|
121
|
+
*
|
|
122
|
+
* @param controller - Controller wallet address (signer / `tx.from`)
|
|
123
|
+
* @param agentDid - DID of the bonded agent
|
|
124
|
+
* @returns Transaction hash
|
|
125
|
+
*/
|
|
126
|
+
async withdrawAgentBond(controller, agentDid) {
|
|
127
|
+
const { nonce, chainId } = await this.fetchNonceAndChainId(controller);
|
|
128
|
+
const txType = {
|
|
129
|
+
type: "WithdrawAgentBond",
|
|
130
|
+
data: { agent_did: agentDid },
|
|
131
|
+
};
|
|
132
|
+
const result = await this.rpc.call("tenzro_signAndSendTransaction", [
|
|
133
|
+
{
|
|
134
|
+
from: controller,
|
|
135
|
+
to: "0x0000000000000000000000000000000000000000000000000000000000000000",
|
|
136
|
+
value: 0,
|
|
137
|
+
gas_limit: 50_000,
|
|
138
|
+
gas_price: 1_000_000_000,
|
|
139
|
+
nonce,
|
|
140
|
+
chain_id: chainId,
|
|
141
|
+
tx_type: txType,
|
|
142
|
+
},
|
|
143
|
+
]);
|
|
144
|
+
return typeof result === "string"
|
|
145
|
+
? result
|
|
146
|
+
: result?.tx_hash || result?.transaction_hash || "";
|
|
147
|
+
}
|
|
148
|
+
async fetchNonceAndChainId(address) {
|
|
149
|
+
let nonce = 0;
|
|
150
|
+
let chainId = 1337;
|
|
151
|
+
try {
|
|
152
|
+
const nonceHex = await this.rpc.call("eth_getTransactionCount", [
|
|
153
|
+
address,
|
|
154
|
+
"latest",
|
|
155
|
+
]);
|
|
156
|
+
nonce = parseInt(nonceHex.replace(/^0x/, ""), 16) || 0;
|
|
157
|
+
}
|
|
158
|
+
catch (_) {
|
|
159
|
+
// ignore — default to 0
|
|
160
|
+
}
|
|
161
|
+
try {
|
|
162
|
+
const chainIdHex = await this.rpc.call("eth_chainId", []);
|
|
163
|
+
chainId = parseInt(chainIdHex.replace(/^0x/, ""), 16) || 1337;
|
|
164
|
+
}
|
|
165
|
+
catch (_) {
|
|
166
|
+
// ignore — default to 1337
|
|
167
|
+
}
|
|
168
|
+
return { nonce, chainId };
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
exports.BondClient = BondClient;
|
|
172
|
+
//# sourceMappingURL=bond.js.map
|
package/dist/bond.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bond.js","sourceRoot":"","sources":["../src/bond.ts"],"names":[],"mappings":"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"}
|
package/dist/cct.d.ts
ADDED
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import type { RpcClient } from './rpc';
|
|
2
|
+
/**
|
|
3
|
+
* Metadata for a single TNZO CCT pool on one chain.
|
|
4
|
+
*/
|
|
5
|
+
export interface CctPool {
|
|
6
|
+
/** CAIP-2 or Chainlink chain id. */
|
|
7
|
+
chain_id: string;
|
|
8
|
+
/** Chainlink CCIP chain selector. */
|
|
9
|
+
chain_selector: string;
|
|
10
|
+
/** Deployed pool contract address. */
|
|
11
|
+
pool_address: string;
|
|
12
|
+
/** Underlying TNZO token contract address on the chain. */
|
|
13
|
+
token_address: string;
|
|
14
|
+
/** Pool type ("LockRelease" on Ethereum; "BurnMint" elsewhere). */
|
|
15
|
+
pool_type: string;
|
|
16
|
+
/** Contract name (e.g. "LockReleaseTokenPool"). */
|
|
17
|
+
contract_name: string;
|
|
18
|
+
/** Outbound rate-limiter capacity (decimal string). */
|
|
19
|
+
outbound_capacity: string;
|
|
20
|
+
/** Inbound rate-limiter capacity (decimal string). */
|
|
21
|
+
inbound_capacity: string;
|
|
22
|
+
/** Rate-limiter refill rate (decimal string). */
|
|
23
|
+
refill_rate: string;
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* List of TNZO CCT pools.
|
|
27
|
+
*/
|
|
28
|
+
export interface CctPoolList {
|
|
29
|
+
/** Number of registered pools. */
|
|
30
|
+
count: number;
|
|
31
|
+
/** Per-chain pool entries. */
|
|
32
|
+
pools: CctPool[];
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Client for the TNZO CCT (Chainlink Cross-Chain Token) pool registry.
|
|
36
|
+
*
|
|
37
|
+
* Ethereum uses a LockRelease pool; Base, Arbitrum, Optimism, and Solana
|
|
38
|
+
* use BurnMint pools.
|
|
39
|
+
*/
|
|
40
|
+
export declare class CctClient {
|
|
41
|
+
private readonly rpc;
|
|
42
|
+
constructor(rpc: RpcClient);
|
|
43
|
+
/**
|
|
44
|
+
* List all registered TNZO CCT pools.
|
|
45
|
+
*/
|
|
46
|
+
listPools(): Promise<CctPoolList>;
|
|
47
|
+
/**
|
|
48
|
+
* Get a single TNZO CCT pool by chain name
|
|
49
|
+
* (e.g. `ethereum`, `base`, `arbitrum`, `optimism`, `solana`).
|
|
50
|
+
*/
|
|
51
|
+
getPool(chain: string): Promise<CctPool>;
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=cct.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cct.d.ts","sourceRoot":"","sources":["../src/cct.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvC;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,oCAAoC;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,qCAAqC;IACrC,cAAc,EAAE,MAAM,CAAC;IACvB,sCAAsC;IACtC,YAAY,EAAE,MAAM,CAAC;IACrB,2DAA2D;IAC3D,aAAa,EAAE,MAAM,CAAC;IACtB,mEAAmE;IACnE,SAAS,EAAE,MAAM,CAAC;IAClB,mDAAmD;IACnD,aAAa,EAAE,MAAM,CAAC;IACtB,uDAAuD;IACvD,iBAAiB,EAAE,MAAM,CAAC;IAC1B,sDAAsD;IACtD,gBAAgB,EAAE,MAAM,CAAC;IACzB,iDAAiD;IACjD,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,kCAAkC;IAClC,KAAK,EAAE,MAAM,CAAC;IACd,8BAA8B;IAC9B,KAAK,EAAE,OAAO,EAAE,CAAC;CAClB;AAED;;;;;GAKG;AACH,qBAAa,SAAS;IACR,OAAO,CAAC,QAAQ,CAAC,GAAG;gBAAH,GAAG,EAAE,SAAS;IAE3C;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,WAAW,CAAC;IAIvC;;;OAGG;IACG,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;CAG/C"}
|
package/dist/cct.js
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.CctClient = void 0;
|
|
4
|
+
/**
|
|
5
|
+
* Client for the TNZO CCT (Chainlink Cross-Chain Token) pool registry.
|
|
6
|
+
*
|
|
7
|
+
* Ethereum uses a LockRelease pool; Base, Arbitrum, Optimism, and Solana
|
|
8
|
+
* use BurnMint pools.
|
|
9
|
+
*/
|
|
10
|
+
class CctClient {
|
|
11
|
+
rpc;
|
|
12
|
+
constructor(rpc) {
|
|
13
|
+
this.rpc = rpc;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* List all registered TNZO CCT pools.
|
|
17
|
+
*/
|
|
18
|
+
async listPools() {
|
|
19
|
+
return this.rpc.call('tenzro_cctListPools', [{}]);
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Get a single TNZO CCT pool by chain name
|
|
23
|
+
* (e.g. `ethereum`, `base`, `arbitrum`, `optimism`, `solana`).
|
|
24
|
+
*/
|
|
25
|
+
async getPool(chain) {
|
|
26
|
+
return this.rpc.call('tenzro_cctGetPool', [{ chain }]);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
exports.CctClient = CctClient;
|
|
30
|
+
//# sourceMappingURL=cct.js.map
|
package/dist/cct.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cct.js","sourceRoot":"","sources":["../src/cct.ts"],"names":[],"mappings":";;;AAoCA;;;;;GAKG;AACH,MAAa,SAAS;IACS;IAA7B,YAA6B,GAAc;QAAd,QAAG,GAAH,GAAG,CAAW;IAAG,CAAC;IAE/C;;OAEG;IACH,KAAK,CAAC,SAAS;QACb,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAc,qBAAqB,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC;IACjE,CAAC;IAED;;;OAGG;IACH,KAAK,CAAC,OAAO,CAAC,KAAa;QACzB,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAU,mBAAmB,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC;IAClE,CAAC;CACF;AAjBD,8BAiBC"}
|
package/dist/client.d.ts
CHANGED
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { TenzroConfig } from "./config";
|
|
2
|
+
import { RpcTransport } from "./rpc";
|
|
2
3
|
import { WalletClient } from "./wallet";
|
|
3
4
|
import { InferenceClient } from "./inference";
|
|
5
|
+
import { CortexClient } from "./cortex";
|
|
4
6
|
import { SettlementClient } from "./settlement";
|
|
5
7
|
import { AgentClient } from "./agent";
|
|
6
8
|
import { GovernanceClient } from "./governance";
|
|
@@ -25,19 +27,41 @@ import { BridgeClient } from "./bridge";
|
|
|
25
27
|
import { AgentPaymentClient } from "./agent-payments";
|
|
26
28
|
import { CircuitBreakerClient } from "./circuit-breaker";
|
|
27
29
|
import { NanopaymentClient } from "./nanopayment";
|
|
30
|
+
import { Eip7702Client } from "./eip7702";
|
|
31
|
+
import { Erc7683Client } from "./erc7683";
|
|
28
32
|
import { Erc7802Client } from "./erc7802";
|
|
33
|
+
import { Erc8004Client } from "./erc8004";
|
|
34
|
+
import { WormholeClient } from "./wormhole";
|
|
35
|
+
import { IrohClient } from "./iroh";
|
|
36
|
+
import { CctClient } from "./cct";
|
|
29
37
|
import { NftClient } from "./nft";
|
|
30
38
|
import { ComplianceClient } from "./compliance";
|
|
31
39
|
import { EventsClient } from "./events";
|
|
32
40
|
import { DebridgeClient } from "./debridge";
|
|
33
|
-
import {
|
|
41
|
+
import { AuthClient } from "./auth";
|
|
42
|
+
import { BondClient } from "./bond";
|
|
43
|
+
import { InsuranceClient } from "./insurance";
|
|
44
|
+
import { AdaptiveBurnClient } from "./adaptive-burn";
|
|
45
|
+
import { SeedAgentClient } from "./seed-agent";
|
|
46
|
+
import { QuotaClient } from "./quota";
|
|
47
|
+
import { PrincipalChainClient } from "./principal-chain";
|
|
48
|
+
import { LifecycleClient } from "./lifecycle";
|
|
49
|
+
import { MultimodalClient } from "./multimodal";
|
|
50
|
+
import { MemoryClient } from "./memory";
|
|
51
|
+
import { ValidatorClient } from "./validator";
|
|
52
|
+
import { TrainingInspectionClient } from "./training";
|
|
53
|
+
import { SlaClient } from "./sla";
|
|
54
|
+
import { SnapshotClient } from "./snapshot";
|
|
55
|
+
import { Block, BlockRange, FeeHistory, Transaction, NodeStatus, FaucetResponse, HealthResponse } from "./types";
|
|
34
56
|
/**
|
|
35
57
|
* Main client for interacting with Tenzro Network.
|
|
36
58
|
* Provides access to all network functionality through specialized sub-clients.
|
|
37
59
|
*/
|
|
38
60
|
export declare class TenzroClient {
|
|
61
|
+
readonly auth: AuthClient;
|
|
39
62
|
readonly wallet: WalletClient;
|
|
40
63
|
readonly inference: InferenceClient;
|
|
64
|
+
readonly cortex: CortexClient;
|
|
41
65
|
readonly settlement: SettlementClient;
|
|
42
66
|
readonly agent: AgentClient;
|
|
43
67
|
readonly governance: GovernanceClient;
|
|
@@ -57,7 +81,7 @@ export declare class TenzroClient {
|
|
|
57
81
|
readonly streaming: StreamingClient;
|
|
58
82
|
private readonly rpc;
|
|
59
83
|
private readonly config;
|
|
60
|
-
constructor(config: TenzroConfig);
|
|
84
|
+
constructor(config: TenzroConfig, transport?: RpcTransport);
|
|
61
85
|
task(): TaskClient;
|
|
62
86
|
marketplace(): MarketplaceClient;
|
|
63
87
|
/** Access the AP2 (Agentic Payment Protocol) client. */
|
|
@@ -70,8 +94,41 @@ export declare class TenzroClient {
|
|
|
70
94
|
circuitBreaker(): CircuitBreakerClient;
|
|
71
95
|
/** Access the nanopayment channel client. */
|
|
72
96
|
nanopayment(): NanopaymentClient;
|
|
97
|
+
/**
|
|
98
|
+
* Access the ERC-7683 cross-chain intent settler client.
|
|
99
|
+
*
|
|
100
|
+
* Read RPCs on the origin side (`get_order` / `list_orders` over
|
|
101
|
+
* `7683_origin:` keyspace) plus destination-side fill recording
|
|
102
|
+
* (`record_fill` / `get_fill` / `list_fills` over `7683_dest:`).
|
|
103
|
+
* Order state machine: Open → AwaitingProof → Settled / Refunded /
|
|
104
|
+
* ForceRefundEligible.
|
|
105
|
+
*/
|
|
106
|
+
erc7683(): Erc7683Client;
|
|
107
|
+
/**
|
|
108
|
+
* Access the EIP-7702 (Set EOA Account Code) helper client. Wraps
|
|
109
|
+
* `tenzro_eip7702SigningHash`, `tenzro_eip7702BuildDesignator`,
|
|
110
|
+
* `tenzro_eip7702ParseDesignator`, and `tenzro_eip7702ProtocolInfo`.
|
|
111
|
+
* These are stateless helpers — the EOA's secp256k1 signature and
|
|
112
|
+
* the on-chain installation of the designator are performed out of
|
|
113
|
+
* band by the caller.
|
|
114
|
+
*/
|
|
115
|
+
eip7702(): Eip7702Client;
|
|
73
116
|
/** Access the ERC-7802 cross-chain token client. */
|
|
74
117
|
erc7802(): Erc7802Client;
|
|
118
|
+
/** Access the ERC-8004 Trustless Agents Registry client. */
|
|
119
|
+
erc8004(): Erc8004Client;
|
|
120
|
+
/** Access the Wormhole cross-chain client. */
|
|
121
|
+
wormhole(): WormholeClient;
|
|
122
|
+
/**
|
|
123
|
+
* Access the Iroh consumer surface client for the `tenzro_iroh_*`
|
|
124
|
+
* namespace — endpoint id / ALPNs / publish / fetch over the shared
|
|
125
|
+
* `IrohBackedResolver` (QUIC + Pkarr + iroh-blobs substrate that
|
|
126
|
+
* also backs DA, training gradients, sealed shards, model fetch,
|
|
127
|
+
* agent memory archive, and A2A-over-iroh).
|
|
128
|
+
*/
|
|
129
|
+
iroh(): IrohClient;
|
|
130
|
+
/** Access the TNZO CCT (Chainlink Cross-Chain Token) pool registry client. */
|
|
131
|
+
cct(): CctClient;
|
|
75
132
|
/** Access the NFT client. */
|
|
76
133
|
nft(): NftClient;
|
|
77
134
|
/** Access the compliance client. */
|
|
@@ -80,22 +137,178 @@ export declare class TenzroClient {
|
|
|
80
137
|
events(): EventsClient;
|
|
81
138
|
/** Access the deBridge cross-chain client. */
|
|
82
139
|
debridge(): DebridgeClient;
|
|
140
|
+
/** Access the AgentBond client (Spec 9). */
|
|
141
|
+
bond(): BondClient;
|
|
142
|
+
/** Access the AgentBond insurance client (Spec 9). */
|
|
143
|
+
insurance(): InsuranceClient;
|
|
144
|
+
/** Access the adaptive-burn governance dial client. */
|
|
145
|
+
adaptiveBurn(): AdaptiveBurnClient;
|
|
146
|
+
/** Access the SeedAgent treasury / charter / registry client (Spec 10). */
|
|
147
|
+
seedAgent(): SeedAgentClient;
|
|
148
|
+
/** Access the node quota / mempool / DA client (Spec 3, 6). */
|
|
149
|
+
quota(): QuotaClient;
|
|
150
|
+
/** Access the receipt principal-chain client (Spec 5). */
|
|
151
|
+
principalChain(): PrincipalChainClient;
|
|
152
|
+
/** Access the agent lifecycle / kill-switch client. */
|
|
153
|
+
lifecycle(): LifecycleClient;
|
|
154
|
+
/**
|
|
155
|
+
* Access the multi-modal AI client — forecast (timeseries), vision
|
|
156
|
+
* encoders, text embeddings, segmentation, detection, audio (ASR),
|
|
157
|
+
* and video. Each modality exposes catalog browse, list-loaded,
|
|
158
|
+
* load, unload, and one inference verb.
|
|
159
|
+
*
|
|
160
|
+
* Four of the seven `load*Model` paths are wave-1 stubs that return
|
|
161
|
+
* JSON-RPC `-32004` from the node — see `MultimodalClient` rustdoc.
|
|
162
|
+
*/
|
|
163
|
+
multimodal(): MultimodalClient;
|
|
164
|
+
/**
|
|
165
|
+
* Access the per-agent memory tier client — Lance vector kNN +
|
|
166
|
+
* Tantivy BM25 with Reciprocal Rank Fusion at k=60 for hybrid
|
|
167
|
+
* search, with DA-backed archival.
|
|
168
|
+
*/
|
|
169
|
+
memory(): MemoryClient;
|
|
170
|
+
/**
|
|
171
|
+
* Access the validator registry read client — `getValidatorState` /
|
|
172
|
+
* `listValidators` / `listActiveValidators`. Read-only; validators
|
|
173
|
+
* self-register via the staking transaction path.
|
|
174
|
+
*/
|
|
175
|
+
validators(): ValidatorClient;
|
|
176
|
+
/**
|
|
177
|
+
* Access the Tenzro Train read-side inspection client — list runs,
|
|
178
|
+
* fetch a single run by task_id, fetch a sealed receipt, and fetch
|
|
179
|
+
* the installed Confidential-tier sealed-shard manifest. Safe to
|
|
180
|
+
* expose to monitoring agents — no write surface.
|
|
181
|
+
*/
|
|
182
|
+
trainingInspection(): TrainingInspectionClient;
|
|
183
|
+
/**
|
|
184
|
+
* Access the validator-side SLA fault-detector inspection client.
|
|
185
|
+
* Wraps `tenzro_slaIssueProbe`, `tenzro_slaListOutstandingProbes`,
|
|
186
|
+
* and `tenzro_slaGetParams`. The probe-issuing call is
|
|
187
|
+
* validator-only; on a non-validator node it returns
|
|
188
|
+
* `-32000 SlaManager not initialized`.
|
|
189
|
+
*/
|
|
190
|
+
sla(): SlaClient;
|
|
191
|
+
/**
|
|
192
|
+
* State-sync snapshot client. Wraps `tenzro_listSnapshots`,
|
|
193
|
+
* `tenzro_getSnapshotManifest`, `tenzro_getSnapshotChunk`,
|
|
194
|
+
* `tenzro_offerSnapshot`, and `tenzro_applySnapshotChunk`. Callers
|
|
195
|
+
* MUST verify a manifest's `state_root_hex` against a trusted QC at
|
|
196
|
+
* the same height before calling `offerSnapshot` / `applySnapshotChunk`.
|
|
197
|
+
*/
|
|
198
|
+
snapshot(): SnapshotClient;
|
|
83
199
|
static mainnet(): TenzroClient;
|
|
84
200
|
static testnet(): TenzroClient;
|
|
85
201
|
static local(): TenzroClient;
|
|
202
|
+
/**
|
|
203
|
+
* Construct a client that routes RPCs through a browser-extension
|
|
204
|
+
* provider (`window.tenzro`) discovered via EIP-6963.
|
|
205
|
+
*
|
|
206
|
+
* The Tenzro provider handles auth (DPoP-bound JWT) and CAIP-25
|
|
207
|
+
* sessions on its own — the SDK never sees the user's keys or tokens
|
|
208
|
+
* and never opens a direct fetch to `rpc.tenzro.network`. All
|
|
209
|
+
* `client.rpc.call(...)` calls become `provider.request(...)` calls.
|
|
210
|
+
*
|
|
211
|
+
* Defaults to the mainnet config for `endpoint` / `apiEndpoint` so
|
|
212
|
+
* REST surfaces (`api.tenzro.network`) still work for direct fetches
|
|
213
|
+
* (e.g., `/health`, `/faucet`). Override via `options.config` when
|
|
214
|
+
* targeting testnet or a local node.
|
|
215
|
+
*
|
|
216
|
+
* Throws if no Tenzro provider is announced within `timeoutMs`
|
|
217
|
+
* (default 3000) — wrap the call in a try/catch and render an
|
|
218
|
+
* "Install Tenzro" CTA on `TenzroNotInstalledError`.
|
|
219
|
+
*
|
|
220
|
+
* @example
|
|
221
|
+
* ```ts
|
|
222
|
+
* try {
|
|
223
|
+
* const client = await TenzroClient.fromInjected();
|
|
224
|
+
* const block = await client.getLatestBlock();
|
|
225
|
+
* } catch (err) {
|
|
226
|
+
* if (err instanceof TenzroNotInstalledError) showInstallCta();
|
|
227
|
+
* else throw err;
|
|
228
|
+
* }
|
|
229
|
+
* ```
|
|
230
|
+
*/
|
|
231
|
+
static fromInjected(options?: {
|
|
232
|
+
config?: TenzroConfig;
|
|
233
|
+
timeoutMs?: number;
|
|
234
|
+
rdns?: string;
|
|
235
|
+
}): Promise<TenzroClient>;
|
|
86
236
|
getBlockNumber(): Promise<number>;
|
|
87
237
|
getBlock(height: number): Promise<Block>;
|
|
88
238
|
getLatestBlock(): Promise<Block>;
|
|
239
|
+
/**
|
|
240
|
+
* Fetch a contiguous range of blocks for catch-up sync.
|
|
241
|
+
*
|
|
242
|
+
* Returns up to `maxResults` blocks (default 64, capped at 256). Use
|
|
243
|
+
* `nextHeight` and `moreAvailable` to drive pagination. `moreAvailable`
|
|
244
|
+
* reflects whether the chain has further blocks beyond `nextHeight`,
|
|
245
|
+
* independent of the requested `endHeight`, so a sync loop can step over
|
|
246
|
+
* pruning gaps:
|
|
247
|
+
*
|
|
248
|
+
* ```ts
|
|
249
|
+
* let cur = 0;
|
|
250
|
+
* while (true) {
|
|
251
|
+
* const r = await client.getBlockRange(cur, cur + 255, 256);
|
|
252
|
+
* for (const b of r.blocks) { /* ... *\/ }
|
|
253
|
+
* if (!r.moreAvailable) break;
|
|
254
|
+
* cur = r.nextHeight;
|
|
255
|
+
* }
|
|
256
|
+
* ```
|
|
257
|
+
*/
|
|
258
|
+
getBlockRange(startHeight: number, endHeight: number, maxResults?: number): Promise<BlockRange>;
|
|
259
|
+
/**
|
|
260
|
+
* Get a transaction by hash.
|
|
261
|
+
*
|
|
262
|
+
* Resolves from finalized storage first, then falls back to the consensus
|
|
263
|
+
* mempool. The returned object's `status` field is `"pending"` while the
|
|
264
|
+
* transaction is in-mempool and `"finalized"` once it has been included in
|
|
265
|
+
* a block — callers polling immediately after broadcast can therefore
|
|
266
|
+
* distinguish "not yet finalized" from "unknown hash" (the RPC returns
|
|
267
|
+
* `null` only when the hash is unknown to both storage and mempool).
|
|
268
|
+
*/
|
|
89
269
|
getTransaction(txHash: string): Promise<Transaction | null>;
|
|
90
270
|
getBalance(address: string): Promise<bigint>;
|
|
91
271
|
getNonce(address: string): Promise<number>;
|
|
92
272
|
getChainId(): Promise<number>;
|
|
273
|
+
/**
|
|
274
|
+
* Returns the current effective gas price in wei (base fee + suggested
|
|
275
|
+
* priority tip). Tracks the EIP-1559 fee market — the value adjusts ±12.5%
|
|
276
|
+
* per block based on parent gas usage vs. the 15M target.
|
|
277
|
+
*/
|
|
278
|
+
getGasPrice(): Promise<bigint>;
|
|
279
|
+
/**
|
|
280
|
+
* Returns a suggested EIP-1559 priority fee (tip) in wei. Use this to fill
|
|
281
|
+
* `maxPriorityFeePerGas` on a Type-2 transaction; derive the base-fee
|
|
282
|
+
* portion from `getFeeHistory()` or the parent block's `baseFeePerGas`.
|
|
283
|
+
*/
|
|
284
|
+
getMaxPriorityFeePerGas(): Promise<bigint>;
|
|
285
|
+
/**
|
|
286
|
+
* Returns base-fee history and gas-usage ratios for the last `blockCount`
|
|
287
|
+
* blocks. `newestBlock` is a hex height or `"latest"`. `rewardPercentiles`
|
|
288
|
+
* requests per-block tip percentiles (e.g. `[25, 50, 75]`); pass `undefined`
|
|
289
|
+
* to omit. `baseFeePerGas` returns `blockCount + 1` entries — the trailing
|
|
290
|
+
* entry is the predicted base fee for the next block. Used by wallets to
|
|
291
|
+
* model `maxFeePerGas` and `maxPriorityFeePerGas`.
|
|
292
|
+
*/
|
|
293
|
+
getFeeHistory(blockCount: number, newestBlock?: string, rewardPercentiles?: number[]): Promise<FeeHistory>;
|
|
294
|
+
/**
|
|
295
|
+
* Sign and send a TNZO transfer atomically via the node's hybrid-signing
|
|
296
|
+
* path (`tenzro_signAndSendTransaction`).
|
|
297
|
+
*
|
|
298
|
+
* The node identifies the signing wallet from the ambient auth context
|
|
299
|
+
* (DPoP-bound bearer JWT), constructs the canonical `Transaction::hash()`
|
|
300
|
+
* preimage including the PQ public key, signs both the Ed25519 and
|
|
301
|
+
* ML-DSA-65 legs, verifies them, and submits atomically. Private keys
|
|
302
|
+
* never travel over the wire.
|
|
303
|
+
*/
|
|
93
304
|
sendTransaction(params: {
|
|
94
305
|
from: string;
|
|
95
306
|
to: string;
|
|
96
307
|
value: bigint;
|
|
97
308
|
gas_limit?: number;
|
|
98
309
|
gas_price?: number;
|
|
310
|
+
nonce?: number;
|
|
311
|
+
chain_id?: number;
|
|
99
312
|
}): Promise<string>;
|
|
100
313
|
nodeInfo(): Promise<NodeStatus>;
|
|
101
314
|
getStatus(): Promise<NodeStatus>;
|
package/dist/client.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|