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

# `base44 types generate`

> Générer un fichier de déclaration TypeScript (types.d.ts) à partir des ressources du projet (entités, fonctions, agents, connecteurs).

<Warning>
  Cette page fait partie d'une compétence d'agent de code IA et est écrite pour les agents, pas pour les humains. Pour la documentation Base44 lisible par un humain, consultez la [documentation développeur](/developers).
</Warning>

# `base44 types generate`

Générer un fichier de déclaration TypeScript (`types.d.ts`) à partir des ressources du projet (entités, fonctions, agents, connecteurs).

## Utilisation

```bash theme={null}
npx base44 types generate
```

## Ce que fait la commande

1. **Lit la configuration du projet** — parcourt `base44/entities/`, `base44/functions/`, `base44/agents/` et `base44/connectors/` à la recherche de toutes les ressources définies
2. **Génère `base44/.types/types.d.ts`** — crée un fichier de déclaration TypeScript qui augmente le module `@base44/sdk` avec des registres typés
3. **Met à jour `tsconfig.json`** (s'il est présent) — ajoute automatiquement `base44/.types/*.d.ts` au tableau `include` pour que TypeScript prenne en compte les types générés

## Authentification

**Non requise.** Cette commande s'exécute entièrement en local et n'a pas besoin d'authentification.

## Fichier de sortie

Le fichier généré est placé dans :

```
base44/.types/types.d.ts
```

### Contenu généré

Le fichier de déclaration augmente le module `@base44/sdk` avec quatre registres :

* **`EntityTypeRegistry`** — associe les noms d'entités à leurs interfaces TypeScript (compilées depuis les schémas JSON des entités)
* **`FunctionNameRegistry`** — liste tous les noms de fonctions backend
* **`AgentNameRegistry`** — liste tous les noms d'agents
* **`ConnectorTypeRegistry`** — liste tous les types de connecteurs

**Exemple de sortie :**

```typescript theme={null}
// Auto-generated by Base44 CLI - DO NOT EDIT
// Regenerate with: base44 types generate

export interface Task {
  title: string;
  status: "todo" | "in_progress" | "done";
  assignee?: string;
}

export interface Board {
  name: string;
  description?: string;
}

declare module '@base44/sdk' {
  interface EntityTypeRegistry {
    "Task": Task;
    "Board": Board;
  }

  interface FunctionNameRegistry {
    "send_email": true;
  }

  interface AgentNameRegistry {
    "support_agent": true;
  }

  interface ConnectorTypeRegistry {
    "googlecalendar": true;
  }
}
```

Si aucune ressource n'est trouvée, le fichier contient un espace réservé avec des instructions sur la manière d'ajouter des ressources.

## Intégration à tsconfig.json

Si un `tsconfig.json` existe à la racine du projet, la commande ajoute automatiquement `base44/.types/*.d.ts` au tableau `include` :

```json theme={null}
{
  "include": [
    "src",
    "base44/.types/*.d.ts"
  ]
}
```

Si le chemin est déjà inclus, ou qu'aucun `tsconfig.json` n'existe, cette étape est silencieusement ignorée.

## Quand l'exécuter

* Après avoir créé ou modifié des schémas d'entités dans `base44/entities/`
* Après avoir ajouté ou retiré des fonctions backend dans `base44/functions/`
* Après avoir ajouté ou retiré des agents dans `base44/agents/`
* Après avoir ajouté ou retiré des connecteurs dans `base44/connectors/`
* Lors de la mise en place d'un projet TypeScript pour la première fois avec Base44

## Remarques

* Le fichier généré ne **doit pas** être modifié manuellement — il sera écrasé à la prochaine exécution
* Envisagez d'ajouter `base44 types generate` à votre pipeline de build ou en tant que script pre-build
* Le répertoire `.types` est créé automatiquement dans le dossier `base44/`

<Note>Cette page a été traduite à l'aide de l'IA. Pour les informations les plus précises et à jour, consultez la [version anglaise](/). </Note>
