useSetDefaultGasFee
Set the per-claim gas fee that new instances default to when their creator has no setCustomFee override.
@tokenops/sdk/fhe-airdrop/advanced/react{ mutate, mutateAsync, isPending, error, data }Description
Set the per-claim gas fee that new instances default to when their creator
has no setCustomFee override.
Requires FEE_MANAGER_ROLE. Affects only instances created afterwards: an
instance's gasFee() is baked in at create time, so no deployed campaign's
fee changes.
Invalidates: this factory's useFactoryFees entry (fn "fees") and every
useResolveGasFee entry - the default is what resolves for every creator
without an override, so all of them move at once. Deliberately NOT any
instance's fn "gasFee" key: those are frozen at create and invalidating
them would refetch unchanged values. Also every cached
usePreflightCreateAirdrop report on this factory, whose
fee blockers (the maxGasFee ceiling and GasFeeNotAcceptedError) this write moves.
Signature
function useSetDefaultGasFee(options?: AirdropClientOptions): UseMutationResult<Hex, Error, SetDefaultGasFeeArgs>;Parameters
Shape of the object you pass to .mutate(args) is the SDK type SetDefaultGasFeeArgs. Inspect the type for the full shape (discriminated unions collapse to a tagged variant at call time).
Example
const setDefaultFee = useSetDefaultGasFee();
await setDefaultFee.mutateAsync({ gasFee: parseEther("0.0001") });Pulled directly from the hook's TSDoc block — the same snippet your IDE shows on hover.
Errors
This mutation can reject with SDK-level, product-level, or generic-fallback errors. Product classes carry the offending value as fields — render them inline instead of a generic "transaction failed." See Airdrop v2 › Errors for the per-class recovery table.
Invalidation recipe
After this mutation succeeds, invalidate the queries it affects so consumer UI re-fetches fresh state. The SDK never auto-invalidates — that's a consumer decision (different apps cache different shapes).
import { useQueryClient } from "@tanstack/react-query";
const queryClient = useQueryClient();
const setDefaultGasFee = useSetDefaultGasFee(/* options */);
setDefaultGasFee.mutate(args, {
onSuccess() {
// Coarse invalidation: refresh every cached read on this product surface.
queryClient.invalidateQueries({
queryKey: ["tokenops-sdk", "fhe-airdrop"],
});
},
});See also
Other Configure hooks in airdrop v2:
useDisableCustomFeeDrop a creator's per-creator fee override, reverting them to the factory's defaultGasFee.useSetComplianceDelegateSet the platform-designated compliance delegate that every new compliance-manager clone wires in.useSetComplianceManagerImplPoint future compliance-manager clones at a new implementation.useSetCompliancePolicyOverride the factory's default delegate-to-compliance policy for one creator.