2.0 RC docsView 1.x docs
v2.0.0-rc.1 release candidate
The API is frozen and later candidates carry fixes only, except the receipt-free and Safe create surface of /fhe-airdrop, which is @beta. Published on the next dist-tag; latest stays on 1.6.0 until 2.0.0.
Roles · RBACuseQuery Curated

useHasRole

Read AccessControl: is account a member of role on the singleton? All five role constants (DEFAULT_ADMIN_ROLE, FEE_MANAGER_ROLE, FEE_COLLECTOR_ROLE, PAUSER_ROLE, WITHDRAWER_ROLE) are exported from @tokenops/sdk/fhe-disperse/react.

Import
@tokenops/sdk/fhe-disperse/react
Return
{ data, isLoading, error, refetch }
Lifecycle
Roles · RBAC

Description

Read AccessControl: is account a member of role on the singleton?

DisperseConfidential defines DEFAULT_ADMIN_ROLE (the all-zero hash), FEE_MANAGER_ROLE, FEE_COLLECTOR_ROLE, PAUSER_ROLE, and WITHDRAWER_ROLE. The SDK exports all five as named constants from @tokenops/sdk/fhe-disperse/react; import them instead of recomputing keccak256 hashes.

Signature

@tokenops/sdk/fhe-disperse/react
ts
function useHasRole(args?: UseHasRoleArgs): UseQueryResult<boolean, Error>;

Parameters

Shape of the options object passed to the hook itself.

PropertyTypeDescription
roleHex
holderAddressThe address to check role membership for. Hook disabled until set.
accountAddress
Want to run a similar shape interactively? The Playground ships 12 ready presets across vesting / airdrop / disperse / faucet — deploy a manager, create a vesting, claim, and run the product equivalents. The deep-link above auto-selects the closest preset to useHasRole; pick another from the dropdown if you'd rather start there.

Example

@tokenops/sdk/fhe-disperse/react · @example
tsx
import { FEE_MANAGER_ROLE } from "@tokenops/sdk/fhe-disperse/react";
const { data: isManager } = useHasRole({ role: FEE_MANAGER_ROLE, account: user });

Pulled directly from the hook's TSDoc block — the same snippet your IDE shows on hover.

See also

Other Roles · RBAC hooks in disperse 2.0: