// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.
// Code generated by Microsoft (R) AutoRest Code Generator.

package com.azure.resourcemanager.vmwarecloudsimple.models;

import com.azure.resourcemanager.vmwarecloudsimple.fluent.models.VirtualNicInner;
import java.util.List;

/** An immutable client-side representation of VirtualNic. */
public interface VirtualNic {
    /**
     * Gets the customization property: guest OS customization for nic.
     *
     * @return the customization value.
     */
    GuestOsnicCustomization customization();

    /**
     * Gets the ipAddresses property: NIC ip address.
     *
     * @return the ipAddresses value.
     */
    List<String> ipAddresses();

    /**
     * Gets the macAddress property: NIC MAC address.
     *
     * @return the macAddress value.
     */
    String macAddress();

    /**
     * Gets the network property: Virtual Network.
     *
     * @return the network value.
     */
    VirtualNetwork network();

    /**
     * Gets the nicType property: NIC type.
     *
     * @return the nicType value.
     */
    NicType nicType();

    /**
     * Gets the powerOnBoot property: Is NIC powered on/off on boot.
     *
     * @return the powerOnBoot value.
     */
    Boolean powerOnBoot();

    /**
     * Gets the virtualNicId property: NIC id.
     *
     * @return the virtualNicId value.
     */
    String virtualNicId();

    /**
     * Gets the virtualNicName property: NIC name.
     *
     * @return the virtualNicName value.
     */
    String virtualNicName();

    /**
     * Gets the inner com.azure.resourcemanager.vmwarecloudsimple.fluent.models.VirtualNicInner object.
     *
     * @return the inner object.
     */
    VirtualNicInner innerModel();
}
