/******************************************************************** * ADOBE CONFIDENTIAL * __________________ * * Copyright 2024 Adobe * All Rights Reserved. * * NOTICE: All information contained herein is, and remains * the property of Adobe and its suppliers, if any. The intellectual * and technical concepts contained herein are proprietary to Adobe * and its suppliers and are protected by all applicable intellectual * property laws, including trade secret and copyright laws. * Dissemination of this information or reproduction of this material * is strictly forbidden unless prior written permission is obtained * from Adobe. *******************************************************************/ import { CartModel, Item } from '../data/models'; import { GiftOptionsDataSourcesProps, GiftOptionsViewProps, GiftWrappingConfigProps, GiftFormDataType, ProductGiftOptionsConfig } from '../types'; export interface UseGiftOptionsProps { item: Item | ProductGiftOptionsConfig; view: GiftOptionsViewProps; dataSource: GiftOptionsDataSourcesProps; initialLoading: boolean; handleItemsLoading?: (uid: string, state: boolean) => void; handleItemsError?: (uid: string, message?: string) => void; onItemUpdate?: ({ item }: { item: Item; }) => void; onGiftOptionsChange?: (data: GiftFormDataType) => void; } export declare const useGiftOptions: ({ item, view, dataSource, initialLoading, handleItemsLoading, handleItemsError, onItemUpdate, onGiftOptionsChange, }: UseGiftOptionsProps) => { loading: boolean; giftOptions: GiftFormDataType; showModal: boolean; errorsField: { recipientName: string; senderName: string; message: string; }; updateLoading: boolean; cartData: CartModel | null; fieldsDisabled: boolean; isGiftOptionsApplied: boolean; giftWrappingConfig: [] | GiftWrappingConfigProps[]; setFieldsDisabled: import("preact/hooks").Dispatch>; handleFormMouseLeave: () => Promise; onInputChange: (event: Event) => void; updateGiftOptions: (name: string, value: string | boolean | number | undefined, extraGiftOptions?: Record) => void; setShowModal: import("preact/hooks").Dispatch>; handleBlur: (event: Event) => Promise; isGiftMessageVisible: boolean; areGiftOptionsVisible: { isGiftReceiptVisible: boolean; isPrintedCartVisible: boolean; isGiftWrappingVisible: boolean; isGiftOptionsVisible: boolean; }; isGiftOptionsHidden: boolean; };