@greatlhd/ailo-endpoint-sdk 1.0.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 (89) hide show
  1. package/dist/blob/client.d.ts +15 -0
  2. package/dist/blob/client.d.ts.map +1 -0
  3. package/dist/blob/client.js +48 -0
  4. package/dist/blob/client.js.map +1 -0
  5. package/dist/blob/index.d.ts +3 -0
  6. package/dist/blob/index.d.ts.map +1 -0
  7. package/dist/blob/index.js +2 -0
  8. package/dist/blob/index.js.map +1 -0
  9. package/dist/bootstrap.d.ts +37 -0
  10. package/dist/bootstrap.d.ts.map +1 -0
  11. package/dist/bootstrap.js +145 -0
  12. package/dist/bootstrap.js.map +1 -0
  13. package/dist/config-io.d.ts +6 -0
  14. package/dist/config-io.d.ts.map +1 -0
  15. package/dist/config-io.js +43 -0
  16. package/dist/config-io.js.map +1 -0
  17. package/dist/connection-state.d.ts +24 -0
  18. package/dist/connection-state.d.ts.map +1 -0
  19. package/dist/connection-state.js +83 -0
  20. package/dist/connection-state.js.map +1 -0
  21. package/dist/connection-util.d.ts +12 -0
  22. package/dist/connection-util.d.ts.map +1 -0
  23. package/dist/connection-util.js +15 -0
  24. package/dist/connection-util.js.map +1 -0
  25. package/dist/endpoint-client.d.ts +92 -0
  26. package/dist/endpoint-client.d.ts.map +1 -0
  27. package/dist/endpoint-client.js +669 -0
  28. package/dist/endpoint-client.js.map +1 -0
  29. package/dist/endpoint-config.d.ts +28 -0
  30. package/dist/endpoint-config.d.ts.map +1 -0
  31. package/dist/endpoint-config.js +277 -0
  32. package/dist/endpoint-config.js.map +1 -0
  33. package/dist/errors.d.ts +17 -0
  34. package/dist/errors.d.ts.map +1 -0
  35. package/dist/errors.js +40 -0
  36. package/dist/errors.js.map +1 -0
  37. package/dist/fileref.d.ts +22 -0
  38. package/dist/fileref.d.ts.map +1 -0
  39. package/dist/fileref.js +41 -0
  40. package/dist/fileref.js.map +1 -0
  41. package/dist/index.d.ts +29 -0
  42. package/dist/index.d.ts.map +1 -0
  43. package/dist/index.js +18 -0
  44. package/dist/index.js.map +1 -0
  45. package/dist/local-endpoint-storage.d.ts +11 -0
  46. package/dist/local-endpoint-storage.d.ts.map +1 -0
  47. package/dist/local-endpoint-storage.js +143 -0
  48. package/dist/local-endpoint-storage.js.map +1 -0
  49. package/dist/logger.d.ts +25 -0
  50. package/dist/logger.d.ts.map +1 -0
  51. package/dist/logger.js +27 -0
  52. package/dist/logger.js.map +1 -0
  53. package/dist/media-util.d.ts +8 -0
  54. package/dist/media-util.d.ts.map +1 -0
  55. package/dist/media-util.js +78 -0
  56. package/dist/media-util.js.map +1 -0
  57. package/dist/middleware/index.d.ts +2 -0
  58. package/dist/middleware/index.d.ts.map +1 -0
  59. package/dist/middleware/index.js +2 -0
  60. package/dist/middleware/index.js.map +1 -0
  61. package/dist/middleware/media.d.ts +7 -0
  62. package/dist/middleware/media.d.ts.map +1 -0
  63. package/dist/middleware/media.js +112 -0
  64. package/dist/middleware/media.js.map +1 -0
  65. package/dist/skill-loader.d.ts +19 -0
  66. package/dist/skill-loader.d.ts.map +1 -0
  67. package/dist/skill-loader.js +131 -0
  68. package/dist/skill-loader.js.map +1 -0
  69. package/dist/tool-dispatch/index.d.ts +3 -0
  70. package/dist/tool-dispatch/index.d.ts.map +1 -0
  71. package/dist/tool-dispatch/index.js +2 -0
  72. package/dist/tool-dispatch/index.js.map +1 -0
  73. package/dist/tool-dispatch/normalize.d.ts +5 -0
  74. package/dist/tool-dispatch/normalize.d.ts.map +1 -0
  75. package/dist/tool-dispatch/normalize.js +100 -0
  76. package/dist/tool-dispatch/normalize.js.map +1 -0
  77. package/dist/types.d.ts +150 -0
  78. package/dist/types.d.ts.map +1 -0
  79. package/dist/types.js +13 -0
  80. package/dist/types.js.map +1 -0
  81. package/dist/utils/content.d.ts +7 -0
  82. package/dist/utils/content.d.ts.map +1 -0
  83. package/dist/utils/content.js +30 -0
  84. package/dist/utils/content.js.map +1 -0
  85. package/dist/utils/index.d.ts +2 -0
  86. package/dist/utils/index.d.ts.map +1 -0
  87. package/dist/utils/index.js +2 -0
  88. package/dist/utils/index.js.map +1 -0
  89. package/package.json +36 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"endpoint-client.js","sourceRoot":"","sources":["../src/endpoint-client.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,28 @@
1
+ /**
2
+ * Generic endpoint config server factory.
3
+ *
4
+ * Provides a web UI + REST API for configuring any endpoint:
5
+ * - Ailo connection fields (common to all endpoints)
6
+ * - Platform-specific fields (declared via platformFields)
7
+ * - Reads/writes config.json only; no environment variable overrides
8
+ */
9
+ export interface ConfigField {
10
+ key: string;
11
+ label: string;
12
+ type?: "text" | "password" | "number";
13
+ placeholder?: string;
14
+ required?: boolean;
15
+ }
16
+ export interface EndpointConfigServerOptions {
17
+ endpointName: string;
18
+ defaultPort: number;
19
+ configPath?: string;
20
+ platformFields: ConfigField[];
21
+ getConnectionStatus: () => {
22
+ connected: boolean;
23
+ endpointId: string;
24
+ };
25
+ onConfigSaved?: (config: Record<string, unknown>) => Promise<void>;
26
+ }
27
+ export declare function startEndpointConfigServer(options: EndpointConfigServerOptions): void;
28
+ //# sourceMappingURL=endpoint-config.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"endpoint-config.d.ts","sourceRoot":"","sources":["../src/endpoint-config.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAMH,MAAM,WAAW,WAAW;IAC1B,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,MAAM,GAAG,UAAU,GAAG,QAAQ,CAAC;IACtC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,2BAA2B;IAC1C,YAAY,EAAE,MAAM,CAAC;IACrB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,WAAW,EAAE,CAAC;IAC9B,mBAAmB,EAAE,MAAM;QAAE,SAAS,EAAE,OAAO,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IACtE,aAAa,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;CACpE;AAuCD,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,2BAA2B,GAAG,IAAI,CAyFpF"}
@@ -0,0 +1,277 @@
1
+ /**
2
+ * Generic endpoint config server factory.
3
+ *
4
+ * Provides a web UI + REST API for configuring any endpoint:
5
+ * - Ailo connection fields (common to all endpoints)
6
+ * - Platform-specific fields (declared via platformFields)
7
+ * - Reads/writes config.json only; no environment variable overrides
8
+ */
9
+ import { createServer } from "http";
10
+ import { join } from "path";
11
+ import { readConfig, writeConfig, getNestedValue, setNestedValue } from "./config-io.js";
12
+ function json(res, data) {
13
+ if (res.headersSent)
14
+ return;
15
+ let body;
16
+ try {
17
+ body = JSON.stringify(data, null, 2);
18
+ }
19
+ catch {
20
+ res.writeHead(500, { "Content-Type": "application/json; charset=utf-8" });
21
+ res.end(JSON.stringify({ error: "序列化响应失败" }));
22
+ return;
23
+ }
24
+ res.writeHead(200, { "Content-Type": "application/json; charset=utf-8" });
25
+ res.end(body);
26
+ }
27
+ const MAX_BODY_SIZE = 64 * 1024;
28
+ async function readBody(req) {
29
+ const chunks = [];
30
+ let total = 0;
31
+ for await (const chunk of req) {
32
+ const buf = chunk;
33
+ total += buf.length;
34
+ if (total > MAX_BODY_SIZE)
35
+ throw new Error("Request body too large");
36
+ chunks.push(buf);
37
+ }
38
+ return Buffer.concat(chunks).toString("utf-8");
39
+ }
40
+ function buildAllFields(platformFields) {
41
+ const ailoFields = [
42
+ { key: "ailo.wsUrl", label: "WS URL", placeholder: "ws://127.0.0.1:19800/ws", required: true },
43
+ { key: "ailo.apiKey", label: "API Key", placeholder: "ailo_ep_xxx", required: true },
44
+ { key: "ailo.endpointId", label: "Endpoint ID", required: true },
45
+ ];
46
+ return [...platformFields, ...ailoFields];
47
+ }
48
+ export function startEndpointConfigServer(options) {
49
+ const { endpointName, defaultPort, platformFields, getConnectionStatus, onConfigSaved, } = options;
50
+ const configPath = options.configPath ?? join(process.cwd(), "config.json");
51
+ const allFields = buildAllFields(platformFields);
52
+ function loadConfig() {
53
+ return readConfig(configPath);
54
+ }
55
+ const server = createServer(async (req, res) => {
56
+ const url = new URL(req.url ?? "/", `http://localhost:${defaultPort}`);
57
+ const path = (url.pathname || "/").replace(/\/+$/, "") || "/";
58
+ res.setHeader("Access-Control-Allow-Origin", "*");
59
+ res.setHeader("Access-Control-Allow-Methods", "GET, POST, OPTIONS");
60
+ res.setHeader("Access-Control-Allow-Headers", "Content-Type");
61
+ if (req.method === "OPTIONS") {
62
+ res.writeHead(204);
63
+ res.end();
64
+ return;
65
+ }
66
+ try {
67
+ if (path === "/" || path === "/index.html") {
68
+ res.writeHead(200, { "Content-Type": "text/html; charset=utf-8" });
69
+ res.end(buildUIHTML(endpointName, platformFields));
70
+ return;
71
+ }
72
+ if (path === "/api/status" && req.method === "GET") {
73
+ let status;
74
+ try {
75
+ status = getConnectionStatus();
76
+ }
77
+ catch {
78
+ status = { connected: false, endpointId: "" };
79
+ }
80
+ return json(res, status);
81
+ }
82
+ if (path === "/api/config" && req.method === "GET") {
83
+ const config = loadConfig();
84
+ return json(res, { config, envOverrides: [] });
85
+ }
86
+ if (path === "/api/config" && req.method === "POST") {
87
+ try {
88
+ const bodyStr = await readBody(req);
89
+ const incoming = JSON.parse(bodyStr);
90
+ const existing = readConfig(configPath);
91
+ const result = JSON.parse(JSON.stringify(existing));
92
+ for (const f of allFields) {
93
+ const val = getNestedValue(incoming, f.key);
94
+ if (val !== undefined) {
95
+ setNestedValue(result, f.key, val);
96
+ }
97
+ }
98
+ writeConfig(configPath, result);
99
+ if (onConfigSaved) {
100
+ try {
101
+ await onConfigSaved(result);
102
+ }
103
+ catch (e) {
104
+ const msg = e instanceof Error ? e.message : String(e);
105
+ return json(res, { ok: true, message: `已保存。重连时出错:${msg}` });
106
+ }
107
+ }
108
+ return json(res, { ok: true, message: "已保存,正在使用新配置重连…" });
109
+ }
110
+ catch (e) {
111
+ return json(res, { ok: false, error: e instanceof Error ? e.message : String(e) });
112
+ }
113
+ }
114
+ res.writeHead(404);
115
+ res.end("Not Found");
116
+ }
117
+ catch (e) {
118
+ if (!res.headersSent) {
119
+ try {
120
+ res.writeHead(500, { "Content-Type": "application/json; charset=utf-8" });
121
+ res.end(JSON.stringify({ error: e instanceof Error ? e.message : String(e) }));
122
+ }
123
+ catch { }
124
+ }
125
+ }
126
+ });
127
+ server.listen(defaultPort, "0.0.0.0", () => {
128
+ console.log(`[${endpointName}] 配置界面: http://127.0.0.1:${defaultPort}`);
129
+ });
130
+ server.on("error", (err) => {
131
+ if (err.code === "EADDRINUSE")
132
+ console.log(`[${endpointName}] 端口 ${defaultPort} 已被占用,跳过配置界面`);
133
+ else
134
+ console.error(`[${endpointName}] 配置服务启动失败:`, err.message);
135
+ });
136
+ }
137
+ // ─── UI HTML Generation ─────────────────────────────────────────────────────
138
+ function fieldId(key) {
139
+ return key.replace(/\./g, "_");
140
+ }
141
+ function esc(s) {
142
+ return s.replace(/&/g, "&amp;").replace(/</g, "&lt;").replace(/>/g, "&gt;").replace(/"/g, "&quot;");
143
+ }
144
+ function buildFieldHTML(f) {
145
+ const id = fieldId(f.key);
146
+ const inputType = f.type === "number" ? "number" : "text";
147
+ const ph = esc(f.placeholder ?? "");
148
+ return ` <div class="form-group"><label>${esc(f.label)}${f.required ? " *" : ""}</label><input id="${id}" type="${inputType}" placeholder="${ph}" autocomplete="off"></div>`;
149
+ }
150
+ function buildUIHTML(endpointName, platformFields) {
151
+ const platformFormHTML = platformFields.map(f => buildFieldHTML(f)).join("\n");
152
+ const ailoFields = [
153
+ { key: "ailo.wsUrl", label: "WS URL", placeholder: "ws://127.0.0.1:19800/ws", required: true },
154
+ { key: "ailo.apiKey", label: "API Key", placeholder: "ailo_ep_xxx", required: true },
155
+ { key: "ailo.endpointId", label: "Endpoint ID", placeholder: endpointName.toLowerCase() + "-01", required: true },
156
+ ];
157
+ const ailoFormHTML = ailoFields.map(f => buildFieldHTML(f)).join("\n");
158
+ const allFields = [...platformFields, ...ailoFields];
159
+ const fieldKeys = allFields.map(f => `"${f.key}"`).join(",");
160
+ const fieldIds = allFields.map(f => `"${fieldId(f.key)}"`).join(",");
161
+ return `<!DOCTYPE html>
162
+ <html lang="zh">
163
+ <head>
164
+ <meta charset="UTF-8"><meta name="viewport" content="width=device-width, initial-scale=1">
165
+ <title>Ailo ${esc(endpointName)} - 配置</title>
166
+ <style>
167
+ *{margin:0;padding:0;box-sizing:border-box}
168
+ body{
169
+ font-family:-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,'PingFang SC','Microsoft YaHei',sans-serif;
170
+ background:#1a1d24;color:#d4d6da;min-height:100vh;font-size:15px;line-height:1.55;-webkit-font-smoothing:antialiased;
171
+ }
172
+ .container{max-width:640px;margin:0 auto;padding:24px}
173
+ h1{font-size:1.35rem;font-weight:600;margin-bottom:8px;display:flex;align-items:center;gap:10px;color:#e2e4e8}
174
+ .subtitle{font-size:14px;color:#9ca3af;margin-bottom:24px}
175
+ .dot{width:10px;height:10px;border-radius:50%;display:inline-block}
176
+ .dot.on{background:#34d399;box-shadow:0 0 8px rgba(52,211,153,.4)}
177
+ .dot.off{background:#f87171}
178
+ .card{background:#252830;border:1px solid #333842;border-radius:12px;padding:20px;margin-bottom:20px}
179
+ .card h2{font-size:1.05rem;margin-bottom:12px;color:#b4b8be;font-weight:600}
180
+ .card p.desc{font-size:14px;color:#9ca3af;margin-bottom:14px;line-height:1.5}
181
+ .form-group{margin-bottom:14px}
182
+ .form-group label{display:block;font-size:14px;color:#9ca3af;margin-bottom:6px}
183
+ input{background:#1a1d24;border:1px solid #333842;color:#e2e4e8;padding:10px 14px;border-radius:8px;font-size:15px;width:100%;transition:border-color .15s}
184
+ input:focus{outline:none;border-color:#4b5563}
185
+ input[readonly]{opacity:.6;cursor:not-allowed}
186
+ .btn{padding:10px 18px;border-radius:8px;border:none;cursor:pointer;font-size:14px;margin-right:8px;margin-top:4px;transition:opacity .15s}
187
+ .btn-primary{background:#3b82f6;color:#fff}
188
+ .btn-primary:hover{background:#2563eb}
189
+ #saveMsg{margin-left:8px;font-size:14px;color:#9ca3af}
190
+ .info-row{display:flex;gap:24px;margin-bottom:8px;font-size:15px}
191
+ .info-label{color:#9ca3af;min-width:100px}
192
+ .info-value{color:#d4d6da}
193
+ </style>
194
+ </head>
195
+ <body>
196
+ <div class="container">
197
+ <h1><span class="dot off" id="dot"></span> Ailo ${esc(endpointName)} <span id="statusText" style="font-size:14px;color:#9ca3af"></span></h1>
198
+ <p class="subtitle">在下方填写配置信息,保存后会自动使用新配置连接,无需重启进程。</p>
199
+
200
+ <div class="card">
201
+ <h2>连接状态</h2>
202
+ <div id="statusInfo">加载中...</div>
203
+ </div>
204
+
205
+ ${platformFields.length > 0 ? ` <div class="card">
206
+ <h2>${esc(endpointName)} 平台配置</h2>
207
+ ${platformFormHTML}
208
+ </div>
209
+ ` : ""} <div class="card">
210
+ <h2>Ailo 连接配置</h2>
211
+ <p class="desc">由 Ailo 端点管理下发的连接信息,或本地开发时填写。</p>
212
+ ${ailoFormHTML}
213
+ </div>
214
+
215
+ <div class="card">
216
+ <button class="btn btn-primary" onclick="saveConfig()">保存配置</button>
217
+ <span id="saveMsg"></span>
218
+ </div>
219
+ </div>
220
+ <script>
221
+ var FIELD_KEYS=[${fieldKeys}];
222
+ var FIELD_IDS=[${fieldIds}];
223
+ function el(id){return document.getElementById(id)}
224
+ function esc(s){var t=String(s==null?'':s);var d=document.createElement('div');d.textContent=t;return d.innerHTML}
225
+ function showStatus(data){
226
+ var dot=el('dot'),st=el('statusText'),info=el('statusInfo');
227
+ if(!dot||!st||!info)return;
228
+ if(data&&data.connected){dot.className='dot on';st.textContent='已连接';info.innerHTML='<div class="info-row"><span class="info-label">端点 ID</span><span class="info-value">'+esc(data.endpointId)+'</span></div>'}
229
+ else{dot.className='dot off';st.textContent='未连接';info.innerHTML='<div class="info-row"><span class="info-value">尚未连接 Ailo。请填写下方配置并保存。</span></div>'}
230
+ }
231
+ function getVal(path,obj){var p=path.split('.');var c=obj;for(var i=0;i<p.length;i++){if(c==null)return '';c=c[p[i]]}return c==null?'':c}
232
+ function fillForm(cfg){
233
+ for(var i=0;i<FIELD_KEYS.length;i++){
234
+ var e=el(FIELD_IDS[i]);if(!e)continue;
235
+ e.value=getVal(FIELD_KEYS[i],cfg)||'';
236
+ }
237
+ }
238
+ function collectForm(){
239
+ var obj={};
240
+ for(var i=0;i<FIELD_KEYS.length;i++){
241
+ var e=el(FIELD_IDS[i]);if(!e)continue;
242
+ var p=FIELD_KEYS[i].split('.');var c=obj;
243
+ for(var j=0;j<p.length-1;j++){if(!c[p[j]])c[p[j]]={};c=c[p[j]]}
244
+ c[p[p.length-1]]=e.value.trim();
245
+ }
246
+ return obj;
247
+ }
248
+ async function refreshStatus(){try{var r=await fetch('/api/status');if(r.ok)showStatus(await r.json())}catch(e){}}
249
+ async function load(){
250
+ try{
251
+ var [sr,cr]=await Promise.all([fetch('/api/status'),fetch('/api/config')]);
252
+ if(!sr.ok||!cr.ok)throw new Error('请求失败');
253
+ showStatus(await sr.json());
254
+ var cd=await cr.json();fillForm(cd.config||{});
255
+ }catch(e){
256
+ var info=el('statusInfo');if(info)info.innerHTML='<div class="info-row"><span class="info-value" style="color:#f87171">加载失败,请刷新页面</span></div>';
257
+ }
258
+ }
259
+ async function saveConfig(){
260
+ var btn=document.querySelector('.btn-primary'),msg=el('saveMsg');
261
+ if(btn)btn.disabled=true;if(msg)msg.textContent='保存中...';
262
+ try{
263
+ var body=JSON.stringify(collectForm());
264
+ var res=await fetch('/api/config',{method:'POST',headers:{'Content-Type':'application/json'},body:body});
265
+ var text=await res.text();var data;
266
+ try{data=text?JSON.parse(text):{}}catch(e){data={ok:false,error:'解析失败'}}
267
+ if(data.ok){if(msg){msg.textContent=data.message||'已保存';msg.style.color='#34d399'}setTimeout(load,800)}
268
+ else{if(msg){msg.textContent=data.error||'保存失败';msg.style.color='#f87171'}}
269
+ }catch(e){if(msg){msg.textContent='保存失败(网络或服务器错误)';msg.style.color='#f87171'}}
270
+ finally{if(btn)btn.disabled=false}
271
+ }
272
+ load();setInterval(refreshStatus,15000);
273
+ </script>
274
+ </body>
275
+ </html>`;
276
+ }
277
+ //# sourceMappingURL=endpoint-config.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"endpoint-config.js","sourceRoot":"","sources":["../src/endpoint-config.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,17 @@
1
+ export type ErrorCode = 'NETWORK' | 'PROTOCOL' | 'TIMEOUT' | 'AUTH' | 'BUSINESS' | 'INVALID_PARAMS' | 'NOT_CONNECTED' | 'HANDSHAKE_FAILED' | 'EVICTED';
2
+ export declare class EndpointError extends Error {
3
+ readonly code: ErrorCode;
4
+ readonly recoverable: boolean;
5
+ readonly cause?: Error | undefined;
6
+ constructor(message: string, code: ErrorCode, recoverable?: boolean, cause?: Error | undefined);
7
+ static network(message: string, cause?: Error): EndpointError;
8
+ static timeout(message: string): EndpointError;
9
+ static auth(message: string): EndpointError;
10
+ static protocol(message: string): EndpointError;
11
+ static notConnected(): EndpointError;
12
+ static handshakeFailed(message: string, cause?: Error): EndpointError;
13
+ static evicted(): EndpointError;
14
+ static invalidParams(message: string): EndpointError;
15
+ static business(message: string): EndpointError;
16
+ }
17
+ //# sourceMappingURL=errors.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.d.ts","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,SAAS,GACjB,SAAS,GACT,UAAU,GACV,SAAS,GACT,MAAM,GACN,UAAU,GACV,gBAAgB,GAChB,eAAe,GACf,kBAAkB,GAClB,SAAS,CAAC;AAEd,qBAAa,aAAc,SAAQ,KAAK;aAGpB,IAAI,EAAE,SAAS;aACf,WAAW,EAAE,OAAO;aACpB,KAAK,CAAC,EAAE,KAAK;gBAH7B,OAAO,EAAE,MAAM,EACC,IAAI,EAAE,SAAS,EACf,WAAW,GAAE,OAAc,EAC3B,KAAK,CAAC,EAAE,KAAK,YAAA;IAM/B,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,aAAa;IAI7D,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa;IAI9C,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa;IAI3C,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa;IAI/C,MAAM,CAAC,YAAY,IAAI,aAAa;IAIpC,MAAM,CAAC,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,KAAK,GAAG,aAAa;IAIrE,MAAM,CAAC,OAAO,IAAI,aAAa;IAI/B,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa;IAIpD,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,aAAa;CAGhD"}
package/dist/errors.js ADDED
@@ -0,0 +1,40 @@
1
+ export class EndpointError extends Error {
2
+ code;
3
+ recoverable;
4
+ cause;
5
+ constructor(message, code, recoverable = true, cause) {
6
+ super(message);
7
+ this.code = code;
8
+ this.recoverable = recoverable;
9
+ this.cause = cause;
10
+ this.name = 'EndpointError';
11
+ }
12
+ static network(message, cause) {
13
+ return new EndpointError(message, 'NETWORK', true, cause);
14
+ }
15
+ static timeout(message) {
16
+ return new EndpointError(message, 'TIMEOUT', true);
17
+ }
18
+ static auth(message) {
19
+ return new EndpointError(message, 'AUTH', false);
20
+ }
21
+ static protocol(message) {
22
+ return new EndpointError(message, 'PROTOCOL', false);
23
+ }
24
+ static notConnected() {
25
+ return new EndpointError('Not connected to server', 'NOT_CONNECTED', true);
26
+ }
27
+ static handshakeFailed(message, cause) {
28
+ return new EndpointError(message, 'HANDSHAKE_FAILED', true, cause);
29
+ }
30
+ static evicted() {
31
+ return new EndpointError('Evicted by newer instance', 'EVICTED', false);
32
+ }
33
+ static invalidParams(message) {
34
+ return new EndpointError(message, 'INVALID_PARAMS', false);
35
+ }
36
+ static business(message) {
37
+ return new EndpointError(message, 'BUSINESS', true);
38
+ }
39
+ }
40
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAWA,MAAM,OAAO,aAAc,SAAQ,KAAK;IAGpB;IACA;IACA;IAJlB,YACE,OAAe,EACC,IAAe,EACf,cAAuB,IAAI,EAC3B,KAAa;QAE7B,KAAK,CAAC,OAAO,CAAC,CAAC;QAJC,SAAI,GAAJ,IAAI,CAAW;QACf,gBAAW,GAAX,WAAW,CAAgB;QAC3B,UAAK,GAAL,KAAK,CAAQ;QAG7B,IAAI,CAAC,IAAI,GAAG,eAAe,CAAC;IAC9B,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,OAAe,EAAE,KAAa;QAC3C,OAAO,IAAI,aAAa,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IAC5D,CAAC;IAED,MAAM,CAAC,OAAO,CAAC,OAAe;QAC5B,OAAO,IAAI,aAAa,CAAC,OAAO,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC;IACrD,CAAC;IAED,MAAM,CAAC,IAAI,CAAC,OAAe;QACzB,OAAO,IAAI,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,CAAC;IACnD,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,OAAe;QAC7B,OAAO,IAAI,aAAa,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,CAAC,CAAC;IACvD,CAAC;IAED,MAAM,CAAC,YAAY;QACjB,OAAO,IAAI,aAAa,CAAC,yBAAyB,EAAE,eAAe,EAAE,IAAI,CAAC,CAAC;IAC7E,CAAC;IAED,MAAM,CAAC,eAAe,CAAC,OAAe,EAAE,KAAa;QACnD,OAAO,IAAI,aAAa,CAAC,OAAO,EAAE,kBAAkB,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC;IACrE,CAAC;IAED,MAAM,CAAC,OAAO;QACZ,OAAO,IAAI,aAAa,CAAC,2BAA2B,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC;IAC1E,CAAC;IAED,MAAM,CAAC,aAAa,CAAC,OAAe;QAClC,OAAO,IAAI,aAAa,CAAC,OAAO,EAAE,gBAAgB,EAAE,KAAK,CAAC,CAAC;IAC7D,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,OAAe;QAC7B,OAAO,IAAI,aAAa,CAAC,OAAO,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;IACtD,CAAC;CACF"}
@@ -0,0 +1,22 @@
1
+ /**
2
+ * FileRef URI utilities — internal transport mechanism only.
3
+ *
4
+ * FileRef URIs are used internally by Gateway and endpoint SDK for Blob-based
5
+ * file transfer. The LLM never sees these URIs; it works with (endpoint_id, path)
6
+ * tuples instead. Endpoint tools only operate on local paths.
7
+ *
8
+ * URI formats:
9
+ * ailo://blob/{blob_id} — Server-side Blob storage
10
+ * ailo://ep:{endpoint_id}/{abs_path} — Endpoint-local file
11
+ */
12
+ export type FileRefType = "blob" | "endpoint";
13
+ export interface FileRef {
14
+ type: FileRefType;
15
+ blobId?: string;
16
+ endpointId?: string;
17
+ path?: string;
18
+ raw: string;
19
+ }
20
+ export declare function parseFileRef(uri: string): FileRef;
21
+ export declare function isFileRef(s: string): boolean;
22
+ //# sourceMappingURL=fileref.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fileref.d.ts","sourceRoot":"","sources":["../src/fileref.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAMH,MAAM,MAAM,WAAW,GAAG,MAAM,GAAG,UAAU,CAAC;AAE9C,MAAM,WAAW,OAAO;IACtB,IAAI,EAAE,WAAW,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,GAAG,EAAE,MAAM,CAAC;CACb;AAED,wBAAgB,YAAY,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAsBjD;AAED,wBAAgB,SAAS,CAAC,CAAC,EAAE,MAAM,GAAG,OAAO,CAE5C"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * FileRef URI utilities — internal transport mechanism only.
3
+ *
4
+ * FileRef URIs are used internally by Gateway and endpoint SDK for Blob-based
5
+ * file transfer. The LLM never sees these URIs; it works with (endpoint_id, path)
6
+ * tuples instead. Endpoint tools only operate on local paths.
7
+ *
8
+ * URI formats:
9
+ * ailo://blob/{blob_id} — Server-side Blob storage
10
+ * ailo://ep:{endpoint_id}/{abs_path} — Endpoint-local file
11
+ */
12
+ const FILEREF_SCHEME = "ailo://";
13
+ const FILEREF_BLOB_PREFIX = "ailo://blob/";
14
+ const FILEREF_EP_PREFIX = "ailo://ep:";
15
+ export function parseFileRef(uri) {
16
+ if (!uri.startsWith(FILEREF_SCHEME)) {
17
+ throw new Error(`Not a FileRef URI: ${uri}`);
18
+ }
19
+ if (uri.startsWith(FILEREF_BLOB_PREFIX)) {
20
+ const blobId = uri.slice(FILEREF_BLOB_PREFIX.length);
21
+ if (!blobId)
22
+ throw new Error(`Empty blob id in: ${uri}`);
23
+ return { type: "blob", blobId, raw: uri };
24
+ }
25
+ if (uri.startsWith(FILEREF_EP_PREFIX)) {
26
+ const rest = uri.slice(FILEREF_EP_PREFIX.length);
27
+ const slashIdx = rest.indexOf("/");
28
+ if (slashIdx <= 0)
29
+ throw new Error(`Missing endpoint id or path in: ${uri}`);
30
+ const endpointId = rest.slice(0, slashIdx);
31
+ const path = rest.slice(slashIdx + 1);
32
+ if (!path)
33
+ throw new Error(`Empty path in: ${uri}`);
34
+ return { type: "endpoint", endpointId, path, raw: uri };
35
+ }
36
+ throw new Error(`Unknown FileRef type: ${uri}`);
37
+ }
38
+ export function isFileRef(s) {
39
+ return s.startsWith(FILEREF_SCHEME);
40
+ }
41
+ //# sourceMappingURL=fileref.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"fileref.js","sourceRoot":"","sources":["../src/fileref.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,MAAM,cAAc,GAAG,SAAS,CAAC;AACjC,MAAM,mBAAmB,GAAG,cAAc,CAAC;AAC3C,MAAM,iBAAiB,GAAG,YAAY,CAAC;AAYvC,MAAM,UAAU,YAAY,CAAC,GAAW;IACtC,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,sBAAsB,GAAG,EAAE,CAAC,CAAC;IAC/C,CAAC;IAED,IAAI,GAAG,CAAC,UAAU,CAAC,mBAAmB,CAAC,EAAE,CAAC;QACxC,MAAM,MAAM,GAAG,GAAG,CAAC,KAAK,CAAC,mBAAmB,CAAC,MAAM,CAAC,CAAC;QACrD,IAAI,CAAC,MAAM;YAAE,MAAM,IAAI,KAAK,CAAC,qBAAqB,GAAG,EAAE,CAAC,CAAC;QACzD,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;IAC5C,CAAC;IAED,IAAI,GAAG,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,iBAAiB,CAAC,MAAM,CAAC,CAAC;QACjD,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC;QACnC,IAAI,QAAQ,IAAI,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,mCAAmC,GAAG,EAAE,CAAC,CAAC;QAC7E,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;QAC3C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,QAAQ,GAAG,CAAC,CAAC,CAAC;QACtC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,kBAAkB,GAAG,EAAE,CAAC,CAAC;QACpD,OAAO,EAAE,IAAI,EAAE,UAAU,EAAE,UAAU,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC;IAC1D,CAAC;IAED,MAAM,IAAI,KAAK,CAAC,yBAAyB,GAAG,EAAE,CAAC,CAAC;AAClD,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,CAAS;IACjC,OAAO,CAAC,CAAC,UAAU,CAAC,cAAc,CAAC,CAAC;AACtC,CAAC"}
@@ -0,0 +1,29 @@
1
+ export { EndpointClient, RECONNECT_COOLDOWN_MS } from "./endpoint-client.js";
2
+ export type { EndpointClientConfig, ConnectionOverrides, EndpointClientOptions } from "./endpoint-client.js";
3
+ export type { ToolRequestHandler, IntentHandler, WorldEnrichmentHandler, StreamHandler, SignalHandler, EvictedHandler } from "./endpoint-client.js";
4
+ export { runEndpoint } from "./bootstrap.js";
5
+ export type { EndpointConfig, EndpointContext, EndpointHandler } from "./bootstrap.js";
6
+ export { createLocalEndpointStorage, createCachedEndpointStorage } from "./local-endpoint-storage.js";
7
+ export { loadSkills } from "./skill-loader.js";
8
+ export { textPart, mediaPart, CAP_MESSAGE, CAP_TOOL_EXECUTE, CAP_INTENT, CAP_SIGNAL, } from "./types.js";
9
+ export type { MediaData, ContentPart, ContextTag, ToolCapability, SkillMeta, ToolHandler, AcceptMessage, ToolResponsePayload, WorldEnrichmentPayload, IntentPayload, ToolRequestPayload, StreamPayload, FileFetchRequest, FileFetchResponse, DirListRequest, DirListEntry, DirListResponse, FilePushRequest, FilePushResponse, FsProbeMarker, FsProbeRequest, FsProbeResponse, EndpointUpdateParams, EndpointStorage, Point2D, EntityPayload, } from "./types.js";
10
+ export { parseFileRef, isFileRef } from "./fileref.js";
11
+ export type { FileRef, FileRefType } from "./fileref.js";
12
+ export { inferMime, classifyMedia } from "./media-util.js";
13
+ export { readConfig, writeConfig, getNestedValue, setNestedValue, } from "./config-io.js";
14
+ export { hasValidConfig, backoffDelayMs, } from "./connection-util.js";
15
+ export type { AiloConnectionConfig } from "./connection-util.js";
16
+ export { startEndpointConfigServer } from "./endpoint-config.js";
17
+ export type { ConfigField, EndpointConfigServerOptions } from "./endpoint-config.js";
18
+ export { EndpointError } from "./errors.js";
19
+ export type { ErrorCode } from "./errors.js";
20
+ export { ConsoleLogger, NoopLogger } from "./logger.js";
21
+ export type { Logger, LogLevel, LogData } from "./logger.js";
22
+ export { ConnectionFSM } from "./connection-state.js";
23
+ export type { ConnectionState, StateTransition, StateChangeListener } from "./connection-state.js";
24
+ export { BlobClient, deriveHttpBase } from "./blob/index.js";
25
+ export type { BlobUploadResult, BlobClientOptions } from "./blob/index.js";
26
+ export { autoUploadMedia, resolveFileArgsInPlace, resolveToLocal } from "./middleware/index.js";
27
+ export { normalizeToolResult } from "./tool-dispatch/index.js";
28
+ export { isRecord, isContentParts, stringifyValue, toContentPart, toContentParts, } from "./utils/index.js";
29
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7E,YAAY,EAAE,oBAAoB,EAAE,mBAAmB,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAC7G,YAAY,EAAE,kBAAkB,EAAE,aAAa,EAAE,sBAAsB,EAAE,aAAa,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AAEpJ,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,YAAY,EAAE,cAAc,EAAE,eAAe,EAAE,eAAe,EAAE,MAAM,gBAAgB,CAAC;AAEvF,OAAO,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAC;AAEtG,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C,OAAO,EACL,QAAQ,EACR,SAAS,EACT,WAAW,EACX,gBAAgB,EAChB,UAAU,EACV,UAAU,GACX,MAAM,YAAY,CAAC;AAEpB,YAAY,EACV,SAAS,EACT,WAAW,EACX,UAAU,EACV,cAAc,EACd,SAAS,EACT,WAAW,EACX,aAAa,EACb,mBAAmB,EACnB,sBAAsB,EACtB,aAAa,EACb,kBAAkB,EAClB,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,YAAY,EACZ,eAAe,EACf,eAAe,EACf,gBAAgB,EAChB,aAAa,EACb,cAAc,EACd,eAAe,EACf,oBAAoB,EACpB,eAAe,EACf,OAAO,EACP,aAAa,GACd,MAAM,YAAY,CAAC;AAEpB,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACvD,YAAY,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAEzD,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAE3D,OAAO,EACL,UAAU,EACV,WAAW,EACX,cAAc,EACd,cAAc,GACf,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,cAAc,EACd,cAAc,GACf,MAAM,sBAAsB,CAAC;AAC9B,YAAY,EAAE,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAEjE,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AACjE,YAAY,EAAE,WAAW,EAAE,2BAA2B,EAAE,MAAM,sBAAsB,CAAC;AAErF,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,YAAY,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAE7C,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACxD,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,aAAa,CAAC;AAE7D,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AACtD,YAAY,EAAE,eAAe,EAAE,eAAe,EAAE,mBAAmB,EAAE,MAAM,uBAAuB,CAAC;AAEnG,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAC7D,YAAY,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAE3E,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEhG,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,OAAO,EACL,QAAQ,EACR,cAAc,EACd,cAAc,EACd,aAAa,EACb,cAAc,GACf,MAAM,kBAAkB,CAAC"}
package/dist/index.js ADDED
@@ -0,0 +1,18 @@
1
+ export { EndpointClient, RECONNECT_COOLDOWN_MS } from "./endpoint-client.js";
2
+ export { runEndpoint } from "./bootstrap.js";
3
+ export { createLocalEndpointStorage, createCachedEndpointStorage } from "./local-endpoint-storage.js";
4
+ export { loadSkills } from "./skill-loader.js";
5
+ export { textPart, mediaPart, CAP_MESSAGE, CAP_TOOL_EXECUTE, CAP_INTENT, CAP_SIGNAL, } from "./types.js";
6
+ export { parseFileRef, isFileRef } from "./fileref.js";
7
+ export { inferMime, classifyMedia } from "./media-util.js";
8
+ export { readConfig, writeConfig, getNestedValue, setNestedValue, } from "./config-io.js";
9
+ export { hasValidConfig, backoffDelayMs, } from "./connection-util.js";
10
+ export { startEndpointConfigServer } from "./endpoint-config.js";
11
+ export { EndpointError } from "./errors.js";
12
+ export { ConsoleLogger, NoopLogger } from "./logger.js";
13
+ export { ConnectionFSM } from "./connection-state.js";
14
+ export { BlobClient, deriveHttpBase } from "./blob/index.js";
15
+ export { autoUploadMedia, resolveFileArgsInPlace, resolveToLocal } from "./middleware/index.js";
16
+ export { normalizeToolResult } from "./tool-dispatch/index.js";
17
+ export { isRecord, isContentParts, stringifyValue, toContentPart, toContentParts, } from "./utils/index.js";
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAI7E,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAG7C,OAAO,EAAE,0BAA0B,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAC;AAEtG,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAE/C,OAAO,EACL,QAAQ,EACR,SAAS,EACT,WAAW,EACX,gBAAgB,EAChB,UAAU,EACV,UAAU,GACX,MAAM,YAAY,CAAC;AA+BpB,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAGvD,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAE3D,OAAO,EACL,UAAU,EACV,WAAW,EACX,cAAc,EACd,cAAc,GACf,MAAM,gBAAgB,CAAC;AAExB,OAAO,EACL,cAAc,EACd,cAAc,GACf,MAAM,sBAAsB,CAAC;AAG9B,OAAO,EAAE,yBAAyB,EAAE,MAAM,sBAAsB,CAAC;AAGjE,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAG5C,OAAO,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAGxD,OAAO,EAAE,aAAa,EAAE,MAAM,uBAAuB,CAAC;AAGtD,OAAO,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAG7D,OAAO,EAAE,eAAe,EAAE,sBAAsB,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAEhG,OAAO,EAAE,mBAAmB,EAAE,MAAM,0BAA0B,CAAC;AAE/D,OAAO,EACL,QAAQ,EACR,cAAc,EACd,cAAc,EACd,aAAa,EACb,cAAc,GACf,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,11 @@
1
+ import type { EndpointStorage } from "./types.js";
2
+ export declare function createLocalEndpointStorage(endpointId: string): EndpointStorage;
3
+ export interface CachedStorageOptions {
4
+ flushDelayMs?: number;
5
+ maxCacheSize?: number;
6
+ }
7
+ export declare function createCachedEndpointStorage(endpointId: string, options?: CachedStorageOptions): EndpointStorage & {
8
+ flush(): Promise<void>;
9
+ clearCache(): void;
10
+ };
11
+ //# sourceMappingURL=local-endpoint-storage.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"local-endpoint-storage.d.ts","sourceRoot":"","sources":["../src/local-endpoint-storage.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,YAAY,CAAC;AA4BlD,wBAAgB,0BAA0B,CAAC,UAAU,EAAE,MAAM,GAAG,eAAe,CAsC9E;AAED,MAAM,WAAW,oBAAoB;IACnC,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,wBAAgB,2BAA2B,CACzC,UAAU,EAAE,MAAM,EAClB,OAAO,CAAC,EAAE,oBAAoB,GAC7B,eAAe,GAAG;IAAE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAAC;IAAC,UAAU,IAAI,IAAI,CAAA;CAAE,CA2FlE"}