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

package com.azure.resourcemanager.paloaltonetworks.ngfw.models;

import com.azure.resourcemanager.paloaltonetworks.ngfw.fluent.models.LogSettingsInner;

/** An immutable client-side representation of LogSettings. */
public interface LogSettings {
    /**
     * Gets the logType property: One of possible log type.
     *
     * @return the logType value.
     */
    LogType logType();

    /**
     * Gets the logOption property: Log option SAME/INDIVIDUAL.
     *
     * @return the logOption value.
     */
    LogOption logOption();

    /**
     * Gets the applicationInsights property: Application Insight details.
     *
     * @return the applicationInsights value.
     */
    ApplicationInsights applicationInsights();

    /**
     * Gets the commonDestination property: Common destination configurations.
     *
     * @return the commonDestination value.
     */
    LogDestination commonDestination();

    /**
     * Gets the trafficLogDestination property: Traffic destination configurations.
     *
     * @return the trafficLogDestination value.
     */
    LogDestination trafficLogDestination();

    /**
     * Gets the threatLogDestination property: Threat destination configurations.
     *
     * @return the threatLogDestination value.
     */
    LogDestination threatLogDestination();

    /**
     * Gets the decryptLogDestination property: Decrypt destination configurations.
     *
     * @return the decryptLogDestination value.
     */
    LogDestination decryptLogDestination();

    /**
     * Gets the inner com.azure.resourcemanager.paloaltonetworks.ngfw.fluent.models.LogSettingsInner object.
     *
     * @return the inner object.
     */
    LogSettingsInner innerModel();
}
