Como chamar um método Angular 4 de uma função JavaScript simples autônoma?

Gostaria de passar alguns dados \ propagar eventos de um plug-in na página para o meu aplicativo Angular 4.

Mais especificamente, no meu caso, dados \ eventos são gerados dentro de um aplicativo de plug-in do Silverlight que fica ao lado do aplicativo Angular na página.

Eu tenho a seguinte solução em minha mente:

Crie uma função JS global que seja chamada do Silverlight (pois essa parece ser a maneira mais simples de extrair dados do Silverlight) quando houver necessidade de conversar com o lado Angular.A função, por sua vez, chama algum método de classe Angular que passa dados coletados do Silverlight.

Como ilustração disso (excluindo a parte do Silverlight), poderíamos ter o seguinte.

Um método como ponto de entrada no lado angular:

export class SomeAngularClass {
    public method(data: any): void {
        ...
    }
}

E em algum lugar fora do domínio Angular, adicionamos uma função JavaScript global simples (a ser chamada pelo Silverlight):

window.somePlainJsFunction = function (data) {
    // How to consume SomeAngularClass.method() from here?
}

A questão é:como podemos chamar os métodos de classe Angular a partir de uma função JavaScript simples?

questionAnswers(4)

yourAnswerToTheQuestion