Rappel : l'interface Repository<Article>
C'est le contrat qu'on a écrit en S10. Il dit QUELLES méthodes existent, pas COMMENT elles fonctionnent.
export interface Repository<T> {
getAll(): Promise<T[]>;
getById(id: string): Promise<T | null>;
create(item: Omit<T, "id">): Promise<T>;
update(id: string, item: Partial<T>): Promise<T | null>;
delete(id: string): Promise<boolean>;
}