import { Accessor } from 'solid-js'; import { WindowEventName } from '../useEventListener/index.js'; import { ConfigurableDocument } from '../_configurable.js'; import '@solidjs-use/shared'; type KeyModifier = 'Alt' | 'AltGraph' | 'CapsLock' | 'Control' | 'Fn' | 'FnLock' | 'Meta' | 'NumLock' | 'ScrollLock' | 'Shift' | 'Symbol' | 'SymbolLock'; interface UseModifierOptions extends ConfigurableDocument { /** * Event names that will prompt update to modifier states * * @default ['mousedown', 'mouseup', 'keydown', 'keyup'] */ events?: WindowEventName[]; /** * Initial value of the returned Accessor * * @default null */ initial?: Initial; } type UseKeyModifierReturn = Accessor; /** * Reactive [Modifier State](https://developer.mozilla.org/en-US/docs/Web/API/KeyboardEvent/getModifierState). * * @see https://solidjs-use.github.io/solidjs-use/core/useKeyModifier */ declare function useKeyModifier(modifier: KeyModifier, options?: UseModifierOptions): UseKeyModifierReturn; export { KeyModifier, UseKeyModifierReturn, UseModifierOptions, useKeyModifier };