/** * Discounts Hook using TanStack Query * Simplified discount code management with automatic cache invalidation */ import { Discount } from '../../core/resources/discounts'; export interface UseDiscountsQueryOptions { sessionId?: string; enabled?: boolean; onApplySuccess?: (discount?: Discount) => void; onRemoveSuccess?: () => void; } export interface UseDiscountsQueryResult { appliedDiscounts: Discount[] | undefined; isLoading: boolean; isApplying: boolean; isRemoving: boolean; error: Error | null; applyDiscountCode: (code: string) => Promise<{ success: boolean; error?: string; discount?: Discount; }>; removeDiscount: (discountId: string) => Promise<{ success: boolean; error?: string; }>; refresh: () => Promise; clearError: () => void; } export declare function useDiscountsQuery(options?: UseDiscountsQueryOptions): UseDiscountsQueryResult;