@vtriv/sdk 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/client.d.ts +73 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/errors.d.ts +47 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/index.d.ts +16 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1073 -0
- package/dist/services/ai.d.ts +46 -0
- package/dist/services/ai.d.ts.map +1 -0
- package/dist/services/auth.d.ts +113 -0
- package/dist/services/auth.d.ts.map +1 -0
- package/dist/services/blob.d.ts +49 -0
- package/dist/services/blob.d.ts.map +1 -0
- package/dist/services/cron.d.ts +54 -0
- package/dist/services/cron.d.ts.map +1 -0
- package/dist/services/db.d.ts +45 -0
- package/dist/services/db.d.ts.map +1 -0
- package/dist/services/search.d.ts +38 -0
- package/dist/services/search.d.ts.map +1 -0
- package/dist/types.d.ts +323 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/utils/fetch.d.ts +28 -0
- package/dist/utils/fetch.d.ts.map +1 -0
- package/dist/utils/token.d.ts +73 -0
- package/dist/utils/token.d.ts.map +1 -0
- package/package.json +45 -0
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* vtriv SDK - AI Service
|
|
3
|
+
*
|
|
4
|
+
* Handles AI completions and embeddings
|
|
5
|
+
*/
|
|
6
|
+
import type { AiConfig, ChatCompletionChunk, ChatCompletionRequest, ChatCompletionResponse, ChatMessage, EmbeddingResponse, OkResponse, UsageStats } from "../types.js";
|
|
7
|
+
import type { FetchContext } from "../utils/fetch.js";
|
|
8
|
+
export declare class AiService {
|
|
9
|
+
private ctx;
|
|
10
|
+
private aiBaseUrl;
|
|
11
|
+
constructor(ctx: FetchContext, options?: {
|
|
12
|
+
aiBaseUrl?: string;
|
|
13
|
+
});
|
|
14
|
+
private get aiCtx();
|
|
15
|
+
/**
|
|
16
|
+
* Create a chat completion (non-streaming)
|
|
17
|
+
*/
|
|
18
|
+
chat(messages: ChatMessage[], options?: Omit<ChatCompletionRequest, "messages" | "stream">): Promise<ChatCompletionResponse>;
|
|
19
|
+
/**
|
|
20
|
+
* Create a streaming chat completion
|
|
21
|
+
* Returns an async generator of content chunks
|
|
22
|
+
*/
|
|
23
|
+
chatStream(messages: ChatMessage[], options?: Omit<ChatCompletionRequest, "messages" | "stream">): AsyncGenerator<string, void, unknown>;
|
|
24
|
+
/**
|
|
25
|
+
* Create a streaming chat completion (raw chunks)
|
|
26
|
+
* Returns the full chunk objects for more control
|
|
27
|
+
*/
|
|
28
|
+
chatStreamRaw(messages: ChatMessage[], options?: Omit<ChatCompletionRequest, "messages" | "stream">): AsyncGenerator<ChatCompletionChunk, void, unknown>;
|
|
29
|
+
/**
|
|
30
|
+
* Generate embeddings
|
|
31
|
+
*/
|
|
32
|
+
embed(input: string | string[], model?: string): Promise<EmbeddingResponse>;
|
|
33
|
+
/**
|
|
34
|
+
* Get usage statistics
|
|
35
|
+
*/
|
|
36
|
+
getUsage(periodDays?: number): Promise<UsageStats>;
|
|
37
|
+
/**
|
|
38
|
+
* Get AI configuration for the project
|
|
39
|
+
*/
|
|
40
|
+
getConfig(): Promise<AiConfig>;
|
|
41
|
+
/**
|
|
42
|
+
* Update AI configuration for the project
|
|
43
|
+
*/
|
|
44
|
+
updateConfig(config: Partial<AiConfig>): Promise<OkResponse>;
|
|
45
|
+
}
|
|
46
|
+
//# sourceMappingURL=ai.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ai.d.ts","sourceRoot":"","sources":["../../src/services/ai.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACX,QAAQ,EACR,mBAAmB,EACnB,qBAAqB,EACrB,sBAAsB,EACtB,WAAW,EAEX,iBAAiB,EACjB,UAAU,EACV,UAAU,EACV,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAOtD,qBAAa,SAAS;IACrB,OAAO,CAAC,GAAG,CAAe;IAC1B,OAAO,CAAC,SAAS,CAAS;gBAEd,GAAG,EAAE,YAAY,EAAE,OAAO,GAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAO;IAKnE,OAAO,KAAK,KAAK,GAKhB;IAED;;OAEG;IACG,IAAI,CACT,QAAQ,EAAE,WAAW,EAAE,EACvB,OAAO,GAAE,IAAI,CAAC,qBAAqB,EAAE,UAAU,GAAG,QAAQ,CAAM,GAC9D,OAAO,CAAC,sBAAsB,CAAC;IAWlC;;;OAGG;IACI,UAAU,CAChB,QAAQ,EAAE,WAAW,EAAE,EACvB,OAAO,GAAE,IAAI,CAAC,qBAAqB,EAAE,UAAU,GAAG,QAAQ,CAAM,GAC9D,cAAc,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC;IAuBxC;;;OAGG;IACI,aAAa,CACnB,QAAQ,EAAE,WAAW,EAAE,EACvB,OAAO,GAAE,IAAI,CAAC,qBAAqB,EAAE,UAAU,GAAG,QAAQ,CAAM,GAC9D,cAAc,CAAC,mBAAmB,EAAE,IAAI,EAAE,OAAO,CAAC;IAmBrD;;OAEG;IACG,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,EAAE,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC;IAYjF;;OAEG;IACG,QAAQ,CAAC,UAAU,SAAK,GAAG,OAAO,CAAC,UAAU,CAAC;IAIpD;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC,QAAQ,CAAC;IAIpC;;OAEG;IACG,YAAY,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,UAAU,CAAC;CAMlE"}
|
|
@@ -0,0 +1,113 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* vtriv SDK - Auth Service
|
|
3
|
+
*
|
|
4
|
+
* Handles authentication, user management, and token minting
|
|
5
|
+
*/
|
|
6
|
+
import type { Account, AccountCreateResponse, AccountWithProjects, ApiKey, ApiKeyCreateResponse, CreateUserData, LoginCredentials, MintTokenRequest, OkResponse, ProjectConfig, RegisterData, TokenPair, UpdateUserData, User } from "../types.js";
|
|
7
|
+
import type { FetchContext } from "../utils/fetch.js";
|
|
8
|
+
import type { TokenManager } from "../utils/token.js";
|
|
9
|
+
export interface AccountsApi {
|
|
10
|
+
/** Create a new account (root key only) */
|
|
11
|
+
create(name?: string): Promise<AccountCreateResponse>;
|
|
12
|
+
/** List all accounts (root key only) */
|
|
13
|
+
list(): Promise<Account[]>;
|
|
14
|
+
/** Get account by ID with owned projects */
|
|
15
|
+
get(id: string): Promise<AccountWithProjects>;
|
|
16
|
+
/** Delete an account */
|
|
17
|
+
delete(id: string): Promise<OkResponse>;
|
|
18
|
+
}
|
|
19
|
+
export interface ProjectsApi {
|
|
20
|
+
/** Create a new project */
|
|
21
|
+
create(name: string, config?: Partial<ProjectConfig>): Promise<ProjectConfig>;
|
|
22
|
+
/** List projects (account key sees own, root sees all) */
|
|
23
|
+
list(): Promise<ProjectConfig[]>;
|
|
24
|
+
/** Get project by name */
|
|
25
|
+
get(name: string): Promise<ProjectConfig>;
|
|
26
|
+
/** Update project config */
|
|
27
|
+
update(name: string, config: Partial<ProjectConfig>): Promise<ProjectConfig>;
|
|
28
|
+
/** Delete a project */
|
|
29
|
+
delete(name: string): Promise<OkResponse>;
|
|
30
|
+
}
|
|
31
|
+
export interface UsersAdminApi {
|
|
32
|
+
/** Create a user (pre-verified) */
|
|
33
|
+
create(data: CreateUserData): Promise<User>;
|
|
34
|
+
/** List all users */
|
|
35
|
+
list(): Promise<User[]>;
|
|
36
|
+
/** Get user by ID */
|
|
37
|
+
get(id: string): Promise<User>;
|
|
38
|
+
/** Update user */
|
|
39
|
+
update(id: string, data: UpdateUserData): Promise<OkResponse>;
|
|
40
|
+
/** Delete user */
|
|
41
|
+
delete(id: string): Promise<OkResponse>;
|
|
42
|
+
}
|
|
43
|
+
export interface ApiKeysApi {
|
|
44
|
+
/** Create a new API key */
|
|
45
|
+
create(name?: string): Promise<ApiKeyCreateResponse>;
|
|
46
|
+
/** List API keys */
|
|
47
|
+
list(): Promise<ApiKey[]>;
|
|
48
|
+
/** Delete an API key */
|
|
49
|
+
delete(id: string): Promise<OkResponse>;
|
|
50
|
+
}
|
|
51
|
+
export interface MeApi {
|
|
52
|
+
/** Get current user */
|
|
53
|
+
get(): Promise<User>;
|
|
54
|
+
/** Update profile */
|
|
55
|
+
updateProfile(profile: Record<string, unknown>): Promise<User>;
|
|
56
|
+
/** Change password */
|
|
57
|
+
changePassword(password: string): Promise<OkResponse>;
|
|
58
|
+
}
|
|
59
|
+
export declare class AuthService {
|
|
60
|
+
private ctx;
|
|
61
|
+
private tokenManager;
|
|
62
|
+
private project;
|
|
63
|
+
private authBaseUrl;
|
|
64
|
+
constructor(ctx: FetchContext, options?: {
|
|
65
|
+
tokenManager?: TokenManager;
|
|
66
|
+
project?: string;
|
|
67
|
+
authBaseUrl?: string;
|
|
68
|
+
});
|
|
69
|
+
private get authCtx();
|
|
70
|
+
/** Account management (root key only) */
|
|
71
|
+
get accounts(): AccountsApi;
|
|
72
|
+
/** Project management */
|
|
73
|
+
get projects(): ProjectsApi;
|
|
74
|
+
/** User management (admin) - requires project context */
|
|
75
|
+
users(projectName?: string): UsersAdminApi;
|
|
76
|
+
/** API key management - requires project context */
|
|
77
|
+
apiKeys(projectName?: string): ApiKeysApi;
|
|
78
|
+
/**
|
|
79
|
+
* Mint an arbitrary token (backend mode with API key)
|
|
80
|
+
*/
|
|
81
|
+
mintToken(req?: MintTokenRequest): Promise<string>;
|
|
82
|
+
/**
|
|
83
|
+
* Register a new user
|
|
84
|
+
*/
|
|
85
|
+
register(data: RegisterData): Promise<{
|
|
86
|
+
message: string;
|
|
87
|
+
}>;
|
|
88
|
+
/**
|
|
89
|
+
* Login with email/password
|
|
90
|
+
*/
|
|
91
|
+
login(credentials: LoginCredentials): Promise<TokenPair>;
|
|
92
|
+
/**
|
|
93
|
+
* Request a magic link
|
|
94
|
+
*/
|
|
95
|
+
requestMagicLink(email: string): Promise<{
|
|
96
|
+
message: string;
|
|
97
|
+
}>;
|
|
98
|
+
/**
|
|
99
|
+
* Refresh the access token
|
|
100
|
+
*/
|
|
101
|
+
refresh(refreshToken: string): Promise<TokenPair>;
|
|
102
|
+
/**
|
|
103
|
+
* Logout (clear tokens)
|
|
104
|
+
*/
|
|
105
|
+
logout(): void;
|
|
106
|
+
/** Current user operations */
|
|
107
|
+
get me(): MeApi;
|
|
108
|
+
/**
|
|
109
|
+
* Check if user is logged in (has tokens)
|
|
110
|
+
*/
|
|
111
|
+
isLoggedIn(): boolean;
|
|
112
|
+
}
|
|
113
|
+
//# sourceMappingURL=auth.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/services/auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* vtriv SDK - Blob Service
|
|
3
|
+
*
|
|
4
|
+
* Handles file storage operations
|
|
5
|
+
*/
|
|
6
|
+
import type { OkResponse, PresignedUrlResponse, UploadResponse } from "../types.js";
|
|
7
|
+
import type { FetchContext } from "../utils/fetch.js";
|
|
8
|
+
export declare class BlobService {
|
|
9
|
+
private ctx;
|
|
10
|
+
private project;
|
|
11
|
+
private blobBaseUrl;
|
|
12
|
+
constructor(ctx: FetchContext, project: string, options?: {
|
|
13
|
+
blobBaseUrl?: string;
|
|
14
|
+
});
|
|
15
|
+
private get blobCtx();
|
|
16
|
+
/**
|
|
17
|
+
* Upload a file
|
|
18
|
+
*/
|
|
19
|
+
upload(path: string, file: Blob | ArrayBuffer | ReadableStream, contentType?: string): Promise<UploadResponse>;
|
|
20
|
+
/**
|
|
21
|
+
* Download a file
|
|
22
|
+
*/
|
|
23
|
+
download(path: string): Promise<Blob>;
|
|
24
|
+
/**
|
|
25
|
+
* Get file metadata (HEAD request)
|
|
26
|
+
*/
|
|
27
|
+
stat(path: string): Promise<{
|
|
28
|
+
size: number;
|
|
29
|
+
contentType: string;
|
|
30
|
+
etag?: string;
|
|
31
|
+
lastModified?: string;
|
|
32
|
+
} | null>;
|
|
33
|
+
/**
|
|
34
|
+
* Delete a file
|
|
35
|
+
*/
|
|
36
|
+
delete(path: string): Promise<OkResponse>;
|
|
37
|
+
/**
|
|
38
|
+
* Get a presigned download URL
|
|
39
|
+
*/
|
|
40
|
+
getPresignedDownloadUrl(path: string, expiresIn?: number): Promise<PresignedUrlResponse>;
|
|
41
|
+
/**
|
|
42
|
+
* Get a presigned upload URL
|
|
43
|
+
*/
|
|
44
|
+
getPresignedUploadUrl(path: string, options?: {
|
|
45
|
+
expiresIn?: number;
|
|
46
|
+
contentType?: string;
|
|
47
|
+
}): Promise<PresignedUrlResponse>;
|
|
48
|
+
}
|
|
49
|
+
//# sourceMappingURL=blob.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"blob.d.ts","sourceRoot":"","sources":["../../src/services/blob.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,UAAU,EAAE,oBAAoB,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;AACpF,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAGtD,qBAAa,WAAW;IACvB,OAAO,CAAC,GAAG,CAAe;IAC1B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,WAAW,CAAS;gBAEhB,GAAG,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAA;KAAO;IAMtF,OAAO,KAAK,OAAO,GAKlB;IAED;;OAEG;IACG,MAAM,CACX,IAAI,EAAE,MAAM,EACZ,IAAI,EAAE,IAAI,GAAG,WAAW,GAAG,cAAc,EACzC,WAAW,CAAC,EAAE,MAAM,GAClB,OAAO,CAAC,cAAc,CAAC;IAK1B;;OAEG;IACG,QAAQ,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAK3C;;OAEG;IACG,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC;QACjC,IAAI,EAAE,MAAM,CAAC;QACb,WAAW,EAAE,MAAM,CAAC;QACpB,IAAI,CAAC,EAAE,MAAM,CAAC;QACd,YAAY,CAAC,EAAE,MAAM,CAAC;KACtB,GAAG,IAAI,CAAC;IAiBT;;OAEG;IACG,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAM/C;;OAEG;IACG,uBAAuB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,SAAO,GAAG,OAAO,CAAC,oBAAoB,CAAC;IAO5F;;OAEG;IACG,qBAAqB,CAC1B,IAAI,EAAE,MAAM,EACZ,OAAO,GAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,CAAC,EAAE,MAAM,CAAA;KAAO,GACxD,OAAO,CAAC,oBAAoB,CAAC;CAShC"}
|
|
@@ -0,0 +1,54 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* vtriv SDK - Cron Service
|
|
3
|
+
*
|
|
4
|
+
* Handles scheduled job management
|
|
5
|
+
*/
|
|
6
|
+
import type { CronJob, CronJobWithKey, JobRun, OkResponse } from "../types.js";
|
|
7
|
+
import type { FetchContext } from "../utils/fetch.js";
|
|
8
|
+
export declare class CronService {
|
|
9
|
+
private ctx;
|
|
10
|
+
private project;
|
|
11
|
+
private cronBaseUrl;
|
|
12
|
+
constructor(ctx: FetchContext, project: string, options?: {
|
|
13
|
+
cronBaseUrl?: string;
|
|
14
|
+
});
|
|
15
|
+
private get cronCtx();
|
|
16
|
+
/**
|
|
17
|
+
* List all jobs
|
|
18
|
+
*/
|
|
19
|
+
listJobs(): Promise<CronJob[]>;
|
|
20
|
+
/**
|
|
21
|
+
* Set all jobs (replaces entire manifest)
|
|
22
|
+
*/
|
|
23
|
+
setJobs(jobs: CronJobWithKey[]): Promise<{
|
|
24
|
+
ok: true;
|
|
25
|
+
jobs: number;
|
|
26
|
+
}>;
|
|
27
|
+
/**
|
|
28
|
+
* Trigger a job manually
|
|
29
|
+
*/
|
|
30
|
+
triggerJob(jobId: string): Promise<{
|
|
31
|
+
ok: true;
|
|
32
|
+
message: string;
|
|
33
|
+
}>;
|
|
34
|
+
/**
|
|
35
|
+
* Upload a script
|
|
36
|
+
*/
|
|
37
|
+
uploadScript(name: string, content: string): Promise<OkResponse>;
|
|
38
|
+
/**
|
|
39
|
+
* Get a script
|
|
40
|
+
*/
|
|
41
|
+
getScript(name: string): Promise<string>;
|
|
42
|
+
/**
|
|
43
|
+
* Delete a script
|
|
44
|
+
*/
|
|
45
|
+
deleteScript(name: string): Promise<OkResponse>;
|
|
46
|
+
/**
|
|
47
|
+
* Get run history
|
|
48
|
+
*/
|
|
49
|
+
getRuns(options?: {
|
|
50
|
+
limit?: number;
|
|
51
|
+
jobId?: string;
|
|
52
|
+
}): Promise<JobRun[]>;
|
|
53
|
+
}
|
|
54
|
+
//# sourceMappingURL=cron.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"cron.d.ts","sourceRoot":"","sources":["../../src/services/cron.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAC/E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAOtD,qBAAa,WAAW;IACvB,OAAO,CAAC,GAAG,CAAe;IAC1B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,WAAW,CAAS;gBAEhB,GAAG,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE;QAAE,WAAW,CAAC,EAAE,MAAM,CAAA;KAAO;IAMtF,OAAO,KAAK,OAAO,GAKlB;IAED;;OAEG;IACG,QAAQ,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;IAKpC;;OAEG;IACG,OAAO,CAAC,IAAI,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC;QAAE,EAAE,EAAE,IAAI,CAAC;QAAC,IAAI,EAAE,MAAM,CAAA;KAAE,CAAC;IAO1E;;OAEG;IACG,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,EAAE,EAAE,IAAI,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC;IAQvE;;OAEG;IACG,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAyBtE;;OAEG;IACG,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAmB9C;;OAEG;IACG,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAMrD;;OAEG;IACG,OAAO,CAAC,OAAO,GAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAO,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;CAelF"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* vtriv SDK - Database Service
|
|
3
|
+
*
|
|
4
|
+
* Provides a fluent API for document database operations
|
|
5
|
+
*/
|
|
6
|
+
import type { BatchOperation, BatchResult, CollectionSchema, Document, ListOptions, ListResponse, OkResponse } from "../types.js";
|
|
7
|
+
import type { FetchContext } from "../utils/fetch.js";
|
|
8
|
+
export interface CollectionApi<T extends Document = Document> {
|
|
9
|
+
/** List documents with optional filters and pagination */
|
|
10
|
+
list(options?: ListOptions): Promise<ListResponse<T>>;
|
|
11
|
+
/** Get a document by ID */
|
|
12
|
+
get(id: string): Promise<T>;
|
|
13
|
+
/** Create a new document */
|
|
14
|
+
create(data: Omit<T, "id" | "_created_at" | "_updated_at">): Promise<T>;
|
|
15
|
+
/** Replace a document (full update) */
|
|
16
|
+
replace(id: string, data: Omit<T, "id" | "_created_at" | "_updated_at">): Promise<T>;
|
|
17
|
+
/** Patch a document (partial update) */
|
|
18
|
+
patch(id: string, data: Partial<Omit<T, "id" | "_created_at" | "_updated_at">>): Promise<T>;
|
|
19
|
+
/** Delete a document */
|
|
20
|
+
delete(id: string): Promise<OkResponse>;
|
|
21
|
+
/** Get collection schema */
|
|
22
|
+
getSchema(): Promise<CollectionSchema>;
|
|
23
|
+
/** Set collection schema */
|
|
24
|
+
setSchema(schema: CollectionSchema): Promise<OkResponse>;
|
|
25
|
+
}
|
|
26
|
+
export declare class DbService {
|
|
27
|
+
private ctx;
|
|
28
|
+
private project;
|
|
29
|
+
private dbBaseUrl;
|
|
30
|
+
constructor(ctx: FetchContext, project: string, options?: {
|
|
31
|
+
dbBaseUrl?: string;
|
|
32
|
+
});
|
|
33
|
+
private get dbCtx();
|
|
34
|
+
/**
|
|
35
|
+
* Get a collection API for a specific collection
|
|
36
|
+
*/
|
|
37
|
+
collection<T extends Document = Document>(name: string): CollectionApi<T>;
|
|
38
|
+
/**
|
|
39
|
+
* Execute multiple operations in a batch (transaction)
|
|
40
|
+
*/
|
|
41
|
+
batch(operations: BatchOperation[]): Promise<{
|
|
42
|
+
results: BatchResult[];
|
|
43
|
+
}>;
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=db.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"db.d.ts","sourceRoot":"","sources":["../../src/services/db.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACX,cAAc,EACd,WAAW,EACX,gBAAgB,EAChB,QAAQ,EACR,WAAW,EACX,YAAY,EACZ,UAAU,EACV,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAOtD,MAAM,WAAW,aAAa,CAAC,CAAC,SAAS,QAAQ,GAAG,QAAQ;IAC3D,0DAA0D;IAC1D,IAAI,CAAC,OAAO,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC;IACtD,2BAA2B;IAC3B,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAC5B,4BAA4B;IAC5B,MAAM,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,GAAG,aAAa,GAAG,aAAa,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACxE,uCAAuC;IACvC,OAAO,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,EAAE,IAAI,GAAG,aAAa,GAAG,aAAa,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACrF,wCAAwC;IACxC,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,EAAE,IAAI,GAAG,aAAa,GAAG,aAAa,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IAC5F,wBAAwB;IACxB,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IACxC,4BAA4B;IAC5B,SAAS,IAAI,OAAO,CAAC,gBAAgB,CAAC,CAAC;IACvC,4BAA4B;IAC5B,SAAS,CAAC,MAAM,EAAE,gBAAgB,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;CACzD;AAMD,qBAAa,SAAS;IACrB,OAAO,CAAC,GAAG,CAAe;IAC1B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,SAAS,CAAS;gBAEd,GAAG,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE;QAAE,SAAS,CAAC,EAAE,MAAM,CAAA;KAAO;IAMpF,OAAO,KAAK,KAAK,GAKhB;IAED;;OAEG;IACH,UAAU,CAAC,CAAC,SAAS,QAAQ,GAAG,QAAQ,EAAE,IAAI,EAAE,MAAM,GAAG,aAAa,CAAC,CAAC,CAAC;IAwEzE;;OAEG;IACG,KAAK,CAAC,UAAU,EAAE,cAAc,EAAE,GAAG,OAAO,CAAC;QAAE,OAAO,EAAE,WAAW,EAAE,CAAA;KAAE,CAAC;CAM9E"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* vtriv SDK - Search Service
|
|
3
|
+
*
|
|
4
|
+
* Handles vector/semantic search operations
|
|
5
|
+
*/
|
|
6
|
+
import type { IndexConfig, OkResponse, SearchDocument, SearchOptions, SearchResult } from "../types.js";
|
|
7
|
+
import type { FetchContext } from "../utils/fetch.js";
|
|
8
|
+
export interface IndexApi {
|
|
9
|
+
/** Get index configuration */
|
|
10
|
+
getConfig(): Promise<IndexConfig>;
|
|
11
|
+
/** Set index configuration (creates the index) */
|
|
12
|
+
setConfig(config: IndexConfig): Promise<OkResponse>;
|
|
13
|
+
/** Delete the index */
|
|
14
|
+
delete(): Promise<OkResponse>;
|
|
15
|
+
/** Index a document (upsert) */
|
|
16
|
+
index(doc: SearchDocument): Promise<{
|
|
17
|
+
ok: true;
|
|
18
|
+
id: string;
|
|
19
|
+
}>;
|
|
20
|
+
/** Delete a document from the index */
|
|
21
|
+
deleteDocument(id: string): Promise<OkResponse>;
|
|
22
|
+
/** Search the index */
|
|
23
|
+
search(query: string, options?: SearchOptions): Promise<SearchResult[]>;
|
|
24
|
+
}
|
|
25
|
+
export declare class SearchService {
|
|
26
|
+
private ctx;
|
|
27
|
+
private project;
|
|
28
|
+
private searchBaseUrl;
|
|
29
|
+
constructor(ctx: FetchContext, project: string, options?: {
|
|
30
|
+
searchBaseUrl?: string;
|
|
31
|
+
});
|
|
32
|
+
private get searchCtx();
|
|
33
|
+
/**
|
|
34
|
+
* Get an index API for a specific index
|
|
35
|
+
*/
|
|
36
|
+
index(name: string): IndexApi;
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=search.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search.d.ts","sourceRoot":"","sources":["../../src/services/search.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACX,WAAW,EACX,UAAU,EACV,cAAc,EACd,aAAa,EACb,YAAY,EACZ,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAOtD,MAAM,WAAW,QAAQ;IACxB,8BAA8B;IAC9B,SAAS,IAAI,OAAO,CAAC,WAAW,CAAC,CAAC;IAClC,kDAAkD;IAClD,SAAS,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IACpD,uBAAuB;IACvB,MAAM,IAAI,OAAO,CAAC,UAAU,CAAC,CAAC;IAC9B,gCAAgC;IAChC,KAAK,CAAC,GAAG,EAAE,cAAc,GAAG,OAAO,CAAC;QAAE,EAAE,EAAE,IAAI,CAAC;QAAC,EAAE,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC9D,uCAAuC;IACvC,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC;IAChD,uBAAuB;IACvB,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,aAAa,GAAG,OAAO,CAAC,YAAY,EAAE,CAAC,CAAC;CACxE;AAMD,qBAAa,aAAa;IACzB,OAAO,CAAC,GAAG,CAAe;IAC1B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,aAAa,CAAS;gBAElB,GAAG,EAAE,YAAY,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE;QAAE,aAAa,CAAC,EAAE,MAAM,CAAA;KAAO;IAMxF,OAAO,KAAK,SAAS,GAKpB;IAED;;OAEG;IACH,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,QAAQ;CAgD7B"}
|