from __future__ import annotations
from win32more._prelude import *
import win32more.Microsoft.Windows.Foundation
DecimalContract: UInt32 = 65536
class DecimalHelper(ComPtr):
    extends: IInspectable
    _classid_ = 'Microsoft.Windows.Foundation.DecimalHelper'
    @winrt_classmethod
    def FromBoolean(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: Boolean) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_classmethod
    def FromInt16(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: Int16) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_classmethod
    def FromInt32(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: Int32) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_classmethod
    def FromInt64(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: Int64) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_classmethod
    def FromUInt8(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: Byte) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_classmethod
    def FromUInt16(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: UInt16) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_classmethod
    def FromUInt32(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: UInt32) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_classmethod
    def FromUInt64(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: UInt64) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_classmethod
    def FromSingle(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: Single) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_classmethod
    def FromDouble(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: Double) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_classmethod
    def FromString(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, source: hstr) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_classmethod
    def FromStringInvariant(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, source: hstr) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_classmethod
    def FromStringWithLocale(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, source: hstr, localeName: hstr) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_classmethod
    def TryFromString(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, source: hstr, value: POINTER(win32more.Microsoft.Windows.Foundation.DecimalValue)) -> Boolean: ...
    @winrt_classmethod
    def TryFromStringInvariant(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, source: hstr, value: POINTER(win32more.Microsoft.Windows.Foundation.DecimalValue)) -> Boolean: ...
    @winrt_classmethod
    def TryFromStringWithLocale(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, source: hstr, localeName: hstr, value: POINTER(win32more.Microsoft.Windows.Foundation.DecimalValue)) -> Boolean: ...
    @winrt_classmethod
    def ToBoolean(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> Boolean: ...
    @winrt_classmethod
    def ToInt16(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> Int16: ...
    @winrt_classmethod
    def ToInt32(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> Int32: ...
    @winrt_classmethod
    def ToInt64(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> Int64: ...
    @winrt_classmethod
    def ToUInt8(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> Byte: ...
    @winrt_classmethod
    def ToUInt16(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> UInt16: ...
    @winrt_classmethod
    def ToUInt32(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> UInt32: ...
    @winrt_classmethod
    def ToUInt64(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> UInt64: ...
    @winrt_classmethod
    def ToSingle(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> Single: ...
    @winrt_classmethod
    def ToDouble(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> Double: ...
    @winrt_classmethod
    def ToString(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> hstr: ...
    @winrt_classmethod
    def ToStringInvariant(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> hstr: ...
    @winrt_classmethod
    def ToStringWithLocale(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: win32more.Microsoft.Windows.Foundation.DecimalValue, localeName: hstr) -> hstr: ...
    @winrt_classmethod
    def Equals(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, left: win32more.Microsoft.Windows.Foundation.DecimalValue, right: win32more.Microsoft.Windows.Foundation.DecimalValue) -> Boolean: ...
    @winrt_classmethod
    def Compare(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, left: win32more.Microsoft.Windows.Foundation.DecimalValue, right: win32more.Microsoft.Windows.Foundation.DecimalValue) -> Int32: ...
    @winrt_classmethod
    def IsValid(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> Boolean: ...
    @winrt_classmethod
    def IsInteger(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> Boolean: ...
    @winrt_classmethod
    def Scale(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> Byte: ...
    @winrt_classmethod
    def Sign(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> Int32: ...
    @winrt_classmethod
    def MaxScale(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics) -> Byte: ...
    @winrt_classmethod
    def MaxValue(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_classmethod
    def MinValue(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_classmethod
    def Negate(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_classmethod
    def Abs(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_classmethod
    def Truncate(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_classmethod
    def Floor(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_classmethod
    def Ceiling(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_classmethod
    def Round(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: win32more.Microsoft.Windows.Foundation.DecimalValue, decimalPlaces: Int32) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_classmethod
    def Clamp(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, value: win32more.Microsoft.Windows.Foundation.DecimalValue, min: win32more.Microsoft.Windows.Foundation.DecimalValue, max: win32more.Microsoft.Windows.Foundation.DecimalValue) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_classmethod
    def Add(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, left: win32more.Microsoft.Windows.Foundation.DecimalValue, right: win32more.Microsoft.Windows.Foundation.DecimalValue) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_classmethod
    def Subtract(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, left: win32more.Microsoft.Windows.Foundation.DecimalValue, right: win32more.Microsoft.Windows.Foundation.DecimalValue) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_classmethod
    def Multiply(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, left: win32more.Microsoft.Windows.Foundation.DecimalValue, right: win32more.Microsoft.Windows.Foundation.DecimalValue) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_classmethod
    def Divide(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, left: win32more.Microsoft.Windows.Foundation.DecimalValue, right: win32more.Microsoft.Windows.Foundation.DecimalValue) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_classmethod
    def Modulo(cls: win32more.Microsoft.Windows.Foundation.IDecimalHelperStatics, left: win32more.Microsoft.Windows.Foundation.DecimalValue, right: win32more.Microsoft.Windows.Foundation.DecimalValue) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
class DecimalValue(Structure):
    _name_ = 'Microsoft.Windows.Foundation.DecimalValue'
    Reserved: UInt16
    Scale: Byte
    Sign: Byte
    Hi32: UInt32
    Lo64: UInt64
class IDecimalHelperStatics(ComPtr):
    extends: IInspectable
    _classid_ = 'Microsoft.Windows.Foundation.IDecimalHelperStatics'
    _iid_ = Guid('{ba09a415-e26c-55b3-9b76-b3affd556a7f}')
    @winrt_commethod(6)
    def FromBoolean(self, value: Boolean) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_commethod(7)
    def FromInt16(self, value: Int16) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_commethod(8)
    def FromInt32(self, value: Int32) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_commethod(9)
    def FromInt64(self, value: Int64) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_commethod(10)
    def FromUInt8(self, value: Byte) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_commethod(11)
    def FromUInt16(self, value: UInt16) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_commethod(12)
    def FromUInt32(self, value: UInt32) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_commethod(13)
    def FromUInt64(self, value: UInt64) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_commethod(14)
    def FromSingle(self, value: Single) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_commethod(15)
    def FromDouble(self, value: Double) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_commethod(16)
    def FromString(self, source: hstr) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_commethod(17)
    def FromStringInvariant(self, source: hstr) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_commethod(18)
    def FromStringWithLocale(self, source: hstr, localeName: hstr) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_commethod(19)
    def TryFromString(self, source: hstr, value: POINTER(win32more.Microsoft.Windows.Foundation.DecimalValue)) -> Boolean: ...
    @winrt_commethod(20)
    def TryFromStringInvariant(self, source: hstr, value: POINTER(win32more.Microsoft.Windows.Foundation.DecimalValue)) -> Boolean: ...
    @winrt_commethod(21)
    def TryFromStringWithLocale(self, source: hstr, localeName: hstr, value: POINTER(win32more.Microsoft.Windows.Foundation.DecimalValue)) -> Boolean: ...
    @winrt_commethod(22)
    def ToBoolean(self, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> Boolean: ...
    @winrt_commethod(23)
    def ToInt16(self, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> Int16: ...
    @winrt_commethod(24)
    def ToInt32(self, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> Int32: ...
    @winrt_commethod(25)
    def ToInt64(self, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> Int64: ...
    @winrt_commethod(26)
    def ToUInt8(self, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> Byte: ...
    @winrt_commethod(27)
    def ToUInt16(self, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> UInt16: ...
    @winrt_commethod(28)
    def ToUInt32(self, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> UInt32: ...
    @winrt_commethod(29)
    def ToUInt64(self, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> UInt64: ...
    @winrt_commethod(30)
    def ToSingle(self, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> Single: ...
    @winrt_commethod(31)
    def ToDouble(self, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> Double: ...
    @winrt_commethod(32)
    def ToString(self, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> hstr: ...
    @winrt_commethod(33)
    def ToStringInvariant(self, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> hstr: ...
    @winrt_commethod(34)
    def ToStringWithLocale(self, value: win32more.Microsoft.Windows.Foundation.DecimalValue, localeName: hstr) -> hstr: ...
    @winrt_commethod(35)
    def Equals(self, left: win32more.Microsoft.Windows.Foundation.DecimalValue, right: win32more.Microsoft.Windows.Foundation.DecimalValue) -> Boolean: ...
    @winrt_commethod(36)
    def Compare(self, left: win32more.Microsoft.Windows.Foundation.DecimalValue, right: win32more.Microsoft.Windows.Foundation.DecimalValue) -> Int32: ...
    @winrt_commethod(37)
    def IsValid(self, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> Boolean: ...
    @winrt_commethod(38)
    def IsInteger(self, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> Boolean: ...
    @winrt_commethod(39)
    def Scale(self, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> Byte: ...
    @winrt_commethod(40)
    def Sign(self, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> Int32: ...
    @winrt_commethod(41)
    def MaxScale(self) -> Byte: ...
    @winrt_commethod(42)
    def MaxValue(self) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_commethod(43)
    def MinValue(self) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_commethod(44)
    def Negate(self, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_commethod(45)
    def Abs(self, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_commethod(46)
    def Truncate(self, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_commethod(47)
    def Floor(self, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_commethod(48)
    def Ceiling(self, value: win32more.Microsoft.Windows.Foundation.DecimalValue) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_commethod(49)
    def Round(self, value: win32more.Microsoft.Windows.Foundation.DecimalValue, decimalPlaces: Int32) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_commethod(50)
    def Clamp(self, value: win32more.Microsoft.Windows.Foundation.DecimalValue, min: win32more.Microsoft.Windows.Foundation.DecimalValue, max: win32more.Microsoft.Windows.Foundation.DecimalValue) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_commethod(51)
    def Add(self, left: win32more.Microsoft.Windows.Foundation.DecimalValue, right: win32more.Microsoft.Windows.Foundation.DecimalValue) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_commethod(52)
    def Subtract(self, left: win32more.Microsoft.Windows.Foundation.DecimalValue, right: win32more.Microsoft.Windows.Foundation.DecimalValue) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_commethod(53)
    def Multiply(self, left: win32more.Microsoft.Windows.Foundation.DecimalValue, right: win32more.Microsoft.Windows.Foundation.DecimalValue) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_commethod(54)
    def Divide(self, left: win32more.Microsoft.Windows.Foundation.DecimalValue, right: win32more.Microsoft.Windows.Foundation.DecimalValue) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...
    @winrt_commethod(55)
    def Modulo(self, left: win32more.Microsoft.Windows.Foundation.DecimalValue, right: win32more.Microsoft.Windows.Foundation.DecimalValue) -> win32more.Microsoft.Windows.Foundation.DecimalValue: ...


make_ready(__name__)
