import { Color } from "../color";
import { PieceType } from "./piece.constants";
import { UUID } from "crypto";
export declare abstract class Piece {
    type: PieceType;
    color: Color;
    movementRules: UUID[];
    postMovementRules?: UUID[] | undefined;
    constructor(type: PieceType, color: Color, movementRules: UUID[], postMovementRules?: UUID[] | undefined);
    getMeta(): {
        type: PieceType;
        color: Color;
        rules: `${string}-${string}-${string}-${string}-${string}`[];
        postMovementRulesMeta: `${string}-${string}-${string}-${string}-${string}`[] | undefined;
    };
}
