export type UsageStatsByType = { color: number; button: number; image?: number; number?: number; dual_color?: number; [key: string]: number | undefined; }; export type UsageStats = { terms_total: number; attribute_taxonomies_configured: number; products_with_overrides: number; by_type: UsageStatsByType; }; function isPositiveCounter(value: number | undefined): boolean { return typeof value === "number" && Number.isFinite(value) && value > 0; } export function hasUsageStats(usageStats: UsageStats): boolean { return ( isPositiveCounter(usageStats.terms_total) || isPositiveCounter(usageStats.attribute_taxonomies_configured) || isPositiveCounter(usageStats.products_with_overrides) || Object.values(usageStats.by_type).some(isPositiveCounter) ); }