/** * API Query Hook using TanStack Query + fetch * Facade pattern for React SDK */ import { UseMutationOptions, UseQueryOptions } from '@tanstack/react-query'; import { ApiClient } from '../../core/resources/apiClient'; export declare function setGlobalApiClient(client: ApiClient): void; export declare function getGlobalApiClient(): ApiClient; export declare function getGlobalApiClientOrNull(): ApiClient | null; export declare const queryKeys: { readonly checkout: (token: string, currency?: string) => (string | undefined)[]; readonly promotions: (sessionId: string) => string[]; readonly discounts: (sessionId: string) => string[]; readonly orderBumps: (sessionId: string) => string[]; readonly shippingRates: (sessionId: string) => string[]; readonly vipPreview: (sessionId: string, offerIds: string[]) => (string | string[])[]; readonly products: (productIds: string[], options?: Record) => (string | string[] | Record | undefined)[]; readonly store: (storeId: string) => string[]; readonly storeConfig: (storeId: string) => string[]; readonly order: (orderId: string) => string[]; }; export declare function useApiQuery(key: readonly unknown[], url: string | null, options?: Omit, 'queryKey' | 'queryFn'>): import("@tanstack/react-query").UseQueryResult, Error>; export declare function useApiMutation(mutationFn: (variables: TVariables) => Promise, options?: UseMutationOptions): import("@tanstack/react-query").UseMutationResult; export declare function useInvalidateQuery(): { invalidateCheckout: (token: string) => void; invalidatePromotions: (sessionId: string) => void; invalidateOrderBumps: (sessionId: string) => void; invalidateAll: () => void; }; export declare function usePreloadQuery(): { preloadCheckout: (token: string, currency?: string) => void; };