Type Alias: ExtractEventNamesFromProps<T>
ts
type ExtractEventNamesFromProps<T> = {
[K in keyof T]: K extends `on${infer Event}`
? Event extends `Vnode${string}` | `$${string}`
? never
: Event extends `${infer Prefix}:${infer Suffix}`
? `${Uncapitalize<Prefix>}:${Suffix}`
: Uncapitalize<Event>
: never;
}[keyof T];Helper to extract event names from emit handler props (onEventName format). Converts prop names like 'onUpdate:modelValue' or 'onUpdateModelValue' to event names. Filters out Vue internal events (vnode*, $*).
Type Parameters
| Type Parameter |
|---|
T |