@moltos/sdk 0.5.0 → 0.5.1

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 (70) hide show
  1. package/dist/index.d.ts +12 -144
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +26 -243
  4. package/dist/index.js.map +1 -1
  5. package/dist/lib/api.d.ts +32 -0
  6. package/dist/lib/api.d.ts.map +1 -0
  7. package/dist/lib/api.js +80 -0
  8. package/dist/lib/api.js.map +1 -0
  9. package/dist/lib/arbitra.d.ts +302 -0
  10. package/dist/lib/arbitra.d.ts.map +1 -0
  11. package/dist/lib/arbitra.js +486 -0
  12. package/dist/lib/arbitra.js.map +1 -0
  13. package/dist/lib/clawfs.d.ts +277 -0
  14. package/dist/lib/clawfs.d.ts.map +1 -0
  15. package/dist/lib/clawfs.js +628 -0
  16. package/dist/lib/clawfs.js.map +1 -0
  17. package/dist/lib/clawid.d.ts +189 -0
  18. package/dist/lib/clawid.d.ts.map +1 -0
  19. package/dist/lib/clawid.js +455 -0
  20. package/dist/lib/clawid.js.map +1 -0
  21. package/dist/lib/config.d.ts +23 -0
  22. package/dist/lib/config.d.ts.map +1 -0
  23. package/dist/lib/config.js +29 -0
  24. package/dist/lib/config.js.map +1 -0
  25. package/dist/lib/tap.d.ts +208 -0
  26. package/dist/lib/tap.d.ts.map +1 -0
  27. package/dist/lib/tap.js +549 -0
  28. package/dist/lib/tap.js.map +1 -0
  29. package/package.json +6 -2
  30. package/README.md +0 -67
  31. package/dist/arbitra.d.ts +0 -3
  32. package/dist/arbitra.d.ts.map +0 -1
  33. package/dist/arbitra.js +0 -198
  34. package/dist/arbitra.js.map +0 -1
  35. package/dist/attack-sim.d.ts +0 -3
  36. package/dist/attack-sim.d.ts.map +0 -1
  37. package/dist/attack-sim.js +0 -101
  38. package/dist/attack-sim.js.map +0 -1
  39. package/dist/cli.d.ts +0 -3
  40. package/dist/cli.d.ts.map +0 -1
  41. package/dist/cli.js +0 -379
  42. package/dist/cli.js.map +0 -1
  43. package/dist/protocols/arbitra/voting.d.ts +0 -43
  44. package/dist/protocols/arbitra/voting.d.ts.map +0 -1
  45. package/dist/protocols/arbitra/voting.js +0 -42
  46. package/dist/protocols/arbitra/voting.js.map +0 -1
  47. package/dist/protocols/clawforge/control-plane.d.ts +0 -4
  48. package/dist/protocols/clawforge/control-plane.d.ts.map +0 -1
  49. package/dist/protocols/clawforge/control-plane.js +0 -11
  50. package/dist/protocols/clawforge/control-plane.js.map +0 -1
  51. package/dist/protocols/clawid/clawid-token.d.ts +0 -9
  52. package/dist/protocols/clawid/clawid-token.d.ts.map +0 -1
  53. package/dist/protocols/clawid/clawid-token.js +0 -20
  54. package/dist/protocols/clawid/clawid-token.js.map +0 -1
  55. package/dist/protocols/clawkernel/kernel.d.ts +0 -4
  56. package/dist/protocols/clawkernel/kernel.d.ts.map +0 -1
  57. package/dist/protocols/clawkernel/kernel.js +0 -11
  58. package/dist/protocols/clawkernel/kernel.js.map +0 -1
  59. package/dist/protocols/clawlink/handoff.d.ts +0 -64
  60. package/dist/protocols/clawlink/handoff.d.ts.map +0 -1
  61. package/dist/protocols/clawlink/handoff.js +0 -31
  62. package/dist/protocols/clawlink/handoff.js.map +0 -1
  63. package/dist/types.d.ts +0 -65
  64. package/dist/types.d.ts.map +0 -1
  65. package/dist/types.js +0 -27
  66. package/dist/types.js.map +0 -1
  67. package/dist/vm.d.ts +0 -3
  68. package/dist/vm.d.ts.map +0 -1
  69. package/dist/vm.js +0 -173
  70. package/dist/vm.js.map +0 -1
