From f8e6ae0c5fc5ef2037eac9759d6fd925f45e28f5 Mon Sep 17 00:00:00 2001 From: Ivan Hofer Date: Wed, 20 Jul 2022 15:56:17 +0200 Subject: [PATCH] add `ComponentEvent` type --- src/runtime/internal/dev.ts | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) diff --git a/src/runtime/internal/dev.ts b/src/runtime/internal/dev.ts index 6b302bb3ce..f3d1fae4b9 100644 --- a/src/runtime/internal/dev.ts +++ b/src/runtime/internal/dev.ts @@ -320,6 +320,25 @@ export type ComponentEvents = Component exten ? Events : never; +/** +* Convenience type to get an event the given component expects. Example: +* ```html +* +* +* +* ``` +*/ +export type ComponentEvent = Component extends SvelteComponentTyped + ? never extends Events[Name] ? CustomEvent : Events[Name] + : never; + export function loop_guard(timeout) { const start = Date.now(); return () => {