import { Action } from "redux-actions"; import { ChessInstance } from "chess.js"; import { Position } from "../../interfaces/Position"; import { Move } from "../../interfaces/Move"; import { ValidMoves } from "../../types/ValidMoves"; export declare enum WithMoveValidationAction { SET_GAME = "SET_GAME", RESIZE = "RESIZE", CHANGE_POSITION = "CHANGE_POSITION", SHOW_PROMOTION_CHOICE = "SHOW_PROMOTION_CHOICE", HIDE_PROMOTION_CHOICE = "HIDE_PROMOTION_CHOICE" } export interface WithMoveValidationState { game: ChessInstance | null; validMoves: ValidMoves; position: Position; lastMoveSquares: string[]; width: number; showPromotionChoice: boolean; } export interface ChangePositionData { lastMove: Move; position: Position; } export declare const getWithMoveValidationInitialState: (initialFen: string, width: number) => WithMoveValidationState; export declare const withMoveValidationReducer: (state: WithMoveValidationState, action: Action) => WithMoveValidationState;