Cho phép một SPL token mint trên instance và tạo associated token account của escrow cho mint đó. Các khoản nạp tiền cho mint này sẽ khả dụng sau khi gọi lệnh này.
Tài khoản
| Tài khoản | Có thể ghi | Người ký | Mô tả |
|---|---|---|---|
payer | ✓ | ✓ | Người trả phí |
admin | ✓ | Quản trị viên instance | |
instance | Instance PDA | ||
mint | SPL token mint cần cho phép | ||
allowed_mint | ✓ | AllowedMint PDA (được tạo bởi lệnh này) | |
instance_ata | ✓ | associated token account của escrow cho mint này (được tạo bởi lệnh này) | |
system_program | System Program | ||
token_program | SPL Token Program | ||
associated_token_program | Associated Token Program | ||
event_authority | Event authority PDA | ||
private_channel_escrow_program | Chương trình Escrow |
Tham số
| Tham số | Kiểu | Mô tả |
|---|---|---|
bump | u8 | bump seed cho allowed_mint PDA. Tùy chọn: client Async tự động suy ra nếu bỏ qua |
IDL chứa một đối số
discriminator: u8(giá trị1) được tự động thiết lập bởi client được tạo ra và không nên truyền thủ công.
Lưu ý quan trọng
- Sử dụng
getAllowMintInstructionAsync; nó tự động suy rabump,allowed_mint, vàinstance_atakhi chúng không được cung cấp. Chỉ truyềnbumpcủa riêng bạn nếu bạn đã tính toán nó quaPubkey::find_program_address(&[b"allowed_mint", instance_pda, mint], &PROGRAM_ID) - Cũng tạo
instance_ata, ATA của escrow cho mint này - Các mint có phần mở rộng transfer hook bị chặn rõ ràng: cố gắng
cho phép một mint như vậy sẽ ném lỗi
TransferHookNotAllowed - Phát ra một sự kiện qua
EmitEventCPI
Is this page helpful?