@tangle-network/tcloud 0.1.4 → 0.2.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/README.md +69 -10
- package/dist/chunk-HL4CXKET.js +976 -0
- package/dist/{chunk-PILYAKCF.js → chunk-STNZT6YR.js} +4 -2
- package/dist/chunk-VD4RNZOC.js +263 -0
- package/dist/cli.cjs +616 -153
- package/dist/cli.js +3 -2
- package/dist/{shielded-BTi_OftW.d.cts → client-CcuHG7_w.d.cts} +275 -60
- package/dist/{shielded-BTi_OftW.d.ts → client-CcuHG7_w.d.ts} +275 -60
- package/dist/index.cjs +618 -153
- package/dist/index.d.cts +4 -2
- package/dist/index.d.ts +4 -2
- package/dist/index.js +8 -4
- package/dist/instance.cjs +1235 -0
- package/dist/instance.d.cts +110 -0
- package/dist/instance.d.ts +110 -0
- package/dist/instance.js +229 -0
- package/dist/shielded.cjs +616 -153
- package/dist/shielded.d.cts +61 -2
- package/dist/shielded.d.ts +61 -2
- package/dist/shielded.js +2 -1
- package/package.json +14 -2
- package/dist/chunk-KVXWEAK3.js +0 -771
package/dist/shielded.d.cts
CHANGED
|
@@ -1,2 +1,61 @@
|
|
|
1
|
-
import 'viem';
|
|
2
|
-
|
|
1
|
+
import { Hex } from 'viem';
|
|
2
|
+
import { a as TCloudConfig, T as TCloudClient, w as SpendAuth } from './client-CcuHG7_w.cjs';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* tcloud/shielded — Ephemeral wallet generation, SpendAuth signing, private inference.
|
|
6
|
+
*
|
|
7
|
+
* import { TCloud } from 'tcloud'
|
|
8
|
+
* const client = TCloud.shielded() // anonymous, no API key
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
interface ShieldedWallet {
|
|
12
|
+
/** Ephemeral spending private key (hex) */
|
|
13
|
+
privateKey: Hex;
|
|
14
|
+
/** Derived address */
|
|
15
|
+
address: string;
|
|
16
|
+
/** Credit account commitment */
|
|
17
|
+
commitment: Hex;
|
|
18
|
+
/** Random salt */
|
|
19
|
+
salt: Hex;
|
|
20
|
+
}
|
|
21
|
+
/** Generate a new ephemeral shielded wallet */
|
|
22
|
+
declare function generateWallet(): ShieldedWallet;
|
|
23
|
+
/** Sign a SpendAuth for a request */
|
|
24
|
+
declare function signSpendAuth(wallet: ShieldedWallet, params: {
|
|
25
|
+
serviceId: bigint;
|
|
26
|
+
jobIndex: number;
|
|
27
|
+
amount: bigint;
|
|
28
|
+
operator: Hex;
|
|
29
|
+
nonce: bigint;
|
|
30
|
+
expiry: bigint;
|
|
31
|
+
chainId: number;
|
|
32
|
+
creditsAddress: Hex;
|
|
33
|
+
}): Promise<SpendAuth>;
|
|
34
|
+
/** Estimate cost in tsUSD base units (6 decimals) */
|
|
35
|
+
declare function estimateCost(inputTokens: number, maxOutputTokens: number, inputPricePerM?: number, outputPricePerM?: number): bigint;
|
|
36
|
+
interface AutoReplenishOptions {
|
|
37
|
+
minBalance: bigint;
|
|
38
|
+
replenishAmount: bigint;
|
|
39
|
+
checkIntervalMs?: number;
|
|
40
|
+
fundingSource: 'relayer' | 'direct';
|
|
41
|
+
relayerUrl?: string;
|
|
42
|
+
fundingWalletKey?: Hex;
|
|
43
|
+
tokenAddress?: Hex;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Create a shielded TCloudClient that signs SpendAuth automatically.
|
|
47
|
+
* Every request is anonymous — no API key, no identity.
|
|
48
|
+
*/
|
|
49
|
+
declare function createShieldedClient(config?: TCloudConfig & {
|
|
50
|
+
wallet?: ShieldedWallet;
|
|
51
|
+
operatorAddress?: Hex;
|
|
52
|
+
chainId?: number;
|
|
53
|
+
creditsAddress?: Hex;
|
|
54
|
+
serviceId?: bigint;
|
|
55
|
+
autoReplenish?: AutoReplenishOptions;
|
|
56
|
+
}): TCloudClient & {
|
|
57
|
+
wallet: ShieldedWallet;
|
|
58
|
+
stopAutoReplenish: () => void;
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
export { type AutoReplenishOptions, type ShieldedWallet, SpendAuth, createShieldedClient, estimateCost, generateWallet, signSpendAuth };
|
package/dist/shielded.d.ts
CHANGED
|
@@ -1,2 +1,61 @@
|
|
|
1
|
-
import 'viem';
|
|
2
|
-
|
|
1
|
+
import { Hex } from 'viem';
|
|
2
|
+
import { a as TCloudConfig, T as TCloudClient, w as SpendAuth } from './client-CcuHG7_w.js';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* tcloud/shielded — Ephemeral wallet generation, SpendAuth signing, private inference.
|
|
6
|
+
*
|
|
7
|
+
* import { TCloud } from 'tcloud'
|
|
8
|
+
* const client = TCloud.shielded() // anonymous, no API key
|
|
9
|
+
*/
|
|
10
|
+
|
|
11
|
+
interface ShieldedWallet {
|
|
12
|
+
/** Ephemeral spending private key (hex) */
|
|
13
|
+
privateKey: Hex;
|
|
14
|
+
/** Derived address */
|
|
15
|
+
address: string;
|
|
16
|
+
/** Credit account commitment */
|
|
17
|
+
commitment: Hex;
|
|
18
|
+
/** Random salt */
|
|
19
|
+
salt: Hex;
|
|
20
|
+
}
|
|
21
|
+
/** Generate a new ephemeral shielded wallet */
|
|
22
|
+
declare function generateWallet(): ShieldedWallet;
|
|
23
|
+
/** Sign a SpendAuth for a request */
|
|
24
|
+
declare function signSpendAuth(wallet: ShieldedWallet, params: {
|
|
25
|
+
serviceId: bigint;
|
|
26
|
+
jobIndex: number;
|
|
27
|
+
amount: bigint;
|
|
28
|
+
operator: Hex;
|
|
29
|
+
nonce: bigint;
|
|
30
|
+
expiry: bigint;
|
|
31
|
+
chainId: number;
|
|
32
|
+
creditsAddress: Hex;
|
|
33
|
+
}): Promise<SpendAuth>;
|
|
34
|
+
/** Estimate cost in tsUSD base units (6 decimals) */
|
|
35
|
+
declare function estimateCost(inputTokens: number, maxOutputTokens: number, inputPricePerM?: number, outputPricePerM?: number): bigint;
|
|
36
|
+
interface AutoReplenishOptions {
|
|
37
|
+
minBalance: bigint;
|
|
38
|
+
replenishAmount: bigint;
|
|
39
|
+
checkIntervalMs?: number;
|
|
40
|
+
fundingSource: 'relayer' | 'direct';
|
|
41
|
+
relayerUrl?: string;
|
|
42
|
+
fundingWalletKey?: Hex;
|
|
43
|
+
tokenAddress?: Hex;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Create a shielded TCloudClient that signs SpendAuth automatically.
|
|
47
|
+
* Every request is anonymous — no API key, no identity.
|
|
48
|
+
*/
|
|
49
|
+
declare function createShieldedClient(config?: TCloudConfig & {
|
|
50
|
+
wallet?: ShieldedWallet;
|
|
51
|
+
operatorAddress?: Hex;
|
|
52
|
+
chainId?: number;
|
|
53
|
+
creditsAddress?: Hex;
|
|
54
|
+
serviceId?: bigint;
|
|
55
|
+
autoReplenish?: AutoReplenishOptions;
|
|
56
|
+
}): TCloudClient & {
|
|
57
|
+
wallet: ShieldedWallet;
|
|
58
|
+
stopAutoReplenish: () => void;
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
export { type AutoReplenishOptions, type ShieldedWallet, SpendAuth, createShieldedClient, estimateCost, generateWallet, signSpendAuth };
|
package/dist/shielded.js
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@tangle-network/tcloud",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"description": "TypeScript SDK and CLI for Tangle AI Cloud — decentralized LLM inference",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "./dist/index.cjs",
|
|
@@ -29,10 +29,22 @@
|
|
|
29
29
|
"types": "./dist/shielded.d.cts",
|
|
30
30
|
"default": "./dist/shielded.cjs"
|
|
31
31
|
}
|
|
32
|
+
},
|
|
33
|
+
"./instance": {
|
|
34
|
+
"node": {
|
|
35
|
+
"import": {
|
|
36
|
+
"types": "./dist/instance.d.ts",
|
|
37
|
+
"default": "./dist/instance.js"
|
|
38
|
+
},
|
|
39
|
+
"require": {
|
|
40
|
+
"types": "./dist/instance.d.cts",
|
|
41
|
+
"default": "./dist/instance.cjs"
|
|
42
|
+
}
|
|
43
|
+
}
|
|
32
44
|
}
|
|
33
45
|
},
|
|
34
46
|
"scripts": {
|
|
35
|
-
"build": "tsup src/index.ts src/cli.ts src/shielded.ts --format esm,cjs --dts --clean --external socks-proxy-agent",
|
|
47
|
+
"build": "tsup src/index.ts src/cli.ts src/shielded.ts src/instance.ts --format esm,cjs --dts --clean --external socks-proxy-agent",
|
|
36
48
|
"docs": "typedoc src/index.ts --out docs --name tcloud --readme README.md",
|
|
37
49
|
"test": "vitest run",
|
|
38
50
|
"dev": "tsx src/cli.ts",
|