<gh_stars>0// *** 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 Pulumiverse.Fortios
{
    public static class GetSystemFipscc
    {
        /// <summary>
        /// Use this data source to get information on fortios system fipscc
        /// </summary>
        public static Task<GetSystemFipsccResult> InvokeAsync(GetSystemFipsccArgs? args = null, InvokeOptions? options = null)
            => global::Pulumi.Deployment.Instance.InvokeAsync<GetSystemFipsccResult>("fortios:index/getSystemFipscc:getSystemFipscc", args ?? new GetSystemFipsccArgs(), options.WithDefaults());

        /// <summary>
        /// Use this data source to get information on fortios system fipscc
        /// </summary>
        public static Output<GetSystemFipsccResult> Invoke(GetSystemFipsccInvokeArgs? args = null, InvokeOptions? options = null)
            => global::Pulumi.Deployment.Instance.Invoke<GetSystemFipsccResult>("fortios:index/getSystemFipscc:getSystemFipscc", args ?? new GetSystemFipsccInvokeArgs(), options.WithDefaults());
    }


    public sealed class GetSystemFipsccArgs : global::Pulumi.InvokeArgs
    {
        /// <summary>
        /// Specifies the vdom to which the data source will be applied when the FortiGate unit is running in VDOM mode. Only one vdom can be specified. If you want to inherit the vdom configuration of the provider, please do not set this parameter.
        /// </summary>
        [Input("vdomparam")]
        public string? Vdomparam { get; set; }

        public GetSystemFipsccArgs()
        {
        }
        public static new GetSystemFipsccArgs Empty => new GetSystemFipsccArgs();
    }

    public sealed class GetSystemFipsccInvokeArgs : global::Pulumi.InvokeArgs
    {
        /// <summary>
        /// Specifies the vdom to which the data source will be applied when the FortiGate unit is running in VDOM mode. Only one vdom can be specified. If you want to inherit the vdom configuration of the provider, please do not set this parameter.
        /// </summary>
        [Input("vdomparam")]
        public Input<string>? Vdomparam { get; set; }

        public GetSystemFipsccInvokeArgs()
        {
        }
        public static new GetSystemFipsccInvokeArgs Empty => new GetSystemFipsccInvokeArgs();
    }


    [OutputType]
    public sealed class GetSystemFipsccResult
    {
        /// <summary>
        /// Enable/disable/dynamic entropy token.
        /// </summary>
        public readonly string EntropyToken;
        /// <summary>
        /// The provider-assigned unique ID for this managed resource.
        /// </summary>
        public readonly string Id;
        /// <summary>
        /// Enable/disable self tests after key generation.
        /// </summary>
        public readonly string KeyGenerationSelfTest;
        /// <summary>
        /// Self test period.
        /// </summary>
        public readonly int SelfTestPeriod;
        /// <summary>
        /// Enable/disable FIPS-CC mode.
        /// </summary>
        public readonly string Status;
        public readonly string? Vdomparam;

        [OutputConstructor]
        private GetSystemFipsccResult(
            string entropyToken,

            string id,

            string keyGenerationSelfTest,

            int selfTestPeriod,

            string status,

            string? vdomparam)
        {
            EntropyToken = entropyToken;
            Id = id;
            KeyGenerationSelfTest = keyGenerationSelfTest;
            SelfTestPeriod = selfTestPeriod;
            Status = status;
            Vdomparam = vdomparam;
        }
    }
}
