import { Interpolation } from '@emotion/react'; import { ComponentType } from 'react'; export interface GameTheme { root: RootTheme; dialog: DialogTheme; buttons?: Interpolation; dropArea?: DropAreaTheme; palette: PaletteTheme; menu?: MenuTheme; journal?: JournalTheme; result?: ResultTheme; header?: HeaderTheme; playerPanel?: PlayerPanelTheme; tutorial?: TutorialTheme; timeStats?: TimeStatsTheme; extensionDialog?: ExtensionDialogTheme; } export interface DropAreaTheme { backgroundColor: string; } export interface RootTheme { fontFamily: string; background: BackgroundTheme; } export interface BackgroundTheme { image: string; overlay: string; } export type DialogNavigationProps = { onPrevious?: () => void; onNext?: () => void; currentIndex: number; total: number; }; export interface DialogTheme { backgroundColor: string; color: string; container?: Interpolation; backdrop?: Interpolation; closeIcon?: Interpolation; closeButton?: ComponentType<{ onClick: () => void; }>; content?: Interpolation; openAnimation?: Interpolation; closeAnimation?: Interpolation; navigation?: ComponentType; navigationCss?: Interpolation; /** * Optional override applied to every