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

import enum
import typing
import uuid as _uuid

import winrt.system
from winrt._winrt_windows_graphics_printing3d import (
    Printing3DBufferDescription,
    Print3DManager,
    Print3DTask,
    Print3DTaskCompletedEventArgs,
    Print3DTaskRequest,
    Print3DTaskRequestedEventArgs,
    Print3DTaskSourceChangedEventArgs,
    Print3DTaskSourceRequestedArgs,
    Printing3D3MFPackage,
    Printing3DBaseMaterial,
    Printing3DBaseMaterialGroup,
    Printing3DColorMaterial,
    Printing3DColorMaterialGroup,
    Printing3DComponent,
    Printing3DComponentWithMatrix,
    Printing3DCompositeMaterial,
    Printing3DCompositeMaterialGroup,
    Printing3DFaceReductionOptions,
    Printing3DMaterial,
    Printing3DMesh,
    Printing3DMeshVerificationResult,
    Printing3DModel,
    Printing3DModelTexture,
    Printing3DMultiplePropertyMaterial,
    Printing3DMultiplePropertyMaterialGroup,
    Printing3DTexture2CoordMaterial,
    Printing3DTexture2CoordMaterialGroup,
    Printing3DTextureResource,
)

__all__ = [
    "Print3DTaskCompletion",
    "Print3DTaskDetail",
    "Printing3DBufferFormat",
    "Printing3DMeshVerificationMode",
    "Printing3DModelUnit",
    "Printing3DObjectType",
    "Printing3DPackageCompression",
    "Printing3DTextureEdgeBehavior",
    "Printing3DBufferDescription",
    "Print3DManager",
    "Print3DTask",
    "Print3DTaskCompletedEventArgs",
    "Print3DTaskRequest",
    "Print3DTaskRequestedEventArgs",
    "Print3DTaskSourceChangedEventArgs",
    "Print3DTaskSourceRequestedArgs",
    "Printing3D3MFPackage",
    "Printing3DBaseMaterial",
    "Printing3DBaseMaterialGroup",
    "Printing3DColorMaterial",
    "Printing3DColorMaterialGroup",
    "Printing3DComponent",
    "Printing3DComponentWithMatrix",
    "Printing3DCompositeMaterial",
    "Printing3DCompositeMaterialGroup",
    "Printing3DFaceReductionOptions",
    "Printing3DMaterial",
    "Printing3DMesh",
    "Printing3DMeshVerificationResult",
    "Printing3DModel",
    "Printing3DModelTexture",
    "Printing3DMultiplePropertyMaterial",
    "Printing3DMultiplePropertyMaterialGroup",
    "Printing3DTexture2CoordMaterial",
    "Printing3DTexture2CoordMaterialGroup",
    "Printing3DTextureResource",
    "Print3DTaskSourceRequestedHandler",
]

class Print3DTaskCompletion(enum.IntEnum):
    ABANDONED = 0
    CANCELED = 1
    FAILED = 2
    SLICING = 3
    SUBMITTED = 4

class Print3DTaskDetail(enum.IntEnum):
    UNKNOWN = 0
    MODEL_EXCEEDS_PRINT_BED = 1
    UPLOAD_FAILED = 2
    INVALID_MATERIAL_SELECTION = 3
    INVALID_MODEL = 4
    MODEL_NOT_MANIFOLD = 5
    INVALID_PRINT_TICKET = 6

class Printing3DBufferFormat(enum.IntEnum):
    UNKNOWN = 0
    R32_G32_B32_A32_FLOAT = 2
    R32_G32_B32_A32_UINT = 3
    R32_G32_B32_FLOAT = 6
    R32_G32_B32_UINT = 7
    PRINTING_3D_DOUBLE = 500
    PRINTING_3D_UINT = 501

class Printing3DMeshVerificationMode(enum.IntEnum):
    FIND_FIRST_ERROR = 0
    FIND_ALL_ERRORS = 1

class Printing3DModelUnit(enum.IntEnum):
    METER = 0
    MICRON = 1
    MILLIMETER = 2
    CENTIMETER = 3
    INCH = 4
    FOOT = 5

class Printing3DObjectType(enum.IntEnum):
    MODEL = 0
    SUPPORT = 1
    OTHERS = 2

class Printing3DPackageCompression(enum.IntEnum):
    LOW = 0
    MEDIUM = 1
    HIGH = 2

class Printing3DTextureEdgeBehavior(enum.IntEnum):
    NONE = 0
    WRAP = 1
    MIRROR = 2
    CLAMP = 3

Print3DTaskSourceRequestedHandler = typing.Callable[[Print3DTaskSourceRequestedArgs], None]
