import { Color, Move, Role, Square, SquareName } from './types.js'; export declare const defined: (v: A | undefined) => v is A; export declare const opposite: (color: Color) => Color; export declare const squareRank: (square: Square) => number; export declare const squareFile: (square: Square) => number; export declare const squareFromCoords: (file: number, rank: number) => Square | undefined; export declare const roleToChar: (role: Role) => string; export declare function charToRole(ch: 'p' | 'c' | 'r' | 'n' | 'h' | 'b' | 'e' | 'a' | 'k' | 'P' | 'C' | 'R' | 'N' | 'H' | 'B' | 'E' | 'A' | 'K'): Role; export declare function charToRole(ch: string): Role | undefined; export declare function parseSquare(str: SquareName): Square; export declare function parseSquare(str: string): Square | undefined; export declare const makeSquare: (square: Square) => SquareName; export declare const parseUci: (str: string) => Move | undefined; export declare const moveEquals: (left: Move, right: Move) => boolean; /** * Converts a move to UCI notation, like `g1f3`, */ export declare const makeUci: (move: Move) => string;