> ## Documentation Index
> Fetch the complete documentation index at: https://www.chapterjs.org/llms.txt
> Use this file to discover all available pages before exploring further.

# embed()

> La fonction qui déclare un embed utilisé dans plusieurs messages, et ce qu’elle renvoie

`embed()` déclare un embed, depuis n’importe quel fichier de `src/`. Elle prend l’embed lui-même, ou une fonction qui en renvoie un.

```ts src/components/welcome.ts theme={"theme":{"light":"github-light","dark":"vesper"}}
import { embed, type GuildMember } from 'chapterjs';

export default embed((member: GuildMember) => ({
  title: `Bienvenue ${member.displayName} !`,
  color: 0x57f287,
}));
```

> [!NOTE]
>
> Comment écrire et utiliser un fichier d’embed est dans le [guide](https://www.chapterjs.org/fr/components/embeds.md). Ce que peut contenir un embed est dans [Embed](https://www.chapterjs.org/fr/reference/message-options.md#embed).

## embed()

```ts theme={"theme":{"light":"github-light","dark":"vesper"}}
embed(definition: Embed): EmbedDeclaration<[]>
embed<Args extends readonly unknown[]>(definition: (...args: Args) => Embed): EmbedDeclaration<Args>
```

Déclare un embed. Exportez le résultat depuis n’importe quel fichier de `src/`. Donnez-lui l’embed lui-même quand il a toujours la même apparence, ou une fonction de ce qu’il affiche.

Un embed statique est vérifié par rapport aux limites de Discord au chargement du fichier ; l’embed que renvoie une fonction est vérifié au moment de l’envoi du message.

### EmbedDeclaration

```ts theme={"theme":{"light":"github-light","dark":"vesper"}}
type EmbedDeclaration<Args extends readonly unknown[] = []> = { readonly config: unknown } & ((...args: Args) => Embed)
```

Ce que renvoie `embed()` : une déclaration que le framework trouve dans les exports d’un fichier. Importez-le là où vous envoyez un message : `embeds: [welcome({ member })]`, ou `embeds: [rules]` pour un embed qui a toujours la même apparence.

**config** `unknown`

Ce que le fichier a donné à `embed()`, pas encore vérifié.

Les `embeds` d’un message prennent un `Embed` ou une `EmbedDeclaration<[]>` : un embed qui a besoin d’arguments doit être appelé.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.