diff --git a/packages/maskbook/src/plugins/Trader/trending/useAvailableCoins.ts b/packages/maskbook/src/plugins/Trader/trending/useAvailableCoins.ts index 3c95f6f7078d..9fe6983ea893 100644 --- a/packages/maskbook/src/plugins/Trader/trending/useAvailableCoins.ts +++ b/packages/maskbook/src/plugins/Trader/trending/useAvailableCoins.ts @@ -1,8 +1,9 @@ import { useAsync } from 'react-use' +import type { AsyncState } from 'react-use/lib/useAsyncFn' import { PluginTraderRPC } from '../messages' -import type { DataProvider, TagType } from '../types' +import type { Coin, DataProvider, TagType } from '../types' -export function useAvailableCoins(type: TagType, keyword: string, dataProvider: DataProvider) { +export function useAvailableCoins(type: TagType, keyword: string, dataProvider: DataProvider): AsyncState { return useAsync(async () => { if (!keyword) return [] return PluginTraderRPC.getAvailableCoins(keyword, type, dataProvider) diff --git a/packages/maskbook/src/plugins/Trader/trending/useAvailableDataProviders.ts b/packages/maskbook/src/plugins/Trader/trending/useAvailableDataProviders.ts index e267a5b96493..c5358880cb83 100644 --- a/packages/maskbook/src/plugins/Trader/trending/useAvailableDataProviders.ts +++ b/packages/maskbook/src/plugins/Trader/trending/useAvailableDataProviders.ts @@ -1,9 +1,10 @@ import { useAsync } from 'react-use' import { useChainId } from '@masknet/web3-shared' import { PluginTraderRPC } from '../messages' -import type { TagType } from '../types' +import type { DataProvider, TagType } from '../types' +import type { AsyncState } from 'react-use/lib/useAsyncFn' -export function useAvailableDataProviders(type?: TagType, keyword?: string) { +export function useAvailableDataProviders(type?: TagType, keyword?: string): AsyncState { const chainId = useChainId() return useAsync(async () => { return PluginTraderRPC.getAvailableDataProviders(type, keyword) diff --git a/packages/maskbook/src/plugins/Trader/trending/useAvailableTraderProviders.ts b/packages/maskbook/src/plugins/Trader/trending/useAvailableTraderProviders.ts index aceac62c2362..c391b5780262 100644 --- a/packages/maskbook/src/plugins/Trader/trending/useAvailableTraderProviders.ts +++ b/packages/maskbook/src/plugins/Trader/trending/useAvailableTraderProviders.ts @@ -1,9 +1,10 @@ import { useAsync } from 'react-use' import { useChainId } from '@masknet/web3-shared' import { PluginTraderRPC } from '../messages' -import type { TagType } from '../types' +import type { TagType, TradeProvider } from '../types' +import type { AsyncState } from 'react-use/lib/useAsyncFn' -export function useAvailableTraderProviders(type?: TagType, keyword?: string) { +export function useAvailableTraderProviders(type?: TagType, keyword?: string): AsyncState { const chainId = useChainId() return useAsync(async () => { return PluginTraderRPC.getAvailableTraderProviders(type, keyword) diff --git a/packages/maskbook/src/utils/hooks/useQRCodeImageScan.tsx b/packages/maskbook/src/utils/hooks/useQRCodeImageScan.tsx index b55a58ed6281..df957e52c0f3 100644 --- a/packages/maskbook/src/utils/hooks/useQRCodeImageScan.tsx +++ b/packages/maskbook/src/utils/hooks/useQRCodeImageScan.tsx @@ -1,8 +1,9 @@ import { loadImage } from '@dimensiondev/kit' import { useRef, useState, useEffect } from 'react' import { useAsync } from 'react-use' +import type { AsyncState } from 'react-use/lib/useAsyncFn' -export function useQRCodeImageScan(image: React.MutableRefObject) { +export function useQRCodeImageScan(image: React.MutableRefObject): AsyncState { const scanner = useRef(new BarcodeDetector({ formats: ['qr_code'] })) const [source, setSource] = useState('')