Skip to content

Conversation

@kireevmp
Copy link
Contributor

@kireevmp kireevmp commented Dec 9, 2024

Right now public types prohibit binding EventCallable<void> to an optional prop.

Props[K] extends (...args: any[]) => any does not get distributed over unions, and does not handle unions that combine function and non-function type, like MouseEventHandler | undefined.

This is fixed by consolidating branches and moving payload: void case into a separate type that does distribute.

Reproduction: https://tsplay.dev/reflect-event-void-bind

@AlexandrHoroshih AlexandrHoroshih merged commit 9226a7d into effector:master Mar 22, 2025
@kireevmp kireevmp deleted the fix/event-void-as-optional-callback branch March 22, 2025 08:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants