@suiware/kit
Version:
Opinionated React components and hooks for building Sui dApps.
55 lines (53 loc) • 1.49 kB
TypeScript
interface IUseBalanceParams {
/**
* (Optional) The flag determines whether the balance needs to be refreshed regularly or just once.
*/
autoRefetch?: boolean;
/**
* (Optional) Auto refetch interval in milliseconds.
*/
autoRefetchInterval?: number;
}
interface IUseBalanceResponse {
/**
* Decimally formatted SUI balance.
*/
balance: string | undefined;
error: Error | null;
/**
* Refetch the balance.
*/
refetch: () => void;
}
/**
* The `useBalance()` hook lets you request SUI balance for current user address on the currently active network.
*
* It's possible to request the balance once or on a regular basis.
*
* Usage:
* - One-time request
* ```ts
* const { balance } = useBalance({
* autoRefetch: false
* })
* ```
* - On demand
* ```ts
* const { balance, error, refetch } = useBalance()
* refetch()
* ```
* - Regular update
* ```ts
* const { balance } = useBalance({
* autoRefetch: true,
* autoRefetchInterval: 3000
* })
* ```
*
* Where `autoRefetchInterval` is in milliseconds. Default value is 3000 milliseconds (3 seconds).
*
* @param {IUseBalanceParams} params The parameter object.
* @returns {IUseBalanceResponse} An object with the balance, error and refetch function.
*/
declare const useBalance: ({ autoRefetch, autoRefetchInterval, }?: IUseBalanceParams) => IUseBalanceResponse;
export { type IUseBalanceParams, type IUseBalanceResponse, useBalance as default };