Permite un mint de token SPL en la instancia y crea la associated token account de custodia para ese mint. Los depósitos para este mint son posibles después de esta llamada.
Cuentas
| Cuenta | Escritura | Firmante | Descripción |
|---|---|---|---|
payer | ✓ | ✓ | Pagador de comisiones |
admin | ✓ | Administrador de la instancia | |
instance | PDA de la instancia | ||
mint | Mint de token SPL a permitir | ||
allowed_mint | ✓ | PDA AllowedMint (creada por esta instrucción) | |
instance_ata | ✓ | Associated token account de custodia para este mint (creada por esta instrucción) | |
system_program | System Program | ||
token_program | SPL Token Program | ||
associated_token_program | Associated Token Program | ||
event_authority | PDA de autoridad de eventos | ||
private_channel_escrow_program | Programa de custodia |
Parámetros
| Parámetro | Tipo | Descripción |
|---|---|---|
bump | u8 | Bump seed para el PDA allowed_mint. Opcional: el cliente Async lo deriva automáticamente si se omite |
El IDL contiene un argumento
discriminator: u8(valor1) que se establece automáticamente por el cliente generado y no debe pasarse manualmente.
Notas importantes
- Usa
getAllowMintInstructionAsync; deriva automáticamentebump,allowed_minteinstance_atacuando no se proporcionan. Pasa tu propiobumpsolo si ya lo calculaste mediantePubkey::find_program_address(&[b"allowed_mint", instance_pda, mint], &PROGRAM_ID) - También crea
instance_ata, la ATA de custodia para este mint - Los mints con una extensión de transfer hook están explícitamente bloqueados: intentar
permitir dicho mint lanza
TransferHookNotAllowed - Emite un evento mediante CPI
EmitEvent
Is this page helpful?