import React from 'react'; import { type BaseCardProps, type CustomCardBack } from '../../types/index.js'; /** * Tarot suits for Minor Arcana cards. */ export type TarotSuit = 'wands' | 'cups' | 'swords' | 'pentacles'; /** * Minor Arcana values: Ace–10 plus court cards. */ export type TarotMinorValue = 'Ace' | '2' | '3' | '4' | '5' | '6' | '7' | '8' | '9' | '10' | 'Page' | 'Knight' | 'Queen' | 'King'; /** * Major Arcana index (0–21). */ export type MajorArcanaIndex = 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21; /** * Props for a Major Arcana tarot card. */ export type TarotMajorProps = BaseCardProps & { arcana: 'major'; /** Index 0–21 corresponding to The Fool through The World */ majorIndex: MajorArcanaIndex; /** Whether the card is reversed (upside-down reading) */ reversed?: boolean; /** Override the default ASCII art */ asciiArt?: string; /** Border color */ borderColor?: string; /** Text color */ textColor?: string; /** Art region color */ artColor?: string; /** Custom card back */ back?: CustomCardBack; }; /** * Props for a Minor Arcana tarot card. */ export type TarotMinorProps = BaseCardProps & { arcana: 'minor'; suit: TarotSuit; value: TarotMinorValue; /** Whether the card is reversed (upside-down reading) */ reversed?: boolean; /** Override the default ASCII art */ asciiArt?: string; /** Border color */ borderColor?: string; /** Text color */ textColor?: string; /** Art region color */ artColor?: string; /** Custom card back */ back?: CustomCardBack; }; export type TarotCardProps = TarotMajorProps | TarotMinorProps; /** * TarotCard renders a tarot card (Major or Minor Arcana) using the CustomCard layout. * * Major Arcana (0–21): Provide `arcana="major"` and `majorIndex`. * Minor Arcana: Provide `arcana="minor"`, `suit`, and `value`. * * Supports reversed orientation, custom art overrides, and all BaseCardProps * (faceUp, selected, rounded, effects). * * @example * // The Fool (Major Arcana) * * * @example * // Queen of Cups (Minor Arcana, reversed) * */ export declare function TarotCard(props: TarotCardProps): React.JSX.Element; export default TarotCard;