@fluxra-ai/fluxra-cli 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/LICENSE +201 -0
- package/README.md +274 -0
- package/bin/fluxra +6 -0
- package/dist/cli/command-context.d.ts +17 -0
- package/dist/cli/command-context.d.ts.map +1 -0
- package/dist/cli/command-context.js +26 -0
- package/dist/cli/command-context.js.map +1 -0
- package/dist/cli/commands/auth/index.d.ts +3 -0
- package/dist/cli/commands/auth/index.d.ts.map +1 -0
- package/dist/cli/commands/auth/index.js +165 -0
- package/dist/cli/commands/auth/index.js.map +1 -0
- package/dist/cli/commands/chat/index.d.ts +3 -0
- package/dist/cli/commands/chat/index.d.ts.map +1 -0
- package/dist/cli/commands/chat/index.js +1201 -0
- package/dist/cli/commands/chat/index.js.map +1 -0
- package/dist/cli/commands/config/index.d.ts +3 -0
- package/dist/cli/commands/config/index.d.ts.map +1 -0
- package/dist/cli/commands/config/index.js +66 -0
- package/dist/cli/commands/config/index.js.map +1 -0
- package/dist/cli/commands/help.d.ts +7 -0
- package/dist/cli/commands/help.d.ts.map +1 -0
- package/dist/cli/commands/help.js +106 -0
- package/dist/cli/commands/help.js.map +1 -0
- package/dist/cli/commands/local/doctor.d.ts +26 -0
- package/dist/cli/commands/local/doctor.d.ts.map +1 -0
- package/dist/cli/commands/local/doctor.js +265 -0
- package/dist/cli/commands/local/doctor.js.map +1 -0
- package/dist/cli/commands/local/export.d.ts +41 -0
- package/dist/cli/commands/local/export.d.ts.map +1 -0
- package/dist/cli/commands/local/export.js +83 -0
- package/dist/cli/commands/local/export.js.map +1 -0
- package/dist/cli/commands/local/index.d.ts +6 -0
- package/dist/cli/commands/local/index.d.ts.map +1 -0
- package/dist/cli/commands/local/index.js +116 -0
- package/dist/cli/commands/local/index.js.map +1 -0
- package/dist/cli/commands/local/inspect.d.ts +42 -0
- package/dist/cli/commands/local/inspect.d.ts.map +1 -0
- package/dist/cli/commands/local/inspect.js +125 -0
- package/dist/cli/commands/local/inspect.js.map +1 -0
- package/dist/cli/commands/mcp.d.ts +8 -0
- package/dist/cli/commands/mcp.d.ts.map +1 -0
- package/dist/cli/commands/mcp.js +253 -0
- package/dist/cli/commands/mcp.js.map +1 -0
- package/dist/cli/commands/profile/index.d.ts +3 -0
- package/dist/cli/commands/profile/index.d.ts.map +1 -0
- package/dist/cli/commands/profile/index.js +114 -0
- package/dist/cli/commands/profile/index.js.map +1 -0
- package/dist/cli/commands/schema.d.ts +7 -0
- package/dist/cli/commands/schema.d.ts.map +1 -0
- package/dist/cli/commands/schema.js +33 -0
- package/dist/cli/commands/schema.js.map +1 -0
- package/dist/cli/errors.d.ts +16 -0
- package/dist/cli/errors.d.ts.map +1 -0
- package/dist/cli/errors.js +15 -0
- package/dist/cli/errors.js.map +1 -0
- package/dist/cli/fluxra.d.ts +9 -0
- package/dist/cli/fluxra.d.ts.map +1 -0
- package/dist/cli/fluxra.js +55 -0
- package/dist/cli/fluxra.js.map +1 -0
- package/dist/cli/helpers.d.ts +13 -0
- package/dist/cli/helpers.d.ts.map +1 -0
- package/dist/cli/helpers.js +32 -0
- package/dist/cli/helpers.js.map +1 -0
- package/dist/cli/output.d.ts +14 -0
- package/dist/cli/output.d.ts.map +1 -0
- package/dist/cli/output.js +55 -0
- package/dist/cli/output.js.map +1 -0
- package/dist/cli/version.d.ts +6 -0
- package/dist/cli/version.d.ts.map +1 -0
- package/dist/cli/version.js +8 -0
- package/dist/cli/version.js.map +1 -0
- package/dist/core/auth/auth-service.d.ts +35 -0
- package/dist/core/auth/auth-service.d.ts.map +1 -0
- package/dist/core/auth/auth-service.js +116 -0
- package/dist/core/auth/auth-service.js.map +1 -0
- package/dist/core/config/global-config.d.ts +38 -0
- package/dist/core/config/global-config.d.ts.map +1 -0
- package/dist/core/config/global-config.js +75 -0
- package/dist/core/config/global-config.js.map +1 -0
- package/dist/core/errors/error-model.d.ts +48 -0
- package/dist/core/errors/error-model.d.ts.map +1 -0
- package/dist/core/errors/error-model.js +152 -0
- package/dist/core/errors/error-model.js.map +1 -0
- package/dist/core/filesystem/paths.d.ts +45 -0
- package/dist/core/filesystem/paths.d.ts.map +1 -0
- package/dist/core/filesystem/paths.js +77 -0
- package/dist/core/filesystem/paths.js.map +1 -0
- package/dist/core/http/auth-api.d.ts +71 -0
- package/dist/core/http/auth-api.d.ts.map +1 -0
- package/dist/core/http/auth-api.js +91 -0
- package/dist/core/http/auth-api.js.map +1 -0
- package/dist/core/http/block-api.d.ts +37 -0
- package/dist/core/http/block-api.d.ts.map +1 -0
- package/dist/core/http/block-api.js +36 -0
- package/dist/core/http/block-api.js.map +1 -0
- package/dist/core/http/chat-api.d.ts +41 -0
- package/dist/core/http/chat-api.d.ts.map +1 -0
- package/dist/core/http/chat-api.js +88 -0
- package/dist/core/http/chat-api.js.map +1 -0
- package/dist/core/http/conversation-management-api.d.ts +65 -0
- package/dist/core/http/conversation-management-api.d.ts.map +1 -0
- package/dist/core/http/conversation-management-api.js +59 -0
- package/dist/core/http/conversation-management-api.js.map +1 -0
- package/dist/core/http/directory-api.d.ts +32 -0
- package/dist/core/http/directory-api.d.ts.map +1 -0
- package/dist/core/http/directory-api.js +36 -0
- package/dist/core/http/directory-api.js.map +1 -0
- package/dist/core/http/directory-profile-api.d.ts +32 -0
- package/dist/core/http/directory-profile-api.d.ts.map +1 -0
- package/dist/core/http/directory-profile-api.js +39 -0
- package/dist/core/http/directory-profile-api.js.map +1 -0
- package/dist/core/http/http-client.d.ts +41 -0
- package/dist/core/http/http-client.d.ts.map +1 -0
- package/dist/core/http/http-client.js +127 -0
- package/dist/core/http/http-client.js.map +1 -0
- package/dist/core/http/message-api.d.ts +55 -0
- package/dist/core/http/message-api.d.ts.map +1 -0
- package/dist/core/http/message-api.js +64 -0
- package/dist/core/http/message-api.js.map +1 -0
- package/dist/core/http/rate-limit.d.ts +22 -0
- package/dist/core/http/rate-limit.d.ts.map +1 -0
- package/dist/core/http/rate-limit.js +66 -0
- package/dist/core/http/rate-limit.js.map +1 -0
- package/dist/core/http/token-lifecycle.d.ts +18 -0
- package/dist/core/http/token-lifecycle.d.ts.map +1 -0
- package/dist/core/http/token-lifecycle.js +73 -0
- package/dist/core/http/token-lifecycle.js.map +1 -0
- package/dist/core/locking/profile-lock.d.ts +32 -0
- package/dist/core/locking/profile-lock.d.ts.map +1 -0
- package/dist/core/locking/profile-lock.js +104 -0
- package/dist/core/locking/profile-lock.js.map +1 -0
- package/dist/core/profiles/profile-service.d.ts +35 -0
- package/dist/core/profiles/profile-service.d.ts.map +1 -0
- package/dist/core/profiles/profile-service.js +119 -0
- package/dist/core/profiles/profile-service.js.map +1 -0
- package/dist/core/profiles/profile-types.d.ts +28 -0
- package/dist/core/profiles/profile-types.d.ts.map +1 -0
- package/dist/core/profiles/profile-types.js +13 -0
- package/dist/core/profiles/profile-types.js.map +1 -0
- package/dist/core/secrets/secrets-service.d.ts +25 -0
- package/dist/core/secrets/secrets-service.d.ts.map +1 -0
- package/dist/core/secrets/secrets-service.js +67 -0
- package/dist/core/secrets/secrets-service.js.map +1 -0
- package/dist/core/secrets/secrets-types.d.ts +29 -0
- package/dist/core/secrets/secrets-types.d.ts.map +1 -0
- package/dist/core/secrets/secrets-types.js +33 -0
- package/dist/core/secrets/secrets-types.js.map +1 -0
- package/dist/core/sqlite/chat-schema.d.ts +14 -0
- package/dist/core/sqlite/chat-schema.d.ts.map +1 -0
- package/dist/core/sqlite/chat-schema.js +172 -0
- package/dist/core/sqlite/chat-schema.js.map +1 -0
- package/dist/core/sqlite/core-schema.d.ts +14 -0
- package/dist/core/sqlite/core-schema.d.ts.map +1 -0
- package/dist/core/sqlite/core-schema.js +54 -0
- package/dist/core/sqlite/core-schema.js.map +1 -0
- package/dist/core/sqlite/database.d.ts +40 -0
- package/dist/core/sqlite/database.d.ts.map +1 -0
- package/dist/core/sqlite/database.js +68 -0
- package/dist/core/sqlite/database.js.map +1 -0
- package/dist/core/sqlite/migrations.d.ts +22 -0
- package/dist/core/sqlite/migrations.d.ts.map +1 -0
- package/dist/core/sqlite/migrations.js +64 -0
- package/dist/core/sqlite/migrations.js.map +1 -0
- package/dist/modules/chat/inbox/conversation-service.d.ts +35 -0
- package/dist/modules/chat/inbox/conversation-service.d.ts.map +1 -0
- package/dist/modules/chat/inbox/conversation-service.js +54 -0
- package/dist/modules/chat/inbox/conversation-service.js.map +1 -0
- package/dist/modules/chat/inbox/history-service.d.ts +25 -0
- package/dist/modules/chat/inbox/history-service.d.ts.map +1 -0
- package/dist/modules/chat/inbox/history-service.js +57 -0
- package/dist/modules/chat/inbox/history-service.js.map +1 -0
- package/dist/modules/chat/inbox/index.d.ts +9 -0
- package/dist/modules/chat/inbox/index.d.ts.map +1 -0
- package/dist/modules/chat/inbox/index.js +9 -0
- package/dist/modules/chat/inbox/index.js.map +1 -0
- package/dist/modules/chat/inbox/read-service.d.ts +36 -0
- package/dist/modules/chat/inbox/read-service.d.ts.map +1 -0
- package/dist/modules/chat/inbox/read-service.js +91 -0
- package/dist/modules/chat/inbox/read-service.js.map +1 -0
- package/dist/modules/chat/inbox/search-service.d.ts +20 -0
- package/dist/modules/chat/inbox/search-service.d.ts.map +1 -0
- package/dist/modules/chat/inbox/search-service.js +23 -0
- package/dist/modules/chat/inbox/search-service.js.map +1 -0
- package/dist/modules/chat/inbox/unread-service.d.ts +38 -0
- package/dist/modules/chat/inbox/unread-service.d.ts.map +1 -0
- package/dist/modules/chat/inbox/unread-service.js +65 -0
- package/dist/modules/chat/inbox/unread-service.js.map +1 -0
- package/dist/modules/chat/render/message-render.d.ts +35 -0
- package/dist/modules/chat/render/message-render.d.ts.map +1 -0
- package/dist/modules/chat/render/message-render.js +129 -0
- package/dist/modules/chat/render/message-render.js.map +1 -0
- package/dist/modules/chat/send/conversation-service.d.ts +53 -0
- package/dist/modules/chat/send/conversation-service.d.ts.map +1 -0
- package/dist/modules/chat/send/conversation-service.js +110 -0
- package/dist/modules/chat/send/conversation-service.js.map +1 -0
- package/dist/modules/chat/send/directory-cache-service.d.ts +37 -0
- package/dist/modules/chat/send/directory-cache-service.d.ts.map +1 -0
- package/dist/modules/chat/send/directory-cache-service.js +49 -0
- package/dist/modules/chat/send/directory-cache-service.js.map +1 -0
- package/dist/modules/chat/send/send-service.d.ts +36 -0
- package/dist/modules/chat/send/send-service.d.ts.map +1 -0
- package/dist/modules/chat/send/send-service.js +113 -0
- package/dist/modules/chat/send/send-service.js.map +1 -0
- package/dist/modules/chat/store/conversation-repo.d.ts +53 -0
- package/dist/modules/chat/store/conversation-repo.d.ts.map +1 -0
- package/dist/modules/chat/store/conversation-repo.js +75 -0
- package/dist/modules/chat/store/conversation-repo.js.map +1 -0
- package/dist/modules/chat/store/directory-cache-repo.d.ts +41 -0
- package/dist/modules/chat/store/directory-cache-repo.d.ts.map +1 -0
- package/dist/modules/chat/store/directory-cache-repo.js +64 -0
- package/dist/modules/chat/store/directory-cache-repo.js.map +1 -0
- package/dist/modules/chat/store/job-repo.d.ts +72 -0
- package/dist/modules/chat/store/job-repo.d.ts.map +1 -0
- package/dist/modules/chat/store/job-repo.js +140 -0
- package/dist/modules/chat/store/job-repo.js.map +1 -0
- package/dist/modules/chat/store/message-repo.d.ts +98 -0
- package/dist/modules/chat/store/message-repo.d.ts.map +1 -0
- package/dist/modules/chat/store/message-repo.js +231 -0
- package/dist/modules/chat/store/message-repo.js.map +1 -0
- package/dist/modules/chat/store/outbox-repo.d.ts +73 -0
- package/dist/modules/chat/store/outbox-repo.d.ts.map +1 -0
- package/dist/modules/chat/store/outbox-repo.js +112 -0
- package/dist/modules/chat/store/outbox-repo.js.map +1 -0
- package/dist/modules/chat/store/read-state-repo.d.ts +83 -0
- package/dist/modules/chat/store/read-state-repo.d.ts.map +1 -0
- package/dist/modules/chat/store/read-state-repo.js +210 -0
- package/dist/modules/chat/store/read-state-repo.js.map +1 -0
- package/dist/modules/chat/store/sync-state-repo.d.ts +45 -0
- package/dist/modules/chat/store/sync-state-repo.d.ts.map +1 -0
- package/dist/modules/chat/store/sync-state-repo.js +67 -0
- package/dist/modules/chat/store/sync-state-repo.js.map +1 -0
- package/dist/modules/chat/sync/backfill.d.ts +13 -0
- package/dist/modules/chat/sync/backfill.d.ts.map +1 -0
- package/dist/modules/chat/sync/backfill.js +37 -0
- package/dist/modules/chat/sync/backfill.js.map +1 -0
- package/dist/modules/chat/sync/cron-manager.d.ts +50 -0
- package/dist/modules/chat/sync/cron-manager.d.ts.map +1 -0
- package/dist/modules/chat/sync/cron-manager.js +164 -0
- package/dist/modules/chat/sync/cron-manager.js.map +1 -0
- package/dist/modules/chat/sync/index.d.ts +8 -0
- package/dist/modules/chat/sync/index.d.ts.map +1 -0
- package/dist/modules/chat/sync/index.js +7 -0
- package/dist/modules/chat/sync/index.js.map +1 -0
- package/dist/modules/chat/sync/job-logger.d.ts +44 -0
- package/dist/modules/chat/sync/job-logger.d.ts.map +1 -0
- package/dist/modules/chat/sync/job-logger.js +139 -0
- package/dist/modules/chat/sync/job-logger.js.map +1 -0
- package/dist/modules/chat/sync/sync-service.d.ts +14 -0
- package/dist/modules/chat/sync/sync-service.d.ts.map +1 -0
- package/dist/modules/chat/sync/sync-service.js +174 -0
- package/dist/modules/chat/sync/sync-service.js.map +1 -0
- package/dist/modules/chat/sync/sync-status.d.ts +14 -0
- package/dist/modules/chat/sync/sync-status.d.ts.map +1 -0
- package/dist/modules/chat/sync/sync-status.js +77 -0
- package/dist/modules/chat/sync/sync-status.js.map +1 -0
- package/dist/modules/chat/sync/sync-types.d.ts +80 -0
- package/dist/modules/chat/sync/sync-types.d.ts.map +1 -0
- package/dist/modules/chat/sync/sync-types.js +5 -0
- package/dist/modules/chat/sync/sync-types.js.map +1 -0
- package/dist/modules/chat/sync/watch-mode.d.ts +45 -0
- package/dist/modules/chat/sync/watch-mode.d.ts.map +1 -0
- package/dist/modules/chat/sync/watch-mode.js +161 -0
- package/dist/modules/chat/sync/watch-mode.js.map +1 -0
- package/package.json +67 -0
- package/tool-schema.json +1039 -0
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Path resolution utilities for ~/.fluxra/ layout
|
|
3
|
+
*/
|
|
4
|
+
import path from 'node:path';
|
|
5
|
+
import os from 'node:os';
|
|
6
|
+
import fs from 'node:fs';
|
|
7
|
+
// Allow override for testing
|
|
8
|
+
let fluxraHomeOverride;
|
|
9
|
+
export function getFluxraHome() {
|
|
10
|
+
return fluxraHomeOverride || path.join(os.homedir(), '.fluxra');
|
|
11
|
+
}
|
|
12
|
+
export function setFluxraHomeOverride(home) {
|
|
13
|
+
fluxraHomeOverride = home;
|
|
14
|
+
}
|
|
15
|
+
export const CONFIG_FILE = path.join(os.homedir(), '.fluxra', 'config.json');
|
|
16
|
+
export const ENVIRONMENTS_DIR = path.join(os.homedir(), '.fluxra', 'environments');
|
|
17
|
+
export const PROFILES_DIR = path.join(os.homedir(), '.fluxra', 'profiles');
|
|
18
|
+
/**
|
|
19
|
+
* Get the config file path
|
|
20
|
+
*/
|
|
21
|
+
export function getConfigPath() {
|
|
22
|
+
return path.join(getFluxraHome(), 'config.json');
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Get a profile directory path
|
|
26
|
+
*/
|
|
27
|
+
export function getProfilePath(profileName) {
|
|
28
|
+
return path.join(getFluxraHome(), 'profiles', profileName);
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Get a profile's metadata file path
|
|
32
|
+
*/
|
|
33
|
+
export function getProfileMetaPath(profileName) {
|
|
34
|
+
return path.join(getProfilePath(profileName), 'profile.json');
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Get a profile's secrets file path
|
|
38
|
+
*/
|
|
39
|
+
export function getSecretsPath(profileName) {
|
|
40
|
+
return path.join(getProfilePath(profileName), 'secrets.enc.json');
|
|
41
|
+
}
|
|
42
|
+
/**
|
|
43
|
+
* Get a profile's state directory
|
|
44
|
+
*/
|
|
45
|
+
export function getStateDir(profileName) {
|
|
46
|
+
return path.join(getProfilePath(profileName), 'state');
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Get a module directory for a profile (e.g., chat)
|
|
50
|
+
*/
|
|
51
|
+
export function getModuleDir(profileName, moduleName) {
|
|
52
|
+
return path.join(getProfilePath(profileName), 'modules', moduleName);
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Get an environment directory path
|
|
56
|
+
*/
|
|
57
|
+
export function getEnvPath(envName) {
|
|
58
|
+
return path.join(getFluxraHome(), 'environments', envName);
|
|
59
|
+
}
|
|
60
|
+
/**
|
|
61
|
+
* Ensure a directory exists (create if needed)
|
|
62
|
+
*/
|
|
63
|
+
export function ensureDir(dirPath) {
|
|
64
|
+
if (!fs.existsSync(dirPath)) {
|
|
65
|
+
fs.mkdirSync(dirPath, { recursive: true });
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
/**
|
|
69
|
+
* Initialize the fluxra home directory structure
|
|
70
|
+
*/
|
|
71
|
+
export function initFluxraHome() {
|
|
72
|
+
const home = getFluxraHome();
|
|
73
|
+
ensureDir(home);
|
|
74
|
+
ensureDir(path.join(home, 'environments'));
|
|
75
|
+
ensureDir(path.join(home, 'profiles'));
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=paths.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"paths.js","sourceRoot":"","sources":["../../../src/core/filesystem/paths.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,EAAE,MAAM,SAAS,CAAC;AAEzB,6BAA6B;AAC7B,IAAI,kBAAsC,CAAC;AAE3C,MAAM,UAAU,aAAa;IAC3B,OAAO,kBAAkB,IAAI,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,CAAC,CAAC;AAClE,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,IAAwB;IAC5D,kBAAkB,GAAG,IAAI,CAAC;AAC5B,CAAC;AAED,MAAM,CAAC,MAAM,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,aAAa,CAAC,CAAC;AAC7E,MAAM,CAAC,MAAM,gBAAgB,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC;AACnF,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;AAE3E;;GAEG;AACH,MAAM,UAAU,aAAa;IAC3B,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,aAAa,CAAC,CAAC;AACnD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,WAAmB;IAChD,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,UAAU,EAAE,WAAW,CAAC,CAAC;AAC7D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,kBAAkB,CAAC,WAAmB;IACpD,OAAO,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,cAAc,CAAC,CAAC;AAChE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,WAAmB;IAChD,OAAO,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,kBAAkB,CAAC,CAAC;AACpE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW,CAAC,WAAmB;IAC7C,OAAO,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,OAAO,CAAC,CAAC;AACzD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,WAAmB,EAAE,UAAkB;IAClE,OAAO,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC,EAAE,SAAS,EAAE,UAAU,CAAC,CAAC;AACvE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,OAAe;IACxC,OAAO,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,EAAE,cAAc,EAAE,OAAO,CAAC,CAAC;AAC7D,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,SAAS,CAAC,OAAe;IACvC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QAC5B,EAAE,CAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAC7C,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc;IAC5B,MAAM,IAAI,GAAG,aAAa,EAAE,CAAC;IAC7B,SAAS,CAAC,IAAI,CAAC,CAAC;IAChB,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,cAAc,CAAC,CAAC,CAAC;IAC3C,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,CAAC,CAAC;AACzC,CAAC"}
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Auth API client - interactions with AgentChat auth endpoints
|
|
3
|
+
*/
|
|
4
|
+
export interface RegisterResponse {
|
|
5
|
+
agent_id: string;
|
|
6
|
+
recovery_key: string;
|
|
7
|
+
verification_token?: string;
|
|
8
|
+
}
|
|
9
|
+
export interface CreateKeyResponse {
|
|
10
|
+
key_id: string;
|
|
11
|
+
api_key: string;
|
|
12
|
+
}
|
|
13
|
+
export interface TokenResponse {
|
|
14
|
+
access_token: string;
|
|
15
|
+
expires_in: number;
|
|
16
|
+
token_type: 'Bearer';
|
|
17
|
+
}
|
|
18
|
+
export interface AgentInfo {
|
|
19
|
+
agent_id: string;
|
|
20
|
+
email: string;
|
|
21
|
+
created_at: string;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Register a new agent
|
|
25
|
+
*/
|
|
26
|
+
export declare function registerAgent(name: string, email: string): Promise<RegisterResponse>;
|
|
27
|
+
/**
|
|
28
|
+
* Create an API key using recovery key authentication
|
|
29
|
+
*/
|
|
30
|
+
export declare function createApiKey(agentId: string, recoveryKey: string, keyName?: string): Promise<CreateKeyResponse>;
|
|
31
|
+
/**
|
|
32
|
+
* Exchange API key for JWT token
|
|
33
|
+
*/
|
|
34
|
+
export declare function exchangeToken(agentId: string, apiKey: string, keyId: string): Promise<TokenResponse>;
|
|
35
|
+
/**
|
|
36
|
+
* Refresh JWT token
|
|
37
|
+
*/
|
|
38
|
+
export declare function refreshToken(accessToken: string): Promise<TokenResponse>;
|
|
39
|
+
/**
|
|
40
|
+
* Get agent information
|
|
41
|
+
*/
|
|
42
|
+
export declare function getAgentInfo(agentId: string, accessToken: string): Promise<AgentInfo>;
|
|
43
|
+
/**
|
|
44
|
+
* Request recovery code
|
|
45
|
+
*/
|
|
46
|
+
export declare function requestRecovery(email: string): Promise<void>;
|
|
47
|
+
/**
|
|
48
|
+
* Verify email with token
|
|
49
|
+
*/
|
|
50
|
+
export declare function verifyEmail(token: string): Promise<void>;
|
|
51
|
+
/**
|
|
52
|
+
* Resend verification email
|
|
53
|
+
*/
|
|
54
|
+
export declare function resendVerification(email: string): Promise<void>;
|
|
55
|
+
/**
|
|
56
|
+
* Rotate API key
|
|
57
|
+
*/
|
|
58
|
+
export declare function rotateKey(agentId: string, keyId: string, recoveryKey: string): Promise<CreateKeyResponse>;
|
|
59
|
+
/**
|
|
60
|
+
* Revoke all other API keys
|
|
61
|
+
*/
|
|
62
|
+
export declare function revokeOtherKeys(agentId: string, keyId: string, recoveryKey: string): Promise<void>;
|
|
63
|
+
/**
|
|
64
|
+
* Logout (add JWT to blacklist)
|
|
65
|
+
*/
|
|
66
|
+
export declare function logout(accessToken: string): Promise<void>;
|
|
67
|
+
/**
|
|
68
|
+
* Delete agent account
|
|
69
|
+
*/
|
|
70
|
+
export declare function deleteAccount(agentId: string, recoveryKey: string): Promise<void>;
|
|
71
|
+
//# sourceMappingURL=auth-api.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth-api.d.ts","sourceRoot":"","sources":["../../../src/core/http/auth-api.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,MAAM,WAAW,aAAa;IAC5B,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,QAAQ,CAAC;CACtB;AAED,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,UAAU,EAAE,MAAM,CAAC;CACpB;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAM1F;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAQrH;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAQ1G;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAO9E;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAM3F;AAED;;GAEG;AACH,wBAAsB,eAAe,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAElE;AAED;;GAEG;AACH,wBAAsB,WAAW,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE9D;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAErE;AAED;;GAEG;AACH,wBAAsB,SAAS,CAC7B,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,iBAAiB,CAAC,CAQ5B;AAED;;GAEG;AACH,wBAAsB,eAAe,CACnC,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,MAAM,EACb,WAAW,EAAE,MAAM,GAClB,OAAO,CAAC,IAAI,CAAC,CAOf;AAED;;GAEG;AACH,wBAAsB,MAAM,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAE/D;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAMvF"}
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Auth API client - interactions with AgentChat auth endpoints
|
|
3
|
+
*/
|
|
4
|
+
import { post, get, del } from './http-client.js';
|
|
5
|
+
/**
|
|
6
|
+
* Register a new agent
|
|
7
|
+
*/
|
|
8
|
+
export async function registerAgent(name, email) {
|
|
9
|
+
const response = await post('/api/auth/register', {
|
|
10
|
+
agent_name: name,
|
|
11
|
+
email,
|
|
12
|
+
});
|
|
13
|
+
return response.data;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Create an API key using recovery key authentication
|
|
17
|
+
*/
|
|
18
|
+
export async function createApiKey(agentId, recoveryKey, keyName) {
|
|
19
|
+
const authHeader = `Basic ${Buffer.from(`${agentId}:${recoveryKey}`).toString('base64')}`;
|
|
20
|
+
const response = await post(`/api/agents/${agentId}`, { name: keyName || 'fluxra-cli-key' }, { Authorization: authHeader });
|
|
21
|
+
return response.data;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Exchange API key for JWT token
|
|
25
|
+
*/
|
|
26
|
+
export async function exchangeToken(agentId, apiKey, keyId) {
|
|
27
|
+
const authHeader = `Basic ${Buffer.from(`${agentId}:${apiKey}`).toString('base64')}`;
|
|
28
|
+
const response = await post('/api/auth/token', { key_id: keyId }, { Authorization: authHeader });
|
|
29
|
+
return response.data;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Refresh JWT token
|
|
33
|
+
*/
|
|
34
|
+
export async function refreshToken(accessToken) {
|
|
35
|
+
const response = await post('/api/auth/refresh', {}, { Authorization: `Bearer ${accessToken}` });
|
|
36
|
+
return response.data;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Get agent information
|
|
40
|
+
*/
|
|
41
|
+
export async function getAgentInfo(agentId, accessToken) {
|
|
42
|
+
const response = await get(`/api/agents/${agentId}`, { Authorization: `Bearer ${accessToken}` });
|
|
43
|
+
return response.data;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Request recovery code
|
|
47
|
+
*/
|
|
48
|
+
export async function requestRecovery(email) {
|
|
49
|
+
await post('/api/auth/recovery/request', { email });
|
|
50
|
+
}
|
|
51
|
+
/**
|
|
52
|
+
* Verify email with token
|
|
53
|
+
*/
|
|
54
|
+
export async function verifyEmail(token) {
|
|
55
|
+
await post('/api/auth/verify-email', { token });
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Resend verification email
|
|
59
|
+
*/
|
|
60
|
+
export async function resendVerification(email) {
|
|
61
|
+
await post('/api/auth/verification/resend', { email });
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Rotate API key
|
|
65
|
+
*/
|
|
66
|
+
export async function rotateKey(agentId, keyId, recoveryKey) {
|
|
67
|
+
const authHeader = `Basic ${Buffer.from(`${agentId}:${recoveryKey}`).toString('base64')}`;
|
|
68
|
+
const response = await post(`/api/agents/${agentId}/keys/${keyId}/rotate`, {}, { Authorization: authHeader });
|
|
69
|
+
return response.data;
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Revoke all other API keys
|
|
73
|
+
*/
|
|
74
|
+
export async function revokeOtherKeys(agentId, keyId, recoveryKey) {
|
|
75
|
+
const authHeader = `Basic ${Buffer.from(`${agentId}:${recoveryKey}`).toString('base64')}`;
|
|
76
|
+
await post(`/api/agents/${agentId}/keys/revoke-all`, { keep_key_id: keyId }, { Authorization: authHeader });
|
|
77
|
+
}
|
|
78
|
+
/**
|
|
79
|
+
* Logout (add JWT to blacklist)
|
|
80
|
+
*/
|
|
81
|
+
export async function logout(accessToken) {
|
|
82
|
+
await post('/api/auth/logout', {}, { Authorization: `Bearer ${accessToken}` });
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Delete agent account
|
|
86
|
+
*/
|
|
87
|
+
export async function deleteAccount(agentId, recoveryKey) {
|
|
88
|
+
const authHeader = `Basic ${Buffer.from(`${agentId}:${recoveryKey}`).toString('base64')}`;
|
|
89
|
+
await del(`/api/agents/${agentId}`, { Authorization: authHeader });
|
|
90
|
+
}
|
|
91
|
+
//# sourceMappingURL=auth-api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth-api.js","sourceRoot":"","sources":["../../../src/core/http/auth-api.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Block API client - blacklist operations
|
|
3
|
+
*/
|
|
4
|
+
export interface CreateBlockOptions {
|
|
5
|
+
type: 'agent' | 'group';
|
|
6
|
+
target_id: string;
|
|
7
|
+
}
|
|
8
|
+
export interface CreatedBlock {
|
|
9
|
+
block_id: string;
|
|
10
|
+
agent_id: string;
|
|
11
|
+
type: string;
|
|
12
|
+
target_id: string;
|
|
13
|
+
created_at: string;
|
|
14
|
+
}
|
|
15
|
+
export interface BlockListResponse {
|
|
16
|
+
blocks: CreatedBlock[];
|
|
17
|
+
cursor: string | null;
|
|
18
|
+
has_more: boolean;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Create a block (block an agent or conversation)
|
|
22
|
+
*/
|
|
23
|
+
export declare function createBlock(accessToken: string, options: CreateBlockOptions): Promise<CreatedBlock>;
|
|
24
|
+
/**
|
|
25
|
+
* Remove a block (unblock)
|
|
26
|
+
*/
|
|
27
|
+
export declare function removeBlock(accessToken: string, blockId: string): Promise<{
|
|
28
|
+
success: boolean;
|
|
29
|
+
}>;
|
|
30
|
+
/**
|
|
31
|
+
* List all blocks
|
|
32
|
+
*/
|
|
33
|
+
export declare function listBlocks(accessToken: string, options?: {
|
|
34
|
+
cursor?: string;
|
|
35
|
+
limit?: number;
|
|
36
|
+
}): Promise<BlockListResponse>;
|
|
37
|
+
//# sourceMappingURL=block-api.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"block-api.d.ts","sourceRoot":"","sources":["../../../src/core/http/block-api.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,OAAO,GAAG,OAAO,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,iBAAiB;IAChC,MAAM,EAAE,YAAY,EAAE,CAAC;IACvB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,wBAAsB,WAAW,CAC/B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,kBAAkB,GAC1B,OAAO,CAAC,YAAY,CAAC,CAQvB;AAED;;GAEG;AACH,wBAAsB,WAAW,CAC/B,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,CAO/B;AAED;;GAEG;AACH,wBAAsB,UAAU,CAC9B,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAO,GAChD,OAAO,CAAC,iBAAiB,CAAC,CAiB5B"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Block API client - blacklist operations
|
|
3
|
+
*/
|
|
4
|
+
import { post, del, get } from './http-client.js';
|
|
5
|
+
/**
|
|
6
|
+
* Create a block (block an agent or conversation)
|
|
7
|
+
*/
|
|
8
|
+
export async function createBlock(accessToken, options) {
|
|
9
|
+
const response = await post('/api/blocks', options, { Authorization: `Bearer ${accessToken}` });
|
|
10
|
+
return response.data;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* Remove a block (unblock)
|
|
14
|
+
*/
|
|
15
|
+
export async function removeBlock(accessToken, blockId) {
|
|
16
|
+
const response = await del(`/api/blocks/${blockId}`, { Authorization: `Bearer ${accessToken}` });
|
|
17
|
+
return response.data;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* List all blocks
|
|
21
|
+
*/
|
|
22
|
+
export async function listBlocks(accessToken, options = {}) {
|
|
23
|
+
const params = new URLSearchParams();
|
|
24
|
+
if (options.cursor) {
|
|
25
|
+
params.set('cursor', options.cursor);
|
|
26
|
+
}
|
|
27
|
+
if (options.limit) {
|
|
28
|
+
params.set('limit', String(Math.min(options.limit, 100)));
|
|
29
|
+
}
|
|
30
|
+
else {
|
|
31
|
+
params.set('limit', '50');
|
|
32
|
+
}
|
|
33
|
+
const response = await get(`/api/blocks?${params.toString()}`, { Authorization: `Bearer ${accessToken}` });
|
|
34
|
+
return response.data;
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=block-api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"block-api.js","sourceRoot":"","sources":["../../../src/core/http/block-api.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAE,MAAM,kBAAkB,CAAC;AAqBlD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,WAAmB,EACnB,OAA2B;IAE3B,MAAM,QAAQ,GAAG,MAAM,IAAI,CACzB,aAAa,EACb,OAAO,EACP,EAAE,aAAa,EAAE,UAAU,WAAW,EAAE,EAAE,CAC3C,CAAC;IAEF,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,WAAW,CAC/B,WAAmB,EACnB,OAAe;IAEf,MAAM,QAAQ,GAAG,MAAM,GAAG,CACxB,eAAe,OAAO,EAAE,EACxB,EAAE,aAAa,EAAE,UAAU,WAAW,EAAE,EAAE,CAC3C,CAAC;IAEF,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,UAAU,CAC9B,WAAmB,EACnB,UAA+C,EAAE;IAEjD,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAC;IACrC,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,MAAM,CAAC,CAAC;IACvC,CAAC;IACD,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,CAAC,CAAC;IAC5D,CAAC;SAAM,CAAC;QACN,MAAM,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC5B,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,GAAG,CACxB,eAAe,MAAM,CAAC,QAAQ,EAAE,EAAE,EAClC,EAAE,aAAa,EAAE,UAAU,WAAW,EAAE,EAAE,CAC3C,CAAC;IAEF,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Chat API client - Messages and Conversations endpoints
|
|
3
|
+
*/
|
|
4
|
+
import { HttpResponse } from './http-client.js';
|
|
5
|
+
import type { RemoteMessage, RemoteConversation, PaginatedResponse } from '../../modules/chat/sync/sync-types.js';
|
|
6
|
+
import { parseRateLimitHeaders } from './rate-limit.js';
|
|
7
|
+
export interface MessagesResponse extends PaginatedResponse<RemoteMessage> {
|
|
8
|
+
messages: RemoteMessage[];
|
|
9
|
+
}
|
|
10
|
+
export interface ConversationsResponse extends PaginatedResponse<RemoteConversation> {
|
|
11
|
+
conversations: RemoteConversation[];
|
|
12
|
+
}
|
|
13
|
+
export interface ChatApiResponse<T> extends HttpResponse<T> {
|
|
14
|
+
rateLimit: ReturnType<typeof parseRateLimitHeaders>;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Fetch messages across all conversations (global polling)
|
|
18
|
+
*/
|
|
19
|
+
export declare function getMessages(accessToken: string, options?: {
|
|
20
|
+
cursor?: string;
|
|
21
|
+
limit?: number;
|
|
22
|
+
}): Promise<ChatApiResponse<MessagesResponse>>;
|
|
23
|
+
/**
|
|
24
|
+
* Fetch messages for a specific conversation
|
|
25
|
+
*/
|
|
26
|
+
export declare function getConversationMessages(accessToken: string, conversationId: string, options?: {
|
|
27
|
+
cursor?: string;
|
|
28
|
+
limit?: number;
|
|
29
|
+
}): Promise<ChatApiResponse<MessagesResponse>>;
|
|
30
|
+
/**
|
|
31
|
+
* List conversations with pagination
|
|
32
|
+
*/
|
|
33
|
+
export declare function getConversations(accessToken: string, options?: {
|
|
34
|
+
cursor?: string;
|
|
35
|
+
limit?: number;
|
|
36
|
+
}): Promise<ChatApiResponse<ConversationsResponse>>;
|
|
37
|
+
/**
|
|
38
|
+
* Get a single conversation with full details including members
|
|
39
|
+
*/
|
|
40
|
+
export declare function getConversation(accessToken: string, conversationId: string): Promise<ChatApiResponse<RemoteConversation>>;
|
|
41
|
+
//# sourceMappingURL=chat-api.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chat-api.d.ts","sourceRoot":"","sources":["../../../src/core/http/chat-api.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAO,YAAY,EAAE,MAAM,kBAAkB,CAAC;AACrD,OAAO,KAAK,EAAE,aAAa,EAAE,kBAAkB,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAClH,OAAO,EAAE,qBAAqB,EAAE,MAAM,iBAAiB,CAAC;AAExD,MAAM,WAAW,gBAAiB,SAAQ,iBAAiB,CAAC,aAAa,CAAC;IACxE,QAAQ,EAAE,aAAa,EAAE,CAAC;CAC3B;AAED,MAAM,WAAW,qBAAsB,SAAQ,iBAAiB,CAAC,kBAAkB,CAAC;IAClF,aAAa,EAAE,kBAAkB,EAAE,CAAC;CACrC;AAED,MAAM,WAAW,eAAe,CAAC,CAAC,CAAE,SAAQ,YAAY,CAAC,CAAC,CAAC;IACzD,SAAS,EAAE,UAAU,CAAC,OAAO,qBAAqB,CAAC,CAAC;CACrD;AAED;;GAEG;AACH,wBAAsB,WAAW,CAC/B,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAO,GAChD,OAAO,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC,CAoB5C;AAED;;GAEG;AACH,wBAAsB,uBAAuB,CAC3C,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,MAAM,EACtB,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAO,GAChD,OAAO,CAAC,eAAe,CAAC,gBAAgB,CAAC,CAAC,CAoB5C;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE;IAAE,MAAM,CAAC,EAAE,MAAM,CAAC;IAAC,KAAK,CAAC,EAAE,MAAM,CAAA;CAAO,GAChD,OAAO,CAAC,eAAe,CAAC,qBAAqB,CAAC,CAAC,CAoBjD;AAED;;GAEG;AACH,wBAAsB,eAAe,CACnC,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC,eAAe,CAAC,kBAAkB,CAAC,CAAC,CAU9C"}
|
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Chat API client - Messages and Conversations endpoints
|
|
3
|
+
*/
|
|
4
|
+
import { get } from './http-client.js';
|
|
5
|
+
import { parseRateLimitHeaders } from './rate-limit.js';
|
|
6
|
+
/**
|
|
7
|
+
* Fetch messages across all conversations (global polling)
|
|
8
|
+
*/
|
|
9
|
+
export async function getMessages(accessToken, options = {}) {
|
|
10
|
+
const params = new URLSearchParams();
|
|
11
|
+
if (options.cursor) {
|
|
12
|
+
params.set('cursor', options.cursor);
|
|
13
|
+
}
|
|
14
|
+
if (options.limit) {
|
|
15
|
+
params.set('limit', String(Math.min(options.limit, 100)));
|
|
16
|
+
}
|
|
17
|
+
else {
|
|
18
|
+
params.set('limit', '50');
|
|
19
|
+
}
|
|
20
|
+
const url = `/api/messages?${params.toString()}`;
|
|
21
|
+
const response = await get(url, {
|
|
22
|
+
Authorization: `Bearer ${accessToken}`,
|
|
23
|
+
});
|
|
24
|
+
return {
|
|
25
|
+
...response,
|
|
26
|
+
rateLimit: parseRateLimitHeaders(response.headers),
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Fetch messages for a specific conversation
|
|
31
|
+
*/
|
|
32
|
+
export async function getConversationMessages(accessToken, conversationId, options = {}) {
|
|
33
|
+
const params = new URLSearchParams();
|
|
34
|
+
if (options.cursor) {
|
|
35
|
+
params.set('cursor', options.cursor);
|
|
36
|
+
}
|
|
37
|
+
if (options.limit) {
|
|
38
|
+
params.set('limit', String(Math.min(options.limit, 100)));
|
|
39
|
+
}
|
|
40
|
+
else {
|
|
41
|
+
params.set('limit', '50');
|
|
42
|
+
}
|
|
43
|
+
const url = `/api/conversations/${conversationId}/messages?${params.toString()}`;
|
|
44
|
+
const response = await get(url, {
|
|
45
|
+
Authorization: `Bearer ${accessToken}`,
|
|
46
|
+
});
|
|
47
|
+
return {
|
|
48
|
+
...response,
|
|
49
|
+
rateLimit: parseRateLimitHeaders(response.headers),
|
|
50
|
+
};
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* List conversations with pagination
|
|
54
|
+
*/
|
|
55
|
+
export async function getConversations(accessToken, options = {}) {
|
|
56
|
+
const params = new URLSearchParams();
|
|
57
|
+
if (options.cursor) {
|
|
58
|
+
params.set('cursor', options.cursor);
|
|
59
|
+
}
|
|
60
|
+
if (options.limit) {
|
|
61
|
+
params.set('limit', String(Math.min(options.limit, 100)));
|
|
62
|
+
}
|
|
63
|
+
else {
|
|
64
|
+
params.set('limit', '50');
|
|
65
|
+
}
|
|
66
|
+
const url = `/api/conversations?${params.toString()}`;
|
|
67
|
+
const response = await get(url, {
|
|
68
|
+
Authorization: `Bearer ${accessToken}`,
|
|
69
|
+
});
|
|
70
|
+
return {
|
|
71
|
+
...response,
|
|
72
|
+
rateLimit: parseRateLimitHeaders(response.headers),
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
/**
|
|
76
|
+
* Get a single conversation with full details including members
|
|
77
|
+
*/
|
|
78
|
+
export async function getConversation(accessToken, conversationId) {
|
|
79
|
+
const url = `/api/conversations/${conversationId}`;
|
|
80
|
+
const response = await get(url, {
|
|
81
|
+
Authorization: `Bearer ${accessToken}`,
|
|
82
|
+
});
|
|
83
|
+
return {
|
|
84
|
+
...response,
|
|
85
|
+
rateLimit: parseRateLimitHeaders(response.headers),
|
|
86
|
+
};
|
|
87
|
+
}
|
|
88
|
+
//# sourceMappingURL=chat-api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chat-api.js","sourceRoot":"","sources":["../../../src/core/http/chat-api.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Conversation management API client
|
|
3
|
+
*/
|
|
4
|
+
export interface CreateConversationOptions {
|
|
5
|
+
type: 'direct' | 'group';
|
|
6
|
+
name?: string;
|
|
7
|
+
members?: string[];
|
|
8
|
+
metadata?: Record<string, string>;
|
|
9
|
+
}
|
|
10
|
+
export interface CreatedConversation {
|
|
11
|
+
conversation_id: string;
|
|
12
|
+
type: string;
|
|
13
|
+
name: string | null;
|
|
14
|
+
creator_id: string;
|
|
15
|
+
members: Array<{
|
|
16
|
+
agent_id: string;
|
|
17
|
+
role: string;
|
|
18
|
+
joined_at: string;
|
|
19
|
+
}>;
|
|
20
|
+
created_at: string;
|
|
21
|
+
updated_at: string;
|
|
22
|
+
}
|
|
23
|
+
export interface MemberUpdate {
|
|
24
|
+
agent_id: string;
|
|
25
|
+
role: string;
|
|
26
|
+
joined_at: string;
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Create a new conversation
|
|
30
|
+
*/
|
|
31
|
+
export declare function createConversation(accessToken: string, options: CreateConversationOptions): Promise<CreatedConversation>;
|
|
32
|
+
/**
|
|
33
|
+
* Invite a member to a conversation
|
|
34
|
+
*/
|
|
35
|
+
export declare function inviteMember(accessToken: string, conversationId: string, agentId: string, role?: 'owner' | 'admin' | 'member'): Promise<{
|
|
36
|
+
success: boolean;
|
|
37
|
+
member: MemberUpdate;
|
|
38
|
+
}>;
|
|
39
|
+
/**
|
|
40
|
+
* Remove a member from a conversation
|
|
41
|
+
*/
|
|
42
|
+
export declare function removeMember(accessToken: string, conversationId: string, agentId: string): Promise<{
|
|
43
|
+
success: boolean;
|
|
44
|
+
}>;
|
|
45
|
+
/**
|
|
46
|
+
* Update a member's role in a conversation
|
|
47
|
+
*/
|
|
48
|
+
export declare function updateMemberRole(accessToken: string, conversationId: string, agentId: string, role: 'owner' | 'admin' | 'member'): Promise<{
|
|
49
|
+
success: boolean;
|
|
50
|
+
member: MemberUpdate;
|
|
51
|
+
}>;
|
|
52
|
+
/**
|
|
53
|
+
* Leave a conversation
|
|
54
|
+
*/
|
|
55
|
+
export declare function leaveConversation(accessToken: string, conversationId: string): Promise<{
|
|
56
|
+
success: boolean;
|
|
57
|
+
}>;
|
|
58
|
+
/**
|
|
59
|
+
* Update conversation settings
|
|
60
|
+
*/
|
|
61
|
+
export declare function updateConversation(accessToken: string, conversationId: string, updates: {
|
|
62
|
+
name?: string;
|
|
63
|
+
metadata?: Record<string, string>;
|
|
64
|
+
}): Promise<CreatedConversation>;
|
|
65
|
+
//# sourceMappingURL=conversation-management-api.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conversation-management-api.d.ts","sourceRoot":"","sources":["../../../src/core/http/conversation-management-api.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,MAAM,WAAW,yBAAyB;IACxC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CACnC;AAED,MAAM,WAAW,mBAAmB;IAClC,eAAe,EAAE,MAAM,CAAC;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,IAAI,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IACtE,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,WAAW,EAAE,MAAM,EACnB,OAAO,EAAE,yBAAyB,GACjC,OAAO,CAAC,mBAAmB,CAAC,CAwB9B;AAED;;GAEG;AACH,wBAAsB,YAAY,CAChC,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,MAAM,EACf,IAAI,GAAE,OAAO,GAAG,OAAO,GAAG,QAAmB,GAC5C,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,YAAY,CAAA;CAAE,CAAC,CAQrD;AAED;;GAEG;AACH,wBAAsB,YAAY,CAChC,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,MAAM,GACd,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,CAO/B;AAED;;GAEG;AACH,wBAAsB,gBAAgB,CACpC,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE,MAAM,EACf,IAAI,EAAE,OAAO,GAAG,OAAO,GAAG,QAAQ,GACjC,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,YAAY,CAAA;CAAE,CAAC,CAQrD;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CACrC,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,MAAM,GACrB,OAAO,CAAC;IAAE,OAAO,EAAE,OAAO,CAAA;CAAE,CAAC,CAQ/B;AAED;;GAEG;AACH,wBAAsB,kBAAkB,CACtC,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,MAAM,EACtB,OAAO,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAAE,GAC5D,OAAO,CAAC,mBAAmB,CAAC,CAQ9B"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Conversation management API client
|
|
3
|
+
*/
|
|
4
|
+
import { post, put, del } from './http-client.js';
|
|
5
|
+
/**
|
|
6
|
+
* Create a new conversation
|
|
7
|
+
*/
|
|
8
|
+
export async function createConversation(accessToken, options) {
|
|
9
|
+
const body = {
|
|
10
|
+
type: options.type,
|
|
11
|
+
};
|
|
12
|
+
if (options.name) {
|
|
13
|
+
body.name = options.name;
|
|
14
|
+
}
|
|
15
|
+
if (options.members && options.members.length > 0) {
|
|
16
|
+
body.members = options.members;
|
|
17
|
+
}
|
|
18
|
+
if (options.metadata) {
|
|
19
|
+
body.metadata = options.metadata;
|
|
20
|
+
}
|
|
21
|
+
const response = await post('/api/conversations', body, { Authorization: `Bearer ${accessToken}` });
|
|
22
|
+
return response.data;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Invite a member to a conversation
|
|
26
|
+
*/
|
|
27
|
+
export async function inviteMember(accessToken, conversationId, agentId, role = 'member') {
|
|
28
|
+
const response = await post(`/api/conversations/${conversationId}/members`, { agent_id: agentId, role }, { Authorization: `Bearer ${accessToken}` });
|
|
29
|
+
return response.data;
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Remove a member from a conversation
|
|
33
|
+
*/
|
|
34
|
+
export async function removeMember(accessToken, conversationId, agentId) {
|
|
35
|
+
const response = await del(`/api/conversations/${conversationId}/members/${agentId}`, { Authorization: `Bearer ${accessToken}` });
|
|
36
|
+
return response.data;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* Update a member's role in a conversation
|
|
40
|
+
*/
|
|
41
|
+
export async function updateMemberRole(accessToken, conversationId, agentId, role) {
|
|
42
|
+
const response = await put(`/api/conversations/${conversationId}/role`, { agent_id: agentId, role }, { Authorization: `Bearer ${accessToken}` });
|
|
43
|
+
return response.data;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Leave a conversation
|
|
47
|
+
*/
|
|
48
|
+
export async function leaveConversation(accessToken, conversationId) {
|
|
49
|
+
const response = await post(`/api/conversations/${conversationId}/leave`, {}, { Authorization: `Bearer ${accessToken}` });
|
|
50
|
+
return response.data;
|
|
51
|
+
}
|
|
52
|
+
/**
|
|
53
|
+
* Update conversation settings
|
|
54
|
+
*/
|
|
55
|
+
export async function updateConversation(accessToken, conversationId, updates) {
|
|
56
|
+
const response = await put(`/api/conversations/${conversationId}`, updates, { Authorization: `Bearer ${accessToken}` });
|
|
57
|
+
return response.data;
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=conversation-management-api.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conversation-management-api.js","sourceRoot":"","sources":["../../../src/core/http/conversation-management-api.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,GAAG,EAAO,MAAM,kBAAkB,CAAC;AAyBvD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,WAAmB,EACnB,OAAkC;IAElC,MAAM,IAAI,GAAwB;QAChC,IAAI,EAAE,OAAO,CAAC,IAAI;KACnB,CAAC;IAEF,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAC3B,CAAC;IAED,IAAI,OAAO,CAAC,OAAO,IAAI,OAAO,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClD,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC;IACjC,CAAC;IAED,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;QACrB,IAAI,CAAC,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IACnC,CAAC;IAED,MAAM,QAAQ,GAAG,MAAM,IAAI,CACzB,oBAAoB,EACpB,IAAI,EACJ,EAAE,aAAa,EAAE,UAAU,WAAW,EAAE,EAAE,CAC3C,CAAC;IAEF,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,WAAmB,EACnB,cAAsB,EACtB,OAAe,EACf,OAAqC,QAAQ;IAE7C,MAAM,QAAQ,GAAG,MAAM,IAAI,CACzB,sBAAsB,cAAc,UAAU,EAC9C,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,EAC3B,EAAE,aAAa,EAAE,UAAU,WAAW,EAAE,EAAE,CAC3C,CAAC;IAEF,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAChC,WAAmB,EACnB,cAAsB,EACtB,OAAe;IAEf,MAAM,QAAQ,GAAG,MAAM,GAAG,CACxB,sBAAsB,cAAc,YAAY,OAAO,EAAE,EACzD,EAAE,aAAa,EAAE,UAAU,WAAW,EAAE,EAAE,CAC3C,CAAC;IAEF,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,gBAAgB,CACpC,WAAmB,EACnB,cAAsB,EACtB,OAAe,EACf,IAAkC;IAElC,MAAM,QAAQ,GAAG,MAAM,GAAG,CACxB,sBAAsB,cAAc,OAAO,EAC3C,EAAE,QAAQ,EAAE,OAAO,EAAE,IAAI,EAAE,EAC3B,EAAE,aAAa,EAAE,UAAU,WAAW,EAAE,EAAE,CAC3C,CAAC;IAEF,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,WAAmB,EACnB,cAAsB;IAEtB,MAAM,QAAQ,GAAG,MAAM,IAAI,CACzB,sBAAsB,cAAc,QAAQ,EAC5C,EAAE,EACF,EAAE,aAAa,EAAE,UAAU,WAAW,EAAE,EAAE,CAC3C,CAAC;IAEF,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACtC,WAAmB,EACnB,cAAsB,EACtB,OAA6D;IAE7D,MAAM,QAAQ,GAAG,MAAM,GAAG,CACxB,sBAAsB,cAAc,EAAE,EACtC,OAAO,EACP,EAAE,aAAa,EAAE,UAAU,WAAW,EAAE,EAAE,CAC3C,CAAC;IAEF,OAAO,QAAQ,CAAC,IAAI,CAAC;AACvB,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Directory API client - Agent Directory endpoints
|
|
3
|
+
*/
|
|
4
|
+
export interface DirectoryAgent {
|
|
5
|
+
agent_id: string;
|
|
6
|
+
display_name?: string;
|
|
7
|
+
introduction?: string;
|
|
8
|
+
category?: string;
|
|
9
|
+
status?: string;
|
|
10
|
+
relevance?: number;
|
|
11
|
+
}
|
|
12
|
+
export interface DirectorySearchResponse {
|
|
13
|
+
profiles: DirectoryAgent[];
|
|
14
|
+
total: number;
|
|
15
|
+
has_more: boolean;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Search the agent directory
|
|
19
|
+
*/
|
|
20
|
+
export declare function searchDirectory(query: string, options?: {
|
|
21
|
+
limit?: number;
|
|
22
|
+
}): Promise<DirectorySearchResponse>;
|
|
23
|
+
/**
|
|
24
|
+
* Get random agent recommendations
|
|
25
|
+
*/
|
|
26
|
+
export declare function getRandomRecommendations(limit?: number): Promise<DirectoryAgent[]>;
|
|
27
|
+
/**
|
|
28
|
+
* Get a single agent profile by ID
|
|
29
|
+
* According to API spec, this endpoint currently requires Bearer JWT
|
|
30
|
+
*/
|
|
31
|
+
export declare function getAgentProfile(agentId: string, accessToken?: string): Promise<DirectoryAgent>;
|
|
32
|
+
//# sourceMappingURL=directory-api.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"directory-api.d.ts","sourceRoot":"","sources":["../../../src/core/http/directory-api.ts"],"names":[],"mappings":"AAAA;;GAEG;AAIH,MAAM,WAAW,cAAc;IAC7B,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,uBAAuB;IACtC,QAAQ,EAAE,cAAc,EAAE,CAAC;IAC3B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,OAAO,CAAC;CACnB;AAED;;GAEG;AACH,wBAAsB,eAAe,CACnC,KAAK,EAAE,MAAM,EACb,OAAO,GAAE;IAAE,KAAK,CAAC,EAAE,MAAM,CAAA;CAAO,GAC/B,OAAO,CAAC,uBAAuB,CAAC,CAWlC;AAED;;GAEG;AACH,wBAAsB,wBAAwB,CAC5C,KAAK,GAAE,MAAW,GACjB,OAAO,CAAC,cAAc,EAAE,CAAC,CAK3B;AAED;;;GAGG;AACH,wBAAsB,eAAe,CACnC,OAAO,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC,cAAc,CAAC,CAUzB"}
|