/**
 * Theme token definitions for Smart Canvas
 * Inspired by macOS design language and react.email aesthetics
 */
import type { z } from 'zod';
import type { CanvasElementConfigZ, ContentElementConfigZ, LauncherElementConfigZ, NotificationElementConfigZ, OverlayElementConfigZ, TileElementConfigZ } from '../config/schema';
export type CanvasElementConfig = z.infer<typeof CanvasElementConfigZ>;
export type LauncherElementConfig = z.infer<typeof LauncherElementConfigZ>;
export type TileElementConfig = z.infer<typeof TileElementConfigZ>;
export type OverlayElementConfig = z.infer<typeof OverlayElementConfigZ>;
export type NotificationElementConfig = z.infer<typeof NotificationElementConfigZ>;
export type ContentElementConfig = z.infer<typeof ContentElementConfigZ>;
export type { CanvasThemeConfig } from '../types';
/**
 * Complete theme token interface
 * @deprecated Use CanvasThemeConfig instead
 */
export interface CanvasThemeTokens {
    colorPrimary: string;
    colorPrimaryHover: string;
    colorPrimaryMuted: string;
    colorBackground: string;
    colorBackgroundElevated: string;
    colorBackgroundSubtle: string;
    colorSurface: string;
    colorSurfaceHover: string;
    colorText: string;
    colorTextSecondary: string;
    colorTextMuted: string;
    colorTextInverse: string;
    colorBorder: string;
    colorBorderSubtle: string;
    colorSuccess: string;
    colorSuccessMuted: string;
    colorWarning: string;
    colorWarningMuted: string;
    colorError: string;
    colorErrorMuted: string;
    colorInfo: string;
    colorInfoMuted: string;
    colorNotification: string;
    colorNotificationMuted: string;
    glassBackground: string;
    glassBackgroundHover: string;
    glassBorder: string;
    glassBlur: string;
    glassSaturate: string;
    fontFamily: string;
    fontFamilyMono: string;
    fontSizeXs: string;
    fontSizeSm: string;
    fontSizeMd: string;
    fontSizeLg: string;
    fontSizeXl: string;
    fontSizeXxl: string;
    fontWeightNormal: string;
    fontWeightMedium: string;
    fontWeightSemibold: string;
    fontWeightBold: string;
    lineHeightTight: string;
    lineHeightNormal: string;
    lineHeightRelaxed: string;
    spacingXs: string;
    spacingSm: string;
    spacingMd: string;
    spacingLg: string;
    spacingXl: string;
    borderRadiusSm: string;
    borderRadiusMd: string;
    borderRadiusLg: string;
    borderRadiusXl: string;
    borderRadiusFull: string;
    shadowSm: string;
    shadowMd: string;
    shadowLg: string;
    shadowXl: string;
    backdropBlur: string;
    backdropSaturate: string;
    transitionFast: string;
    transitionNormal: string;
    transitionSlow: string;
}
/**
 * Theme extracted from host page CSS variables
 * @deprecated Use CanvasThemeConfig instead
 */
export interface ExtractedTheme {
    primaryColor: string | null;
    backgroundColor: string | null;
    surfaceColor: string | null;
    textColor: string | null;
    textSecondaryColor: string | null;
    borderColor: string | null;
    borderRadius: string | null;
    fontFamily: string | null;
    cssVariables: Record<string, string>;
}
/**
 * Theme mode
 */
export type ThemeMode = 'light' | 'dark' | 'auto';
/**
 * User-provided theme overrides via appearance config
 */
export interface ThemeAppearance {
    mode?: ThemeMode;
    variables?: Partial<Record<`--sc-${string}`, string>>;
    baseTheme?: 'system' | 'light' | 'dark';
}
