// swift-interface-format-version: 1.0
// swift-compiler-version: Apple Swift version 5.7.1 (swiftlang-5.7.1.134.4 clang-1400.0.29.51)
// swift-module-flags: -target arm64e-apple-ios16.2-macabi -enable-objc-interop -autolink-force-load -enable-library-evolution -module-link-name swiftARKit -swift-version 5 -enforce-exclusivity=checked -O -library-level api -module-name ARKit
// swift-module-flags-ignorable: -enable-bare-slash-regex -user-module-version 381.26
@_exported import ARKit
import Swift
import _Concurrency
import _StringProcessing
@available(iOS 11.0, *)
extension ARKit.ARCamera {
  @frozen public enum TrackingState {
    public enum Reason {
      case initializing
      case excessiveMotion
      case insufficientFeatures
      @available(iOS 11.3, *)
      case relocalizing
      public static func == (a: ARKit.ARCamera.TrackingState.Reason, b: ARKit.ARCamera.TrackingState.Reason) -> Swift.Bool
      public func hash(into hasher: inout Swift.Hasher)
      public var hashValue: Swift.Int {
        get
      }
    }
    case notAvailable
    case limited(ARKit.ARCamera.TrackingState.Reason)
    case normal
  }
  public var trackingState: ARKit.ARCamera.TrackingState {
    get
  }
  @available(iOS 12.0, *)
  @nonobjc public func unprojectPoint(_ point: CoreFoundation.CGPoint, ontoPlane planeTransform: simd.simd_float4x4, orientation: UIKit.UIInterfaceOrientation, viewportSize: CoreFoundation.CGSize) -> simd.simd_float3?
}
@available(iOS 16.0, *)
extension ARKit.ARCamera.TrackingState : Swift.Equatable {
  public static func == (a: ARKit.ARCamera.TrackingState, b: ARKit.ARCamera.TrackingState) -> Swift.Bool
}
@available(iOS 12.0, *)
extension ARKit.ARSCNView {
  @nonobjc @_Concurrency.MainActor(unsafe) public func unprojectPoint(_ point: CoreFoundation.CGPoint, ontoPlane planeTransform: simd.simd_float4x4) -> simd.simd_float3?
}
@available(iOS 11.0, *)
extension ARKit.ARPointCloud {
  @nonobjc public var points: [SpriteKit.vector_float3] {
    get
  }
  @nonobjc public var identifiers: [Swift.UInt64] {
    get
  }
}
@available(iOS 11.0, *)
extension ARKit.ARFaceGeometry {
  @nonobjc public var vertices: [SpriteKit.vector_float3] {
    get
  }
  @nonobjc public var textureCoordinates: [simd.vector_float2] {
    get
  }
  @nonobjc public var triangleIndices: [Swift.Int16] {
    get
  }
}
@available(iOS 11.3, *)
extension ARKit.ARPlaneGeometry {
  @nonobjc public var vertices: [SpriteKit.vector_float3] {
    get
  }
  @nonobjc public var textureCoordinates: [simd.vector_float2] {
    get
  }
  @nonobjc public var triangleIndices: [Swift.Int16] {
    get
  }
  @nonobjc public var boundaryVertices: [SpriteKit.vector_float3] {
    get
  }
}
@available(iOS 12.0, *)
extension ARKit.ARPlaneAnchor {
  public enum Classification {
    public enum Status {
      case notAvailable
      case undetermined
      case unknown
      public static func == (a: ARKit.ARPlaneAnchor.Classification.Status, b: ARKit.ARPlaneAnchor.Classification.Status) -> Swift.Bool
      public func hash(into hasher: inout Swift.Hasher)
      public var hashValue: Swift.Int {
        get
      }
    }
    case none(ARKit.ARPlaneAnchor.Classification.Status)
    case wall
    case floor
    case ceiling
    case table
    case seat
    case window
    case door
  }
  public var classification: ARKit.ARPlaneAnchor.Classification {
    get
  }
}
@available(iOS 16.0, *)
extension ARKit.ARPlaneAnchor.Classification : Swift.Equatable {
  public static func == (a: ARKit.ARPlaneAnchor.Classification, b: ARKit.ARPlaneAnchor.Classification) -> Swift.Bool
}
@available(iOS 13.0, *)
extension ARKit.ARSkeletonDefinition {
  @nonobjc public var parentIndices: [Swift.Int] {
    get
  }
  @nonobjc public func index(for jointName: ARKit.ARSkeleton.JointName) -> Swift.Int
}
@available(iOS 13.0, *)
extension ARKit.ARSkeleton3D {
  @nonobjc public var jointModelTransforms: [simd.simd_float4x4] {
    get
  }
  @nonobjc public var jointLocalTransforms: [simd.simd_float4x4] {
    get
  }
  @nonobjc public func modelTransform(for jointName: ARKit.ARSkeleton.JointName) -> simd.simd_float4x4?
  @nonobjc public func localTransform(for jointName: ARKit.ARSkeleton.JointName) -> simd.simd_float4x4?
}
@available(iOS 13.0, *)
extension ARKit.ARSkeleton2D {
  @nonobjc public var jointLandmarks: [simd.simd_float2] {
    get
  }
  @nonobjc public func landmark(for jointName: ARKit.ARSkeleton.JointName) -> simd.simd_float2?
}
@available(iOS 14.0, *)
extension ARKit.ARConfidenceLevel : Swift.Comparable {
  public static func < (lhs: ARKit.ARConfidenceLevel, rhs: ARKit.ARConfidenceLevel) -> Swift.Bool
}
@available(iOS 13.4, *)
extension ARKit.ARGeometrySource {
  @available(iOS 14.0, *)
  @nonobjc public subscript(index: Swift.Int32) -> (Swift.Float, Swift.Float, Swift.Float) {
    get
  }
  @available(iOS 14.0, *)
  @nonobjc public subscript(index: Swift.Int32) -> Swift.CUnsignedChar {
    get
  }
}
@available(iOS 13.4, *)
extension ARKit.ARGeometryElement {
  @available(iOS 14.0, *)
  @nonobjc public subscript(index: Swift.Int) -> [Swift.Int32] {
    get
  }
}
@available(iOS 14.0, *)
extension ARKit.ARGeoAnchor {
  @nonobjc convenience public init(coordinate: CoreLocation.CLLocationCoordinate2D, altitude: CoreLocation.CLLocationDistance? = nil)
  @nonobjc convenience public init(name: Swift.String, coordinate: CoreLocation.CLLocationCoordinate2D, altitude: CoreLocation.CLLocationDistance? = nil)
  @nonobjc public var altitude: CoreLocation.CLLocationDistance? {
    get
  }
}
@available(iOS 11.0, *)
extension ARKit.ARCamera.TrackingState.Reason : Swift.Equatable {}
@available(iOS 11.0, *)
extension ARKit.ARCamera.TrackingState.Reason : Swift.Hashable {}
@available(iOS 12.0, *)
extension ARKit.ARPlaneAnchor.Classification.Status : Swift.Equatable {}
@available(iOS 12.0, *)
extension ARKit.ARPlaneAnchor.Classification.Status : Swift.Hashable {}