package/dist/index.d.ts CHANGED
@@ -1,149 +1,17 @@
1
1
  /**
2
- * TAP Protocol SDK
2
+ * MoltOS SDK - The Complete Agent Operating System
3
3
  *
4
- * Official SDK for Trust Audit Protocol integration
5
- * Enables agents to perform cross-attestation, manage claims,
6
- * and participate in the verified agent economy.
4
+ * This is the official SDK for MoltOS the production-grade Agent Operating System
5
+ * with persistent agents, real trust, self-healing swarms, and hardware isolation.
7
6
  *
8
- * @example
9
- * ```typescript
10
- * import { TAPClient } from '@tap-protocol/sdk';
11
- *
12
- * const client = new TAPClient({
13
- * privateKey: process.env.TAP_PRIVATE_KEY,
14
- * agentId: 'agent-007'
15
- * });
16
- *
17
- * // Perform attestation
18
- * const result = await client.attest({
19
- * claimId: 'claim-123',
20
- * targetAgent: 'agent-042'
21
- * });
22
- * ```
23
- */
24
- export interface TAPConfig {
25
- privateKey: string;
26
- agentId: string;
27
- apiUrl?: string;
28
- stakeAmount?: number;
29
- }
30
- export interface AttestationClaim {
31
- claimId: string;
32
- statement: string;
33
- metric: 'response_time_ms' | 'uptime_percent' | 'availability' | 'accuracy_percent' | 'custom';
34
- threshold: number;
35
- stakeAmount: number;
36
- }
37
- export interface AttestationResult {
38
- claimId: string;
39
- result: 'CONFIRMED' | 'REJECTED' | 'TIMEOUT';
40
- measuredValue: number;
41
- threshold: number;
42
- timestamp: string;
43
- signature: string;
44
- }
45
- export interface BootAudit {
46
- agentId: string;
47
- timestamp: string;
48
- workspaceHash: string;
49
- configFiles: Record<string, string>;
50
- complianceStatus: 'FULL' | 'PARTIAL' | 'FAILED';
51
- signature: string;
52
- }
53
- export declare class TAPClient {
54
- privateKey: Uint8Array;
55
- publicKey: Uint8Array;
56
- agentId: string;
57
- apiUrl: string;
58
- private stakeAmount;
59
- constructor(config: TAPConfig);
60
- /**
61
- * Generate a boot audit hash for workspace verification
62
- */
63
- generateBootAudit(configFiles: Record<string, string>): Promise<BootAudit>;
64
- /**
65
- * Create a claim for the Trust Ledger
66
- */
67
- createClaim(claim: Omit<AttestationClaim, 'stakeAmount'>): Promise<AttestationClaim>;
68
- /**
69
- * Perform attestation on another agent's claim
70
- */
71
- attest(options: {
72
- claimId: string;
73
- targetAgent: string;
74
- testRequests?: number;
75
- }): Promise<AttestationResult>;
76
- /**
77
- * Batch attest multiple claims with BLS aggregation
78
- */
79
- attestBatch(claims: Array<{
80
- claimId: string;
81
- targetAgent: string;
82
- }>): Promise<{
83
- aggregatedSignature: string;
84
- results: AttestationResult[];
85
- }>;
86
- /**
87
- * Verify another agent's attestation
88
- */
89
- verifyAttestation(attestation: AttestationResult, attestorPublicKey: string): Promise<boolean>;
90
- /**
91
- * Get agent's attestation history
92
- */
93
- getAttestationHistory(agentId?: string): Promise<AttestationResult[]>;
94
- /**
95
- * Get live network stats
96
- */
97
- getNetworkStats(): Promise<{
98
- agents: number;
99
- pairs: number;
100
- alphaDistributed: number;
101
- claimsToday: number;
102
- }>;
103
- }
104
- /**
105
- * OpenClaw Skill Integration
106
- *
107
- * Usage: Drop this into ~/.openclaw/skills/tap/skill.js
108
- */
109
- export declare const tapSkill: {
110
- name: string;
111
- description: string;
112
- execute(input: {
113
- privateKey: string;
114
- agentId: string;
115
- claimId: string;
116
- targetAgent: string;
117
- }): Promise<AttestationResult>;
118
- };
119
- /**
120
- * x402 + TAP Integration
121
- *
122
- * Combines payment settlement with pre-payment verification
7
+ * @module @moltos/sdk
8
+ * @version 0.5.1
123
9
  */
