Utility types TypeScript : Pick, Omit, Record, Partial

🏷️ Front-end 📅 12/04/2026 08:00:00 👤 Mezgani Said
Typescript Utility Types Types Réutilisation Generiques
Utility types TypeScript : Pick, Omit, Record, Partial

Utiliser les utility types TypeScript pour réutiliser et transformer les types existants efficacement.

Introduction aux Utility types

Les Utility types permettent de transformer des types existants sans les réécrire

À retenir : DRY (Don't Repeat Yourself) s'applique aussi aux types !

Pick - sélectionner des propriétés

interface User { id: number; name: string; email: string; active: boolean; } type UserPreview = Pick<User, 'id' | 'name'>; // { id: number; name: string; }

Omit - exclure des propriétés

type UserPublic = Omit<User, 'email'>; // { id: number; name: string; active: boolean; }

Record - créer un type avec clés

type Status = 'pending' | 'complete' | 'failed'; type StatusCount = Record<Status, number>; // { pending: number; complete: number; failed: number; } const counts: StatusCount = { pending: 5, complete: 10, failed: 2 };

Partial et Required

// Partial = toutes les props optionnelles type PartialUser = Partial<User>; // Required = toutes les props obligatoires type RequiredUser = Required<User>;

Readonly et typeof

// Readonly = rendre immutable type ReadonlyUser = Readonly<User>; // typeof = obtenir le type d'une variable const user = { name: 'Alice', age: 25 }; type UserType = typeof user; // { name: string; age: number; }

Combiner les Utility types

type SafeUser = Partial<Pick<User, 'name' | 'email'>>; // { name?: string; email?: string; }