export type ScreenClickCallback = (x: number, y: number) => void; export const useScreenClick = (callback: ScreenClickCallback) => { const registerScreenClickCallback = inject< (callback: ScreenClickCallback) => () => void >("registerScreenClickCallback"); onMounted(() => { if (!registerScreenClickCallback) { throw new Error( "Missing registerScreenClickCallback - useScreenClick must be used within a Screen component", ); } const unregister = registerScreenClickCallback(callback); onUnmounted(unregister); }); };