Skip to content

Commit 9b30a61

Browse files
authored
docs: Add token extension constraints to account documentation (#3861)
1 parent 5256dc1 commit 9b30a61

File tree

1 file changed

+66
-0
lines changed

1 file changed

+66
-0
lines changed

docs/content/docs/references/account-constraints.mdx

Lines changed: 66 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -289,6 +289,72 @@ Examples: [Github](https://github.com/solana-developers/anchor-examples/tree/mai
289289
#[account(*::token_program = <target_account>)]
290290
```
291291

292+
## Token Extensions Constraints
293+
294+
### `#[account(extensions::close_authority::*)]`
295+
296+
Description: Create or validate close authority extension on the mint account.
297+
298+
```rust title="attribute"
299+
#[account(
300+
extensions::close_authority::authority = <target_account>
301+
)]
302+
```
303+
304+
### `#[account(extensions::permanent_delegate::*)]`
305+
306+
Description: Create or validate permanent delegate extension on the mint account.
307+
308+
```rust title="attribute"
309+
#[account(
310+
extensions::permanent_delegate::delegate = <target_account>
311+
)]
312+
```
313+
314+
### `#[account(extensions::transfer_hook::*)]`
315+
316+
Description: Create or validate transfer hook extension on the mint account.
317+
318+
```rust title="attribute"
319+
#[account(
320+
extensions::transfer_hook::authority = <target_account>,
321+
extensions::transfer_hook::program_id = <target_account>
322+
)]
323+
```
324+
325+
### `#[account(extensions::group_pointer::*)]`
326+
327+
Description: Create or validate group pointer extension on the mint account.
328+
329+
```rust title="attribute"
330+
#[account(
331+
extensions::group_pointer::authority = <target_account>,
332+
extensions::group_pointer::group_address = <target_account>
333+
)]
334+
```
335+
336+
### `#[account(extensions::group_member_pointer::*)]`
337+
338+
Description: Create or validate group member pointer extension on the mint account.
339+
340+
```rust title="attribute"
341+
#[account(
342+
extensions::group_member_pointer::authority = <target_account>,
343+
extensions::group_member_pointer::member_address = <target_account>
344+
)]
345+
```
346+
347+
### `#[account(extensions::metadata_pointer::*)]`
348+
349+
Description: Create or validate metadata pointer extension on the mint account.
350+
351+
```rust title="attribute"
352+
#[account(
353+
extensions::metadata_pointer::authority = <target_account>,
354+
extensions::metadata_pointer::metadata_address = <target_account>
355+
)]
356+
```
357+
292358
## Instruction Attribute
293359

294360
### `#[instruction(...)]`

0 commit comments

Comments
 (0)