@tidblink/server 0.0.0-stage → 0.3.0-rc.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 +993 -2
- package/dist/audio.d.ts +63 -0
- package/dist/audio.d.ts.map +1 -0
- package/dist/audio.js +163 -0
- package/dist/audio.js.map +1 -0
- package/dist/client-tools.d.ts +46 -0
- package/dist/client-tools.d.ts.map +1 -0
- package/dist/client-tools.js +114 -0
- package/dist/client-tools.js.map +1 -0
- package/dist/control.d.ts +17 -0
- package/dist/control.d.ts.map +1 -0
- package/dist/control.js +52 -0
- package/dist/control.js.map +1 -0
- package/dist/errors.d.ts +80 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +87 -0
- package/dist/errors.js.map +1 -0
- package/dist/files.d.ts +129 -0
- package/dist/files.d.ts.map +1 -0
- package/dist/files.js +388 -0
- package/dist/files.js.map +1 -0
- package/dist/history.d.ts +242 -0
- package/dist/history.d.ts.map +1 -0
- package/dist/history.js +91 -0
- package/dist/history.js.map +1 -0
- package/dist/http.d.ts +64 -0
- package/dist/http.d.ts.map +1 -0
- package/dist/http.js +282 -0
- package/dist/http.js.map +1 -0
- package/dist/index.d.ts +26 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +12 -0
- package/dist/index.js.map +1 -0
- package/dist/organization.d.ts +70 -0
- package/dist/organization.d.ts.map +1 -0
- package/dist/organization.js +118 -0
- package/dist/organization.js.map +1 -0
- package/dist/progress.d.ts +34 -0
- package/dist/progress.d.ts.map +1 -0
- package/dist/progress.js +154 -0
- package/dist/progress.js.map +1 -0
- package/dist/realtime.d.ts +91 -0
- package/dist/realtime.d.ts.map +1 -0
- package/dist/realtime.js +112 -0
- package/dist/realtime.js.map +1 -0
- package/dist/schedulers.d.ts +129 -0
- package/dist/schedulers.d.ts.map +1 -0
- package/dist/schedulers.js +91 -0
- package/dist/schedulers.js.map +1 -0
- package/dist/session.d.ts +136 -0
- package/dist/session.d.ts.map +1 -0
- package/dist/session.js +226 -0
- package/dist/session.js.map +1 -0
- package/dist/sse.d.ts +7 -0
- package/dist/sse.d.ts.map +1 -0
- package/dist/sse.js +45 -0
- package/dist/sse.js.map +1 -0
- package/dist/turn.d.ts +43 -0
- package/dist/turn.d.ts.map +1 -0
- package/dist/turn.js +206 -0
- package/dist/turn.js.map +1 -0
- package/dist/usage.d.ts +462 -0
- package/dist/usage.d.ts.map +1 -0
- package/dist/usage.js +20 -0
- package/dist/usage.js.map +1 -0
- package/dist/user.d.ts +96 -0
- package/dist/user.d.ts.map +1 -0
- package/dist/user.js +139 -0
- package/dist/user.js.map +1 -0
- package/examples/answer-client-tool.mjs +69 -0
- package/examples/control-turn.mjs +48 -0
- package/examples/create-session.mjs +69 -0
- package/examples/observe-message.mjs +44 -0
- package/examples/organization-session.mjs +66 -0
- package/examples/prepare-realtime-connection.mjs +61 -0
- package/examples/provision-user.mjs +83 -0
- package/examples/read-usage.mjs +62 -0
- package/examples/schedule-task.mjs +67 -0
- package/examples/send-message.mjs +43 -0
- package/examples/submit-audio.mjs +52 -0
- package/examples/upload-file.mjs +53 -0
- package/package.json +65 -4
|
@@ -0,0 +1,242 @@
|
|
|
1
|
+
import { HttpClient, type ListOptions } from "./http.js";
|
|
2
|
+
import type { RequestOptions } from "./organization.js";
|
|
3
|
+
import type { BillingTag, ClarificationItem } from "./session.js";
|
|
4
|
+
export type TurnStatus = "running" | "succeeded" | "failed" | "interrupted";
|
|
5
|
+
export type RealtimeResponseKind = "chat" | "task_ack" | "task_progress" | "task_result" | "clarify" | "device_ack";
|
|
6
|
+
export type MessageInputContext = {
|
|
7
|
+
channel: "text";
|
|
8
|
+
} | {
|
|
9
|
+
channel: "standing_task";
|
|
10
|
+
} | {
|
|
11
|
+
channel: "audio";
|
|
12
|
+
utterance?: string;
|
|
13
|
+
emotion?: {
|
|
14
|
+
label: string;
|
|
15
|
+
confidence: number;
|
|
16
|
+
source: "realtime_model";
|
|
17
|
+
};
|
|
18
|
+
realtimeSummary?: string;
|
|
19
|
+
};
|
|
20
|
+
export type RealtimeMessageMetadata = {
|
|
21
|
+
startsTurn: boolean;
|
|
22
|
+
linkedTurnId: string | null;
|
|
23
|
+
} | {
|
|
24
|
+
kind: RealtimeResponseKind;
|
|
25
|
+
interrupted: boolean;
|
|
26
|
+
responseId: string | null;
|
|
27
|
+
linkedTurnId: string | null;
|
|
28
|
+
};
|
|
29
|
+
export interface MessageRecord {
|
|
30
|
+
id: string;
|
|
31
|
+
sessionId: string;
|
|
32
|
+
turnId: string;
|
|
33
|
+
role: "user" | "assistant";
|
|
34
|
+
content: string;
|
|
35
|
+
createdAt: string;
|
|
36
|
+
inputContext?: MessageInputContext;
|
|
37
|
+
realtime?: RealtimeMessageMetadata;
|
|
38
|
+
}
|
|
39
|
+
export interface TurnUserFile {
|
|
40
|
+
turnId: string;
|
|
41
|
+
sessionId: string;
|
|
42
|
+
organizationId: string;
|
|
43
|
+
userFileId: string;
|
|
44
|
+
ordinal: number;
|
|
45
|
+
originalName: string;
|
|
46
|
+
safeName: string;
|
|
47
|
+
drivePath: string;
|
|
48
|
+
byteSize: number;
|
|
49
|
+
sha256: string;
|
|
50
|
+
checksumVerification: "whole" | "part_only" | null;
|
|
51
|
+
contentType: string | null;
|
|
52
|
+
createdAt: string;
|
|
53
|
+
}
|
|
54
|
+
export type OperationStatus = TurnStatus | "unknown_result";
|
|
55
|
+
export type OperationResultPointer = {
|
|
56
|
+
kind: "inline";
|
|
57
|
+
field: "output";
|
|
58
|
+
} | {
|
|
59
|
+
kind: "artifact";
|
|
60
|
+
artifactId: string;
|
|
61
|
+
mediaType: string;
|
|
62
|
+
bytes: number;
|
|
63
|
+
preview?: string;
|
|
64
|
+
} | {
|
|
65
|
+
kind: "published_artifact";
|
|
66
|
+
artifactId: string;
|
|
67
|
+
revisionId: string;
|
|
68
|
+
mediaType: string;
|
|
69
|
+
bytes: number;
|
|
70
|
+
sha256: string;
|
|
71
|
+
name: string;
|
|
72
|
+
} | {
|
|
73
|
+
kind: "chat_image";
|
|
74
|
+
imageId: string;
|
|
75
|
+
mediaType: "image/png" | "image/jpeg" | "image/webp" | "image/gif";
|
|
76
|
+
bytes: number;
|
|
77
|
+
sha256: string;
|
|
78
|
+
name: string;
|
|
79
|
+
alt: string;
|
|
80
|
+
};
|
|
81
|
+
export interface OperationRecord {
|
|
82
|
+
id: string;
|
|
83
|
+
sessionId: string;
|
|
84
|
+
turnId: string;
|
|
85
|
+
scope: {
|
|
86
|
+
organizationId: string;
|
|
87
|
+
sessionId: string;
|
|
88
|
+
turnId: string;
|
|
89
|
+
agentRunId: string;
|
|
90
|
+
};
|
|
91
|
+
kind: "agent.respond" | "memory.recall" | "memory.list" | "memory.stage" | "memory.write" | "llm.complete" | "drive.commit" | "fs.read_file" | "fs.write_file" | "fs.list_dir" | "fs.stat" | "fs.mkdir" | "fs.delete" | "exec.run" | "web.search" | "session.history" | "hardware.state.read" | "artifact.get" | "artifact.publish" | "chat.image" | "schedule.create" | "schedule.update" | "schedule.list" | "schedule.cancel" | "external_tool.execute" | "client_tool.call";
|
|
92
|
+
backend: "internal_fixture" | "pi-agent-core" | "local" | "e2b" | "tencent_ags" | "run9" | "drive9" | "exa" | "mem9" | "azure_openai" | "mcp" | "client";
|
|
93
|
+
targetKind: "agent_runtime" | "llm" | "drive_fs" | "shell" | "sandbox" | "web" | "session" | "schedule" | "artifact" | "memory" | "external_tool" | "client_tool";
|
|
94
|
+
mediator: "aos";
|
|
95
|
+
status: OperationStatus;
|
|
96
|
+
input: unknown;
|
|
97
|
+
output?: unknown;
|
|
98
|
+
resultPointer: OperationResultPointer;
|
|
99
|
+
effectSummary?: {
|
|
100
|
+
object: {
|
|
101
|
+
kind: string;
|
|
102
|
+
label: string;
|
|
103
|
+
ref?: string | null;
|
|
104
|
+
};
|
|
105
|
+
action: string;
|
|
106
|
+
effectState: "confirmed" | "none" | "unknown";
|
|
107
|
+
result: {
|
|
108
|
+
status: OperationStatus;
|
|
109
|
+
text: string;
|
|
110
|
+
};
|
|
111
|
+
detail?: Record<string, unknown> | null;
|
|
112
|
+
reversibility: {
|
|
113
|
+
posture: "reversible" | "not_reversible" | "unknown";
|
|
114
|
+
reason: string;
|
|
115
|
+
};
|
|
116
|
+
undo: {
|
|
117
|
+
posture: "available" | "unavailable" | "verify_required";
|
|
118
|
+
label: string | null;
|
|
119
|
+
reason: string | null;
|
|
120
|
+
};
|
|
121
|
+
} | null;
|
|
122
|
+
compensatesOperationId?: string | null;
|
|
123
|
+
source?: {
|
|
124
|
+
type: "session_client";
|
|
125
|
+
} | {
|
|
126
|
+
type: "hardware";
|
|
127
|
+
hardwareRequirementId: string;
|
|
128
|
+
method: string;
|
|
129
|
+
};
|
|
130
|
+
label?: string;
|
|
131
|
+
category?: "tool_call" | "skill_read";
|
|
132
|
+
skill?: {
|
|
133
|
+
skillId: string;
|
|
134
|
+
name: string;
|
|
135
|
+
};
|
|
136
|
+
createdAt: string;
|
|
137
|
+
completedAt?: string;
|
|
138
|
+
}
|
|
139
|
+
export interface TurnFailure {
|
|
140
|
+
code: string;
|
|
141
|
+
message: string;
|
|
142
|
+
details?: {
|
|
143
|
+
reason?: "model_provider_unconfigured" | "sandbox_unconfigured" | "drive9_unconfigured" | "drive9_disabled_for_organization";
|
|
144
|
+
provider?: {
|
|
145
|
+
category: "authentication" | "supplier_error" | "supplier_unavailable" | "network" | "provider_stream_error";
|
|
146
|
+
httpStatus: number | null;
|
|
147
|
+
errorType: string | null;
|
|
148
|
+
errorCode: string | null;
|
|
149
|
+
};
|
|
150
|
+
};
|
|
151
|
+
}
|
|
152
|
+
interface TurnRecordBase {
|
|
153
|
+
id: string;
|
|
154
|
+
sessionId: string;
|
|
155
|
+
status: TurnStatus;
|
|
156
|
+
billingTag: BillingTag | null;
|
|
157
|
+
userMessages?: MessageRecord[];
|
|
158
|
+
userFiles?: TurnUserFile[];
|
|
159
|
+
operations: OperationRecord[];
|
|
160
|
+
assistantMessage: MessageRecord | null;
|
|
161
|
+
clarificationItem?: ClarificationItem;
|
|
162
|
+
failure?: TurnFailure;
|
|
163
|
+
realtimeResponses?: MessageRecord[];
|
|
164
|
+
createdAt: string;
|
|
165
|
+
completedAt?: string;
|
|
166
|
+
sourceFireId?: string | null;
|
|
167
|
+
}
|
|
168
|
+
export interface FullAgentTurnRecord extends TurnRecordBase {
|
|
169
|
+
executor?: "full_agent";
|
|
170
|
+
userMessage: MessageRecord;
|
|
171
|
+
}
|
|
172
|
+
export interface RealtimeTurnRecord extends TurnRecordBase {
|
|
173
|
+
executor: "realtime_model";
|
|
174
|
+
userMessage: MessageRecord;
|
|
175
|
+
realtime: {
|
|
176
|
+
connectionId: string;
|
|
177
|
+
linkedTurnIds: string[];
|
|
178
|
+
};
|
|
179
|
+
}
|
|
180
|
+
export type TurnRecord = FullAgentTurnRecord | RealtimeTurnRecord;
|
|
181
|
+
export interface TurnPage {
|
|
182
|
+
turns: TurnRecord[];
|
|
183
|
+
hasMore: boolean;
|
|
184
|
+
nextCursor: string | null;
|
|
185
|
+
}
|
|
186
|
+
export interface SessionInteraction {
|
|
187
|
+
inputId: string;
|
|
188
|
+
sequence: number;
|
|
189
|
+
kind: "message" | "cancel" | "retry" | "client_tool_output";
|
|
190
|
+
mode: "started" | "steered" | "cancelled" | "accepted" | "rejected";
|
|
191
|
+
turnId: string;
|
|
192
|
+
message: Pick<MessageRecord, "id" | "role" | "content" | "createdAt"> | null;
|
|
193
|
+
createdAt: string;
|
|
194
|
+
appliedAt: string | null;
|
|
195
|
+
rejection: {
|
|
196
|
+
code: "interaction_admission_closed" | "interaction_target_conflict" | "client_tool_call_unavailable" | "client_tool_call_settled";
|
|
197
|
+
} | null;
|
|
198
|
+
result: {
|
|
199
|
+
status: TurnStatus;
|
|
200
|
+
completedAt: string | null;
|
|
201
|
+
};
|
|
202
|
+
}
|
|
203
|
+
export interface SessionInteractionPage {
|
|
204
|
+
interactions: SessionInteraction[];
|
|
205
|
+
hasMore: boolean;
|
|
206
|
+
nextCursor: string | null;
|
|
207
|
+
}
|
|
208
|
+
export type SessionRealtimeEvent = {
|
|
209
|
+
id: string;
|
|
210
|
+
realtimeConnectionId: string;
|
|
211
|
+
text: string;
|
|
212
|
+
turnId: string | null;
|
|
213
|
+
createdAt: string;
|
|
214
|
+
} & ({
|
|
215
|
+
type: "input_transcript";
|
|
216
|
+
} | {
|
|
217
|
+
type: "response";
|
|
218
|
+
responseId: string | null;
|
|
219
|
+
kind: RealtimeResponseKind;
|
|
220
|
+
interrupted: boolean;
|
|
221
|
+
});
|
|
222
|
+
export type SessionTimelineEntry = {
|
|
223
|
+
type: "turn";
|
|
224
|
+
turn: TurnRecord;
|
|
225
|
+
} | {
|
|
226
|
+
type: "realtime";
|
|
227
|
+
realtime: SessionRealtimeEvent;
|
|
228
|
+
};
|
|
229
|
+
export interface SessionTimelinePage {
|
|
230
|
+
entries: SessionTimelineEntry[];
|
|
231
|
+
hasMore: boolean;
|
|
232
|
+
nextCursor: string | null;
|
|
233
|
+
}
|
|
234
|
+
export declare const requireInteraction: (value: unknown, inputId: string, requestId?: string) => SessionInteraction;
|
|
235
|
+
export declare const listInteractions: (http: HttpClient, sessionId: string, options?: ListOptions) => Promise<SessionInteractionPage>;
|
|
236
|
+
export declare const getInteraction: (http: HttpClient, sessionId: string, inputId: string, options?: RequestOptions) => Promise<SessionInteraction>;
|
|
237
|
+
export declare const reconcileInteraction: (http: HttpClient, sessionId: string, clientEventId: string, options?: RequestOptions) => Promise<SessionInteraction | null>;
|
|
238
|
+
export declare const history: (http: HttpClient, sessionId: string, options?: ListOptions) => Promise<TurnPage>;
|
|
239
|
+
export declare const getTurn: (http: HttpClient, sessionId: string, turnId: string, options?: RequestOptions) => Promise<TurnRecord>;
|
|
240
|
+
export declare const timeline: (http: HttpClient, sessionId: string, options?: ListOptions) => Promise<SessionTimelinePage>;
|
|
241
|
+
export {};
|
|
242
|
+
//# sourceMappingURL=history.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"history.d.ts","sourceRoot":"","sources":["../src/history.ts"],"names":[],"mappings":"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"}
|
package/dist/history.js
ADDED
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { TiDBLinkError } from "./errors.js";
|
|
2
|
+
import { HttpClient, requireKnownKeys, paginationQuery, } from "./http.js";
|
|
3
|
+
const sessionPath = (sessionId) => `/api/v1/user/sessions/${encodeURIComponent(sessionId)}`;
|
|
4
|
+
const record = (value) => typeof value === "object" && value !== null && !Array.isArray(value);
|
|
5
|
+
const nonempty = (value) => typeof value === "string" && value.length > 0;
|
|
6
|
+
const nullableText = (value) => value === null || typeof value === "string";
|
|
7
|
+
const allowed = (value, options) => typeof value === "string" && options.includes(value);
|
|
8
|
+
export const requireInteraction = (value, inputId, requestId) => {
|
|
9
|
+
if (!record(value) ||
|
|
10
|
+
value.inputId !== inputId ||
|
|
11
|
+
!Number.isSafeInteger(value.sequence) ||
|
|
12
|
+
value.sequence < 1 ||
|
|
13
|
+
!allowed(value.kind, [
|
|
14
|
+
"message",
|
|
15
|
+
"cancel",
|
|
16
|
+
"retry",
|
|
17
|
+
"client_tool_output",
|
|
18
|
+
]) ||
|
|
19
|
+
!allowed(value.mode, [
|
|
20
|
+
"started",
|
|
21
|
+
"steered",
|
|
22
|
+
"cancelled",
|
|
23
|
+
"accepted",
|
|
24
|
+
"rejected",
|
|
25
|
+
]) ||
|
|
26
|
+
!nonempty(value.turnId) ||
|
|
27
|
+
typeof value.createdAt !== "string" ||
|
|
28
|
+
!nullableText(value.appliedAt) ||
|
|
29
|
+
!record(value.result) ||
|
|
30
|
+
!allowed(value.result.status, [
|
|
31
|
+
"running",
|
|
32
|
+
"succeeded",
|
|
33
|
+
"failed",
|
|
34
|
+
"interrupted",
|
|
35
|
+
]) ||
|
|
36
|
+
!nullableText(value.result.completedAt) ||
|
|
37
|
+
!(value.message === null ||
|
|
38
|
+
(record(value.message) &&
|
|
39
|
+
nonempty(value.message.id) &&
|
|
40
|
+
allowed(value.message.role, ["user", "assistant"]) &&
|
|
41
|
+
typeof value.message.content === "string" &&
|
|
42
|
+
typeof value.message.createdAt === "string")) ||
|
|
43
|
+
!(value.rejection === null ||
|
|
44
|
+
(record(value.rejection) &&
|
|
45
|
+
allowed(value.rejection.code, [
|
|
46
|
+
"interaction_admission_closed",
|
|
47
|
+
"interaction_target_conflict",
|
|
48
|
+
"client_tool_call_unavailable",
|
|
49
|
+
"client_tool_call_settled",
|
|
50
|
+
])))) {
|
|
51
|
+
throw new TiDBLinkError("TiDB Link returned an invalid interaction receipt", {
|
|
52
|
+
...(requestId ? { requestId } : {}),
|
|
53
|
+
});
|
|
54
|
+
}
|
|
55
|
+
return value;
|
|
56
|
+
};
|
|
57
|
+
export const listInteractions = (http, sessionId, options) => http.get(`${sessionPath(sessionId)}/interactions${paginationQuery(options)}`, options);
|
|
58
|
+
export const getInteraction = async (http, sessionId, inputId, options) => {
|
|
59
|
+
if (options)
|
|
60
|
+
requireKnownKeys(options, ["requestId", "signal"], "Request options");
|
|
61
|
+
const result = await http.getResponse(`${sessionPath(sessionId)}/interactions/${encodeURIComponent(inputId)}`, options);
|
|
62
|
+
return requireInteraction(result.data?.interaction, inputId, result.requestId);
|
|
63
|
+
};
|
|
64
|
+
export const reconcileInteraction = async (http, sessionId, clientEventId, options) => {
|
|
65
|
+
const query = new URLSearchParams({ clientEventId });
|
|
66
|
+
if (options)
|
|
67
|
+
requireKnownKeys(options, ["requestId", "signal"], "Request options");
|
|
68
|
+
const result = await http.getResponse(`${sessionPath(sessionId)}/interactions?${query}`, options);
|
|
69
|
+
const values = result.data?.interactions;
|
|
70
|
+
if (!Array.isArray(values) || values.length > 1)
|
|
71
|
+
throw new TiDBLinkError("TiDB Link returned an invalid interaction lookup", {
|
|
72
|
+
requestId: result.requestId,
|
|
73
|
+
});
|
|
74
|
+
return values.length
|
|
75
|
+
? requireInteraction(values[0], clientEventId, result.requestId)
|
|
76
|
+
: null;
|
|
77
|
+
};
|
|
78
|
+
export const history = (http, sessionId, options) => http.get(`${sessionPath(sessionId)}/turns${paginationQuery(options)}`, options);
|
|
79
|
+
export const getTurn = async (http, sessionId, turnId, options) => {
|
|
80
|
+
if (options)
|
|
81
|
+
requireKnownKeys(options, ["requestId", "signal"], "Request options");
|
|
82
|
+
const result = await http.getResponse(`${sessionPath(sessionId)}/turns/${encodeURIComponent(turnId)}`, options);
|
|
83
|
+
const turn = result.data?.turn;
|
|
84
|
+
if (turn?.id !== turnId || turn.sessionId !== sessionId)
|
|
85
|
+
throw new TiDBLinkError("TiDB Link returned a different Turn", {
|
|
86
|
+
requestId: result.requestId,
|
|
87
|
+
});
|
|
88
|
+
return turn;
|
|
89
|
+
};
|
|
90
|
+
export const timeline = (http, sessionId, options) => http.get(`${sessionPath(sessionId)}/timeline${paginationQuery(options)}`, options);
|
|
91
|
+
//# sourceMappingURL=history.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"history.js","sourceRoot":"","sources":["../src/history.ts"],"names":[],"mappings":"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"}
|
package/dist/http.d.ts
ADDED
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
type RetryMode = "never" | "safe";
|
|
2
|
+
export interface RawRequestOptions extends Omit<RequestOptions, "body"> {
|
|
3
|
+
body?: BodyInit;
|
|
4
|
+
headers?: Record<string, string>;
|
|
5
|
+
}
|
|
6
|
+
interface RequestOptions {
|
|
7
|
+
method?: "GET" | "POST" | "PATCH" | "PUT" | "DELETE";
|
|
8
|
+
body?: unknown;
|
|
9
|
+
idempotencyKey?: string;
|
|
10
|
+
ifMatch?: string;
|
|
11
|
+
requestId?: string;
|
|
12
|
+
retry?: RetryMode;
|
|
13
|
+
signal?: AbortSignal;
|
|
14
|
+
outcomeUnknown?: boolean;
|
|
15
|
+
}
|
|
16
|
+
export interface ListOptions {
|
|
17
|
+
limit?: number;
|
|
18
|
+
cursor?: string;
|
|
19
|
+
signal?: AbortSignal;
|
|
20
|
+
requestId?: string;
|
|
21
|
+
}
|
|
22
|
+
export declare const paginationQuery: (options?: ListOptions) => string;
|
|
23
|
+
export declare function requireCreationKey(value: unknown): asserts value is string;
|
|
24
|
+
export interface HttpResult<T> {
|
|
25
|
+
data: T;
|
|
26
|
+
etag: string | undefined;
|
|
27
|
+
requestId: string;
|
|
28
|
+
}
|
|
29
|
+
export declare const requireEtag: <T>(result: HttpResult<T>) => string;
|
|
30
|
+
export declare const sleep: (milliseconds: number, signal?: AbortSignal) => Promise<void>;
|
|
31
|
+
export declare function requireKnownKeys(value: unknown, allowed: readonly string[], label: string): void;
|
|
32
|
+
export declare const requestOptions: (options?: Pick<RequestOptions, "requestId" | "signal">) => Pick<RequestOptions, "requestId" | "signal">;
|
|
33
|
+
/** Check the frozen wire grammar without retaining or exposing the credential. */
|
|
34
|
+
export declare const isApiKey: (value: unknown, kind: "org" | "user") => value is string;
|
|
35
|
+
export declare class HttpClient {
|
|
36
|
+
#private;
|
|
37
|
+
constructor(input: {
|
|
38
|
+
baseUrl: string;
|
|
39
|
+
apiKey: string;
|
|
40
|
+
userId?: string;
|
|
41
|
+
});
|
|
42
|
+
forUser(userId: string): HttpClient;
|
|
43
|
+
private resourcePath;
|
|
44
|
+
resolveUrl(value: string): URL;
|
|
45
|
+
get<T>(path: string, options?: Pick<RequestOptions, "signal" | "requestId">): Promise<T>;
|
|
46
|
+
getResponse<T>(path: string, options?: Pick<RequestOptions, "signal" | "requestId">): Promise<HttpResult<T>>;
|
|
47
|
+
post<T>(path: string, body: unknown, options?: Pick<RequestOptions, "outcomeUnknown" | "requestId" | "signal"> & {
|
|
48
|
+
idempotent?: boolean;
|
|
49
|
+
}): Promise<T>;
|
|
50
|
+
postResponse<T>(path: string, body: unknown, options?: Pick<RequestOptions, "idempotencyKey" | "ifMatch" | "outcomeUnknown" | "requestId" | "signal"> & {
|
|
51
|
+
idempotent?: boolean;
|
|
52
|
+
}): Promise<HttpResult<T>>;
|
|
53
|
+
patchResponse<T>(path: string, body: unknown, options: Pick<RequestOptions, "ifMatch" | "outcomeUnknown" | "requestId" | "signal">): Promise<HttpResult<T>>;
|
|
54
|
+
deleteResponse<T>(path: string, options?: Pick<RequestOptions, "outcomeUnknown" | "requestId" | "signal">): Promise<HttpResult<T>>;
|
|
55
|
+
request<T>(path: string, options?: RequestOptions): Promise<T>;
|
|
56
|
+
response<T>(path: string, options?: RequestOptions): Promise<HttpResult<T>>;
|
|
57
|
+
/** Raw bytes and event streams retain the same credential, redirect and error boundary. */
|
|
58
|
+
rawResponse(path: string, options?: RawRequestOptions): Promise<{
|
|
59
|
+
response: Response;
|
|
60
|
+
requestId: string;
|
|
61
|
+
}>;
|
|
62
|
+
}
|
|
63
|
+
export {};
|
|
64
|
+
//# sourceMappingURL=http.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"http.d.ts","sourceRoot":"","sources":["../src/http.ts"],"names":[],"mappings":"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"}
|