import type { UseMutationResult } from '@tanstack/react-query' import type { Config, ResolvedRegister } from '@wagmi/core' import type { ConfigParameter, ExactPartial, UnionCompute, } from '@wagmi/core/internal' import { Actions } from '@wagmi/core/tempo' import { useEffect } from 'react' import { useChainId } from '../../hooks/useChainId.js' import { useConfig } from '../../hooks/useConfig.js' import { type UseMutationParameters, type UseQueryReturnType, useMutation, useQuery, } from '../../utils/query.js' import type { QueryParameter } from '../utils.js' /** * Hook for buying a specific amount of tokens. * * @example * ```tsx * import { Hooks } from 'wagmi/tempo' * * function App() { * const { mutate, isPending } = Hooks.dex.useBuy() * * return ( * * ) * } * ``` * * @param parameters - Parameters. * @returns Mutation result. */ export function useBuy< config extends Config = ResolvedRegister['config'], context = unknown, >( parameters: useBuy.Parameters = {}, ): useBuy.ReturnType { const { mutation } = parameters const config = useConfig(parameters) return useMutation({ ...mutation, async mutationFn(variables) { return Actions.dex.buy(config, variables as never) }, mutationKey: ['buy'], }) as never } export declare namespace useBuy { type Parameters< config extends Config = Config, context = unknown, > = ConfigParameter & { mutation?: | UseMutationParameters< Actions.dex.buy.ReturnValue, Actions.dex.buy.ErrorType, Actions.dex.buy.Parameters, context > | undefined } type ReturnType< config extends Config = Config, context = unknown, > = UseMutationResult< Actions.dex.buy.ReturnValue, Actions.dex.buy.ErrorType, Actions.dex.buy.Parameters, context > } /** * Hook for buying a specific amount of tokens. * * Note: This is a synchronous hook that waits for the transaction * to be included on a block before returning a response. * * @example * ```tsx * import { Hooks } from 'wagmi/tempo' * * function App() { * const { mutate, isPending } = Hooks.dex.useBuySync() * * return ( * * ) * } * ``` * * @param parameters - Parameters. * @returns Mutation result. */ export function useBuySync< config extends Config = ResolvedRegister['config'], context = unknown, >( parameters: useBuySync.Parameters = {}, ): useBuySync.ReturnType { const { mutation } = parameters const config = useConfig(parameters) return useMutation({ ...mutation, async mutationFn(variables) { return Actions.dex.buySync(config, variables as never) }, mutationKey: ['buySync'], }) as never } export declare namespace useBuySync { type Parameters< config extends Config = Config, context = unknown, > = ConfigParameter & { mutation?: | UseMutationParameters< Actions.dex.buySync.ReturnValue, Actions.dex.buySync.ErrorType, Actions.dex.buySync.Parameters, context > | undefined } type ReturnType< config extends Config = Config, context = unknown, > = UseMutationResult< Actions.dex.buySync.ReturnValue, Actions.dex.buySync.ErrorType, Actions.dex.buySync.Parameters, context > } /** * Hook for canceling an order from the orderbook. * * @example * ```tsx * import { Hooks } from 'wagmi/tempo' * * function App() { * const { mutate, isPending } = Hooks.dex.useCancel() * * return ( * * ) * } * ``` * * @param parameters - Parameters. * @returns Mutation result. */ export function useCancel< config extends Config = ResolvedRegister['config'], context = unknown, >( parameters: useCancel.Parameters = {}, ): useCancel.ReturnType { const { mutation } = parameters const config = useConfig(parameters) return useMutation({ ...mutation, async mutationFn(variables) { return Actions.dex.cancel(config, variables as never) }, mutationKey: ['cancel'], }) as never } export declare namespace useCancel { type Parameters< config extends Config = Config, context = unknown, > = ConfigParameter & { mutation?: | UseMutationParameters< Actions.dex.cancel.ReturnValue, Actions.dex.cancel.ErrorType, Actions.dex.cancel.Parameters, context > | undefined } type ReturnType< config extends Config = Config, context = unknown, > = UseMutationResult< Actions.dex.cancel.ReturnValue, Actions.dex.cancel.ErrorType, Actions.dex.cancel.Parameters, context > } /** * Hook for canceling an order from the orderbook. * * Note: This is a synchronous hook that waits for the transaction * to be included on a block before returning a response. * * @example * ```tsx * import { Hooks } from 'wagmi/tempo' * * function App() { * const { mutate, isPending } = Hooks.dex.useCancelSync() * * return ( * * ) * } * ``` * * @param parameters - Parameters. * @returns Mutation result. */ export function useCancelSync< config extends Config = ResolvedRegister['config'], context = unknown, >( parameters: useCancelSync.Parameters = {}, ): useCancelSync.ReturnType { const { mutation } = parameters const config = useConfig(parameters) return useMutation({ ...mutation, async mutationFn(variables) { return Actions.dex.cancelSync(config, variables as never) }, mutationKey: ['cancelSync'], }) as never } export declare namespace useCancelSync { type Parameters< config extends Config = Config, context = unknown, > = ConfigParameter & { mutation?: | UseMutationParameters< Actions.dex.cancelSync.ReturnValue, Actions.dex.cancelSync.ErrorType, Actions.dex.cancelSync.Parameters, context > | undefined } type ReturnType< config extends Config = Config, context = unknown, > = UseMutationResult< Actions.dex.cancelSync.ReturnValue, Actions.dex.cancelSync.ErrorType, Actions.dex.cancelSync.Parameters, context > } /** * Hook for cancelling a stale order from the orderbook. * * A stale order is one where the owner's balance or allowance has dropped * below the order amount. * * @example * ```tsx * import { Hooks } from 'wagmi/tempo' * * function App() { * const { mutate, isPending } = Hooks.dex.useCancelStale() * * return ( * * ) * } * ``` * * @param parameters - Parameters. * @returns Mutation result. */ export function useCancelStale< config extends Config = ResolvedRegister['config'], context = unknown, >( parameters: useCancelStale.Parameters = {}, ): useCancelStale.ReturnType { const { mutation } = parameters const config = useConfig(parameters) return useMutation({ ...mutation, async mutationFn(variables) { return Actions.dex.cancelStale(config, variables as never) }, mutationKey: ['cancelStale'], }) as never } export declare namespace useCancelStale { type Parameters< config extends Config = Config, context = unknown, > = ConfigParameter & { mutation?: | UseMutationParameters< Actions.dex.cancelStale.ReturnValue, Actions.dex.cancelStale.ErrorType, Actions.dex.cancelStale.Parameters, context > | undefined } type ReturnType< config extends Config = Config, context = unknown, > = UseMutationResult< Actions.dex.cancelStale.ReturnValue, Actions.dex.cancelStale.ErrorType, Actions.dex.cancelStale.Parameters, context > } /** * Hook for cancelling a stale order and waiting for confirmation. * * A stale order is one where the owner's balance or allowance has dropped * below the order amount. * * @example * ```tsx * import { Hooks } from 'wagmi/tempo' * * function App() { * const { mutate, isPending } = Hooks.dex.useCancelStaleSync() * * return ( * * ) * } * ``` * * @param parameters - Parameters. * @returns Mutation result. */ export function useCancelStaleSync< config extends Config = ResolvedRegister['config'], context = unknown, >( parameters: useCancelStaleSync.Parameters = {}, ): useCancelStaleSync.ReturnType { const { mutation } = parameters const config = useConfig(parameters) return useMutation({ ...mutation, async mutationFn(variables) { return Actions.dex.cancelStaleSync(config, variables as never) }, mutationKey: ['cancelStaleSync'], }) as never } export declare namespace useCancelStaleSync { type Parameters< config extends Config = Config, context = unknown, > = ConfigParameter & { mutation?: | UseMutationParameters< Actions.dex.cancelStaleSync.ReturnValue, Actions.dex.cancelStaleSync.ErrorType, Actions.dex.cancelStaleSync.Parameters, context > | undefined } type ReturnType< config extends Config = Config, context = unknown, > = UseMutationResult< Actions.dex.cancelStaleSync.ReturnValue, Actions.dex.cancelStaleSync.ErrorType, Actions.dex.cancelStaleSync.Parameters, context > } /** * Hook for creating a new trading pair on the DEX. * * @example * ```tsx * import { Hooks } from 'wagmi/tempo' * * function App() { * const { mutate, isPending } = Hooks.dex.useCreatePair() * * return ( * * ) * } * ``` * * @param parameters - Parameters. * @returns Mutation result. */ export function useCreatePair< config extends Config = ResolvedRegister['config'], context = unknown, >( parameters: useCreatePair.Parameters = {}, ): useCreatePair.ReturnType { const { mutation } = parameters const config = useConfig(parameters) return useMutation({ ...mutation, async mutationFn(variables) { return Actions.dex.createPair(config, variables as never) }, mutationKey: ['createPair'], }) as never } export declare namespace useCreatePair { type Parameters< config extends Config = Config, context = unknown, > = ConfigParameter & { mutation?: | UseMutationParameters< Actions.dex.createPair.ReturnValue, Actions.dex.createPair.ErrorType, Actions.dex.createPair.Parameters, context > | undefined } type ReturnType< config extends Config = Config, context = unknown, > = UseMutationResult< Actions.dex.createPair.ReturnValue, Actions.dex.createPair.ErrorType, Actions.dex.createPair.Parameters, context > } /** * Hook for creating a new trading pair on the DEX. * * Note: This is a synchronous hook that waits for the transaction * to be included on a block before returning a response. * * @example * ```tsx * import { Hooks } from 'wagmi/tempo' * * function App() { * const { mutate, isPending } = Hooks.dex.useCreatePairSync() * * return ( * * ) * } * ``` * * @param parameters - Parameters. * @returns Mutation result. */ export function useCreatePairSync< config extends Config = ResolvedRegister['config'], context = unknown, >( parameters: useCreatePairSync.Parameters = {}, ): useCreatePairSync.ReturnType { const { mutation } = parameters const config = useConfig(parameters) return useMutation({ ...mutation, async mutationFn(variables) { return Actions.dex.createPairSync(config, variables as never) }, mutationKey: ['createPairSync'], }) as never } export declare namespace useCreatePairSync { type Parameters< config extends Config = Config, context = unknown, > = ConfigParameter & { mutation?: | UseMutationParameters< Actions.dex.createPairSync.ReturnValue, Actions.dex.createPairSync.ErrorType, Actions.dex.createPairSync.Parameters, context > | undefined } type ReturnType< config extends Config = Config, context = unknown, > = UseMutationResult< Actions.dex.createPairSync.ReturnValue, Actions.dex.createPairSync.ErrorType, Actions.dex.createPairSync.Parameters, context > } /** * Hook for getting a user's token balance on the DEX. * * @example * ```tsx * import { Hooks } from 'wagmi/tempo' * * function App() { * const { data, isLoading } = Hooks.dex.useBalance({ * account: '0x...', * token: '0x20c...11', * }) * * if (isLoading) return
Loading...
* return
Balance: {data}
* } * ``` * * @param parameters - Parameters. * @returns Query result with the user's token balance on the DEX. */ export function useBalance< config extends Config = ResolvedRegister['config'], selectData = Actions.dex.getBalance.ReturnValue, >( parameters: useBalance.Parameters, ): useBalance.ReturnValue { const config = useConfig(parameters) const chainId = useChainId({ config }) const options = Actions.dex.getBalance.queryOptions(config, { ...parameters, chainId: parameters.chainId ?? chainId, } as never) return useQuery(options) as never } export declare namespace useBalance { export type Parameters< config extends Config = ResolvedRegister['config'], selectData = Actions.dex.getBalance.ReturnValue, > = ConfigParameter & QueryParameter< Actions.dex.getBalance.ReturnValue, Actions.dex.getBalance.ErrorType, selectData, Actions.dex.getBalance.QueryKey > & ExactPartial> export type ReturnValue = UseQueryReturnType } /** * Hook for getting the quote for buying a specific amount of tokens. * * @example * ```tsx * import { Hooks } from 'wagmi/tempo' * * function App() { * const { data, isLoading } = Hooks.dex.useBuyQuote({ * amountOut: parseUnits('100', 6), * tokenIn: '0x20c...11', * tokenOut: '0x20c...20', * }) * * if (isLoading) return
Loading...
* return
Required Input: {data}
* } * ``` * * @param parameters - Parameters. * @returns Query result with the amount of tokenIn needed. */ export function useBuyQuote< config extends Config = ResolvedRegister['config'], selectData = Actions.dex.getBuyQuote.ReturnValue, >( parameters: useBuyQuote.Parameters, ): useBuyQuote.ReturnValue { const config = useConfig(parameters) const chainId = useChainId({ config }) const options = Actions.dex.getBuyQuote.queryOptions(config, { ...parameters, chainId: parameters.chainId ?? chainId, } as never) return useQuery(options) as never } export declare namespace useBuyQuote { export type Parameters< config extends Config = ResolvedRegister['config'], selectData = Actions.dex.getBuyQuote.ReturnValue, > = ConfigParameter & QueryParameter< Actions.dex.getBuyQuote.ReturnValue, Actions.dex.getBuyQuote.ErrorType, selectData, Actions.dex.getBuyQuote.QueryKey > & ExactPartial> export type ReturnValue = UseQueryReturnType } /** * Hook for getting an order's details from the orderbook. * * @example * ```tsx * import { Hooks } from 'wagmi/tempo' * * function App() { * const { data, isLoading } = Hooks.dex.useOrder({ * orderId: 123n, * }) * * if (isLoading) return
Loading...
* return
Order: {JSON.stringify(data)}
* } * ``` * * @param parameters - Parameters. * @returns Query result with the order details. */ export function useOrder< config extends Config = ResolvedRegister['config'], selectData = Actions.dex.getOrder.ReturnValue, >( parameters: useOrder.Parameters, ): useOrder.ReturnValue { const config = useConfig(parameters) const chainId = useChainId({ config }) const options = Actions.dex.getOrder.queryOptions(config, { ...parameters, chainId: parameters.chainId ?? chainId, } as never) return useQuery(options) as never } export declare namespace useOrder { export type Parameters< config extends Config = ResolvedRegister['config'], selectData = Actions.dex.getOrder.ReturnValue, > = ConfigParameter & QueryParameter< Actions.dex.getOrder.ReturnValue, Actions.dex.getOrder.ErrorType, selectData, Actions.dex.getOrder.QueryKey > & ExactPartial> export type ReturnValue = UseQueryReturnType } /** * Hook for getting orderbook information for a trading pair. * * @example * ```tsx * import { Hooks } from 'wagmi/tempo' * * function App() { * const { data, isLoading } = Hooks.dex.useOrderbook({ * base: '0x20c...11', * quote: '0x20c...20', * }) * * if (isLoading) return
Loading...
* return
Orderbook: {JSON.stringify(data)}
* } * ``` * * @param parameters - Parameters. * @returns Query result with the orderbook information. */ export function useOrderbook< config extends Config = ResolvedRegister['config'], selectData = Actions.dex.getOrderbook.ReturnValue, >( parameters: useOrderbook.Parameters, ): useOrderbook.ReturnValue { const config = useConfig(parameters) const chainId = useChainId({ config }) const options = Actions.dex.getOrderbook.queryOptions(config, { ...parameters, chainId: parameters.chainId ?? chainId, } as never) return useQuery(options) as never } export declare namespace useOrderbook { export type Parameters< config extends Config = ResolvedRegister['config'], selectData = Actions.dex.getOrderbook.ReturnValue, > = ConfigParameter & QueryParameter< Actions.dex.getOrderbook.ReturnValue, Actions.dex.getOrderbook.ErrorType, selectData, Actions.dex.getOrderbook.QueryKey > & ExactPartial> export type ReturnValue = UseQueryReturnType } /** * Hook for getting the tick level information at a specific tick. * * @example * ```tsx * import { Hooks } from 'wagmi/tempo' * import { Tick } from 'viem/tempo' * * function App() { * const { data, isLoading } = Hooks.dex.useTickLevel({ * base: '0x20c...11', * tick: Tick.fromPrice('1.001'), * isBid: true, * }) * * if (isLoading) return
Loading...
* return
Tick Level: {JSON.stringify(data)}
* } * ``` * * @param parameters - Parameters. * @returns Query result with the tick level information. */ export function useTickLevel< config extends Config = ResolvedRegister['config'], selectData = Actions.dex.getTickLevel.ReturnValue, >( parameters: useTickLevel.Parameters, ): useTickLevel.ReturnValue { const config = useConfig(parameters) const chainId = useChainId({ config }) const options = Actions.dex.getTickLevel.queryOptions(config, { ...parameters, chainId: parameters.chainId ?? chainId, } as never) return useQuery(options) as never } export declare namespace useTickLevel { export type Parameters< config extends Config = ResolvedRegister['config'], selectData = Actions.dex.getTickLevel.ReturnValue, > = ConfigParameter & QueryParameter< Actions.dex.getTickLevel.ReturnValue, Actions.dex.getTickLevel.ErrorType, selectData, Actions.dex.getTickLevel.QueryKey > & ExactPartial> export type ReturnValue = UseQueryReturnType } /** * Hook for getting the quote for selling a specific amount of tokens. * * @example * ```tsx * import { Hooks } from 'wagmi/tempo' * * function App() { * const { data, isLoading } = Hooks.dex.useSellQuote({ * amountIn: parseUnits('100', 6), * tokenIn: '0x20c...11', * tokenOut: '0x20c...20', * }) * * if (isLoading) return
Loading...
* return
Expected Output: {data}
* } * ``` * * @param parameters - Parameters. * @returns Query result with the amount of tokenOut received. */ export function useSellQuote< config extends Config = ResolvedRegister['config'], selectData = Actions.dex.getSellQuote.ReturnValue, >( parameters: useSellQuote.Parameters, ): useSellQuote.ReturnValue { const config = useConfig(parameters) const chainId = useChainId({ config }) const options = Actions.dex.getSellQuote.queryOptions(config, { ...parameters, chainId: parameters.chainId ?? chainId, } as never) return useQuery(options) as never } export declare namespace useSellQuote { export type Parameters< config extends Config = ResolvedRegister['config'], selectData = Actions.dex.getSellQuote.ReturnValue, > = ConfigParameter & QueryParameter< Actions.dex.getSellQuote.ReturnValue, Actions.dex.getSellQuote.ErrorType, selectData, Actions.dex.getSellQuote.QueryKey > & ExactPartial> export type ReturnValue = UseQueryReturnType } /** * Hook for placing a limit order on the orderbook. * * @example * ```tsx * import { Hooks } from 'wagmi/tempo' * * function App() { * const { mutate, isPending } = Hooks.dex.usePlace() * * return ( * * ) * } * ``` * * @param parameters - Parameters. * @returns Mutation result. */ export function usePlace< config extends Config = ResolvedRegister['config'], context = unknown, >( parameters: usePlace.Parameters = {}, ): usePlace.ReturnType { const { mutation } = parameters const config = useConfig(parameters) return useMutation({ ...mutation, async mutationFn(variables) { return Actions.dex.place(config, variables as never) }, mutationKey: ['place'], }) as never } export declare namespace usePlace { type Parameters< config extends Config = Config, context = unknown, > = ConfigParameter & { mutation?: | UseMutationParameters< Actions.dex.place.ReturnValue, Actions.dex.place.ErrorType, Actions.dex.place.Parameters, context > | undefined } type ReturnType< config extends Config = Config, context = unknown, > = UseMutationResult< Actions.dex.place.ReturnValue, Actions.dex.place.ErrorType, Actions.dex.place.Parameters, context > } /** * Hook for placing a flip order that automatically flips when filled. * * @example * ```tsx * import { Hooks } from 'wagmi/tempo' * * function App() { * const { mutate, isPending } = Hooks.dex.usePlaceFlip() * * return ( * * ) * } * ``` * * @param parameters - Parameters. * @returns Mutation result. */ export function usePlaceFlip< config extends Config = ResolvedRegister['config'], context = unknown, >( parameters: usePlaceFlip.Parameters = {}, ): usePlaceFlip.ReturnType { const { mutation } = parameters const config = useConfig(parameters) return useMutation({ ...mutation, async mutationFn(variables) { return Actions.dex.placeFlip(config, variables as never) }, mutationKey: ['placeFlip'], }) as never } export declare namespace usePlaceFlip { type Parameters< config extends Config = Config, context = unknown, > = ConfigParameter & { mutation?: | UseMutationParameters< Actions.dex.placeFlip.ReturnValue, Actions.dex.placeFlip.ErrorType, Actions.dex.placeFlip.Parameters, context > | undefined } type ReturnType< config extends Config = Config, context = unknown, > = UseMutationResult< Actions.dex.placeFlip.ReturnValue, Actions.dex.placeFlip.ErrorType, Actions.dex.placeFlip.Parameters, context > } /** * Hook for placing a flip order that automatically flips when filled. * * Note: This is a synchronous hook that waits for the transaction * to be included on a block before returning a response. * * @example * ```tsx * import { Hooks } from 'wagmi/tempo' * * function App() { * const { mutate, isPending } = Hooks.dex.usePlaceFlipSync() * * return ( * * ) * } * ``` * * @param parameters - Parameters. * @returns Mutation result. */ export function usePlaceFlipSync< config extends Config = ResolvedRegister['config'], context = unknown, >( parameters: usePlaceFlipSync.Parameters = {}, ): usePlaceFlipSync.ReturnType { const { mutation } = parameters const config = useConfig(parameters) return useMutation({ ...mutation, async mutationFn(variables) { return Actions.dex.placeFlipSync(config, variables as never) }, mutationKey: ['placeFlipSync'], }) as never } export declare namespace usePlaceFlipSync { type Parameters< config extends Config = Config, context = unknown, > = ConfigParameter & { mutation?: | UseMutationParameters< Actions.dex.placeFlipSync.ReturnValue, Actions.dex.placeFlipSync.ErrorType, Actions.dex.placeFlipSync.Parameters, context > | undefined } type ReturnType< config extends Config = Config, context = unknown, > = UseMutationResult< Actions.dex.placeFlipSync.ReturnValue, Actions.dex.placeFlipSync.ErrorType, Actions.dex.placeFlipSync.Parameters, context > } /** * Hook for placing a limit order on the orderbook. * * Note: This is a synchronous hook that waits for the transaction * to be included on a block before returning a response. * * @example * ```tsx * import { Hooks } from 'wagmi/tempo' * * function App() { * const { mutate, isPending } = Hooks.dex.usePlaceSync() * * return ( * * ) * } * ``` * * @param parameters - Parameters. * @returns Mutation result. */ export function usePlaceSync< config extends Config = ResolvedRegister['config'], context = unknown, >( parameters: usePlaceSync.Parameters = {}, ): usePlaceSync.ReturnType { const { mutation } = parameters const config = useConfig(parameters) return useMutation({ ...mutation, async mutationFn(variables) { return Actions.dex.placeSync(config, variables as never) }, mutationKey: ['placeSync'], }) as never } export declare namespace usePlaceSync { type Parameters< config extends Config = Config, context = unknown, > = ConfigParameter & { mutation?: | UseMutationParameters< Actions.dex.placeSync.ReturnValue, Actions.dex.placeSync.ErrorType, Actions.dex.placeSync.Parameters, context > | undefined } type ReturnType< config extends Config = Config, context = unknown, > = UseMutationResult< Actions.dex.placeSync.ReturnValue, Actions.dex.placeSync.ErrorType, Actions.dex.placeSync.Parameters, context > } /** * Hook for selling a specific amount of tokens. * * @example * ```tsx * import { Hooks } from 'wagmi/tempo' * * function App() { * const { mutate, isPending } = Hooks.dex.useSell() * * return ( * * ) * } * ``` * * @param parameters - Parameters. * @returns Mutation result. */ export function useSell< config extends Config = ResolvedRegister['config'], context = unknown, >( parameters: useSell.Parameters = {}, ): useSell.ReturnType { const { mutation } = parameters const config = useConfig(parameters) return useMutation({ ...mutation, async mutationFn(variables) { return Actions.dex.sell(config, variables as never) }, mutationKey: ['sell'], }) as never } export declare namespace useSell { type Parameters< config extends Config = Config, context = unknown, > = ConfigParameter & { mutation?: | UseMutationParameters< Actions.dex.sell.ReturnValue, Actions.dex.sell.ErrorType, Actions.dex.sell.Parameters, context > | undefined } type ReturnType< config extends Config = Config, context = unknown, > = UseMutationResult< Actions.dex.sell.ReturnValue, Actions.dex.sell.ErrorType, Actions.dex.sell.Parameters, context > } /** * Hook for selling a specific amount of tokens. * * Note: This is a synchronous hook that waits for the transaction * to be included on a block before returning a response. * * @example * ```tsx * import { Hooks } from 'wagmi/tempo' * * function App() { * const { mutate, isPending } = Hooks.dex.useSellSync() * * return ( * * ) * } * ``` * * @param parameters - Parameters. * @returns Mutation result. */ export function useSellSync< config extends Config = ResolvedRegister['config'], context = unknown, >( parameters: useSellSync.Parameters = {}, ): useSellSync.ReturnType { const { mutation } = parameters const config = useConfig(parameters) return useMutation({ ...mutation, async mutationFn(variables) { return Actions.dex.sellSync(config, variables as never) }, mutationKey: ['sellSync'], }) as never } export declare namespace useSellSync { type Parameters< config extends Config = Config, context = unknown, > = ConfigParameter & { mutation?: | UseMutationParameters< Actions.dex.sellSync.ReturnValue, Actions.dex.sellSync.ErrorType, Actions.dex.sellSync.Parameters, context > | undefined } type ReturnType< config extends Config = Config, context = unknown, > = UseMutationResult< Actions.dex.sellSync.ReturnValue, Actions.dex.sellSync.ErrorType, Actions.dex.sellSync.Parameters, context > } /** * Hook for withdrawing tokens from the DEX to the caller's wallet. * * @example * ```tsx * import { Hooks } from 'wagmi/tempo' * * function App() { * const { mutate, isPending } = Hooks.dex.useWithdraw() * * return ( * * ) * } * ``` * * @param parameters - Parameters. * @returns Mutation result. */ export function useWithdraw< config extends Config = ResolvedRegister['config'], context = unknown, >( parameters: useWithdraw.Parameters = {}, ): useWithdraw.ReturnType { const { mutation } = parameters const config = useConfig(parameters) return useMutation({ ...mutation, async mutationFn(variables) { return Actions.dex.withdraw(config, variables as never) }, mutationKey: ['withdraw'], }) as never } export declare namespace useWithdraw { type Parameters< config extends Config = Config, context = unknown, > = ConfigParameter & { mutation?: | UseMutationParameters< Actions.dex.withdraw.ReturnValue, Actions.dex.withdraw.ErrorType, Actions.dex.withdraw.Parameters, context > | undefined } type ReturnType< config extends Config = Config, context = unknown, > = UseMutationResult< Actions.dex.withdraw.ReturnValue, Actions.dex.withdraw.ErrorType, Actions.dex.withdraw.Parameters, context > } /** * Hook for withdrawing tokens from the DEX to the caller's wallet. * * Note: This is a synchronous hook that waits for the transaction * to be included on a block before returning a response. * * @example * ```tsx * import { Hooks } from 'wagmi/tempo' * * function App() { * const { mutate, isPending } = Hooks.dex.useWithdrawSync() * * return ( * * ) * } * ``` * * @param parameters - Parameters. * @returns Mutation result. */ export function useWithdrawSync< config extends Config = ResolvedRegister['config'], context = unknown, >( parameters: useWithdrawSync.Parameters = {}, ): useWithdrawSync.ReturnType { const { mutation } = parameters const config = useConfig(parameters) return useMutation({ ...mutation, async mutationFn(variables) { return Actions.dex.withdrawSync(config, variables as never) }, mutationKey: ['withdrawSync'], }) as never } export declare namespace useWithdrawSync { type Parameters< config extends Config = Config, context = unknown, > = ConfigParameter & { mutation?: | UseMutationParameters< Actions.dex.withdrawSync.ReturnValue, Actions.dex.withdrawSync.ErrorType, Actions.dex.withdrawSync.Parameters, context > | undefined } type ReturnType< config extends Config = Config, context = unknown, > = UseMutationResult< Actions.dex.withdrawSync.ReturnValue, Actions.dex.withdrawSync.ErrorType, Actions.dex.withdrawSync.Parameters, context > } /** * Hook for watching flip order placement events on the DEX. * * @example * ```tsx * import { Hooks } from 'wagmi/tempo' * * function App() { * Hooks.dex.useWatchFlipOrderPlaced({ * onFlipOrderPlaced(args) { * console.log('Flip order placed:', args) * }, * }) * * return
Watching for flip order placements...
* } * ``` * * @param parameters - Parameters. */ export function useWatchFlipOrderPlaced< config extends Config = ResolvedRegister['config'], >(parameters: useWatchFlipOrderPlaced.Parameters = {}) { const { enabled = true, onFlipOrderPlaced, ...rest } = parameters const config = useConfig({ config: parameters.config }) const configChainId = useChainId({ config }) const chainId = parameters.chainId ?? configChainId // biome-ignore lint/correctness/useExhaustiveDependencies: rest.x is explicitly listed useEffect(() => { if (!enabled) return if (!onFlipOrderPlaced) return return Actions.dex.watchFlipOrderPlaced(config, { ...rest, chainId, onFlipOrderPlaced, }) }, [ config, enabled, chainId, onFlipOrderPlaced, rest.fromBlock, rest.maker, rest.onError, rest.poll, rest.pollingInterval, rest.token, ]) } export declare namespace useWatchFlipOrderPlaced { type Parameters = UnionCompute< ExactPartial> & ConfigParameter & { enabled?: boolean | undefined } > } /** * Hook for watching order cancellation events on the DEX. * * @example * ```tsx * import { Hooks } from 'wagmi/tempo' * * function App() { * Hooks.dex.useWatchOrderCancelled({ * onOrderCancelled(args) { * console.log('Order cancelled:', args) * }, * }) * * return
Watching for order cancellations...
* } * ``` * * @param parameters - Parameters. */ export function useWatchOrderCancelled< config extends Config = ResolvedRegister['config'], >(parameters: useWatchOrderCancelled.Parameters = {}) { const { enabled = true, onOrderCancelled, ...rest } = parameters const config = useConfig({ config: parameters.config }) const configChainId = useChainId({ config }) const chainId = parameters.chainId ?? configChainId // biome-ignore lint/correctness/useExhaustiveDependencies: rest.x is explicitly listed useEffect(() => { if (!enabled) return if (!onOrderCancelled) return return Actions.dex.watchOrderCancelled(config, { ...rest, chainId, onOrderCancelled, }) }, [ config, enabled, chainId, onOrderCancelled, rest.fromBlock, rest.onError, rest.orderId, rest.poll, rest.pollingInterval, ]) } export declare namespace useWatchOrderCancelled { type Parameters = UnionCompute< ExactPartial> & ConfigParameter & { enabled?: boolean | undefined } > } /** * Hook for watching order filled events on the DEX. * * @example * ```tsx * import { Hooks } from 'wagmi/tempo' * * function App() { * Hooks.dex.useWatchOrderFilled({ * onOrderFilled(args) { * console.log('Order filled:', args) * }, * }) * * return
Watching for order fills...
* } * ``` * * @param parameters - Parameters. */ export function useWatchOrderFilled< config extends Config = ResolvedRegister['config'], >(parameters: useWatchOrderFilled.Parameters = {}) { const { enabled = true, onOrderFilled, ...rest } = parameters const config = useConfig({ config: parameters.config }) const configChainId = useChainId({ config }) const chainId = parameters.chainId ?? configChainId // biome-ignore lint/correctness/useExhaustiveDependencies: rest.x is explicitly listed useEffect(() => { if (!enabled) return if (!onOrderFilled) return return Actions.dex.watchOrderFilled(config, { ...rest, chainId, onOrderFilled, }) }, [ config, enabled, chainId, onOrderFilled, rest.fromBlock, rest.maker, rest.onError, rest.orderId, rest.poll, rest.pollingInterval, rest.taker, ]) } export declare namespace useWatchOrderFilled { type Parameters = UnionCompute< ExactPartial> & ConfigParameter & { enabled?: boolean | undefined } > } /** * Hook for watching order placement events on the DEX. * * @example * ```tsx * import { Hooks } from 'wagmi/tempo' * * function App() { * Hooks.dex.useWatchOrderPlaced({ * onOrderPlaced(args) { * console.log('Order placed:', args) * }, * }) * * return
Watching for order placements...
* } * ``` * * @param parameters - Parameters. */ export function useWatchOrderPlaced< config extends Config = ResolvedRegister['config'], >(parameters: useWatchOrderPlaced.Parameters = {}) { const { enabled = true, onOrderPlaced, ...rest } = parameters const config = useConfig({ config: parameters.config }) const configChainId = useChainId({ config }) const chainId = parameters.chainId ?? configChainId // biome-ignore lint/correctness/useExhaustiveDependencies: rest.x is explicitly listed useEffect(() => { if (!enabled) return if (!onOrderPlaced) return return Actions.dex.watchOrderPlaced(config, { ...rest, chainId, onOrderPlaced, }) }, [ config, enabled, chainId, onOrderPlaced, rest.fromBlock, rest.maker, rest.onError, rest.poll, rest.pollingInterval, rest.token, ]) } export declare namespace useWatchOrderPlaced { type Parameters = UnionCompute< ExactPartial> & ConfigParameter & { enabled?: boolean | undefined } > }