// swift-interface-format-version: 1.0
// swift-compiler-version: Apple Swift version 5.9.2 (swiftlang-5.9.2.2.56 clang-1500.1.0.2.5)
// swift-module-flags: -target x86_64-apple-ios12.0-simulator -enable-objc-interop -enable-library-evolution -swift-version 5 -enforce-exclusivity=checked -O -module-name UnityAds
// swift-module-flags-ignorable: -enable-bare-slash-regex
import AVFAudio
import AVFoundation
import AdSupport
import AppTrackingTransparency
import AudioToolbox.AudioServices
import AudioToolbox
import CommonCrypto
import CoreMotion
import CoreTelephony
import CryptoKit
import Foundation
import Network
import QuartzCore
import StoreKit
import Swift
import SystemConfiguration
import UIKit
@_exported import UnityAds
import WebKit
import _Concurrency
import _StringProcessing
import _SwiftConcurrencyShims
import zlib
@_hasMissingDesignatedInitializers @objc final public class SDKConfigurationStorageObjcBridge : NSObject {
  @objc final public var configDictionary: [String : Any] {
    @objc get
  }
  @objc final public func saveSDKConfig(from dictionary: [String : Any])
  @objc deinit
}
extension Data {
  public var isGzipped: Bool {
    get
  }
}
extension Dictionary where Key == Swift.String, Value == Any {
  @inlinable public func compactMapKeys<T>(_ transform: (Key) throws -> T?) rethrows -> [T : Value] where T : Swift.Hashable {
        try reduce(into: [:]) { partialResult, element in
            let newKey = try transform(element.key)
            guard let key = newKey else { return }
            partialResult[key] = element.value
        }
    }
}
extension Optional {
  public func filter(if predicate: (Wrapped) -> Bool) -> Wrapped?
  public func filter(if predicate: (Wrapped) -> Bool, default: Wrapped) -> Wrapped?
  @discardableResult
  public func `do`(_ work: (Wrapped) -> Void) -> Wrapped?
  @discardableResult
  public func onNone(_ work: () -> Void) -> Wrapped?
  @discardableResult
  public func debug(message: String? = nil) -> Wrapped?
}
extension Result {
  @discardableResult
  @inlinable public func `do`(_ work: (Success) -> Void) -> Swift.Result<Success, Failure> {
        if case .success(let val) = self {
            work(val)
        }
        return self
    }
  @discardableResult
  @inlinable public func onFailure(_ work: (Failure) -> Void) -> Swift.Result<Success, Failure> {
        if case .failure(let err) = self {
            work(err)
        }
        return self
    }
  @inlinable public func sink(_ completion: @escaping (`Self`) -> Void) {
        completion(self)
    }
  @inlinable public func sink(_ completion: ((`Self`) -> Void)?) {
        completion?(self)
    }
  @inlinable public func recover(_ transform: (Failure) -> Success) -> Swift.Result<Success, Failure> {
        if case .failure(let err) = self {
            return .success(transform(err))
        }
        return self
    }
  @inlinable public func getValue(_ transform: (Failure) -> Success) -> Success {
        switch self {
        case .success(let success): return success
        case .failure( let error): return transform(error)
        }
    }
}
extension Result where Failure == any Swift.Error {
  @inlinable public func tryMap<NewSuccess>(_ transform: (Success) throws -> NewSuccess) -> Result<NewSuccess, Failure> {
        switch self {
        case let .success(val):
            do {
                return try .success(transform(val))
            } catch {
                return .failure(error)
            }

        case let .failure(err):
            return .failure(err)
        }
    }
  @inlinable public func tryFlatMap<NewSuccess>(_ transform: (Success) throws -> Result<NewSuccess, Failure>) -> Result<NewSuccess, Failure> {
        switch self {
        case let .success(val):
            do {
                return try transform(val)
            } catch {
                return .failure(error)
            }

        case let .failure(err):
            return .failure(err)
        }
    }
}
@_inheritsConvenienceInitializers @objc final public class LoggerWrapper : NSObject {
  @objc final public func log(_ message: String)
  @objc override dynamic public init()
  @objc deinit
}
@objc @_inheritsConvenienceInitializers @_hasMissingDesignatedInitializers public class UnityAds : NSObject {
  @objc public static func initialize(_ gameId: String)
  @objc public static func initialize(_ gameId: String, initializationDelegate: UnityAdsInitializationDelegate?)
  @objc public static func initialize(_ gameId: String, testMode: Bool)
  @objc public static func initialize(_ gameId: String, testMode: Bool, initializationDelegate: UnityAdsInitializationDelegate?)
  @objc public static func load(_ placementId: String)
  @objc public static func load(_ placementId: String, loadDelegate: UnityAdsLoadDelegate?)
  @objc public static func load(_ placementId: String, options: UADSLoadOptions, loadDelegate: UnityAdsLoadDelegate?)
  @objc public static func show(_ viewController: UIViewController, placementId: String, showDelegate: UnityAdsShowDelegate?)
  @objc public static func show(_ viewController: UIViewController, placementId: String, options: UADSShowOptions, showDelegate: UnityAdsShowDelegate?)
  @objc public static func getDebugMode() -> Bool
  @objc public static func setDebugMode(_ enableDebugMode: Bool)
  @objc public static func isSupported() -> Bool
  @objc public static func getVersion() -> String
  @objc public static func isInitialized() -> Bool
  @objc public static func getToken() -> String?
  @objc public static func getToken(_ completion: @escaping (String?) -> Void)
  @objc deinit
}
public protocol UnityError : Swift.Error {
  var code: Int { get }
  var message: String { get }
  var description: String? { get }
}
