import { buttons, Button } from "../types/button"; import { LayerKey } from "../types/layer_key"; import { Layers, Flip, Remap, Macro, StructMacro, ModeTable, StructMode } from "../types/buttons_setting_type"; export const disableFlipType = Symbol('disableFlip'); export const alwaysFlipType = Symbol('alwaysFlip'); export const flipIfPressedSelfType = Symbol('flipIfPressedSelf'); export const flipIfPressedSomeButtonsType = Symbol('flipIfPressedSomeButtons'); export const ignoreButtonsInFlipingType = Symbol('ignoreButtonsInFliping'); export const remapType = Symbol('remap'); export const openMenuType = Symbol('openMenu'); export const closeMenuType = Symbol('closeMenu'); export const applyMacroType = Symbol('applyMacro'); export const installMacroType = Symbol('installedMacro'); export const uninstallMacroType = Symbol('uninstalledMacro'); export const installModeType = Symbol('uninstalledMacro'); export const uninstallModeType = Symbol('a') export const applyModeType = Symbol('b') type ACTION_TYPE = | { type: typeof disableFlipType, payload: { layerKey: LayerKey, button: Button } } | { type: typeof alwaysFlipType, payload: { layerKey: LayerKey, button: Button } } | { type: typeof flipIfPressedSelfType, payload: { layerKey: LayerKey, button: Button } } | { type: typeof flipIfPressedSomeButtonsType, payload: { layerKey: LayerKey, button: Button, targetButtons: Array