UNPKG

@techsio/storefront-data

Version:

Medusa-first storefront data layer built on TanStack Query.

24 lines • 1.89 kB
import type { CacheConfig, CacheStrategy } from "../shared/cache-config"; import type { QueryFactoryOptions, ReadQueryOptions } from "../shared/hook-types"; import type { QueryNamespace } from "../shared/query-keys"; import type { RegionDetailInputBase, RegionListInputBase, RegionListResponse, RegionQueryKeys, RegionService } from "./types"; export type CreateRegionQueryOptionsFactoryConfig<TRegion, TListInput extends RegionListInputBase, TListParams, TDetailInput extends RegionDetailInputBase, TDetailParams> = { service: RegionService<TRegion, TListParams, TDetailParams>; buildListParams?: (input: TListInput) => TListParams; buildDetailParams?: (input: TDetailInput) => TDetailParams; queryKeys?: RegionQueryKeys<TListParams, TDetailParams>; queryKeyNamespace?: QueryNamespace; cacheConfig?: CacheConfig; }; export type RegionQueryOptionsFactory<TRegion, TListInput extends RegionListInputBase, TDetailInput extends RegionDetailInputBase> = { getListQueryOptions: (input: TListInput, options?: { queryOptions?: ReadQueryOptions<RegionListResponse<TRegion>>; cacheStrategy?: CacheStrategy; }) => QueryFactoryOptions<RegionListResponse<TRegion>>; getDetailQueryOptions: (input: TDetailInput, options?: { queryOptions?: ReadQueryOptions<TRegion | null>; cacheStrategy?: CacheStrategy; }) => QueryFactoryOptions<TRegion | null>; }; export declare function createRegionQueryOptionsFactory<TRegion, TListInput extends RegionListInputBase, TListParams, TDetailInput extends RegionDetailInputBase, TDetailParams>({ service, buildListParams, buildDetailParams, queryKeys, queryKeyNamespace, cacheConfig, }: CreateRegionQueryOptionsFactoryConfig<TRegion, TListInput, TListParams, TDetailInput, TDetailParams>): RegionQueryOptionsFactory<TRegion, TListInput, TDetailInput>; //# sourceMappingURL=query-options.d.ts.map