Avatar ·

Wie typisiert man eine Callback-Funktion korrekt im Parameter einer TypeScript-Methode?

Hallo zusammen! Ich fange gerade erst an, mich mit TypeScript zu beschäftigen und bin auf ein Problem gestoßen. In meiner Klasse gibt es eine Methode, die eine Callback-Funktion akzeptiert. Ich möchte den Parameter so typisieren, dass jede Funktion (mit beliebig vielen Argumenten und Rückgabewert) übergeben werden kann, aber ohne `any` zu verwenden, um die Typprüfung zu erhalten.\n\nHier ist, was ich versuche:\n\n```typescript\nclass EventBus {\n on(eventName: string, callback: any) { // so funktioniert es, aber es ist unsicher\n // ...\n }\n}\n\nconst bus = new EventBus();\nbus.on('click', (data: number) => console.log(data)); // es wird kein Fehler angezeigt, selbst wenn ein String übergeben wird\n```\n\nIch verstehe, dass `any` die Typprüfung vollständig deaktiviert und dies eine schlechte Praxis ist. Ich habe versucht, `Function` zu verwenden, aber es ist auch zu allgemein und erlaubt keine ordnungsgemäße