class Base { [x: string]: Object; } // ok, use assignment compatibility class Derived extends Base { [x: string]: any; } class Base2 { [x: number]: Object; } // ok, use assignment compatibility class Derived2 extends Base2 { [x: number]: any; }