namespace LanMountainDesktop.PluginSdk; /// /// This is the runtime snapshot shape consumed by plugins inside the host process. /// It is intentionally distinct from the wire DTO with the same name in /// LanMountainDesktop.PluginIsolation.Contracts.PluginAppearanceSnapshot. /// public sealed record PluginMaterialSurfaceSnapshot( string BackgroundColor, string BorderColor, double BlurRadius, double Opacity); /// /// Runtime-facing appearance snapshot for plugins. This is not the same contract as the /// wire-format snapshot in LanMountainDesktop.PluginIsolation.Contracts, even though the /// type name matches. /// public sealed record PluginAppearanceSnapshot( PluginCornerRadiusTokens CornerRadiusTokens, string ThemeVariant, string? AccentColor = null, string? SeedColor = null, string? ColorSource = null, string? SystemMaterialMode = null, IReadOnlyDictionary? ColorRoles = null, IReadOnlyDictionary? MaterialSurfaces = null, IReadOnlyList? WallpaperSeedCandidates = null);