
import * as _mui_material_styles0 from "@mui/material/styles";

//#region src/hooks/useThemeColors.d.ts

/**
 * Theme-aware color utility hook
 *
 * Returns a consistent set of colors based on the current theme mode.
 *
 * **Dual-Context Support:**
 * This hook works in two contexts:
 * 1. **With RecceProvider** (recce-cloud-infra): Uses ThemeContext for theme detection
 * 2. **Without RecceProvider** (Recce OSS with next-themes): Falls back to useIsDark
 *    which uses DOM class detection (.dark on <html>)
 *
 * This allows @datarecce/ui components to work in both environments without
 * requiring the host application to wrap everything in RecceProvider.
 *
 * @example
 * ```tsx
 * function MyComponent() {
 *   const { isDark, background, text, border } = useThemeColors();
 *
 *   return (
 *     <Box sx={{
 *       bgcolor: background.paper,
 *       color: text.primary,
 *       borderColor: border.default,
 *     }}>
 *       Content
 *     </Box>
 *   );
 * }
 * ```
 */
declare function useThemeColors(): {
  /** Whether the current theme is dark mode */
  isDark: boolean;
  /** MUI theme object for direct access when needed */
  theme: _mui_material_styles0.Theme;
  /** Background colors */
  background: {
    /** Default page background */
    default: "#FFFFFF" | "#171717";
    /** Paper/card background */
    paper: "#FFFFFF" | "#262626";
    /** Subtle background for slight elevation (e.g., hover states, inputs) */
    subtle: "#FAFAFA" | "#262626";
    /** Emphasized background for higher contrast areas */
    emphasized: "#F5F5F5" | "#404040";
  };
  /** Text colors */
  text: {
    /** Primary text color */
    primary: "#FAFAFA" | "#171717";
    /** Secondary/muted text color */
    secondary: "#A3A3A3" | "#525252";
    /** Disabled text color */
    disabled: "#A3A3A3" | "#737373";
    /** Inverted text (for use on dark backgrounds in light mode, etc.) */
    inverted: "#FAFAFA" | "#171717";
  };
  /** Border colors */
  border: {
    /** Light border for subtle separations */
    light: "#E5E5E5" | "#404040";
    /** Default border color */
    default: "#D4D4D4" | "#525252";
    /** Strong border for emphasis */
    strong: "#A3A3A3" | "#737373";
  };
  /** Status/semantic colors */
  status: {
    /** Added/success backgrounds */
    added: {
      bg: "#DCFCE7" | "#14532D";
      text: "#FAFAFA" | "#171717";
    };
    /** Removed/error backgrounds */
    removed: {
      bg: "#FECACA" | "#450A0A";
      text: "#FAFAFA" | "#171717";
    };
    /** Modified/warning backgrounds */
    modified: {
      bg: "#FEF3C7" | "#713F12";
      text: "#FAFAFA" | "#171717";
    };
  };
  /** Interactive element colors */
  interactive: {
    /** Hover state background */
    hover: "#F5F5F5" | "#404040";
    /** Active/pressed state background */
    active: "#E5E5E5" | "#525252";
    /** Focus ring color */
    focus: "#3182CE";
  };
};
type ThemeColors = ReturnType<typeof useThemeColors>;
//#endregion
export { useThemeColors as n, ThemeColors as t };
//# sourceMappingURL=useThemeColors-DG_7-mWH.d.ts.map