@interface ATInterstitialCustomEvent : ATAdCustomEvent
/// Callback to the developer when the ad load is complete
/// @param interstitialAd - Ad object
/// @param adExtra - Extra data
- (void)trackInterstitialAdLoaded:(id)interstitialAd adExtra:(NSDictionary *_Nullable)adExtra;
/// Callback to the developer when the ad is rendered successfully (asset download successful)
- (void)trackInterstitialAdRenderSuccess:(id)interstitialAd adExtra:(NSDictionary *_Nullable)adExtra;
/// Callback to the developer when ad data is loaded successfully
- (void)trackInterstitialAdDataLoadSuccess:(id)interstitialAd adExtra:(NSDictionary *_Nullable)adExtra;
/// Callback to the developer when ad loading fails
/// @param error - Error information
- (void)trackInterstitialAdLoadFailed:(NSError *)error;
/// Callback to the developer when the ad is displayed
- (void)trackInterstitialAdShow;
/// Callback to the developer when ad display fails
/// @param error - Display error information
- (void)trackInterstitialAdShowFailed:(NSError *)error;
/// Callback to the developer when playback starts
- (void)trackInterstitialAdVideoStart;
/// Callback to the developer when playback ends
- (void)trackInterstitialAdVideoEnd;
/// Callback to the developer when playback fails
/// @param error - Playback error information
- (void)trackInterstitialAdDidFailToPlayVideo:(NSError *)error;
- (void)trackInterstitialAdDidFailToPlayVideo:(NSError *)error extra:(NSDictionary *_Nullable)extraDic;
/// Callback to the developer when the ad is clicked
- (void)trackInterstitialAdClick;
/// Callback to the developer when the ad is clicked
- (void)trackInterstitialAdClickWithClickType:(ATOfferClickAdType)clickType;
/// Callback to the developer when the ad is closed
- (void)trackInterstitialAdClose:(NSDictionary *_Nullable)extra;
/// Callback to the developer when the ad landing page is closed
- (void)trackInterstitialAdLPClose:(NSDictionary *_Nullable)extra;
/// Whether the ad click jump is in Deeplink form
/// @param success - Success status
- (void)trackInterstitialAdDeeplinkOrJumpResult:(BOOL)success;
- (ATNativeADSourceType)adSourceType;
- (instancetype)initWithInfo:(NSDictionary *)serverInfo localInfo:(NSDictionary *)localInfo;
@property (nonatomic, readonly) NSString *unitID;
@property (nonatomic, assign) NSInteger priorityIndex;
@property (nonatomic, strong) id _Nullable protectLifeCycleObject;
@property (nonatomic, strong, nullable) ATInterstitial *interstitial;
@property (nonatomic, weak) id<ATInterstitialDelegate> delegate;
@end