@loopbacktools/protocol 0.0.0-stage → 0.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/LICENSE +21 -0
- package/README.md +14 -2
- package/dist/openapi/openapi.1.json +1903 -0
- package/dist/src/briefing.d.ts +80 -0
- package/dist/src/briefing.js +219 -0
- package/dist/src/generated/document.gen.d.ts +3256 -0
- package/dist/src/generated/document.gen.js +25 -0
- package/dist/src/generated/requests.gen.d.ts +480 -0
- package/dist/src/generated/requests.gen.js +1 -0
- package/dist/src/generated/schemas.gen.d.ts +5 -0
- package/dist/src/generated/schemas.gen.js +6 -0
- package/dist/src/generated/schemas.r1.gen.d.ts +5433 -0
- package/dist/src/generated/schemas.r1.gen.js +58 -0
- package/dist/src/generated/vocabularies.gen.d.ts +11 -0
- package/dist/src/generated/vocabularies.gen.js +13 -0
- package/dist/src/index.d.ts +4 -0
- package/dist/src/index.js +4 -0
- package/dist/src/schema.d.ts +9 -0
- package/dist/src/schema.js +8 -0
- package/dist/src/unknown.d.ts +94 -0
- package/dist/src/unknown.js +59 -0
- package/dist/src/versions.d.ts +11 -0
- package/dist/src/versions.js +11 -0
- package/openapi/openapi.1.json +1903 -0
- package/package.json +61 -3
- package/spec/main.tsp +660 -0
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
// GENERATED by typespec-openapi-document from the TypeSpec service definition. DO NOT EDIT.
|
|
2
|
+
// Recompile the spec that produced it; edits here are overwritten on the next run.
|
|
3
|
+
/**
|
|
4
|
+
* The OpenAPI document `@typespec/openapi3` produced from this spec, as a value.
|
|
5
|
+
*
|
|
6
|
+
* Imported rather than read from disk, so it is part of your bundle: it cannot go stale relative to
|
|
7
|
+
* the build, and a missing document fails the build rather than a request.
|
|
8
|
+
*/
|
|
9
|
+
import document0 from "../../openapi/openapi.1.json" with { type: "json" };
|
|
10
|
+
/** The document for the version this service currently serves. */
|
|
11
|
+
export const openApiDocument = document0;
|
|
12
|
+
/**
|
|
13
|
+
* Every version this service declares, keyed by version name.
|
|
14
|
+
*
|
|
15
|
+
* **`openApiDocument` is the LAST DECLARED version, not the last alphabetically.** A version name
|
|
16
|
+
* sorts however its author spelled it (`v1, v2preview, v2` sorts as `v1, v2, v2preview`) so only
|
|
17
|
+
* the declaration order says which one is current.
|
|
18
|
+
*/
|
|
19
|
+
export const openApiDocumentsByVersion = {
|
|
20
|
+
"1": document0,
|
|
21
|
+
};
|
|
22
|
+
/** The versions this service declares, oldest first. */
|
|
23
|
+
export const OPENAPI_VERSIONS = ["1"];
|
|
24
|
+
/** The path this document is conventionally served at. Yours to change; nothing here depends on it. */
|
|
25
|
+
export const OPENAPI_DOCUMENT_PATH = "/openapi.json";
|
|
@@ -0,0 +1,480 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Flattens an intersection into a single object type.
|
|
3
|
+
*
|
|
4
|
+
* Without it, `Body & { id: string }` and the equivalent flat object are structurally the
|
|
5
|
+
* same but are NOT equal under the `Equals<>` conditional-type trick - so the assertions that pair
|
|
6
|
+
* this file with the emitted Zod would fail on correct code.
|
|
7
|
+
*/
|
|
8
|
+
type Simplify<T> = {
|
|
9
|
+
[K in keyof T]: T[K];
|
|
10
|
+
} & {};
|
|
11
|
+
/**
|
|
12
|
+
* The same shape, tolerant of `readonly`.
|
|
13
|
+
*
|
|
14
|
+
* A producer's result is asserted assignable to its published shape, and a codebase commonly declares
|
|
15
|
+
* views with `readonly` properties and `readonly T[]` arrays - neither of which is assignable to a
|
|
16
|
+
* mutable one. Mutability is not a fact about a wire shape: it says nothing about what a caller
|
|
17
|
+
* receives. Making the TARGET readonly accepts both, which is the permissive direction; the reverse
|
|
18
|
+
* would reject every view a producer actually returns.
|
|
19
|
+
*
|
|
20
|
+
* No branch for functions, deliberately: the wire vocabulary is primitives, objects and arrays, so
|
|
21
|
+
* a call signature cannot appear here. Mapping one would yield `{}`, so the day something does
|
|
22
|
+
* carry a method - a narrowed multipart file part is the near miss - this needs one.
|
|
23
|
+
*
|
|
24
|
+
* **Exported, so a NAMED type can be written against it.** A codebase whose layers hand back
|
|
25
|
+
* `readonly T[]` needs the producer view of its own types, not only of `WireOutputs`, and
|
|
26
|
+
* declared locally it could not be named.
|
|
27
|
+
*/
|
|
28
|
+
export type Produced<T> = T extends readonly unknown[] ? {
|
|
29
|
+
readonly [K in keyof T]: Produced<T[K]>;
|
|
30
|
+
} : T extends object ? {
|
|
31
|
+
readonly [K in keyof T]: Produced<T[K]>;
|
|
32
|
+
} : T;
|
|
33
|
+
/**
|
|
34
|
+
* A stream of bytes, as every platform's `ReadableStream<Uint8Array>` satisfies it - spelled
|
|
35
|
+
* structurally so this file needs no DOM or runtime library to name it.
|
|
36
|
+
*/
|
|
37
|
+
export interface ByteStream {
|
|
38
|
+
getReader(): {
|
|
39
|
+
read(): globalThis.Promise<{
|
|
40
|
+
readonly done: boolean;
|
|
41
|
+
readonly value?: Uint8Array | undefined;
|
|
42
|
+
}>;
|
|
43
|
+
releaseLock(): void;
|
|
44
|
+
cancel?(reason?: unknown): globalThis.Promise<void>;
|
|
45
|
+
};
|
|
46
|
+
}
|
|
47
|
+
export interface Answered {
|
|
48
|
+
outcome: "answered";
|
|
49
|
+
selected: string[];
|
|
50
|
+
text?: string;
|
|
51
|
+
}
|
|
52
|
+
export interface Approved {
|
|
53
|
+
outcome: "approved";
|
|
54
|
+
note?: string;
|
|
55
|
+
}
|
|
56
|
+
export interface ChangesRequested {
|
|
57
|
+
outcome: "changes_requested";
|
|
58
|
+
feedback: string;
|
|
59
|
+
}
|
|
60
|
+
export interface FollowUp {
|
|
61
|
+
outcome: "follow_up";
|
|
62
|
+
question: string;
|
|
63
|
+
}
|
|
64
|
+
export interface Dismissed {
|
|
65
|
+
outcome: "dismissed";
|
|
66
|
+
}
|
|
67
|
+
export interface PointReply {
|
|
68
|
+
point: string;
|
|
69
|
+
text?: string;
|
|
70
|
+
resolved?: boolean;
|
|
71
|
+
}
|
|
72
|
+
export interface Responded {
|
|
73
|
+
outcome: "responded";
|
|
74
|
+
points: PointReply[];
|
|
75
|
+
}
|
|
76
|
+
export type Reply = Answered | Approved | ChangesRequested | FollowUp | Dismissed | Responded;
|
|
77
|
+
export interface Actor {
|
|
78
|
+
id: string;
|
|
79
|
+
name?: string;
|
|
80
|
+
}
|
|
81
|
+
export interface Whoami {
|
|
82
|
+
space: string;
|
|
83
|
+
actor: Actor;
|
|
84
|
+
}
|
|
85
|
+
export interface Problem {
|
|
86
|
+
code: string;
|
|
87
|
+
message: string;
|
|
88
|
+
}
|
|
89
|
+
export interface EventTicket {
|
|
90
|
+
ticket: string;
|
|
91
|
+
expiresAt: string;
|
|
92
|
+
}
|
|
93
|
+
export interface Choice {
|
|
94
|
+
label: string;
|
|
95
|
+
description?: string;
|
|
96
|
+
}
|
|
97
|
+
export interface QuestionPrompt {
|
|
98
|
+
question: string;
|
|
99
|
+
options: Choice[];
|
|
100
|
+
multiple: boolean;
|
|
101
|
+
context?: string;
|
|
102
|
+
}
|
|
103
|
+
export type AskStatus = "awaiting_human" | "awaiting_agent" | "closed";
|
|
104
|
+
export interface HumanEntry {
|
|
105
|
+
author: "human";
|
|
106
|
+
reply: Reply;
|
|
107
|
+
by?: Actor;
|
|
108
|
+
at: string;
|
|
109
|
+
}
|
|
110
|
+
export interface MarkdownBlock {
|
|
111
|
+
type: "markdown";
|
|
112
|
+
text: string;
|
|
113
|
+
}
|
|
114
|
+
export interface CodeBlock {
|
|
115
|
+
type: "code";
|
|
116
|
+
code: string;
|
|
117
|
+
language?: string;
|
|
118
|
+
filename?: string;
|
|
119
|
+
}
|
|
120
|
+
export interface DiffBlock {
|
|
121
|
+
type: "diff";
|
|
122
|
+
diff: string;
|
|
123
|
+
filename?: string;
|
|
124
|
+
}
|
|
125
|
+
export interface ImageBlock {
|
|
126
|
+
type: "image";
|
|
127
|
+
uploadId: string;
|
|
128
|
+
caption?: string;
|
|
129
|
+
}
|
|
130
|
+
export type Block = MarkdownBlock | CodeBlock | DiffBlock | ImageBlock;
|
|
131
|
+
export interface Point {
|
|
132
|
+
id: string;
|
|
133
|
+
title: string;
|
|
134
|
+
detail?: string;
|
|
135
|
+
content?: Block[];
|
|
136
|
+
}
|
|
137
|
+
export interface AgentEntry {
|
|
138
|
+
author: "agent";
|
|
139
|
+
answer: string;
|
|
140
|
+
content?: Block[];
|
|
141
|
+
point?: string;
|
|
142
|
+
points?: Point[];
|
|
143
|
+
at: string;
|
|
144
|
+
}
|
|
145
|
+
export type Entry = HumanEntry | AgentEntry;
|
|
146
|
+
export interface QuestionAsk {
|
|
147
|
+
kind: "question";
|
|
148
|
+
prompt: QuestionPrompt;
|
|
149
|
+
id: string;
|
|
150
|
+
status: AskStatus;
|
|
151
|
+
waiting: boolean;
|
|
152
|
+
project?: string;
|
|
153
|
+
client?: string;
|
|
154
|
+
raisedBy?: Actor;
|
|
155
|
+
thread: Entry[];
|
|
156
|
+
createdAt: string;
|
|
157
|
+
updatedAt: string;
|
|
158
|
+
closedAt?: string;
|
|
159
|
+
}
|
|
160
|
+
export interface ReviewPrompt {
|
|
161
|
+
title: string;
|
|
162
|
+
content: Block[];
|
|
163
|
+
summary?: string;
|
|
164
|
+
}
|
|
165
|
+
export interface ReviewAsk {
|
|
166
|
+
kind: "review";
|
|
167
|
+
prompt: ReviewPrompt;
|
|
168
|
+
revises?: string;
|
|
169
|
+
id: string;
|
|
170
|
+
status: AskStatus;
|
|
171
|
+
waiting: boolean;
|
|
172
|
+
project?: string;
|
|
173
|
+
client?: string;
|
|
174
|
+
raisedBy?: Actor;
|
|
175
|
+
thread: Entry[];
|
|
176
|
+
createdAt: string;
|
|
177
|
+
updatedAt: string;
|
|
178
|
+
closedAt?: string;
|
|
179
|
+
}
|
|
180
|
+
export interface BriefingPromptSection {
|
|
181
|
+
title?: string;
|
|
182
|
+
points: Point[];
|
|
183
|
+
}
|
|
184
|
+
export interface BriefingPrompt {
|
|
185
|
+
title: string;
|
|
186
|
+
summary?: string;
|
|
187
|
+
sections: BriefingPromptSection[];
|
|
188
|
+
}
|
|
189
|
+
export interface BriefingAsk {
|
|
190
|
+
kind: "briefing";
|
|
191
|
+
prompt: BriefingPrompt;
|
|
192
|
+
id: string;
|
|
193
|
+
status: AskStatus;
|
|
194
|
+
waiting: boolean;
|
|
195
|
+
project?: string;
|
|
196
|
+
client?: string;
|
|
197
|
+
raisedBy?: Actor;
|
|
198
|
+
thread: Entry[];
|
|
199
|
+
createdAt: string;
|
|
200
|
+
updatedAt: string;
|
|
201
|
+
closedAt?: string;
|
|
202
|
+
}
|
|
203
|
+
export type Ask = QuestionAsk | ReviewAsk | BriefingAsk;
|
|
204
|
+
export interface Snapshot {
|
|
205
|
+
open: Ask[];
|
|
206
|
+
recent: Ask[];
|
|
207
|
+
}
|
|
208
|
+
export interface AskPage {
|
|
209
|
+
items: Ask[];
|
|
210
|
+
nextBefore?: string;
|
|
211
|
+
}
|
|
212
|
+
export type ImageType = "image/png" | "image/jpeg" | "image/webp" | "image/gif";
|
|
213
|
+
export interface UploadReceipt {
|
|
214
|
+
uploadId: string;
|
|
215
|
+
contentType: ImageType;
|
|
216
|
+
size: number;
|
|
217
|
+
}
|
|
218
|
+
export type Revisions = "1";
|
|
219
|
+
export type AskKind = "question" | "review" | "briefing";
|
|
220
|
+
export interface BriefingPoint {
|
|
221
|
+
title: string;
|
|
222
|
+
detail?: string;
|
|
223
|
+
content?: Block[];
|
|
224
|
+
}
|
|
225
|
+
export interface BriefingSection {
|
|
226
|
+
title?: string;
|
|
227
|
+
points: BriefingPoint[];
|
|
228
|
+
}
|
|
229
|
+
export interface QuestionInput {
|
|
230
|
+
question: string;
|
|
231
|
+
options?: Choice[];
|
|
232
|
+
multiple?: boolean;
|
|
233
|
+
context?: string;
|
|
234
|
+
project: string;
|
|
235
|
+
}
|
|
236
|
+
export interface ReviewInput {
|
|
237
|
+
title: string;
|
|
238
|
+
content: Block[];
|
|
239
|
+
summary?: string;
|
|
240
|
+
revises?: string;
|
|
241
|
+
project: string;
|
|
242
|
+
}
|
|
243
|
+
export interface BriefingInput {
|
|
244
|
+
title: string;
|
|
245
|
+
summary?: string;
|
|
246
|
+
sections: BriefingSection[];
|
|
247
|
+
project: string;
|
|
248
|
+
}
|
|
249
|
+
export interface PointAnswer {
|
|
250
|
+
point: string;
|
|
251
|
+
answer: string;
|
|
252
|
+
content?: Block[];
|
|
253
|
+
points?: BriefingPoint[];
|
|
254
|
+
}
|
|
255
|
+
export interface BriefingAnswerInput {
|
|
256
|
+
askId: string;
|
|
257
|
+
answers: PointAnswer[];
|
|
258
|
+
}
|
|
259
|
+
export interface FollowUpInput {
|
|
260
|
+
askId: string;
|
|
261
|
+
answer: string;
|
|
262
|
+
content?: Block[];
|
|
263
|
+
}
|
|
264
|
+
export interface UploadRequest {
|
|
265
|
+
contentType: ImageType;
|
|
266
|
+
}
|
|
267
|
+
export interface UploadTicket {
|
|
268
|
+
uploadId: string;
|
|
269
|
+
uploadUrl: string;
|
|
270
|
+
expiresAt: string;
|
|
271
|
+
maxBytes: number;
|
|
272
|
+
command: string;
|
|
273
|
+
}
|
|
274
|
+
export interface InboxRequest {
|
|
275
|
+
askId?: string;
|
|
276
|
+
}
|
|
277
|
+
export interface InboxLink {
|
|
278
|
+
url: string;
|
|
279
|
+
}
|
|
280
|
+
export interface AskCommon {
|
|
281
|
+
id: string;
|
|
282
|
+
status: AskStatus;
|
|
283
|
+
waiting: boolean;
|
|
284
|
+
project?: string;
|
|
285
|
+
client?: string;
|
|
286
|
+
raisedBy?: Actor;
|
|
287
|
+
thread: Entry[];
|
|
288
|
+
createdAt: string;
|
|
289
|
+
updatedAt: string;
|
|
290
|
+
closedAt?: string;
|
|
291
|
+
}
|
|
292
|
+
export interface ToolReply {
|
|
293
|
+
askId: string;
|
|
294
|
+
reply: Reply;
|
|
295
|
+
}
|
|
296
|
+
export interface SnapshotEvent {
|
|
297
|
+
type: "snapshot";
|
|
298
|
+
snapshot: Snapshot;
|
|
299
|
+
}
|
|
300
|
+
export interface AskEvent {
|
|
301
|
+
type: "ask.opened" | "ask.updated";
|
|
302
|
+
ask: Ask;
|
|
303
|
+
}
|
|
304
|
+
export type ServerEvent = SnapshotEvent | AskEvent;
|
|
305
|
+
/**
|
|
306
|
+
* Every operation's input, keyed by operation id: what its handler receives, and what a caller of a
|
|
307
|
+
* backend typed by it hands over. An operation that takes nothing is `Record<string, never>`.
|
|
308
|
+
*/
|
|
309
|
+
export interface WireInputs {
|
|
310
|
+
/** The input for `Session_whoami`, as its handler receives it. */
|
|
311
|
+
Session_whoami: globalThis.Record<string, never>;
|
|
312
|
+
/** The input for `EventTickets_issue`, as its handler receives it. */
|
|
313
|
+
EventTickets_issue: globalThis.Record<string, never>;
|
|
314
|
+
/** The input for `Snapshots_read`, as its handler receives it. */
|
|
315
|
+
Snapshots_read: globalThis.Record<string, never>;
|
|
316
|
+
/** The input for `Asks_list`, as its handler receives it. */
|
|
317
|
+
Asks_list: Simplify<{
|
|
318
|
+
before?: string;
|
|
319
|
+
limit?: number;
|
|
320
|
+
}>;
|
|
321
|
+
/** The input for `Asks_read`, as its handler receives it. */
|
|
322
|
+
Asks_read: Simplify<{
|
|
323
|
+
id: string;
|
|
324
|
+
}>;
|
|
325
|
+
/** The input for `Asks_reply`, as its handler receives it. */
|
|
326
|
+
Asks_reply: Simplify<{
|
|
327
|
+
reply: Reply;
|
|
328
|
+
} & {
|
|
329
|
+
id: string;
|
|
330
|
+
}>;
|
|
331
|
+
/** The input for `Files_read`, as its handler receives it. */
|
|
332
|
+
Files_read: Simplify<{
|
|
333
|
+
uploadId: string;
|
|
334
|
+
}>;
|
|
335
|
+
/** The input for `Uploads_store`, as its handler receives it. */
|
|
336
|
+
Uploads_store: Simplify<{
|
|
337
|
+
body: ByteStream | null;
|
|
338
|
+
} & {
|
|
339
|
+
spaceId: string;
|
|
340
|
+
token: string;
|
|
341
|
+
"Content-Type": string;
|
|
342
|
+
}>;
|
|
343
|
+
}
|
|
344
|
+
/**
|
|
345
|
+
* Every operation's success bodies, keyed by operation id: the body of each `2xx` and `3xx` response it
|
|
346
|
+
* declares, `undefined` for one with no body, and `never` where it declares no success at all. Which
|
|
347
|
+
* status goes with which body is `WireResults`.
|
|
348
|
+
*
|
|
349
|
+
* **A floor, not an equality.** These shapes are permissive: a caller pins the fields it depends
|
|
350
|
+
* on and lets a richer view through, so a producer's result must CONTAIN what the document promises
|
|
351
|
+
* and may contain more. This is what makes a published response checkable at all: without it, a
|
|
352
|
+
* route can advertise a field it never returns and nothing anywhere can see it.
|
|
353
|
+
*/
|
|
354
|
+
export interface WireOutputs {
|
|
355
|
+
/** Every success body `Session_whoami` declares. */
|
|
356
|
+
Session_whoami: Produced<Whoami>;
|
|
357
|
+
/** Every success body `EventTickets_issue` declares. */
|
|
358
|
+
EventTickets_issue: Produced<EventTicket>;
|
|
359
|
+
/** Every success body `Snapshots_read` declares. */
|
|
360
|
+
Snapshots_read: Produced<Snapshot>;
|
|
361
|
+
/** Every success body `Asks_list` declares. */
|
|
362
|
+
Asks_list: Produced<AskPage>;
|
|
363
|
+
/** Every success body `Asks_read` declares. */
|
|
364
|
+
Asks_read: Produced<Ask>;
|
|
365
|
+
/** Every success body `Asks_reply` declares. */
|
|
366
|
+
Asks_reply: Produced<Ask>;
|
|
367
|
+
/** Every success body `Files_read` declares. */
|
|
368
|
+
Files_read: ByteStream | Uint8Array<ArrayBuffer> | ArrayBuffer;
|
|
369
|
+
/** Every success body `Uploads_store` declares. */
|
|
370
|
+
Uploads_store: Produced<UploadReceipt>;
|
|
371
|
+
}
|
|
372
|
+
/**
|
|
373
|
+
* Every operation's result, keyed by operation id: one member per response it declares, each pairing
|
|
374
|
+
* a status with that status's body and headers. A status no response declares does not compile, and
|
|
375
|
+
* a `4XX` or `default` response is the codes it stands for, written out.
|
|
376
|
+
*/
|
|
377
|
+
export interface WireResults {
|
|
378
|
+
/** Every response `Session_whoami` declares. */
|
|
379
|
+
Session_whoami: {
|
|
380
|
+
readonly status: 200;
|
|
381
|
+
readonly body: Produced<Whoami>;
|
|
382
|
+
} | {
|
|
383
|
+
readonly status: 401;
|
|
384
|
+
readonly body: Produced<Problem>;
|
|
385
|
+
};
|
|
386
|
+
/** Every response `EventTickets_issue` declares. */
|
|
387
|
+
EventTickets_issue: {
|
|
388
|
+
readonly status: 201;
|
|
389
|
+
readonly body: Produced<EventTicket>;
|
|
390
|
+
} | {
|
|
391
|
+
readonly status: 401;
|
|
392
|
+
readonly body: Produced<Problem>;
|
|
393
|
+
};
|
|
394
|
+
/** Every response `Snapshots_read` declares. */
|
|
395
|
+
Snapshots_read: {
|
|
396
|
+
readonly status: 200;
|
|
397
|
+
readonly body: Produced<Snapshot>;
|
|
398
|
+
} | {
|
|
399
|
+
readonly status: 401;
|
|
400
|
+
readonly body: Produced<Problem>;
|
|
401
|
+
};
|
|
402
|
+
/** Every response `Asks_list` declares. */
|
|
403
|
+
Asks_list: {
|
|
404
|
+
readonly status: 200;
|
|
405
|
+
readonly body: Produced<AskPage>;
|
|
406
|
+
} | {
|
|
407
|
+
readonly status: 401;
|
|
408
|
+
readonly body: Produced<Problem>;
|
|
409
|
+
};
|
|
410
|
+
/** Every response `Asks_read` declares. */
|
|
411
|
+
Asks_read: {
|
|
412
|
+
readonly status: 200;
|
|
413
|
+
readonly body: Produced<Ask>;
|
|
414
|
+
} | {
|
|
415
|
+
readonly status: 401;
|
|
416
|
+
readonly body: Produced<Problem>;
|
|
417
|
+
} | {
|
|
418
|
+
readonly status: 404;
|
|
419
|
+
readonly body: Produced<Problem>;
|
|
420
|
+
};
|
|
421
|
+
/** Every response `Asks_reply` declares. */
|
|
422
|
+
Asks_reply: {
|
|
423
|
+
readonly status: 200;
|
|
424
|
+
readonly body: Produced<Ask>;
|
|
425
|
+
} | {
|
|
426
|
+
readonly status: 401;
|
|
427
|
+
readonly body: Produced<Problem>;
|
|
428
|
+
} | {
|
|
429
|
+
readonly status: 404;
|
|
430
|
+
readonly body: Produced<Problem>;
|
|
431
|
+
} | {
|
|
432
|
+
readonly status: 409;
|
|
433
|
+
readonly body: Produced<Problem>;
|
|
434
|
+
} | {
|
|
435
|
+
readonly status: 422;
|
|
436
|
+
readonly body: Produced<Problem>;
|
|
437
|
+
};
|
|
438
|
+
/** Every response `Files_read` declares. */
|
|
439
|
+
Files_read: {
|
|
440
|
+
readonly status: 200;
|
|
441
|
+
readonly contentType: "image/png";
|
|
442
|
+
readonly body: ByteStream | Uint8Array<ArrayBuffer> | ArrayBuffer;
|
|
443
|
+
} | {
|
|
444
|
+
readonly status: 200;
|
|
445
|
+
readonly contentType: "image/jpeg";
|
|
446
|
+
readonly body: ByteStream | Uint8Array<ArrayBuffer> | ArrayBuffer;
|
|
447
|
+
} | {
|
|
448
|
+
readonly status: 200;
|
|
449
|
+
readonly contentType: "image/webp";
|
|
450
|
+
readonly body: ByteStream | Uint8Array<ArrayBuffer> | ArrayBuffer;
|
|
451
|
+
} | {
|
|
452
|
+
readonly status: 200;
|
|
453
|
+
readonly contentType: "image/gif";
|
|
454
|
+
readonly body: ByteStream | Uint8Array<ArrayBuffer> | ArrayBuffer;
|
|
455
|
+
} | {
|
|
456
|
+
readonly status: 401;
|
|
457
|
+
readonly body: Produced<Problem>;
|
|
458
|
+
} | {
|
|
459
|
+
readonly status: 404;
|
|
460
|
+
readonly body: Produced<Problem>;
|
|
461
|
+
};
|
|
462
|
+
/** Every response `Uploads_store` declares. */
|
|
463
|
+
Uploads_store: {
|
|
464
|
+
readonly status: 201;
|
|
465
|
+
readonly body: Produced<UploadReceipt>;
|
|
466
|
+
} | {
|
|
467
|
+
readonly status: 404;
|
|
468
|
+
readonly body: Produced<Problem>;
|
|
469
|
+
} | {
|
|
470
|
+
readonly status: 410;
|
|
471
|
+
readonly body: Produced<Problem>;
|
|
472
|
+
} | {
|
|
473
|
+
readonly status: 413;
|
|
474
|
+
readonly body: Produced<Problem>;
|
|
475
|
+
} | {
|
|
476
|
+
readonly status: 422;
|
|
477
|
+
readonly body: Produced<Problem>;
|
|
478
|
+
};
|
|
479
|
+
}
|
|
480
|
+
export {};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
// GENERATED by scripts/schemas.ts. DO NOT EDIT. Regenerate with: pnpm generate
|
|
2
|
+
/** The contract's latest revision: the one this release writes. */
|
|
3
|
+
export const REVISION = 1;
|
|
4
|
+
/** Every revision of the contract, oldest first. */
|
|
5
|
+
export const REVISIONS = [1];
|
|
6
|
+
export * from "./schemas.r1.gen.js";
|