Guides and Sample Code Developer
Search

AVFoundation Changes for Swift

AVFoundation

Declaration
From
class AVAssetImageGenerator : NSObject {
    convenience init()
    var asset: AVAsset { get }
    var appliesPreferredTrackTransform: Bool
    var maximumSize: CGSize
    var apertureMode: String?
    @NSCopying var videoComposition: AVVideoComposition?
    var customVideoCompositor: AVVideoCompositing? { get }
    var requestedTimeToleranceBefore: CMTime
    var requestedTimeToleranceAfter: CMTime
    convenience init(asset asset: AVAsset)
    class func withAsset(_ asset: AVAsset) -> Self
    init(asset asset: AVAsset)
    func copyCGImage(at requestedTime: CMTime, actualTime actualTime: UnsafeMutablePointer<CMTime>?) throws -> CGImage
    func generateCGImagesAsynchronously(forTimes requestedTimes: [NSValue], completionHandler handler: AVFoundation.AVAssetImageGeneratorCompletionHandler)
    func cancelAllCGImageGeneration()
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension AVAssetImageGenerator : CVarArg {
}
extension AVAssetImageGenerator : Equatable, Hashable {
    var hashValue: Int { get }
}
To
class AVAssetImageGenerator : NSObject {
    convenience init()
    var asset: AVAsset { get }
    var appliesPreferredTrackTransform: Bool
    var maximumSize: CGSize
    var apertureMode: String?
    @NSCopying var videoComposition: AVVideoComposition?
    var customVideoCompositor: AVVideoCompositing? { get }
    var requestedTimeToleranceBefore: CMTime
    var requestedTimeToleranceAfter: CMTime
    convenience init(asset asset: AVAsset)
    class func withAsset(_ asset: AVAsset) -> Self
    init(asset asset: AVAsset)
    func copyCGImage(at requestedTime: CMTime, actualTime actualTime: UnsafeMutablePointer<CMTime>?) throws -> CGImage
    func generateCGImagesAsynchronously(forTimes requestedTimes: [NSValue], completionHandler handler: @escaping AVFoundation.AVAssetImageGeneratorCompletionHandler)
    func cancelAllCGImageGeneration()
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension AVAssetImageGenerator : CVarArg {
}
extension AVAssetImageGenerator : Equatable, Hashable {
    var hashValue: Int { get }
}

Declaration
From
func generateCGImagesAsynchronously(forTimes requestedTimes: [NSValue], completionHandler handler: AVFoundation.AVAssetImageGeneratorCompletionHandler)
To
func generateCGImagesAsynchronously(forTimes requestedTimes: [NSValue], completionHandler handler: @escaping AVFoundation.AVAssetImageGeneratorCompletionHandler)

Declaration
From
protocol AVAsynchronousKeyValueLoading {
    func statusOfValue(forKey key: String, error outError: NSErrorPointer) -> AVKeyValueStatus
    func loadValuesAsynchronously(forKeys keys: [String], completionHandler handler: (@escaping () -> Swift.Void)? = nil)
}
To
protocol AVAsynchronousKeyValueLoading {
    func statusOfValue(forKey key: String, error outError: NSErrorPointer) -> AVKeyValueStatus
    func loadValuesAsynchronously(forKeys keys: [String], completionHandler handler: (() -> Swift.Void)? = nil)
}

Declaration
From
func loadValuesAsynchronously(forKeys keys: [String], completionHandler handler: (@escaping () -> Swift.Void)? = nil)
To
func loadValuesAsynchronously(forKeys keys: [String], completionHandler handler: (() -> Swift.Void)? = nil)

Declaration
From
class AVAudioConverter : NSObject {
    init(from fromFormat: AVAudioFormat, to toFormat: AVAudioFormat)
    func reset()
    var inputFormat: AVAudioFormat { get }
    var outputFormat: AVAudioFormat { get }
    var channelMap: [NSNumber]
    var magicCookie: Data?
    var downmix: Bool
    var dither: Bool
    var sampleRateConverterQuality: Int
    var sampleRateConverterAlgorithm: String
    var primeMethod: AVAudioConverterPrimeMethod
    var primeInfo: AVAudioConverterPrimeInfo
    func convert(to outputBuffer: AVAudioPCMBuffer, from inputBuffer: AVAudioPCMBuffer) throws
    func convert(to outputBuffer: AVAudioBuffer, error outError: NSErrorPointer, withInputFrom inputBlock: AVFoundation.AVAudioConverterInputBlock) -> AVAudioConverterOutputStatus
    var bitRate: Int
    var bitRateStrategy: String?
    var maximumOutputPacketSize: Int { get }
    var availableEncodeBitRates: [NSNumber]? { get }
    var applicableEncodeBitRates: [NSNumber]? { get }
    var availableEncodeSampleRates: [NSNumber]? { get }
    var applicableEncodeSampleRates: [NSNumber]? { get }
    var availableEncodeChannelLayoutTags: [NSNumber]? { get }
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension AVAudioConverter : CVarArg {
}
extension AVAudioConverter : Equatable, Hashable {
    var hashValue: Int { get }
}
extension AVAudioConverter {
    var bitRate: Int
    var bitRateStrategy: String?
    var maximumOutputPacketSize: Int { get }
    var availableEncodeBitRates: [NSNumber]? { get }
    var applicableEncodeBitRates: [NSNumber]? { get }
    var availableEncodeSampleRates: [NSNumber]? { get }
    var applicableEncodeSampleRates: [NSNumber]? { get }
    var availableEncodeChannelLayoutTags: [NSNumber]? { get }
}
To
class AVAudioConverter : NSObject {
    init(from fromFormat: AVAudioFormat, to toFormat: AVAudioFormat)
    func reset()
    var inputFormat: AVAudioFormat { get }
    var outputFormat: AVAudioFormat { get }
    var channelMap: [NSNumber]
    var magicCookie: Data?
    var downmix: Bool
    var dither: Bool
    var sampleRateConverterQuality: Int
    var sampleRateConverterAlgorithm: String
    var primeMethod: AVAudioConverterPrimeMethod
    var primeInfo: AVAudioConverterPrimeInfo
    func convert(to outputBuffer: AVAudioPCMBuffer, from inputBuffer: AVAudioPCMBuffer) throws
    func convert(to outputBuffer: AVAudioBuffer, error outError: NSErrorPointer, withInputFrom inputBlock: @escaping AVFoundation.AVAudioConverterInputBlock) -> AVAudioConverterOutputStatus
    var bitRate: Int
    var bitRateStrategy: String?
    var maximumOutputPacketSize: Int { get }
    var availableEncodeBitRates: [NSNumber]? { get }
    var applicableEncodeBitRates: [NSNumber]? { get }
    var availableEncodeSampleRates: [NSNumber]? { get }
    var applicableEncodeSampleRates: [NSNumber]? { get }
    var availableEncodeChannelLayoutTags: [NSNumber]? { get }
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension AVAudioConverter : CVarArg {
}
extension AVAudioConverter : Equatable, Hashable {
    var hashValue: Int { get }
}
extension AVAudioConverter {
    var bitRate: Int
    var bitRateStrategy: String?
    var maximumOutputPacketSize: Int { get }
    var availableEncodeBitRates: [NSNumber]? { get }
    var applicableEncodeBitRates: [NSNumber]? { get }
    var availableEncodeSampleRates: [NSNumber]? { get }
    var applicableEncodeSampleRates: [NSNumber]? { get }
    var availableEncodeChannelLayoutTags: [NSNumber]? { get }
}

Declaration
From
func convert(to outputBuffer: AVAudioBuffer, error outError: NSErrorPointer, withInputFrom inputBlock: AVFoundation.AVAudioConverterInputBlock) -> AVAudioConverterOutputStatus
To
func convert(to outputBuffer: AVAudioBuffer, error outError: NSErrorPointer, withInputFrom inputBlock: @escaping AVFoundation.AVAudioConverterInputBlock) -> AVAudioConverterOutputStatus

Modified AVAudioNode
Declaration
From
class AVAudioNode : NSObject {
    func reset()
    func inputFormat(forBus bus: AVAudioNodeBus) -> AVAudioFormat
    func outputFormat(forBus bus: AVAudioNodeBus) -> AVAudioFormat
    func name(forInputBus bus: AVAudioNodeBus) -> String
    func name(forOutputBus bus: AVAudioNodeBus) -> String
    func installTap(onBus bus: AVAudioNodeBus, bufferSize bufferSize: AVAudioFrameCount, format format: AVAudioFormat?, block tapBlock: AVFoundation.AVAudioNodeTapBlock)
    func removeTap(onBus bus: AVAudioNodeBus)
    var engine: AVAudioEngine? { get }
    var numberOfInputs: Int { get }
    var numberOfOutputs: Int { get }
    var lastRenderTime: AVAudioTime? { get }
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension AVAudioNode : CVarArg {
}
extension AVAudioNode : Equatable, Hashable {
    var hashValue: Int { get }
}
To
class AVAudioNode : NSObject {
    func reset()
    func inputFormat(forBus bus: AVAudioNodeBus) -> AVAudioFormat
    func outputFormat(forBus bus: AVAudioNodeBus) -> AVAudioFormat
    func name(forInputBus bus: AVAudioNodeBus) -> String
    func name(forOutputBus bus: AVAudioNodeBus) -> String
    func installTap(onBus bus: AVAudioNodeBus, bufferSize bufferSize: AVAudioFrameCount, format format: AVAudioFormat?, block tapBlock: @escaping AVFoundation.AVAudioNodeTapBlock)
    func removeTap(onBus bus: AVAudioNodeBus)
    var engine: AVAudioEngine? { get }
    var numberOfInputs: Int { get }
    var numberOfOutputs: Int { get }
    var lastRenderTime: AVAudioTime? { get }
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension AVAudioNode : CVarArg {
}
extension AVAudioNode : Equatable, Hashable {
    var hashValue: Int { get }
}

Declaration
From
func installTap(onBus bus: AVAudioNodeBus, bufferSize bufferSize: AVAudioFrameCount, format format: AVAudioFormat?, block tapBlock: AVFoundation.AVAudioNodeTapBlock)
To
func installTap(onBus bus: AVAudioNodeBus, bufferSize bufferSize: AVAudioFrameCount, format format: AVAudioFormat?, block tapBlock: @escaping AVFoundation.AVAudioNodeTapBlock)

Declaration
From
class AVAudioSession : NSObject {
    class func sharedInstance() -> AVAudioSession
    func setActive(_ active: Bool) throws
    func setActive(_ active: Bool, with options: AVAudioSessionSetActiveOptions = []) throws
    var availableCategories: [String] { get }
    func setCategory(_ category: String) throws
    func setCategory(_ category: String, with options: AVAudioSessionCategoryOptions = []) throws
    func setCategory(_ category: String, mode mode: String, options options: AVAudioSessionCategoryOptions = []) throws
    var category: String { get }
    func recordPermission() -> AVAudioSessionRecordPermission
    func requestRecordPermission(_ response: AVFoundation.PermissionBlock)
    var categoryOptions: AVAudioSessionCategoryOptions { get }
    var availableModes: [String] { get }
    func setMode(_ mode: String) throws
    var mode: String { get }
    func overrideOutputAudioPort(_ portOverride: AVAudioSessionPortOverride) throws
    var isOtherAudioPlaying: Bool { get }
    var secondaryAudioShouldBeSilencedHint: Bool { get }
    var currentRoute: AVAudioSessionRouteDescription { get }
    func setPreferredInput(_ inPort: AVAudioSessionPortDescription?) throws
    var preferredInput: AVAudioSessionPortDescription? { get }
    var availableInputs: [AVAudioSessionPortDescription]? { get }
    unowned(unsafe) var delegate: AVAudioSessionDelegate?
    func setActive(_ active: Bool, withFlags flags: Int) throws
    var inputIsAvailable: Bool { get }
    var currentHardwareSampleRate: Double { get }
    var currentHardwareInputNumberOfChannels: Int { get }
    var currentHardwareOutputNumberOfChannels: Int { get }
    func setPreferredHardwareSampleRate(_ sampleRate: Double) throws
    var preferredHardwareSampleRate: Double { get }
    func setPreferredSampleRate(_ sampleRate: Double) throws
    var preferredSampleRate: Double { get }
    func setPreferredIOBufferDuration(_ duration: TimeInterval) throws
    var preferredIOBufferDuration: TimeInterval { get }
    func setPreferredInputNumberOfChannels(_ count: Int) throws
    var preferredInputNumberOfChannels: Int { get }
    func setPreferredOutputNumberOfChannels(_ count: Int) throws
    var preferredOutputNumberOfChannels: Int { get }
    var maximumInputNumberOfChannels: Int { get }
    var maximumOutputNumberOfChannels: Int { get }
    func setInputGain(_ gain: Float) throws
    var inputGain: Float { get }
    var isInputGainSettable: Bool { get }
    var isInputAvailable: Bool { get }
    var inputDataSources: [AVAudioSessionDataSourceDescription]? { get }
    var inputDataSource: AVAudioSessionDataSourceDescription? { get }
    func setInputDataSource(_ dataSource: AVAudioSessionDataSourceDescription?) throws
    var outputDataSources: [AVAudioSessionDataSourceDescription]? { get }
    var outputDataSource: AVAudioSessionDataSourceDescription? { get }
    func setOutputDataSource(_ dataSource: AVAudioSessionDataSourceDescription?) throws
    var sampleRate: Double { get }
    var inputNumberOfChannels: Int { get }
    var outputNumberOfChannels: Int { get }
    var outputVolume: Float { get }
    var inputLatency: TimeInterval { get }
    var outputLatency: TimeInterval { get }
    var ioBufferDuration: TimeInterval { get }
    func setAggregatedIOPreference(_ inIOType: AVAudioSessionIOType) throws
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension AVAudioSession : CVarArg {
}
extension AVAudioSession : Equatable, Hashable {
    var hashValue: Int { get }
}
extension AVAudioSession {
    func setPreferredSampleRate(_ sampleRate: Double) throws
    var preferredSampleRate: Double { get }
    func setPreferredIOBufferDuration(_ duration: TimeInterval) throws
    var preferredIOBufferDuration: TimeInterval { get }
    func setPreferredInputNumberOfChannels(_ count: Int) throws
    var preferredInputNumberOfChannels: Int { get }
    func setPreferredOutputNumberOfChannels(_ count: Int) throws
    var preferredOutputNumberOfChannels: Int { get }
    var maximumInputNumberOfChannels: Int { get }
    var maximumOutputNumberOfChannels: Int { get }
    func setInputGain(_ gain: Float) throws
    var inputGain: Float { get }
    var isInputGainSettable: Bool { get }
    var isInputAvailable: Bool { get }
    var inputDataSources: [AVAudioSessionDataSourceDescription]? { get }
    var inputDataSource: AVAudioSessionDataSourceDescription? { get }
    func setInputDataSource(_ dataSource: AVAudioSessionDataSourceDescription?) throws
    var outputDataSources: [AVAudioSessionDataSourceDescription]? { get }
    var outputDataSource: AVAudioSessionDataSourceDescription? { get }
    func setOutputDataSource(_ dataSource: AVAudioSessionDataSourceDescription?) throws
    var sampleRate: Double { get }
    var inputNumberOfChannels: Int { get }
    var outputNumberOfChannels: Int { get }
    var outputVolume: Float { get }
    var inputLatency: TimeInterval { get }
    var outputLatency: TimeInterval { get }
    var ioBufferDuration: TimeInterval { get }
    func setAggregatedIOPreference(_ inIOType: AVAudioSessionIOType) throws
}
extension AVAudioSession {
    unowned(unsafe) var delegate: AVAudioSessionDelegate?
    func setActive(_ active: Bool, withFlags flags: Int) throws
    var inputIsAvailable: Bool { get }
    var currentHardwareSampleRate: Double { get }
    var currentHardwareInputNumberOfChannels: Int { get }
    var currentHardwareOutputNumberOfChannels: Int { get }
    func setPreferredHardwareSampleRate(_ sampleRate: Double) throws
    var preferredHardwareSampleRate: Double { get }
}
To
class AVAudioSession : NSObject {
    class func sharedInstance() -> AVAudioSession
    func setActive(_ active: Bool) throws
    func setActive(_ active: Bool, with options: AVAudioSessionSetActiveOptions = []) throws
    var availableCategories: [String] { get }
    func setCategory(_ category: String) throws
    func setCategory(_ category: String, with options: AVAudioSessionCategoryOptions = []) throws
    func setCategory(_ category: String, mode mode: String, options options: AVAudioSessionCategoryOptions = []) throws
    var category: String { get }
    func recordPermission() -> AVAudioSessionRecordPermission
    func requestRecordPermission(_ response: @escaping AVFoundation.PermissionBlock)
    var categoryOptions: AVAudioSessionCategoryOptions { get }
    var availableModes: [String] { get }
    func setMode(_ mode: String) throws
    var mode: String { get }
    func overrideOutputAudioPort(_ portOverride: AVAudioSessionPortOverride) throws
    var isOtherAudioPlaying: Bool { get }
    var secondaryAudioShouldBeSilencedHint: Bool { get }
    var currentRoute: AVAudioSessionRouteDescription { get }
    func setPreferredInput(_ inPort: AVAudioSessionPortDescription?) throws
    var preferredInput: AVAudioSessionPortDescription? { get }
    var availableInputs: [AVAudioSessionPortDescription]? { get }
    unowned(unsafe) var delegate: AVAudioSessionDelegate?
    func setActive(_ active: Bool, withFlags flags: Int) throws
    var inputIsAvailable: Bool { get }
    var currentHardwareSampleRate: Double { get }
    var currentHardwareInputNumberOfChannels: Int { get }
    var currentHardwareOutputNumberOfChannels: Int { get }
    func setPreferredHardwareSampleRate(_ sampleRate: Double) throws
    var preferredHardwareSampleRate: Double { get }
    func setPreferredSampleRate(_ sampleRate: Double) throws
    var preferredSampleRate: Double { get }
    func setPreferredIOBufferDuration(_ duration: TimeInterval) throws
    var preferredIOBufferDuration: TimeInterval { get }
    func setPreferredInputNumberOfChannels(_ count: Int) throws
    var preferredInputNumberOfChannels: Int { get }
    func setPreferredOutputNumberOfChannels(_ count: Int) throws
    var preferredOutputNumberOfChannels: Int { get }
    var maximumInputNumberOfChannels: Int { get }
    var maximumOutputNumberOfChannels: Int { get }
    func setInputGain(_ gain: Float) throws
    var inputGain: Float { get }
    var isInputGainSettable: Bool { get }
    var isInputAvailable: Bool { get }
    var inputDataSources: [AVAudioSessionDataSourceDescription]? { get }
    var inputDataSource: AVAudioSessionDataSourceDescription? { get }
    func setInputDataSource(_ dataSource: AVAudioSessionDataSourceDescription?) throws
    var outputDataSources: [AVAudioSessionDataSourceDescription]? { get }
    var outputDataSource: AVAudioSessionDataSourceDescription? { get }
    func setOutputDataSource(_ dataSource: AVAudioSessionDataSourceDescription?) throws
    var sampleRate: Double { get }
    var inputNumberOfChannels: Int { get }
    var outputNumberOfChannels: Int { get }
    var outputVolume: Float { get }
    var inputLatency: TimeInterval { get }
    var outputLatency: TimeInterval { get }
    var ioBufferDuration: TimeInterval { get }
    func setAggregatedIOPreference(_ inIOType: AVAudioSessionIOType) throws
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension AVAudioSession : CVarArg {
}
extension AVAudioSession : Equatable, Hashable {
    var hashValue: Int { get }
}
extension AVAudioSession {
    func setPreferredSampleRate(_ sampleRate: Double) throws
    var preferredSampleRate: Double { get }
    func setPreferredIOBufferDuration(_ duration: TimeInterval) throws
    var preferredIOBufferDuration: TimeInterval { get }
    func setPreferredInputNumberOfChannels(_ count: Int) throws
    var preferredInputNumberOfChannels: Int { get }
    func setPreferredOutputNumberOfChannels(_ count: Int) throws
    var preferredOutputNumberOfChannels: Int { get }
    var maximumInputNumberOfChannels: Int { get }
    var maximumOutputNumberOfChannels: Int { get }
    func setInputGain(_ gain: Float) throws
    var inputGain: Float { get }
    var isInputGainSettable: Bool { get }
    var isInputAvailable: Bool { get }
    var inputDataSources: [AVAudioSessionDataSourceDescription]? { get }
    var inputDataSource: AVAudioSessionDataSourceDescription? { get }
    func setInputDataSource(_ dataSource: AVAudioSessionDataSourceDescription?) throws
    var outputDataSources: [AVAudioSessionDataSourceDescription]? { get }
    var outputDataSource: AVAudioSessionDataSourceDescription? { get }
    func setOutputDataSource(_ dataSource: AVAudioSessionDataSourceDescription?) throws
    var sampleRate: Double { get }
    var inputNumberOfChannels: Int { get }
    var outputNumberOfChannels: Int { get }
    var outputVolume: Float { get }
    var inputLatency: TimeInterval { get }
    var outputLatency: TimeInterval { get }
    var ioBufferDuration: TimeInterval { get }
    func setAggregatedIOPreference(_ inIOType: AVAudioSessionIOType) throws
}
extension AVAudioSession {
    unowned(unsafe) var delegate: AVAudioSessionDelegate?
    func setActive(_ active: Bool, withFlags flags: Int) throws
    var inputIsAvailable: Bool { get }
    var currentHardwareSampleRate: Double { get }
    var currentHardwareInputNumberOfChannels: Int { get }
    var currentHardwareOutputNumberOfChannels: Int { get }
    func setPreferredHardwareSampleRate(_ sampleRate: Double) throws
    var preferredHardwareSampleRate: Double { get }
}

Declaration
From
func requestRecordPermission(_ response: AVFoundation.PermissionBlock)
To
func requestRecordPermission(_ response: @escaping AVFoundation.PermissionBlock)

Declaration
From
class AVCaptureDevice : NSObject {
    class func devices() -> [Any]!
    class func devices(withMediaType mediaType: String!) -> [Any]!
    class func defaultDevice(withMediaType mediaType: String!) -> AVCaptureDevice!
     init!(uniqueID deviceUniqueID: String!)
    class func withUniqueID(_ deviceUniqueID: String!) -> AVCaptureDevice!
    var uniqueID: String! { get }
    var modelID: String! { get }
    var localizedName: String! { get }
    func hasMediaType(_ mediaType: String!) -> Bool
    func lockForConfiguration() throws
    func unlockForConfiguration()
    func supportsAVCaptureSessionPreset(_ preset: String!) -> Bool
    var isConnected: Bool { get }
    var formats: [Any]! { get }
    var activeFormat: AVCaptureDeviceFormat!
    var activeVideoMinFrameDuration: CMTime
    var activeVideoMaxFrameDuration: CMTime
    var activeColorSpace: AVCaptureColorSpace
    var automaticallyAdjustsVideoHDREnabled: Bool
    var isVideoHDREnabled: Bool
    class func authorizationStatus(forMediaType mediaType: String!) -> AVAuthorizationStatus
    class func requestAccess(forMediaType mediaType: String!, completionHandler handler: (@escaping (Bool) -> Swift.Void)!)
    var videoZoomFactor: CGFloat
    func ramp(toVideoZoomFactor factor: CGFloat, withRate rate: Float)
    var isRampingVideoZoom: Bool { get }
    func cancelVideoZoomRamp()
    var isLowLightBoostSupported: Bool { get }
    var isLowLightBoostEnabled: Bool { get }
    var automaticallyEnablesLowLightBoostWhenAvailable: Bool
    var isSubjectAreaChangeMonitoringEnabled: Bool
    func isWhiteBalanceModeSupported(_ whiteBalanceMode: AVCaptureWhiteBalanceMode) -> Bool
    var isLockingWhiteBalanceWithCustomDeviceGainsSupported: Bool { get }
    var whiteBalanceMode: AVCaptureWhiteBalanceMode
    var isAdjustingWhiteBalance: Bool { get }
    var deviceWhiteBalanceGains: AVCaptureWhiteBalanceGains { get }
    var grayWorldDeviceWhiteBalanceGains: AVCaptureWhiteBalanceGains { get }
    var maxWhiteBalanceGain: Float { get }
    func setWhiteBalanceModeLockedWithDeviceWhiteBalanceGains(_ whiteBalanceGains: AVCaptureWhiteBalanceGains, completionHandler handler: (@escaping (CMTime) -> Swift.Void)!)
    func chromaticityValues(forDeviceWhiteBalanceGains whiteBalanceGains: AVCaptureWhiteBalanceGains) -> AVCaptureWhiteBalanceChromaticityValues
    func deviceWhiteBalanceGains(for chromaticityValues: AVCaptureWhiteBalanceChromaticityValues) -> AVCaptureWhiteBalanceGains
    func temperatureAndTintValues(forDeviceWhiteBalanceGains whiteBalanceGains: AVCaptureWhiteBalanceGains) -> AVCaptureWhiteBalanceTemperatureAndTintValues
    func deviceWhiteBalanceGains(for tempAndTintValues: AVCaptureWhiteBalanceTemperatureAndTintValues) -> AVCaptureWhiteBalanceGains
    func isExposureModeSupported(_ exposureMode: AVCaptureExposureMode) -> Bool
    var exposureMode: AVCaptureExposureMode
    var isExposurePointOfInterestSupported: Bool { get }
    var exposurePointOfInterest: CGPoint
    var isAdjustingExposure: Bool { get }
    var lensAperture: Float { get }
    var exposureDuration: CMTime { get }
    var iso: Float { get }
    func setExposureModeCustomWithDuration(_ duration: CMTime, iso ISO: Float, completionHandler handler: (@escaping (CMTime) -> Swift.Void)!)
    var exposureTargetOffset: Float { get }
    var exposureTargetBias: Float { get }
    var minExposureTargetBias: Float { get }
    var maxExposureTargetBias: Float { get }
    func setExposureTargetBias(_ bias: Float, completionHandler handler: (@escaping (CMTime) -> Swift.Void)!)
    func isFocusModeSupported(_ focusMode: AVCaptureFocusMode) -> Bool
    var isLockingFocusWithCustomLensPositionSupported: Bool { get }
    var focusMode: AVCaptureFocusMode
    var isFocusPointOfInterestSupported: Bool { get }
    var focusPointOfInterest: CGPoint
    var isAdjustingFocus: Bool { get }
    var isAutoFocusRangeRestrictionSupported: Bool { get }
    var autoFocusRangeRestriction: AVCaptureAutoFocusRangeRestriction
    var isSmoothAutoFocusSupported: Bool { get }
    var isSmoothAutoFocusEnabled: Bool
    var lensPosition: Float { get }
    func setFocusModeLockedWithLensPosition(_ lensPosition: Float, completionHandler handler: (@escaping (CMTime) -> Swift.Void)!)
    var hasTorch: Bool { get }
    var isTorchAvailable: Bool { get }
    var isTorchActive: Bool { get }
    var torchLevel: Float { get }
    func isTorchModeSupported(_ torchMode: AVCaptureTorchMode) -> Bool
    var torchMode: AVCaptureTorchMode
    func setTorchModeOnWithLevel(_ torchLevel: Float) throws
    var hasFlash: Bool { get }
    var isFlashAvailable: Bool { get }
    var isFlashActive: Bool { get }
    func isFlashModeSupported(_ flashMode: AVCaptureFlashMode) -> Bool
    var flashMode: AVCaptureFlashMode
    var deviceType: AVCaptureDeviceType! { get }
    class func defaultDevice(withDeviceType deviceType: AVCaptureDeviceType!, mediaType mediaType: String!, position position: AVCaptureDevicePosition) -> AVCaptureDevice!
    var position: AVCaptureDevicePosition { get }
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension AVCaptureDevice : CVarArg {
}
extension AVCaptureDevice : Equatable, Hashable {
    var hashValue: Int { get }
}
extension AVCaptureDevice {
    var position: AVCaptureDevicePosition { get }
}
extension AVCaptureDevice {
    var deviceType: AVCaptureDeviceType! { get }
    class func defaultDevice(withDeviceType deviceType: AVCaptureDeviceType!, mediaType mediaType: String!, position position: AVCaptureDevicePosition) -> AVCaptureDevice!
}
extension AVCaptureDevice {
    var hasFlash: Bool { get }
    var isFlashAvailable: Bool { get }
    var isFlashActive: Bool { get }
    func isFlashModeSupported(_ flashMode: AVCaptureFlashMode) -> Bool
    var flashMode: AVCaptureFlashMode
}
extension AVCaptureDevice {
    var hasTorch: Bool { get }
    var isTorchAvailable: Bool { get }
    var isTorchActive: Bool { get }
    var torchLevel: Float { get }
    func isTorchModeSupported(_ torchMode: AVCaptureTorchMode) -> Bool
    var torchMode: AVCaptureTorchMode
    func setTorchModeOnWithLevel(_ torchLevel: Float) throws
}
extension AVCaptureDevice {
    func isFocusModeSupported(_ focusMode: AVCaptureFocusMode) -> Bool
    var isLockingFocusWithCustomLensPositionSupported: Bool { get }
    var focusMode: AVCaptureFocusMode
    var isFocusPointOfInterestSupported: Bool { get }
    var focusPointOfInterest: CGPoint
    var isAdjustingFocus: Bool { get }
    var isAutoFocusRangeRestrictionSupported: Bool { get }
    var autoFocusRangeRestriction: AVCaptureAutoFocusRangeRestriction
    var isSmoothAutoFocusSupported: Bool { get }
    var isSmoothAutoFocusEnabled: Bool
    var lensPosition: Float { get }
    func setFocusModeLockedWithLensPosition(_ lensPosition: Float, completionHandler handler: (@escaping (CMTime) -> Swift.Void)!)
}
extension AVCaptureDevice {
    func isExposureModeSupported(_ exposureMode: AVCaptureExposureMode) -> Bool
    var exposureMode: AVCaptureExposureMode
    var isExposurePointOfInterestSupported: Bool { get }
    var exposurePointOfInterest: CGPoint
    var isAdjustingExposure: Bool { get }
    var lensAperture: Float { get }
    var exposureDuration: CMTime { get }
    var iso: Float { get }
    func setExposureModeCustomWithDuration(_ duration: CMTime, iso ISO: Float, completionHandler handler: (@escaping (CMTime) -> Swift.Void)!)
    var exposureTargetOffset: Float { get }
    var exposureTargetBias: Float { get }
    var minExposureTargetBias: Float { get }
    var maxExposureTargetBias: Float { get }
    func setExposureTargetBias(_ bias: Float, completionHandler handler: (@escaping (CMTime) -> Swift.Void)!)
}
extension AVCaptureDevice {
    func isWhiteBalanceModeSupported(_ whiteBalanceMode: AVCaptureWhiteBalanceMode) -> Bool
    var isLockingWhiteBalanceWithCustomDeviceGainsSupported: Bool { get }
    var whiteBalanceMode: AVCaptureWhiteBalanceMode
    var isAdjustingWhiteBalance: Bool { get }
    var deviceWhiteBalanceGains: AVCaptureWhiteBalanceGains { get }
    var grayWorldDeviceWhiteBalanceGains: AVCaptureWhiteBalanceGains { get }
    var maxWhiteBalanceGain: Float { get }
    func setWhiteBalanceModeLockedWithDeviceWhiteBalanceGains(_ whiteBalanceGains: AVCaptureWhiteBalanceGains, completionHandler handler: (@escaping (CMTime) -> Swift.Void)!)
    func chromaticityValues(forDeviceWhiteBalanceGains whiteBalanceGains: AVCaptureWhiteBalanceGains) -> AVCaptureWhiteBalanceChromaticityValues
    func deviceWhiteBalanceGains(for chromaticityValues: AVCaptureWhiteBalanceChromaticityValues) -> AVCaptureWhiteBalanceGains
    func temperatureAndTintValues(forDeviceWhiteBalanceGains whiteBalanceGains: AVCaptureWhiteBalanceGains) -> AVCaptureWhiteBalanceTemperatureAndTintValues
    func deviceWhiteBalanceGains(for tempAndTintValues: AVCaptureWhiteBalanceTemperatureAndTintValues) -> AVCaptureWhiteBalanceGains
}
extension AVCaptureDevice {
    var isSubjectAreaChangeMonitoringEnabled: Bool
}
extension AVCaptureDevice {
    var isLowLightBoostSupported: Bool { get }
    var isLowLightBoostEnabled: Bool { get }
    var automaticallyEnablesLowLightBoostWhenAvailable: Bool
}
extension AVCaptureDevice {
    var videoZoomFactor: CGFloat
    func ramp(toVideoZoomFactor factor: CGFloat, withRate rate: Float)
    var isRampingVideoZoom: Bool { get }
    func cancelVideoZoomRamp()
}
extension AVCaptureDevice {
    class func authorizationStatus(forMediaType mediaType: String!) -> AVAuthorizationStatus
    class func requestAccess(forMediaType mediaType: String!, completionHandler handler: (@escaping (Bool) -> Swift.Void)!)
}
extension AVCaptureDevice {
    var automaticallyAdjustsVideoHDREnabled: Bool
    var isVideoHDREnabled: Bool
}
extension AVCaptureDevice {
    var activeColorSpace: AVCaptureColorSpace
}
To
class AVCaptureDevice : NSObject {
    class func devices() -> [Any]!
    class func devices(withMediaType mediaType: String!) -> [Any]!
    class func defaultDevice(withMediaType mediaType: String!) -> AVCaptureDevice!
     init!(uniqueID deviceUniqueID: String!)
    class func withUniqueID(_ deviceUniqueID: String!) -> AVCaptureDevice!
    var uniqueID: String! { get }
    var modelID: String! { get }
    var localizedName: String! { get }
    func hasMediaType(_ mediaType: String!) -> Bool
    func lockForConfiguration() throws
    func unlockForConfiguration()
    func supportsAVCaptureSessionPreset(_ preset: String!) -> Bool
    var isConnected: Bool { get }
    var formats: [Any]! { get }
    var activeFormat: AVCaptureDeviceFormat!
    var activeVideoMinFrameDuration: CMTime
    var activeVideoMaxFrameDuration: CMTime
    var activeColorSpace: AVCaptureColorSpace
    var automaticallyAdjustsVideoHDREnabled: Bool
    var isVideoHDREnabled: Bool
    class func authorizationStatus(forMediaType mediaType: String!) -> AVAuthorizationStatus
    class func requestAccess(forMediaType mediaType: String!, completionHandler handler: ((Bool) -> Swift.Void)!)
    var videoZoomFactor: CGFloat
    func ramp(toVideoZoomFactor factor: CGFloat, withRate rate: Float)
    var isRampingVideoZoom: Bool { get }
    func cancelVideoZoomRamp()
    var isLowLightBoostSupported: Bool { get }
    var isLowLightBoostEnabled: Bool { get }
    var automaticallyEnablesLowLightBoostWhenAvailable: Bool
    var isSubjectAreaChangeMonitoringEnabled: Bool
    func isWhiteBalanceModeSupported(_ whiteBalanceMode: AVCaptureWhiteBalanceMode) -> Bool
    var isLockingWhiteBalanceWithCustomDeviceGainsSupported: Bool { get }
    var whiteBalanceMode: AVCaptureWhiteBalanceMode
    var isAdjustingWhiteBalance: Bool { get }
    var deviceWhiteBalanceGains: AVCaptureWhiteBalanceGains { get }
    var grayWorldDeviceWhiteBalanceGains: AVCaptureWhiteBalanceGains { get }
    var maxWhiteBalanceGain: Float { get }
    func setWhiteBalanceModeLockedWithDeviceWhiteBalanceGains(_ whiteBalanceGains: AVCaptureWhiteBalanceGains, completionHandler handler: ((CMTime) -> Swift.Void)!)
    func chromaticityValues(forDeviceWhiteBalanceGains whiteBalanceGains: AVCaptureWhiteBalanceGains) -> AVCaptureWhiteBalanceChromaticityValues
    func deviceWhiteBalanceGains(for chromaticityValues: AVCaptureWhiteBalanceChromaticityValues) -> AVCaptureWhiteBalanceGains
    func temperatureAndTintValues(forDeviceWhiteBalanceGains whiteBalanceGains: AVCaptureWhiteBalanceGains) -> AVCaptureWhiteBalanceTemperatureAndTintValues
    func deviceWhiteBalanceGains(for tempAndTintValues: AVCaptureWhiteBalanceTemperatureAndTintValues) -> AVCaptureWhiteBalanceGains
    func isExposureModeSupported(_ exposureMode: AVCaptureExposureMode) -> Bool
    var exposureMode: AVCaptureExposureMode
    var isExposurePointOfInterestSupported: Bool { get }
    var exposurePointOfInterest: CGPoint
    var isAdjustingExposure: Bool { get }
    var lensAperture: Float { get }
    var exposureDuration: CMTime { get }
    var iso: Float { get }
    func setExposureModeCustomWithDuration(_ duration: CMTime, iso ISO: Float, completionHandler handler: ((CMTime) -> Swift.Void)!)
    var exposureTargetOffset: Float { get }
    var exposureTargetBias: Float { get }
    var minExposureTargetBias: Float { get }
    var maxExposureTargetBias: Float { get }
    func setExposureTargetBias(_ bias: Float, completionHandler handler: ((CMTime) -> Swift.Void)!)
    func isFocusModeSupported(_ focusMode: AVCaptureFocusMode) -> Bool
    var isLockingFocusWithCustomLensPositionSupported: Bool { get }
    var focusMode: AVCaptureFocusMode
    var isFocusPointOfInterestSupported: Bool { get }
    var focusPointOfInterest: CGPoint
    var isAdjustingFocus: Bool { get }
    var isAutoFocusRangeRestrictionSupported: Bool { get }
    var autoFocusRangeRestriction: AVCaptureAutoFocusRangeRestriction
    var isSmoothAutoFocusSupported: Bool { get }
    var isSmoothAutoFocusEnabled: Bool
    var lensPosition: Float { get }
    func setFocusModeLockedWithLensPosition(_ lensPosition: Float, completionHandler handler: ((CMTime) -> Swift.Void)!)
    var hasTorch: Bool { get }
    var isTorchAvailable: Bool { get }
    var isTorchActive: Bool { get }
    var torchLevel: Float { get }
    func isTorchModeSupported(_ torchMode: AVCaptureTorchMode) -> Bool
    var torchMode: AVCaptureTorchMode
    func setTorchModeOnWithLevel(_ torchLevel: Float) throws
    var hasFlash: Bool { get }
    var isFlashAvailable: Bool { get }
    var isFlashActive: Bool { get }
    func isFlashModeSupported(_ flashMode: AVCaptureFlashMode) -> Bool
    var flashMode: AVCaptureFlashMode
    var deviceType: AVCaptureDeviceType! { get }
    class func defaultDevice(withDeviceType deviceType: AVCaptureDeviceType!, mediaType mediaType: String!, position position: AVCaptureDevicePosition) -> AVCaptureDevice!
    var position: AVCaptureDevicePosition { get }
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension AVCaptureDevice : CVarArg {
}
extension AVCaptureDevice : Equatable, Hashable {
    var hashValue: Int { get }
}
extension AVCaptureDevice {
    var position: AVCaptureDevicePosition { get }
}
extension AVCaptureDevice {
    var deviceType: AVCaptureDeviceType! { get }
    class func defaultDevice(withDeviceType deviceType: AVCaptureDeviceType!, mediaType mediaType: String!, position position: AVCaptureDevicePosition) -> AVCaptureDevice!
}
extension AVCaptureDevice {
    var hasFlash: Bool { get }
    var isFlashAvailable: Bool { get }
    var isFlashActive: Bool { get }
    func isFlashModeSupported(_ flashMode: AVCaptureFlashMode) -> Bool
    var flashMode: AVCaptureFlashMode
}
extension AVCaptureDevice {
    var hasTorch: Bool { get }
    var isTorchAvailable: Bool { get }
    var isTorchActive: Bool { get }
    var torchLevel: Float { get }
    func isTorchModeSupported(_ torchMode: AVCaptureTorchMode) -> Bool
    var torchMode: AVCaptureTorchMode
    func setTorchModeOnWithLevel(_ torchLevel: Float) throws
}
extension AVCaptureDevice {
    func isFocusModeSupported(_ focusMode: AVCaptureFocusMode) -> Bool
    var isLockingFocusWithCustomLensPositionSupported: Bool { get }
    var focusMode: AVCaptureFocusMode
    var isFocusPointOfInterestSupported: Bool { get }
    var focusPointOfInterest: CGPoint
    var isAdjustingFocus: Bool { get }
    var isAutoFocusRangeRestrictionSupported: Bool { get }
    var autoFocusRangeRestriction: AVCaptureAutoFocusRangeRestriction
    var isSmoothAutoFocusSupported: Bool { get }
    var isSmoothAutoFocusEnabled: Bool
    var lensPosition: Float { get }
    func setFocusModeLockedWithLensPosition(_ lensPosition: Float, completionHandler handler: ((CMTime) -> Swift.Void)!)
}
extension AVCaptureDevice {
    func isExposureModeSupported(_ exposureMode: AVCaptureExposureMode) -> Bool
    var exposureMode: AVCaptureExposureMode
    var isExposurePointOfInterestSupported: Bool { get }
    var exposurePointOfInterest: CGPoint
    var isAdjustingExposure: Bool { get }
    var lensAperture: Float { get }
    var exposureDuration: CMTime { get }
    var iso: Float { get }
    func setExposureModeCustomWithDuration(_ duration: CMTime, iso ISO: Float, completionHandler handler: ((CMTime) -> Swift.Void)!)
    var exposureTargetOffset: Float { get }
    var exposureTargetBias: Float { get }
    var minExposureTargetBias: Float { get }
    var maxExposureTargetBias: Float { get }
    func setExposureTargetBias(_ bias: Float, completionHandler handler: ((CMTime) -> Swift.Void)!)
}
extension AVCaptureDevice {
    func isWhiteBalanceModeSupported(_ whiteBalanceMode: AVCaptureWhiteBalanceMode) -> Bool
    var isLockingWhiteBalanceWithCustomDeviceGainsSupported: Bool { get }
    var whiteBalanceMode: AVCaptureWhiteBalanceMode
    var isAdjustingWhiteBalance: Bool { get }
    var deviceWhiteBalanceGains: AVCaptureWhiteBalanceGains { get }
    var grayWorldDeviceWhiteBalanceGains: AVCaptureWhiteBalanceGains { get }
    var maxWhiteBalanceGain: Float { get }
    func setWhiteBalanceModeLockedWithDeviceWhiteBalanceGains(_ whiteBalanceGains: AVCaptureWhiteBalanceGains, completionHandler handler: ((CMTime) -> Swift.Void)!)
    func chromaticityValues(forDeviceWhiteBalanceGains whiteBalanceGains: AVCaptureWhiteBalanceGains) -> AVCaptureWhiteBalanceChromaticityValues
    func deviceWhiteBalanceGains(for chromaticityValues: AVCaptureWhiteBalanceChromaticityValues) -> AVCaptureWhiteBalanceGains
    func temperatureAndTintValues(forDeviceWhiteBalanceGains whiteBalanceGains: AVCaptureWhiteBalanceGains) -> AVCaptureWhiteBalanceTemperatureAndTintValues
    func deviceWhiteBalanceGains(for tempAndTintValues: AVCaptureWhiteBalanceTemperatureAndTintValues) -> AVCaptureWhiteBalanceGains
}
extension AVCaptureDevice {
    var isSubjectAreaChangeMonitoringEnabled: Bool
}
extension AVCaptureDevice {
    var isLowLightBoostSupported: Bool { get }
    var isLowLightBoostEnabled: Bool { get }
    var automaticallyEnablesLowLightBoostWhenAvailable: Bool
}
extension AVCaptureDevice {
    var videoZoomFactor: CGFloat
    func ramp(toVideoZoomFactor factor: CGFloat, withRate rate: Float)
    var isRampingVideoZoom: Bool { get }
    func cancelVideoZoomRamp()
}
extension AVCaptureDevice {
    class func authorizationStatus(forMediaType mediaType: String!) -> AVAuthorizationStatus
    class func requestAccess(forMediaType mediaType: String!, completionHandler handler: ((Bool) -> Swift.Void)!)
}
extension AVCaptureDevice {
    var automaticallyAdjustsVideoHDREnabled: Bool
    var isVideoHDREnabled: Bool
}
extension AVCaptureDevice {
    var activeColorSpace: AVCaptureColorSpace
}

Declaration
From
class func requestAccess(forMediaType mediaType: String!, completionHandler handler: (@escaping (Bool) -> Swift.Void)!)
To
class func requestAccess(forMediaType mediaType: String!, completionHandler handler: ((Bool) -> Swift.Void)!)

Declaration
From
func setExposureModeCustomWithDuration(_ duration: CMTime, iso ISO: Float, completionHandler handler: (@escaping (CMTime) -> Swift.Void)!)
To
func setExposureModeCustomWithDuration(_ duration: CMTime, iso ISO: Float, completionHandler handler: ((CMTime) -> Swift.Void)!)

Declaration
From
func setExposureTargetBias(_ bias: Float, completionHandler handler: (@escaping (CMTime) -> Swift.Void)!)
To
func setExposureTargetBias(_ bias: Float, completionHandler handler: ((CMTime) -> Swift.Void)!)

Declaration
From
func setFocusModeLockedWithLensPosition(_ lensPosition: Float, completionHandler handler: (@escaping (CMTime) -> Swift.Void)!)
To
func setFocusModeLockedWithLensPosition(_ lensPosition: Float, completionHandler handler: ((CMTime) -> Swift.Void)!)

Declaration
From
func setWhiteBalanceModeLockedWithDeviceWhiteBalanceGains(_ whiteBalanceGains: AVCaptureWhiteBalanceGains, completionHandler handler: (@escaping (CMTime) -> Swift.Void)!)
To
func setWhiteBalanceModeLockedWithDeviceWhiteBalanceGains(_ whiteBalanceGains: AVCaptureWhiteBalanceGains, completionHandler handler: ((CMTime) -> Swift.Void)!)

Declaration
From
class AVCapturePhotoOutput : AVCaptureOutput {
    func capturePhoto(with settings: AVCapturePhotoSettings, delegate delegate: AVCapturePhotoCaptureDelegate)
    var preparedPhotoSettingsArray: [AVCapturePhotoSettings] { get }
    func setPreparedPhotoSettingsArray(_ preparedPhotoSettingsArray: [AVCapturePhotoSettings], completionHandler completionHandler: (@escaping (Bool, Error?) -> Swift.Void)? = nil)
    var availablePhotoPixelFormatTypes: [NSNumber] { get }
    var availablePhotoCodecTypes: [String] { get }
    var availableRawPhotoPixelFormatTypes: [NSNumber] { get }
    var isStillImageStabilizationSupported: Bool { get }
    var isStillImageStabilizationScene: Bool { get }
    var supportedFlashModes: [NSNumber] { get }
    var isFlashScene: Bool { get }
    @NSCopying var photoSettingsForSceneMonitoring: AVCapturePhotoSettings?
    var isHighResolutionCaptureEnabled: Bool
    var maxBracketedCapturePhotoCount: Int { get }
    var isLensStabilizationDuringBracketedCaptureSupported: Bool { get }
    var isLivePhotoCaptureSupported: Bool { get }
    var isLivePhotoCaptureEnabled: Bool
    var isLivePhotoCaptureSuspended: Bool
    var isLivePhotoAutoTrimmingEnabled: Bool
    class func jpegPhotoDataRepresentation(forJPEGSampleBuffer JPEGSampleBuffer: CMSampleBuffer, previewPhotoSampleBuffer previewPhotoSampleBuffer: CMSampleBuffer?) -> Data?
    class func dngPhotoDataRepresentation(forRawSampleBuffer rawSampleBuffer: CMSampleBuffer, previewPhotoSampleBuffer previewPhotoSampleBuffer: CMSampleBuffer?) -> Data?
}
To
class AVCapturePhotoOutput : AVCaptureOutput {
    func capturePhoto(with settings: AVCapturePhotoSettings, delegate delegate: AVCapturePhotoCaptureDelegate)
    var preparedPhotoSettingsArray: [AVCapturePhotoSettings] { get }
    func setPreparedPhotoSettingsArray(_ preparedPhotoSettingsArray: [AVCapturePhotoSettings], completionHandler completionHandler: ((Bool, Error?) -> Swift.Void)? = nil)
    var availablePhotoPixelFormatTypes: [NSNumber] { get }
    var availablePhotoCodecTypes: [String] { get }
    var availableRawPhotoPixelFormatTypes: [NSNumber] { get }
    var isStillImageStabilizationSupported: Bool { get }
    var isStillImageStabilizationScene: Bool { get }
    var supportedFlashModes: [NSNumber] { get }
    var isFlashScene: Bool { get }
    @NSCopying var photoSettingsForSceneMonitoring: AVCapturePhotoSettings?
    var isHighResolutionCaptureEnabled: Bool
    var maxBracketedCapturePhotoCount: Int { get }
    var isLensStabilizationDuringBracketedCaptureSupported: Bool { get }
    var isLivePhotoCaptureSupported: Bool { get }
    var isLivePhotoCaptureEnabled: Bool
    var isLivePhotoCaptureSuspended: Bool
    var isLivePhotoAutoTrimmingEnabled: Bool
    class func jpegPhotoDataRepresentation(forJPEGSampleBuffer JPEGSampleBuffer: CMSampleBuffer, previewPhotoSampleBuffer previewPhotoSampleBuffer: CMSampleBuffer?) -> Data?
    class func dngPhotoDataRepresentation(forRawSampleBuffer rawSampleBuffer: CMSampleBuffer, previewPhotoSampleBuffer previewPhotoSampleBuffer: CMSampleBuffer?) -> Data?
}

Declaration
From
func setPreparedPhotoSettingsArray(_ preparedPhotoSettingsArray: [AVCapturePhotoSettings], completionHandler completionHandler: (@escaping (Bool, Error?) -> Swift.Void)? = nil)
To
func setPreparedPhotoSettingsArray(_ preparedPhotoSettingsArray: [AVCapturePhotoSettings], completionHandler completionHandler: ((Bool, Error?) -> Swift.Void)? = nil)

Declaration
From
class AVCaptureStillImageOutput : AVCaptureOutput {
    var outputSettings: [AnyHashable : Any]!
    var availableImageDataCVPixelFormatTypes: [Any]! { get }
    var availableImageDataCodecTypes: [Any]! { get }
    var isStillImageStabilizationSupported: Bool { get }
    var automaticallyEnablesStillImageStabilizationWhenAvailable: Bool
    var isStillImageStabilizationActive: Bool { get }
    var isHighResolutionStillImageOutputEnabled: Bool
    var isCapturingStillImage: Bool { get }
    func captureStillImageAsynchronously(from connection: AVCaptureConnection!, completionHandler handler: (@escaping (CMSampleBuffer?, Error?) -> Swift.Void)!)
    class func jpegStillImageNSDataRepresentation(_ jpegSampleBuffer: CMSampleBuffer!) -> Data!
    var maxBracketedCaptureStillImageCount: Int { get }
    var isLensStabilizationDuringBracketedCaptureSupported: Bool { get }
    var isLensStabilizationDuringBracketedCaptureEnabled: Bool
    func prepareToCaptureStillImageBracket(from connection: AVCaptureConnection!, withSettingsArray settings: [Any]!, completionHandler handler: (@escaping (Bool, Error?) -> Swift.Void)!)
    func captureStillImageBracketAsynchronously(from connection: AVCaptureConnection!, withSettingsArray settings: [Any]!, completionHandler handler: (@escaping (CMSampleBuffer?, AVCaptureBracketedStillImageSettings?, Error?) -> Swift.Void)!)
}
extension AVCaptureStillImageOutput {
    var maxBracketedCaptureStillImageCount: Int { get }
    var isLensStabilizationDuringBracketedCaptureSupported: Bool { get }
    var isLensStabilizationDuringBracketedCaptureEnabled: Bool
    func prepareToCaptureStillImageBracket(from connection: AVCaptureConnection!, withSettingsArray settings: [Any]!, completionHandler handler: (@escaping (Bool, Error?) -> Swift.Void)!)
    func captureStillImageBracketAsynchronously(from connection: AVCaptureConnection!, withSettingsArray settings: [Any]!, completionHandler handler: (@escaping (CMSampleBuffer?, AVCaptureBracketedStillImageSettings?, Error?) -> Swift.Void)!)
}
To
class AVCaptureStillImageOutput : AVCaptureOutput {
    var outputSettings: [AnyHashable : Any]!
    var availableImageDataCVPixelFormatTypes: [Any]! { get }
    var availableImageDataCodecTypes: [Any]! { get }
    var isStillImageStabilizationSupported: Bool { get }
    var automaticallyEnablesStillImageStabilizationWhenAvailable: Bool
    var isStillImageStabilizationActive: Bool { get }
    var isHighResolutionStillImageOutputEnabled: Bool
    var isCapturingStillImage: Bool { get }
    func captureStillImageAsynchronously(from connection: AVCaptureConnection!, completionHandler handler: ((CMSampleBuffer?, Error?) -> Swift.Void)!)
    class func jpegStillImageNSDataRepresentation(_ jpegSampleBuffer: CMSampleBuffer!) -> Data!
    var maxBracketedCaptureStillImageCount: Int { get }
    var isLensStabilizationDuringBracketedCaptureSupported: Bool { get }
    var isLensStabilizationDuringBracketedCaptureEnabled: Bool
    func prepareToCaptureStillImageBracket(from connection: AVCaptureConnection!, withSettingsArray settings: [Any]!, completionHandler handler: ((Bool, Error?) -> Swift.Void)!)
    func captureStillImageBracketAsynchronously(from connection: AVCaptureConnection!, withSettingsArray settings: [Any]!, completionHandler handler: ((CMSampleBuffer?, AVCaptureBracketedStillImageSettings?, Error?) -> Swift.Void)!)
}
extension AVCaptureStillImageOutput {
    var maxBracketedCaptureStillImageCount: Int { get }
    var isLensStabilizationDuringBracketedCaptureSupported: Bool { get }
    var isLensStabilizationDuringBracketedCaptureEnabled: Bool
    func prepareToCaptureStillImageBracket(from connection: AVCaptureConnection!, withSettingsArray settings: [Any]!, completionHandler handler: ((Bool, Error?) -> Swift.Void)!)
    func captureStillImageBracketAsynchronously(from connection: AVCaptureConnection!, withSettingsArray settings: [Any]!, completionHandler handler: ((CMSampleBuffer?, AVCaptureBracketedStillImageSettings?, Error?) -> Swift.Void)!)
}

Declaration
From
func captureStillImageAsynchronously(from connection: AVCaptureConnection!, completionHandler handler: (@escaping (CMSampleBuffer?, Error?) -> Swift.Void)!)
To
func captureStillImageAsynchronously(from connection: AVCaptureConnection!, completionHandler handler: ((CMSampleBuffer?, Error?) -> Swift.Void)!)

Declaration
From
func captureStillImageBracketAsynchronously(from connection: AVCaptureConnection!, withSettingsArray settings: [Any]!, completionHandler handler: (@escaping (CMSampleBuffer?, AVCaptureBracketedStillImageSettings?, Error?) -> Swift.Void)!)
To
func captureStillImageBracketAsynchronously(from connection: AVCaptureConnection!, withSettingsArray settings: [Any]!, completionHandler handler: ((CMSampleBuffer?, AVCaptureBracketedStillImageSettings?, Error?) -> Swift.Void)!)

Declaration
From
func prepareToCaptureStillImageBracket(from connection: AVCaptureConnection!, withSettingsArray settings: [Any]!, completionHandler handler: (@escaping (Bool, Error?) -> Swift.Void)!)
To
func prepareToCaptureStillImageBracket(from connection: AVCaptureConnection!, withSettingsArray settings: [Any]!, completionHandler handler: ((Bool, Error?) -> Swift.Void)!)

Declaration
From
class AVMetadataItem : NSObject, AVAsynchronousKeyValueLoading, NSCopying, NSMutableCopying {
    var identifier: String? { get }
    var extendedLanguageTag: String? { get }
    var locale: Locale? { get }
    var time: CMTime { get }
    var duration: CMTime { get }
    var dataType: String? { get }
    @NSCopying var value: (NSCopying & NSObjectProtocol)? { get }
    var extraAttributes: [String : Any]? { get }
    class func metadataItems(from metadataItems: [AVMetadataItem], with locale: Locale) -> [AVMetadataItem]
    class func metadataItems(from metadataItems: [AVMetadataItem], withKey key: Any?, keySpace keySpace: String?) -> [AVMetadataItem]
     init(propertiesOf metadataItem: AVMetadataItem, valueLoadingHandler handler: @escaping (AVMetadataItemValueRequest) -> Swift.Void)
    class func withPropertiesOf(_ metadataItem: AVMetadataItem, valueLoadingHandler handler: @escaping (AVMetadataItemValueRequest) -> Swift.Void) -> AVMetadataItem
    class func identifier(forKey key: Any, keySpace keySpace: String) -> String?
    class func keySpace(forIdentifier identifier: String) -> String?
    class func key(forIdentifier identifier: String) -> Any?
    @NSCopying var key: (NSCopying & NSObjectProtocol)? { get }
    var commonKey: String? { get }
    var keySpace: String? { get }
    class func metadataItems(from metadataItems: [AVMetadataItem], filteredAndSortedAccordingToPreferredLanguages preferredLanguages: [String]) -> [AVMetadataItem]
    class func metadataItems(from metadataItems: [AVMetadataItem], filteredByIdentifier identifier: String) -> [AVMetadataItem]
    class func metadataItems(from metadataItems: [AVMetadataItem], filteredBy metadataItemFilter: AVMetadataItemFilter) -> [AVMetadataItem]
    func statusOfValue(forKey key: String, error outError: NSErrorPointer) -> AVKeyValueStatus
    func loadValuesAsynchronously(forKeys keys: [String], completionHandler handler: (@escaping () -> Swift.Void)? = nil)
    var stringValue: String? { get }
    var numberValue: NSNumber? { get }
    var dateValue: Date? { get }
    var dataValue: Data? { get }
    var startDate: Date? { get }
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension AVMetadataItem : CVarArg {
}
extension AVMetadataItem : Equatable, Hashable {
    var hashValue: Int { get }
}
extension AVMetadataItem {
    var startDate: Date? { get }
}
extension AVMetadataItem {
    var stringValue: String? { get }
    var numberValue: NSNumber? { get }
    var dateValue: Date? { get }
    var dataValue: Data? { get }
}
extension AVMetadataItem {
    func statusOfValue(forKey key: String, error outError: NSErrorPointer) -> AVKeyValueStatus
    func loadValuesAsynchronously(forKeys keys: [String], completionHandler handler: (@escaping () -> Swift.Void)? = nil)
}
extension AVMetadataItem {
    class func metadataItems(from metadataItems: [AVMetadataItem], filteredAndSortedAccordingToPreferredLanguages preferredLanguages: [String]) -> [AVMetadataItem]
    class func metadataItems(from metadataItems: [AVMetadataItem], filteredByIdentifier identifier: String) -> [AVMetadataItem]
    class func metadataItems(from metadataItems: [AVMetadataItem], filteredBy metadataItemFilter: AVMetadataItemFilter) -> [AVMetadataItem]
}
extension AVMetadataItem {
    class func identifier(forKey key: Any, keySpace keySpace: String) -> String?
    class func keySpace(forIdentifier identifier: String) -> String?
    class func key(forIdentifier identifier: String) -> Any?
    @NSCopying var key: (NSCopying & NSObjectProtocol)? { get }
    var commonKey: String? { get }
    var keySpace: String? { get }
}
extension AVMetadataItem {
     init(propertiesOf metadataItem: AVMetadataItem, valueLoadingHandler handler: @escaping (AVMetadataItemValueRequest) -> Swift.Void)
    class func withPropertiesOf(_ metadataItem: AVMetadataItem, valueLoadingHandler handler: @escaping (AVMetadataItemValueRequest) -> Swift.Void) -> AVMetadataItem
}
extension AVMetadataItem {
    class func metadataItems(from metadataItems: [AVMetadataItem], with locale: Locale) -> [AVMetadataItem]
    class func metadataItems(from metadataItems: [AVMetadataItem], withKey key: Any?, keySpace keySpace: String?) -> [AVMetadataItem]
}
To
class AVMetadataItem : NSObject, AVAsynchronousKeyValueLoading, NSCopying, NSMutableCopying {
    var identifier: String? { get }
    var extendedLanguageTag: String? { get }
    var locale: Locale? { get }
    var time: CMTime { get }
    var duration: CMTime { get }
    var dataType: String? { get }
    @NSCopying var value: (NSCopying & NSObjectProtocol)? { get }
    var extraAttributes: [String : Any]? { get }
    class func metadataItems(from metadataItems: [AVMetadataItem], with locale: Locale) -> [AVMetadataItem]
    class func metadataItems(from metadataItems: [AVMetadataItem], withKey key: Any?, keySpace keySpace: String?) -> [AVMetadataItem]
     init(propertiesOf metadataItem: AVMetadataItem, valueLoadingHandler handler: @escaping (AVMetadataItemValueRequest) -> Swift.Void)
    class func withPropertiesOf(_ metadataItem: AVMetadataItem, valueLoadingHandler handler: @escaping (AVMetadataItemValueRequest) -> Swift.Void) -> AVMetadataItem
    class func identifier(forKey key: Any, keySpace keySpace: String) -> String?
    class func keySpace(forIdentifier identifier: String) -> String?
    class func key(forIdentifier identifier: String) -> Any?
    @NSCopying var key: (NSCopying & NSObjectProtocol)? { get }
    var commonKey: String? { get }
    var keySpace: String? { get }
    class func metadataItems(from metadataItems: [AVMetadataItem], filteredAndSortedAccordingToPreferredLanguages preferredLanguages: [String]) -> [AVMetadataItem]
    class func metadataItems(from metadataItems: [AVMetadataItem], filteredByIdentifier identifier: String) -> [AVMetadataItem]
    class func metadataItems(from metadataItems: [AVMetadataItem], filteredBy metadataItemFilter: AVMetadataItemFilter) -> [AVMetadataItem]
    func statusOfValue(forKey key: String, error outError: NSErrorPointer) -> AVKeyValueStatus
    func loadValuesAsynchronously(forKeys keys: [String], completionHandler handler: (() -> Swift.Void)? = nil)
    var stringValue: String? { get }
    var numberValue: NSNumber? { get }
    var dateValue: Date? { get }
    var dataValue: Data? { get }
    var startDate: Date? { get }
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension AVMetadataItem : CVarArg {
}
extension AVMetadataItem : Equatable, Hashable {
    var hashValue: Int { get }
}
extension AVMetadataItem {
    var startDate: Date? { get }
}
extension AVMetadataItem {
    var stringValue: String? { get }
    var numberValue: NSNumber? { get }
    var dateValue: Date? { get }
    var dataValue: Data? { get }
}
extension AVMetadataItem {
    func statusOfValue(forKey key: String, error outError: NSErrorPointer) -> AVKeyValueStatus
    func loadValuesAsynchronously(forKeys keys: [String], completionHandler handler: (() -> Swift.Void)? = nil)
}
extension AVMetadataItem {
    class func metadataItems(from metadataItems: [AVMetadataItem], filteredAndSortedAccordingToPreferredLanguages preferredLanguages: [String]) -> [AVMetadataItem]
    class func metadataItems(from metadataItems: [AVMetadataItem], filteredByIdentifier identifier: String) -> [AVMetadataItem]
    class func metadataItems(from metadataItems: [AVMetadataItem], filteredBy metadataItemFilter: AVMetadataItemFilter) -> [AVMetadataItem]
}
extension AVMetadataItem {
    class func identifier(forKey key: Any, keySpace keySpace: String) -> String?
    class func keySpace(forIdentifier identifier: String) -> String?
    class func key(forIdentifier identifier: String) -> Any?
    @NSCopying var key: (NSCopying & NSObjectProtocol)? { get }
    var commonKey: String? { get }
    var keySpace: String? { get }
}
extension AVMetadataItem {
     init(propertiesOf metadataItem: AVMetadataItem, valueLoadingHandler handler: @escaping (AVMetadataItemValueRequest) -> Swift.Void)
    class func withPropertiesOf(_ metadataItem: AVMetadataItem, valueLoadingHandler handler: @escaping (AVMetadataItemValueRequest) -> Swift.Void) -> AVMetadataItem
}
extension AVMetadataItem {
    class func metadataItems(from metadataItems: [AVMetadataItem], with locale: Locale) -> [AVMetadataItem]
    class func metadataItems(from metadataItems: [AVMetadataItem], withKey key: Any?, keySpace keySpace: String?) -> [AVMetadataItem]
}

Declaration
From
func loadValuesAsynchronously(forKeys keys: [String], completionHandler handler: (@escaping () -> Swift.Void)? = nil)
To
func loadValuesAsynchronously(forKeys keys: [String], completionHandler handler: (() -> Swift.Void)? = nil)

Declaration
From
class AVMutableMetadataItem : AVMetadataItem {
    var identifier: String?
    var extendedLanguageTag: String?
    var locale: Locale?
    var time: CMTime
    var duration: CMTime
    var dataType: String?
    @NSCopying var value: (NSCopying & NSObjectProtocol)?
    var extraAttributes: [String : Any]?
     init()
    class func metadataItem() -> AVMutableMetadataItem
    var keySpace: String?
    @NSCopying var key: (NSCopying & NSObjectProtocol)?
    var startDate: Date?
    class func metadataItems(from metadataItems: [AVMetadataItem], with locale: Locale) -> [AVMetadataItem]
    class func metadataItems(from metadataItems: [AVMetadataItem], withKey key: Any?, keySpace keySpace: String?) -> [AVMetadataItem]
     init(propertiesOf metadataItem: AVMetadataItem, valueLoadingHandler handler: @escaping (AVMetadataItemValueRequest) -> Void)
    class func withPropertiesOf(_ metadataItem: AVMetadataItem, valueLoadingHandler handler: @escaping (AVMetadataItemValueRequest) -> Void) -> AVMetadataItem
    class func identifier(forKey key: Any, keySpace keySpace: String) -> String?
    class func keySpace(forIdentifier identifier: String) -> String?
    class func key(forIdentifier identifier: String) -> Any?
    @NSCopying var key: (NSCopying & NSObjectProtocol)? { get }
    var commonKey: String? { get }
    var keySpace: String? { get }
    class func metadataItems(from metadataItems: [AVMetadataItem], filteredAndSortedAccordingToPreferredLanguages preferredLanguages: [String]) -> [AVMetadataItem]
    class func metadataItems(from metadataItems: [AVMetadataItem], filteredByIdentifier identifier: String) -> [AVMetadataItem]
    class func metadataItems(from metadataItems: [AVMetadataItem], filteredBy metadataItemFilter: AVMetadataItemFilter) -> [AVMetadataItem]
    func statusOfValue(forKey key: String, error outError: NSErrorPointer) -> AVKeyValueStatus
    func loadValuesAsynchronously(forKeys keys: [String], completionHandler handler: (@escaping () -> Void)? = nil)
    var stringValue: String? { get }
    var numberValue: NSNumber? { get }
    var dateValue: Date? { get }
    var dataValue: Data? { get }
    var startDate: Date? { get }
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension AVMutableMetadataItem : CVarArg {
}
extension AVMutableMetadataItem : Equatable, Hashable {
    var hashValue: Int { get }
}
extension AVMutableMetadataItem {
    var startDate: Date?
}
extension AVMutableMetadataItem {
    var keySpace: String?
    @NSCopying var key: (NSCopying & NSObjectProtocol)?
}
To
class AVMutableMetadataItem : AVMetadataItem {
    var identifier: String?
    var extendedLanguageTag: String?
    var locale: Locale?
    var time: CMTime
    var duration: CMTime
    var dataType: String?
    @NSCopying var value: (NSCopying & NSObjectProtocol)?
    var extraAttributes: [String : Any]?
     init()
    class func metadataItem() -> AVMutableMetadataItem
    var keySpace: String?
    @NSCopying var key: (NSCopying & NSObjectProtocol)?
    var startDate: Date?
    class func metadataItems(from metadataItems: [AVMetadataItem], with locale: Locale) -> [AVMetadataItem]
    class func metadataItems(from metadataItems: [AVMetadataItem], withKey key: Any?, keySpace keySpace: String?) -> [AVMetadataItem]
     init(propertiesOf metadataItem: AVMetadataItem, valueLoadingHandler handler: @escaping (AVMetadataItemValueRequest) -> Void)
    class func withPropertiesOf(_ metadataItem: AVMetadataItem, valueLoadingHandler handler: @escaping (AVMetadataItemValueRequest) -> Void) -> AVMetadataItem
    class func identifier(forKey key: Any, keySpace keySpace: String) -> String?
    class func keySpace(forIdentifier identifier: String) -> String?
    class func key(forIdentifier identifier: String) -> Any?
    @NSCopying var key: (NSCopying & NSObjectProtocol)? { get }
    var commonKey: String? { get }
    var keySpace: String? { get }
    class func metadataItems(from metadataItems: [AVMetadataItem], filteredAndSortedAccordingToPreferredLanguages preferredLanguages: [String]) -> [AVMetadataItem]
    class func metadataItems(from metadataItems: [AVMetadataItem], filteredByIdentifier identifier: String) -> [AVMetadataItem]
    class func metadataItems(from metadataItems: [AVMetadataItem], filteredBy metadataItemFilter: AVMetadataItemFilter) -> [AVMetadataItem]
    func statusOfValue(forKey key: String, error outError: NSErrorPointer) -> AVKeyValueStatus
    func loadValuesAsynchronously(forKeys keys: [String], completionHandler handler: (() -> Void)? = nil)
    var stringValue: String? { get }
    var numberValue: NSNumber? { get }
    var dateValue: Date? { get }
    var dataValue: Data? { get }
    var startDate: Date? { get }
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension AVMutableMetadataItem : CVarArg {
}
extension AVMutableMetadataItem : Equatable, Hashable {
    var hashValue: Int { get }
}
extension AVMutableMetadataItem {
    var startDate: Date?
}
extension AVMutableMetadataItem {
    var keySpace: String?
    @NSCopying var key: (NSCopying & NSObjectProtocol)?
}

Modified AVPlayer
Declaration
From
class AVPlayer : NSObject {
    convenience init(url URL: URL)
    class func withURL(_ URL: URL) -> Self
    convenience init(playerItem item: AVPlayerItem?)
    class func withPlayerItem(_ item: AVPlayerItem?) -> Self
    init(url URL: URL)
    init(playerItem item: AVPlayerItem?)
    var status: AVPlayerStatus { get }
    var error: Error? { get }
    var isOutputObscuredDueToInsufficientExternalProtection: Bool { get }
    var allowsAirPlayVideo: Bool
    var isAirPlayVideoActive: Bool { get }
    var usesAirPlayVideoWhileAirPlayScreenIsActive: Bool
    var allowsExternalPlayback: Bool
    var isExternalPlaybackActive: Bool { get }
    var usesExternalPlaybackWhileExternalScreenIsActive: Bool
    var externalPlaybackVideoGravity: String
    var audioOutputDeviceUniqueID: String?
    var appliesMediaSelectionCriteriaAutomatically: Bool
    func setMediaSelectionCriteria(_ criteria: AVPlayerMediaSelectionCriteria?, forMediaCharacteristic mediaCharacteristic: String)
    func mediaSelectionCriteria(forMediaCharacteristic mediaCharacteristic: String) -> AVPlayerMediaSelectionCriteria?
    var volume: Float
    var isMuted: Bool
    var isClosedCaptionDisplayEnabled: Bool
    func addPeriodicTimeObserver(forInterval interval: CMTime, queue queue: DispatchQueue?, using block: @escaping (CMTime) -> Swift.Void) -> Any
    func addBoundaryTimeObserver(forTimes times: [NSValue], queue queue: DispatchQueue?, using block: @escaping () -> Swift.Void) -> Any
    func removeTimeObserver(_ observer: Any)
    var automaticallyWaitsToMinimizeStalling: Bool
    func setRate(_ rate: Float, time itemTime: CMTime, atHostTime hostClockTime: CMTime)
    func preroll(atRate rate: Float, completionHandler completionHandler: (@escaping (Bool) -> Swift.Void)? = nil)
    func cancelPendingPrerolls()
    var masterClock: CMClock?
    func currentTime() -> CMTime
    func seek(to date: Date)
    func seek(to date: Date, completionHandler completionHandler: @escaping (Bool) -> Swift.Void)
    func seek(to time: CMTime)
    func seek(to time: CMTime, toleranceBefore toleranceBefore: CMTime, toleranceAfter toleranceAfter: CMTime)
    func seek(to time: CMTime, completionHandler completionHandler: @escaping (Bool) -> Swift.Void)
    func seek(to time: CMTime, toleranceBefore toleranceBefore: CMTime, toleranceAfter toleranceAfter: CMTime, completionHandler completionHandler: @escaping (Bool) -> Swift.Void)
    var currentItem: AVPlayerItem? { get }
    func replaceCurrentItem(with item: AVPlayerItem?)
    var actionAtItemEnd: AVPlayerActionAtItemEnd
    var rate: Float
    func play()
    func pause()
    var timeControlStatus: AVPlayerTimeControlStatus { get }
    var reasonForWaitingToPlay: String? { get }
    func playImmediately(atRate rate: Float)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension AVPlayer : CVarArg {
}
extension AVPlayer : Equatable, Hashable {
    var hashValue: Int { get }
}
extension AVPlayer {
    var rate: Float
    func play()
    func pause()
    var timeControlStatus: AVPlayerTimeControlStatus { get }
    var reasonForWaitingToPlay: String? { get }
    func playImmediately(atRate rate: Float)
}
extension AVPlayer {
    var currentItem: AVPlayerItem? { get }
    func replaceCurrentItem(with item: AVPlayerItem?)
    var actionAtItemEnd: AVPlayerActionAtItemEnd
}
extension AVPlayer {
    func currentTime() -> CMTime
    func seek(to date: Date)
    func seek(to date: Date, completionHandler completionHandler: @escaping (Bool) -> Swift.Void)
    func seek(to time: CMTime)
    func seek(to time: CMTime, toleranceBefore toleranceBefore: CMTime, toleranceAfter toleranceAfter: CMTime)
    func seek(to time: CMTime, completionHandler completionHandler: @escaping (Bool) -> Swift.Void)
    func seek(to time: CMTime, toleranceBefore toleranceBefore: CMTime, toleranceAfter toleranceAfter: CMTime, completionHandler completionHandler: @escaping (Bool) -> Swift.Void)
}
extension AVPlayer {
    var automaticallyWaitsToMinimizeStalling: Bool
    func setRate(_ rate: Float, time itemTime: CMTime, atHostTime hostClockTime: CMTime)
    func preroll(atRate rate: Float, completionHandler completionHandler: (@escaping (Bool) -> Swift.Void)? = nil)
    func cancelPendingPrerolls()
    var masterClock: CMClock?
}
extension AVPlayer {
    func addPeriodicTimeObserver(forInterval interval: CMTime, queue queue: DispatchQueue?, using block: @escaping (CMTime) -> Swift.Void) -> Any
    func addBoundaryTimeObserver(forTimes times: [NSValue], queue queue: DispatchQueue?, using block: @escaping () -> Swift.Void) -> Any
    func removeTimeObserver(_ observer: Any)
}
extension AVPlayer {
    var volume: Float
    var isMuted: Bool
    var isClosedCaptionDisplayEnabled: Bool
}
extension AVPlayer {
    var appliesMediaSelectionCriteriaAutomatically: Bool
    func setMediaSelectionCriteria(_ criteria: AVPlayerMediaSelectionCriteria?, forMediaCharacteristic mediaCharacteristic: String)
    func mediaSelectionCriteria(forMediaCharacteristic mediaCharacteristic: String) -> AVPlayerMediaSelectionCriteria?
}
extension AVPlayer {
    var audioOutputDeviceUniqueID: String?
}
extension AVPlayer {
    var allowsExternalPlayback: Bool
    var isExternalPlaybackActive: Bool { get }
    var usesExternalPlaybackWhileExternalScreenIsActive: Bool
    var externalPlaybackVideoGravity: String
}
extension AVPlayer {
    var allowsAirPlayVideo: Bool
    var isAirPlayVideoActive: Bool { get }
    var usesAirPlayVideoWhileAirPlayScreenIsActive: Bool
}
extension AVPlayer {
    var isOutputObscuredDueToInsufficientExternalProtection: Bool { get }
}
To
class AVPlayer : NSObject {
    convenience init(url URL: URL)
    class func withURL(_ URL: URL) -> Self
    convenience init(playerItem item: AVPlayerItem?)
    class func withPlayerItem(_ item: AVPlayerItem?) -> Self
    init(url URL: URL)
    init(playerItem item: AVPlayerItem?)
    var status: AVPlayerStatus { get }
    var error: Error? { get }
    var isOutputObscuredDueToInsufficientExternalProtection: Bool { get }
    var allowsAirPlayVideo: Bool
    var isAirPlayVideoActive: Bool { get }
    var usesAirPlayVideoWhileAirPlayScreenIsActive: Bool
    var allowsExternalPlayback: Bool
    var isExternalPlaybackActive: Bool { get }
    var usesExternalPlaybackWhileExternalScreenIsActive: Bool
    var externalPlaybackVideoGravity: String
    var audioOutputDeviceUniqueID: String?
    var appliesMediaSelectionCriteriaAutomatically: Bool
    func setMediaSelectionCriteria(_ criteria: AVPlayerMediaSelectionCriteria?, forMediaCharacteristic mediaCharacteristic: String)
    func mediaSelectionCriteria(forMediaCharacteristic mediaCharacteristic: String) -> AVPlayerMediaSelectionCriteria?
    var volume: Float
    var isMuted: Bool
    var isClosedCaptionDisplayEnabled: Bool
    func addPeriodicTimeObserver(forInterval interval: CMTime, queue queue: DispatchQueue?, using block: @escaping (CMTime) -> Swift.Void) -> Any
    func addBoundaryTimeObserver(forTimes times: [NSValue], queue queue: DispatchQueue?, using block: @escaping () -> Swift.Void) -> Any
    func removeTimeObserver(_ observer: Any)
    var automaticallyWaitsToMinimizeStalling: Bool
    func setRate(_ rate: Float, time itemTime: CMTime, atHostTime hostClockTime: CMTime)
    func preroll(atRate rate: Float, completionHandler completionHandler: ((Bool) -> Swift.Void)? = nil)
    func cancelPendingPrerolls()
    var masterClock: CMClock?
    func currentTime() -> CMTime
    func seek(to date: Date)
    func seek(to date: Date, completionHandler completionHandler: @escaping (Bool) -> Swift.Void)
    func seek(to time: CMTime)
    func seek(to time: CMTime, toleranceBefore toleranceBefore: CMTime, toleranceAfter toleranceAfter: CMTime)
    func seek(to time: CMTime, completionHandler completionHandler: @escaping (Bool) -> Swift.Void)
    func seek(to time: CMTime, toleranceBefore toleranceBefore: CMTime, toleranceAfter toleranceAfter: CMTime, completionHandler completionHandler: @escaping (Bool) -> Swift.Void)
    var currentItem: AVPlayerItem? { get }
    func replaceCurrentItem(with item: AVPlayerItem?)
    var actionAtItemEnd: AVPlayerActionAtItemEnd
    var rate: Float
    func play()
    func pause()
    var timeControlStatus: AVPlayerTimeControlStatus { get }
    var reasonForWaitingToPlay: String? { get }
    func playImmediately(atRate rate: Float)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension AVPlayer : CVarArg {
}
extension AVPlayer : Equatable, Hashable {
    var hashValue: Int { get }
}
extension AVPlayer {
    var rate: Float
    func play()
    func pause()
    var timeControlStatus: AVPlayerTimeControlStatus { get }
    var reasonForWaitingToPlay: String? { get }
    func playImmediately(atRate rate: Float)
}
extension AVPlayer {
    var currentItem: AVPlayerItem? { get }
    func replaceCurrentItem(with item: AVPlayerItem?)
    var actionAtItemEnd: AVPlayerActionAtItemEnd
}
extension AVPlayer {
    func currentTime() -> CMTime
    func seek(to date: Date)
    func seek(to date: Date, completionHandler completionHandler: @escaping (Bool) -> Swift.Void)
    func seek(to time: CMTime)
    func seek(to time: CMTime, toleranceBefore toleranceBefore: CMTime, toleranceAfter toleranceAfter: CMTime)
    func seek(to time: CMTime, completionHandler completionHandler: @escaping (Bool) -> Swift.Void)
    func seek(to time: CMTime, toleranceBefore toleranceBefore: CMTime, toleranceAfter toleranceAfter: CMTime, completionHandler completionHandler: @escaping (Bool) -> Swift.Void)
}
extension AVPlayer {
    var automaticallyWaitsToMinimizeStalling: Bool
    func setRate(_ rate: Float, time itemTime: CMTime, atHostTime hostClockTime: CMTime)
    func preroll(atRate rate: Float, completionHandler completionHandler: ((Bool) -> Swift.Void)? = nil)
    func cancelPendingPrerolls()
    var masterClock: CMClock?
}
extension AVPlayer {
    func addPeriodicTimeObserver(forInterval interval: CMTime, queue queue: DispatchQueue?, using block: @escaping (CMTime) -> Swift.Void) -> Any
    func addBoundaryTimeObserver(forTimes times: [NSValue], queue queue: DispatchQueue?, using block: @escaping () -> Swift.Void) -> Any
    func removeTimeObserver(_ observer: Any)
}
extension AVPlayer {
    var volume: Float
    var isMuted: Bool
    var isClosedCaptionDisplayEnabled: Bool
}
extension AVPlayer {
    var appliesMediaSelectionCriteriaAutomatically: Bool
    func setMediaSelectionCriteria(_ criteria: AVPlayerMediaSelectionCriteria?, forMediaCharacteristic mediaCharacteristic: String)
    func mediaSelectionCriteria(forMediaCharacteristic mediaCharacteristic: String) -> AVPlayerMediaSelectionCriteria?
}
extension AVPlayer {
    var audioOutputDeviceUniqueID: String?
}
extension AVPlayer {
    var allowsExternalPlayback: Bool
    var isExternalPlaybackActive: Bool { get }
    var usesExternalPlaybackWhileExternalScreenIsActive: Bool
    var externalPlaybackVideoGravity: String
}
extension AVPlayer {
    var allowsAirPlayVideo: Bool
    var isAirPlayVideoActive: Bool { get }
    var usesAirPlayVideoWhileAirPlayScreenIsActive: Bool
}
extension AVPlayer {
    var isOutputObscuredDueToInsufficientExternalProtection: Bool { get }
}

Declaration
From
func preroll(atRate rate: Float, completionHandler completionHandler: (@escaping (Bool) -> Swift.Void)? = nil)
To
func preroll(atRate rate: Float, completionHandler completionHandler: ((Bool) -> Swift.Void)? = nil)

Modified AVQueuePlayer
Declaration
From
class AVQueuePlayer : AVPlayer {
    convenience init(items items: [AVPlayerItem])
    class func withItems(_ items: [AVPlayerItem]) -> Self
    init(items items: [AVPlayerItem])
    func items() -> [AVPlayerItem]
    func advanceToNextItem()
    func canInsert(_ item: AVPlayerItem, after afterItem: AVPlayerItem?) -> Bool
    func insert(_ item: AVPlayerItem, after afterItem: AVPlayerItem?)
    func remove(_ item: AVPlayerItem)
    func removeAllItems()
    var isOutputObscuredDueToInsufficientExternalProtection: Bool { get }
    var allowsAirPlayVideo: Bool
    var isAirPlayVideoActive: Bool { get }
    var usesAirPlayVideoWhileAirPlayScreenIsActive: Bool
    var allowsExternalPlayback: Bool
    var isExternalPlaybackActive: Bool { get }
    var usesExternalPlaybackWhileExternalScreenIsActive: Bool
    var externalPlaybackVideoGravity: String
    var audioOutputDeviceUniqueID: String?
    var appliesMediaSelectionCriteriaAutomatically: Bool
    func setMediaSelectionCriteria(_ criteria: AVPlayerMediaSelectionCriteria?, forMediaCharacteristic mediaCharacteristic: String)
    func mediaSelectionCriteria(forMediaCharacteristic mediaCharacteristic: String) -> AVPlayerMediaSelectionCriteria?
    var volume: Float
    var isMuted: Bool
    var isClosedCaptionDisplayEnabled: Bool
    func addPeriodicTimeObserver(forInterval interval: CMTime, queue queue: DispatchQueue?, using block: @escaping (CMTime) -> Void) -> Any
    func addBoundaryTimeObserver(forTimes times: [NSValue], queue queue: DispatchQueue?, using block: @escaping () -> Void) -> Any
    func removeTimeObserver(_ observer: Any)
    var automaticallyWaitsToMinimizeStalling: Bool
    func setRate(_ rate: Float, time itemTime: CMTime, atHostTime hostClockTime: CMTime)
    func preroll(atRate rate: Float, completionHandler completionHandler: (@escaping (Bool) -> Void)? = nil)
    func cancelPendingPrerolls()
    var masterClock: CMClock?
    func currentTime() -> CMTime
    func seek(to date: Date)
    func seek(to date: Date, completionHandler completionHandler: @escaping (Bool) -> Void)
    func seek(to time: CMTime)
    func seek(to time: CMTime, toleranceBefore toleranceBefore: CMTime, toleranceAfter toleranceAfter: CMTime)
    func seek(to time: CMTime, completionHandler completionHandler: @escaping (Bool) -> Void)
    func seek(to time: CMTime, toleranceBefore toleranceBefore: CMTime, toleranceAfter toleranceAfter: CMTime, completionHandler completionHandler: @escaping (Bool) -> Void)
    var currentItem: AVPlayerItem? { get }
    func replaceCurrentItem(with item: AVPlayerItem?)
    var actionAtItemEnd: AVPlayerActionAtItemEnd
    var rate: Float
    func play()
    func pause()
    var timeControlStatus: AVPlayerTimeControlStatus { get }
    var reasonForWaitingToPlay: String? { get }
    func playImmediately(atRate rate: Float)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension AVQueuePlayer : CVarArg {
}
extension AVQueuePlayer : Equatable, Hashable {
    var hashValue: Int { get }
}
To
class AVQueuePlayer : AVPlayer {
    convenience init(items items: [AVPlayerItem])
    class func withItems(_ items: [AVPlayerItem]) -> Self
    init(items items: [AVPlayerItem])
    func items() -> [AVPlayerItem]
    func advanceToNextItem()
    func canInsert(_ item: AVPlayerItem, after afterItem: AVPlayerItem?) -> Bool
    func insert(_ item: AVPlayerItem, after afterItem: AVPlayerItem?)
    func remove(_ item: AVPlayerItem)
    func removeAllItems()
    var isOutputObscuredDueToInsufficientExternalProtection: Bool { get }
    var allowsAirPlayVideo: Bool
    var isAirPlayVideoActive: Bool { get }
    var usesAirPlayVideoWhileAirPlayScreenIsActive: Bool
    var allowsExternalPlayback: Bool
    var isExternalPlaybackActive: Bool { get }
    var usesExternalPlaybackWhileExternalScreenIsActive: Bool
    var externalPlaybackVideoGravity: String
    var audioOutputDeviceUniqueID: String?
    var appliesMediaSelectionCriteriaAutomatically: Bool
    func setMediaSelectionCriteria(_ criteria: AVPlayerMediaSelectionCriteria?, forMediaCharacteristic mediaCharacteristic: String)
    func mediaSelectionCriteria(forMediaCharacteristic mediaCharacteristic: String) -> AVPlayerMediaSelectionCriteria?
    var volume: Float
    var isMuted: Bool
    var isClosedCaptionDisplayEnabled: Bool
    func addPeriodicTimeObserver(forInterval interval: CMTime, queue queue: DispatchQueue?, using block: @escaping (CMTime) -> Void) -> Any
    func addBoundaryTimeObserver(forTimes times: [NSValue], queue queue: DispatchQueue?, using block: @escaping () -> Void) -> Any
    func removeTimeObserver(_ observer: Any)
    var automaticallyWaitsToMinimizeStalling: Bool
    func setRate(_ rate: Float, time itemTime: CMTime, atHostTime hostClockTime: CMTime)
    func preroll(atRate rate: Float, completionHandler completionHandler: ((Bool) -> Void)? = nil)
    func cancelPendingPrerolls()
    var masterClock: CMClock?
    func currentTime() -> CMTime
    func seek(to date: Date)
    func seek(to date: Date, completionHandler completionHandler: @escaping (Bool) -> Void)
    func seek(to time: CMTime)
    func seek(to time: CMTime, toleranceBefore toleranceBefore: CMTime, toleranceAfter toleranceAfter: CMTime)
    func seek(to time: CMTime, completionHandler completionHandler: @escaping (Bool) -> Void)
    func seek(to time: CMTime, toleranceBefore toleranceBefore: CMTime, toleranceAfter toleranceAfter: CMTime, completionHandler completionHandler: @escaping (Bool) -> Void)
    var currentItem: AVPlayerItem? { get }
    func replaceCurrentItem(with item: AVPlayerItem?)
    var actionAtItemEnd: AVPlayerActionAtItemEnd
    var rate: Float
    func play()
    func pause()
    var timeControlStatus: AVPlayerTimeControlStatus { get }
    var reasonForWaitingToPlay: String? { get }
    func playImmediately(atRate rate: Float)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
    func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
    func performSelector(inBackground aSelector: Selector, with arg: Any?)
    class func classForKeyedUnarchiver() -> AnyClass
    var classForKeyedArchiver: AnyClass? { get }
    func replacementObject(for archiver: NSKeyedArchiver) -> Any?
    class func classFallbacksForKeyedArchiver() -> [String]
    class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
    class func automaticallyNotifiesObservers(forKey key: String) -> Bool
    var observationInfo: UnsafeMutableRawPointer?
    func willChangeValue(forKey key: String)
    func didChangeValue(forKey key: String)
    func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
    func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
    func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
    func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
    func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
    class var accessInstanceVariablesDirectly: Bool { get }
    func value(forKey key: String) -> Any?
    func setValue(_ value: Any?, forKey key: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
    func mutableArrayValue(forKey key: String) -> NSMutableArray
    func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
    func mutableSetValue(forKey key: String) -> NSMutableSet
    func value(forKeyPath keyPath: String) -> Any?
    func setValue(_ value: Any?, forKeyPath keyPath: String)
    func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
    func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
    func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
    func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
    func value(forUndefinedKey key: String) -> Any?
    func setValue(_ value: Any?, forUndefinedKey key: String)
    func setNilValueForKey(_ key: String)
    func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
    func setValuesForKeys(_ keyedValues: [String : Any])
    func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
    func fileManager(_ fm: FileManager, willProcessPath path: String)
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
    func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
    class func cancelPreviousPerformRequests(withTarget aTarget: Any)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
    func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
    var autoContentAccessingProxy: Any { get }
    class func version() -> Int
    class func setVersion(_ aVersion: Int)
    var classForCoder: AnyClass { get }
    func awakeAfter(using aDecoder: NSCoder) -> Any?
}
extension AVQueuePlayer : CVarArg {
}
extension AVQueuePlayer : Equatable, Hashable {
    var hashValue: Int { get }
}

Feedback