ql-agent-sdk 1.4.0 → 1.4.1

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/index.d.cts CHANGED
@@ -750,6 +750,433 @@ interface FileUploadOptions {
750
750
  */
751
751
  onProgress?: (percent: number) => void;
752
752
  }
753
+ /** Approval lifecycle states (GET /api/v1/approvals `status` filter accepts these). */
754
+ declare const APPROVAL_STATUSES: readonly ["pending", "approved", "rejected", "expired", "consumed", "invalidated", "cancelled"];
755
+ type ApprovalStatus = (typeof APPROVAL_STATUSES)[number];
756
+ /** A target entity an action is bound to (e.g. a document or collection). */
757
+ interface TargetEntity {
758
+ type: string;
759
+ id: string;
760
+ }
761
+ /** Policy evaluation summary attached to an approval request. */
762
+ interface ApprovalPolicyResult {
763
+ /** "full_autonomy" | "silent_approval" | "hard_block" (null when not evaluated). */
764
+ level: string | null;
765
+ rulePackId: string | null;
766
+ ruleId: string | null;
767
+ severity: string | null;
768
+ reason: string;
769
+ }
770
+ /** List-safe approval view — no payload or evidence (use `approvals.get` for the full record). */
771
+ interface ApprovalSummary {
772
+ approvalId: string;
773
+ /** One of APPROVAL_STATUSES. */
774
+ status: string;
775
+ action: string;
776
+ targetEntity: TargetEntity | null;
777
+ actorType: string;
778
+ agentId: string | null;
779
+ subagentId: string | null;
780
+ executionId: string | null;
781
+ approvalLevel: string;
782
+ policyResult: ApprovalPolicyResult;
783
+ idempotencyKey: string;
784
+ reviewUntil: string | Date | null;
785
+ expiresAt: string | Date;
786
+ decidedBy: string | null;
787
+ decidedAt: string | Date | null;
788
+ createdAt: string | Date;
789
+ }
790
+ /** Full approval record including the bound payload (credentials stripped server-side) and evidence. */
791
+ interface ApprovalDetail extends ApprovalSummary {
792
+ payload: Record<string, unknown>;
793
+ payloadHash: string | null;
794
+ decisionNote: string | null;
795
+ approvalEvidence: Record<string, unknown> | null;
796
+ executionResult: Record<string, unknown> | null;
797
+ executedAt: string | Date | null;
798
+ consumedAt: string | Date | null;
799
+ ledgerSeqRequested: number | null;
800
+ }
801
+ /** Params for `approvals.list`. */
802
+ interface ListApprovalsParams {
803
+ /** Filter by one or more statuses (sent comma-joined). */
804
+ status?: ApprovalStatus[];
805
+ /** Page size (default 50, max 200). */
806
+ limit?: number;
807
+ /** Only approvals created before this ISO date. */
808
+ beforeCreatedAt?: string | Date;
809
+ }
810
+ /** Result of `approvals.list`. */
811
+ interface ApprovalsListResult {
812
+ items: ApprovalSummary[];
813
+ total: number;
814
+ }
815
+ /** Input for `approvals.decide`. Public API keys carry no user identity, so the deciding workspace member must be named. */
816
+ interface DecideApprovalInput {
817
+ decision: "approve" | "reject";
818
+ /** User id of a current member of this workspace. */
819
+ decidedBy: string;
820
+ /** Optional note (truncated to 2000 chars server-side). */
821
+ note?: string;
822
+ /** Optional structured evidence attached to the decision. */
823
+ evidence?: Record<string, unknown>;
824
+ }
825
+ /** Result of `approvals.decide`. */
826
+ interface DecideApprovalResult {
827
+ approvalId: string;
828
+ status: string | null;
829
+ }
830
+ /** Result of `approvals.execute`. The approval is consumed exactly once on the success path. */
831
+ interface ExecuteApprovalResult {
832
+ /** False when the executor ran and failed — the outcome is recorded, NOT retried. */
833
+ ok: boolean;
834
+ approvalId: string;
835
+ action: string | null;
836
+ /** Always "consumed" on HTTP 200 (the approval was atomically consumed). */
837
+ status: "consumed";
838
+ result: Record<string, unknown> | null;
839
+ error?: string;
840
+ }
841
+ /** Match conditions for a policy rule (all present fields must match the action descriptor). */
842
+ interface PolicyRuleConditions {
843
+ action?: string;
844
+ httpMethod?: string[];
845
+ collection?: string[];
846
+ }
847
+ /** A single policy rule as returned by `policies.get`. */
848
+ interface PolicyRule {
849
+ ruleId: string;
850
+ rulePackId: string;
851
+ version: number;
852
+ description: string;
853
+ conditions: PolicyRuleConditions;
854
+ severity: "info" | "low" | "medium" | "high" | "critical";
855
+ approvalLevel: "full_autonomy" | "silent_approval" | "hard_block";
856
+ correctiveAction: string | null;
857
+ }
858
+ /** A policy rule pack (active packs are evaluated; roadmap packs are not). */
859
+ interface PolicyPack {
860
+ id: string;
861
+ name: string;
862
+ version: number;
863
+ description: string;
864
+ active: boolean;
865
+ rules: PolicyRule[];
866
+ }
867
+ /** A client-specified rule pack documented as a roadmap requirement (definitions to be supplied by the client). */
868
+ interface RoadmapPolicyPack {
869
+ id: string;
870
+ note: string;
871
+ }
872
+ /** Result of `policies.get`. */
873
+ interface PoliciesResult {
874
+ packs: PolicyPack[];
875
+ activePackIds: string[];
876
+ roadmapPacks: RoadmapPolicyPack[];
877
+ stats: {
878
+ total: number;
879
+ active: number;
880
+ roadmap: number;
881
+ rulesTotal: number;
882
+ };
883
+ }
884
+ /** One event in the workspace's append-only, hash-chained audit ledger. */
885
+ interface LedgerEvent {
886
+ seq: number;
887
+ type: string;
888
+ actorType: string;
889
+ actorId: string;
890
+ agentId: string | null;
891
+ subagentId: string | null;
892
+ executionId: string | null;
893
+ entityRefs: TargetEntity[];
894
+ payload: Record<string, unknown>;
895
+ prevHash: string;
896
+ eventHash: string;
897
+ timestampMs: number;
898
+ createdAt: string | Date;
899
+ }
900
+ /** Params for `events.list` (newest first; `beforeSeq` pages backwards). */
901
+ interface ListEventsParams {
902
+ /** Page size (default 50, max 200). */
903
+ limit?: number;
904
+ /** Only events with seq < this value. */
905
+ beforeSeq?: number;
906
+ /** Only these event types (sent comma-joined). */
907
+ types?: string[];
908
+ }
909
+ /** Result of `events.list`. */
910
+ interface EventsPage {
911
+ items: LedgerEvent[];
912
+ hasMore: boolean;
913
+ /** Pass as `beforeSeq` to fetch the next (older) page when `hasMore`. */
914
+ nextBeforeSeq?: number;
915
+ total?: number;
916
+ }
917
+ /** Params for `events.verify`. */
918
+ interface VerifyChainParams {
919
+ /** Verify only events with seq <= this value (windowed verification). */
920
+ afterSeq?: number;
921
+ }
922
+ /** Result of `events.verify` — recomputes every hash and checks each prevHash link. */
923
+ interface VerifyChainResult {
924
+ valid: boolean;
925
+ checkedCount: number;
926
+ firstBadSeq?: number;
927
+ reason?: string;
928
+ }
929
+ /** Result of `events.retention`. No automatic deletion runs (fail-closed audit posture). */
930
+ interface RetentionReport {
931
+ retentionDays: number;
932
+ oldestEventAt?: string | Date;
933
+ eventsInsideRetentionWindow: number;
934
+ eventsOutsideRetentionWindow: number;
935
+ autoDeletionEnabled: false;
936
+ note: string;
937
+ }
938
+ /** Agent tool names a subagent may be granted. */
939
+ type AgentToolName = "fetch_collections" | "fetch_schema" | "query_collection" | "create_document" | "update_document" | "delete_document" | "http_request" | "dispatch_agent";
940
+ /** Capability scopes a subagent may hold (audited, enforced at the tool layer). */
941
+ type SubagentPermission = "db.read" | "db.write" | "http.outbound";
942
+ /** A declared input of a subagent dispatch. */
943
+ interface SubagentInputSpec {
944
+ name: string;
945
+ type: "string" | "number" | "boolean" | "object" | "array";
946
+ required: boolean;
947
+ description: string;
948
+ }
949
+ /** Output contract of a subagent (minimal JSON-schema-style object). */
950
+ interface SubagentOutputSchema {
951
+ type: "object";
952
+ properties: Record<string, {
953
+ type: string;
954
+ description?: string;
955
+ }>;
956
+ required?: string[];
957
+ }
958
+ /** Bounded execution constraints for one dispatch. */
959
+ interface SubagentExecutionConstraints {
960
+ /** Max model tool rounds for one dispatch (bounded loop). */
961
+ maxRounds: number;
962
+ /** Per-round model call timeout. */
963
+ roundTimeoutMs: number;
964
+ /** Wall-clock budget for the whole dispatch (soft, best-effort race). */
965
+ totalTimeoutMs: number;
966
+ }
967
+ /** A versioned specialist subagent definition owned by exactly one domain agent. */
968
+ interface SubagentDefinition {
969
+ /** Stable id: "<ownerAgentId>.<kebab-name>" — never rename. */
970
+ id: string;
971
+ name: string;
972
+ description: string;
973
+ /** Owning top-level agent id (one of the eight domain agents). */
974
+ ownerAgentId: string;
975
+ responsibilities: string[];
976
+ inputs: SubagentInputSpec[];
977
+ outputSchema: SubagentOutputSchema;
978
+ /** Skill ids this specialist may use. */
979
+ skills: string[];
980
+ permittedTools: AgentToolName[];
981
+ permissions: SubagentPermission[];
982
+ constraints: string[];
983
+ executionConstraints: SubagentExecutionConstraints;
984
+ /** Dispatch depth at which this specialist may be activated (1 = direct child of its owner). */
985
+ activationDepth: number;
986
+ enabled: boolean;
987
+ /** Present when the specialist applies only to certain verticals. */
988
+ applicabilityNote?: string;
989
+ version: number;
990
+ }
991
+ /** Honest registry stats over a set of subagent definitions. */
992
+ interface SubagentStats {
993
+ total: number;
994
+ enabled: number;
995
+ disabled: number;
996
+ /** Ids of specialists granted the http_request tool. */
997
+ withHttp: string[];
998
+ byAgent: Record<string, {
999
+ total: number;
1000
+ enabled: number;
1001
+ }>;
1002
+ }
1003
+ /** Result of `subagents.list`. */
1004
+ interface SubagentsListResult {
1005
+ items: SubagentDefinition[];
1006
+ stats: SubagentStats;
1007
+ }
1008
+ /** "read" → gated as skill_read (read-only); "write" → skill_run (protected). */
1009
+ type SkillExecutionClass = "read" | "write";
1010
+ /** Permission scopes a calling agent/subagent must hold. */
1011
+ type SkillPermission = "db.read" | "db.write" | "http.outbound";
1012
+ /** A property in a skill input/output contract. */
1013
+ interface SkillProperty {
1014
+ type: "string" | "number" | "boolean" | "object" | "array";
1015
+ description?: string;
1016
+ /** When true, null is accepted for this property (strict otherwise). */
1017
+ nullable?: boolean;
1018
+ /** Numbers only. */
1019
+ minimum?: number;
1020
+ maximum?: number;
1021
+ }
1022
+ /** Minimal JSON-schema-style object contract (strict: unknown keys are rejected). */
1023
+ interface SkillIOContract {
1024
+ type: "object";
1025
+ properties: Record<string, SkillProperty>;
1026
+ required?: string[];
1027
+ }
1028
+ /** Public skill definition — the implementation function is never exposed. */
1029
+ interface SkillDefinition {
1030
+ /** Stable id: "<domainAgentId>.<kebab-name>" — never rename. */
1031
+ id: string;
1032
+ name: string;
1033
+ description: string;
1034
+ /** Bumped on any behavior change. */
1035
+ version: number;
1036
+ enabled: boolean;
1037
+ executionClass: SkillExecutionClass;
1038
+ /** Owning/permitted caller domains (agent template ids). User actors are always permitted. */
1039
+ domains: string[];
1040
+ /** Permissions the calling agent/subagent must hold (empty = none required). */
1041
+ requiredPermissions: SkillPermission[];
1042
+ inputSchema: SkillIOContract;
1043
+ outputSchema: SkillIOContract;
1044
+ /** Wall-clock execution limit (bounded by design). */
1045
+ timeoutMs: number;
1046
+ /** Max serialized input size in bytes. */
1047
+ maxInputBytes: number;
1048
+ /** True → the run fails closed if its required audit event cannot be recorded. */
1049
+ auditRequired: boolean;
1050
+ /** All skill failures surface as structured {ok:false, errorCode, error} results. */
1051
+ errorBehavior: "structured";
1052
+ }
1053
+ /** Honest registry stats over all skills. */
1054
+ interface SkillStats {
1055
+ total: number;
1056
+ readOnly: number;
1057
+ write: number;
1058
+ enabled: number;
1059
+ /** Count keyed by the domain prefix of the skill id (before the first dot). */
1060
+ byDomain: Record<string, number>;
1061
+ }
1062
+ /** Result of `skills.list`. */
1063
+ interface SkillsListResult {
1064
+ items: SkillDefinition[];
1065
+ stats: SkillStats;
1066
+ }
1067
+ /** Policy evaluation attached to a gated skill run. */
1068
+ interface SkillPolicyEvaluation {
1069
+ level: "full_autonomy" | "silent_approval" | "hard_block";
1070
+ rulePackId?: string | null;
1071
+ ruleId?: string | null;
1072
+ severity?: "info" | "low" | "medium" | "high" | "critical" | null;
1073
+ reason: string;
1074
+ correctiveAction?: string;
1075
+ /** True when the hard_block is a fail-closed default (no valid rule matched). */
1076
+ failClosed?: boolean;
1077
+ skippedMalformedRules?: number;
1078
+ }
1079
+ /** Input for `skills.run`. Public API keys carry no user identity, so the acting workspace member must be named. */
1080
+ interface SkillRunInput {
1081
+ skillId: string;
1082
+ input: Record<string, unknown>;
1083
+ /** User id of a current member of this workspace. */
1084
+ actorUserId: string;
1085
+ /** Approval dedupe key (prevents duplicate approval requests — NOT result caching). */
1086
+ idempotencyKey?: string;
1087
+ }
1088
+ /** Structured outcome of one skill run through the validation → authorization → policy → audit → execution pipeline. */
1089
+ interface SkillRunResult {
1090
+ ok: boolean;
1091
+ status: "completed" | "blocked" | "approval_required" | "failed";
1092
+ skillId: string;
1093
+ errorCode?: string;
1094
+ error?: string;
1095
+ output?: unknown;
1096
+ /** Present when the run is policy-gated as silent_approval — drive it via approvals.decide + approvals.execute. */
1097
+ approvalId?: string;
1098
+ evaluation?: SkillPolicyEvaluation;
1099
+ }
1100
+ /** Execution lifecycle states (GET /api/v1/executions `status` filter accepts these). */
1101
+ declare const EXECUTION_STATUSES: readonly ["running", "completed", "failed", "cancelled", "timeout"];
1102
+ type ExecutionStatus = (typeof EXECUTION_STATUSES)[number];
1103
+ /** One tool call recorded in an execution trace. */
1104
+ interface ExecutionToolCall {
1105
+ seq: number;
1106
+ toolName: string;
1107
+ ok: boolean;
1108
+ durationMs?: number;
1109
+ error?: string;
1110
+ /** Approval request id when the tool call was policy-gated. */
1111
+ approvalId?: string;
1112
+ /** Ledger seq of the related audit event, if any. */
1113
+ ledgerSeq?: number;
1114
+ }
1115
+ /** Token usage recorded for an execution (when reported by the model layer). */
1116
+ interface ExecutionTokenUsage {
1117
+ inputTokens?: number;
1118
+ outputTokens?: number;
1119
+ totalTokens?: number;
1120
+ model?: string;
1121
+ }
1122
+ /** List-safe execution view — no embedded tool-call log (use `executions.get` for the full trace). */
1123
+ interface ExecutionSummary {
1124
+ executionId: string;
1125
+ parentExecutionId: string | null;
1126
+ agentType: "agent" | "subagent";
1127
+ agentId: string;
1128
+ subagentId: string | null;
1129
+ status: ExecutionStatus;
1130
+ startedAt: string | Date;
1131
+ finishedAt: string | Date | null;
1132
+ durationMs: number | null;
1133
+ costUsd: number | null;
1134
+ createdAt: string | Date;
1135
+ }
1136
+ /** Params for `executions.list`. */
1137
+ interface ListExecutionsParams {
1138
+ /** Filter by owning domain agent slug. */
1139
+ agentId?: string;
1140
+ /** Filter by one or more statuses (sent comma-joined). */
1141
+ status?: ExecutionStatus[];
1142
+ /** Page size (default 50, max 200). */
1143
+ limit?: number;
1144
+ /** Only executions created before this ISO date. */
1145
+ beforeCreatedAt?: string | Date;
1146
+ }
1147
+ /** Result of `executions.list`. */
1148
+ interface ExecutionsListResult {
1149
+ items: ExecutionSummary[];
1150
+ total: number;
1151
+ }
1152
+ /** Full execution trace including tool calls, approvals, and ledger references. */
1153
+ interface ExecutionDetail {
1154
+ execution: {
1155
+ executionId: string;
1156
+ parentExecutionId: string | null;
1157
+ agentType: "agent" | "subagent";
1158
+ agentId: string;
1159
+ subagentId: string | null;
1160
+ userId: string | null;
1161
+ status: ExecutionStatus;
1162
+ inputMeta: Record<string, unknown> | null;
1163
+ outputMeta: Record<string, unknown> | null;
1164
+ toolCalls: ExecutionToolCall[];
1165
+ tokenUsage: ExecutionTokenUsage | null;
1166
+ costUsd: number | null;
1167
+ durationMs: number | null;
1168
+ error: string | null;
1169
+ /** ApprovalRequest ids involved in this execution. */
1170
+ approvalRefs: string[];
1171
+ /** Ledger seqs of audit events emitted for this execution. */
1172
+ ledgerEventIds: number[];
1173
+ startedAt: string | Date;
1174
+ finishedAt: string | Date | null;
1175
+ createdAt: string | Date;
1176
+ };
1177
+ /** Direct child executions (subagent dispatches from this execution). */
1178
+ children: ExecutionSummary[];
1179
+ }
753
1180
 
