Aller au contenu principal

TypeScript

glyph build génère emojis/emojis.d.ts, qui déclare le module glyph/emojis :

emojis/emojis.d.ts
declare module 'glyph/emojis' {
export type Emojis = 'happy' | 'party' | 'sad' | 'thinking';
export type EmojisRecord = Record<Emojis, {id: string; name: string; animated: boolean}>;
}

glyph setup ajoute ce fichier au include de votre tsconfig.json. Les méthodes de Glyph attendent alors un nom de type Emojis : l'éditeur propose les noms existants, et une faute de frappe devient une erreur de compilation.

import Glyph from '@fca.gg/glyph';
import type {Emojis} from 'glyph/emojis';

function react(name: Emojis) {
return Glyph.identifier(name); // autocomplétion des noms
}

Tant que le fichier n'a pas été généré, Emojis vaut string : le projet compile, sans autocomplétion.

Sans jeton de bot, glyph build met quand même à jour emojis.d.ts (si fileIndex est activé), ce qui suffit pour travailler sur les types en local.