Skip to content

Commit 053227e

Browse files
committed
Simplify type annotations
1 parent a3bb42a commit 053227e

File tree

1 file changed

+10
-10
lines changed

1 file changed

+10
-10
lines changed

index.ts

Lines changed: 10 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -41,9 +41,9 @@ export function string(value: unknown): string {
4141
return value;
4242
}
4343

44-
export function stringUnion<T extends [string, ...Array<string>]>(
45-
variants: readonly [...T],
46-
): Decoder<T[number]> {
44+
export function stringUnion<
45+
const T extends readonly [string, ...Array<string>],
46+
>(variants: T): Decoder<T[number]> {
4747
return function stringUnionDecoder(value: unknown): T[number] {
4848
const str = string(value);
4949
if (!variants.includes(str)) {
@@ -312,9 +312,9 @@ export function fieldsUnion<T extends Record<string, Decoder<unknown>>>(
312312
}
313313

314314
export function tuple<T extends Array<unknown>>(
315-
mapping: readonly [...{ [P in keyof T]: Decoder<T[P]> }],
316-
): Decoder<[...T]> {
317-
return function tupleDecoder(value: unknown): [...T] {
315+
mapping: [...{ [P in keyof T]: Decoder<T[P]> }],
316+
): Decoder<T> {
317+
return function tupleDecoder(value: unknown): T {
318318
const arr = unknownArray(value);
319319
if (arr.length !== mapping.length) {
320320
throw new DecoderError({
@@ -332,7 +332,7 @@ export function tuple<T extends Array<unknown>>(
332332
throw DecoderError.at(error, index);
333333
}
334334
}
335-
return result as [...T];
335+
return result as T;
336336
};
337337
}
338338

@@ -363,9 +363,9 @@ type MultiTypeName =
363363
| "string"
364364
| "undefined";
365365

366-
export function multi<Types extends [MultiTypeName, ...Array<MultiTypeName>]>(
367-
types: readonly [...Types],
368-
): Decoder<Multi<Types[number]>> {
366+
export function multi<
367+
Types extends readonly [MultiTypeName, ...Array<MultiTypeName>],
368+
>(types: Types): Decoder<Multi<Types[number]>> {
369369
return function multiDecoder(value): Multi<Types[number]> {
370370
if (value === undefined) {
371371
if (types.includes("undefined")) {

0 commit comments

Comments
 (0)