Crée le PDA Instance qui ancre l'escrow. Doit être appelé avant toute
autre opération.
Seeds du PDA
instance -> ["instance", instance_seed: Pubkey]allowed_mint -> ["allowed_mint", instance_pda: Pubkey, mint: Pubkey]operator -> ["operator", instance_pda: Pubkey, operator: Pubkey]event_authority -> ["event_authority"]
Comptes
| Compte | Modifiable | Signataire | Description |
|---|---|---|---|
payer | ✓ | ✓ | Payeur de frais et payeur de rent |
admin | ✓ | Administrateur initial de l'instance | |
instance_seed | ✓ | keypair jetable utilisé uniquement pour la dérivation du PDA ; son pubkey devient le seed | |
instance | ✓ | PDA Instance (dérivé de ["instance", instance_seed.pubkey]) | |
system_program | System Program | ||
event_authority | PDA de l'autorité d'événement | ||
private_channel_escrow_program | Programme d'escrow |
Paramètres
| Paramètre | Type | Description |
|---|---|---|
bump | u8 | bump seed pour le PDA de l'instance. Facultatif : le client Async le dérive automatiquement s'il est omis |
L'IDL contient un argument
discriminator: u8(valeur0) qui est défini automatiquement par le client généré et ne doit pas être passé manuellement.
Notes importantes
instance_seedest un keypair jetable, utilisé uniquement pour dériver le PDAInstance. Son pubkey devient le seed ; le keypair lui-même n'est ni stocké ni réutilisé.- Utilisez
getCreateInstanceInstructionAsync; il dérive automatiquementbumpetinstancedepuisinstance_seedlorsqu'ils ne sont pas fournis. Ne fournissez votre proprebumpque si vous l'avez déjà calculé viaPubkey::find_program_address(&[b"instance", instance_seed_pubkey.as_ref()], &PROGRAM_ID) - Émet un événement via le CPI
EmitEvent
Is this page helpful?