add `ComponentEvents` type

pull/7702/head
Ivan Hofer 4 years ago
parent 52f5005cfd
commit f47cd0ac64

@ -301,6 +301,25 @@ export type ComponentProps<Component extends SvelteComponent> = Component extend
? Props ? Props
: never; : never;
/**
* Convenience type to get the events the given component expects. Example:
* ```html
* <script lang="ts">
* import type { ComponentEvents } from 'svelte';
* import Component from './Component.svelte';
*
* type $$Events = ComponentEvent<Component>;
* </script>
*
* <div class="wrapper">
* <Component on:close />
* </div>
* ```
*/
export type ComponentEvents<Component extends SvelteComponent> = Component extends SvelteComponentTyped<any, infer Events>
? Events
: never;
export function loop_guard(timeout) { export function loop_guard(timeout) {
const start = Date.now(); const start = Date.now();
return () => { return () => {

Loading…
Cancel
Save