@rvoh/psychic-spec-helpers 0.7.2 → 0.7.3
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/esm/spec/features/setup/hooks.js +2 -2
- package/dist/esm/src/unit/OpenapiSpecRequest.js +342 -21
- package/dist/esm/src/unit/OpenapiSpecSession.js +290 -12
- package/dist/types/src/unit/OpenapiSpecRequest.d.ts +15 -335
- package/dist/types/src/unit/OpenapiSpecSession.d.ts +8 -277
- package/package.json +1 -1
- package/src/unit/OpenapiSpecRequest.ts +98 -831
- package/src/unit/OpenapiSpecSession.ts +82 -696
|
@@ -58,61 +58,10 @@ export declare class OpenapiSpecSession<OpenapiPaths> {
|
|
|
58
58
|
* @param opts.headers - headers you would like to send with your request.
|
|
59
59
|
* (Optional)
|
|
60
60
|
*/
|
|
61
|
-
opts
|
|
61
|
+
opts?: Params['length'] extends 0 ? OpenapiSpecRequestOptsGet<QueryMap> : OpenapiSpecRequestOptsGet<QueryMap> & {
|
|
62
62
|
[K in Params[number]]: string | IdType;
|
|
63
63
|
}): Promise<OpenapiSpecResponse<JsonContent>>;
|
|
64
|
-
|
|
65
|
-
/**
|
|
66
|
-
* The uri on your background you are trying to hit.
|
|
67
|
-
* This should be a path, like '/users'.
|
|
68
|
-
*
|
|
69
|
-
* ```ts
|
|
70
|
-
* const request = new OpenapiSpecRequest<openapiPaths>()
|
|
71
|
-
* const session = await request.session('post', '/sessions/{token}', 200, { token: 'abc' })
|
|
72
|
-
* const res = await session.get('/user', 200)
|
|
73
|
-
* ```
|
|
74
|
-
*/
|
|
75
|
-
uri: Uri,
|
|
76
|
-
/**
|
|
77
|
-
* The response status you are expecting to receive
|
|
78
|
-
* when making this request. It will need to match
|
|
79
|
-
* one of the accepted response statuses for the
|
|
80
|
-
* provided uri in your openapi types
|
|
81
|
-
*
|
|
82
|
-
* ```ts
|
|
83
|
-
* const request = new OpenapiSpecRequest<openapiPaths>()
|
|
84
|
-
* const session = await request.session('post', '/sessions/{token}', 200, { token: 'abc' })
|
|
85
|
-
* const res = await session.get('/user', 200)
|
|
86
|
-
* ```
|
|
87
|
-
*/
|
|
88
|
-
expectedStatus: ResponseCode,
|
|
89
|
-
/**
|
|
90
|
-
* Query params, headers, and other options to send with
|
|
91
|
-
* your request.
|
|
92
|
-
*
|
|
93
|
-
* ```ts
|
|
94
|
-
* const request = new OpenapiSpecRequest<openapiPaths>()
|
|
95
|
-
* const session = await request.session('post', '/sessions/{token}', 200, { token: 'abc' })
|
|
96
|
-
* const res = await session.get(
|
|
97
|
-
* '/user',
|
|
98
|
-
* 200,
|
|
99
|
-
* {
|
|
100
|
-
* query: {
|
|
101
|
-
* ...query params here
|
|
102
|
-
* }
|
|
103
|
-
* }
|
|
104
|
-
* )
|
|
105
|
-
* ```
|
|
106
|
-
*
|
|
107
|
-
* @param opts.query - query params you want to send up. Must match the
|
|
108
|
-
* query params in the openapi document for this uri.
|
|
109
|
-
* (Optional)
|
|
110
|
-
*
|
|
111
|
-
* @param opts.headers - headers you would like to send with your request.
|
|
112
|
-
* (Optional)
|
|
113
|
-
*/
|
|
114
|
-
opts?: OpenapiSpecRequestOptsGet<QueryMap>): Promise<OpenapiSpecResponse<JsonContent>>;
|
|
115
|
-
post<const Uri extends RoutesWithHttpMethod<OpenapiPaths, 'post' & keyof OpenapiPaths[keyof OpenapiPaths]> & string, const ResponseCode extends Params['length'] extends 0 ? never : keyof ExcludeNever<ResponseMap> & number, HttpMethodMap extends OpenapiPaths[ResolvedUri & keyof OpenapiPaths], ResolvedUri extends First<GetResolvedOpenapiUrl<OpenapiPaths, Uri> & keyof OpenapiPaths>, Params extends string[] & ExtractOpenapiParams<Uri>, ResponseMap extends HttpMethodMap['post' & keyof HttpMethodMap]['responses' & keyof HttpMethodMap['post' & keyof HttpMethodMap]], Content extends ResponseMap extends undefined ? undefined : ResponseCode extends undefined ? undefined : ResponseCode extends number ? ResponseMap[ResponseCode & keyof ResponseMap]['content' & keyof ResponseMap[ResponseCode & keyof ResponseMap]] : undefined, JsonContent extends Content extends undefined ? undefined : Content['application/json' & keyof Content], RequestBodyMap extends HttpMethodMap['post' & keyof HttpMethodMap]['requestBody' & keyof HttpMethodMap['post' & keyof HttpMethodMap]], RequestBodyContent extends RequestBodyMap extends undefined ? undefined : RequestBodyMap['content' & keyof RequestBodyMap], RequestBodyJsonContent extends RequestBodyContent extends undefined ? undefined : RequestBodyContent['application/json' & keyof RequestBodyContent]>(
|
|
64
|
+
post<const Uri extends RoutesWithHttpMethod<OpenapiPaths, 'post' & keyof OpenapiPaths[keyof OpenapiPaths]> & string, const ResponseCode extends keyof ResponseMap & number, HttpMethodMap extends OpenapiPaths[ResolvedUri & keyof OpenapiPaths], ResolvedUri extends First<GetResolvedOpenapiUrl<OpenapiPaths, Uri> & keyof OpenapiPaths>, Params extends string[] & ExtractOpenapiParams<Uri>, ResponseMap extends HttpMethodMap['post' & keyof HttpMethodMap]['responses' & keyof HttpMethodMap['post' & keyof HttpMethodMap]], Content extends ResponseMap extends undefined ? undefined : ResponseCode extends undefined ? undefined : ResponseCode extends number ? ResponseMap[ResponseCode & keyof ResponseMap]['content' & keyof ResponseMap[ResponseCode & keyof ResponseMap]] : undefined, JsonContent extends Content extends undefined ? undefined : Content['application/json' & keyof Content], RequestBodyMap extends HttpMethodMap['post' & keyof HttpMethodMap]['requestBody' & keyof HttpMethodMap['post' & keyof HttpMethodMap]], RequestBodyContent extends RequestBodyMap extends undefined ? undefined : RequestBodyMap['content' & keyof RequestBodyMap], RequestBodyJsonContent extends RequestBodyContent extends undefined ? undefined : RequestBodyContent['application/json' & keyof RequestBodyContent]>(
|
|
116
65
|
/**
|
|
117
66
|
* The uri on your background you are trying to hit.
|
|
118
67
|
* This should be a path, like '/users'.
|
|
@@ -168,64 +117,10 @@ export declare class OpenapiSpecSession<OpenapiPaths> {
|
|
|
168
117
|
* @param opts.headers - headers you would like to send with your request.
|
|
169
118
|
* (Optional)
|
|
170
119
|
*/
|
|
171
|
-
opts: OpenapiSpecRequestOptsPost<RequestBodyJsonContent> & {
|
|
120
|
+
opts?: Params['length'] extends 0 ? OpenapiSpecRequestOptsPost<RequestBodyJsonContent> : OpenapiSpecRequestOptsPost<RequestBodyJsonContent> & {
|
|
172
121
|
[K in Params[number]]: string;
|
|
173
122
|
}): Promise<OpenapiSpecResponse<JsonContent>>;
|
|
174
|
-
|
|
175
|
-
/**
|
|
176
|
-
* The uri on your background you are trying to hit.
|
|
177
|
-
* This should be a path, like '/users'.
|
|
178
|
-
*
|
|
179
|
-
* ```ts
|
|
180
|
-
* const request = new OpenapiSpecRequest<openapiPaths>()
|
|
181
|
-
* const session = await request.session('post', '/sessions/{token}', 200, { token: 'abc' })
|
|
182
|
-
* const res = await session.post('/user', 200)
|
|
183
|
-
* ```
|
|
184
|
-
*/
|
|
185
|
-
uri: Uri,
|
|
186
|
-
/**
|
|
187
|
-
* The response status you are expecting to receive
|
|
188
|
-
* when making this request. It will need to match
|
|
189
|
-
* one of the accepted response statuses for the
|
|
190
|
-
* provided uri in your openapi types
|
|
191
|
-
*
|
|
192
|
-
* ```ts
|
|
193
|
-
* const request = new OpenapiSpecRequest<openapiPaths>()
|
|
194
|
-
* const session = await request.session('post', '/sessions/{token}', 200, { token: 'abc' })
|
|
195
|
-
* const res = await session.post('/user', 200)
|
|
196
|
-
* ```
|
|
197
|
-
*/
|
|
198
|
-
expectedStatus: ResponseCode,
|
|
199
|
-
/**
|
|
200
|
-
* Data, headers, and other options to send with
|
|
201
|
-
* your request.
|
|
202
|
-
*
|
|
203
|
-
* ```ts
|
|
204
|
-
* const request = new OpenapiSpecRequest<openapiPaths>()
|
|
205
|
-
* const session = await request.session('post', '/sessions/{token}', 200, { token: 'abc' })
|
|
206
|
-
* const res = await session.post(
|
|
207
|
-
* '/user',
|
|
208
|
-
* 200,
|
|
209
|
-
* {
|
|
210
|
-
* data: {
|
|
211
|
-
* ...request body here
|
|
212
|
-
* },
|
|
213
|
-
* headers: {
|
|
214
|
-
* ...headers here
|
|
215
|
-
* },
|
|
216
|
-
* }
|
|
217
|
-
* )
|
|
218
|
-
* ```
|
|
219
|
-
*
|
|
220
|
-
* @param opts.data - request body data you want to send up. Must match the
|
|
221
|
-
* requestBody shape in the openapi document for this uri.
|
|
222
|
-
* (Optional)
|
|
223
|
-
*
|
|
224
|
-
* @param opts.headers - headers you would like to send with your request.
|
|
225
|
-
* (Optional)
|
|
226
|
-
*/
|
|
227
|
-
opts?: Params['length'] extends 0 ? OpenapiSpecRequestOptsPost<RequestBodyJsonContent> : never): Promise<OpenapiSpecResponse<JsonContent>>;
|
|
228
|
-
put<const Uri extends RoutesWithHttpMethod<OpenapiPaths, 'put' & keyof OpenapiPaths[keyof OpenapiPaths]> & string, const ResponseCode extends Params['length'] extends 0 ? never : keyof ExcludeNever<ResponseMap> & number, HttpMethodMap extends OpenapiPaths[Uri & keyof OpenapiPaths], Params extends string[] & ExtractOpenapiParams<Uri>, ResponseMap extends HttpMethodMap['put' & keyof HttpMethodMap]['responses' & keyof HttpMethodMap['put' & keyof HttpMethodMap]], Content extends ResponseMap extends undefined ? undefined : ResponseCode extends undefined ? undefined : ResponseCode extends number ? ResponseMap[ResponseCode & keyof ResponseMap]['content' & keyof ResponseMap[ResponseCode & keyof ResponseMap]] : undefined, JsonContent extends Content extends undefined ? undefined : Content['application/json' & keyof Content], RequestBodyMap extends HttpMethodMap['put' & keyof HttpMethodMap]['requestBody' & keyof HttpMethodMap['put' & keyof HttpMethodMap]], RequestBodyContent extends RequestBodyMap extends undefined ? undefined : RequestBodyMap['content' & keyof RequestBodyMap], RequestBodyJsonContent extends RequestBodyContent extends undefined ? undefined : RequestBodyContent['application/json' & keyof RequestBodyContent]>(
|
|
123
|
+
put<const Uri extends RoutesWithHttpMethod<OpenapiPaths, 'put' & keyof OpenapiPaths[keyof OpenapiPaths]> & string, const ResponseCode extends keyof ResponseMap & number, HttpMethodMap extends OpenapiPaths[Uri & keyof OpenapiPaths], Params extends string[] & ExtractOpenapiParams<Uri>, ResponseMap extends HttpMethodMap['put' & keyof HttpMethodMap]['responses' & keyof HttpMethodMap['put' & keyof HttpMethodMap]], Content extends ResponseMap extends undefined ? undefined : ResponseCode extends undefined ? undefined : ResponseCode extends number ? ResponseMap[ResponseCode & keyof ResponseMap]['content' & keyof ResponseMap[ResponseCode & keyof ResponseMap]] : undefined, JsonContent extends Content extends undefined ? undefined : Content['application/json' & keyof Content], RequestBodyMap extends HttpMethodMap['put' & keyof HttpMethodMap]['requestBody' & keyof HttpMethodMap['put' & keyof HttpMethodMap]], RequestBodyContent extends RequestBodyMap extends undefined ? undefined : RequestBodyMap['content' & keyof RequestBodyMap], RequestBodyJsonContent extends RequestBodyContent extends undefined ? undefined : RequestBodyContent['application/json' & keyof RequestBodyContent]>(
|
|
229
124
|
/**
|
|
230
125
|
* The uri on your background you are trying to hit.
|
|
231
126
|
* This should be a path, like '/users'.
|
|
@@ -282,66 +177,10 @@ export declare class OpenapiSpecSession<OpenapiPaths> {
|
|
|
282
177
|
* @param opts.headers - headers you would like to send with your request.
|
|
283
178
|
* (Optional)
|
|
284
179
|
*/
|
|
285
|
-
opts
|
|
180
|
+
opts?: Params['length'] extends 0 ? OpenapiSpecRequestOptsPost<RequestBodyJsonContent> : OpenapiSpecRequestOptsPost<RequestBodyJsonContent> & {
|
|
286
181
|
[K in Params[number]]: string | IdType;
|
|
287
182
|
}): Promise<OpenapiSpecResponse<JsonContent>>;
|
|
288
|
-
|
|
289
|
-
/**
|
|
290
|
-
* The uri on your background you are trying to hit.
|
|
291
|
-
* This should be a path, like '/users'.
|
|
292
|
-
*
|
|
293
|
-
* ```ts
|
|
294
|
-
* const request = new OpenapiSpecRequest<openapiPaths>()
|
|
295
|
-
* const session = await request.session('post', '/sessions/{token}', 200, { token: 'abc' })
|
|
296
|
-
* const res = await session.put('/user', 200, { data: { name: 'new name' })
|
|
297
|
-
* ```
|
|
298
|
-
*/
|
|
299
|
-
uri: Uri,
|
|
300
|
-
/**
|
|
301
|
-
* The response status you are expecting to receive
|
|
302
|
-
* when making this request. It will need to match
|
|
303
|
-
* one of the accepted response statuses for the
|
|
304
|
-
* provided uri in your openapi types
|
|
305
|
-
*
|
|
306
|
-
* ```ts
|
|
307
|
-
* const request = new OpenapiSpecRequest<openapiPaths>()
|
|
308
|
-
* const session = await request.session('post', '/sessions/{token}', 200, { token: 'abc' })
|
|
309
|
-
* const res = await session.put('/user', 200, { data: { name: 'new name' })
|
|
310
|
-
* ```
|
|
311
|
-
*/
|
|
312
|
-
expectedStatus: ResponseCode,
|
|
313
|
-
/**
|
|
314
|
-
* An object containing the path fields required to
|
|
315
|
-
* fill your uri in, as well as any additional PUT
|
|
316
|
-
* arguments, like `data`, for example.
|
|
317
|
-
*
|
|
318
|
-
*
|
|
319
|
-
* ```ts
|
|
320
|
-
* const request = new OpenapiSpecRequest<openapiPaths>()
|
|
321
|
-
* const session = await request.session('post', '/sessions/{token}', 200, { token: 'abc' })
|
|
322
|
-
* const res = await session.put(
|
|
323
|
-
* '/user',
|
|
324
|
-
* 200,
|
|
325
|
-
* {
|
|
326
|
-
* data: {
|
|
327
|
-
* ...request body here
|
|
328
|
-
* },
|
|
329
|
-
* headers: {
|
|
330
|
-
* ...headers here
|
|
331
|
-
* },
|
|
332
|
-
* }
|
|
333
|
-
* )
|
|
334
|
-
* ```
|
|
335
|
-
*
|
|
336
|
-
* @param opts.data - request body data you want to send up. Must match the
|
|
337
|
-
* requestBody shape in the openapi document for this uri.
|
|
338
|
-
* (Optional)
|
|
339
|
-
*
|
|
340
|
-
* @param opts.headers - headers you would like to send with your request.
|
|
341
|
-
* (Optional)
|
|
342
|
-
*/
|
|
343
|
-
opts?: Params['length'] extends 0 ? OpenapiSpecRequestOptsPost<RequestBodyJsonContent> : never): Promise<OpenapiSpecResponse<JsonContent>>;
|
|
344
|
-
patch<const Uri extends RoutesWithHttpMethod<OpenapiPaths, 'patch' & keyof OpenapiPaths[keyof OpenapiPaths]> & string, const ResponseCode extends Params['length'] extends 0 ? never : keyof ExcludeNever<ResponseMap> & number, HttpMethodMap extends OpenapiPaths[Uri & keyof OpenapiPaths], Params extends string[] & ExtractOpenapiParams<Uri>, ResponseMap extends HttpMethodMap['patch' & keyof HttpMethodMap]['responses' & keyof HttpMethodMap['patch' & keyof HttpMethodMap]], Content extends ResponseMap extends undefined ? undefined : ResponseCode extends undefined ? undefined : ResponseCode extends number ? ResponseMap[ResponseCode & keyof ResponseMap]['content' & keyof ResponseMap[ResponseCode & keyof ResponseMap]] : undefined, JsonContent extends Content extends undefined ? undefined : Content['application/json' & keyof Content], RequestBodyMap extends HttpMethodMap['patch' & keyof HttpMethodMap]['requestBody' & keyof HttpMethodMap['patch' & keyof HttpMethodMap]], RequestBodyContent extends RequestBodyMap extends undefined ? undefined : RequestBodyMap['content' & keyof RequestBodyMap], RequestBodyJsonContent extends RequestBodyContent extends undefined ? undefined : RequestBodyContent['application/json' & keyof RequestBodyContent]>(
|
|
183
|
+
patch<const Uri extends RoutesWithHttpMethod<OpenapiPaths, 'patch' & keyof OpenapiPaths[keyof OpenapiPaths]> & string, const ResponseCode extends keyof ResponseMap & number, HttpMethodMap extends OpenapiPaths[Uri & keyof OpenapiPaths], Params extends string[] & ExtractOpenapiParams<Uri>, ResponseMap extends HttpMethodMap['patch' & keyof HttpMethodMap]['responses' & keyof HttpMethodMap['patch' & keyof HttpMethodMap]], Content extends ResponseMap extends undefined ? undefined : ResponseCode extends undefined ? undefined : ResponseCode extends number ? ResponseMap[ResponseCode & keyof ResponseMap]['content' & keyof ResponseMap[ResponseCode & keyof ResponseMap]] : undefined, JsonContent extends Content extends undefined ? undefined : Content['application/json' & keyof Content], RequestBodyMap extends HttpMethodMap['patch' & keyof HttpMethodMap]['requestBody' & keyof HttpMethodMap['patch' & keyof HttpMethodMap]], RequestBodyContent extends RequestBodyMap extends undefined ? undefined : RequestBodyMap['content' & keyof RequestBodyMap], RequestBodyJsonContent extends RequestBodyContent extends undefined ? undefined : RequestBodyContent['application/json' & keyof RequestBodyContent]>(
|
|
345
184
|
/**
|
|
346
185
|
* The uri on your background you are trying to hit.
|
|
347
186
|
* This should be a path, like '/posts'.
|
|
@@ -397,63 +236,9 @@ export declare class OpenapiSpecSession<OpenapiPaths> {
|
|
|
397
236
|
* @param opts.headers - headers you would like to send with your request.
|
|
398
237
|
* (Optional)
|
|
399
238
|
*/
|
|
400
|
-
opts
|
|
239
|
+
opts?: Params['length'] extends 0 ? OpenapiSpecRequestOptsPost<RequestBodyJsonContent> : OpenapiSpecRequestOptsPost<RequestBodyJsonContent> & {
|
|
401
240
|
[K in Params[number]]: string | IdType;
|
|
402
241
|
}): Promise<OpenapiSpecResponse<JsonContent>>;
|
|
403
|
-
patch<const Uri extends RoutesWithHttpMethod<OpenapiPaths, 'patch' & keyof OpenapiPaths[keyof OpenapiPaths]> & string, const ResponseCode extends Params['length'] extends 0 ? keyof ExcludeNever<ResponseMap> & number : never, HttpMethodMap extends OpenapiPaths[Uri & keyof OpenapiPaths], Params extends string[] & ExtractOpenapiParams<Uri>, ResponseMap extends HttpMethodMap['patch' & keyof HttpMethodMap]['responses' & keyof HttpMethodMap['patch' & keyof HttpMethodMap]], Content extends ResponseMap extends undefined ? undefined : ResponseCode extends undefined ? undefined : ResponseCode extends number ? ResponseMap[ResponseCode & keyof ResponseMap]['content' & keyof ResponseMap[ResponseCode & keyof ResponseMap]] : undefined, JsonContent extends Content extends undefined ? undefined : Content['application/json' & keyof Content], RequestBodyMap extends HttpMethodMap['patch' & keyof HttpMethodMap]['requestBody' & keyof HttpMethodMap['patch' & keyof HttpMethodMap]], RequestBodyContent extends RequestBodyMap extends undefined ? undefined : RequestBodyMap['content' & keyof RequestBodyMap], RequestBodyJsonContent extends RequestBodyContent extends undefined ? undefined : RequestBodyContent['application/json' & keyof RequestBodyContent]>(
|
|
404
|
-
/**
|
|
405
|
-
* The uri on your background you are trying to hit.
|
|
406
|
-
* This should be a path, like '/user'.
|
|
407
|
-
*
|
|
408
|
-
* ```ts
|
|
409
|
-
* const request = new OpenapiSpecRequest<openapiPaths>()
|
|
410
|
-
* const session = await request.session('post', '/sessions/{token}', 200, { token: 'abc' })
|
|
411
|
-
* const res = await session.patch('/user', 200, { data: { name: 'new name' }})
|
|
412
|
-
* ```
|
|
413
|
-
*/
|
|
414
|
-
uri: Uri,
|
|
415
|
-
/**
|
|
416
|
-
* The response status you are expecting to receive
|
|
417
|
-
* when making this request. It will need to match
|
|
418
|
-
* one of the accepted response statuses for the
|
|
419
|
-
* provided uri in your openapi types
|
|
420
|
-
*
|
|
421
|
-
* ```ts
|
|
422
|
-
* const request = new OpenapiSpecRequest<openapiPaths>()
|
|
423
|
-
* const session = await request.session('post', '/sessions/{token}', 200, { token: 'abc' })
|
|
424
|
-
* const res = await session.patch('/user', 200, { data: { name: 'new name' }})
|
|
425
|
-
* ```
|
|
426
|
-
*/
|
|
427
|
-
expectedStatus: ResponseCode,
|
|
428
|
-
/**
|
|
429
|
-
* Data, headers, and other options to send with
|
|
430
|
-
* your request.
|
|
431
|
-
*
|
|
432
|
-
* ```ts
|
|
433
|
-
* const request = new OpenapiSpecRequest<openapiPaths>()
|
|
434
|
-
* const session = await request.session('post', '/sessions/{token}', 200, { token: 'abc' })
|
|
435
|
-
* const res = await session.patch(
|
|
436
|
-
* '/user',
|
|
437
|
-
* 200,
|
|
438
|
-
* {
|
|
439
|
-
* data: {
|
|
440
|
-
* ...request body here
|
|
441
|
-
* },
|
|
442
|
-
* headers: {
|
|
443
|
-
* ...headers here
|
|
444
|
-
* },
|
|
445
|
-
* }
|
|
446
|
-
* )
|
|
447
|
-
* ```
|
|
448
|
-
*
|
|
449
|
-
* @param opts.data - request body data you want to send up. Must match the
|
|
450
|
-
* requestBody shape in the openapi document for this uri.
|
|
451
|
-
* (Optional)
|
|
452
|
-
*
|
|
453
|
-
* @param opts.headers - headers you would like to send with your request.
|
|
454
|
-
* (Optional)
|
|
455
|
-
*/
|
|
456
|
-
opts?: Params['length'] extends 0 ? OpenapiSpecRequestOptsPost<RequestBodyJsonContent> : never): Promise<OpenapiSpecResponse<JsonContent>>;
|
|
457
242
|
delete<const Uri extends RoutesWithHttpMethod<OpenapiPaths, 'delete' & keyof OpenapiPaths[keyof OpenapiPaths]> & string, const ResponseCode extends Params['length'] extends 0 ? never : keyof ExcludeNever<ResponseMap> & number, HttpMethodMap extends OpenapiPaths[Uri & keyof OpenapiPaths], Params extends string[] & ExtractOpenapiParams<Uri>, ResponseMap extends HttpMethodMap['delete' & keyof HttpMethodMap]['responses' & keyof HttpMethodMap['delete' & keyof HttpMethodMap]], Content extends ResponseMap extends undefined ? undefined : ResponseCode extends undefined ? undefined : ResponseCode extends number ? ResponseMap[ResponseCode & keyof ResponseMap]['content' & keyof ResponseMap[ResponseCode & keyof ResponseMap]] : undefined, JsonContent extends Content extends undefined ? undefined : Content['application/json' & keyof Content], RequestBodyMap extends HttpMethodMap['delete' & keyof HttpMethodMap]['requestBody' & keyof HttpMethodMap['delete' & keyof HttpMethodMap]], RequestBodyContent extends RequestBodyMap extends undefined ? undefined : RequestBodyMap['content' & keyof RequestBodyMap], RequestBodyJsonContent extends RequestBodyContent extends undefined ? undefined : RequestBodyContent['application/json' & keyof RequestBodyContent]>(
|
|
458
243
|
/**
|
|
459
244
|
* The uri on your background you are trying to hit.
|
|
@@ -510,62 +295,8 @@ export declare class OpenapiSpecSession<OpenapiPaths> {
|
|
|
510
295
|
* @param opts.headers - headers you would like to send with your request.
|
|
511
296
|
* (Optional)
|
|
512
297
|
*/
|
|
513
|
-
opts
|
|
298
|
+
opts?: Params['length'] extends 0 ? OpenapiSpecRequestOptsPost<RequestBodyJsonContent> : OpenapiSpecRequestOptsPost<RequestBodyJsonContent> & {
|
|
514
299
|
[K in Params[number]]: string | IdType;
|
|
515
300
|
}): Promise<OpenapiSpecResponse<JsonContent>>;
|
|
516
|
-
delete<const Uri extends RoutesWithHttpMethod<OpenapiPaths, 'delete' & keyof OpenapiPaths[keyof OpenapiPaths]> & string, const ResponseCode extends Params['length'] extends 0 ? keyof ExcludeNever<ResponseMap> & number : never, HttpMethodMap extends OpenapiPaths[Uri & keyof OpenapiPaths], Params extends string[] & ExtractOpenapiParams<Uri>, ResponseMap extends HttpMethodMap['delete' & keyof HttpMethodMap]['responses' & keyof HttpMethodMap['delete' & keyof HttpMethodMap]], Content extends ResponseMap extends undefined ? undefined : ResponseCode extends undefined ? undefined : ResponseCode extends number ? ResponseMap[ResponseCode & keyof ResponseMap]['content' & keyof ResponseMap[ResponseCode & keyof ResponseMap]] : undefined, JsonContent extends Content extends undefined ? undefined : Content['application/json' & keyof Content], RequestBodyMap extends HttpMethodMap['delete' & keyof HttpMethodMap]['requestBody' & keyof HttpMethodMap['delete' & keyof HttpMethodMap]], RequestBodyContent extends RequestBodyMap extends undefined ? undefined : RequestBodyMap['content' & keyof RequestBodyMap], RequestBodyJsonContent extends RequestBodyContent extends undefined ? undefined : RequestBodyContent['application/json' & keyof RequestBodyContent]>(
|
|
517
|
-
/**
|
|
518
|
-
* The uri on your background you are trying to hit.
|
|
519
|
-
* This should be a path, like '/users'.
|
|
520
|
-
*
|
|
521
|
-
* ```ts
|
|
522
|
-
* const request = new OpenapiSpecRequest<openapiPaths>()
|
|
523
|
-
* const session = await request.session('post', '/sessions/{token}', 200, { token: 'abc' })
|
|
524
|
-
* const res = await session.delete('/user', 200)
|
|
525
|
-
* ```
|
|
526
|
-
*/
|
|
527
|
-
uri: Uri,
|
|
528
|
-
/**
|
|
529
|
-
* The response status you are expecting to receive
|
|
530
|
-
* when making this request. It will need to match
|
|
531
|
-
* one of the accepted response statuses for the
|
|
532
|
-
* provided uri in your openapi types
|
|
533
|
-
*
|
|
534
|
-
* ```ts
|
|
535
|
-
* const request = new OpenapiSpecRequest<openapiPaths>()
|
|
536
|
-
* const session = await request.session('post', '/sessions/{token}', 200, { token: 'abc' })
|
|
537
|
-
* const res = await session.delete('/user', 200)
|
|
538
|
-
* ```
|
|
539
|
-
*/
|
|
540
|
-
expectedStatus: ResponseCode,
|
|
541
|
-
/**
|
|
542
|
-
* Data, headers, and other options to send with
|
|
543
|
-
* your request.
|
|
544
|
-
*
|
|
545
|
-
* ```ts
|
|
546
|
-
* const request = new OpenapiSpecRequest<openapiPaths>()
|
|
547
|
-
* const session = await request.session('post', '/sessions/{token}', 200, { token: 'abc' })
|
|
548
|
-
* const res = await session.delete(
|
|
549
|
-
* '/user',
|
|
550
|
-
* 200,
|
|
551
|
-
* {
|
|
552
|
-
* data: {
|
|
553
|
-
* ...request body here
|
|
554
|
-
* },
|
|
555
|
-
* headers: {
|
|
556
|
-
* ...headers here
|
|
557
|
-
* },
|
|
558
|
-
* }
|
|
559
|
-
* )
|
|
560
|
-
* ```
|
|
561
|
-
*
|
|
562
|
-
* @param opts.data - request body data you want to send up. Must match the
|
|
563
|
-
* requestBody shape in the openapi document for this uri.
|
|
564
|
-
* (Optional)
|
|
565
|
-
*
|
|
566
|
-
* @param opts.headers - headers you would like to send with your request.
|
|
567
|
-
* (Optional)
|
|
568
|
-
*/
|
|
569
|
-
opts?: Params['length'] extends 0 ? OpenapiSpecRequestOptsPost<RequestBodyJsonContent> : never): Promise<OpenapiSpecResponse<JsonContent>>;
|
|
570
301
|
private makeRequest;
|
|
571
302
|
}
|