import type { MD3Theme } from 'react-native-paper';

/**
 * Mock MD3Theme for testing purposes.
 * @internal For testing purposes only. Do not use in production code.
 */
export const mockTheme: MD3Theme = {
  dark: false,
  roundness: 4,
  version: 3,
  isV3: true,
  colors: {
    primary: '#6200ee',
    primaryContainer: '#eaddff',
    secondary: '#625b71',
    secondaryContainer: '#e8def8',
    tertiary: '#7d5260',
    tertiaryContainer: '#ffd8e4',
    surface: '#fffbfe',
    surfaceVariant: '#e7e0ec',
    surfaceDisabled: 'rgba(28, 27, 31, 0.12)',
    background: '#fffbfe',
    error: '#b3261e',
    errorContainer: '#f9dedc',
    onPrimary: '#ffffff',
    onPrimaryContainer: '#21005e',
    onSecondary: '#ffffff',
    onSecondaryContainer: '#1e192b',
    onTertiary: '#ffffff',
    onTertiaryContainer: '#370b1e',
    onSurface: '#1c1b1f',
    onSurfaceVariant: '#49454e',
    onSurfaceDisabled: 'rgba(28, 27, 31, 0.38)',
    onError: '#ffffff',
    onErrorContainer: '#410e0b',
    onBackground: '#1c1b1f',
    outline: '#79747e',
    outlineVariant: '#cac4d0',
    inverseSurface: '#313033',
    inverseOnSurface: '#f4eff4',
    inversePrimary: '#d0bcff',
    shadow: '#000000',
    scrim: '#000000',
    backdrop: 'rgba(50, 47, 55, 0.4)',
    elevation: {
      level0: 'transparent',
      level1: '#f7f2fa',
      level2: '#f2ecf8',
      level3: '#ece6f6',
      level4: '#eae4f5',
      level5: '#e6dff3',
    },
  },
  fonts: {
    labelSmall: {
      fontFamily: 'System',
      fontSize: 11,
      lineHeight: 16,
      fontWeight: '500',
      letterSpacing: 0.5,
    },
    labelMedium: {
      fontFamily: 'System',
      fontSize: 12,
      lineHeight: 16,
      fontWeight: '500',
      letterSpacing: 0.5,
    },
    labelLarge: {
      fontFamily: 'System',
      fontSize: 14,
      lineHeight: 20,
      fontWeight: '500',
      letterSpacing: 0.1,
    },
    bodySmall: {
      fontFamily: 'System',
      fontSize: 12,
      lineHeight: 16,
      fontWeight: '400',
      letterSpacing: 0.4,
    },
    bodyMedium: {
      fontFamily: 'System',
      fontSize: 14,
      lineHeight: 20,
      fontWeight: '400',
      letterSpacing: 0.25,
    },
    bodyLarge: {
      fontFamily: 'System',
      fontSize: 16,
      lineHeight: 24,
      fontWeight: '400',
      letterSpacing: 0.15,
    },
    titleSmall: {
      fontFamily: 'System',
      fontSize: 14,
      lineHeight: 20,
      fontWeight: '500',
      letterSpacing: 0.1,
    },
    titleMedium: {
      fontFamily: 'System',
      fontSize: 16,
      lineHeight: 24,
      fontWeight: '500',
      letterSpacing: 0.15,
    },
    titleLarge: {
      fontFamily: 'System',
      fontSize: 22,
      lineHeight: 28,
      fontWeight: '400',
      letterSpacing: 0,
    },
    headlineSmall: {
      fontFamily: 'System',
      fontSize: 24,
      lineHeight: 32,
      fontWeight: '400',
      letterSpacing: 0,
    },
    headlineMedium: {
      fontFamily: 'System',
      fontSize: 28,
      lineHeight: 36,
      fontWeight: '400',
      letterSpacing: 0,
    },
    headlineLarge: {
      fontFamily: 'System',
      fontSize: 32,
      lineHeight: 40,
      fontWeight: '400',
      letterSpacing: 0,
    },
    displaySmall: {
      fontFamily: 'System',
      fontSize: 36,
      lineHeight: 44,
      fontWeight: '400',
      letterSpacing: 0,
    },
    displayMedium: {
      fontFamily: 'System',
      fontSize: 45,
      lineHeight: 52,
      fontWeight: '400',
      letterSpacing: 0,
    },
    displayLarge: {
      fontFamily: 'System',
      fontSize: 57,
      lineHeight: 64,
      fontWeight: '400',
      letterSpacing: -0.25,
    },
    default: {
      fontFamily: 'System',
      fontWeight: '400',
      letterSpacing: 0.25,
    },
  },
  animation: {
    scale: 1.0,
  },
};
