# WARNING: Please don't edit this file. It was generated by Python/WinRT v3.2.0

import enum

import winrt.system
from winrt._winrt_windows_management_deployment import (
    DeploymentProgress,
    AddPackageOptions,
    AppInstallerManager,
    AutoUpdateSettingsOptions,
    CreateSharedPackageContainerOptions,
    CreateSharedPackageContainerResult,
    DeleteSharedPackageContainerOptions,
    DeleteSharedPackageContainerResult,
    DeploymentResult,
    FindSharedPackageContainerOptions,
    PackageAllUserProvisioningOptions,
    PackageManager,
    PackageManagerDebugSettings,
    PackageUserInformation,
    PackageVolume,
    RegisterPackageOptions,
    RemovePackageOptions,
    SharedPackageContainer,
    SharedPackageContainerManager,
    SharedPackageContainerMember,
    StagePackageOptions,
    UpdateSharedPackageContainerOptions,
    UpdateSharedPackageContainerResult,
)

__all__ = [
    "AddPackageByAppInstallerOptions",
    "DeploymentOptions",
    "DeploymentProgressState",
    "PackageInstallState",
    "PackageState",
    "PackageStatus",
    "PackageStubPreference",
    "PackageTypes",
    "RemovalOptions",
    "SharedPackageContainerCreationCollisionOptions",
    "SharedPackageContainerOperationStatus",
    "StubPackageOption",
    "DeploymentProgress",
    "AddPackageOptions",
    "AppInstallerManager",
    "AutoUpdateSettingsOptions",
    "CreateSharedPackageContainerOptions",
    "CreateSharedPackageContainerResult",
    "DeleteSharedPackageContainerOptions",
    "DeleteSharedPackageContainerResult",
    "DeploymentResult",
    "FindSharedPackageContainerOptions",
    "PackageAllUserProvisioningOptions",
    "PackageManager",
    "PackageManagerDebugSettings",
    "PackageUserInformation",
    "PackageVolume",
    "RegisterPackageOptions",
    "RemovePackageOptions",
    "SharedPackageContainer",
    "SharedPackageContainerManager",
    "SharedPackageContainerMember",
    "StagePackageOptions",
    "UpdateSharedPackageContainerOptions",
    "UpdateSharedPackageContainerResult",
]

class AddPackageByAppInstallerOptions(enum.IntFlag):
    NONE = 0x0
    INSTALL_ALL_RESOURCES = 0x20
    FORCE_TARGET_APP_SHUTDOWN = 0x40
    REQUIRED_CONTENT_GROUP_ONLY = 0x100
    LIMIT_TO_EXISTING_PACKAGES = 0x200

class DeploymentOptions(enum.IntFlag):
    NONE = 0x0
    FORCE_APPLICATION_SHUTDOWN = 0x1
    DEVELOPMENT_MODE = 0x2
    INSTALL_ALL_RESOURCES = 0x20
    FORCE_TARGET_APPLICATION_SHUTDOWN = 0x40
    REQUIRED_CONTENT_GROUP_ONLY = 0x100
    FORCE_UPDATE_FROM_ANY_VERSION = 0x40000
    RETAIN_FILES_ON_FAILURE = 0x200000
    STAGE_IN_PLACE = 0x400000

class DeploymentProgressState(enum.IntEnum):
    QUEUED = 0
    PROCESSING = 1

class PackageInstallState(enum.IntEnum):
    NOT_INSTALLED = 0
    STAGED = 1
    INSTALLED = 2
    PAUSED = 6

class PackageState(enum.IntEnum):
    NORMAL = 0
    LICENSE_INVALID = 1
    MODIFIED = 2
    TAMPERED = 3

class PackageStatus(enum.IntFlag):
    OK = 0x0
    LICENSE_ISSUE = 0x1
    MODIFIED = 0x2
    TAMPERED = 0x4
    DISABLED = 0x8

class PackageStubPreference(enum.IntEnum):
    FULL = 0
    STUB = 1

class PackageTypes(enum.IntFlag):
    NONE = 0x0
    MAIN = 0x1
    FRAMEWORK = 0x2
    RESOURCE = 0x4
    BUNDLE = 0x8
    XAP = 0x10
    OPTIONAL = 0x20
    ALL = 0xFFFFFFFF

class RemovalOptions(enum.IntFlag):
    NONE = 0x0
    PRESERVE_APPLICATION_DATA = 0x1000
    PRESERVE_ROAMABLE_APPLICATION_DATA = 0x80
    DEFER_REMOVAL_WHEN_PACKAGES_ARE_IN_USE = 0x2000
    REMOVE_FOR_ALL_USERS = 0x80000

class SharedPackageContainerCreationCollisionOptions(enum.IntEnum):
    FAIL_IF_EXISTS = 0
    MERGE_WITH_EXISTING = 1
    REPLACE_EXISTING = 2

class SharedPackageContainerOperationStatus(enum.IntEnum):
    SUCCESS = 0
    BLOCKED_BY_POLICY = 1
    ALREADY_EXISTS = 2
    PACKAGE_FAMILY_EXISTS_IN_ANOTHER_CONTAINER = 3
    NOT_FOUND = 4
    UNKNOWN_FAILURE = 5

class StubPackageOption(enum.IntEnum):
    DEFAULT = 0
    INSTALL_FULL = 1
    INSTALL_STUB = 2
    USE_PREFERENCE = 3

