Configuro espacios de nombres globales para mis objetos estableciendo explícitamente una propiedad en window.
window.MyNamespace = window.MyNamespace || {};
TypeScript subraya MyNamespacey se queja de que:
La propiedad 'MyNamespace' no existe en el valor de tipo 'window' any "
Puedo hacer que el código funcione declarándolo MyNamespacecomo una variable ambiental y descartando la windowexplicitación, pero no quiero hacer eso.
declare var MyNamespace: any;
MyNamespace = MyNamespace || {};
¿Cómo puedo mantenerme windowallí y hacer feliz a TypeScript?
Como nota al margen, me parece especialmente divertido que TypeScript se queje, ya que me dice que windowes de tipo anyque definitivamente puede contener cualquier cosa.