Type
HaulError
Extended Error with the raw
Responseobject.
Signature
ts
interface HaulError<T = any> extends Error {
body: T
response: Response
}Parmeters
| Name | Type | Description |
|---|---|---|
| Body | T | |
| response | Response |
HaulInstance
Object returned by haul()
Signature
ts
interface HaulInstance{}Parmeters
| Name | Type | Description |
|---|---|---|
| options | Required<Pick<OptionsRaw, 'headers'>> & Pick<OptionsRaw, 'responseAs' | 'query'> |
Methods
| Name | Description |
|---|---|
get(options:Options) | Sends a GET request to the given url. |
get(url:string,options:Options) | |
delete(options:Options) | Sends a DELETE request to the given url. |
delete(url:string,options:Options) | |
patch(options:Options) | Sends a PATCH request to the given url. |
patch(url:string,options:Options) | |
post(options:Options) | Sends a POST request to the given url. |
post(url:string,options:Options) | |
put(options:Options) | Sends a PUT request to the given url. |
put(url:string,options:Options) |
Options
Allowed options for a request. Extends native RequestInit.
Signature
ts
interface Options<ResponseAs extends ResponseAsTypes = ResponseAsTypes> extends RequestInit {}Parmeters
| Name | Type | Description |
|---|---|---|
| headers | Record<string, string> | (Optional) Headers sent alongside the request |
| query | any | (Optional) Optional query object. Does not support arrays. Will get stringified |
| responseAs | ResponseAs | (Optional) What kind of response is expected. Defaults to json. response will return the raw response from fetch. |
OptionsRaw
Signature
ts
interface OptionsRaw<R extends ResponseAsTypes = ResponseAsTypes>
extends Omit<Options<R>, 'headers' | 'signal'>{}Parmeters
| Name | Type | Description |
|---|---|---|
| headers | Record<string, string | null> | (Optional) Headers sent alongside the request. Set any header to null to remove it. |
| signal | never | (Optional) AbortSignal can only be passed to requests, not to a haul instance because it can only be used once. |
HaulResponse
ts
type HaulResponse<
T = unknown,
ResponseType extends ResponseAsTypes = 'json',
> = Promise<
ResponseType extends 'response'
? Response
: ResponseType extends 'text'
? string
: T
>ResponseAsTypes
ts
type ResponseAsTypes = 'json' | 'text' | 'response'