import type { keyboardKey } from './keyboard/types' ; import type { pointerKey } from './pointer/types' ; import { defaultKeyMap as defaultKeyboardMap } from './keyboard/keyMap' ; import { defaultKeyMap as defaultPointerMap } from './pointer/keyMap' ; export enum PointerEventsCheckLevel { /**
     * Check pointer events on every user interaction that triggers a bunch of events.
     * E.g. once for releasing a mouse button even though this triggers `pointerup`, `mouseup`, `click`, etc...
     */ EachTrigger = 4 , /** Check each target once per call to pointer (related) API */ EachApiCall = 2 , /** Check each event target once */ EachTarget = 1 , /** No pointer events check */ Never = 0 } export interface Options { default applyAccept ? : boolean ; default autoModify ? : boolean ; default delay ? : number | null ; default document ? : Document ; /**
     * An array of keyboard keys the keyboard device consists of.
     *
     * This allows to plug in different layouts / localizations.
     *
     * Defaults to a "standard" US-104-QWERTY keyboard.
     */ keyboardMap ? : keyboardKey [ ] ; /**
     * An array of available pointer keys.
     *
     * This allows to plug in different pointer devices.
     */ pointerMap ? : pointerKey [ ] ; default pointerEventsCheck ? : PointerEventsCheckLevel | number ; default skipAutoClose ? : boolean ; default skipClick ? : boolean ; default skipHover ? : boolean ; /**
     * Write selected data to Clipboard API when a `cut` or `copy` is triggered.
     *
     * The Clipboard API is usually not available to test code.
     * Our `setup` replaces the `navigator.clipboard` property with a stub.
     *
     * Defaults to `false` when calling the APIs directly.
     * Defaults to `true` when calling the APIs per `setup`.
     */ writeToClipboard ? : boolean ; } /**
 * Default options applied when API is called per `userEvent.anyApi()`
 */ export const defaultOptionsDirect = { applyAccept : true , autoModify : true , delay : 0 , document : global . document , keyboardMap : defaultKeyboardMap , pointerMap : defaultPointerMap , pointerEventsCheck : PointerEventsCheckLevel . EachApiCall , skipAutoClose : false , skipClick : false , skipHover : false , writeToClipboard : false , } ; /**
 * Default options applied when API is called per `userEvent().anyApi()`
 */ export const defaultOptionsSetup = { ... defaultOptionsDirect , writeToClipboard : true , } ;