<reponame>pierskarsenbarg/pulumi-nutanix// *** WARNING: this file was generated by the Pulumi Terraform Bridge (tfgen) Tool. ***
// *** Do not edit by hand unless you're certain you know what you are doing! ***

using System;
using System.Collections.Generic;
using System.Collections.Immutable;
using System.Threading.Tasks;
using Pulumi.Serialization;
using Pulumi;

namespace PiersKarsenbarg.Nutanix
{
    public static class GetFoundationCentralImagedNodeDetails
    {
        /// <summary>
        /// Get the details of a single node given its UUID.
        /// 
        /// {{% examples %}}
        /// ## Example Usage
        /// {{% example %}}
        /// 
        /// ```csharp
        /// using Pulumi;
        /// using Nutanix = Pulumi.Nutanix;
        /// 
        /// class MyStack : Stack
        /// {
        ///     public MyStack()
        ///     {
        ///         var nodesDetails = Output.Create(Nutanix.GetFoundationCentralImagedNodeDetails.InvokeAsync(new Nutanix.GetFoundationCentralImagedNodeDetailsArgs
        ///         {
        ///             ImagedNodeUuid = "&lt;IMAGED-NODE-UUID&gt;",
        ///         }));
        ///     }
        /// 
        /// }
        /// ```
        /// {{% /example %}}
        /// {{% /examples %}}
        /// </summary>
        public static Task<GetFoundationCentralImagedNodeDetailsResult> InvokeAsync(GetFoundationCentralImagedNodeDetailsArgs args, InvokeOptions? options = null)
            => Pulumi.Deployment.Instance.InvokeAsync<GetFoundationCentralImagedNodeDetailsResult>("nutanix:index/getFoundationCentralImagedNodeDetails:getFoundationCentralImagedNodeDetails", args ?? new GetFoundationCentralImagedNodeDetailsArgs(), options.WithDefaults());

        /// <summary>
        /// Get the details of a single node given its UUID.
        /// 
        /// {{% examples %}}
        /// ## Example Usage
        /// {{% example %}}
        /// 
        /// ```csharp
        /// using Pulumi;
        /// using Nutanix = Pulumi.Nutanix;
        /// 
        /// class MyStack : Stack
        /// {
        ///     public MyStack()
        ///     {
        ///         var nodesDetails = Output.Create(Nutanix.GetFoundationCentralImagedNodeDetails.InvokeAsync(new Nutanix.GetFoundationCentralImagedNodeDetailsArgs
        ///         {
        ///             ImagedNodeUuid = "&lt;IMAGED-NODE-UUID&gt;",
        ///         }));
        ///     }
        /// 
        /// }
        /// ```
        /// {{% /example %}}
        /// {{% /examples %}}
        /// </summary>
        public static Output<GetFoundationCentralImagedNodeDetailsResult> Invoke(GetFoundationCentralImagedNodeDetailsInvokeArgs args, InvokeOptions? options = null)
            => Pulumi.Deployment.Instance.Invoke<GetFoundationCentralImagedNodeDetailsResult>("nutanix:index/getFoundationCentralImagedNodeDetails:getFoundationCentralImagedNodeDetails", args ?? new GetFoundationCentralImagedNodeDetailsInvokeArgs(), options.WithDefaults());
    }


    public sealed class GetFoundationCentralImagedNodeDetailsArgs : Pulumi.InvokeArgs
    {
        [Input("imagedNodeUuid", required: true)]
        public string ImagedNodeUuid { get; set; } = null!;

        [Input("ipv6Interface")]
        public string? Ipv6Interface { get; set; }

        [Input("objectVersion")]
        public int? ObjectVersion { get; set; }

        public GetFoundationCentralImagedNodeDetailsArgs()
        {
        }
    }

    public sealed class GetFoundationCentralImagedNodeDetailsInvokeArgs : Pulumi.InvokeArgs
    {
        [Input("imagedNodeUuid", required: true)]
        public Input<string> ImagedNodeUuid { get; set; } = null!;

        [Input("ipv6Interface")]
        public Input<string>? Ipv6Interface { get; set; }

        [Input("objectVersion")]
        public Input<int>? ObjectVersion { get; set; }

