export type ScreenMouseWheelCallback = (deltaY: number, deltaX: number) => void; export const useScreenMouseWheel = (callback: ScreenMouseWheelCallback) => { const registerScreenMouseWheelCallback = inject< (callback: ScreenMouseWheelCallback) => () => void >("registerScreenMouseWheelCallback"); onMounted(() => { if (!registerScreenMouseWheelCallback) { throw new Error( "Missing registerScreenMouseWheelCallback - useScreenMouseWheel must be used within a Screen component", ); } const unregister = registerScreenMouseWheelCallback(callback); onUnmounted(unregister); }); };