既存のフレームワーク (openlayers.d.ts) を定義することに興味がありますが、OpenLayers.Layer が OpenLayers.Layer.Markers のクラスと名前空間の両方であるという事実を表現する方法がわかりません。これにより、マーカーはレイヤーのネストされたクラスになると思います。
利用方法:
l = new OpenLayers.Layer(...); // this is a base class, never do this
m = new OpenLayers.Layer.Markers(...);
typescript で Layer クラスと Markers クラスの両方をどのように宣言しますか?