Angular 2 - AOT - Função de chamada 'ChartModule', chamadas de função não suportadas

Estou perdendo a cabeça e o cabelo por causa disso. Estou importando HighCharts no Angular 2, mas preciso exigir algumas de suas bibliotecas extras. Até agora no meu código eu tenho

import {ChartModule} from 'angular2-highcharts';
@NgModule({
....
imports:[
ChartModule.forRoot(require('highcharts'), require('highcharts/modules/drilldown'))})
]

Mas continuo recebendo esse erro

ERRO em Erro encontrado ao resolver estaticamente os valores dos símbolos. Chamando a função 'ChartModule'. chamadas de função não são suportadas. Considere substituir a função ou lambda por uma referência a uma função exportada.

Então eu tentei

export function highchartsRequire:any {
   return{
     require('highcharts'), 
     require('highcharts/modules/drilldown')
   }
}
...
ChartModule.forRoot(highchartsRequire())

Ainda não funciona. Alguma ideia?

Usando cli angular 2 angular: 1.0.0-beta.30

UPDATE - funcionou parcialmente graças ao JayChase

Isso funciona

export function highchartsFactory() {
      return require('highcharts');

    }

Mas não posso exigir dois de cada vez

declare var require: any;
export function highchartsFactory() {
  return function () {
    require('highcharts');
    require('highcharts/modules/drilldown')
  };
}

@NgModule({
  imports: [
    ChartModule
  ],
  providers: [
    {
      provide: HighchartsStatic,
      useFactory: highchartsFactory
    }
  ],

Alguma ideia? Obrigado.

questionAnswers(1)

yourAnswerToTheQuestion