#import <Foundation/Foundation.h>
#import <WebKit/WebKit.h>
#if __has_include(<TencentQianWebView/TQWebViewConfig.h>)
#import <TencentQianWebView/TQWebViewConfig.h>
#else
#import "TQWebViewConfig.h"
#endif

NS_ASSUME_NONNULL_BEGIN

/// 工厂方法:为 SDK 内 WKWebView 创建标准 ``WKWebViewConfiguration``。
///
/// **关键配置**:
/// - `processPool` = `TQWebViewShared.processPool`(共享 cookie / 第三方 cookie)
/// - `allowsInlineMediaPlayback` = YES(人脸核身活体检测要求 video 内联播放)
/// - `mediaTypesRequiringUserActionForPlayback` = WKAudiovisualMediaTypeNone
/// - `WKWebpagePreferences.allowsContentJavaScript` = YES(iOS 14+ 推荐写法)
@interface TQWKConfigurationFactory : NSObject

+ (WKWebViewConfiguration *)makeConfiguration:(TQWebViewConfig *)config;

/// UA 参数重载：供预热池按 `TQPrewarmConfig` 的 UA 配置离屏创建实例，
/// 保证 `warmupUrl` 请求的 UA 与 `open()` 的 config UA 一致（缓存命中 + 复用门控）。
+ (WKWebViewConfiguration *)makeConfigurationWithInjectUserAgent:(BOOL)injectUserAgent
                                                 userAgentExtra:(NSString *)userAgentExtra;

@end

NS_ASSUME_NONNULL_END
