// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License.

// <auto-generated/>

#nullable disable

using System;

namespace Azure.Security.Attestation.Models
{
    /// <summary> Attestation request for Intel SGX enclaves. </summary>
    internal partial class AttestOpenEnclaveRequest
    {
        /// <summary> Initializes a new instance of AttestOpenEnclaveRequest. </summary>
        public AttestOpenEnclaveRequest()
        {
        }

        /// <summary> OpenEnclave report from the enclave to be attested. </summary>
        public byte[] Report { get; set; }
        /// <summary> Runtime data provided by the enclave at the time of report generation. The MAA will verify that the first 32 bytes of the report_data field of the quote contains the SHA256 hash of the decoded &quot;data&quot; field of the runtime data. </summary>
        public RuntimeData RuntimeData { get; set; }
        /// <summary> Base64Url encoded &quot;InitTime data&quot;. The MAA will verify that the init data was known to the enclave. Note that InitTimeData is invalid for CoffeeLake processors. </summary>
        public InitTimeData InitTimeData { get; set; }
        /// <summary> Attest against the provided draft policy. Note that the resulting token cannot be validated. </summary>
        public string DraftPolicyForAttestation { get; set; }
    }
}
