import 'package:guru_utils/ads/handler/ads_handler.dart';

import 'data/ads_model.dart';

/// Created by Haoyi on 5/6/21
///

mixin AdsDelegate on AdsLifecycleOwner {
  Stream<bool> get observableLoaded;

  bool get loaded;

  Future<AdCause> load() async {
    return AdCause.ignore;
  }

  Future hide() async {}

  Future<AdCause> show({required String scene, bool ignoreCheck = false}) async {
    return AdCause.ignore;
  }

  bool needReset() {
    return false;
  }

  Future<bool> reset() async {
    return false;
  }

  Future<AdState> getState();
}

mixin AuditAdsDelegate on AdsDelegate {}
