         WrapperVideoEncoderFactory.shared.simulcastEnabled = configuration.simulcastEnabled || (!Sora.isSpotlightLegacyEnabled && configuration.spotlightEnabled == .enabled)
 
         internalState = PeerChannelInternalState(
-            signalingState: PeerChannelSignalingState(
-                nativeValue: nativeChannel.signalingState),
-            iceConnectionState: ICEConnectionState(
-                nativeValue: nativeChannel.iceConnectionState),
-            iceGatheringState: ICEGatheringState(
-                nativeValue: nativeChannel.iceGatheringState))
+            signalingState: nativeChannel.signalingState,
+            iceConnectionState: nativeChannel.iceConnectionState,
+            iceGatheringState: nativeChannel.iceGatheringState)
         internalState.onCompleteHandler = finishConnecting
         
         internalState.onDisconnectHandler = {

    var onCompleteHandler: (() -> Void)?
    var onDisconnectHandler: (() -> Void)?
    
    init(signalingState: PeerChannelSignalingState,
         iceConnectionState: ICEConnectionState,
         iceGatheringState: ICEGatheringState) {
        self.signalingState = signalingState
        self.iceConnectionState = iceConnectionState
        self.iceGatheringState = iceGatheringState

    
    func peerConnection(_ nativePeerConnection: RTCPeerConnection,
                        didChange newState: RTCIceConnectionState) {
        Logger.debug(type: .peerChannel,
                     message: "changed ICE connection state to \(newState)")
        internalState.iceConnectionState = newState