754
1181
  declare function isTerminalTaskStatus(status: string): boolean;
755
1182
  /**
@@ -917,6 +1344,66 @@ declare class FilesApi {
917
1344
  /** POST /api/v1/files — upload a media file (multipart field "file"). */
918
1345
  upload(file: Blob, opts?: FileUploadOptions): Promise<UploadedFile>;
919
1346
  }
1347
+ /** Approvals namespace (policy approval lifecycle). */
1348
+ declare class ApprovalsApi {
1349
+ private readonly t;
1350
+ constructor(t: Transport);
1351
+ /** GET /api/v1/approvals — list policy approval requests (list-safe views, no payload). */
1352
+ list(params?: ListApprovalsParams): Promise<ApprovalsListResult>;
1353
+ /** GET /api/v1/approvals/:id — full approval record incl. bound payload + evidence. */
1354
+ get(approvalId: string): Promise<ApprovalDetail>;
1355
+ /** POST /api/v1/approvals/:id/decide — record an authorized workspace member's decision. */
1356
+ decide(approvalId: string, input: DecideApprovalInput): Promise<DecideApprovalResult>;
1357
+ /** POST /api/v1/approvals/:id/execute — execute the bound action of an approved approval, exactly once. */
1358
+ execute(approvalId: string): Promise<ExecuteApprovalResult>;
1359
+ }
1360
+ /** Policies namespace (rule-pack registry). */
1361
+ declare class PoliciesApi {
1362
+ private readonly t;
1363
+ constructor(t: Transport);
1364
+ /** GET /api/v1/policies — active rule packs with their rules + documented roadmap packs. */
1365
+ get(): Promise<PoliciesResult>;
1366
+ }
1367
+ /** Events namespace (hash-chained audit ledger). */
1368
+ declare class EventsApi {
1369
+ private readonly t;
1370
+ constructor(t: Transport);
1371
+ /** GET /api/v1/events — paginated ledger read, newest first (`beforeSeq` pages backwards). */
1372
+ list(params?: ListEventsParams): Promise<EventsPage>;
1373
+ /** GET /api/v1/events/verify — recompute every hash and check each prevHash link (audit retrieval). */
1374
+ verify(params?: VerifyChainParams): Promise<VerifyChainResult>;
1375
+ /** GET /api/v1/events/retention — retention report (no automatic deletion runs). */
1376
+ retention(): Promise<RetentionReport>;
1377
+ }
1378
+ /** Subagents namespace (specialist subagent registry). */
1379
+ declare class SubagentsApi {
1380
+ private readonly t;
1381
+ constructor(t: Transport);
1382
+ /** GET /api/v1/subagents — specialist definitions + honest stats (optionally filtered by owning agent). */
1383
+ list(agentId?: string): Promise<SubagentsListResult>;
1384
+ /** GET /api/v1/subagents/:id — one specialist definition. */
1385
+ get(subagentId: string): Promise<SubagentDefinition>;
1386
+ }
1387
+ /** Skills namespace (shared skill registry + execution). */
1388
+ declare class SkillsApi {
1389
+ private readonly t;
1390
+ constructor(t: Transport);
1391
+ /** GET /api/v1/skills — skill definitions (no implementation functions) + honest stats. */
1392
+ list(domain?: string): Promise<SkillsListResult>;
1393
+ /** GET /api/v1/skills/:id — one skill definition. */
1394
+ get(skillId: string): Promise<SkillDefinition>;
1395
+ /** POST /api/v1/skills/run — run a skill through the full validation → authorization → policy → audit → execution pipeline. */
1396
+ run(input: SkillRunInput): Promise<SkillRunResult>;
1397
+ }
1398
+ /** Executions namespace (agent/subagent execution traces). */
1399
+ declare class ExecutionsApi {
1400
+ private readonly t;
1401
+ constructor(t: Transport);
1402
+ /** GET /api/v1/executions — execution history (list-safe views, no tool-call log). */
1403
+ list(params?: ListExecutionsParams): Promise<ExecutionsListResult>;
1404
+ /** GET /api/v1/executions/:id — full execution trace incl. tool calls + direct children. */
1405
+ get(executionId: string): Promise<ExecutionDetail>;
1406
+ }
920
1407
  /**
921
1408
  * The public client. Example:
922
1409
  * const ql = new QLClient({ apiKey: process.env.QL_API_KEY });
@@ -931,6 +1418,12 @@ declare class QLClient {
931
1418
  readonly videos: VideosApi;
932
1419
  readonly audio: AudioApi;
933
1420
  readonly files: FilesApi;
1421
+ readonly approvals: ApprovalsApi;
1422
+ readonly policies: PoliciesApi;
1423
+ readonly events: EventsApi;
1424
+ readonly subagents: SubagentsApi;
1425
+ readonly skills: SkillsApi;
1426
+ readonly executions: ExecutionsApi;
934
1427
  private readonly transport;
935
1428
  private readonly base;
936
1429
  constructor(opts: QLClientOptions);
@@ -974,4 +1467,4 @@ declare class QLError extends Error {
974
1467
  get isNetworkError(): boolean;
975
1468
  }
976
1469
 
977
- export { API_ERROR_CODES, type AgentDetail, type AgentFeedToolCall, type AgentListResult, type AgentMessageItem, type AgentMessageKind, type AgentMessageOutputFormat, type AgentMessagesPage, type AgentMessagesParams, type AgentSummary, AgentsApi, type ApiErrorCode, AudioApi, type CapParamKind, type CapabilitiesResult, type CapabilityInfo, type CapabilityParam, type CapabilityResult, type CapabilityTemplate, type ChatFile, type ChatInput, type ChatMessage, type ChatResult, type ChatStreamEvent, type CreateKeyInput, type CreateKeyResult, DEFAULT_BASE_URL, type DeleteKeyResult, type DiscardedKey, type FileUploadOptions, FilesApi, type GeneratedImage, type HistoryPage, type HistoryParams, type ImageGenerateInput, type ImageGenerateResult, type ImageModelInfo, type ImageModelsResult, type ImagePricingEntry, type ImageReferenceInput, type ImageTier, type ImageUsage, ImagesApi, type MessageItem, type MintedKey, QLClient, type QLClientOptions, QLError, type QLErrorContext, type RunCapabilityInput, type RunCapabilityResult, type StreamOptions, type Task, type TaskCreateInput, type TaskCreated, TaskHandle, type TaskPriority, type TaskStatus, TasksApi, type TtsInput, type TtsResult, type UploadedFile, type VideoGenerateInput, type VideoModelInfo, type VideoModelsResult, type VideoPricingEntry, type VideoTask, type VideoTaskCreated, VideoTaskHandle, type VideoTaskStatus, type VideoTier, type VideoWaitOptions, VideosApi, type VoiceInfo, type VoicesResult, type WaitOptions, type WorkflowRun, type WorkflowRunInput, type WorkflowRunStart, type WorkflowRunStatus, WorkflowsApi, type Workspace, WorkspaceApi, isTerminalTaskStatus };
1470
+ export { API_ERROR_CODES, APPROVAL_STATUSES, type AgentDetail, type AgentFeedToolCall, type AgentListResult, type AgentMessageItem, type AgentMessageKind, type AgentMessageOutputFormat, type AgentMessagesPage, type AgentMessagesParams, type AgentSummary, type AgentToolName, AgentsApi, type ApiErrorCode, type ApprovalDetail, type ApprovalPolicyResult, type ApprovalStatus, type ApprovalSummary, ApprovalsApi, type ApprovalsListResult, AudioApi, type CapParamKind, type CapabilitiesResult, type CapabilityInfo, type CapabilityParam, type CapabilityResult, type CapabilityTemplate, type ChatFile, type ChatInput, type ChatMessage, type ChatResult, type ChatStreamEvent, type CreateKeyInput, type CreateKeyResult, DEFAULT_BASE_URL, type DecideApprovalInput, type DecideApprovalResult, type DeleteKeyResult, type DiscardedKey, EXECUTION_STATUSES, EventsApi, type EventsPage, type ExecuteApprovalResult, type ExecutionDetail, type ExecutionStatus, type ExecutionSummary, type ExecutionTokenUsage, type ExecutionToolCall, ExecutionsApi, type ExecutionsListResult, type FileUploadOptions, FilesApi, type GeneratedImage, type HistoryPage, type HistoryParams, type ImageGenerateInput, type ImageGenerateResult, type ImageModelInfo, type ImageModelsResult, type ImagePricingEntry, type ImageReferenceInput, type ImageTier, type ImageUsage, ImagesApi, type LedgerEvent, type ListApprovalsParams, type ListEventsParams, type ListExecutionsParams, type MessageItem, type MintedKey, PoliciesApi, type PoliciesResult, type PolicyPack, type PolicyRule, type PolicyRuleConditions, QLClient, type QLClientOptions, QLError, type QLErrorContext, type RetentionReport, type RoadmapPolicyPack, type RunCapabilityInput, type RunCapabilityResult, type SkillDefinition, type SkillExecutionClass, type SkillIOContract, type SkillPermission, type SkillPolicyEvaluation, type SkillProperty, type SkillRunInput, type SkillRunResult, type SkillStats, SkillsApi, type SkillsListResult, type StreamOptions, type SubagentDefinition, type SubagentExecutionConstraints, type SubagentInputSpec, type SubagentOutputSchema, type SubagentPermission, type SubagentStats, SubagentsApi, type SubagentsListResult, type TargetEntity, type Task, type TaskCreateInput, type TaskCreated, TaskHandle, type TaskPriority, type TaskStatus, TasksApi, type TtsInput, type TtsResult, type UploadedFile, type VerifyChainParams, type VerifyChainResult, type VideoGenerateInput, type VideoModelInfo, type VideoModelsResult, type VideoPricingEntry, type VideoTask, type VideoTaskCreated, VideoTaskHandle, type VideoTaskStatus, type VideoTier, type VideoWaitOptions, VideosApi, type VoiceInfo, type VoicesResult, type WaitOptions, type WorkflowRun, type WorkflowRunInput, type WorkflowRunStart, type WorkflowRunStatus, WorkflowsApi, type Workspace, WorkspaceApi, isTerminalTaskStatus };