#import <Foundation/Foundation.h>

NS_ASSUME_NONNULL_BEGIN

/// 单个业务类型的预热资源集合。
@interface TQWarmupBizType : NSObject
@property (nonatomic, copy) NSString *warmupUrl;
@property (nonatomic, copy) NSArray<NSString *> *assets;
@end

/// `warmup-manifest.json` 数据模型（三端结构一致）。由前端构建产出，SDK 只读消费。
@interface TQWarmupManifest : NSObject
@property (nonatomic, copy) NSString *version;
@property (nonatomic, copy) NSArray<NSString *> *hosts;
@property (nonatomic, copy) NSDictionary<NSString *, TQWarmupBizType *> *bizTypes;
@property (nonatomic, copy, nullable) NSArray<NSString *> *menuBizTypes;

/// 从 JSON 数据解析；失败返回 nil（best-effort）。
+ (nullable TQWarmupManifest *)parse:(NSData *)data;
@end

NS_ASSUME_NONNULL_END
