CasinoGames/CasinoKit/Sources/CasinoKit/Exports.swift

129 lines
3.8 KiB
Swift

//
// Exports.swift
// CasinoKit
//
// Re-exports all public types for convenient importing.
//
// This file ensures all public types are exported from the module.
// Clients can simply `import CasinoKit` to access all components.
// MARK: - Models
// - Card, Suit, Rank
// - Deck
// - ChipDenomination
// - TableLimits
// - OnboardingState
// - TooltipManager, TooltipConfig
// - GameSettingsProtocol (shared settings interface)
// - SettingsKeys, SettingsDefaults (persistence helpers)
// MARK: - Views
// - CardView, CardFrontView, CardBackView, CardPlaceholderView
// - DiamondPatternView
// - ChipView, ChipEdgePattern
// - ChipSelectorView
// - ChipStackView, ChipOnTableView
// - SheetContainerView, SheetSection
// - WelcomeSheet, WelcomeFeature
// - ContextualTooltip, ContextualTooltipModifier
// - PulsingModifier
// MARK: - Effects
// - ConfettiView, ConfettiPiece
// MARK: - Overlays
// - GameOverView
// - CasinoResultBannerView (animated result banner with staggered animations)
// - ResultBreakdownCard (styled container for bet breakdown)
// - ResultItemRow (generic result row with icon, label, amount)
// MARK: - Table
// - TableBackgroundView, FeltPatternView
// MARK: - Bars
// - TopBarView
// MARK: - Badges
// - ValueBadge
// - ChipBadge
// MARK: - Hints
// - BettingHintView (shared betting recommendation view)
// - BettingHintStyle (positive, negative, neutral, streak, pattern, custom)
// MARK: - Buttons
// - ActionButton, ActionButtonStyle
// - BettingActionsView (Clear/Deal button pair for betting phase)
// MARK: - Zones
// - BettingZone
// MARK: - Cards (additional)
// - CardRenderer (PDF-based vector rendering for card faces)
// - CardHand, CardFan, CardsGrid (layout views)
// - HandDisplayView
// MARK: - Settings
// - SettingsToggle
// - SpeedPicker
// - VolumePicker
// - BalancePicker
// - SelectableRow (card-like selectable picker row)
// - SelectionIndicator (checkmark circle)
// - BadgePill (capsule badge for values)
// MARK: - Branding
// - AppIconView, AppIconConfig
// - LaunchScreenView, LaunchScreenConfig, StaticLaunchScreenView
// - IconRenderer, IconExportView
// MARK: - Theme
// - CasinoTheme (protocol)
// - DefaultCasinoTheme
// - ChipColorSet
// - CasinoDesign (constants)
// - Color.Sheet, Color.Button, Color.Modal, Color.Table, Color.TopBar (colors)
// MARK: - Audio
// - SoundManager
// - GameSound
// MARK: - Storage
// - CloudSyncManager
// - PersistableGameData (protocol)
// MARK: - Sessions
// - GameSession<Stats> (generic session with game-specific stats)
// - GameSpecificStats (protocol for game-specific statistics)
// - SessionManagedGame (protocol for games with session management)
// - CasinoGameState (protocol extending SessionManagedGame with shared behaviors)
// - SessionEndReason (.manualEnd, .brokeOut)
// - RoundOutcome (.win, .lose, .push)
// - AggregatedSessionStats (combined stats from multiple sessions)
// - StatDisplayItem (for displaying game-specific stats)
// - SessionFormatter (formatting utilities)
// - EndSessionButton, EndSessionConfirmation (UI components)
// - CurrentSessionHeader, SessionSummaryRow (UI components)
// - GameStatRow (display a stat item)
// MARK: - Statistics Components
// - StatisticsTab (enum: current, global, history)
// - StatisticsTabSelector (tab picker for stats views)
// - StatColumn (vertical stat display)
// - OutcomeCircle (win/loss/push circles)
// - StatRow (horizontal stat with icon)
// - ChipStatRow (stat with colored circle icon)
// - NoActiveSessionView (placeholder)
// - EmptyHistoryView (placeholder)
// - SessionPerformanceSection (winning/losing sessions)
// - ChipsStatsSection (betting stats)
// - BalanceSection (starting/ending balance)
// - SessionDetailHeader (date, result, win rate)
// - DeleteSessionButton (destructive delete button)
// MARK: - Debug
// - debugBorder(_:color:label:) View modifier