/**
 * Core Services API
 * Use the Core Services API to manage resources such as virtual cloud networks (VCNs),
compute instances, and block storage volumes. For more information, see the console
documentation for the [Networking](/iaas/Content/Network/Concepts/overview.htm),
[Compute](/iaas/Content/Compute/Concepts/computeoverview.htm), and
[Block Volume](/iaas/Content/Block/Concepts/overview.htm) services.

 * OpenAPI spec version: 20160918
 *
 *
 * NOTE: This class is auto generated by OracleSDKGenerator.
 * Do not edit the class manually.
 *
 * Copyright (c) 2020, 2022, Oracle and/or its affiliates.  All rights reserved.
 * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license.
 */ import * as model from "../model" ; import common = require ( "oci-common" ) ; /**
 * The status of the cross-connect.
 */ export interface CrossConnectStatus { /**
     * The [OCID](https://docs.cloud.oracle.com/iaas/Content/General/Concepts/identifiers.htm) of the cross-connect.
     */ "crossConnectId" : string ; /**
     * Indicates whether Oracle's side of the interface is up or down.
     */ "interfaceState" ? : CrossConnectStatus . InterfaceState ; /**
      * The light level of the cross-connect (in dBm).
  * <p>
  Example: `14.0`
  *  Note: Numbers greater than Number.MAX_SAFE_INTEGER will result in rounding issues.
      */ "lightLevelIndBm" ? : number ; /**
     * Status indicator corresponding to the light level.
     * <p>
     * **NO_LIGHT:** No measurable light
     *   * **LOW_WARN:** There's measurable light but it's too low
     *   * **HIGH_WARN:** Light level is too high
     *   * **BAD:** There's measurable light but the signal-to-noise ratio is bad
     *   * **GOOD:** Good light level
     *
     */ "lightLevelIndicator" ? : CrossConnectStatus . LightLevelIndicator ; /**
      * Encryption status of this cross connect.
  * <p>
  Possible values:
  * * **UP:** Traffic is encrypted over this cross-connect
  * * **DOWN:** Traffic is not encrypted over this cross-connect
  * * **CIPHER_MISMATCH:** The MACsec encryption cipher doesn't match the cipher on the CPE
  * * **CKN_MISMATCH:** The MACsec Connectivity association Key Name (CKN) doesn't match the CKN on the CPE
  * * **CAK_MISMATCH:** The MACsec Connectivity Association Key (CAK) doesn't match the CAK on the CPE
  *
      */ "encryptionStatus" ? : CrossConnectStatus . EncryptionStatus ; /**
      * The light levels of the cross-connect (in dBm).
  * <p>
  Example: `[14.0, -14.0, 2.1, -10.1]`
  *
      */ "lightLevelsInDBm" ? : Array < number > ; } export namespace CrossConnectStatus { export enum InterfaceState { Up = "UP" , Down = "DOWN" , /**
         * This value is used if a service returns a value for this enum that is not recognized by this
         * version of the SDK.
         */ UnknownValue = "UNKNOWN_VALUE" } export enum LightLevelIndicator { NoLight = "NO_LIGHT" , LowWarn = "LOW_WARN" , HighWarn = "HIGH_WARN" , Bad = "BAD" , Good = "GOOD" , /**
         * This value is used if a service returns a value for this enum that is not recognized by this
         * version of the SDK.
         */ UnknownValue = "UNKNOWN_VALUE" } export enum EncryptionStatus { Up = "UP" , Down = "DOWN" , CipherMismatch = "CIPHER_MISMATCH" , CknMismatch = "CKN_MISMATCH" , CakMismatch = "CAK_MISMATCH" , /**
         * This value is used if a service returns a value for this enum that is not recognized by this
         * version of the SDK.
         */ UnknownValue = "UNKNOWN_VALUE" } export function getJsonObj ( obj ) { const jsonObj = { ... obj , ... { } } ; return jsonObj ; } export function getDeserializedJsonObj ( obj ) { const jsonObj = { ... obj , ... { } } ; return jsonObj ; } }