124
- export declare class TAPx402Client extends TAPClient {
125
- /**
126
- * Pay for verified service (TAP attestation + x402 payment)
127
- */
128
- payForVerifiedService(options: {
129
- endpoint: string;
130
- amount: string;
131
- claimId: string;
132
- x402Config: {
133
- token: string;
134
- network: string;
135
- };
136
- }): Promise<{
137
- attestationHash: string;
138
- paymentReceipt: any;
139
- }>;
140
- private resolveAgentFromEndpoint;
141
- private executeX402Payment;
142
- }
143
- export * from './types';
144
- export * from './protocols/arbitra/voting';
145
- export * from './protocols/clawlink/handoff';
146
- export * from './protocols/clawid/clawid-token';
147
- export * from './protocols/clawforge/control-plane';
148
- export * from './protocols/clawkernel/kernel';
10
+ export { ApiClient, ApiConfig, ApiResponse, initApiClient, getApiClient } from './lib/api';
11
+ export { MoltOSConfig, loadConfig, validateConfig } from './lib/config';
12
+ export * from './lib/tap';
13
+ export * from './lib/arbitra';
14
+ export * from './lib/clawid';
15
+ export * from './lib/clawfs';
16
+ export declare const VERSION = "0.5.1";
149
17
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,WAAW,EAAE,aAAa,EAAE,YAAY,EAAE,MAAM,WAAW,CAAC;AAG3F,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAGxE,cAAc,WAAW,CAAC;AAC1B,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,cAAc,CAAC;AAG7B,eAAO,MAAM,OAAO,UAAU,CAAC"}
package/dist/index.js CHANGED
@@ -1,4 +1,13 @@
1
1
  "use strict";
2
+ /**
3
+ * MoltOS SDK - The Complete Agent Operating System
4
+ *
5
+ * This is the official SDK for MoltOS — the production-grade Agent Operating System
6
+ * with persistent agents, real trust, self-healing swarms, and hardware isolation.
7
+ *
8
+ * @module @moltos/sdk
9
+ * @version 0.5.1
10
+ */
2
11
  var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
12
  if (k2 === undefined) k2 = k;
4
13
  var desc = Object.getOwnPropertyDescriptor(m, k);
@@ -14,247 +23,21 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
23
  for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
24
  };
16
25
  Object.defineProperty(exports, "__esModule", { value: true });
