LicenseTier.h header

#include <ew/core/LicenseTier.h>

Namespace ew::core

Enumerations

enum class LicenseTier { Free, Pro, TeamStudio }

A license tier in the freemium model (DESIGN.md section 4.19; BUSINESS_DECISIONS.md section 1). The tiers are capability-ordered — each higher tier unlocks everything the lower ones do plus its own additions — so a numeric comparison of the enumerators decides access (see TieredEntitlements). The free/paid split is drawn at the local-vs-networked-service line: Free is the entire local, single-user application; the paid tiers add the networked services that cost to operate. Serialized as a stable lowercase token; the enumerator order is significant and must stay lowest-to-highest.

Functions

std::optional< LicenseTier > ew::core::licenseTierFromToken(QStringView token)

Parses a license tier from its serialization token; std::nullopt if unrecognized. Callers treat an unrecognized or absent tier as LicenseTier::Free, so an unlicensed build stays fully usable.

QString ew::core::toToken(LicenseTier tier)

Returns the stable serialization token for tier (e.g. "free").