@thingd/client 0.77.0 → 0.77.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/app.d.ts +59 -0
- package/dist/app.d.ts.map +1 -0
- package/dist/app.js +120 -0
- package/dist/app.js.map +1 -0
- package/dist/client.d.ts +100 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +287 -0
- package/dist/client.js.map +1 -0
- package/dist/index.d.ts +4 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -0
- package/dist/types.d.ts +227 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +3 -0
- package/dist/types.js.map +1 -0
- package/package.json +1 -1
package/dist/app.d.ts
ADDED
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import type { AppAuthResponse, AppFunction, AppManifest, AppObject, AppSearchOptions, AppSearchResult, AppUser } from "./types.js";
|
|
2
|
+
export type ThingdAppClientOptions = {
|
|
3
|
+
baseUrl: string;
|
|
4
|
+
publishableKey: string;
|
|
5
|
+
fetch?: typeof globalThis.fetch;
|
|
6
|
+
accessToken?: string;
|
|
7
|
+
onSessionChange?: (session: AppAuthResponse | null) => void;
|
|
8
|
+
};
|
|
9
|
+
export declare class ThingdAppError extends Error {
|
|
10
|
+
readonly status: number;
|
|
11
|
+
readonly code: string;
|
|
12
|
+
readonly requestId?: string;
|
|
13
|
+
constructor(status: number, code: string, message: string, requestId?: string);
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Zero-dependency client for a hosted thingd app backend.
|
|
17
|
+
*
|
|
18
|
+
* The publishable key is safe to embed in browser and mobile applications.
|
|
19
|
+
* Project-user access tokens are kept in memory by default; applications can
|
|
20
|
+
* persist them using their platform's secure storage facilities.
|
|
21
|
+
*/
|
|
22
|
+
export declare class ThingdAppClient {
|
|
23
|
+
private readonly options;
|
|
24
|
+
private readonly base;
|
|
25
|
+
private readonly fetcher;
|
|
26
|
+
private accessToken;
|
|
27
|
+
constructor(options: ThingdAppClientOptions);
|
|
28
|
+
setAccessToken(token: string | undefined): void;
|
|
29
|
+
getAccessToken(): string | undefined;
|
|
30
|
+
private request;
|
|
31
|
+
manifest(): Promise<AppManifest>;
|
|
32
|
+
readonly auth: {
|
|
33
|
+
signUp: (input: {
|
|
34
|
+
email: string;
|
|
35
|
+
password: string;
|
|
36
|
+
name: string;
|
|
37
|
+
}) => Promise<AppAuthResponse>;
|
|
38
|
+
signIn: (input: {
|
|
39
|
+
email: string;
|
|
40
|
+
password: string;
|
|
41
|
+
}) => Promise<AppAuthResponse>;
|
|
42
|
+
refresh: (refreshToken: string) => Promise<AppAuthResponse>;
|
|
43
|
+
getCurrentUser: () => Promise<AppUser>;
|
|
44
|
+
signOut: () => Promise<void>;
|
|
45
|
+
};
|
|
46
|
+
readonly functions: {
|
|
47
|
+
list: () => Promise<AppFunction[]>;
|
|
48
|
+
get: (name: string) => Promise<AppFunction>;
|
|
49
|
+
invoke: <T = unknown>(name: string, input: unknown, options?: {
|
|
50
|
+
idempotencyKey?: string;
|
|
51
|
+
}) => Promise<T>;
|
|
52
|
+
};
|
|
53
|
+
readonly objects: {
|
|
54
|
+
get: <T extends AppObject = AppObject>(collection: string, id: string) => Promise<T | null>;
|
|
55
|
+
};
|
|
56
|
+
readonly search: (query: string, options?: AppSearchOptions) => Promise<AppSearchResult[]>;
|
|
57
|
+
}
|
|
58
|
+
export declare function createThingdAppClient(options: ThingdAppClientOptions): ThingdAppClient;
|
|
59
|
+
//# sourceMappingURL=app.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app.d.ts","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,eAAe,EACf,WAAW,EACX,WAAW,EACX,SAAS,EACT,gBAAgB,EAChB,eAAe,EACf,OAAO,EACR,MAAM,YAAY,CAAC;AAEpB,MAAM,MAAM,sBAAsB,GAAG;IACnC,OAAO,EAAE,MAAM,CAAC;IAChB,cAAc,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,OAAO,UAAU,CAAC,KAAK,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,eAAe,CAAC,EAAE,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI,KAAK,IAAI,CAAC;CAC7D,CAAC;AAEF,qBAAa,cAAe,SAAQ,KAAK;IACvC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAE5B,YAAY,MAAM,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,EAM5E;CACF;AAyBD;;;;;;GAMG;AACH,qBAAa,eAAe;IAKd,OAAO,CAAC,QAAQ,CAAC,OAAO;IAJpC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAS;IAC9B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA0B;IAClD,OAAO,CAAC,WAAW,CAAqB;IAExC,YAA6B,OAAO,EAAE,sBAAsB,EAI3D;IAED,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,IAAI,CAE9C;IAED,cAAc,IAAI,MAAM,GAAG,SAAS,CAEnC;YAEa,OAAO;IAiCf,QAAQ,IAAI,OAAO,CAAC,WAAW,CAAC,CAErC;IAED,QAAQ,CAAC,IAAI;QACX,MAAM,UAAgB;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAC;YAAC,IAAI,EAAE,MAAM,CAAA;SAAE;QAMvE,MAAM,UAAgB;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,QAAQ,EAAE,MAAM,CAAA;SAAE;QAMzD,OAAO,iBAAuB,MAAM;QAQpC,cAAc;QACd,OAAO;MAUP;IAEF,QAAQ,CAAC,SAAS;QAChB,IAAI;QACJ,GAAG,SAAS,MAAM;QAElB,MAAM,GAAG,CAAC,GAAG,OAAO,QAAQ,MAAM,SAAS,OAAO,YAAY;YAAE,cAAc,CAAC,EAAE,MAAM,CAAA;SAAE;MAOzF;IAEF,QAAQ,CAAC,OAAO;QACd,GAAG,GAAG,CAAC,SAAS,SAAS,GAAG,SAAS,cAAc,MAAM,MAAM,MAAM;MAKrE;IAEF,QAAQ,CAAC,MAAM,UAAW,MAAM,YAAY,gBAAgB,gCACoB;CACjF;AAED,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,sBAAsB,GAAG,eAAe,CAEtF"}
|
package/dist/app.js
ADDED
|
@@ -0,0 +1,120 @@
|
|
|
1
|
+
export class ThingdAppError extends Error {
|
|
2
|
+
status;
|
|
3
|
+
code;
|
|
4
|
+
requestId;
|
|
5
|
+
constructor(status, code, message, requestId) {
|
|
6
|
+
super(message);
|
|
7
|
+
this.name = "ThingdAppError";
|
|
8
|
+
this.status = status;
|
|
9
|
+
this.code = code;
|
|
10
|
+
this.requestId = requestId;
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
function appPath(baseUrl) {
|
|
14
|
+
let normalized = baseUrl;
|
|
15
|
+
while (normalized.endsWith("/")) {
|
|
16
|
+
normalized = normalized.slice(0, -1);
|
|
17
|
+
}
|
|
18
|
+
return normalized.endsWith("/v1") ? normalized : `${normalized}/v1`;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Zero-dependency client for a hosted thingd app backend.
|
|
22
|
+
*
|
|
23
|
+
* The publishable key is safe to embed in browser and mobile applications.
|
|
24
|
+
* Project-user access tokens are kept in memory by default; applications can
|
|
25
|
+
* persist them using their platform's secure storage facilities.
|
|
26
|
+
*/
|
|
27
|
+
export class ThingdAppClient {
|
|
28
|
+
options;
|
|
29
|
+
base;
|
|
30
|
+
fetcher;
|
|
31
|
+
accessToken;
|
|
32
|
+
constructor(options) {
|
|
33
|
+
this.options = options;
|
|
34
|
+
this.base = appPath(options.baseUrl);
|
|
35
|
+
this.fetcher = options.fetch ?? globalThis.fetch;
|
|
36
|
+
this.accessToken = options.accessToken;
|
|
37
|
+
}
|
|
38
|
+
setAccessToken(token) {
|
|
39
|
+
this.accessToken = token;
|
|
40
|
+
}
|
|
41
|
+
getAccessToken() {
|
|
42
|
+
return this.accessToken;
|
|
43
|
+
}
|
|
44
|
+
async request(method, path, body, idempotencyKey) {
|
|
45
|
+
const headers = {
|
|
46
|
+
accept: "application/json",
|
|
47
|
+
"x-thingd-publishable-key": this.options.publishableKey,
|
|
48
|
+
};
|
|
49
|
+
if (body !== undefined) {
|
|
50
|
+
headers["content-type"] = "application/json";
|
|
51
|
+
}
|
|
52
|
+
if (this.accessToken) {
|
|
53
|
+
headers.authorization = `Bearer ${this.accessToken}`;
|
|
54
|
+
}
|
|
55
|
+
if (idempotencyKey) {
|
|
56
|
+
headers["idempotency-key"] = idempotencyKey;
|
|
57
|
+
}
|
|
58
|
+
const response = await this.fetcher(`${this.base}${path}`, {
|
|
59
|
+
method,
|
|
60
|
+
headers,
|
|
61
|
+
body: body === undefined ? undefined : JSON.stringify(body),
|
|
62
|
+
});
|
|
63
|
+
const payload = (await response.json());
|
|
64
|
+
if (!response.ok) {
|
|
65
|
+
const error = payload.error;
|
|
66
|
+
throw new ThingdAppError(response.status, error?.code ?? error?.type ?? "app_request_failed", error?.detail ?? error?.message ?? `HTTP ${response.status}`, payload.requestId);
|
|
67
|
+
}
|
|
68
|
+
return payload.data;
|
|
69
|
+
}
|
|
70
|
+
async manifest() {
|
|
71
|
+
return this.request("GET", "/app/manifest");
|
|
72
|
+
}
|
|
73
|
+
auth = {
|
|
74
|
+
signUp: async (input) => {
|
|
75
|
+
const result = await this.request("POST", "/app/auth/signup", input);
|
|
76
|
+
this.setAccessToken(result.accessToken);
|
|
77
|
+
this.options.onSessionChange?.(result);
|
|
78
|
+
return result;
|
|
79
|
+
},
|
|
80
|
+
signIn: async (input) => {
|
|
81
|
+
const result = await this.request("POST", "/app/auth/login", input);
|
|
82
|
+
this.setAccessToken(result.accessToken);
|
|
83
|
+
this.options.onSessionChange?.(result);
|
|
84
|
+
return result;
|
|
85
|
+
},
|
|
86
|
+
refresh: async (refreshToken) => {
|
|
87
|
+
const result = await this.request("POST", "/app/auth/refresh", {
|
|
88
|
+
refreshToken,
|
|
89
|
+
});
|
|
90
|
+
this.setAccessToken(result.accessToken);
|
|
91
|
+
this.options.onSessionChange?.(result);
|
|
92
|
+
return result;
|
|
93
|
+
},
|
|
94
|
+
getCurrentUser: () => this.request("GET", "/app/auth/me"),
|
|
95
|
+
signOut: async () => {
|
|
96
|
+
try {
|
|
97
|
+
if (this.accessToken) {
|
|
98
|
+
await this.request("POST", "/app/auth/logout", {});
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
finally {
|
|
102
|
+
this.setAccessToken(undefined);
|
|
103
|
+
this.options.onSessionChange?.(null);
|
|
104
|
+
}
|
|
105
|
+
},
|
|
106
|
+
};
|
|
107
|
+
functions = {
|
|
108
|
+
list: () => this.request("GET", "/app/functions"),
|
|
109
|
+
get: (name) => this.request("GET", `/app/functions/${encodeURIComponent(name)}`),
|
|
110
|
+
invoke: (name, input, options) => this.request("POST", `/app/functions/${encodeURIComponent(name)}`, input, options?.idempotencyKey),
|
|
111
|
+
};
|
|
112
|
+
objects = {
|
|
113
|
+
get: (collection, id) => this.request("GET", `/app/objects/${encodeURIComponent(collection)}/${encodeURIComponent(id)}`),
|
|
114
|
+
};
|
|
115
|
+
search = (query, options) => this.request("POST", "/app/search", { query, ...options });
|
|
116
|
+
}
|
|
117
|
+
export function createThingdAppClient(options) {
|
|
118
|
+
return new ThingdAppClient(options);
|
|
119
|
+
}
|
|
120
|
+
//# sourceMappingURL=app.js.map
|
package/dist/app.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"app.js","sourceRoot":"","sources":["../src/app.ts"],"names":[],"mappings":"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"}
|
package/dist/client.d.ts
ADDED
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import type { AggregateOptions, AggregateResult, CollectionSchema, Link, LinkDirection, LinkQueryOptions, ListEventsOptions, ListObjectsOptions, MemoryEvent, MemoryObject, MemoryQueue, MemorySearchOptions, MemorySearchResult, NlqOptions, NlqResult, QueueClaimOptions, QueueJob, QueueJobOptions, QueueJobPayload, QueueJobResult, QueueNackOptions, SchemaOptions, StoredMemoryEvent, StoredMemoryObject, ThingDeleteResult, TimeSeriesOptions, TimeSeriesResult, VectorSearchHit, VectorSearchOptions } from "./types.js";
|
|
2
|
+
export type ThingdClientOptions = {
|
|
3
|
+
url: string;
|
|
4
|
+
authToken?: string;
|
|
5
|
+
};
|
|
6
|
+
/**
|
|
7
|
+
* Zero-dependency HTTP client for thingd REST API.
|
|
8
|
+
*
|
|
9
|
+
* Works in any runtime with `fetch()` — browsers, Cloudflare Workers,
|
|
10
|
+
* AWS Lambda, Bun, Deno, Node.js 18+.
|
|
11
|
+
*
|
|
12
|
+
* @example
|
|
13
|
+
* ```ts
|
|
14
|
+
* const client = new ThingdClient({
|
|
15
|
+
* url: "https://api.thingd.cloud",
|
|
16
|
+
* authToken: "sk-...",
|
|
17
|
+
* });
|
|
18
|
+
* await client.put("notes", { id: "1", text: "hello" });
|
|
19
|
+
* ```
|
|
20
|
+
*/
|
|
21
|
+
export declare class ThingdClient {
|
|
22
|
+
private readonly options;
|
|
23
|
+
private readonly base;
|
|
24
|
+
constructor(options: ThingdClientOptions);
|
|
25
|
+
private get token();
|
|
26
|
+
private request;
|
|
27
|
+
put(collection: string, object: MemoryObject): Promise<StoredMemoryObject>;
|
|
28
|
+
get<T = StoredMemoryObject>(collection: string, id: string): Promise<T | null>;
|
|
29
|
+
delete(collection: string, id: string): Promise<ThingDeleteResult>;
|
|
30
|
+
listObjects<T = StoredMemoryObject>(collection: string, options?: ListObjectsOptions): Promise<T[]>;
|
|
31
|
+
putBatch(collection: string, objects: MemoryObject[]): Promise<StoredMemoryObject[]>;
|
|
32
|
+
deleteBatch(collection: string, ids: string[]): Promise<number>;
|
|
33
|
+
search(query: string, options?: MemorySearchOptions): Promise<MemorySearchResult[]>;
|
|
34
|
+
/** Search objects by vector similarity (cosine similarity). */
|
|
35
|
+
vectorSearch(collection: string, queryVector: number[], options?: VectorSearchOptions): Promise<VectorSearchHit[]>;
|
|
36
|
+
appendEvent(stream: string, event: MemoryEvent): Promise<StoredMemoryEvent>;
|
|
37
|
+
listEvents<T = StoredMemoryEvent>(stream?: string, options?: ListEventsOptions): Promise<T[]>;
|
|
38
|
+
readonly events: {
|
|
39
|
+
append: (stream: string, event: MemoryEvent) => Promise<StoredMemoryEvent>;
|
|
40
|
+
list: <T = StoredMemoryEvent>(stream?: string, options?: ListEventsOptions) => Promise<T[]>;
|
|
41
|
+
};
|
|
42
|
+
pushJob(queue: string, payload: QueueJobPayload, options?: QueueJobOptions): Promise<QueueJob>;
|
|
43
|
+
claimJob(queue: string, options?: QueueClaimOptions): Promise<QueueJob | null>;
|
|
44
|
+
ackJob(queue: string, jobId: string): Promise<QueueJobResult>;
|
|
45
|
+
nackJob(queue: string, jobId: string, nackOptions?: QueueNackOptions): Promise<QueueJobResult>;
|
|
46
|
+
listJobs(queue: string): Promise<QueueJob[]>;
|
|
47
|
+
listDeadJobs(queue: string): Promise<QueueJob[]>;
|
|
48
|
+
queue(name: string): MemoryQueue;
|
|
49
|
+
createLink(fromRef: string, linkType: string, toRef: string, weight?: number, metadataJson?: string): Promise<Link>;
|
|
50
|
+
deleteLink(id: string): Promise<boolean>;
|
|
51
|
+
getLink(id: string): Promise<Link | null>;
|
|
52
|
+
getNeighbors(reference: string, direction?: LinkDirection, options?: LinkQueryOptions): Promise<Link[]>;
|
|
53
|
+
readonly links: {
|
|
54
|
+
create: (fromRef: string, linkType: string, toRef: string, weight?: number, metadataJson?: string) => Promise<Link>;
|
|
55
|
+
delete: (id: string) => Promise<boolean>;
|
|
56
|
+
get: (id: string) => Promise<Link | null>;
|
|
57
|
+
neighbors: (reference: string, direction?: LinkDirection, options?: LinkQueryOptions) => Promise<Link[]>;
|
|
58
|
+
};
|
|
59
|
+
countObjects(): Promise<number>;
|
|
60
|
+
countEvents(): Promise<number>;
|
|
61
|
+
countActiveJobs(): Promise<number>;
|
|
62
|
+
countDeadJobs(): Promise<number>;
|
|
63
|
+
countLinks(): Promise<number>;
|
|
64
|
+
listCollections(): Promise<string[]>;
|
|
65
|
+
listStreams(): Promise<string[]>;
|
|
66
|
+
listQueues(): Promise<string[]>;
|
|
67
|
+
private sendAggregateRequest;
|
|
68
|
+
readonly aggregate: {
|
|
69
|
+
count: (collection: string, options?: Omit<AggregateOptions, "function">) => Promise<AggregateResult>;
|
|
70
|
+
sum: (collection: string, field: string, options?: Omit<AggregateOptions, "function" | "field">) => Promise<AggregateResult>;
|
|
71
|
+
avg: (collection: string, field: string, options?: Omit<AggregateOptions, "function" | "field">) => Promise<AggregateResult>;
|
|
72
|
+
min: (collection: string, field: string, options?: Omit<AggregateOptions, "function" | "field">) => Promise<AggregateResult>;
|
|
73
|
+
max: (collection: string, field: string, options?: Omit<AggregateOptions, "function" | "field">) => Promise<AggregateResult>;
|
|
74
|
+
};
|
|
75
|
+
timeseries(collection: string, options: TimeSeriesOptions): Promise<TimeSeriesResult>;
|
|
76
|
+
schema(collection?: string, _options?: SchemaOptions): Promise<CollectionSchema[]>;
|
|
77
|
+
/** Parse and validate a schema source without modifying the database. */
|
|
78
|
+
validateSchema(source: string): Promise<{
|
|
79
|
+
schema: unknown;
|
|
80
|
+
hash: string;
|
|
81
|
+
}>;
|
|
82
|
+
/** Read the last applied canonical schema metadata. */
|
|
83
|
+
getSchemaDocument(): Promise<{
|
|
84
|
+
schemaJson: string;
|
|
85
|
+
hash: string;
|
|
86
|
+
updatedAt: string;
|
|
87
|
+
} | null>;
|
|
88
|
+
/** Read durable migration records. */
|
|
89
|
+
listMigrations(): Promise<Array<{
|
|
90
|
+
id: string;
|
|
91
|
+
hash: string;
|
|
92
|
+
appliedAt: string;
|
|
93
|
+
}>>;
|
|
94
|
+
nlqQuery(question: string, options?: NlqOptions): Promise<NlqResult>;
|
|
95
|
+
readonly nlq: {
|
|
96
|
+
query: (question: string, options?: NlqOptions) => Promise<NlqResult>;
|
|
97
|
+
};
|
|
98
|
+
close(): Promise<void>;
|
|
99
|
+
}
|
|
100
|
+
//# sourceMappingURL=client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/client.js
ADDED
|
@@ -0,0 +1,287 @@
|
|
|
1
|
+
function trimTrailingSlashes(s) {
|
|
2
|
+
let end = s.length;
|
|
3
|
+
while (end > 0 && s.charCodeAt(end - 1) === 47) {
|
|
4
|
+
end--;
|
|
5
|
+
}
|
|
6
|
+
return s.slice(0, end);
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Zero-dependency HTTP client for thingd REST API.
|
|
10
|
+
*
|
|
11
|
+
* Works in any runtime with `fetch()` — browsers, Cloudflare Workers,
|
|
12
|
+
* AWS Lambda, Bun, Deno, Node.js 18+.
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```ts
|
|
16
|
+
* const client = new ThingdClient({
|
|
17
|
+
* url: "https://api.thingd.cloud",
|
|
18
|
+
* authToken: "sk-...",
|
|
19
|
+
* });
|
|
20
|
+
* await client.put("notes", { id: "1", text: "hello" });
|
|
21
|
+
* ```
|
|
22
|
+
*/
|
|
23
|
+
export class ThingdClient {
|
|
24
|
+
options;
|
|
25
|
+
base;
|
|
26
|
+
constructor(options) {
|
|
27
|
+
this.options = options;
|
|
28
|
+
const base = trimTrailingSlashes(options.url);
|
|
29
|
+
this.base = base.endsWith("/v1") ? base : `${base}/v1`;
|
|
30
|
+
}
|
|
31
|
+
get token() {
|
|
32
|
+
return this.options.authToken;
|
|
33
|
+
}
|
|
34
|
+
async request(method, path, body) {
|
|
35
|
+
const headers = {};
|
|
36
|
+
if (body) {
|
|
37
|
+
headers["content-type"] = "application/json";
|
|
38
|
+
}
|
|
39
|
+
if (this.token) {
|
|
40
|
+
headers.authorization = `Bearer ${this.token}`;
|
|
41
|
+
}
|
|
42
|
+
const res = await fetch(`${this.base}${path}`, {
|
|
43
|
+
method,
|
|
44
|
+
headers,
|
|
45
|
+
body: body ? JSON.stringify(body) : undefined,
|
|
46
|
+
});
|
|
47
|
+
const json = await res.json();
|
|
48
|
+
if (!res.ok) {
|
|
49
|
+
const msg = json?.error?.message ?? `HTTP ${res.status}`;
|
|
50
|
+
throw new Error(msg);
|
|
51
|
+
}
|
|
52
|
+
return json.data;
|
|
53
|
+
}
|
|
54
|
+
// ── Objects ──────────────────────────────────────────
|
|
55
|
+
async put(collection, object) {
|
|
56
|
+
return this.request("PUT", `/objects/${encodeURIComponent(collection)}/${encodeURIComponent(object.id)}`, object);
|
|
57
|
+
}
|
|
58
|
+
async get(collection, id) {
|
|
59
|
+
try {
|
|
60
|
+
return await this.request("GET", `/objects/${encodeURIComponent(collection)}/${encodeURIComponent(id)}`);
|
|
61
|
+
}
|
|
62
|
+
catch (err) {
|
|
63
|
+
if (err instanceof Error && err.message.includes("404")) {
|
|
64
|
+
return null;
|
|
65
|
+
}
|
|
66
|
+
throw err;
|
|
67
|
+
}
|
|
68
|
+
}
|
|
69
|
+
async delete(collection, id) {
|
|
70
|
+
return this.request("DELETE", `/objects/${encodeURIComponent(collection)}/${encodeURIComponent(id)}`);
|
|
71
|
+
}
|
|
72
|
+
async listObjects(collection, options) {
|
|
73
|
+
const params = new URLSearchParams({ collection });
|
|
74
|
+
if (options?.limit) {
|
|
75
|
+
params.set("limit", String(options.limit));
|
|
76
|
+
}
|
|
77
|
+
if (options?.offset) {
|
|
78
|
+
params.set("offset", String(options.offset));
|
|
79
|
+
}
|
|
80
|
+
if (options?.filter) {
|
|
81
|
+
for (const [k, v] of Object.entries(options.filter)) {
|
|
82
|
+
params.set(`filter.${k}`, String(v));
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
if (options?.sortBy) {
|
|
86
|
+
params.set("sortBy", options.sortBy.field);
|
|
87
|
+
if (options.sortBy.direction) {
|
|
88
|
+
params.set("sortDir", options.sortBy.direction);
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
return this.request("GET", `/objects?${params}`);
|
|
92
|
+
}
|
|
93
|
+
async putBatch(collection, objects) {
|
|
94
|
+
return this.request("PUT", `/objects/batch?collection=${encodeURIComponent(collection)}`, objects);
|
|
95
|
+
}
|
|
96
|
+
async deleteBatch(collection, ids) {
|
|
97
|
+
const result = await this.request("DELETE", `/objects/batch?collection=${encodeURIComponent(collection)}`, ids);
|
|
98
|
+
return result.deleted;
|
|
99
|
+
}
|
|
100
|
+
// ── Search ───────────────────────────────────────────
|
|
101
|
+
async search(query, options = {}) {
|
|
102
|
+
return this.request("POST", "/search", { query, ...options });
|
|
103
|
+
}
|
|
104
|
+
/** Search objects by vector similarity (cosine similarity). */
|
|
105
|
+
async vectorSearch(collection, queryVector, options = {}) {
|
|
106
|
+
return this.request("POST", "/search/vector", {
|
|
107
|
+
collection,
|
|
108
|
+
vector: queryVector,
|
|
109
|
+
topK: options.topK,
|
|
110
|
+
filter: options.filter,
|
|
111
|
+
});
|
|
112
|
+
}
|
|
113
|
+
// ── Events ───────────────────────────────────────────
|
|
114
|
+
async appendEvent(stream, event) {
|
|
115
|
+
return this.request("POST", `/events/${encodeURIComponent(stream)}`, event);
|
|
116
|
+
}
|
|
117
|
+
async listEvents(stream, options) {
|
|
118
|
+
const params = new URLSearchParams();
|
|
119
|
+
if (stream) {
|
|
120
|
+
params.set("stream", stream);
|
|
121
|
+
}
|
|
122
|
+
if (options?.fromSequence) {
|
|
123
|
+
params.set("fromSequence", String(options.fromSequence));
|
|
124
|
+
}
|
|
125
|
+
if (options?.limit) {
|
|
126
|
+
params.set("limit", String(options.limit));
|
|
127
|
+
}
|
|
128
|
+
return this.request("GET", `/events?${params}`);
|
|
129
|
+
}
|
|
130
|
+
events = {
|
|
131
|
+
append: (stream, event) => this.appendEvent(stream, event),
|
|
132
|
+
list: (stream, options) => this.listEvents(stream, options),
|
|
133
|
+
};
|
|
134
|
+
// ── Queues ───────────────────────────────────────────
|
|
135
|
+
async pushJob(queue, payload, options = {}) {
|
|
136
|
+
return this.request("POST", `/queues/${encodeURIComponent(queue)}/push`, {
|
|
137
|
+
payload,
|
|
138
|
+
...options,
|
|
139
|
+
});
|
|
140
|
+
}
|
|
141
|
+
async claimJob(queue, options = {}) {
|
|
142
|
+
return this.request("POST", `/queues/${encodeURIComponent(queue)}/claim`, options);
|
|
143
|
+
}
|
|
144
|
+
async ackJob(queue, jobId) {
|
|
145
|
+
return this.request("POST", `/queues/${encodeURIComponent(queue)}/ack`, {
|
|
146
|
+
jobId,
|
|
147
|
+
});
|
|
148
|
+
}
|
|
149
|
+
async nackJob(queue, jobId, nackOptions = {}) {
|
|
150
|
+
return this.request("POST", `/queues/${encodeURIComponent(queue)}/nack`, {
|
|
151
|
+
jobId,
|
|
152
|
+
...nackOptions,
|
|
153
|
+
});
|
|
154
|
+
}
|
|
155
|
+
async listJobs(queue) {
|
|
156
|
+
return this.request("GET", `/queues/${encodeURIComponent(queue)}/jobs`);
|
|
157
|
+
}
|
|
158
|
+
async listDeadJobs(queue) {
|
|
159
|
+
return this.request("GET", `/queues/${encodeURIComponent(queue)}/dead`);
|
|
160
|
+
}
|
|
161
|
+
queue(name) {
|
|
162
|
+
return {
|
|
163
|
+
push: (payload, options) => this.pushJob(name, payload, options),
|
|
164
|
+
claim: (options) => this.claimJob(name, options),
|
|
165
|
+
ack: (jobId) => this.ackJob(name, jobId),
|
|
166
|
+
nack: (jobId, opts) => this.nackJob(name, jobId, opts),
|
|
167
|
+
list: () => this.listJobs(name),
|
|
168
|
+
dead: () => this.listDeadJobs(name),
|
|
169
|
+
};
|
|
170
|
+
}
|
|
171
|
+
// ── Links ────────────────────────────────────────────
|
|
172
|
+
async createLink(fromRef, linkType, toRef, weight, metadataJson) {
|
|
173
|
+
return this.request("POST", "/links", {
|
|
174
|
+
fromRef,
|
|
175
|
+
linkType,
|
|
176
|
+
toRef,
|
|
177
|
+
weight,
|
|
178
|
+
metadataJson,
|
|
179
|
+
});
|
|
180
|
+
}
|
|
181
|
+
async deleteLink(id) {
|
|
182
|
+
const result = await this.request("DELETE", `/links/${encodeURIComponent(id)}`);
|
|
183
|
+
return result.deleted;
|
|
184
|
+
}
|
|
185
|
+
async getLink(id) {
|
|
186
|
+
try {
|
|
187
|
+
return await this.request("GET", `/links/${encodeURIComponent(id)}`);
|
|
188
|
+
}
|
|
189
|
+
catch (err) {
|
|
190
|
+
if (err instanceof Error && err.message.includes("404")) {
|
|
191
|
+
return null;
|
|
192
|
+
}
|
|
193
|
+
throw err;
|
|
194
|
+
}
|
|
195
|
+
}
|
|
196
|
+
async getNeighbors(reference, direction = "Both", options = {}) {
|
|
197
|
+
const params = new URLSearchParams({ reference, direction });
|
|
198
|
+
if (options.linkType) {
|
|
199
|
+
params.set("linkType", options.linkType);
|
|
200
|
+
}
|
|
201
|
+
if (options.limit) {
|
|
202
|
+
params.set("limit", String(options.limit));
|
|
203
|
+
}
|
|
204
|
+
return this.request("GET", `/links?${params}`);
|
|
205
|
+
}
|
|
206
|
+
links = {
|
|
207
|
+
create: (fromRef, linkType, toRef, weight, metadataJson) => this.createLink(fromRef, linkType, toRef, weight, metadataJson),
|
|
208
|
+
delete: (id) => this.deleteLink(id),
|
|
209
|
+
get: (id) => this.getLink(id),
|
|
210
|
+
neighbors: (reference, direction, options) => this.getNeighbors(reference, direction, options),
|
|
211
|
+
};
|
|
212
|
+
// ── Counts ───────────────────────────────────────────
|
|
213
|
+
async countObjects() {
|
|
214
|
+
const result = await this.request("GET", "/counts/objects");
|
|
215
|
+
return result.count;
|
|
216
|
+
}
|
|
217
|
+
async countEvents() {
|
|
218
|
+
const result = await this.request("GET", "/counts/events");
|
|
219
|
+
return result.count;
|
|
220
|
+
}
|
|
221
|
+
async countActiveJobs() {
|
|
222
|
+
return 0;
|
|
223
|
+
}
|
|
224
|
+
async countDeadJobs() {
|
|
225
|
+
return 0;
|
|
226
|
+
}
|
|
227
|
+
async countLinks() {
|
|
228
|
+
const result = await this.request("GET", "/counts/links");
|
|
229
|
+
return result.count;
|
|
230
|
+
}
|
|
231
|
+
// ── Discovery ────────────────────────────────────────
|
|
232
|
+
async listCollections() {
|
|
233
|
+
return this.request("GET", "/collections");
|
|
234
|
+
}
|
|
235
|
+
async listStreams() {
|
|
236
|
+
return this.request("GET", "/streams");
|
|
237
|
+
}
|
|
238
|
+
async listQueues() {
|
|
239
|
+
return this.request("GET", "/queues");
|
|
240
|
+
}
|
|
241
|
+
// ── Aggregate ────────────────────────────────────────
|
|
242
|
+
async sendAggregateRequest(collection, options) {
|
|
243
|
+
return this.request("POST", "/aggregate", { collection, ...options });
|
|
244
|
+
}
|
|
245
|
+
aggregate = {
|
|
246
|
+
count: (collection, options = {}) => this.sendAggregateRequest(collection, { ...options, function: "count" }),
|
|
247
|
+
sum: (collection, field, options = {}) => this.sendAggregateRequest(collection, { ...options, function: "sum", field }),
|
|
248
|
+
avg: (collection, field, options = {}) => this.sendAggregateRequest(collection, { ...options, function: "avg", field }),
|
|
249
|
+
min: (collection, field, options = {}) => this.sendAggregateRequest(collection, { ...options, function: "min", field }),
|
|
250
|
+
max: (collection, field, options = {}) => this.sendAggregateRequest(collection, { ...options, function: "max", field }),
|
|
251
|
+
};
|
|
252
|
+
async timeseries(collection, options) {
|
|
253
|
+
return this.request("POST", "/aggregate/timeseries", {
|
|
254
|
+
collection,
|
|
255
|
+
...options,
|
|
256
|
+
});
|
|
257
|
+
}
|
|
258
|
+
// ── Schema ───────────────────────────────────────────
|
|
259
|
+
async schema(collection, _options) {
|
|
260
|
+
if (collection) {
|
|
261
|
+
return this.request("GET", `/collections/${encodeURIComponent(collection)}/schema`);
|
|
262
|
+
}
|
|
263
|
+
return this.request("GET", "/collections/schema");
|
|
264
|
+
}
|
|
265
|
+
/** Parse and validate a schema source without modifying the database. */
|
|
266
|
+
async validateSchema(source) {
|
|
267
|
+
return this.request("POST", "/schema/validate", { source });
|
|
268
|
+
}
|
|
269
|
+
/** Read the last applied canonical schema metadata. */
|
|
270
|
+
async getSchemaDocument() {
|
|
271
|
+
return this.request("GET", "/schema/current");
|
|
272
|
+
}
|
|
273
|
+
/** Read durable migration records. */
|
|
274
|
+
async listMigrations() {
|
|
275
|
+
return this.request("GET", "/migrations");
|
|
276
|
+
}
|
|
277
|
+
// ── NLQ ──────────────────────────────────────────────
|
|
278
|
+
async nlqQuery(question, options) {
|
|
279
|
+
return this.request("POST", "/nlq", { question, ...options });
|
|
280
|
+
}
|
|
281
|
+
nlq = {
|
|
282
|
+
query: (question, options) => this.nlqQuery(question, options),
|
|
283
|
+
};
|
|
284
|
+
// ── Lifecycle ────────────────────────────────────────
|
|
285
|
+
async close() { }
|
|
286
|
+
}
|
|
287
|
+
//# sourceMappingURL=client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
ADDED
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
export { createThingdAppClient, ThingdAppClient, type ThingdAppClientOptions, ThingdAppError, } from "./app.js";
|
|
2
|
+
export { ThingdClient, type ThingdClientOptions } from "./client.js";
|
|
3
|
+
export type { AggregateOptions, AggregateResult, AppAuthResponse, AppFunction, AppManifest, AppObject, AppSearchOptions, AppSearchResult, AppUser, CollectionSchema, Link, LinkDirection, LinkQueryOptions, ListEventsOptions, ListObjectsOptions, MemoryEvent, MemoryObject, MemoryQueue, MemorySearchOptions, MemorySearchResult, NlqOptions, NlqResult, QueueClaimOptions, QueueJob, QueueJobOptions, QueueJobPayload, QueueJobResult, QueueJobStatus, QueueNackOptions, SchemaOptions, SortBy, StoredMemoryEvent, StoredMemoryObject, ThingDeleteResult, TimeSeriesOptions, TimeSeriesResult, } from "./types.js";
|
|
4
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,eAAe,EACf,KAAK,sBAAsB,EAC3B,cAAc,GACf,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,YAAY,EAAE,KAAK,mBAAmB,EAAE,MAAM,aAAa,CAAC;AACrE,YAAY,EACV,gBAAgB,EAChB,eAAe,EACf,eAAe,EACf,WAAW,EACX,WAAW,EACX,SAAS,EACT,gBAAgB,EAChB,eAAe,EACf,OAAO,EACP,gBAAgB,EAChB,IAAI,EACJ,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,kBAAkB,EAClB,WAAW,EACX,YAAY,EACZ,WAAW,EACX,mBAAmB,EACnB,kBAAkB,EAClB,UAAU,EACV,SAAS,EACT,iBAAiB,EACjB,QAAQ,EACR,eAAe,EACf,eAAe,EACf,cAAc,EACd,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,MAAM,EACN,iBAAiB,EACjB,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,GACjB,MAAM,YAAY,CAAC"}
|
package/dist/index.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,qBAAqB,EACrB,eAAe,EAEf,cAAc,GACf,MAAM,UAAU,CAAC;AAClB,OAAO,EAAE,YAAY,EAA4B,MAAM,aAAa,CAAC"}
|
package/dist/types.d.ts
ADDED
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
export type MemoryObject = {
|
|
2
|
+
id: string;
|
|
3
|
+
[key: string]: unknown;
|
|
4
|
+
};
|
|
5
|
+
export type StoredMemoryObject = MemoryObject & {
|
|
6
|
+
collection: string;
|
|
7
|
+
createdAt: string;
|
|
8
|
+
updatedAt: string;
|
|
9
|
+
version: number;
|
|
10
|
+
};
|
|
11
|
+
export type PutOptions = {
|
|
12
|
+
expectedVersion?: number;
|
|
13
|
+
};
|
|
14
|
+
export type ThingDeleteResult = {
|
|
15
|
+
deleted: boolean;
|
|
16
|
+
};
|
|
17
|
+
export type SortBy = {
|
|
18
|
+
field: "id" | "collection" | "created_at" | "updated_at" | "version";
|
|
19
|
+
direction?: "asc" | "desc";
|
|
20
|
+
};
|
|
21
|
+
export type ListObjectsOptions = {
|
|
22
|
+
limit?: number;
|
|
23
|
+
offset?: number;
|
|
24
|
+
filter?: Record<string, string>;
|
|
25
|
+
sortBy?: SortBy;
|
|
26
|
+
};
|
|
27
|
+
export type AppUser = {
|
|
28
|
+
id: string;
|
|
29
|
+
email: string;
|
|
30
|
+
name: string;
|
|
31
|
+
role: string;
|
|
32
|
+
createdAt: string;
|
|
33
|
+
};
|
|
34
|
+
export type AppAuthResponse = {
|
|
35
|
+
user: AppUser;
|
|
36
|
+
accessToken: string;
|
|
37
|
+
refreshToken: string;
|
|
38
|
+
expiresIn: number;
|
|
39
|
+
};
|
|
40
|
+
export type AppFunction = {
|
|
41
|
+
name: string;
|
|
42
|
+
description: string;
|
|
43
|
+
auth: "public" | "user" | "role";
|
|
44
|
+
roles?: string[];
|
|
45
|
+
inputSchema: Record<string, unknown>;
|
|
46
|
+
outputSchema: Record<string, unknown>;
|
|
47
|
+
version: number;
|
|
48
|
+
idempotency: "optional" | "required";
|
|
49
|
+
};
|
|
50
|
+
export type AppManifest = {
|
|
51
|
+
version: string;
|
|
52
|
+
project: {
|
|
53
|
+
id: string;
|
|
54
|
+
slug: string;
|
|
55
|
+
};
|
|
56
|
+
functions: AppFunction[];
|
|
57
|
+
capabilities: {
|
|
58
|
+
reads: boolean;
|
|
59
|
+
namedWrites: boolean;
|
|
60
|
+
};
|
|
61
|
+
};
|
|
62
|
+
export type AppObject = {
|
|
63
|
+
id: string;
|
|
64
|
+
[key: string]: unknown;
|
|
65
|
+
};
|
|
66
|
+
export type AppSearchOptions = {
|
|
67
|
+
collections?: string[];
|
|
68
|
+
limit?: number;
|
|
69
|
+
};
|
|
70
|
+
export type AppSearchResult = {
|
|
71
|
+
id: string;
|
|
72
|
+
collection?: string;
|
|
73
|
+
score: number;
|
|
74
|
+
value: Record<string, unknown>;
|
|
75
|
+
};
|
|
76
|
+
export type MemoryEvent = {
|
|
77
|
+
type: string;
|
|
78
|
+
text?: string;
|
|
79
|
+
[key: string]: unknown;
|
|
80
|
+
};
|
|
81
|
+
export type StoredMemoryEvent = MemoryEvent & {
|
|
82
|
+
id: string;
|
|
83
|
+
stream: string;
|
|
84
|
+
sequence: number;
|
|
85
|
+
createdAt: string;
|
|
86
|
+
};
|
|
87
|
+
export type ListEventsOptions = {
|
|
88
|
+
fromSequence?: number;
|
|
89
|
+
limit?: number;
|
|
90
|
+
since?: string;
|
|
91
|
+
};
|
|
92
|
+
export type QueueJobPayload = Record<string, unknown>;
|
|
93
|
+
export type QueueJobStatus = "ready" | "leased" | "completed" | "dead";
|
|
94
|
+
export type QueueJob = {
|
|
95
|
+
id: string;
|
|
96
|
+
queue: string;
|
|
97
|
+
payload: QueueJobPayload;
|
|
98
|
+
status: QueueJobStatus;
|
|
99
|
+
attempts: number;
|
|
100
|
+
maxAttempts: number;
|
|
101
|
+
createdAt: string;
|
|
102
|
+
availableAt: string;
|
|
103
|
+
leasedAt?: string;
|
|
104
|
+
leaseExpiresAt?: string;
|
|
105
|
+
completedAt?: string;
|
|
106
|
+
deadAt?: string;
|
|
107
|
+
lastError?: string;
|
|
108
|
+
};
|
|
109
|
+
export type QueueJobOptions = {
|
|
110
|
+
idempotencyKey?: string;
|
|
111
|
+
maxAttempts?: number;
|
|
112
|
+
delayMs?: number;
|
|
113
|
+
};
|
|
114
|
+
export type QueueClaimOptions = {
|
|
115
|
+
leaseMs?: number;
|
|
116
|
+
};
|
|
117
|
+
export type QueueNackOptions = {
|
|
118
|
+
delayMs?: number;
|
|
119
|
+
error?: string;
|
|
120
|
+
};
|
|
121
|
+
export type QueueJobResult = {
|
|
122
|
+
ok: true;
|
|
123
|
+
job: QueueJob;
|
|
124
|
+
} | {
|
|
125
|
+
ok: false;
|
|
126
|
+
reason: "not_found" | "not_leased" | "terminal";
|
|
127
|
+
};
|
|
128
|
+
export type MemoryQueue = {
|
|
129
|
+
push(payload: QueueJobPayload, options?: QueueJobOptions): Promise<QueueJob>;
|
|
130
|
+
claim(options?: QueueClaimOptions): Promise<QueueJob | null>;
|
|
131
|
+
ack(jobId: string): Promise<QueueJobResult>;
|
|
132
|
+
nack(jobId: string, options?: QueueNackOptions): Promise<QueueJobResult>;
|
|
133
|
+
list(): Promise<QueueJob[]>;
|
|
134
|
+
dead(): Promise<QueueJob[]>;
|
|
135
|
+
};
|
|
136
|
+
export type MemorySearchOptions = {
|
|
137
|
+
collections?: string[];
|
|
138
|
+
limit?: number;
|
|
139
|
+
filter?: Record<string, string>;
|
|
140
|
+
};
|
|
141
|
+
export type MemorySearchResult = {
|
|
142
|
+
kind: "object" | "event";
|
|
143
|
+
id: string;
|
|
144
|
+
collection?: string;
|
|
145
|
+
stream?: string;
|
|
146
|
+
score: number;
|
|
147
|
+
value: Record<string, unknown>;
|
|
148
|
+
};
|
|
149
|
+
export type VectorSearchOptions = {
|
|
150
|
+
topK?: number;
|
|
151
|
+
filter?: Record<string, unknown>;
|
|
152
|
+
};
|
|
153
|
+
export type VectorSearchHit = {
|
|
154
|
+
id: string;
|
|
155
|
+
score: number;
|
|
156
|
+
value: Record<string, unknown>;
|
|
157
|
+
};
|
|
158
|
+
export type LinkDirection = "Outgoing" | "Incoming" | "Both";
|
|
159
|
+
export type Link = {
|
|
160
|
+
id: string;
|
|
161
|
+
fromRef: string;
|
|
162
|
+
linkType: string;
|
|
163
|
+
toRef: string;
|
|
164
|
+
weight?: number;
|
|
165
|
+
metadataJson: string;
|
|
166
|
+
createdAt: string;
|
|
167
|
+
};
|
|
168
|
+
export type LinkQueryOptions = {
|
|
169
|
+
linkType?: string;
|
|
170
|
+
limit?: number;
|
|
171
|
+
};
|
|
172
|
+
export type AggregateOptions = {
|
|
173
|
+
function: "count" | "sum" | "avg" | "min" | "max";
|
|
174
|
+
field?: string;
|
|
175
|
+
groupBy?: string;
|
|
176
|
+
filter?: Record<string, string>;
|
|
177
|
+
};
|
|
178
|
+
export type AggregateGroupResult = {
|
|
179
|
+
key: string;
|
|
180
|
+
value: number;
|
|
181
|
+
};
|
|
182
|
+
export type AggregateResult = {
|
|
183
|
+
total: number;
|
|
184
|
+
groups: AggregateGroupResult[];
|
|
185
|
+
};
|
|
186
|
+
export type TimeBucket = "hour" | "day" | "week" | "month";
|
|
187
|
+
export type TimeSeriesOptions = {
|
|
188
|
+
function: "count" | "sum" | "avg" | "min" | "max";
|
|
189
|
+
field?: string;
|
|
190
|
+
bucket: TimeBucket;
|
|
191
|
+
from?: string;
|
|
192
|
+
to?: string;
|
|
193
|
+
filter?: Record<string, string>;
|
|
194
|
+
};
|
|
195
|
+
export type TimeSeriesBucket = {
|
|
196
|
+
label: string;
|
|
197
|
+
value: number;
|
|
198
|
+
};
|
|
199
|
+
export type TimeSeriesResult = {
|
|
200
|
+
buckets: TimeSeriesBucket[];
|
|
201
|
+
};
|
|
202
|
+
export type FieldSchema = {
|
|
203
|
+
name: string;
|
|
204
|
+
type: "string" | "number" | "boolean" | "date" | "null" | "unknown";
|
|
205
|
+
nullable: boolean;
|
|
206
|
+
sampleValues: unknown[];
|
|
207
|
+
};
|
|
208
|
+
export type CollectionSchema = {
|
|
209
|
+
name: string;
|
|
210
|
+
objectCount: number;
|
|
211
|
+
fields: FieldSchema[];
|
|
212
|
+
};
|
|
213
|
+
export type SchemaOptions = {
|
|
214
|
+
sampleSize?: number;
|
|
215
|
+
};
|
|
216
|
+
export type NlqOptions = {
|
|
217
|
+
collections?: string[];
|
|
218
|
+
model?: string;
|
|
219
|
+
maxTokens?: number;
|
|
220
|
+
};
|
|
221
|
+
export type NlqResult = {
|
|
222
|
+
answer: string;
|
|
223
|
+
sql?: string;
|
|
224
|
+
data?: Record<string, unknown>[];
|
|
225
|
+
error?: string;
|
|
226
|
+
};
|
|
227
|
+
//# sourceMappingURL=types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
|
package/dist/types.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,wDAAwD"}
|