Skip to main content
Version: 1.4.2

Interface: GrantMintBurnAccessParams

Defined in: token-admin/types.ts:1110

Parameters for granting mint and burn permissions on a token.

This is a token operation — it modifies permissions on the token, not the pool. The authority receives permission to mint/burn.

ChaintokenAddressauthorityWhat happens
EVMERC20 addressPool addressgrantMintAndBurnRoles(authority) / grantMintRole / grantBurnRole
SolanaSPL mint (base58)New mint authority (multisig/PDA)setAuthority(MintTokens)
AptosFA metadata addrPool object addressAuto-detects pool type, grants access

Example

TypeScript
// Grant both roles (default)
const params: GrantMintBurnAccessParams = {
tokenAddress: '0xa42BA090720aEE0602aD4381FAdcC9380aD3d888',
authority: '0x1234567890abcdef1234567890abcdef12345678',
}

// Grant mint only
const mintOnly: GrantMintBurnAccessParams = {
tokenAddress: '0xa42BA090720aEE0602aD4381FAdcC9380aD3d888',
authority: '0x1234567890abcdef1234567890abcdef12345678',
role: 'mint',
}

Properties

authority

authority: string

Defined in: token-admin/types.ts:1114

Address to grant mint/burn access to (pool, multisig, etc.).


role?

optional role?: MintBurnRole

Defined in: token-admin/types.ts:1116

Which role(s) to grant. Defaults to 'mintAndBurn'.


tokenAddress

tokenAddress: string

Defined in: token-admin/types.ts:1112

Token address (EVM contract, Solana mint, Aptos FA metadata).


tokenType?

optional tokenType?: EVMTokenType

Defined in: token-admin/types.ts:1123

EVM token type. Controls which ABI is used for the grant call.

  • 'burnMintERC20' (default): uses OZ AccessControl grantRole(bytes32, address)
  • 'factoryBurnMintERC20': uses Ownable grantMintRole(address) / grantBurnRole(address) Ignored on Solana/Aptos.