interface A { (x: T): void; } interface B { (x: T): void; } interface C { (x: A): void; (x: B): void; }