17
- exports.TAPx402Client = exports.tapSkill = exports.TAPClient = void 0;
18
- const ed25519_1 = require("@noble/ed25519");
19
- const bls12_381_1 = require("@noble/bls12-381");
20
- const sha256_1 = require("@noble/hashes/sha256");
21
- const utils_1 = require("@noble/hashes/utils");
22
- const sha512_1 = require("@noble/hashes/sha512");
23
- // Fix sha512Sync for @noble/ed25519 v2.x - provide sync wrapper using noble-hashes
24
- // @ts-ignore
25
- ed25519_1.etc.sha512Sync = (...msgs) => (0, sha512_1.sha512)(ed25519_1.etc.concatBytes(...msgs));
26
- class TAPClient {
27
- constructor(config) {
28
- this.privateKey = (0, utils_1.hexToBytes)(config.privateKey);
29
- this.agentId = config.agentId;
30
- this.apiUrl = config.apiUrl || 'https://api.tap.live';
31
- this.stakeAmount = config.stakeAmount || 750;
32
- // Derive public key
33
- this.publicKey = (0, ed25519_1.getPublicKey)(this.privateKey);
34
- }
35
- /**
36
- * Generate a boot audit hash for workspace verification
37
- */
38
- async generateBootAudit(configFiles) {
39
- // Hash each config file
40
- const fileHashes = {};
41
- let combinedHash = '';
42
- for (const [filename, content] of Object.entries(configFiles)) {
43
- const hash = (0, sha256_1.sha256)(new TextEncoder().encode(content));
44
- fileHashes[filename] = 'sha256:' + (0, utils_1.bytesToHex)(hash);
45
- combinedHash += (0, utils_1.bytesToHex)(hash);
46
- }
47
- // Generate workspace hash
48
- const workspaceHash = (0, sha256_1.sha256)(new TextEncoder().encode(combinedHash));
49
- const timestamp = new Date().toISOString();
50
- // Sign the audit
51
- const message = `TAP_BOOT|${this.agentId}|${timestamp}|${(0, utils_1.bytesToHex)(workspaceHash)}`;
52
- const signature = await (0, ed25519_1.sign)(new TextEncoder().encode(message), this.privateKey);
53
- return {
54
- agentId: this.agentId,
55
- timestamp,
56
- workspaceHash: 'sha256:' + (0, utils_1.bytesToHex)(workspaceHash),
57
- configFiles: fileHashes,
58
- complianceStatus: 'FULL',
59
- signature: 'ed25519:' + (0, utils_1.bytesToHex)(signature)
60
- };
61
- }
62
- /**
63
- * Create a claim for the Trust Ledger
64
- */
65
- async createClaim(claim) {
66
- const fullClaim = {
67
- ...claim,
68
- stakeAmount: this.stakeAmount
69
- };
70
- // Sign the claim
71
- const message = `TAP_CLAIM|${claim.claimId}|${claim.statement}|${claim.threshold}|${this.stakeAmount}`;
72
- const signature = await (0, ed25519_1.sign)(new TextEncoder().encode(message), this.privateKey);
73
- // Submit to TAP network
74
- const response = await fetch(`${this.apiUrl}/claims`, {
75
- method: 'POST',
76
- headers: { 'Content-Type': 'application/json' },
77
- body: JSON.stringify({
78
- ...fullClaim,
79
- agentId: this.agentId,
80
- signature: (0, utils_1.bytesToHex)(signature)
81
- })
82
- });
83
- if (!response.ok) {
84
- throw new Error(`Failed to create claim: ${response.statusText}`);
85
- }
86
- return fullClaim;
87
- }
88
- /**
89
- * Perform attestation on another agent's claim
90
- */
91
- async attest(options) {
92
- const { claimId, targetAgent, testRequests = 3 } = options;
93
- // Fetch claim details
94
- const claimResponse = await fetch(`${this.apiUrl}/claims/${claimId}`);
95
- if (!claimResponse.ok) {
96
- throw new Error('Claim not found');
97
- }
98
- const claim = await claimResponse.json();
99
- // Perform verification tests
100
- const measurements = [];
101
- for (let i = 0; i < testRequests; i++) {
102
- const start = Date.now();
103
- // Call target agent's endpoint
104
- const testResponse = await fetch(`${this.apiUrl}/agents/${targetAgent}/test`, {
105
- method: 'POST',
106
- body: JSON.stringify({ claimId })
107
- });
108
- const elapsed = Date.now() - start;
109
- measurements.push(elapsed);
110
- }
111
- // Calculate result
112
- const average = measurements.reduce((a, b) => a + b, 0) / measurements.length;
113
- const result = average <= claim.threshold ? 'CONFIRMED' : 'REJECTED';
114
- // Sign attestation
115
- const timestamp = new Date().toISOString();
116
- const message = `TAP_ATTEST|${claimId}|${result}|${average}|${timestamp}|${this.agentId}`;
117
- const signature = await (0, ed25519_1.sign)(new TextEncoder().encode(message), this.privateKey);
118
- const attestationResult = {
119
- claimId,
120
- result,
121
- measuredValue: average,
122
- threshold: claim.threshold,
123
- timestamp,
124
- signature: (0, utils_1.bytesToHex)(signature)
125
- };
126
- // Submit attestation
127
- await fetch(`${this.apiUrl}/attestations`, {
128
- method: 'POST',
129
- headers: { 'Content-Type': 'application/json' },
130
- body: JSON.stringify({
131
- ...attestationResult,
132
- attestorId: this.agentId,
133
- targetAgent
134
- })
135
- });
136
- return attestationResult;
137
- }
138
- /**
139
- * Batch attest multiple claims with BLS aggregation
140
- */
141
- async attestBatch(claims) {
142
- const results = [];
143
- const signatures = [];
144
- for (const claim of claims) {
145
- const result = await this.attest(claim);
146
- results.push(result);
147
- signatures.push((0, utils_1.hexToBytes)(result.signature));
148
- }
149
- // Aggregate signatures
150
- const aggregated = (0, bls12_381_1.aggregateSignatures)(signatures);
151
- return {
152
- aggregatedSignature: (0, utils_1.bytesToHex)(aggregated),
153
- results
154
- };
155
- }
156
- /**
157
- * Verify another agent's attestation
158
- */
159
- async verifyAttestation(attestation, attestorPublicKey) {
160
- const message = `TAP_ATTEST|${attestation.claimId}|${attestation.result}|${attestation.measuredValue}|${attestation.timestamp}|${attestorPublicKey}`;
161
- return (0, ed25519_1.verify)((0, utils_1.hexToBytes)(attestation.signature), new TextEncoder().encode(message), (0, utils_1.hexToBytes)(attestorPublicKey));
162
- }
163
- /**
164
- * Get agent's attestation history
165
- */
166
- async getAttestationHistory(agentId) {
167
- const targetAgent = agentId || this.agentId;
168
- const response = await fetch(`${this.apiUrl}/agents/${targetAgent}/attestations`);
169
- if (!response.ok) {
170
- throw new Error('Failed to fetch attestation history');
171
- }
172
- return response.json();
173
- }
174
- /**
175
- * Get live network stats
176
- */
177
- async getNetworkStats() {
178
- const response = await fetch(`${this.apiUrl}/stats`);
179
- return response.json();
180
- }
181
- }
182
- exports.TAPClient = TAPClient;
183
- /**
184
- * OpenClaw Skill Integration
185
- *
186
- * Usage: Drop this into ~/.openclaw/skills/tap/skill.js
187
- */
188
- exports.tapSkill = {
189
- name: 'tap_verify',
190
- description: 'Run TAP cross-attestation before x402 payment',
191
- async execute(input) {
192
- const client = new TAPClient({
193
- privateKey: input.privateKey,
194
- agentId: input.agentId
195
- });
196
- return client.attest({
197
- claimId: input.claimId,
198
- targetAgent: input.targetAgent
199
- });
200
- }
201
- };
202
- /**
203
- * x402 + TAP Integration
204
- *
205
- * Combines payment settlement with pre-payment verification
206
- */
207
- class TAPx402Client extends TAPClient {
208
- /**
209
- * Pay for verified service (TAP attestation + x402 payment)
210
- */
211
- async payForVerifiedService(options) {
212
- const { endpoint, amount, claimId, x402Config } = options;
213
- // Step 1: Extract target agent from endpoint
214
- const targetAgent = await this.resolveAgentFromEndpoint(endpoint);
215
- // Step 2: Run TAP attestation
216
- const attestation = await this.attest({
217
- claimId,
218
- targetAgent
219
- });
220
- if (attestation.result !== 'CONFIRMED') {
221
- throw new Error(`Attestation failed: ${attestation.result}`);
222
- }
223
- // Step 3: Include attestation in x402 payment
224
- const attestationHash = (0, sha256_1.sha256)(new TextEncoder().encode(JSON.stringify(attestation)));
225
- // Step 4: Execute x402 payment (placeholder - integrate with actual x402 SDK)
226
- const paymentReceipt = await this.executeX402Payment({
227
- endpoint,
228
- amount,
229
- extensions: {
230
- tapAttestation: (0, utils_1.bytesToHex)(attestationHash),
231
- attestorId: this.agentId
232
- }
233
- });
234
- return {
235
- attestationHash: (0, utils_1.bytesToHex)(attestationHash),
236
- paymentReceipt
237
- };
238
- }
239
- async resolveAgentFromEndpoint(endpoint) {
240
- // Resolve agent ID from service endpoint
241
- const response = await fetch(`${this.apiUrl}/resolve?endpoint=${encodeURIComponent(endpoint)}`);
242
- const data = await response.json();
243
- return data.agentId;
244
- }
245
- async executeX402Payment(options) {
246
- // Integrate with x402 SDK
247
- // This is a placeholder - actual implementation uses @x402/core
248
- return { status: 'completed', txHash: '0x...' };
249
- }
250
- }
251
- exports.TAPx402Client = TAPx402Client;
252
- // Export types
253
- __exportStar(require("./types"), exports);
254
- // Export full 6-layer OS
255
- __exportStar(require("./protocols/arbitra/voting"), exports);
256
- __exportStar(require("./protocols/clawlink/handoff"), exports);
257
- __exportStar(require("./protocols/clawid/clawid-token"), exports);
258
- __exportStar(require("./protocols/clawforge/control-plane"), exports);
259
- __exportStar(require("./protocols/clawkernel/kernel"), exports);
26
+ exports.VERSION = exports.validateConfig = exports.loadConfig = exports.getApiClient = exports.initApiClient = exports.ApiClient = void 0;
27
+ // Core API client
28
+ var api_1 = require("./lib/api");
29
+ Object.defineProperty(exports, "ApiClient", { enumerable: true, get: function () { return api_1.ApiClient; } });
30
+ Object.defineProperty(exports, "initApiClient", { enumerable: true, get: function () { return api_1.initApiClient; } });
31
+ Object.defineProperty(exports, "getApiClient", { enumerable: true, get: function () { return api_1.getApiClient; } });
32
+ // Configuration
33
+ var config_1 = require("./lib/config");
34
+ Object.defineProperty(exports, "loadConfig", { enumerable: true, get: function () { return config_1.loadConfig; } });
35
+ Object.defineProperty(exports, "validateConfig", { enumerable: true, get: function () { return config_1.validateConfig; } });
36
+ // Core MoltOS Systems (will be implemented by sub-agents)
37
+ __exportStar(require("./lib/tap"), exports);
38
+ __exportStar(require("./lib/arbitra"), exports);
39
+ __exportStar(require("./lib/clawid"), exports);
40
+ __exportStar(require("./lib/clawfs"), exports);
41
+ // Version
42
+ exports.VERSION = '0.5.1';
260
43
  //# sourceMappingURL=index.js.map
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAAA;;;;;;;;GAQG;;;;;;;;;;;;;;;;;AAEH,kBAAkB;AAClB,iCAA2F;AAAlF,gGAAA,SAAS,OAAA;AAA0B,oGAAA,aAAa,OAAA;AAAE,mGAAA,YAAY,OAAA;AAEvE,gBAAgB;AAChB,uCAAwE;AAAjD,oGAAA,UAAU,OAAA;AAAE,wGAAA,cAAc,OAAA;AAEjD,0DAA0D;AAC1D,4CAA0B;AAC1B,gDAA8B;AAC9B,+CAA6B;AAC7B,+CAA6B;AAE7B,UAAU;AACG,QAAA,OAAO,GAAG,OAAO,CAAC"}
@@ -0,0 +1,32 @@
1
+ /**
2
+ * API Client for MoltOS SDK
3
+ * Handles authentication and API requests to the MoltOS backend
4
+ */
5
+ import { AxiosRequestConfig } from 'axios';
6
+ export interface ApiConfig {
7
+ baseUrl: string;
8
+ apiKey?: string;
9
+ timeout?: number;
10
+ }
11
+ export interface ApiResponse<T = unknown> {
12
+ success: boolean;
13
+ data?: T;
14
+ error?: {
15
+ code: string;
16
+ message: string;
17
+ };
18
+ }
19
+ export declare class ApiClient {
20
+ private client;
21
+ private config;
22
+ constructor(config: ApiConfig);
23
+ get<T>(path: string, config?: AxiosRequestConfig): Promise<ApiResponse<T>>;
24
+ post<T>(path: string, data?: unknown, config?: AxiosRequestConfig): Promise<ApiResponse<T>>;
25
+ put<T>(path: string, data?: unknown, config?: AxiosRequestConfig): Promise<ApiResponse<T>>;
26
+ delete<T>(path: string, config?: AxiosRequestConfig): Promise<ApiResponse<T>>;
27
+ getBaseUrl(): string;
28
+ setApiKey(apiKey: string): void;
29
+ }
30
+ export declare function initApiClient(config: ApiConfig): ApiClient;
31
+ export declare function getApiClient(): ApiClient;
32
+ //# sourceMappingURL=api.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/lib/api.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAc,EAAiB,kBAAkB,EAAc,MAAM,OAAO,CAAC;AAE7E,MAAM,WAAW,SAAS;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,OAAO;IACtC,OAAO,EAAE,OAAO,CAAC;IACjB,IAAI,CAAC,EAAE,CAAC,CAAC;IACT,KAAK,CAAC,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,MAAM,CAAY;gBAEd,MAAM,EAAE,SAAS;IAqCvB,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAK1E,IAAI,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAK3F,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,EAAE,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAK1F,MAAM,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,kBAAkB,GAAG,OAAO,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;IAKnF,UAAU,IAAI,MAAM;IAIpB,SAAS,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI;CAGhC;AAKD,wBAAgB,aAAa,CAAC,MAAM,EAAE,SAAS,GAAG,SAAS,CAG1D;AAED,wBAAgB,YAAY,IAAI,SAAS,CAKxC"}
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+ /**
3
+ * API Client for MoltOS SDK
4
+ * Handles authentication and API requests to the MoltOS backend
5
+ */
6
+ var __importDefault = (this && this.__importDefault) || function (mod) {
7
+ return (mod && mod.__esModule) ? mod : { "default": mod };
8
+ };
9
+ Object.defineProperty(exports, "__esModule", { value: true });
10
+ exports.ApiClient = void 0;
11
+ exports.initApiClient = initApiClient;
12
+ exports.getApiClient = getApiClient;
13
+ const axios_1 = __importDefault(require("axios"));
14
+ class ApiClient {
15
+ client;
16
+ config;
17
+ constructor(config) {
18
+ this.config = {
19
+ timeout: 30000,
20
+ ...config,
21
+ };
22
+ this.client = axios_1.default.create({
23
+ baseURL: this.config.baseUrl,
24
+ timeout: this.config.timeout,
25
+ headers: {
26
+ 'Content-Type': 'application/json',
27
+ },
28
+ });
29
+ // Add request interceptor for auth
30
+ this.client.interceptors.request.use((config) => {
31
+ if (this.config.apiKey) {
32
+ config.headers.Authorization = `Bearer ${this.config.apiKey}`;
33
+ }
34
+ return config;
35
+ }, (error) => Promise.reject(error));
36
+ // Add response interceptor for error handling
37
+ this.client.interceptors.response.use((response) => response, (error) => {
38
+ if (error.response?.data) {
39
+ return Promise.resolve(error.response);
40
+ }
41
+ return Promise.reject(error);
42
+ });
43
+ }
44
+ async get(path, config) {
45
+ const response = await this.client.get(path, config);
46
+ return response.data;
47
+ }
48
+ async post(path, data, config) {
49
+ const response = await this.client.post(path, data, config);
50
+ return response.data;
51
+ }
52
+ async put(path, data, config) {
53
+ const response = await this.client.put(path, data, config);
54
+ return response.data;
55
+ }
56
+ async delete(path, config) {
57
+ const response = await this.client.delete(path, config);
58
+ return response.data;
59
+ }
60
+ getBaseUrl() {
61
+ return this.config.baseUrl;
62
+ }
63
+ setApiKey(apiKey) {
64
+ this.config.apiKey = apiKey;
65
+ }
66
+ }
67
+ exports.ApiClient = ApiClient;
68
+ // Default API client instance
69
+ let defaultClient = null;
70
+ function initApiClient(config) {
71
+ defaultClient = new ApiClient(config);
72
+ return defaultClient;
73
+ }
74
+ function getApiClient() {
75
+ if (!defaultClient) {
76
+ throw new Error('API client not initialized. Call initApiClient first.');
77
+ }
78
+ return defaultClient;
79
+ }
80
+ //# sourceMappingURL=api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/lib/api.ts"],"names":[],"mappings":"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"}