interface ReaderAndWriter extends Writer, Reader {} interface Writer { write(data: any): void; } interface Reader { read(): any; } // Beaucoup plus loin dans votre code function doSomething(rw: Reader) { // On fait quelque chose... rw.read(); }