Class: ApiClient<FixedOptions, CommonOptions, CommonDelay>
Defined in: packages/fetch/src/ApiClient.ts:57
A fully encapsulated and isolated API client factory.
ApiClient creates a sandboxed environment for a specific API service. It provides complete isolation by ignoring global fetch.defaults by default, ensuring that instance-specific configurations remain clean and predictable. It bundles RESTful methods and execution controls (like debounce/throttle) into a single, cohesive unit.
Key Features:
- Isolation: Instance-specific options are scoped to this client and isolated from other instances.
- Base Resolution: Automatic path joining when
apiBaseUrlis provided. - Unified Error Handling: Optional
errorPrefixto namespace errors for easier debugging. - Method Suite: Integrated
delete,get,head,options,patch,postandputmethods.
Precedence & Merging Nuances
- Options follow a strict hierarchy:
fixedOptions>call options>commonOptions. - Global
fetch.defaultsare ignored by default. - Headers: Merged by key. Specifying headers in a call overrides common headers with the same name, but does NOT remove or replace the entire header set.
- Interceptors: Cumulative. Interceptors from all levels are concatenated and executed sequentially (Common -> Call -> Fixed). They cannot be overridden or replaced.
- Error Messages: Merged by key, allowing per-service or per-call customization of specific error strings without losing the rest of the global message set.
Type Parameters
FixedOptions
FixedOptions extends ApiClientFetchOptions = { }
CommonOptions
CommonOptions extends ExcludeOptions<FixedOptions, ApiClientFetchOptions> = ExcludeOptions<FixedOptions, ApiClientFetchOptions>
CommonDelay
CommonDelay extends number = number
Constructors
Constructor
new ApiClient<
FixedOptions,CommonOptions,CommonDelay>(baseUrl?,config?):ApiClient<FixedOptions,CommonOptions,CommonDelay>
Defined in: packages/fetch/src/ApiClient.ts:101
Creates a new ApiClient instance.
Parameters
baseUrl?
string | null
The base URL for the API. Relative paths passed to methods will be appended to this.
config?
ApiClientConfig<FixedOptions, CommonOptions, CommonDelay> = {}
Optional configuration for headers, interceptors, and default behavior.
Returns
ApiClient<FixedOptions, CommonOptions, CommonDelay>
Properties
baseUrl?
optionalbaseUrl?:string|null
Defined in: packages/fetch/src/ApiClient.ts:102
The base URL for the API. Relative paths passed to methods will be appended to this.
client
readonlyclient: {<T,TOptions,Result>(url,options?):IPromise_Fetch<Result>;deferred: <T,TOptions,Result>(...args) =>IPromise_Fetch<Result>; }
Defined in: packages/fetch/src/ApiClient.ts:65
The base GET-style client. Defaults to GET method.
Executes the HTTP request using pre-configured client options.
Type Parameters
T
T extends unknown = never
TOptions
TOptions extends object & Omit<FetchOptions, "body" | "cache" | "credentials" | "headers" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>> & Partial<Record<"body" | "cache" | "credentials" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>, never>> | undefined = ExcludeOptions<FixedOptions, FetchOptions> | undefined
Result
Result = GetFetchResult<[FixedOptions, TOptions, CommonOptions], T>
Parameters
url
URL | RequestInfo
The request URL.
options?
TOptions
Individual request options that can override common options.
Returns
IPromise_Fetch<Result>
A promise resolving to the parsed result or response.
deferred()
deferred<
ThisArg,Delay,DefaultUrl,DefaultOptions>(deferOptions?,defaultUrl?,defaultOptions?): <T,TOptions,Result>(...args) =>IPromise_Fetch<Result>
Make requests with debounce/throttle behavior
Type Parameters
ThisArg
ThisArg
Delay
Delay extends number
DefaultUrl
DefaultUrl extends URL | RequestInfo | undefined = URL | RequestInfo | undefined
DefaultOptions
DefaultOptions extends object & Omit<FetchOptions, "body" | "cache" | "credentials" | "headers" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>> & Partial<Record<"body" | "cache" | "credentials" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>, never>> | undefined = ExcludeOptions<FixedOptions, FetchOptions> | undefined
Parameters
deferOptions?
DeferredAsyncOptions<ThisArg, Delay>
defaultUrl?
DefaultUrl
defaultOptions?
DefaultOptions
Returns
<T, TOptions, Result>(...args) => IPromise_Fetch<Result>
delete
readonlydelete: {<T,Options,Result>(url,data?,options?):IPromise_Fetch<Result>;deferred: <T,Options,TReturn>(...args) =>IPromise_Fetch<TReturn>; }
Defined in: packages/fetch/src/ApiClient.ts:75
Alias for postClient with DELETE method.
Executes the HTTP request using the configured client options.
This function is specifically designed for methods that require a request body (e.g., POST, PUT, PATCH), allowing the payload to be passed directly as the second argument.
Type Parameters
T
T extends unknown = never
Options
Options extends object & Omit<PostOptions, "body" | "cache" | "credentials" | "headers" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>> & Partial<Record<"body" | "cache" | "credentials" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>, never>> | undefined = ExcludeOptions<FixedOptions, PostOptions> | undefined
Result
Result = GetFetchResult<[FixedOptions, Options, CommonOptions], T>
Parameters
url
URL | RequestInfo
data?
PostBody | (() => ValueOrPromise<PostBody>)
options?
Options
Returns
IPromise_Fetch<Result>
deferred()
deferred<
ThisArg,DefaultUrl,DefaultData,DefaultOptions,Delay>(deferOptions?,defaultUrl?,defaultData?,defaultOptions?): <T,Options,TReturn>(...args) =>IPromise_Fetch<TReturn>
Returns a version of the client configured for debounced, throttled, or sequential execution.
This is particularly useful for optimizing high-frequency operations, such as auto-saving forms or managing rapid state updates, by automatically handling request cancellation and execution timing.
Type Parameters
ThisArg
ThisArg
DefaultUrl
DefaultUrl extends URL | RequestInfo | undefined
DefaultData
DefaultData extends PostBody | (() => ValueOrPromise<PostBody>) | undefined
DefaultOptions
DefaultOptions extends object & Omit<PostOptions, "body" | "cache" | "credentials" | "headers" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>> & Partial<Record<"body" | "cache" | "credentials" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>, never>> | undefined = ExcludeOptions<FixedOptions, PostOptions> | undefined
Delay
Delay extends number = number
Parameters
deferOptions?
DeferredAsyncOptions<ThisArg, Delay>
defaultUrl?
DefaultUrl
defaultData?
DefaultData
defaultOptions?
DefaultOptions
Returns
<T, Options, TReturn>(...args) => IPromise_Fetch<TReturn>
get
readonlyget: {<T,TOptions,Result>(url,options?):IPromise_Fetch<Result>;deferred: <T,TOptions,Result>(...args) =>IPromise_Fetch<Result>; }
Defined in: packages/fetch/src/ApiClient.ts:78
Alias for client with GET method.
Executes the HTTP request using pre-configured client options.
Type Parameters
T
T extends unknown = never
TOptions
TOptions extends object & Omit<FetchOptions, "body" | "cache" | "credentials" | "headers" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>> & Partial<Record<"body" | "cache" | "credentials" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>, never>> | undefined = ExcludeOptions<FixedOptions, FetchOptions> | undefined
Result
Result = GetFetchResult<[FixedOptions, TOptions, CommonOptions], T>
Parameters
url
URL | RequestInfo
The request URL.
options?
TOptions
Individual request options that can override common options.
Returns
IPromise_Fetch<Result>
A promise resolving to the parsed result or response.
deferred()
deferred<
ThisArg,Delay,DefaultUrl,DefaultOptions>(deferOptions?,defaultUrl?,defaultOptions?): <T,TOptions,Result>(...args) =>IPromise_Fetch<Result>
Make requests with debounce/throttle behavior
Type Parameters
ThisArg
ThisArg
Delay
Delay extends number
DefaultUrl
DefaultUrl extends URL | RequestInfo | undefined = URL | RequestInfo | undefined
DefaultOptions
DefaultOptions extends object & Omit<FetchOptions, "body" | "cache" | "credentials" | "headers" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>> & Partial<Record<"body" | "cache" | "credentials" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>, never>> | undefined = ExcludeOptions<FixedOptions, FetchOptions> | undefined
Parameters
deferOptions?
DeferredAsyncOptions<ThisArg, Delay>
defaultUrl?
DefaultUrl
defaultOptions?
DefaultOptions
Returns
<T, TOptions, Result>(...args) => IPromise_Fetch<Result>
head
readonlyhead: {<T,TOptions,Result>(url,options?):IPromise_Fetch<Result>;deferred: <T,TOptions,Result>(...args) =>IPromise_Fetch<Result>; }
Defined in: packages/fetch/src/ApiClient.ts:81
Alias for client with HEAD method.
Executes the HTTP request using pre-configured client options.
Type Parameters
T
T extends unknown = never
TOptions
TOptions extends object & Omit<FetchOptions, "body" | "cache" | "credentials" | "headers" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>> & Partial<Record<"body" | "cache" | "credentials" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>, never>> | undefined = ExcludeOptions<FixedOptions, FetchOptions> | undefined
Result
Result = GetFetchResult<[FixedOptions, TOptions, CommonOptions], T>
Parameters
url
URL | RequestInfo
The request URL.
options?
TOptions
Individual request options that can override common options.
Returns
IPromise_Fetch<Result>
A promise resolving to the parsed result or response.
deferred()
deferred<
ThisArg,Delay,DefaultUrl,DefaultOptions>(deferOptions?,defaultUrl?,defaultOptions?): <T,TOptions,Result>(...args) =>IPromise_Fetch<Result>
Make requests with debounce/throttle behavior
Type Parameters
ThisArg
ThisArg
Delay
Delay extends number
DefaultUrl
DefaultUrl extends URL | RequestInfo | undefined = URL | RequestInfo | undefined
DefaultOptions
DefaultOptions extends object & Omit<FetchOptions, "body" | "cache" | "credentials" | "headers" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>> & Partial<Record<"body" | "cache" | "credentials" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>, never>> | undefined = ExcludeOptions<FixedOptions, FetchOptions> | undefined
Parameters
deferOptions?
DeferredAsyncOptions<ThisArg, Delay>
defaultUrl?
DefaultUrl
defaultOptions?
DefaultOptions
Returns
<T, TOptions, Result>(...args) => IPromise_Fetch<Result>
options
readonlyoptions: {<T,TOptions,Result>(url,options?):IPromise_Fetch<Result>;deferred: <T,TOptions,Result>(...args) =>IPromise_Fetch<Result>; }
Defined in: packages/fetch/src/ApiClient.ts:84
Alias for client with OPTIONS method.
Executes the HTTP request using pre-configured client options.
Type Parameters
T
T extends unknown = never
TOptions
TOptions extends object & Omit<FetchOptions, "body" | "cache" | "credentials" | "headers" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>> & Partial<Record<"body" | "cache" | "credentials" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>, never>> | undefined = ExcludeOptions<FixedOptions, FetchOptions> | undefined
Result
Result = GetFetchResult<[FixedOptions, TOptions, CommonOptions], T>
Parameters
url
URL | RequestInfo
The request URL.
options?
TOptions
Individual request options that can override common options.
Returns
IPromise_Fetch<Result>
A promise resolving to the parsed result or response.
deferred()
deferred<
ThisArg,Delay,DefaultUrl,DefaultOptions>(deferOptions?,defaultUrl?,defaultOptions?): <T,TOptions,Result>(...args) =>IPromise_Fetch<Result>
Make requests with debounce/throttle behavior
Type Parameters
ThisArg
ThisArg
Delay
Delay extends number
DefaultUrl
DefaultUrl extends URL | RequestInfo | undefined = URL | RequestInfo | undefined
DefaultOptions
DefaultOptions extends object & Omit<FetchOptions, "body" | "cache" | "credentials" | "headers" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>> & Partial<Record<"body" | "cache" | "credentials" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>, never>> | undefined = ExcludeOptions<FixedOptions, FetchOptions> | undefined
Parameters
deferOptions?
DeferredAsyncOptions<ThisArg, Delay>
defaultUrl?
DefaultUrl
defaultOptions?
DefaultOptions
Returns
<T, TOptions, Result>(...args) => IPromise_Fetch<Result>
patch
readonlypatch: {<T,Options,Result>(url,data?,options?):IPromise_Fetch<Result>;deferred: <T,Options,TReturn>(...args) =>IPromise_Fetch<TReturn>; }
Defined in: packages/fetch/src/ApiClient.ts:93
Alias for postClient with PATCH method.
Executes the HTTP request using the configured client options.
This function is specifically designed for methods that require a request body (e.g., POST, PUT, PATCH), allowing the payload to be passed directly as the second argument.
Type Parameters
T
T extends unknown = never
Options
Options extends object & Omit<PostOptions, "body" | "cache" | "credentials" | "headers" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>> & Partial<Record<"body" | "cache" | "credentials" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>, never>> | undefined = ExcludeOptions<FixedOptions, PostOptions> | undefined
Result
Result = GetFetchResult<[FixedOptions, Options, CommonOptions], T>
Parameters
url
URL | RequestInfo
data?
PostBody | (() => ValueOrPromise<PostBody>)
options?
Options
Returns
IPromise_Fetch<Result>
deferred()
deferred<
ThisArg,DefaultUrl,DefaultData,DefaultOptions,Delay>(deferOptions?,defaultUrl?,defaultData?,defaultOptions?): <T,Options,TReturn>(...args) =>IPromise_Fetch<TReturn>
Returns a version of the client configured for debounced, throttled, or sequential execution.
This is particularly useful for optimizing high-frequency operations, such as auto-saving forms or managing rapid state updates, by automatically handling request cancellation and execution timing.
Type Parameters
ThisArg
ThisArg
DefaultUrl
DefaultUrl extends URL | RequestInfo | undefined
DefaultData
DefaultData extends PostBody | (() => ValueOrPromise<PostBody>) | undefined
DefaultOptions
DefaultOptions extends object & Omit<PostOptions, "body" | "cache" | "credentials" | "headers" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>> & Partial<Record<"body" | "cache" | "credentials" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>, never>> | undefined = ExcludeOptions<FixedOptions, PostOptions> | undefined
Delay
Delay extends number = number
Parameters
deferOptions?
DeferredAsyncOptions<ThisArg, Delay>
defaultUrl?
DefaultUrl
defaultData?
DefaultData
defaultOptions?
DefaultOptions
Returns
<T, Options, TReturn>(...args) => IPromise_Fetch<TReturn>
post
readonlypost: {<T,Options,Result>(url,data?,options?):IPromise_Fetch<Result>;deferred: <T,Options,TReturn>(...args) =>IPromise_Fetch<TReturn>; }
Defined in: packages/fetch/src/ApiClient.ts:87
Alias for postClient with POST method.
Executes the HTTP request using the configured client options.
This function is specifically designed for methods that require a request body (e.g., POST, PUT, PATCH), allowing the payload to be passed directly as the second argument.
Type Parameters
T
T extends unknown = never
Options
Options extends object & Omit<PostOptions, "body" | "cache" | "credentials" | "headers" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>> & Partial<Record<"body" | "cache" | "credentials" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>, never>> | undefined = ExcludeOptions<FixedOptions, PostOptions> | undefined
Result
Result = GetFetchResult<[FixedOptions, Options, CommonOptions], T>
Parameters
url
URL | RequestInfo
data?
PostBody | (() => ValueOrPromise<PostBody>)
options?
Options
Returns
IPromise_Fetch<Result>
deferred()
deferred<
ThisArg,DefaultUrl,DefaultData,DefaultOptions,Delay>(deferOptions?,defaultUrl?,defaultData?,defaultOptions?): <T,Options,TReturn>(...args) =>IPromise_Fetch<TReturn>
Returns a version of the client configured for debounced, throttled, or sequential execution.
This is particularly useful for optimizing high-frequency operations, such as auto-saving forms or managing rapid state updates, by automatically handling request cancellation and execution timing.
Type Parameters
ThisArg
ThisArg
DefaultUrl
DefaultUrl extends URL | RequestInfo | undefined
DefaultData
DefaultData extends PostBody | (() => ValueOrPromise<PostBody>) | undefined
DefaultOptions
DefaultOptions extends object & Omit<PostOptions, "body" | "cache" | "credentials" | "headers" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>> & Partial<Record<"body" | "cache" | "credentials" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>, never>> | undefined = ExcludeOptions<FixedOptions, PostOptions> | undefined
Delay
Delay extends number = number
Parameters
deferOptions?
DeferredAsyncOptions<ThisArg, Delay>
defaultUrl?
DefaultUrl
defaultData?
DefaultData
defaultOptions?
DefaultOptions
Returns
<T, Options, TReturn>(...args) => IPromise_Fetch<TReturn>
postClient
readonlypostClient: {<T,Options,Result>(url,data?,options?):IPromise_Fetch<Result>;deferred: <T,Options,TReturn>(...args) =>IPromise_Fetch<TReturn>; }
Defined in: packages/fetch/src/ApiClient.ts:70
The base POST-style client. Defaults to POST method and supports request bodies.
Executes the HTTP request using the configured client options.
This function is specifically designed for methods that require a request body (e.g., POST, PUT, PATCH), allowing the payload to be passed directly as the second argument.
Type Parameters
T
T extends unknown = never
Options
Options extends object & Omit<PostOptions, "body" | "cache" | "credentials" | "headers" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>> & Partial<Record<"body" | "cache" | "credentials" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>, never>> | undefined = ExcludeOptions<FixedOptions, PostOptions> | undefined
Result
Result = GetFetchResult<[FixedOptions, Options, CommonOptions], T>
Parameters
url
URL | RequestInfo
data?
PostBody | (() => ValueOrPromise<PostBody>)
options?
Options
Returns
IPromise_Fetch<Result>
deferred()
deferred<
ThisArg,DefaultUrl,DefaultData,DefaultOptions,Delay>(deferOptions?,defaultUrl?,defaultData?,defaultOptions?): <T,Options,TReturn>(...args) =>IPromise_Fetch<TReturn>
Returns a version of the client configured for debounced, throttled, or sequential execution.
This is particularly useful for optimizing high-frequency operations, such as auto-saving forms or managing rapid state updates, by automatically handling request cancellation and execution timing.
Type Parameters
ThisArg
ThisArg
DefaultUrl
DefaultUrl extends URL | RequestInfo | undefined
DefaultData
DefaultData extends PostBody | (() => ValueOrPromise<PostBody>) | undefined
DefaultOptions
DefaultOptions extends object & Omit<PostOptions, "body" | "cache" | "credentials" | "headers" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>> & Partial<Record<"body" | "cache" | "credentials" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>, never>> | undefined = ExcludeOptions<FixedOptions, PostOptions> | undefined
Delay
Delay extends number = number
Parameters
deferOptions?
DeferredAsyncOptions<ThisArg, Delay>
defaultUrl?
DefaultUrl
defaultData?
DefaultData
defaultOptions?
DefaultOptions
Returns
<T, Options, TReturn>(...args) => IPromise_Fetch<TReturn>
put
readonlyput: {<T,Options,Result>(url,data?,options?):IPromise_Fetch<Result>;deferred: <T,Options,TReturn>(...args) =>IPromise_Fetch<TReturn>; }
Defined in: packages/fetch/src/ApiClient.ts:90
Alias for postClient with PUT method.
Executes the HTTP request using the configured client options.
This function is specifically designed for methods that require a request body (e.g., POST, PUT, PATCH), allowing the payload to be passed directly as the second argument.
Type Parameters
T
T extends unknown = never
Options
Options extends object & Omit<PostOptions, "body" | "cache" | "credentials" | "headers" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>> & Partial<Record<"body" | "cache" | "credentials" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>, never>> | undefined = ExcludeOptions<FixedOptions, PostOptions> | undefined
Result
Result = GetFetchResult<[FixedOptions, Options, CommonOptions], T>
Parameters
url
URL | RequestInfo
data?
PostBody | (() => ValueOrPromise<PostBody>)
options?
Options
Returns
IPromise_Fetch<Result>
deferred()
deferred<
ThisArg,DefaultUrl,DefaultData,DefaultOptions,Delay>(deferOptions?,defaultUrl?,defaultData?,defaultOptions?): <T,Options,TReturn>(...args) =>IPromise_Fetch<TReturn>
Returns a version of the client configured for debounced, throttled, or sequential execution.
This is particularly useful for optimizing high-frequency operations, such as auto-saving forms or managing rapid state updates, by automatically handling request cancellation and execution timing.
Type Parameters
ThisArg
ThisArg
DefaultUrl
DefaultUrl extends URL | RequestInfo | undefined
DefaultData
DefaultData extends PostBody | (() => ValueOrPromise<PostBody>) | undefined
DefaultOptions
DefaultOptions extends object & Omit<PostOptions, "body" | "cache" | "credentials" | "headers" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>> & Partial<Record<"body" | "cache" | "credentials" | "integrity" | "keepalive" | "mode" | "priority" | "redirect" | "referrer" | "referrerPolicy" | "window" | "retry" | "retryIf" | "retryBackOff" | "retryDelay" | "retryDelayJitter" | "retryDelayJitterMax" | "as" | "errMsgs" | "interceptors" | "ignoreGlobalDefaults" | "fetchFunc" | "onDownloadProgress" | "validateUrl" | keyof TimeoutOptions<[]>, never>> | undefined = ExcludeOptions<FixedOptions, PostOptions> | undefined
Delay
Delay extends number = number
Parameters
deferOptions?
DeferredAsyncOptions<ThisArg, Delay>
defaultUrl?
DefaultUrl
defaultData?
DefaultData
defaultOptions?
DefaultOptions
Returns
<T, Options, TReturn>(...args) => IPromise_Fetch<TReturn>