uom-types 4.0.1 → 4.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -1,6 +1,13 @@
1
1
  # Changelog
2
2
  All notable changes to this project will be documented in this file. Dates are displayed in UTC.
3
3
 
4
+ # [4.1.0](https://github.com/RebeccaStevens/uom-types/compare/v4.0.1...v4.1.0) (2024-10-18)
5
+
6
+
7
+ ### Features
8
+
9
+ * add ability to make brands compatible with 3rd party brands ([9f7d4cd](https://github.com/RebeccaStevens/uom-types/commit/9f7d4cd4c85bd534db93d4f4457217a43511dc0f))
10
+
4
11
  ## [4.0.1](https://github.com/RebeccaStevens/uom-types/compare/v4.0.0...v4.0.1) (2024-10-14)
5
12
 
6
13
  # [4.0.0](https://github.com/RebeccaStevens/uom-types/compare/v3.1.1...v4.0.0) (2024-10-14)
package/README.md CHANGED
@@ -7,7 +7,8 @@ Typesafe units with no runtime overhead.
7
7
  [![npm version](https://img.shields.io/npm/v/uom-types.svg)](https://www.npmjs.com/package/uom-types)
8
8
  [![jsr Version](https://img.shields.io/jsr/v/@rebeccastevens/uom-types.svg)](https://jsr.io/@rebeccastevens/uom-types)
9
9
  [![CI](https://github.com/RebeccaStevens/template-typescript-node-package/actions/workflows/release.yml/badge.svg)](https://github.com/RebeccaStevens/template-typescript-node-package/actions/workflows/release.yml)
10
- [![Coverage Status](https://codecov.io/gh/RebeccaStevens/template-typescript-node-package/branch/main/graph/badge.svg?token=MVpR1oAbIT)](https://codecov.io/gh/RebeccaStevens/template-typescript-node-package)\
10
+ [![Coverage Status](https://codecov.io/gh/RebeccaStevens/template-typescript-node-package/branch/main/graph/badge.svg?token=MVpR1oAbIT)](https://codecov.io/gh/RebeccaStevens/template-typescript-node-package)
11
+ [![Documentation](./docs/coverage.svg)](https://RebeccaStevens.github.io/uom-types/)\
11
12
  [![code style: prettier](https://img.shields.io/badge/code_style-prettier-ff69b4.svg?style=flat-square)](https://github.com/prettier/prettier)
12
13
  [![GitHub Discussions](https://img.shields.io/github/discussions/RebeccaStevens/template-typescript-node-package?style=flat-square)](https://github.com/RebeccaStevens/template-typescript-node-package/discussions)
13
14
  [![BSD 3 Clause license](https://img.shields.io/github/license/RebeccaStevens/template-typescript-node-package.svg?style=flat-square)](https://opensource.org/licenses/BSD-3-Clause)
package/dist/index.d.cts CHANGED
@@ -1,4 +1,4 @@
1
- // Generated by dts-bundle-generator v9.2.1
1
+ // Generated by dts-bundle-generator v9.5.1
2
2
 
3
3
  /**
4
4
  * @file Autogenerated File - Don't manually edit.
@@ -41,6 +41,35 @@ export type MultiplyExponents<A extends Exponent, B extends Exponent> = A extend
41
41
  * @group Exponent Functions
42
42
  */
43
43
  export type DivideExponents<A extends Exponent, B extends Exponent> = B extends 0 ? never : B extends 1 ? A extends 0 ? 0 : A extends 1 ? 1 : A extends -1 ? -1 : A extends 2 ? 2 : A extends -2 ? -2 : A extends 3 ? 3 : A extends -3 ? -3 : A extends 4 ? 4 : A extends -4 ? -4 : A extends 5 ? 5 : A extends -5 ? -5 : A extends 6 ? 6 : A extends -6 ? -6 : A extends 7 ? 7 : A extends -7 ? -7 : A extends 8 ? 8 : A extends -8 ? -8 : A extends 9 ? 9 : A extends -9 ? -9 : A extends 10 ? 10 : A extends -10 ? -10 : A extends 11 ? 11 : A extends -11 ? -11 : A extends 12 ? 12 : A extends -12 ? -12 : never : B extends -1 ? A extends 0 ? 0 : A extends 1 ? -1 : A extends -1 ? 1 : A extends 2 ? -2 : A extends -2 ? 2 : A extends 3 ? -3 : A extends -3 ? 3 : A extends 4 ? -4 : A extends -4 ? 4 : A extends 5 ? -5 : A extends -5 ? 5 : A extends 6 ? -6 : A extends -6 ? 6 : A extends 7 ? -7 : A extends -7 ? 7 : A extends 8 ? -8 : A extends -8 ? 8 : A extends 9 ? -9 : A extends -9 ? 9 : A extends 10 ? -10 : A extends -10 ? 10 : A extends 11 ? -11 : A extends -11 ? 11 : A extends 12 ? -12 : A extends -12 ? 12 : never : B extends 2 ? A extends 0 ? 0 : A extends 2 ? 1 : A extends -2 ? -1 : A extends 4 ? 2 : A extends -4 ? -2 : A extends 6 ? 3 : A extends -6 ? -3 : A extends 8 ? 4 : A extends -8 ? -4 : A extends 10 ? 5 : A extends -10 ? -5 : A extends 12 ? 6 : A extends -12 ? -6 : never : B extends -2 ? A extends 0 ? 0 : A extends 2 ? -1 : A extends -2 ? 1 : A extends 4 ? -2 : A extends -4 ? 2 : A extends 6 ? -3 : A extends -6 ? 3 : A extends 8 ? -4 : A extends -8 ? 4 : A extends 10 ? -5 : A extends -10 ? 5 : A extends 12 ? -6 : A extends -12 ? 6 : never : B extends 3 ? A extends 0 ? 0 : A extends 3 ? 1 : A extends -3 ? -1 : A extends 6 ? 2 : A extends -6 ? -2 : A extends 9 ? 3 : A extends -9 ? -3 : A extends 12 ? 4 : A extends -12 ? -4 : never : B extends -3 ? A extends 0 ? 0 : A extends 3 ? -1 : A extends -3 ? 1 : A extends 6 ? -2 : A extends -6 ? 2 : A extends 9 ? -3 : A extends -9 ? 3 : A extends 12 ? -4 : A extends -12 ? 4 : never : B extends 4 ? A extends 0 ? 0 : A extends 4 ? 1 : A extends -4 ? -1 : A extends 8 ? 2 : A extends -8 ? -2 : A extends 12 ? 3 : A extends -12 ? -3 : never : B extends -4 ? A extends 0 ? 0 : A extends 4 ? -1 : A extends -4 ? 1 : A extends 8 ? -2 : A extends -8 ? 2 : A extends 12 ? -3 : A extends -12 ? 3 : never : B extends 5 ? A extends 0 ? 0 : A extends 5 ? 1 : A extends -5 ? -1 : A extends 10 ? 2 : A extends -10 ? -2 : never : B extends -5 ? A extends 0 ? 0 : A extends 5 ? -1 : A extends -5 ? 1 : A extends 10 ? -2 : A extends -10 ? 2 : never : B extends 6 ? A extends 0 ? 0 : A extends 6 ? 1 : A extends -6 ? -1 : A extends 12 ? 2 : A extends -12 ? -2 : never : B extends -6 ? A extends 0 ? 0 : A extends 6 ? -1 : A extends -6 ? 1 : A extends 12 ? -2 : A extends -12 ? 2 : never : B extends 7 ? A extends 0 ? 0 : A extends 7 ? 1 : A extends -7 ? -1 : never : B extends -7 ? A extends 0 ? 0 : A extends 7 ? -1 : A extends -7 ? 1 : never : B extends 8 ? A extends 0 ? 0 : A extends 8 ? 1 : A extends -8 ? -1 : never : B extends -8 ? A extends 0 ? 0 : A extends 8 ? -1 : A extends -8 ? 1 : never : B extends 9 ? A extends 0 ? 0 : A extends 9 ? 1 : A extends -9 ? -1 : never : B extends -9 ? A extends 0 ? 0 : A extends 9 ? -1 : A extends -9 ? 1 : never : B extends 10 ? A extends 0 ? 0 : A extends 10 ? 1 : A extends -10 ? -1 : never : B extends -10 ? A extends 0 ? 0 : A extends 10 ? -1 : A extends -10 ? 1 : never : B extends 11 ? A extends 0 ? 0 : A extends 11 ? 1 : A extends -11 ? -1 : never : B extends -11 ? A extends 0 ? 0 : A extends 11 ? -1 : A extends -11 ? 1 : never : B extends 12 ? A extends 0 ? 0 : A extends 12 ? 1 : A extends -12 ? -1 : never : B extends -12 ? A extends 0 ? 0 : A extends 12 ? -1 : A extends -12 ? 1 : never : never;
44
+ /**
45
+ * Available for providing custom branding.
46
+ */
47
+ export interface Brand {
48
+ }
49
+ /**
50
+ * Brand with the unit meta.
51
+ */
52
+ export type BrandUnitMeta<UM extends UnknownUnitMeta> = Brand & {
53
+ __uom_types: {
54
+ unitMeta: UM;
55
+ };
56
+ };
57
+ /**
58
+ * Brand with the unit class.
59
+ */
60
+ export type BrandUnitClass<UC extends UnknownUnitClass> = Brand & {
61
+ __uom_types: {
62
+ unitClass: UC;
63
+ };
64
+ };
65
+ /**
66
+ * Brand that it is a unit class.
67
+ */
68
+ export type BrandUnitClassType = Brand & {
69
+ __uom_types: {
70
+ unitClassType: true;
71
+ };
72
+ };
44
73
  /**
45
74
  * Remove all key from the object that are `never`.
46
75
  */
@@ -83,9 +112,7 @@ export type Exactify<T, U extends T> = T & {
83
112
  *
84
113
  * @group Abstract Unit Generators
85
114
  */
86
- export type AbstractUnit<C extends UnitSubvalues> = number & Readonly<{
87
- __uom_types__unit_class: UnitClass<C>;
88
- }>;
115
+ export type AbstractUnit<C extends UnitSubvalues> = number & BrandUnitClass<UnitClass<C>>;
89
116
  /**
90
117
  * Create a unit without meta data from an already existing {@link UnitClass}.
91
118
  *
@@ -97,10 +124,7 @@ export type AbstractUnitFrom<C extends UnknownUnitClass> = C extends UnitClass<i
97
124
  *
98
125
  * @group Unit Generators
99
126
  */
100
- export type Unit<C extends UnitSubvalues, M extends UnitSubvalues = {}> = number & Readonly<{
101
- __uom_types__unit_class: UnitClass<C>;
102
- __uom_types__unit_meta: UnitMeta<M>;
103
- }>;
127
+ export type Unit<C extends UnitSubvalues, M extends UnitSubvalues = {}> = number & BrandUnitClass<UnitClass<C>> & BrandUnitMeta<UnitMeta<M>>;
104
128
  /**
105
129
  * Create a {@link Unit} from already existing {@link UnitClass} and {@link UnitMeta}.
106
130
  *
@@ -114,9 +138,7 @@ export type UnitFrom<C extends UnknownUnitClass, M extends UnknownUnitMeta = Uni
114
138
  *
115
139
  * @group Unit Generators
116
140
  */
117
- export type UnitConversionRate<M extends UnitSubvalues> = number & Readonly<{
118
- __uom_types__unit_meta: UnitMeta<M>;
119
- }>;
141
+ export type UnitConversionRate<M extends UnitSubvalues> = number & BrandUnitMeta<UnitMeta<M>>;
120
142
  /**
121
143
  * Create a {@link UnitConversionRate} from already existing {@link UnitMeta}.
122
144
  *
@@ -128,9 +150,7 @@ export type UnitConversionRateFrom<M extends UnknownUnitMeta> = M extends UnitMe
128
150
  *
129
151
  * @group Unit Components
130
152
  */
131
- export type UnitClass<T extends UnitSubvalues> = UnitKeyValues<T> & Readonly<{
132
- __uno_types__unit_class_type: true;
133
- }>;
153
+ export type UnitClass<T extends UnitSubvalues> = UnitKeyValues<T> & BrandUnitClassType;
134
154
  /**
135
155
  * Used to state how units of the same {@link UnitClass} differ from one another.
136
156
  * For example, by a scale factor.
@@ -145,33 +165,25 @@ export type UnitMeta<T extends UnitSubvalues> = UnitKeyValues<T> & Readonly<{
145
165
  *
146
166
  * @group Unknown Units
147
167
  */
148
- export type UnknownUnit = UnknownAbstractUnit & Readonly<{
149
- __uom_types__unit_meta: UnknownUnitMeta;
150
- }>;
168
+ export type UnknownUnit = UnknownAbstractUnit & BrandUnitMeta<UnknownUnitMeta>;
151
169
  /**
152
170
  * An {@link AbstractUnit} that we don't know anything about.
153
171
  *
154
172
  * @group Unknown Units
155
173
  */
156
- export type UnknownAbstractUnit = number & Readonly<{
157
- __uom_types__unit_class: UnknownUnitClass;
158
- }>;
174
+ export type UnknownAbstractUnit = number & BrandUnitClass<UnknownUnitClass>;
159
175
  /**
160
176
  * An {@link UnitConversionRate} that we don't know anything about.
161
177
  *
162
178
  * @group Unknown Units
163
179
  */
164
- export type UnknownUnitConversionRate = number & Readonly<{
165
- __uom_types__unit_meta: UnknownUnitMeta;
166
- }>;
180
+ export type UnknownUnitConversionRate = number & BrandUnitMeta<UnknownUnitMeta>;
167
181
  /**
168
182
  * A {@link UnitClass} that we don't know anything about.
169
183
  *
170
184
  * @group Unknown Units
171
185
  */
172
- export type UnknownUnitClass = UnknownUnitKeyValues & Readonly<{
173
- __uno_types__unit_class_type: true;
174
- }>;
186
+ export type UnknownUnitClass = UnknownUnitKeyValues & BrandUnitClassType;
175
187
  /**
176
188
  * A {@link UnitMeta} that we don't know anything about.
177
189
  *
package/dist/index.d.mts CHANGED
@@ -1,4 +1,4 @@
1
- // Generated by dts-bundle-generator v9.2.1
1
+ // Generated by dts-bundle-generator v9.5.1
2
2
 
3
3
  /**
4
4
  * @file Autogenerated File - Don't manually edit.
@@ -41,6 +41,35 @@ export type MultiplyExponents<A extends Exponent, B extends Exponent> = A extend
41
41
  * @group Exponent Functions
42
42
  */
43
43
  export type DivideExponents<A extends Exponent, B extends Exponent> = B extends 0 ? never : B extends 1 ? A extends 0 ? 0 : A extends 1 ? 1 : A extends -1 ? -1 : A extends 2 ? 2 : A extends -2 ? -2 : A extends 3 ? 3 : A extends -3 ? -3 : A extends 4 ? 4 : A extends -4 ? -4 : A extends 5 ? 5 : A extends -5 ? -5 : A extends 6 ? 6 : A extends -6 ? -6 : A extends 7 ? 7 : A extends -7 ? -7 : A extends 8 ? 8 : A extends -8 ? -8 : A extends 9 ? 9 : A extends -9 ? -9 : A extends 10 ? 10 : A extends -10 ? -10 : A extends 11 ? 11 : A extends -11 ? -11 : A extends 12 ? 12 : A extends -12 ? -12 : never : B extends -1 ? A extends 0 ? 0 : A extends 1 ? -1 : A extends -1 ? 1 : A extends 2 ? -2 : A extends -2 ? 2 : A extends 3 ? -3 : A extends -3 ? 3 : A extends 4 ? -4 : A extends -4 ? 4 : A extends 5 ? -5 : A extends -5 ? 5 : A extends 6 ? -6 : A extends -6 ? 6 : A extends 7 ? -7 : A extends -7 ? 7 : A extends 8 ? -8 : A extends -8 ? 8 : A extends 9 ? -9 : A extends -9 ? 9 : A extends 10 ? -10 : A extends -10 ? 10 : A extends 11 ? -11 : A extends -11 ? 11 : A extends 12 ? -12 : A extends -12 ? 12 : never : B extends 2 ? A extends 0 ? 0 : A extends 2 ? 1 : A extends -2 ? -1 : A extends 4 ? 2 : A extends -4 ? -2 : A extends 6 ? 3 : A extends -6 ? -3 : A extends 8 ? 4 : A extends -8 ? -4 : A extends 10 ? 5 : A extends -10 ? -5 : A extends 12 ? 6 : A extends -12 ? -6 : never : B extends -2 ? A extends 0 ? 0 : A extends 2 ? -1 : A extends -2 ? 1 : A extends 4 ? -2 : A extends -4 ? 2 : A extends 6 ? -3 : A extends -6 ? 3 : A extends 8 ? -4 : A extends -8 ? 4 : A extends 10 ? -5 : A extends -10 ? 5 : A extends 12 ? -6 : A extends -12 ? 6 : never : B extends 3 ? A extends 0 ? 0 : A extends 3 ? 1 : A extends -3 ? -1 : A extends 6 ? 2 : A extends -6 ? -2 : A extends 9 ? 3 : A extends -9 ? -3 : A extends 12 ? 4 : A extends -12 ? -4 : never : B extends -3 ? A extends 0 ? 0 : A extends 3 ? -1 : A extends -3 ? 1 : A extends 6 ? -2 : A extends -6 ? 2 : A extends 9 ? -3 : A extends -9 ? 3 : A extends 12 ? -4 : A extends -12 ? 4 : never : B extends 4 ? A extends 0 ? 0 : A extends 4 ? 1 : A extends -4 ? -1 : A extends 8 ? 2 : A extends -8 ? -2 : A extends 12 ? 3 : A extends -12 ? -3 : never : B extends -4 ? A extends 0 ? 0 : A extends 4 ? -1 : A extends -4 ? 1 : A extends 8 ? -2 : A extends -8 ? 2 : A extends 12 ? -3 : A extends -12 ? 3 : never : B extends 5 ? A extends 0 ? 0 : A extends 5 ? 1 : A extends -5 ? -1 : A extends 10 ? 2 : A extends -10 ? -2 : never : B extends -5 ? A extends 0 ? 0 : A extends 5 ? -1 : A extends -5 ? 1 : A extends 10 ? -2 : A extends -10 ? 2 : never : B extends 6 ? A extends 0 ? 0 : A extends 6 ? 1 : A extends -6 ? -1 : A extends 12 ? 2 : A extends -12 ? -2 : never : B extends -6 ? A extends 0 ? 0 : A extends 6 ? -1 : A extends -6 ? 1 : A extends 12 ? -2 : A extends -12 ? 2 : never : B extends 7 ? A extends 0 ? 0 : A extends 7 ? 1 : A extends -7 ? -1 : never : B extends -7 ? A extends 0 ? 0 : A extends 7 ? -1 : A extends -7 ? 1 : never : B extends 8 ? A extends 0 ? 0 : A extends 8 ? 1 : A extends -8 ? -1 : never : B extends -8 ? A extends 0 ? 0 : A extends 8 ? -1 : A extends -8 ? 1 : never : B extends 9 ? A extends 0 ? 0 : A extends 9 ? 1 : A extends -9 ? -1 : never : B extends -9 ? A extends 0 ? 0 : A extends 9 ? -1 : A extends -9 ? 1 : never : B extends 10 ? A extends 0 ? 0 : A extends 10 ? 1 : A extends -10 ? -1 : never : B extends -10 ? A extends 0 ? 0 : A extends 10 ? -1 : A extends -10 ? 1 : never : B extends 11 ? A extends 0 ? 0 : A extends 11 ? 1 : A extends -11 ? -1 : never : B extends -11 ? A extends 0 ? 0 : A extends 11 ? -1 : A extends -11 ? 1 : never : B extends 12 ? A extends 0 ? 0 : A extends 12 ? 1 : A extends -12 ? -1 : never : B extends -12 ? A extends 0 ? 0 : A extends 12 ? -1 : A extends -12 ? 1 : never : never;
44
+ /**
45
+ * Available for providing custom branding.
46
+ */
47
+ export interface Brand {
48
+ }
49
+ /**
50
+ * Brand with the unit meta.
51
+ */
52
+ export type BrandUnitMeta<UM extends UnknownUnitMeta> = Brand & {
53
+ __uom_types: {
54
+ unitMeta: UM;
55
+ };
56
+ };
57
+ /**
58
+ * Brand with the unit class.
59
+ */
60
+ export type BrandUnitClass<UC extends UnknownUnitClass> = Brand & {
61
+ __uom_types: {
62
+ unitClass: UC;
63
+ };
64
+ };
65
+ /**
66
+ * Brand that it is a unit class.
67
+ */
68
+ export type BrandUnitClassType = Brand & {
69
+ __uom_types: {
70
+ unitClassType: true;
71
+ };
72
+ };
44
73
  /**
45
74
  * Remove all key from the object that are `never`.
46
75
  */
@@ -83,9 +112,7 @@ export type Exactify<T, U extends T> = T & {
83
112
  *
84
113
  * @group Abstract Unit Generators
85
114
  */
86
- export type AbstractUnit<C extends UnitSubvalues> = number & Readonly<{
87
- __uom_types__unit_class: UnitClass<C>;
88
- }>;
115
+ export type AbstractUnit<C extends UnitSubvalues> = number & BrandUnitClass<UnitClass<C>>;
89
116
  /**
90
117
  * Create a unit without meta data from an already existing {@link UnitClass}.
91
118
  *
@@ -97,10 +124,7 @@ export type AbstractUnitFrom<C extends UnknownUnitClass> = C extends UnitClass<i
97
124
  *
98
125
  * @group Unit Generators
99
126
  */
100
- export type Unit<C extends UnitSubvalues, M extends UnitSubvalues = {}> = number & Readonly<{
101
- __uom_types__unit_class: UnitClass<C>;
102
- __uom_types__unit_meta: UnitMeta<M>;
103
- }>;
127
+ export type Unit<C extends UnitSubvalues, M extends UnitSubvalues = {}> = number & BrandUnitClass<UnitClass<C>> & BrandUnitMeta<UnitMeta<M>>;
104
128
  /**
105
129
  * Create a {@link Unit} from already existing {@link UnitClass} and {@link UnitMeta}.
106
130
  *
@@ -114,9 +138,7 @@ export type UnitFrom<C extends UnknownUnitClass, M extends UnknownUnitMeta = Uni
114
138
  *
115
139
  * @group Unit Generators
116
140
  */
117
- export type UnitConversionRate<M extends UnitSubvalues> = number & Readonly<{
118
- __uom_types__unit_meta: UnitMeta<M>;
119
- }>;
141
+ export type UnitConversionRate<M extends UnitSubvalues> = number & BrandUnitMeta<UnitMeta<M>>;
120
142
  /**
121
143
  * Create a {@link UnitConversionRate} from already existing {@link UnitMeta}.
122
144
  *
@@ -128,9 +150,7 @@ export type UnitConversionRateFrom<M extends UnknownUnitMeta> = M extends UnitMe
128
150
  *
129
151
  * @group Unit Components
130
152
  */
131
- export type UnitClass<T extends UnitSubvalues> = UnitKeyValues<T> & Readonly<{
132
- __uno_types__unit_class_type: true;
133
- }>;
153
+ export type UnitClass<T extends UnitSubvalues> = UnitKeyValues<T> & BrandUnitClassType;
134
154
  /**
135
155
  * Used to state how units of the same {@link UnitClass} differ from one another.
136
156
  * For example, by a scale factor.
@@ -145,33 +165,25 @@ export type UnitMeta<T extends UnitSubvalues> = UnitKeyValues<T> & Readonly<{
145
165
  *
146
166
  * @group Unknown Units
147
167
  */
148
- export type UnknownUnit = UnknownAbstractUnit & Readonly<{
149
- __uom_types__unit_meta: UnknownUnitMeta;
150
- }>;
168
+ export type UnknownUnit = UnknownAbstractUnit & BrandUnitMeta<UnknownUnitMeta>;
151
169
  /**
152
170
  * An {@link AbstractUnit} that we don't know anything about.
153
171
  *
154
172
  * @group Unknown Units
155
173
  */
156
- export type UnknownAbstractUnit = number & Readonly<{
157
- __uom_types__unit_class: UnknownUnitClass;
158
- }>;
174
+ export type UnknownAbstractUnit = number & BrandUnitClass<UnknownUnitClass>;
159
175
  /**
160
176
  * An {@link UnitConversionRate} that we don't know anything about.
161
177
  *
162
178
  * @group Unknown Units
163
179
  */
164
- export type UnknownUnitConversionRate = number & Readonly<{
165
- __uom_types__unit_meta: UnknownUnitMeta;
166
- }>;
180
+ export type UnknownUnitConversionRate = number & BrandUnitMeta<UnknownUnitMeta>;
167
181
  /**
168
182
  * A {@link UnitClass} that we don't know anything about.
169
183
  *
170
184
  * @group Unknown Units
171
185
  */
172
- export type UnknownUnitClass = UnknownUnitKeyValues & Readonly<{
173
- __uno_types__unit_class_type: true;
174
- }>;
186
+ export type UnknownUnitClass = UnknownUnitKeyValues & BrandUnitClassType;
175
187
  /**
176
188
  * A {@link UnitMeta} that we don't know anything about.
177
189
  *
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "uom-types",
3
- "version": "4.0.1",
3
+ "version": "4.1.0",
4
4
  "description": "Typesafe units with no runtime overhead.",
5
5
  "keywords": [
6
6
  "uom",
@@ -82,7 +82,7 @@
82
82
  "typecheck": "tsc -p tsconfig.build.json --noEmit"
83
83
  },
84
84
  "resolutions": {
85
- "dts-bundle-generator": "9.2.1"
85
+ "dts-bundle-generator": "9.5.1"
86
86
  },
87
87
  "devDependencies": {
88
88
  "@commitlint/cli": "19.5.0",
@@ -101,12 +101,12 @@
101
101
  "@semantic-release/release-notes-generator": "14.0.1",
102
102
  "@stylistic/eslint-plugin": "2.9.0",
103
103
  "@types/node": "16.18.113",
104
- "@typescript-eslint/eslint-plugin": "8.8.1",
105
- "@typescript-eslint/parser": "8.8.1",
104
+ "@typescript-eslint/eslint-plugin": "8.9.0",
105
+ "@typescript-eslint/parser": "8.9.0",
106
106
  "@vitest/coverage-v8": "2.1.2",
107
107
  "@vitest/eslint-plugin": "1.1.7",
108
108
  "commitizen": "4.3.1",
109
- "cspell": "8.15.2",
109
+ "cspell": "8.15.3",
110
110
  "cz-conventional-changelog": "3.3.0",
111
111
  "eslint": "9.12.0",
112
112
  "eslint-config-prettier": "9.1.0",
@@ -117,7 +117,7 @@
117
117
  "eslint-plugin-format": "0.1.2",
118
118
  "eslint-plugin-functional": "7.0.2",
119
119
  "eslint-plugin-import-x": "4.3.1",
120
- "eslint-plugin-jsdoc": "50.3.2",
120
+ "eslint-plugin-jsdoc": "50.4.1",
121
121
  "eslint-plugin-jsonc": "2.16.0",
122
122
  "eslint-plugin-markdown": "5.1.0",
123
123
  "eslint-plugin-n": "17.11.1",