        public GetFoundationCentralImagedNodeDetailsInvokeArgs()
        {
        }
    }


    [OutputType]
    public sealed class GetFoundationCentralImagedNodeDetailsResult
    {
        public readonly string AosVersion;
        public readonly string ApiKeyUuid;
        public readonly bool Available;
        public readonly string BlockSerial;
        public readonly string CreatedTimestamp;
        public readonly string CurrentTime;
        public readonly string CvmGateway;
        public readonly string CvmIp;
        public readonly string CvmIpv6;
        public readonly string CvmNetmask;
        public readonly bool CvmUp;
        public readonly string CvmUuid;
        public readonly int CvmVlanId;
        public readonly string FoundationVersion;
        public readonly ImmutableDictionary<string, object> HardwareAttributes;
        public readonly string HypervisorGateway;
        public readonly string HypervisorHostname;
        public readonly string HypervisorIp;
        public readonly string HypervisorNetmask;
        public readonly string HypervisorType;
        public readonly string HypervisorVersion;
        /// <summary>
        /// The provider-assigned unique ID for this managed resource.
        /// </summary>
        public readonly string Id;
        public readonly string ImagedClusterUuid;
        public readonly string ImagedNodeUuid;
        public readonly string IpmiGateway;
        public readonly string IpmiIp;
        public readonly string IpmiNetmask;
        public readonly string Ipv6Interface;
        public readonly ImmutableArray<string> LatestHbTsLists;
        public readonly string Model;
        public readonly string NodePosition;
        public readonly string NodeSerial;
        public readonly string NodeState;
        public readonly string NodeType;
        public readonly int ObjectVersion;

        [OutputConstructor]
        private GetFoundationCentralImagedNodeDetailsResult(
            string aosVersion,

            string apiKeyUuid,

            bool available,

            string blockSerial,

            string createdTimestamp,

            string currentTime,

            string cvmGateway,

            string cvmIp,

            string cvmIpv6,

            string cvmNetmask,

            bool cvmUp,

            string cvmUuid,

            int cvmVlanId,

            string foundationVersion,

            ImmutableDictionary<string, object> hardwareAttributes,

            string hypervisorGateway,

            string hypervisorHostname,

            string hypervisorIp,

            string hypervisorNetmask,

            string hypervisorType,

            string hypervisorVersion,

            string id,

            string imagedClusterUuid,

            string imagedNodeUuid,

            string ipmiGateway,

            string ipmiIp,

            string ipmiNetmask,

            string ipv6Interface,

            ImmutableArray<string> latestHbTsLists,

            string model,

            string nodePosition,

            string nodeSerial,

            string nodeState,

            string nodeType,

            int objectVersion)
        {
            AosVersion = aosVersion;
            ApiKeyUuid = apiKeyUuid;
            Available = available;
            BlockSerial = blockSerial;
            CreatedTimestamp = createdTimestamp;
            CurrentTime = currentTime;
            CvmGateway = cvmGateway;
            CvmIp = cvmIp;
            CvmIpv6 = cvmIpv6;
            CvmNetmask = cvmNetmask;
            CvmUp = cvmUp;
            CvmUuid = cvmUuid;
            CvmVlanId = cvmVlanId;
            FoundationVersion = foundationVersion;
            HardwareAttributes = hardwareAttributes;
            HypervisorGateway = hypervisorGateway;
            HypervisorHostname = hypervisorHostname;
            HypervisorIp = hypervisorIp;
            HypervisorNetmask = hypervisorNetmask;
            HypervisorType = hypervisorType;
            HypervisorVersion = hypervisorVersion;
            Id = id;
            ImagedClusterUuid = imagedClusterUuid;
            ImagedNodeUuid = imagedNodeUuid;
            IpmiGateway = ipmiGateway;
            IpmiIp = ipmiIp;
            IpmiNetmask = ipmiNetmask;
            Ipv6Interface = ipv6Interface;
            LatestHbTsLists = latestHbTsLists;
            Model = model;
            NodePosition = nodePosition;
            NodeSerial = nodeSerial;
            NodeState = nodeState;
            NodeType = nodeType;
            ObjectVersion = objectVersion;
        }
    }
}
