import { Color } from '@ionic/core'; /** * Origin point of the glow. * Maps to a CSS background-position value. */ export type GlowPosition = 'top-left' | 'top' | 'top-right' | 'left' | 'center' | 'right' | 'bottom-left' | 'bottom' | 'bottom-right'; /** Radius preset of the glow halo. */ export type GlowSize = 'small' | 'medium' | 'large' | 'xlarge'; /** Alpha multiplier applied to the glow color(s). */ export type GlowIntensity = 'subtle' | 'medium' | 'strong'; /** * Gradient shape: * - `radial` — circular halo at `position` (default; matches the showcase / AWS look) * - `linear` — directional sweep from `position` outwards (good for full-band backdrops) */ export type GlowShape = 'radial' | 'linear'; /** * Configuration for `val-glow`. */ export interface GlowMetadata { /** Primary Ionic color of the glow. Default `'primary'`. */ color?: Color; /** * Optional second Ionic color for two-tone gradients. When set, the gradient * blends `color` → `secondaryColor` → transparent. */ secondaryColor?: Color; /** Where the halo originates. Default `'center'`. */ position?: GlowPosition; /** Halo radius preset. Default `'large'`. */ size?: GlowSize; /** Opacity preset of the color stops. Default `'medium'`. */ intensity?: GlowIntensity; /** Gradient shape. Default `'radial'`. */ shape?: GlowShape; /** Subtle drifting animation. Default `false`. */ animated?: boolean; /** Custom CSS background-blend-mode for the glow layer. Optional advanced tweak. */ blendMode?: 'normal' | 'multiply' | 'screen' | 'overlay' | 'soft-light' | 'hard-light' | 'color-dodge'; }