@igniter-js/caller 0.1.0 → 0.1.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/AGENTS.md +151 -9
- package/CHANGELOG.md +54 -0
- package/README.md +211 -37
- package/dist/index.d.mts +272 -35
- package/dist/index.d.ts +272 -35
- package/dist/index.js +406 -138
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +406 -138
- package/dist/index.mjs.map +1 -1
- package/package.json +1 -1
package/dist/index.d.mts
CHANGED
|
@@ -8,6 +8,20 @@ import { z } from 'zod';
|
|
|
8
8
|
*/
|
|
9
9
|
type IgniterCallerHttpMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE' | 'HEAD';
|
|
10
10
|
|
|
11
|
+
/**
|
|
12
|
+
* Retry configuration for failed requests.
|
|
13
|
+
*/
|
|
14
|
+
interface IgniterCallerRetryOptions {
|
|
15
|
+
/** Maximum number of retry attempts. */
|
|
16
|
+
maxAttempts: number;
|
|
17
|
+
/** Backoff strategy between retries. */
|
|
18
|
+
backoff?: 'linear' | 'exponential';
|
|
19
|
+
/** Base delay in milliseconds (default: 1000). */
|
|
20
|
+
baseDelay?: number;
|
|
21
|
+
/** HTTP status codes that should trigger a retry (default: [408, 429, 500, 502, 503, 504]). */
|
|
22
|
+
retryOnStatus?: number[];
|
|
23
|
+
}
|
|
24
|
+
|
|
11
25
|
/**
|
|
12
26
|
* Base configuration options for HTTP requests.
|
|
13
27
|
*/
|
|
@@ -31,6 +45,34 @@ interface IgniterCallerRequestOptions<TBody = unknown> extends IgniterCallerBase
|
|
|
31
45
|
responseSchema?: z.ZodSchema<any>;
|
|
32
46
|
cache?: RequestCache;
|
|
33
47
|
}
|
|
48
|
+
/**
|
|
49
|
+
* Options for the direct request() method (axios-style).
|
|
50
|
+
* All options in one object, executes immediately.
|
|
51
|
+
*/
|
|
52
|
+
interface IgniterCallerDirectRequestOptions<TBody = unknown> extends IgniterCallerBaseRequestOptions {
|
|
53
|
+
/** HTTP method (GET, POST, PUT, PATCH, DELETE, HEAD) */
|
|
54
|
+
method: IgniterCallerHttpMethod;
|
|
55
|
+
/** Endpoint URL path. If absolute, `baseURL` is ignored. */
|
|
56
|
+
url: string;
|
|
57
|
+
/** Request body (for POST, PUT, PATCH) */
|
|
58
|
+
body?: TBody;
|
|
59
|
+
/** URL query parameters */
|
|
60
|
+
params?: Record<string, string | number | boolean>;
|
|
61
|
+
/** Cookies to send with the request */
|
|
62
|
+
cookies?: Record<string, string>;
|
|
63
|
+
/** Response validation schema (Zod) */
|
|
64
|
+
responseSchema?: z.ZodSchema<any>;
|
|
65
|
+
/** Cache strategy */
|
|
66
|
+
cache?: RequestCache;
|
|
67
|
+
/** Cache key for stale-while-revalidate */
|
|
68
|
+
cacheKey?: string;
|
|
69
|
+
/** Stale time in milliseconds for caching */
|
|
70
|
+
staleTime?: number;
|
|
71
|
+
/** Retry configuration */
|
|
72
|
+
retry?: IgniterCallerRetryOptions;
|
|
73
|
+
/** Fallback value if request fails */
|
|
74
|
+
fallback?: () => any;
|
|
75
|
+
}
|
|
34
76
|
|
|
35
77
|
/**
|
|
36
78
|
* Response object containing either successful data or an error.
|
|
@@ -38,14 +80,32 @@ interface IgniterCallerRequestOptions<TBody = unknown> extends IgniterCallerBase
|
|
|
38
80
|
interface IgniterCallerApiResponse<T> {
|
|
39
81
|
data?: T;
|
|
40
82
|
error?: Error;
|
|
83
|
+
/** HTTP status code from the response */
|
|
84
|
+
status?: number;
|
|
85
|
+
/** Response headers */
|
|
86
|
+
headers?: Headers;
|
|
41
87
|
}
|
|
42
88
|
/**
|
|
43
89
|
* Response object for file downloads.
|
|
90
|
+
* @deprecated Use execute() with responseType<File>() instead
|
|
44
91
|
*/
|
|
45
92
|
interface IgniterCallerFileResponse {
|
|
46
93
|
file: File | null;
|
|
47
94
|
error: Error | null;
|
|
48
95
|
}
|
|
96
|
+
/**
|
|
97
|
+
* Supported response content types that can be auto-detected.
|
|
98
|
+
*/
|
|
99
|
+
type IgniterCallerResponseContentType = 'json' | 'xml' | 'csv' | 'text' | 'html' | 'blob' | 'stream' | 'arraybuffer' | 'formdata';
|
|
100
|
+
/**
|
|
101
|
+
* Content types that support schema validation.
|
|
102
|
+
*/
|
|
103
|
+
type IgniterCallerValidatableContentType = 'json' | 'xml' | 'csv';
|
|
104
|
+
/**
|
|
105
|
+
* Marker types for responseType() to indicate expected response format.
|
|
106
|
+
* These are used for typing only and don't affect runtime behavior.
|
|
107
|
+
*/
|
|
108
|
+
type IgniterCallerResponseMarker = File | Blob | ReadableStream | ArrayBuffer | FormData;
|
|
49
109
|
|
|
50
110
|
/**
|
|
51
111
|
* Function that can modify request configuration before execution.
|
|
@@ -59,7 +119,7 @@ type IgniterCallerResponseInterceptor = <T>(response: IgniterCallerApiResponse<T
|
|
|
59
119
|
/**
|
|
60
120
|
* HTTP methods supported for schema mapping.
|
|
61
121
|
*/
|
|
62
|
-
type IgniterCallerSchemaMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE';
|
|
122
|
+
type IgniterCallerSchemaMethod = 'GET' | 'POST' | 'PUT' | 'PATCH' | 'DELETE' | 'HEAD';
|
|
63
123
|
/**
|
|
64
124
|
* Schema definition for a single endpoint.
|
|
65
125
|
*
|
|
@@ -128,6 +188,10 @@ type InferRequestType<T> = T extends IgniterCallerEndpointSchema<infer R, any> ?
|
|
|
128
188
|
* Infer response type by status code from endpoint schema.
|
|
129
189
|
*/
|
|
130
190
|
type InferResponseType<T, Status extends number> = T extends IgniterCallerEndpointSchema<any, infer Responses> ? Status extends keyof Responses ? Responses[Status] extends StandardSchemaV1 ? StandardSchemaV1.InferOutput<Responses[Status]> : never : never : never;
|
|
191
|
+
/**
|
|
192
|
+
* Infer the success response type (status 200 or 201) from endpoint schema.
|
|
193
|
+
*/
|
|
194
|
+
type InferSuccessResponseType<T> = T extends IgniterCallerEndpointSchema<any, infer Responses> ? 200 extends keyof Responses ? Responses[200] extends StandardSchemaV1 ? StandardSchemaV1.InferOutput<Responses[200]> : never : 201 extends keyof Responses ? Responses[201] extends StandardSchemaV1 ? StandardSchemaV1.InferOutput<Responses[201]> : never : never : never;
|
|
131
195
|
/**
|
|
132
196
|
* Infer all possible response types (union) from endpoint schema.
|
|
133
197
|
*/
|
|
@@ -137,6 +201,26 @@ type InferAllResponseTypes<T> = T extends IgniterCallerEndpointSchema<any, infer
|
|
|
137
201
|
data: StandardSchemaV1.InferOutput<Responses[K]>;
|
|
138
202
|
} : never;
|
|
139
203
|
}[keyof Responses] : never : never;
|
|
204
|
+
/**
|
|
205
|
+
* Get all available paths from a schema map.
|
|
206
|
+
*/
|
|
207
|
+
type SchemaMapPaths<TSchemas extends IgniterCallerSchemaMap> = keyof TSchemas & string;
|
|
208
|
+
/**
|
|
209
|
+
* Get available methods for a specific path.
|
|
210
|
+
*/
|
|
211
|
+
type SchemaMapMethods<TSchemas extends IgniterCallerSchemaMap, TPath extends keyof TSchemas> = keyof TSchemas[TPath] & IgniterCallerSchemaMethod;
|
|
212
|
+
/**
|
|
213
|
+
* Get endpoint schema for a specific path and method.
|
|
214
|
+
*/
|
|
215
|
+
type SchemaMapEndpoint<TSchemas extends IgniterCallerSchemaMap, TPath extends keyof TSchemas, TMethod extends keyof TSchemas[TPath]> = TSchemas[TPath][TMethod];
|
|
216
|
+
/**
|
|
217
|
+
* Infer response type from schema map for a specific path, method, and status.
|
|
218
|
+
*/
|
|
219
|
+
type SchemaMapResponseType<TSchemas extends IgniterCallerSchemaMap, TPath extends keyof TSchemas, TMethod extends keyof TSchemas[TPath], TStatus extends number = 200> = TSchemas[TPath][TMethod] extends IgniterCallerEndpointSchema<any, infer Responses> ? TStatus extends keyof Responses ? Responses[TStatus] extends StandardSchemaV1 ? StandardSchemaV1.InferOutput<Responses[TStatus]> : never : never : never;
|
|
220
|
+
/**
|
|
221
|
+
* Infer request type from schema map for a specific path and method.
|
|
222
|
+
*/
|
|
223
|
+
type SchemaMapRequestType<TSchemas extends IgniterCallerSchemaMap, TPath extends keyof TSchemas, TMethod extends keyof TSchemas[TPath]> = TSchemas[TPath][TMethod] extends IgniterCallerEndpointSchema<infer Request, any> ? Request extends StandardSchemaV1 ? StandardSchemaV1.InferInput<Request> : never : never;
|
|
140
224
|
/**
|
|
141
225
|
* Options for schema validation behavior.
|
|
142
226
|
*/
|
|
@@ -289,23 +373,26 @@ declare class IgniterCallerBuilder<TCaller = unknown, TSchemas extends IgniterCa
|
|
|
289
373
|
}
|
|
290
374
|
|
|
291
375
|
/**
|
|
292
|
-
*
|
|
376
|
+
* Constructor params for the request builder.
|
|
293
377
|
*/
|
|
294
|
-
interface
|
|
295
|
-
|
|
296
|
-
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
|
|
300
|
-
|
|
301
|
-
|
|
302
|
-
|
|
378
|
+
interface IgniterCallerRequestBuilderParams {
|
|
379
|
+
baseURL?: string;
|
|
380
|
+
defaultHeaders?: Record<string, string>;
|
|
381
|
+
defaultCookies?: Record<string, string>;
|
|
382
|
+
logger?: IgniterLogger;
|
|
383
|
+
requestInterceptors?: IgniterCallerRequestInterceptor[];
|
|
384
|
+
responseInterceptors?: IgniterCallerResponseInterceptor[];
|
|
385
|
+
eventEmitter?: (url: string, method: string, result: any) => Promise<void>;
|
|
386
|
+
schemas?: IgniterCallerSchemaMap;
|
|
387
|
+
schemaValidation?: IgniterCallerSchemaValidationOptions;
|
|
303
388
|
}
|
|
304
|
-
|
|
305
389
|
/**
|
|
306
390
|
* Fluent request builder for `IgniterCaller`.
|
|
391
|
+
*
|
|
392
|
+
* When created via specific HTTP methods (get, post, put, patch, delete),
|
|
393
|
+
* the method is already set and cannot be changed.
|
|
307
394
|
*/
|
|
308
|
-
declare class IgniterCallerRequestBuilder {
|
|
395
|
+
declare class IgniterCallerRequestBuilder<TResponse = unknown> {
|
|
309
396
|
private options;
|
|
310
397
|
private logger?;
|
|
311
398
|
private retryOptions?;
|
|
@@ -317,27 +404,46 @@ declare class IgniterCallerRequestBuilder {
|
|
|
317
404
|
private eventEmitter?;
|
|
318
405
|
private schemas?;
|
|
319
406
|
private schemaValidation?;
|
|
320
|
-
|
|
321
|
-
|
|
322
|
-
|
|
323
|
-
|
|
324
|
-
|
|
325
|
-
|
|
326
|
-
|
|
327
|
-
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
407
|
+
private responseTypeSchema?;
|
|
408
|
+
constructor(params: IgniterCallerRequestBuilderParams);
|
|
409
|
+
/**
|
|
410
|
+
* Sets the HTTP method for this request.
|
|
411
|
+
* @internal Used by IgniterCaller.request() for generic requests.
|
|
412
|
+
*/
|
|
413
|
+
_setMethod(method: IgniterCallerHttpMethod): this;
|
|
414
|
+
/**
|
|
415
|
+
* Sets the URL for this request.
|
|
416
|
+
* @internal Used when URL is passed to HTTP method directly.
|
|
417
|
+
*/
|
|
418
|
+
_setUrl(url: string): this;
|
|
331
419
|
/**
|
|
332
420
|
* Overrides the logger for this request chain.
|
|
333
421
|
*/
|
|
334
422
|
withLogger(logger: IgniterLogger): this;
|
|
335
|
-
|
|
423
|
+
/**
|
|
424
|
+
* Sets the request URL.
|
|
425
|
+
*/
|
|
336
426
|
url(url: string): this;
|
|
427
|
+
/**
|
|
428
|
+
* Sets the request body.
|
|
429
|
+
* For GET/HEAD requests, body will be automatically converted to query params.
|
|
430
|
+
*/
|
|
337
431
|
body<TBody>(body: TBody): this;
|
|
432
|
+
/**
|
|
433
|
+
* Sets URL query parameters.
|
|
434
|
+
*/
|
|
338
435
|
params(params: Record<string, string | number | boolean>): this;
|
|
436
|
+
/**
|
|
437
|
+
* Merges additional headers into the request.
|
|
438
|
+
*/
|
|
339
439
|
headers(headers: Record<string, string>): this;
|
|
440
|
+
/**
|
|
441
|
+
* Sets request timeout in milliseconds.
|
|
442
|
+
*/
|
|
340
443
|
timeout(timeout: number): this;
|
|
444
|
+
/**
|
|
445
|
+
* Sets cache strategy and optional cache key.
|
|
446
|
+
*/
|
|
341
447
|
cache(cache: RequestCache, key?: string): this;
|
|
342
448
|
/**
|
|
343
449
|
* Configures retry behavior for failed requests.
|
|
@@ -351,14 +457,45 @@ declare class IgniterCallerRequestBuilder {
|
|
|
351
457
|
* Sets cache stale time in milliseconds.
|
|
352
458
|
*/
|
|
353
459
|
stale(milliseconds: number): this;
|
|
354
|
-
|
|
460
|
+
/**
|
|
461
|
+
* Sets the expected response type for TypeScript inference.
|
|
462
|
+
*
|
|
463
|
+
* - If a Zod/StandardSchema is passed, it will validate the response (only for JSON/XML/CSV)
|
|
464
|
+
* - If a type parameter is passed (e.g., `responseType<File>()`), it's for typing only
|
|
465
|
+
*
|
|
466
|
+
* The actual parsing is based on Content-Type headers, not this setting.
|
|
467
|
+
*
|
|
468
|
+
* @example
|
|
469
|
+
* ```ts
|
|
470
|
+
* // With Zod schema (validates JSON response)
|
|
471
|
+
* const result = await api.get('/users').responseType(UserSchema).execute()
|
|
472
|
+
*
|
|
473
|
+
* // With type marker (typing only, no validation)
|
|
474
|
+
* const result = await api.get('/file').responseType<Blob>().execute()
|
|
475
|
+
* ```
|
|
476
|
+
*/
|
|
477
|
+
responseType<T>(schema?: z.ZodSchema<T> | StandardSchemaV1): IgniterCallerRequestBuilder<T>;
|
|
355
478
|
/**
|
|
356
479
|
* Downloads a file via GET request.
|
|
480
|
+
* @deprecated Use `.responseType<File>().execute()` instead. The response type is auto-detected.
|
|
357
481
|
*/
|
|
358
482
|
getFile(url: string): {
|
|
359
483
|
execute: () => Promise<IgniterCallerFileResponse>;
|
|
360
484
|
};
|
|
361
|
-
|
|
485
|
+
/**
|
|
486
|
+
* Executes the HTTP request.
|
|
487
|
+
*
|
|
488
|
+
* Response parsing is automatic based on Content-Type headers:
|
|
489
|
+
* - `application/json` → parsed as JSON
|
|
490
|
+
* - `text/xml`, `application/xml` → returned as text (parse with your XML library)
|
|
491
|
+
* - `text/csv` → returned as text
|
|
492
|
+
* - `text/html`, `text/plain` → returned as text
|
|
493
|
+
* - `image/*`, `audio/*`, `video/*`, `application/pdf`, etc. → returned as Blob
|
|
494
|
+
* - `application/octet-stream` → returned as Blob
|
|
495
|
+
*
|
|
496
|
+
* Schema validation (if configured) only runs for validatable content types (JSON, XML, CSV).
|
|
497
|
+
*/
|
|
498
|
+
execute(): Promise<IgniterCallerApiResponse<TResponse>>;
|
|
362
499
|
private executeWithRetry;
|
|
363
500
|
private executeSingleRequest;
|
|
364
501
|
private buildRequest;
|
|
@@ -367,6 +504,11 @@ declare class IgniterCallerRequestBuilder {
|
|
|
367
504
|
*/
|
|
368
505
|
private emitEvent;
|
|
369
506
|
}
|
|
507
|
+
/**
|
|
508
|
+
* Request builder type without internal methods.
|
|
509
|
+
* Used when creating requests via specific HTTP methods (get, post, etc.)
|
|
510
|
+
*/
|
|
511
|
+
type IgniterCallerMethodRequestBuilder<TResponse = unknown> = Omit<IgniterCallerRequestBuilder<TResponse>, '_setMethod' | '_setUrl'>;
|
|
370
512
|
|
|
371
513
|
/**
|
|
372
514
|
* Callback function for event listeners.
|
|
@@ -420,12 +562,107 @@ declare class IgniterCaller {
|
|
|
420
562
|
setBaseURL(baseURL: string): this;
|
|
421
563
|
setHeaders(headers: Record<string, string>): this;
|
|
422
564
|
setCookies(cookies: Record<string, string>): this;
|
|
423
|
-
|
|
424
|
-
|
|
425
|
-
|
|
426
|
-
|
|
427
|
-
|
|
428
|
-
|
|
565
|
+
/**
|
|
566
|
+
* Creates common request builder params.
|
|
567
|
+
*/
|
|
568
|
+
private createBuilderParams;
|
|
569
|
+
/**
|
|
570
|
+
* Creates a GET request.
|
|
571
|
+
*
|
|
572
|
+
* @param url Optional URL for the request. Can also be set via `.url()`.
|
|
573
|
+
*
|
|
574
|
+
* @example
|
|
575
|
+
* ```ts
|
|
576
|
+
* // With URL directly
|
|
577
|
+
* const result = await api.get('/users').execute()
|
|
578
|
+
*
|
|
579
|
+
* // With URL via method
|
|
580
|
+
* const result = await api.get().url('/users').execute()
|
|
581
|
+
* ```
|
|
582
|
+
*/
|
|
583
|
+
get(url?: string): IgniterCallerMethodRequestBuilder;
|
|
584
|
+
/**
|
|
585
|
+
* Creates a POST request.
|
|
586
|
+
*
|
|
587
|
+
* @param url Optional URL for the request. Can also be set via `.url()`.
|
|
588
|
+
*
|
|
589
|
+
* @example
|
|
590
|
+
* ```ts
|
|
591
|
+
* const result = await api.post('/users').body({ name: 'John' }).execute()
|
|
592
|
+
* ```
|
|
593
|
+
*/
|
|
594
|
+
post(url?: string): IgniterCallerMethodRequestBuilder;
|
|
595
|
+
/**
|
|
596
|
+
* Creates a PUT request.
|
|
597
|
+
*
|
|
598
|
+
* @param url Optional URL for the request. Can also be set via `.url()`.
|
|
599
|
+
*
|
|
600
|
+
* @example
|
|
601
|
+
* ```ts
|
|
602
|
+
* const result = await api.put('/users/1').body({ name: 'Jane' }).execute()
|
|
603
|
+
* ```
|
|
604
|
+
*/
|
|
605
|
+
put(url?: string): IgniterCallerMethodRequestBuilder;
|
|
606
|
+
/**
|
|
607
|
+
* Creates a PATCH request.
|
|
608
|
+
*
|
|
609
|
+
* @param url Optional URL for the request. Can also be set via `.url()`.
|
|
610
|
+
*
|
|
611
|
+
* @example
|
|
612
|
+
* ```ts
|
|
613
|
+
* const result = await api.patch('/users/1').body({ name: 'Jane' }).execute()
|
|
614
|
+
* ```
|
|
615
|
+
*/
|
|
616
|
+
patch(url?: string): IgniterCallerMethodRequestBuilder;
|
|
617
|
+
/**
|
|
618
|
+
* Creates a DELETE request.
|
|
619
|
+
*
|
|
620
|
+
* @param url Optional URL for the request. Can also be set via `.url()`.
|
|
621
|
+
*
|
|
622
|
+
* @example
|
|
623
|
+
* ```ts
|
|
624
|
+
* const result = await api.delete('/users/1').execute()
|
|
625
|
+
* ```
|
|
626
|
+
*/
|
|
627
|
+
delete(url?: string): IgniterCallerMethodRequestBuilder;
|
|
628
|
+
/**
|
|
629
|
+
* Creates a HEAD request.
|
|
630
|
+
*
|
|
631
|
+
* @param url Optional URL for the request. Can also be set via `.url()`.
|
|
632
|
+
*/
|
|
633
|
+
head(url?: string): IgniterCallerMethodRequestBuilder;
|
|
634
|
+
/**
|
|
635
|
+
* Executes a request directly with all options in one object (axios-style).
|
|
636
|
+
*
|
|
637
|
+
* This is a convenience method for making requests without using the builder pattern.
|
|
638
|
+
* Useful for dynamic requests where options are constructed programmatically.
|
|
639
|
+
*
|
|
640
|
+
* @example
|
|
641
|
+
* ```ts
|
|
642
|
+
* const result = await api.request({
|
|
643
|
+
* method: 'POST',
|
|
644
|
+
* url: '/users',
|
|
645
|
+
* body: { name: 'John' },
|
|
646
|
+
* headers: { 'X-Custom': 'value' },
|
|
647
|
+
* timeout: 5000,
|
|
648
|
+
* })
|
|
649
|
+
*
|
|
650
|
+
* // With caching
|
|
651
|
+
* const result = await api.request({
|
|
652
|
+
* method: 'GET',
|
|
653
|
+
* url: '/users',
|
|
654
|
+
* staleTime: 30000,
|
|
655
|
+
* })
|
|
656
|
+
*
|
|
657
|
+
* // With retry
|
|
658
|
+
* const result = await api.request({
|
|
659
|
+
* method: 'GET',
|
|
660
|
+
* url: '/health',
|
|
661
|
+
* retry: { maxAttempts: 3, backoff: 'exponential' },
|
|
662
|
+
* })
|
|
663
|
+
* ```
|
|
664
|
+
*/
|
|
665
|
+
request<T = unknown>(options: IgniterCallerDirectRequestOptions): Promise<IgniterCallerApiResponse<T>>;
|
|
429
666
|
/**
|
|
430
667
|
* Executes multiple requests in parallel and returns results as an array.
|
|
431
668
|
*
|
|
@@ -471,7 +708,7 @@ declare class IgniterCaller {
|
|
|
471
708
|
* @example
|
|
472
709
|
* ```ts
|
|
473
710
|
* // After creating a user
|
|
474
|
-
* await api.post(
|
|
711
|
+
* await api.post('/users').body(newUser).execute()
|
|
475
712
|
* await IgniterCaller.invalidate('/users') // Clear users list cache
|
|
476
713
|
* ```
|
|
477
714
|
*/
|
|
@@ -735,4 +972,4 @@ declare class IgniterCallerUrlUtils {
|
|
|
735
972
|
}): string;
|
|
736
973
|
}
|
|
737
974
|
|
|
738
|
-
export { type ExtractPathParams, IgniterCaller, type IgniterCallerApiResponse, type IgniterCallerBaseRequestOptions, IgniterCallerBodyUtils, IgniterCallerBuilder, type IgniterCallerBuilderFactory, type IgniterCallerBuilderState, IgniterCallerCacheUtils, type IgniterCallerEndpointSchema, IgniterCallerError, type IgniterCallerErrorCode, type IgniterCallerErrorPayload, type IgniterCallerEventCallback, IgniterCallerEvents, type IgniterCallerFileResponse, type IgniterCallerHttpMethod, IgniterCallerMock, type IgniterCallerOperation, IgniterCallerRequestBuilder, type IgniterCallerRequestInterceptor, type IgniterCallerRequestOptions, type IgniterCallerResponseInterceptor, type IgniterCallerRetryOptions, type IgniterCallerSchemaMap, type IgniterCallerSchemaMethod, IgniterCallerSchemaUtils, type IgniterCallerSchemaValidationOptions, type IgniterCallerStoreAdapter, type IgniterCallerStoreOptions, type IgniterCallerUrlPattern, IgniterCallerUrlUtils, type InferAllResponseTypes, type InferRequestType, type InferResponseType };
|
|
975
|
+
export { type ExtractPathParams, IgniterCaller, type IgniterCallerApiResponse, type IgniterCallerBaseRequestOptions, IgniterCallerBodyUtils, IgniterCallerBuilder, type IgniterCallerBuilderFactory, type IgniterCallerBuilderState, IgniterCallerCacheUtils, type IgniterCallerDirectRequestOptions, type IgniterCallerEndpointSchema, IgniterCallerError, type IgniterCallerErrorCode, type IgniterCallerErrorPayload, type IgniterCallerEventCallback, IgniterCallerEvents, type IgniterCallerFileResponse, type IgniterCallerHttpMethod, type IgniterCallerMethodRequestBuilder, IgniterCallerMock, type IgniterCallerOperation, IgniterCallerRequestBuilder, type IgniterCallerRequestBuilderParams, type IgniterCallerRequestInterceptor, type IgniterCallerRequestOptions, type IgniterCallerResponseContentType, type IgniterCallerResponseInterceptor, type IgniterCallerResponseMarker, type IgniterCallerRetryOptions, type IgniterCallerSchemaMap, type IgniterCallerSchemaMethod, IgniterCallerSchemaUtils, type IgniterCallerSchemaValidationOptions, type IgniterCallerStoreAdapter, type IgniterCallerStoreOptions, type IgniterCallerUrlPattern, IgniterCallerUrlUtils, type IgniterCallerValidatableContentType, type InferAllResponseTypes, type InferRequestType, type InferResponseType, type InferSuccessResponseType, type SchemaMapEndpoint, type SchemaMapMethods, type SchemaMapPaths, type SchemaMapRequestType, type SchemaMapResponseType };
|