/** * Copyright (c) TonTech. * * This source code is licensed under the MIT license found in the * LICENSE file in the root directory of this source tree. * */ 'use client'; import type { MutateFunction, MutateOptions } from '@tanstack/react-query'; import { sendGaslessTransactionMutationOptions } from '@ton/appkit/queries'; import type { SendGaslessTransactionData, SendGaslessTransactionErrorType, SendGaslessTransactionMutationConfig, SendGaslessTransactionVariables, } from '@ton/appkit/queries'; import { useAppKit } from '../../settings'; import { useMutation } from '../../../libs/query'; import type { UseMutationReturnType } from '../../../libs/query'; export type UseSendGaslessTransactionParameters = SendGaslessTransactionMutationConfig; export type UseSendGaslessTransactionReturnType = UseMutationReturnType< SendGaslessTransactionData, SendGaslessTransactionErrorType, SendGaslessTransactionVariables, context, ( variables: SendGaslessTransactionVariables, options?: MutateOptions< SendGaslessTransactionData, SendGaslessTransactionErrorType, SendGaslessTransactionVariables, context >, ) => void, MutateFunction< SendGaslessTransactionData, SendGaslessTransactionErrorType, SendGaslessTransactionVariables, context > >; /** * Hook to send gasless transaction. */ export const useSendGaslessTransaction = ( parameters: UseSendGaslessTransactionParameters = {}, ): UseSendGaslessTransactionReturnType => { const appKit = useAppKit(); return useMutation(sendGaslessTransactionMutationOptions(appKit, parameters)); };