import type { LiveComponent, LiveElement, ArrowFunction } from '@use-gpu/live'; import { MouseState, WheelState, KeyboardState, PointerCaptureAPI, PointerLockAPI } from '../interact/event.d.mts'; export declare const EventContext: import("@use-gpu/live").LiveContext; export declare const MouseContext: import("@use-gpu/live").LiveContext; export declare const WheelContext: import("@use-gpu/live").LiveContext; export declare const KeyboardContext: import("@use-gpu/live").LiveContext; export type EventProviderProps = { subscribeEvent: (type: string, handler: ArrowFunction) => void; pointerLock: PointerLockAPI; children?: LiveElement; }; export type EventStateProviderProps = { subscribeEvent: (type: string, handler: ArrowFunction) => void; children?: LiveElement; }; export type EventContextProps = { usePickingId: () => number; usePickingIds: (n: number) => number[]; usePointerCapture: () => PointerCaptureAPI; usePointerLock: () => PointerLockAPI; }; export declare const EventProvider: LiveComponent; export declare const EventStateProvider: (props: EventStateProviderProps) => import("@use-gpu/live").DeferredCall; export declare const useEventEffect: (callback: ArrowFunction) => (...args: any[]) => any; export declare const useObjectEvents: (callbacks: Record) => { id: number; handlers: LiveElement; }; export declare const useCanvasEvents: (id: number | null, callbacks: Record) => LiveElement; export declare const useKeyboardState: () => KeyboardState; export declare const useMouseState: () => MouseState; export declare const useWheelState: () => WheelState; export declare const useNoKeyboardState: () => void; export declare const useNoMouseState: () => void; export declare const useNoWheelState: () => void; export declare const usePickingId: () => number; export declare const usePickingIds: (n: number) => number[]; export declare const useNoPickingId: () => void; export declare const useNoPickingIds: () => void; export declare const usePointerLock: () => PointerLockAPI; export declare const usePointerCapture: () => PointerCaptureAPI;