@acosmi/sdk-ts 2.6.0 → 2.8.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/CHANGELOG.md +20 -0
- package/README.md +74 -11
- package/dist/browser/index.mjs +328 -6
- package/dist/browser/index.mjs.map +1 -1
- package/dist/index.mjs +328 -6
- package/dist/index.mjs.map +1 -1
- package/dist/node/index.cjs +331 -5
- package/dist/node/index.cjs.map +1 -1
- package/dist/node/index.d.cts +243 -3
- package/dist/node/index.d.ts +243 -3
- package/dist/node/index.mjs +328 -6
- package/dist/node/index.mjs.map +1 -1
- package/docs//345/274/200/345/217/221/344/270/216/345/217/221/345/270/203/346/211/213/345/206/214.md +6 -4
- package/package.json +1 -1
package/dist/node/index.d.cts
CHANGED
|
@@ -342,6 +342,21 @@ interface LoginOptions {
|
|
|
342
342
|
orgUUID?: string;
|
|
343
343
|
/** 自定义 token 有效期 (秒) */
|
|
344
344
|
expiresIn?: number;
|
|
345
|
+
/**
|
|
346
|
+
* 桌面 loopback 授权成功后, 把浏览器 302 重定向到此品牌成功页 URL,
|
|
347
|
+
* 替代默认在 `127.0.0.1` 本地回环服务器渲染的"授权成功"HTML。
|
|
348
|
+
*
|
|
349
|
+
* 授权码仍先回投本地回环 (`codeResolver(code)` 不变), 安全模型不动 —
|
|
350
|
+
* 只是把"给浏览器看的那一屏"从本地 HTML 换成 302 到调用方域名页,
|
|
351
|
+
* 让地址栏显示业务域名而非 `127.0.0.1`。
|
|
352
|
+
*
|
|
353
|
+
* 取值约束: 必须是 `http(s)` 绝对 URL; 缺失或非法时回退本地 HTML (零回归)。
|
|
354
|
+
* 多部署/多域名调用方 (acosmi.com / sign.zhonglvbao.com / FedStart 等) 必须
|
|
355
|
+
* 传入随自身部署 origin 变化的 URL, **不可硬编码单一域名** —— 否则会把其他
|
|
356
|
+
* 部署的桌面用户导向错误域名, 且该域名若未服务此页将 404。SDK 默认不重定向,
|
|
357
|
+
* 由调用方显式 opt-in (确保目标页确实可达)。
|
|
358
|
+
*/
|
|
359
|
+
successRedirectURL?: string;
|
|
345
360
|
}
|
|
346
361
|
/** 检测 SSL/TLS 相关错误 (企业代理 Zscaler 等) */
|
|
347
362
|
declare function isSSLError(err: unknown): boolean;
|
|
@@ -2251,6 +2266,53 @@ declare function parseRemoteControlEvent(raw: unknown): RemoteControlEvent | nul
|
|
|
2251
2266
|
* 因此 `error` 本身不算 terminal, `done` 才是。
|
|
2252
2267
|
*/
|
|
2253
2268
|
declare function isTerminalRemoteEvent(ev: RemoteControlEvent): boolean;
|
|
2269
|
+
/**
|
|
2270
|
+
* C 端/平台可下达的 permission 决策 (契约 §14)。
|
|
2271
|
+
*
|
|
2272
|
+
* 仅 `approved` | `rejected` — `timeout` / `cancelled` 由服务端 reaper/cancel
|
|
2273
|
+
* 路径产生, 客户端不可下达。
|
|
2274
|
+
*/
|
|
2275
|
+
type RemotePermissionDecision = 'approved' | 'rejected';
|
|
2276
|
+
/** `agentRuns.submitPermissionResult()` 请求 — 回写 permission_request 的决策。 */
|
|
2277
|
+
interface RemotePermissionResultRequest {
|
|
2278
|
+
/** 对应 permission_request 事件的 requestId。 */
|
|
2279
|
+
requestId: string;
|
|
2280
|
+
decision: RemotePermissionDecision;
|
|
2281
|
+
/** 可选决策理由 (透传给 CrabCode control_response)。 */
|
|
2282
|
+
reason?: string;
|
|
2283
|
+
}
|
|
2284
|
+
/** `agentRuns.submitUserMessage()` 请求 — 会话中途追加用户消息 (Phase 5C 输入框)。 */
|
|
2285
|
+
interface RemoteUserMessageRequest {
|
|
2286
|
+
/** 消息正文; 服务端上限 64KB。Role 由服务端硬编码 'user' (契约 §6 #5 防注入)。 */
|
|
2287
|
+
content: string;
|
|
2288
|
+
/** 幂等键; 缺省由服务端生成并在 ack 中返回。 */
|
|
2289
|
+
requestId?: string;
|
|
2290
|
+
}
|
|
2291
|
+
/** `agentRuns.submitUserMessage()` 确认。 */
|
|
2292
|
+
interface RemoteUserMessageAck {
|
|
2293
|
+
ok: boolean;
|
|
2294
|
+
/** 服务端最终采用的幂等键 (请求未带时为服务端生成值)。 */
|
|
2295
|
+
requestId: string;
|
|
2296
|
+
}
|
|
2297
|
+
/**
|
|
2298
|
+
* `agentRuns.revealRemoteToken()` 响应 — desktop launcher 一次性 session token
|
|
2299
|
+
* (Phase 5B; 仅 runner='desktop')。
|
|
2300
|
+
*
|
|
2301
|
+
* 安全红线 (契约 §6): token 一次性消费 (重复调用 409), TTL ≤ 1h; 永不落
|
|
2302
|
+
* 浏览器存储 (localStorage/cookie), 应由 native 层接收后只注入 CrabCode
|
|
2303
|
+
* 子进程 env。
|
|
2304
|
+
*/
|
|
2305
|
+
interface RemoteSessionTokenGrant {
|
|
2306
|
+
accessToken: string;
|
|
2307
|
+
/** CrabCode 回连的 RemoteIO WS 完整地址 (公网 wss 基址 + run 路径 + tenant_id)。 */
|
|
2308
|
+
sessionUrl: string;
|
|
2309
|
+
tenantId: string;
|
|
2310
|
+
/**
|
|
2311
|
+
* 用户在 metadata.workspace 声明的期望项目目录 (契约 §18.3 r4); 缺省 undefined。
|
|
2312
|
+
* 桌面端决定是否 chdir 采纳 (路径不存在/越权时回退并提示)。
|
|
2313
|
+
*/
|
|
2314
|
+
workspace?: string;
|
|
2315
|
+
}
|
|
2254
2316
|
|
|
2255
2317
|
type AgentRunStatus = 'queued' | 'running' | 'completed' | 'failed' | 'cancelled';
|
|
2256
2318
|
/**
|
|
@@ -2269,6 +2331,17 @@ interface AgentRunArtifactPolicy {
|
|
|
2269
2331
|
enabled?: boolean;
|
|
2270
2332
|
maxFiles?: number;
|
|
2271
2333
|
}
|
|
2334
|
+
/**
|
|
2335
|
+
* Run metadata 约定键 (契约 §18.3 r4, additive)。
|
|
2336
|
+
*
|
|
2337
|
+
* 服务端防滥用上限: ≤32 条 / 键 ≤64B / 值 ≤2KB (`validateAgentRunMetadata`)。
|
|
2338
|
+
* - `title` 列表显示标题; 缺省由服务端从 input 首行派生 (60 rune 截断)。
|
|
2339
|
+
* - `workspace` 用户声明的期望项目目录; desktop runner 经
|
|
2340
|
+
* `revealRemoteToken()` 响应的 `workspace` 字段回传, 由桌面 launcher
|
|
2341
|
+
* 决定是否 chdir 采纳 (路径不存在/越权时回退本机当前目录并提示)。
|
|
2342
|
+
*/
|
|
2343
|
+
declare const AGENT_RUN_META_TITLE = "title";
|
|
2344
|
+
declare const AGENT_RUN_META_WORKSPACE = "workspace";
|
|
2272
2345
|
interface AgentRunCreateRequest {
|
|
2273
2346
|
appId: string;
|
|
2274
2347
|
mode?: string;
|
|
@@ -2278,6 +2351,10 @@ interface AgentRunCreateRequest {
|
|
|
2278
2351
|
model?: string;
|
|
2279
2352
|
activeSkillIds?: string[];
|
|
2280
2353
|
knowledgeBaseIds?: string[];
|
|
2354
|
+
/**
|
|
2355
|
+
* 自由 KV 元数据。远控 run 的约定键见 {@link AGENT_RUN_META_TITLE} /
|
|
2356
|
+
* {@link AGENT_RUN_META_WORKSPACE} (契约 §18.3 r4)。
|
|
2357
|
+
*/
|
|
2281
2358
|
metadata?: Record<string, string>;
|
|
2282
2359
|
localContextPolicy?: AgentRunLocalContextPolicy;
|
|
2283
2360
|
artifactPolicy?: AgentRunArtifactPolicy;
|
|
@@ -2286,6 +2363,12 @@ interface AgentRunCreateRequest {
|
|
|
2286
2363
|
adapter?: AdapterKind;
|
|
2287
2364
|
permissionPolicy?: PermissionPolicy;
|
|
2288
2365
|
workspacePolicy?: WorkspacePolicy;
|
|
2366
|
+
/**
|
|
2367
|
+
* BYO 模型密钥公开引用 (契约 §18.2; 仅远控 runtime + runner='cloud')。
|
|
2368
|
+
* 只传 `crabcodeByok.create()` 返回的 credentialRef; 明文/密文绝不过此请求 —
|
|
2369
|
+
* 解密只发生在网关 launchCloudRunner 的子进程 env 注入点。
|
|
2370
|
+
*/
|
|
2371
|
+
byokCredentialRef?: string;
|
|
2289
2372
|
}
|
|
2290
2373
|
/**
|
|
2291
2374
|
* Narrow type for `agentRuns.createRemoteRun(req)`:
|
|
@@ -2309,6 +2392,27 @@ interface AgentRun {
|
|
|
2309
2392
|
completedAt?: string;
|
|
2310
2393
|
error?: AgentRunErrorPayload;
|
|
2311
2394
|
metadata?: Record<string, string>;
|
|
2395
|
+
runtime?: AgentRunRuntime | string;
|
|
2396
|
+
runner?: RunnerKind | string;
|
|
2397
|
+
adapter?: AdapterKind | string;
|
|
2398
|
+
}
|
|
2399
|
+
/** `agentRuns.list()` 过滤/分页参数 (GET /agent-runs, Phase 5C 控制台)。 */
|
|
2400
|
+
interface AgentRunListOptions {
|
|
2401
|
+
/** 按 runtime 过滤, 例 'crabcode_remote' (远控控制台列表)。 */
|
|
2402
|
+
runtime?: AgentRunRuntime | string;
|
|
2403
|
+
/** 按状态过滤, 例 'running'。 */
|
|
2404
|
+
status?: AgentRunStatus | string;
|
|
2405
|
+
/** 页码, 1 起; 缺省 1。 */
|
|
2406
|
+
page?: number;
|
|
2407
|
+
/** 每页条数; 缺省 20, 服务端上限 100。 */
|
|
2408
|
+
pageSize?: number;
|
|
2409
|
+
}
|
|
2410
|
+
/** `agentRuns.list()` 结果 — 分页形状对齐 listConsumeRecords ({records,total,page,pageSize})。 */
|
|
2411
|
+
interface AgentRunListResult {
|
|
2412
|
+
records: AgentRun[];
|
|
2413
|
+
total: number;
|
|
2414
|
+
page: number;
|
|
2415
|
+
pageSize: number;
|
|
2312
2416
|
}
|
|
2313
2417
|
interface AgentRunCreateResponse {
|
|
2314
2418
|
runId: string;
|
|
@@ -2461,6 +2565,13 @@ declare class AgentRunsClient {
|
|
|
2461
2565
|
private readonly client;
|
|
2462
2566
|
constructor(client: Client);
|
|
2463
2567
|
create(req: AgentRunCreateRequest, signal?: AbortSignal): Promise<AgentRunCreateResponse>;
|
|
2568
|
+
/**
|
|
2569
|
+
* List the caller's own agent runs, newest first (GET /agent-runs, Phase 5C
|
|
2570
|
+
* console). Returns view metadata only — never session tokens, policies or
|
|
2571
|
+
* messages (contract §6). Filter remote-control runs with
|
|
2572
|
+
* `{ runtime: 'crabcode_remote' }`.
|
|
2573
|
+
*/
|
|
2574
|
+
list(opts?: AgentRunListOptions, signal?: AbortSignal): Promise<AgentRunListResult>;
|
|
2464
2575
|
get(runId: string, signal?: AbortSignal): Promise<AgentRun>;
|
|
2465
2576
|
stream(runId: string, opts?: AgentRunStreamOptions, signal?: AbortSignal): AsyncIterable<AgentRunStreamEvent>;
|
|
2466
2577
|
cancel(runId: string, signal?: AbortSignal): Promise<AgentRun>;
|
|
@@ -2491,6 +2602,35 @@ declare class AgentRunsClient {
|
|
|
2491
2602
|
* matching `parseRemoteControlEvent`'s null-return contract.
|
|
2492
2603
|
*/
|
|
2493
2604
|
streamRemoteControl(runId: string, signal?: AbortSignal): AsyncIterable<RemoteControlEvent>;
|
|
2605
|
+
/**
|
|
2606
|
+
* Submit a permission decision for a pending `permission_request` event
|
|
2607
|
+
* (POST /agent-runs/:runId/permission-results, contract §4/§9/§14).
|
|
2608
|
+
*
|
|
2609
|
+
* Only `approved` | `rejected` may be submitted by clients — `timeout` /
|
|
2610
|
+
* `cancelled` are produced server-side. Requires an OAuth token with the
|
|
2611
|
+
* explicit `remote_control` scope (or a web JWT). 409 means the remote
|
|
2612
|
+
* session is gone (e.g. already terminated).
|
|
2613
|
+
*/
|
|
2614
|
+
submitPermissionResult(runId: string, result: RemotePermissionResultRequest, signal?: AbortSignal): Promise<void>;
|
|
2615
|
+
/**
|
|
2616
|
+
* Append a mid-session user message to a remote run
|
|
2617
|
+
* (POST /agent-runs/:runId/messages, Phase 5C). The message role is
|
|
2618
|
+
* hard-coded to 'user' server-side (contract §6 #5 prompt-injection
|
|
2619
|
+
* defence); content is limited to 64KB. Requires the explicit
|
|
2620
|
+
* `remote_control` scope (or a web JWT).
|
|
2621
|
+
*/
|
|
2622
|
+
submitUserMessage(runId: string, message: RemoteUserMessageRequest, signal?: AbortSignal): Promise<RemoteUserMessageAck>;
|
|
2623
|
+
/**
|
|
2624
|
+
* Reveal the one-shot remote session token for a desktop-runner run
|
|
2625
|
+
* (POST /agent-runs/:runId/remote-token, Phase 5B; contract §18.1).
|
|
2626
|
+
*
|
|
2627
|
+
* Desktop launcher only: the token is single-consumption (a second call
|
|
2628
|
+
* returns 409) and must never touch browser storage — receive it in the
|
|
2629
|
+
* native layer and inject it into the CrabCode child-process env only
|
|
2630
|
+
* (contract §6). Cloud / local_embedded runners never expose tokens over
|
|
2631
|
+
* HTTP (403). Requires the explicit `remote_control` scope.
|
|
2632
|
+
*/
|
|
2633
|
+
revealRemoteToken(runId: string, signal?: AbortSignal): Promise<RemoteSessionTokenGrant>;
|
|
2494
2634
|
private streamRemoteControlGen;
|
|
2495
2635
|
listArtifacts(runId: string, signal?: AbortSignal): Promise<AgentRunArtifact[]>;
|
|
2496
2636
|
downloadArtifact(runId: string, artifactId: string, signal?: AbortSignal): Promise<AgentRunDownload>;
|
|
@@ -2506,6 +2646,54 @@ declare class AgentRunsClient {
|
|
|
2506
2646
|
private requestRawInner;
|
|
2507
2647
|
}
|
|
2508
2648
|
|
|
2649
|
+
/** 允许的第三方提供商 (与网关 byokAllowedProviders / managed_model Provider 谱系对齐)。 */
|
|
2650
|
+
type ByokProvider = 'anthropic' | 'openai' | 'deepseek' | 'dashscope' | 'zhipu' | 'volcengine' | 'custom';
|
|
2651
|
+
type ByokCredentialStatus = 'active' | 'revoked';
|
|
2652
|
+
/** BYOK 密钥 masked 视图 — 永不含明文/密文。 */
|
|
2653
|
+
interface ByokCredential {
|
|
2654
|
+
credentialRef: string;
|
|
2655
|
+
provider: ByokProvider | string;
|
|
2656
|
+
name?: string;
|
|
2657
|
+
/** 仅 provider='custom' 时存在 (https:// 起始)。 */
|
|
2658
|
+
baseUrl?: string;
|
|
2659
|
+
/** 明文指纹 (轮换后变化; 用于"是否同一把钥匙"的人工核对)。 */
|
|
2660
|
+
fingerprint?: string;
|
|
2661
|
+
status: ByokCredentialStatus | string;
|
|
2662
|
+
createdAt?: string;
|
|
2663
|
+
lastUsedAt?: string;
|
|
2664
|
+
}
|
|
2665
|
+
/** `crabcodeByok.create()` 请求。明文一次性提交, 服务端加密落库后即弃。 */
|
|
2666
|
+
interface ByokCreateRequest {
|
|
2667
|
+
provider: ByokProvider;
|
|
2668
|
+
/** API key 明文; ≤4KB, 不得含换行。 */
|
|
2669
|
+
plaintext: string;
|
|
2670
|
+
/** 显示名; ≤100 字符。 */
|
|
2671
|
+
name?: string;
|
|
2672
|
+
/** 仅 provider='custom' 必填 (必须 https://); 其他 provider 不可设。 */
|
|
2673
|
+
baseUrl?: string;
|
|
2674
|
+
}
|
|
2675
|
+
declare module '@acosmi/sdk-ts' {
|
|
2676
|
+
interface Client {
|
|
2677
|
+
/** CrabCode 远控 BYO 模型密钥管理面 (契约 §18.2)。 */
|
|
2678
|
+
readonly crabcodeByok: CrabCodeByokClient;
|
|
2679
|
+
}
|
|
2680
|
+
}
|
|
2681
|
+
declare class CrabCodeByokClient {
|
|
2682
|
+
private readonly client;
|
|
2683
|
+
constructor(client: Client);
|
|
2684
|
+
/** 列出调用者自己的密钥 (masked; 新→旧, 服务端上限 100 条)。 */
|
|
2685
|
+
list(signal?: AbortSignal): Promise<ByokCredential[]>;
|
|
2686
|
+
/**
|
|
2687
|
+
* 创建密钥 — 明文一次性提交, 返回 masked 视图。
|
|
2688
|
+
* 单用户上限 20 把; provider='custom' 必须带 https:// baseUrl。
|
|
2689
|
+
*/
|
|
2690
|
+
create(req: ByokCreateRequest, signal?: AbortSignal): Promise<ByokCredential>;
|
|
2691
|
+
/** 轮换密钥明文 — credentialRef 不变, fingerprint 更新。已吊销的密钥不可轮换 (400)。 */
|
|
2692
|
+
rotate(credentialRef: string, newPlaintext: string, signal?: AbortSignal): Promise<ByokCredential>;
|
|
2693
|
+
/** 吊销密钥 (软状态 + 服务端抹密文, 不可恢复; 幂等 — 重复吊销返回当前视图)。 */
|
|
2694
|
+
revoke(credentialRef: string, signal?: AbortSignal): Promise<ByokCredential>;
|
|
2695
|
+
}
|
|
2696
|
+
|
|
2509
2697
|
declare const ScopeComplianceEvidenceRead = "compliance:evidence:read";
|
|
2510
2698
|
declare const ScopeComplianceEvidenceWrite = "compliance:evidence:write";
|
|
2511
2699
|
declare const ScopeComplianceTimestampIssue = "compliance:timestamp:issue";
|
|
@@ -4696,8 +4884,7 @@ interface BridgeThreadRef {
|
|
|
4696
4884
|
/**
|
|
4697
4885
|
* ChatIntegration — 平台安装记录的 SDK 只读视图.
|
|
4698
4886
|
*
|
|
4699
|
-
*
|
|
4700
|
-
* Phase 7B handler 落地后, SDK admin 子客户端会按此型号 GET。
|
|
4887
|
+
* Phase 7B 起由 `client.chatBridge` 按此型号 GET (响应 camelCase, 契约 §12)。
|
|
4701
4888
|
*/
|
|
4702
4889
|
interface ChatIntegration {
|
|
4703
4890
|
id: string;
|
|
@@ -4708,6 +4895,10 @@ interface ChatIntegration {
|
|
|
4708
4895
|
workspaceIdHash?: string;
|
|
4709
4896
|
botIdHash?: string;
|
|
4710
4897
|
status: IntegrationStatus;
|
|
4898
|
+
/**
|
|
4899
|
+
* @deprecated 服务端从不返回此字段 (model ConfigJSON json:"-", 防 secret 误入
|
|
4900
|
+
* 后整体不外发) — 读取恒为 undefined。写入走 createIntegration({ configJson })。
|
|
4901
|
+
*/
|
|
4711
4902
|
configJson?: string;
|
|
4712
4903
|
installedByUserId?: string;
|
|
4713
4904
|
lastUsedAt?: string;
|
|
@@ -4803,4 +4994,53 @@ declare function isChannelInboundEvent(v: unknown): v is ChannelInboundEvent;
|
|
|
4803
4994
|
*/
|
|
4804
4995
|
declare function asCredentialRef(s: string): CredentialRef;
|
|
4805
4996
|
|
|
4806
|
-
export { ALL_INTEGRATION_STATUS, ALL_PLATFORMS, ALL_REGIONS, type APIResponse, type AdapterKind, type AgentRun, type AgentRunArtifact, type AgentRunArtifactList, type AgentRunArtifactPolicy, type AgentRunCreateRequest, type AgentRunCreateResponse, type AgentRunDownload, type AgentRunErrorPayload, type AgentRunLocalContextPolicy, type AgentRunLocalToolHandler, type AgentRunLocalToolHandlerContext, type AgentRunLocalToolResult, type AgentRunRemoteCreateRequest, type AgentRunRunOptions, type AgentRunRuntime, type AgentRunSettlement, type AgentRunStatus, AgentRunStreamError, type AgentRunStreamEvent, type AgentRunStreamOptions, type AgentRunUsage, type AgentRunWithLocalToolsOptions, AgentRunsClient, AnthropicResponse, type ApiClientRef, type ApproveSealApprovalQuery, type AssignSeatRequest, type Audience, AudienceEnum, type AuthorizeResult, type BalanceDetail, type BalanceDetailEntitlement, type BillingMode, BillingModeEnum, type BillingPreflightResult, type BlockMeta, type BookConsultationRequest, type BridgeThreadRef, type BrowserRefreshMode, type BugReportResult, type BugView, BusinessError, type BuyResponse, type CancelSealApprovalQuery, type CaseLead, type CaseMatter, type CertificationStatus, type ChannelAttachment, type ChannelCard, type ChannelCardAction, type ChannelInboundEvent, type ChannelOutboundEvent, type ChatBridgeSession, type ChatCredentialPublic, type ChatIntegration, ChatRequest, ChatResponse, type ChatThread, Client, type ClientRegistration, type ComplianceAssetType, type ComplianceBenefitType, type ComplianceBillingDisplayStatus, type ComplianceCapability, ComplianceClient, type ComplianceClientErrorCode, type ComplianceDigestSource, type ComplianceEnvelopeStatus, type ComplianceErrorInfo, type ComplianceErrorKey, type ComplianceHashAlgorithm, CompliancePollError, type CompliancePollOptions, type CompliancePrivacyLevel, type ComplianceProviderRequestStatus, type ComplianceProviderStatus, type ComplianceQuoteResponse, type ComplianceReport, type ComplianceScope, type ComplianceSealApprovalStatus, type ComplianceSku, type ComplianceTimestampVerificationStatus, type ComplianceWriteOptions, type Config, type ConsumeRecord, type ConsumeRecordPage, type ContractTemplateField, type ContractTemplateFieldType, type ContractTemplatePageItem, type ContractTemplateResp, type ContractTemplateStatus, type ContractTemplateVersion, type CorporateTransfer, type CreateContractTemplateRequest, type CreateEvidenceAssetRequest, type CreateH5SigningUrlRequest, type CreateReportRequest, type CreateSigningEnvelopeRequest, type CreateWebAuthorizationRequestOptions, type CredentialRef, DEFAULT_API_TIMEOUT_MS, DEFAULT_GATEWAY_BASE_URL, DefaultRetryPolicy, type DeviceRegistration, type EnterpriseKycMyStatusView, type EnterpriseMember, type EnterpriseSummary, type EntitlementBalance, type EntitlementItem, type EnvelopeContractItem, ErrAuthDenied, ErrBillingCallbackCannotCommit, ErrBillingCommitRequiresLocalVerify, ErrBillingS2sForbidden, ErrBrowserOpen, ErrComplianceStepUpRequired, ErrDiscovery, ErrEnvelopeGateClosed, ErrOAuthCORSBlocked, ErrProviderNotConfigured, ErrProviderUnknownNoRetry, ErrRefreshProxyFailed, ErrRegistration, ErrSSLProxy, ErrSealApprovalContractHashMismatch, ErrSealApprovalExpired, ErrSealApprovalLocationMismatch, ErrSealApprovalNonceUsed, ErrSealApprovalNotApproved, ErrSealApprovalSealMismatch, ErrSealApprovalTransactorMismatch, ErrSealUseAlreadyConsumed, ErrStateMismatch, ErrTimeout, ErrTokenExchange, ErrTokenExpired, EventAuthURL, EventComplete, EventError, type EvidenceAsset, type EvidenceAssetPageItem, type EvidencePackage, type EvidencePackagePageItem, type FeatureGateState, type FeatureGateStatus, FileTokenStore, type FilterStatus, FilterStatusAdminBypass, FilterStatusDisabledByFlag, FilterStatusFallbackMissingUser, FilterStatusFallbackNoBuckets, FilterStatusFallbackTkdistError, FilterStatusFallbackTkdistSkew, FilterStatusInternalBypass, FilterStatusOK, FilterStatusUnknown, type GateQuota, type GenerateSkillRequest, type GenerateSkillResult, HTTPError, type IdempotencyKey, IdempotencyKeyHeader, ImageGenerationRequest, ImageGenerationResponse, InMemoryTokenStore, type InitiateCorporateTransferInput, type InitiateCorporateTransferResult, InputModality, type IntegrationStatus, type InviteMemberRequest, type Invoice, type IssueTimestampRequest, type LawyerCredentialMyView, type LawyerSummary, type LegalConsultation, type LegalServiceOrder, type LegalServiceSku, type LegalSkuCode, type ListContractTemplatesRequest, type ListEvidenceAssetsRequest, type ListEvidencePackagesRequest, type ListOperationsRequest, type ListReportsRequest, type ListSealApprovalsRequest, type ListSealUsesRequest, type ListSigningEnvelopesRequest, type ListTimestampsRequest, LocalStorageTokenStore, type LoginErrCode, type LoginEvent, type LoginEventType, type LoginOptions, ManagedModel, type Membership, type ModelBucket, type ModelByQuotaResponse, ModelCapabilities, type ModelCoefficient, ModelNotFoundError, NetworkError, type Notification, type NotificationList, type NotificationPreference, type NotificationUnreadCount, type OAuthMetadataProfile, OAuthTokenEndpointError, type OpenAIChatChoice, type OpenAIChatMessage, type OpenAIChatResponse, type OpenAIFunctionCall, type OpenAIStreamChoice, type OpenAIStreamChunk, type OpenAIStreamDelta, type OpenAIStreamToolCall, type OpenAIToolCall, type OpenAIUsage, type OperationDetail, type OperationId, type OperationPageItem, type OperationSource, type OperationStatus, type OptimizeSkillRequest, type OptimizeSkillResult, type Order, type OrderListItem, type OrderStatus, OrderTerminalError, type OrgConsumeReport, type OrgSeat, type OrgSubscription, type PageRequest, type PageResult, type PayPayload, type PaymentMethod, type PermissionPolicy, type Platform, type PricingConfig, type PrincipalRef, type Product, type ProductFamily, ProductFamilyEnum, ProviderAdapter, type ProviderRequestStatus, type ProviderRequestStatusView, type PublicEvidenceVerifyResult, type PublicModelSummary, QuotaSummary, RETRY_ADVICE_REASONS, RateLimitError, type RefundPolicy, type RefundRecord, type Region, type RegionScope, RegionScopeEnum, type RegisterWebOAuthClientOptions, type RejectSealApprovalQuery, type RemoteControlDone, type RemoteControlError, type RemoteControlEvent, type RemoteControlEventType, type RemoteControlPermissionRequest, type RemoteControlPermissionResult, type RemoteControlReasoningDelta, type RemoteControlSettle, type RemoteControlStatus, type RemoteControlTextDelta, type RemoteControlToolCall, type RemoteControlToolResult, type RemoteControlUsage, type RemoteSessionPlacement, type RemoteSessionRef, type ReportDownload, type ReportPageItem, type ReqTimeoutCtl, type RequestInvoiceInput, type RequestRefundInput, type RetryAdvice, type RetryAdviceReason, type RetryPolicy, type RetryRequestInfo, type RolloverPolicy, type RunnerKind, ScopeAI, ScopeAccount, ScopeChatBridge, ScopeChatBridgeRead, ScopeChatBridgeRotate, ScopeChatBridgeWrite, ScopeComplianceContractSigningRead, ScopeComplianceContractSigningWrite, ScopeComplianceContractTemplateRead, ScopeComplianceContractTemplateWrite, ScopeComplianceEvidenceRead, ScopeComplianceEvidenceWrite, ScopeComplianceReportsPublish, ScopeComplianceReportsRead, ScopeComplianceReportsWrite, ScopeComplianceSealApprovalApprove, ScopeComplianceSealApprovalRequest, ScopeComplianceSealManage, ScopeComplianceSealUseExecute, ScopeComplianceTimestampIssue, ScopeComplianceTimestampVerify, ScopeEntitlements, ScopeModels, ScopeModelsChat, ScopeProfile, ScopeRemoteControl, ScopeRemoteControlAgentRun, ScopeRemoteControlPermissionResponse, ScopeRemoteControlSessionControl, ScopeSkillStore, ScopeSkills, ScopeTokenPackages, ScopeTools, ScopeToolsExecute, ScopeWallet, ScopeWalletReadonly, type SealApproval, type SealApprovalPageItem, type SealUsePageItem, type ServerMetadata, type SignEnvelopeRequest, type SigningEnvelope, type SigningEnvelopePageItem, type SkillBrowseListResponse, type SkillBrowseResponse, type SkillStoreItem, type SkillStoreListItem, type SkillStoreQuery, type SkillSummary, type SortDirection, SourcesEvent, type StepUpStatus, StreamError, StreamEvent, StreamSettlement, type SubmitCaseLeadRequest, type SubmitSealApprovalRequest, type SubscriptionAudience, type SubscriptionPlan, type SubscriptionTier, type TenantRef, type TimestampPageItem, type TimestampToken, type TimestampVerifyResult, type TokenPackage, type TokenResponse, type TokenSet, type TokenStore, type ToolListResponse, type ToolProvider, type ToolView, type Transaction, type TsaProvider, type TsaStats, type UpdateContractTemplateRequest, type UploadContractTemplatePdfRequest, type UserSubscription, type VerifyStatus, type VerifyTimestampRequest, VideoGenerationRequest, VideoTaskResponse, type VoidEnvelopeRequest, type WSConfig, type WSEvent, type WalletStats, type WebAuthorizationCallbackParams, type WebAuthorizationPending, type WebAuthorizationRequest, type WorkspacePolicy, type YudaoPageResult, allScopes, apiResponseBusinessError, apiResponseGetMessage, asCredentialRef, authorize, buildBetas, chatBridgeScopes, classifyComplianceError, commerceScopes, completeWebAuthorizationRequest, complianceErrorToRetryAdvice, complianceScopes, computeBackoff, createWebAuthorizationRequest, defaultRetryable, defaultSafeToRetry, discover, discoverWebOAuthMetadata, discoverWithProfile, effectivePolicy, exchangeCode, extractAnthropicBlockMeta, fileLockDefaults, findDesktopVisualUnderstandingModel, findFirstModelByInputModality, generateState, isBillingConfirmable, isChannelInboundEvent, isComplianceBusinessError, isComplianceTerminalError, isIntegrationStatus, isInvalidGrantError, isPlatform, isRegion, isSSECommentLine, isSSLError, isTerminalRemoteEvent, isValidTokenSet, maxEndUserIdLength, modelScopes, modelSupportsImageInput, modelSupportsInputModality, newFileTokenStore, newTokenSet, normalizeGatewayBaseURL, normalizeOverrideBaseURL, parseNotificationEvent, parseRemoteControlEvent, refreshToken, register, registerWebOAuthClient, remoteControlScopes, retryReasonForComplianceKey, retryReasonForOAuthError, revokeToken, skillScopes, tokenSetIsExpired, uniqueMerge, validateEndUserId };
|
|
4997
|
+
/** `chatBridge.createIntegration()` 请求 (wire snake_case 由 SDK 转换)。 */
|
|
4998
|
+
interface CreateIntegrationRequest {
|
|
4999
|
+
/** 绑定的 Acosmi app。 */
|
|
5000
|
+
appId: string;
|
|
5001
|
+
platform: Platform;
|
|
5002
|
+
region: Region;
|
|
5003
|
+
/** 平台 workspace/企业 原始 ID; 服务端只存 SHA256 hash。 */
|
|
5004
|
+
workspaceId?: string;
|
|
5005
|
+
/** 平台 bot 原始 ID; 服务端只存 SHA256 hash。 */
|
|
5006
|
+
botId?: string;
|
|
5007
|
+
/** 仅非敏感配置 (rate limit / feature toggles); 严禁含 secret。 */
|
|
5008
|
+
configJson?: string;
|
|
5009
|
+
}
|
|
5010
|
+
/** `chatBridge.storeCredential()` 请求 — 明文一次性提交。 */
|
|
5011
|
+
interface StoreCredentialRequest {
|
|
5012
|
+
/** 凭证种类 (平台相关, 例: app_secret / signing_secret / bot_token)。 */
|
|
5013
|
+
secretKind: string;
|
|
5014
|
+
/** 凭证明文; 加密落库后即弃, 响应只回 masked 视图。 */
|
|
5015
|
+
plaintext: string;
|
|
5016
|
+
region?: Region;
|
|
5017
|
+
platform?: Platform;
|
|
5018
|
+
}
|
|
5019
|
+
declare module '@acosmi/sdk-ts' {
|
|
5020
|
+
interface Client {
|
|
5021
|
+
/** 第三方聊天 bridge 控制面 (Phase 7B; 契约 §6/§12/ADR-8)。 */
|
|
5022
|
+
readonly chatBridge: ChatBridgeClient;
|
|
5023
|
+
}
|
|
5024
|
+
}
|
|
5025
|
+
declare class ChatBridgeClient {
|
|
5026
|
+
private readonly client;
|
|
5027
|
+
constructor(client: Client);
|
|
5028
|
+
/** 创建平台集成 (chat_bridge:write)。云端控制台与下游 (CrabCode) 调的是同一端点/同一份数据。 */
|
|
5029
|
+
createIntegration(req: CreateIntegrationRequest, signal?: AbortSignal): Promise<ChatIntegration>;
|
|
5030
|
+
/** 列出本租户集成 (chat_bridge:read; masked 视图)。可按 appId 过滤。 */
|
|
5031
|
+
listIntegrations(appId?: string, signal?: AbortSignal): Promise<ChatIntegration[]>;
|
|
5032
|
+
/** 取单个集成 (chat_bridge:read)。不存在/跨租户一律 404。 */
|
|
5033
|
+
getIntegration(id: string, signal?: AbortSignal): Promise<ChatIntegration>;
|
|
5034
|
+
/** 更新集成状态 (chat_bridge:write): pending | active | suspended | revoked。 */
|
|
5035
|
+
updateIntegrationStatus(id: string, status: IntegrationStatus, signal?: AbortSignal): Promise<void>;
|
|
5036
|
+
/** 存凭证 (chat_bridge:write) — 明文一次性提交, 返回 masked 记录 (ref+fingerprint)。 */
|
|
5037
|
+
storeCredential(integrationId: string, req: StoreCredentialRequest, signal?: AbortSignal): Promise<ChatCredentialPublic>;
|
|
5038
|
+
/** 列出集成的凭证 (chat_bridge:read; masked, 永不含明文/密文)。 */
|
|
5039
|
+
listCredentials(integrationId: string, signal?: AbortSignal): Promise<ChatCredentialPublic[]>;
|
|
5040
|
+
/** 轮换凭证 (chat_bridge:rotate, 高风险) — ref 不变, fingerprint 更新。 */
|
|
5041
|
+
rotateCredential(integrationId: string, secretKind: string, newPlaintext: string, signal?: AbortSignal): Promise<ChatCredentialPublic>;
|
|
5042
|
+
/** 吊销凭证 (chat_bridge:rotate) — 软吊销 + 服务端抹密文。 */
|
|
5043
|
+
revokeCredential(credentialRef: string, signal?: AbortSignal): Promise<void>;
|
|
5044
|
+
}
|
|
5045
|
+
|
|
5046
|
+
export { AGENT_RUN_META_TITLE, AGENT_RUN_META_WORKSPACE, ALL_INTEGRATION_STATUS, ALL_PLATFORMS, ALL_REGIONS, type APIResponse, type AdapterKind, type AgentRun, type AgentRunArtifact, type AgentRunArtifactList, type AgentRunArtifactPolicy, type AgentRunCreateRequest, type AgentRunCreateResponse, type AgentRunDownload, type AgentRunErrorPayload, type AgentRunListOptions, type AgentRunListResult, type AgentRunLocalContextPolicy, type AgentRunLocalToolHandler, type AgentRunLocalToolHandlerContext, type AgentRunLocalToolResult, type AgentRunRemoteCreateRequest, type AgentRunRunOptions, type AgentRunRuntime, type AgentRunSettlement, type AgentRunStatus, AgentRunStreamError, type AgentRunStreamEvent, type AgentRunStreamOptions, type AgentRunUsage, type AgentRunWithLocalToolsOptions, AgentRunsClient, AnthropicResponse, type ApiClientRef, type ApproveSealApprovalQuery, type AssignSeatRequest, type Audience, AudienceEnum, type AuthorizeResult, type BalanceDetail, type BalanceDetailEntitlement, type BillingMode, BillingModeEnum, type BillingPreflightResult, type BlockMeta, type BookConsultationRequest, type BridgeThreadRef, type BrowserRefreshMode, type BugReportResult, type BugView, BusinessError, type BuyResponse, type ByokCreateRequest, type ByokCredential, type ByokCredentialStatus, type ByokProvider, type CancelSealApprovalQuery, type CaseLead, type CaseMatter, type CertificationStatus, type ChannelAttachment, type ChannelCard, type ChannelCardAction, type ChannelInboundEvent, type ChannelOutboundEvent, ChatBridgeClient, type ChatBridgeSession, type ChatCredentialPublic, type ChatIntegration, ChatRequest, ChatResponse, type ChatThread, Client, type ClientRegistration, type ComplianceAssetType, type ComplianceBenefitType, type ComplianceBillingDisplayStatus, type ComplianceCapability, ComplianceClient, type ComplianceClientErrorCode, type ComplianceDigestSource, type ComplianceEnvelopeStatus, type ComplianceErrorInfo, type ComplianceErrorKey, type ComplianceHashAlgorithm, CompliancePollError, type CompliancePollOptions, type CompliancePrivacyLevel, type ComplianceProviderRequestStatus, type ComplianceProviderStatus, type ComplianceQuoteResponse, type ComplianceReport, type ComplianceScope, type ComplianceSealApprovalStatus, type ComplianceSku, type ComplianceTimestampVerificationStatus, type ComplianceWriteOptions, type Config, type ConsumeRecord, type ConsumeRecordPage, type ContractTemplateField, type ContractTemplateFieldType, type ContractTemplatePageItem, type ContractTemplateResp, type ContractTemplateStatus, type ContractTemplateVersion, type CorporateTransfer, CrabCodeByokClient, type CreateContractTemplateRequest, type CreateEvidenceAssetRequest, type CreateH5SigningUrlRequest, type CreateIntegrationRequest, type CreateReportRequest, type CreateSigningEnvelopeRequest, type CreateWebAuthorizationRequestOptions, type CredentialRef, DEFAULT_API_TIMEOUT_MS, DEFAULT_GATEWAY_BASE_URL, DefaultRetryPolicy, type DeviceRegistration, type EnterpriseKycMyStatusView, type EnterpriseMember, type EnterpriseSummary, type EntitlementBalance, type EntitlementItem, type EnvelopeContractItem, ErrAuthDenied, ErrBillingCallbackCannotCommit, ErrBillingCommitRequiresLocalVerify, ErrBillingS2sForbidden, ErrBrowserOpen, ErrComplianceStepUpRequired, ErrDiscovery, ErrEnvelopeGateClosed, ErrOAuthCORSBlocked, ErrProviderNotConfigured, ErrProviderUnknownNoRetry, ErrRefreshProxyFailed, ErrRegistration, ErrSSLProxy, ErrSealApprovalContractHashMismatch, ErrSealApprovalExpired, ErrSealApprovalLocationMismatch, ErrSealApprovalNonceUsed, ErrSealApprovalNotApproved, ErrSealApprovalSealMismatch, ErrSealApprovalTransactorMismatch, ErrSealUseAlreadyConsumed, ErrStateMismatch, ErrTimeout, ErrTokenExchange, ErrTokenExpired, EventAuthURL, EventComplete, EventError, type EvidenceAsset, type EvidenceAssetPageItem, type EvidencePackage, type EvidencePackagePageItem, type FeatureGateState, type FeatureGateStatus, FileTokenStore, type FilterStatus, FilterStatusAdminBypass, FilterStatusDisabledByFlag, FilterStatusFallbackMissingUser, FilterStatusFallbackNoBuckets, FilterStatusFallbackTkdistError, FilterStatusFallbackTkdistSkew, FilterStatusInternalBypass, FilterStatusOK, FilterStatusUnknown, type GateQuota, type GenerateSkillRequest, type GenerateSkillResult, HTTPError, type IdempotencyKey, IdempotencyKeyHeader, ImageGenerationRequest, ImageGenerationResponse, InMemoryTokenStore, type InitiateCorporateTransferInput, type InitiateCorporateTransferResult, InputModality, type IntegrationStatus, type InviteMemberRequest, type Invoice, type IssueTimestampRequest, type LawyerCredentialMyView, type LawyerSummary, type LegalConsultation, type LegalServiceOrder, type LegalServiceSku, type LegalSkuCode, type ListContractTemplatesRequest, type ListEvidenceAssetsRequest, type ListEvidencePackagesRequest, type ListOperationsRequest, type ListReportsRequest, type ListSealApprovalsRequest, type ListSealUsesRequest, type ListSigningEnvelopesRequest, type ListTimestampsRequest, LocalStorageTokenStore, type LoginErrCode, type LoginEvent, type LoginEventType, type LoginOptions, ManagedModel, type Membership, type ModelBucket, type ModelByQuotaResponse, ModelCapabilities, type ModelCoefficient, ModelNotFoundError, NetworkError, type Notification, type NotificationList, type NotificationPreference, type NotificationUnreadCount, type OAuthMetadataProfile, OAuthTokenEndpointError, type OpenAIChatChoice, type OpenAIChatMessage, type OpenAIChatResponse, type OpenAIFunctionCall, type OpenAIStreamChoice, type OpenAIStreamChunk, type OpenAIStreamDelta, type OpenAIStreamToolCall, type OpenAIToolCall, type OpenAIUsage, type OperationDetail, type OperationId, type OperationPageItem, type OperationSource, type OperationStatus, type OptimizeSkillRequest, type OptimizeSkillResult, type Order, type OrderListItem, type OrderStatus, OrderTerminalError, type OrgConsumeReport, type OrgSeat, type OrgSubscription, type PageRequest, type PageResult, type PayPayload, type PaymentMethod, type PermissionPolicy, type Platform, type PricingConfig, type PrincipalRef, type Product, type ProductFamily, ProductFamilyEnum, ProviderAdapter, type ProviderRequestStatus, type ProviderRequestStatusView, type PublicEvidenceVerifyResult, type PublicModelSummary, QuotaSummary, RETRY_ADVICE_REASONS, RateLimitError, type RefundPolicy, type RefundRecord, type Region, type RegionScope, RegionScopeEnum, type RegisterWebOAuthClientOptions, type RejectSealApprovalQuery, type RemoteControlDone, type RemoteControlError, type RemoteControlEvent, type RemoteControlEventType, type RemoteControlPermissionRequest, type RemoteControlPermissionResult, type RemoteControlReasoningDelta, type RemoteControlSettle, type RemoteControlStatus, type RemoteControlTextDelta, type RemoteControlToolCall, type RemoteControlToolResult, type RemoteControlUsage, type RemotePermissionDecision, type RemotePermissionResultRequest, type RemoteSessionPlacement, type RemoteSessionRef, type RemoteSessionTokenGrant, type RemoteUserMessageAck, type RemoteUserMessageRequest, type ReportDownload, type ReportPageItem, type ReqTimeoutCtl, type RequestInvoiceInput, type RequestRefundInput, type RetryAdvice, type RetryAdviceReason, type RetryPolicy, type RetryRequestInfo, type RolloverPolicy, type RunnerKind, ScopeAI, ScopeAccount, ScopeChatBridge, ScopeChatBridgeRead, ScopeChatBridgeRotate, ScopeChatBridgeWrite, ScopeComplianceContractSigningRead, ScopeComplianceContractSigningWrite, ScopeComplianceContractTemplateRead, ScopeComplianceContractTemplateWrite, ScopeComplianceEvidenceRead, ScopeComplianceEvidenceWrite, ScopeComplianceReportsPublish, ScopeComplianceReportsRead, ScopeComplianceReportsWrite, ScopeComplianceSealApprovalApprove, ScopeComplianceSealApprovalRequest, ScopeComplianceSealManage, ScopeComplianceSealUseExecute, ScopeComplianceTimestampIssue, ScopeComplianceTimestampVerify, ScopeEntitlements, ScopeModels, ScopeModelsChat, ScopeProfile, ScopeRemoteControl, ScopeRemoteControlAgentRun, ScopeRemoteControlPermissionResponse, ScopeRemoteControlSessionControl, ScopeSkillStore, ScopeSkills, ScopeTokenPackages, ScopeTools, ScopeToolsExecute, ScopeWallet, ScopeWalletReadonly, type SealApproval, type SealApprovalPageItem, type SealUsePageItem, type ServerMetadata, type SignEnvelopeRequest, type SigningEnvelope, type SigningEnvelopePageItem, type SkillBrowseListResponse, type SkillBrowseResponse, type SkillStoreItem, type SkillStoreListItem, type SkillStoreQuery, type SkillSummary, type SortDirection, SourcesEvent, type StepUpStatus, type StoreCredentialRequest, StreamError, StreamEvent, StreamSettlement, type SubmitCaseLeadRequest, type SubmitSealApprovalRequest, type SubscriptionAudience, type SubscriptionPlan, type SubscriptionTier, type TenantRef, type TimestampPageItem, type TimestampToken, type TimestampVerifyResult, type TokenPackage, type TokenResponse, type TokenSet, type TokenStore, type ToolListResponse, type ToolProvider, type ToolView, type Transaction, type TsaProvider, type TsaStats, type UpdateContractTemplateRequest, type UploadContractTemplatePdfRequest, type UserSubscription, type VerifyStatus, type VerifyTimestampRequest, VideoGenerationRequest, VideoTaskResponse, type VoidEnvelopeRequest, type WSConfig, type WSEvent, type WalletStats, type WebAuthorizationCallbackParams, type WebAuthorizationPending, type WebAuthorizationRequest, type WorkspacePolicy, type YudaoPageResult, allScopes, apiResponseBusinessError, apiResponseGetMessage, asCredentialRef, authorize, buildBetas, chatBridgeScopes, classifyComplianceError, commerceScopes, completeWebAuthorizationRequest, complianceErrorToRetryAdvice, complianceScopes, computeBackoff, createWebAuthorizationRequest, defaultRetryable, defaultSafeToRetry, discover, discoverWebOAuthMetadata, discoverWithProfile, effectivePolicy, exchangeCode, extractAnthropicBlockMeta, fileLockDefaults, findDesktopVisualUnderstandingModel, findFirstModelByInputModality, generateState, isBillingConfirmable, isChannelInboundEvent, isComplianceBusinessError, isComplianceTerminalError, isIntegrationStatus, isInvalidGrantError, isPlatform, isRegion, isSSECommentLine, isSSLError, isTerminalRemoteEvent, isValidTokenSet, maxEndUserIdLength, modelScopes, modelSupportsImageInput, modelSupportsInputModality, newFileTokenStore, newTokenSet, normalizeGatewayBaseURL, normalizeOverrideBaseURL, parseNotificationEvent, parseRemoteControlEvent, refreshToken, register, registerWebOAuthClient, remoteControlScopes, retryReasonForComplianceKey, retryReasonForOAuthError, revokeToken, skillScopes, tokenSetIsExpired, uniqueMerge, validateEndUserId };
|