import { MD3LightTheme, MD3DarkTheme } from 'react-native-paper';

// Your brand colors
const brandColors = {
  primary: '#35C4E5',
  primaryVariant: '#0051D5',
  secondary: '#34C759',
  secondaryVariant: '#248A3D',
  background: '#F2F2F7',
  surface: '#FFFFFF',
  error: '#FF3B30',
  onPrimary: '#FFFFFF',
  onSecondary: '#FFFFFF',
  onBackground: '#000000',
  onSurface: '#000000',
  onError: '#FFFFFF',
};

export const lightTheme = {
  ...MD3LightTheme,
  colors: {
    ...MD3LightTheme.colors,
    ...brandColors,
    // Additional custom colors
    accent: '#278CA2',
    warning: '#FF9500',
    success: '#34C759',
    info: '#007AFF',
    textSecondary: '#666666',
    border: '#E5E5EA',
    disabled: '#C7C7CC',
  },
};

export const darkTheme = {
  ...MD3DarkTheme,
  colors: {
    ...MD3DarkTheme.colors,
    primary: '#0A84FF',
    primaryVariant: '#0051D5',
    secondary: '#30D158',
    secondaryVariant: '#248A3D',
    background: '#000000',
    surface: '#1C1C1E',
    error: '#FF453A',
    onPrimary: '#FFFFFF',
    onSecondary: '#000000',
    onBackground: '#FFFFFF',
    onSurface: '#FFFFFF',
    onError: '#000000',
    // Additional custom colors
    accent: '#278CA2',
    warning: '#FF9F0A',
    success: '#30D158',
    info: '#0A84FF',
    textSecondary: '#AEAEB2',
    border: '#38383A',
    disabled: '#48484A',
  },
};

declare global {
  namespace ReactNativePaper {
    interface ThemeColors {
      accent: string;
      warning: string;
      success: string;
      info: string;
      textSecondary: string;
      border: string;
      disabled: string;
    }
  }
}