@scayle/storefront-nuxt
Version:
Nuxt integration for the SCAYLE Commerce Engine and Storefront API
29 lines (28 loc) • 1.87 kB
TypeScript
import type { RpcMethodParameters } from '@scayle/storefront-core';
import type { KeysOf, UseRpcOptions, UseRpcReturn, NormalizedRpcResponse, UseRpcCacheKey } from '../core/useRpc.js';
import type { MaybeRefOrGetter } from 'vue';
/**
* Retrieves data for a single or multiple product variant by its ID using the `getVariantById` RPC method.
*
* This function acts as a wrapper around the `useRpc` composable,
* simplifying the process of fetching data. It internally calls `useRpc`
* with the provided parameters and options.
*
* @see https://scayle.dev/en/api-guides/storefront-api/resources/variants/get-a-variant
*
* @template DataT The type of the normalized RPC response data. Defaults to `NormalizedRpcResponse<'getVariantById'>`.
* @template PickKeys The keys to pick from the data. Defaults to all keys of `DataT`.
* @template DefaultT The default value to use if data is not available. Defaults to `null`.
*
* @param params An object containing parameters and options for the `getVariantById` RPC call.
* @param params.params The parameters for the `getVariantById` RPC method.
* @param params.options The options for the underlying `useRpc` call, controlling data handling and loading state.
* @param key A unique key for this RPC call. Used internally by `useRpc` for caching and state management.
*
* @returns The result of the `useRpc` call, which includes the fetched data,
* loading state, and any error information.
*/
export declare function useVariant<DataT = NormalizedRpcResponse<'getVariantById'>, PickKeys extends KeysOf<DataT> = KeysOf<DataT>, DefaultT = null>({ params, options, }?: Partial<{
params: MaybeRefOrGetter<RpcMethodParameters<'getVariantById'>>;
options: UseRpcOptions<'getVariantById', DataT, PickKeys, DefaultT>;
}>, key?: UseRpcCacheKey): UseRpcReturn<'getVariantById', DataT, PickKeys, DefaultT>;