<?php

/**
 * Generated by phpSPO model generator 2020-05-26T22:12:31+00:00 
 */
namespace Office365\Graph;

use Office365\Runtime\ClientObject;
use Office365\Runtime\ResourcePath;
class Windows10EndpointProtectionConfiguration extends ClientObject
{
    /**
     * @return bool
     */
    public function getFirewallBlockStatefulFTP()
    {
        if (!$this->isPropertyAvailable("FirewallBlockStatefulFTP")) {
            return null;
        }
        return $this->getProperty("FirewallBlockStatefulFTP");
    }
    /**
     * @var bool
     */
    public function setFirewallBlockStatefulFTP($value)
    {
        $this->setProperty("FirewallBlockStatefulFTP", $value, true);
    }
    /**
     * @return integer
     */
    public function getFirewallIdleTimeoutForSecurityAssociationInSeconds()
    {
        if (!$this->isPropertyAvailable("FirewallIdleTimeoutForSecurityAssociationInSeconds")) {
            return null;
        }
        return $this->getProperty("FirewallIdleTimeoutForSecurityAssociationInSeconds");
    }
    /**
     * @var integer
     */
    public function setFirewallIdleTimeoutForSecurityAssociationInSeconds($value)
    {
        $this->setProperty("FirewallIdleTimeoutForSecurityAssociationInSeconds", $value, true);
    }
    /**
     * @return bool
     */
    public function getFirewallIPSecExemptionsAllowNeighborDiscovery()
    {
        if (!$this->isPropertyAvailable("FirewallIPSecExemptionsAllowNeighborDiscovery")) {
            return null;
        }
        return $this->getProperty("FirewallIPSecExemptionsAllowNeighborDiscovery");
    }
    /**
     * @var bool
     */
    public function setFirewallIPSecExemptionsAllowNeighborDiscovery($value)
    {
        $this->setProperty("FirewallIPSecExemptionsAllowNeighborDiscovery", $value, true);
    }
    /**
     * @return bool
     */
    public function getFirewallIPSecExemptionsAllowICMP()
    {
        if (!$this->isPropertyAvailable("FirewallIPSecExemptionsAllowICMP")) {
            return null;
        }
        return $this->getProperty("FirewallIPSecExemptionsAllowICMP");
    }
    /**
     * @var bool
     */
    public function setFirewallIPSecExemptionsAllowICMP($value)
    {
        $this->setProperty("FirewallIPSecExemptionsAllowICMP", $value, true);
    }
    /**
     * @return bool
     */
    public function getFirewallIPSecExemptionsAllowRouterDiscovery()
    {
        if (!$this->isPropertyAvailable("FirewallIPSecExemptionsAllowRouterDiscovery")) {
            return null;
        }
        return $this->getProperty("FirewallIPSecExemptionsAllowRouterDiscovery");
    }
    /**
     * @var bool
     */
    public function setFirewallIPSecExemptionsAllowRouterDiscovery($value)
    {
        $this->setProperty("FirewallIPSecExemptionsAllowRouterDiscovery", $value, true);
    }
    /**
     * @return bool
     */
    public function getFirewallIPSecExemptionsAllowDHCP()
    {
        if (!$this->isPropertyAvailable("FirewallIPSecExemptionsAllowDHCP")) {
            return null;
        }
        return $this->getProperty("FirewallIPSecExemptionsAllowDHCP");
    }
    /**
     * @var bool
     */
    public function setFirewallIPSecExemptionsAllowDHCP($value)
    {
        $this->setProperty("FirewallIPSecExemptionsAllowDHCP", $value, true);
    }
    /**
     * @return bool
     */
    public function getFirewallMergeKeyingModuleSettings()
    {
        if (!$this->isPropertyAvailable("FirewallMergeKeyingModuleSettings")) {
            return null;
        }
        return $this->getProperty("FirewallMergeKeyingModuleSettings");
    }
    /**
     * @var bool
     */
    public function setFirewallMergeKeyingModuleSettings($value)
    {
        $this->setProperty("FirewallMergeKeyingModuleSettings", $value, true);
    }
    /**
     * @return array
     */
    public function getDefenderAttackSurfaceReductionExcludedPaths()
    {
        if (!$this->isPropertyAvailable("DefenderAttackSurfaceReductionExcludedPaths")) {
            return null;
        }
        return $this->getProperty("DefenderAttackSurfaceReductionExcludedPaths");
    }
    /**
     * @var array
     */
    public function setDefenderAttackSurfaceReductionExcludedPaths($value)
    {
        $this->setProperty("DefenderAttackSurfaceReductionExcludedPaths", $value, true);
    }
    /**
     * @return array
     */
    public function getDefenderGuardedFoldersAllowedAppPaths()
    {
        if (!$this->isPropertyAvailable("DefenderGuardedFoldersAllowedAppPaths")) {
            return null;
        }
        return $this->getProperty("DefenderGuardedFoldersAllowedAppPaths");
    }
    /**
     * @var array
     */
    public function setDefenderGuardedFoldersAllowedAppPaths($value)
    {
        $this->setProperty("DefenderGuardedFoldersAllowedAppPaths", $value, true);
    }
    /**
     * @return array
     */
    public function getDefenderAdditionalGuardedFolders()
    {
        if (!$this->isPropertyAvailable("DefenderAdditionalGuardedFolders")) {
            return null;
        }
        return $this->getProperty("DefenderAdditionalGuardedFolders");
    }
    /**
     * @var array
     */
    public function setDefenderAdditionalGuardedFolders($value)
    {
        $this->setProperty("DefenderAdditionalGuardedFolders", $value, true);
    }
    /**
     * @return string
     */
    public function getDefenderExploitProtectionXml()
    {
        if (!$this->isPropertyAvailable("DefenderExploitProtectionXml")) {
            return null;
        }
        return $this->getProperty("DefenderExploitProtectionXml");
    }
    /**
     * @var string
     */
    public function setDefenderExploitProtectionXml($value)
    {
        $this->setProperty("DefenderExploitProtectionXml", $value, true);
    }
    /**
     * @return string
     */
    public function getDefenderExploitProtectionXmlFileName()
    {
        if (!$this->isPropertyAvailable("DefenderExploitProtectionXmlFileName")) {
            return null;
        }
        return $this->getProperty("DefenderExploitProtectionXmlFileName");
    }
    /**
     * @var string
     */
    public function setDefenderExploitProtectionXmlFileName($value)
    {
        $this->setProperty("DefenderExploitProtectionXmlFileName", $value, true);
    }
    /**
     * @return bool
     */
    public function getDefenderSecurityCenterBlockExploitProtectionOverride()
    {
        if (!$this->isPropertyAvailable("DefenderSecurityCenterBlockExploitProtectionOverride")) {
            return null;
        }
        return $this->getProperty("DefenderSecurityCenterBlockExploitProtectionOverride");
    }
    /**
     * @var bool
     */
    public function setDefenderSecurityCenterBlockExploitProtectionOverride($value)
    {
        $this->setProperty("DefenderSecurityCenterBlockExploitProtectionOverride", $value, true);
    }
    /**
     * @return bool
     */
    public function getSmartScreenEnableInShell()
    {
        if (!$this->isPropertyAvailable("SmartScreenEnableInShell")) {
            return null;
        }
        return $this->getProperty("SmartScreenEnableInShell");
    }
    /**
     * @var bool
     */
    public function setSmartScreenEnableInShell($value)
    {
        $this->setProperty("SmartScreenEnableInShell", $value, true);
    }
    /**
     * @return bool
     */
    public function getSmartScreenBlockOverrideForFiles()
    {
        if (!$this->isPropertyAvailable("SmartScreenBlockOverrideForFiles")) {
            return null;
        }
        return $this->getProperty("SmartScreenBlockOverrideForFiles");
    }
    /**
     * @var bool
     */
    public function setSmartScreenBlockOverrideForFiles($value)
    {
        $this->setProperty("SmartScreenBlockOverrideForFiles", $value, true);
    }
    /**
     * @return bool
     */
    public function getApplicationGuardEnabled()
    {
        if (!$this->isPropertyAvailable("ApplicationGuardEnabled")) {
            return null;
        }
        return $this->getProperty("ApplicationGuardEnabled");
    }
    /**
     * @var bool
     */
    public function setApplicationGuardEnabled($value)
    {
        $this->setProperty("ApplicationGuardEnabled", $value, true);
    }
    /**
     * @return bool
     */
    public function getApplicationGuardBlockNonEnterpriseContent()
    {
        if (!$this->isPropertyAvailable("ApplicationGuardBlockNonEnterpriseContent")) {
            return null;
        }
        return $this->getProperty("ApplicationGuardBlockNonEnterpriseContent");
    }
    /**
     * @var bool
     */
    public function setApplicationGuardBlockNonEnterpriseContent($value)
    {
        $this->setProperty("ApplicationGuardBlockNonEnterpriseContent", $value, true);
    }
    /**
     * @return bool
     */
    public function getApplicationGuardAllowPersistence()
    {
        if (!$this->isPropertyAvailable("ApplicationGuardAllowPersistence")) {
            return null;
        }
        return $this->getProperty("ApplicationGuardAllowPersistence");
    }
    /**
     * @var bool
     */
    public function setApplicationGuardAllowPersistence($value)
    {
        $this->setProperty("ApplicationGuardAllowPersistence", $value, true);
    }
    /**
     * @return bool
     */
    public function getApplicationGuardForceAuditing()
    {
        if (!$this->isPropertyAvailable("ApplicationGuardForceAuditing")) {
            return null;
        }
        return $this->getProperty("ApplicationGuardForceAuditing");
    }
    /**
     * @var bool
     */
    public function setApplicationGuardForceAuditing($value)
    {
        $this->setProperty("ApplicationGuardForceAuditing", $value, true);
    }
    /**
     * @return bool
     */
    public function getApplicationGuardAllowPrintToPDF()
    {
        if (!$this->isPropertyAvailable("ApplicationGuardAllowPrintToPDF")) {
            return null;
        }
        return $this->getProperty("ApplicationGuardAllowPrintToPDF");
    }
    /**
     * @var bool
     */
    public function setApplicationGuardAllowPrintToPDF($value)
    {
        $this->setProperty("ApplicationGuardAllowPrintToPDF", $value, true);
    }
    /**
     * @return bool
     */
    public function getApplicationGuardAllowPrintToXPS()
    {
        if (!$this->isPropertyAvailable("ApplicationGuardAllowPrintToXPS")) {
            return null;
        }
        return $this->getProperty("ApplicationGuardAllowPrintToXPS");
    }
    /**
     * @var bool
     */
    public function setApplicationGuardAllowPrintToXPS($value)
    {
        $this->setProperty("ApplicationGuardAllowPrintToXPS", $value, true);
    }
    /**
     * @return bool
     */
    public function getApplicationGuardAllowPrintToLocalPrinters()
    {
        if (!$this->isPropertyAvailable("ApplicationGuardAllowPrintToLocalPrinters")) {
            return null;
        }
        return $this->getProperty("ApplicationGuardAllowPrintToLocalPrinters");
    }
    /**
     * @var bool
     */
    public function setApplicationGuardAllowPrintToLocalPrinters($value)
    {
        $this->setProperty("ApplicationGuardAllowPrintToLocalPrinters", $value, true);
    }
    /**
     * @return bool
     */
    public function getApplicationGuardAllowPrintToNetworkPrinters()
    {
        if (!$this->isPropertyAvailable("ApplicationGuardAllowPrintToNetworkPrinters")) {
            return null;
        }
        return $this->getProperty("ApplicationGuardAllowPrintToNetworkPrinters");
    }
    /**
     * @var bool
     */
    public function setApplicationGuardAllowPrintToNetworkPrinters($value)
    {
        $this->setProperty("ApplicationGuardAllowPrintToNetworkPrinters", $value, true);
    }
    /**
     * @return bool
     */
    public function getBitLockerDisableWarningForOtherDiskEncryption()
    {
        if (!$this->isPropertyAvailable("BitLockerDisableWarningForOtherDiskEncryption")) {
            return null;
        }
        return $this->getProperty("BitLockerDisableWarningForOtherDiskEncryption");
    }
    /**
     * @var bool
     */
    public function setBitLockerDisableWarningForOtherDiskEncryption($value)
    {
        $this->setProperty("BitLockerDisableWarningForOtherDiskEncryption", $value, true);
    }
    /**
     * @return bool
     */
    public function getBitLockerEnableStorageCardEncryptionOnMobile()
    {
        if (!$this->isPropertyAvailable("BitLockerEnableStorageCardEncryptionOnMobile")) {
            return null;
        }
        return $this->getProperty("BitLockerEnableStorageCardEncryptionOnMobile");
    }
    /**
     * @var bool
     */
    public function setBitLockerEnableStorageCardEncryptionOnMobile($value)
    {
        $this->setProperty("BitLockerEnableStorageCardEncryptionOnMobile", $value, true);
    }
    /**
     * @return bool
     */
    public function getBitLockerEncryptDevice()
    {
        if (!$this->isPropertyAvailable("BitLockerEncryptDevice")) {
            return null;
        }
        return $this->getProperty("BitLockerEncryptDevice");
    }
    /**
     * @var bool
     */
    public function setBitLockerEncryptDevice($value)
    {
        $this->setProperty("BitLockerEncryptDevice", $value, true);
    }
    /**
     * @return WindowsFirewallNetworkProfile
     */
    public function getFirewallProfileDomain()
    {
        if (!$this->isPropertyAvailable("FirewallProfileDomain")) {
            return null;
        }
        return $this->getProperty("FirewallProfileDomain");
    }
    /**
     * @var WindowsFirewallNetworkProfile
     */
    public function setFirewallProfileDomain($value)
    {
        $this->setProperty("FirewallProfileDomain", $value, true);
    }
    /**
     * @return WindowsFirewallNetworkProfile
     */
    public function getFirewallProfilePublic()
    {
        if (!$this->isPropertyAvailable("FirewallProfilePublic")) {
            return null;
        }
        return $this->getProperty("FirewallProfilePublic");
    }
    /**
     * @var WindowsFirewallNetworkProfile
     */
    public function setFirewallProfilePublic($value)
    {
        $this->setProperty("FirewallProfilePublic", $value, true);
    }
    /**
     * @return WindowsFirewallNetworkProfile
     */
    public function getFirewallProfilePrivate()
    {
        if (!$this->isPropertyAvailable("FirewallProfilePrivate")) {
            return null;
        }
        return $this->getProperty("FirewallProfilePrivate");
    }
    /**
     * @var WindowsFirewallNetworkProfile
     */
    public function setFirewallProfilePrivate($value)
    {
        $this->setProperty("FirewallProfilePrivate", $value, true);
    }
    /**
     * @return BitLockerRemovableDrivePolicy
     */
    public function getBitLockerRemovableDrivePolicy()
    {
        if (!$this->isPropertyAvailable("BitLockerRemovableDrivePolicy")) {
            return null;
        }
        return $this->getProperty("BitLockerRemovableDrivePolicy");
    }
    /**
     * @var BitLockerRemovableDrivePolicy
     */
    public function setBitLockerRemovableDrivePolicy($value)
    {
        $this->setProperty("BitLockerRemovableDrivePolicy", $value, true);
    }
}