// ── ByteLystPlatformSDK ────────────────────────────────────── // Shared Swift platform client for all ByteLyst iOS/watchOS/macOS apps. // Re-exports all public types via their respective source files. // // Usage in product apps: // import ByteLystPlatformSDK // // let config = BLPlatformConfig(productId: "peakpulse", baseURL: "...", bundleId: "com.saravana.peakpulse") // let client = BLPlatformClient(config: config) // let telemetry = BLTelemetryClient(config: config, client: client) // let auth = BLAuthClient(config: config, client: client) // let flags = BLFeatureFlagClient(config: config, client: client) // let blob = BLBlobClient(config: config, client: client) // let license = BLLicenseClient(config: config, client: client) // let killSwitch = BLKillSwitchClient(config: config) // let crashReporter = BLCrashReporter(productId: config.productId) // // Components (13 source files): // - BLPlatformConfig — Product-specific config (productId, baseURL, bundleId, appGroupId) // - BLPlatformClient — Generic HTTP client (auth injection, x-request-id, fire-and-forget) // - BLKeychain — Keychain CRUD (configurable service string) // - BLTelemetryClient — Telemetry event queue + batch flush // - BLAuthClient — Full auth operations (login, register, refresh, password ops) // - BLFeatureFlagClient — Feature flag polling from /api/flags/poll // - BLSyncEngine — Generic offline-first sync with BLSyncAdapter protocol // - BLBlobClient — Azure Blob Storage upload via SAS tokens // - BLKillSwitchClient — Kill switch check from platform-service // - BLLicenseClient — License key activation via platform-service // - BLBiometricAuth — Face ID / Touch ID wrapper // - BLCrashReporter — MetricKit crash and performance reporting // - BLAuditLogger — Local rotating JSON audit log // All types are exported via their respective files. // This file exists for module-level documentation only.