@eslinted/core 10.0.2 → 10.1.1
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/factory/options/option/index.d.ts +7 -5
- package/dist/factory/options/option/index.d.ts.map +1 -1
- package/dist/factory/options/option/template/language/index.d.ts +2 -2
- package/dist/factory/options/option/template/language/index.d.ts.map +1 -1
- package/package.json +4 -4
- package/src/factory/options/option/template/language/index.ts +2 -2
- package/typings/common/literals/chars/alpha.d.ts +4 -0
- package/typings/common/literals/{string/letter/digit/extended/base64/index.d.ts → chars/digits/base64.d.ts} +1 -1
- package/typings/common/literals/chars/lower.d.ts +1 -0
- package/typings/common/literals/{string/letter/index.d.ts → chars/upper.d.ts} +0 -7
- package/typings/common/literals/{number/bases → numbers}/base32.d.ts +1 -1
- package/typings/common/literals/{number/bases/hex.d.ts → numbers/hexadecimal.d.ts} +1 -1
- package/typings/common/tester.d.ts +8 -0
- package/typings/common/utility/interface/identity.d.ts +11 -0
- package/typings/common/utility/interface/{identity/interface/index.d.ts → identity.spec.d.ts} +1 -18
- package/typings/common/utility/interface/keys.d.ts +3 -0
- package/typings/common/utility/interface/{identity/keys/index.d.ts → keys.spec.d.ts} +1 -5
- package/typings/common/utility/interface/optional.d.ts +7 -0
- package/typings/common/utility/interface/{transform/partial/unrequire/index.d.ts → optional.spec.d.ts} +4 -15
- package/typings/common/utility/interface/partially.d.ts +1 -0
- package/typings/common/utility/interface/{build/properties/property → property}/index.d.ts +2 -2
- package/typings/common/utility/interface/property/properties.d.ts +6 -0
- package/typings/common/utility/interface/table/tables.d.ts +5 -0
- package/typings/common/utility/iterable/arrayful.d.ts +1 -0
- package/typings/common/utility/iterable/{transform/flat/unflat/index.d.ts → flat/unflat.d.ts} +1 -1
- package/typings/common/utility/iterable/identity.d.ts +1 -0
- package/typings/common/utility/iterable/identity.spec.d.ts +59 -0
- package/typings/common/utility/iterable/{build/arrays/array/index.d.ts → index.d.ts} +7 -3
- package/typings/common/utility/iterable/index.spec.d.ts +18 -0
- package/typings/common/utility/iterable/tuple.d.ts +11 -0
- package/typings/common/utility/iterable/{build/tuples/tuple/index.d.ts → tuple.spec.d.ts} +0 -12
- package/typings/common/utility/{nullable/null → null}/index.spec.d.ts +2 -2
- package/typings/common/utility/{nullable/index.spec.d.ts → null/nullable.spec.d.ts} +1 -1
- package/typings/common/utility/primitive/index.d.ts +1 -32
- package/typings/common/utility/primitive/index.spec.d.ts +27 -0
- package/typings/common/utility/primitive/length.d.ts +5 -0
- package/typings/common/utility/primitive/{number/length/index.d.ts → length.spec.d.ts} +1 -10
- package/typings/common/utility/primitive/literal.d.ts +1 -0
- package/typings/common/utility/primitive/{string/literalful/literal/index.d.ts → literal.spec.d.ts} +0 -5
- package/typings/common/utility/primitive/literalful.d.ts +3 -0
- package/typings/common/utility/primitive/{string/literalful/index.d.ts → literalful.spec.d.ts} +0 -8
- package/typings/common/utility/primitive/numeric.d.ts +1 -0
- package/typings/common/utility/primitive/numeric.spec.d.ts +30 -0
- package/typings/common/utility/primitive/truth.d.ts +3 -0
- package/typings/common/utility/primitive/{boolean/true/index.d.ts → truth.spec.d.ts} +6 -14
- package/typings/common/validated/index.d.ts +2 -0
- package/typings/common/validated/numberful.d.ts +1 -0
- package/typings/common/validated/properties/finite.d.ts +2 -0
- package/typings/common/validated/properties/length.d.ts +3 -0
- package/typings/common/validated/properties/polarity.d.ts +5 -0
- package/typings/common/validated/stringful.d.ts +1 -0
- package/typings/common/safe/index.d.ts +0 -2
- package/typings/common/safe/numbers/finite/index.d.ts +0 -2
- package/typings/common/safe/numbers/fint.d.ts +0 -1
- package/typings/common/safe/numbers/integer/numberful/index.d.ts +0 -1
- package/typings/common/safe/numbers/polarity/negative.d.ts +0 -4
- package/typings/common/safe/numbers/polarity/pole/index.d.ts +0 -18
- package/typings/common/safe/numbers/polarity/positive.d.ts +0 -4
- package/typings/common/safe/strings/stringful/index.d.ts +0 -1
- package/typings/common/safe/strings/stringful/length/index.d.ts +0 -3
- package/typings/common/utility/interface/build/particord/index.d.ts +0 -1
- package/typings/common/utility/interface/build/properties/Field.d.ts +0 -1
- package/typings/common/utility/interface/build/properties/Flag.d.ts +0 -1
- package/typings/common/utility/interface/build/properties/Limit.d.ts +0 -8
- package/typings/common/utility/interface/build/properties/List.d.ts +0 -1
- package/typings/common/utility/interface/build/properties/Listish.d.ts +0 -1
- package/typings/common/utility/interface/build/properties/Scalar.d.ts +0 -1
- package/typings/common/utility/interface/build/tables/FieldTable.d.ts +0 -1
- package/typings/common/utility/interface/build/tables/FlagTable.d.ts +0 -1
- package/typings/common/utility/interface/build/tables/ListTable.d.ts +0 -1
- package/typings/common/utility/interface/build/tables/ListishTable.d.ts +0 -1
- package/typings/common/utility/interface/build/tables/ScalarTable.d.ts +0 -1
- package/typings/common/utility/iterable/build/arrays/index.d.ts +0 -2
- package/typings/common/utility/iterable/identity/array/index.d.ts +0 -65
- package/typings/common/utility/iterable/identity/array/length/index.d.ts +0 -16
- package/typings/common/utility/iterable/identity/dyad.d.ts +0 -3
- package/typings/common/utility/iterable/identity/monad.d.ts +0 -48
- package/typings/common/utility/iterable/identity/triad.d.ts +0 -3
- package/typings/common/utility/iterable/transform/string/index.d.ts +0 -30
- package/typings/common/utility/iterable/transform/string/stringify/index.d.ts +0 -27
- package/typings/common/utility/primitive/number/length/numbered/index.d.ts +0 -35
- package/typings/common/utility/primitive/string/fake/index.d.ts +0 -1
- package/typings/common/utility/test.d.ts +0 -2
- package/typings/common/valid/index.d.ts +0 -7
- package/typings/common/valid/string/index.d.ts +0 -1
- /package/typings/common/literals/{string/letter/digit/index.d.ts → chars/digit.d.ts} +0 -0
- /package/typings/common/literals/{string/letter/digit/extended/hex/index.d.ts → chars/digits/hexchar.d.ts} +0 -0
- /package/typings/common/literals/{number/bases → numbers}/base64.d.ts +0 -0
- /package/typings/common/literals/{number/bases → numbers}/binary.d.ts +0 -0
- /package/typings/common/literals/{number/bases → numbers}/decimal.d.ts +0 -0
- /package/typings/common/literals/{number/bases → numbers}/octal.d.ts +0 -0
- /package/typings/common/literals/{number/bases → numbers}/quatral.d.ts +0 -0
- /package/typings/common/literals/{number/bases → numbers}/ternary.d.ts +0 -0
- /package/typings/common/{primitive/index.d.ts → primitive.d.ts} +0 -0
- /package/typings/common/utility/{object/build/index.d.ts → constructor.d.ts} +0 -0
- /package/typings/common/utility/interface/{build/recordful/index.d.ts → index.d.ts} +0 -0
- /package/typings/common/utility/interface/{build/tables/table → table}/index.d.ts +0 -0
- /package/typings/common/utility/iterable/{transform/flat → flat}/index.d.ts +0 -0
- /package/typings/common/utility/iterable/{build/tuples/index.d.ts → tuples.d.ts} +0 -0
- /package/typings/common/utility/{nullable/null → null}/index.d.ts +0 -0
- /package/typings/common/utility/{nullable/index.d.ts → null/nullable.d.ts} +0 -0
- /package/typings/common/{safe/strings → validated}/char.d.ts +0 -0
- /package/typings/common/{safe/numbers/integer/index.d.ts → validated/properties/int.d.ts} +0 -0
package/typings/common/utility/primitive/{string/literalful/literal/index.d.ts → literal.spec.d.ts}
RENAMED
@@ -1,13 +1,8 @@
|
|
1
|
-
declare type literal<S extends string> = Primeval<S, string>;
|
2
|
-
|
3
1
|
declare namespace literal {
|
4
2
|
export type T = literal<"">;
|
5
3
|
export type T0 = literal<"a">;
|
6
4
|
export type T1 = literal<"a" | "b">;
|
7
5
|
export type T1b = literal<"a" | "">;
|
8
|
-
}
|
9
|
-
|
10
|
-
declare namespace Notliteral {
|
11
6
|
export type N = literal<never>;
|
12
7
|
export type N0 = literal<string>;
|
13
8
|
|
package/typings/common/utility/primitive/{string/literalful/index.d.ts → literalful.spec.d.ts}
RENAMED
@@ -1,14 +1,6 @@
|
|
1
|
-
declare type literalful<S extends string> = "" extends literal<S>
|
2
|
-
? never
|
3
|
-
: literal<S>;
|
4
|
-
|
5
1
|
declare namespace literalful {
|
6
2
|
export type T0 = literalful<"a">;
|
7
3
|
export type T1 = literalful<"a" | "b">;
|
8
|
-
}
|
9
|
-
|
10
|
-
declare namespace Notliteralful {
|
11
|
-
|
12
4
|
export type N0 = literalful<never>;
|
13
5
|
export type N1 = literalful<"">;
|
14
6
|
export type N2 = literalful<string>;
|
@@ -0,0 +1 @@
|
|
1
|
+
declare type Numeric<N extends number> = Primitive<N, number>;
|
@@ -0,0 +1,30 @@
|
|
1
|
+
declare namespace Numeric {
|
2
|
+
export type T0 = Numeric<0>;
|
3
|
+
export type T1 = Numeric<0.0>;
|
4
|
+
export type T2 = Numeric<1>;
|
5
|
+
export type T3 = Numeric<1.0>;
|
6
|
+
export type T4 = Numeric<1.1>;
|
7
|
+
export type T5 = Numeric<1 | 5>;
|
8
|
+
export type N0 = Numeric<number>;
|
9
|
+
export type N0b = Numeric<numberful>;
|
10
|
+
export type N0c = Numeric<number | numberful>;
|
11
|
+
export type N0d = Numeric<1 | numberful>;
|
12
|
+
export type N1 = Numeric<never>;
|
13
|
+
|
14
|
+
// export type N0e = Numbered<1 | number>;
|
15
|
+
// export type N2 = Numbered<"cool">;
|
16
|
+
// export type N3 = Numbered<"NaN">;
|
17
|
+
// export type N4 = Numbered<"5">;
|
18
|
+
// export type N5 = Numbered<string>;
|
19
|
+
// export type N6 = Numbered<boolean>;
|
20
|
+
// export type N6a = Numbered<true>;
|
21
|
+
// export type N6b = Numbered<false>;
|
22
|
+
// export type N7 = Numbered<null>;
|
23
|
+
// export type N8 = Numbered<undefined>;
|
24
|
+
// export type N9 = Numbered<void>;
|
25
|
+
// export type N10 = Numbered<object>;
|
26
|
+
// export type N11 = Numbered<[]>;
|
27
|
+
// export type N12 = Numbered<5 | true>;
|
28
|
+
// export type N13 = Numbered<() => 5>;
|
29
|
+
// export type N14 = Numbered<symbol>;
|
30
|
+
}
|
@@ -1,17 +1,9 @@
|
|
1
|
-
declare
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
export type
|
7
|
-
}
|
8
|
-
|
9
|
-
declare namespace NotTrue {
|
10
|
-
|
11
|
-
export type N0 = True<never>;
|
12
|
-
export type N1 = True<false>;
|
13
|
-
export type N1a = True<false | true>;
|
14
|
-
export type N1b = True<boolean>;
|
1
|
+
declare namespace Truth {
|
2
|
+
export type T0 = Truth<true>;
|
3
|
+
export type N0 = Truth<never>;
|
4
|
+
export type N1 = Truth<false>;
|
5
|
+
export type N1a = Truth<false | true>;
|
6
|
+
export type N1b = Truth<boolean>;
|
15
7
|
|
16
8
|
// export type N2 = True<true | 10>;
|
17
9
|
// export type N2a = True<true | object>;
|
@@ -0,0 +1 @@
|
|
1
|
+
declare type numberful = Full<number, "!NaN">;
|
@@ -0,0 +1 @@
|
|
1
|
+
declare type stringful = Full<string, "length > 0"> & { 0: char };
|
@@ -1 +0,0 @@
|
|
1
|
-
declare type fint = finite<int>;
|
@@ -1 +0,0 @@
|
|
1
|
-
declare type numberful = Safe<number, "numberful">;
|
@@ -1,18 +0,0 @@
|
|
1
|
-
declare const pole: unique symbol,
|
2
|
-
min: unique symbol;
|
3
|
-
declare type pole<
|
4
|
-
P extends
|
5
|
-
| "-"
|
6
|
-
| "+"
|
7
|
-
,
|
8
|
-
N extends number,
|
9
|
-
Zero,
|
10
|
-
> =
|
11
|
-
& N
|
12
|
-
& {
|
13
|
-
[pole]: P;
|
14
|
-
[min]: Zero extends false
|
15
|
-
? P extends "+" ? 1 : -1
|
16
|
-
: 0;
|
17
|
-
}
|
18
|
-
;
|
@@ -1 +0,0 @@
|
|
1
|
-
declare type stringful = Safe<string, "stringful"> & { 0: stringful & StringLength<1> };
|
@@ -1 +0,0 @@
|
|
1
|
-
declare type Particord<K extends string, V> = Partial<Recordful<K, V>>;
|
@@ -1 +0,0 @@
|
|
1
|
-
declare type Field<K extends string, OK extends string = never> = Property<K, OK, string>;
|
@@ -1 +0,0 @@
|
|
1
|
-
declare type Flag<OK extends string, K extends string = never> = Property<K, OK, boolean>;
|
@@ -1 +0,0 @@
|
|
1
|
-
declare type List<K extends string, OK extends string = never> = Property<K, OK, readonly string[]>;
|
@@ -1 +0,0 @@
|
|
1
|
-
declare type Listish<K extends string, OK extends string = never> = Property<K, OK, Unflat>;
|
@@ -1 +0,0 @@
|
|
1
|
-
declare type Scalar<K extends string, OK extends string = never> = Property<K, OK, number>;
|
@@ -1 +0,0 @@
|
|
1
|
-
declare type FieldTable = Table<string>;
|
@@ -1 +0,0 @@
|
|
1
|
-
declare type FlagTable = Table<boolean>;
|
@@ -1 +0,0 @@
|
|
1
|
-
declare type ListTable = Table<readonly string[]>;
|
@@ -1 +0,0 @@
|
|
1
|
-
declare type ListishTable = Table<Unflat>;
|
@@ -1 +0,0 @@
|
|
1
|
-
declare type ScalarTable = Table<number>;
|
@@ -1,65 +0,0 @@
|
|
1
|
-
declare type ArrayType<A> = [A] extends [readonly unknown[]] ? A : never;
|
2
|
-
|
3
|
-
// tests
|
4
|
-
declare namespace ArrayType {
|
5
|
-
export type T0 = ArrayType<[]>;
|
6
|
-
export type T1 = ArrayType<[1, 1]>;
|
7
|
-
export type T2 = ArrayType<string[]>;
|
8
|
-
export type T3 = ArrayType<readonly []>;
|
9
|
-
export type T4 = ArrayType<readonly [1, 1]>;
|
10
|
-
export type T5 = ArrayType<readonly string[]>;
|
11
|
-
export type T6 = ArrayType<[[]]>;
|
12
|
-
export type T7 = ArrayType<string[] | int[]>;
|
13
|
-
export type T8 = ArrayType<(string | int)[]>;
|
14
|
-
export type T9 = ArrayType<
|
15
|
-
| []
|
16
|
-
| [5, 10]
|
17
|
-
| string []
|
18
|
-
| readonly []
|
19
|
-
| readonly [5, 10]
|
20
|
-
| readonly string[]
|
21
|
-
>;
|
22
|
-
export type T10 = ArrayType<[1?, ...string[]]>;
|
23
|
-
export type T11 = ArrayType<[1] | [1, 2?]>;
|
24
|
-
}
|
25
|
-
|
26
|
-
declare namespace NotArrayType {
|
27
|
-
export type N0 = ArrayType<"">;
|
28
|
-
export type N1 = ArrayType<"test">;
|
29
|
-
export type N2 = ArrayType<string>;
|
30
|
-
export type N3 = ArrayType<boolean>;
|
31
|
-
export type N4 = ArrayType<true>;
|
32
|
-
export type N5 = ArrayType<false>;
|
33
|
-
export type N6 = ArrayType<0>;
|
34
|
-
export type N7 = ArrayType<1>;
|
35
|
-
export type N8 = ArrayType<number>;
|
36
|
-
export type N9 = ArrayType<null>;
|
37
|
-
export type N10 = ArrayType<undefined>;
|
38
|
-
export type N11 = ArrayType<unknown>;
|
39
|
-
export type N12 = ArrayType<never>;
|
40
|
-
export type N13 = ArrayType<void>;
|
41
|
-
export type N14 = ArrayType<() => void>;
|
42
|
-
export type N15 = ArrayType<(a: string) => []>;
|
43
|
-
export type N16 = ArrayType<Record<string, unknown>>;
|
44
|
-
export type N17 = ArrayType<Record<number, 5>>;
|
45
|
-
export type N18 = ArrayType<stringful>;
|
46
|
-
export type N19 = ArrayType<{ 0: string }>;
|
47
|
-
export type N20 = ArrayType<{
|
48
|
-
0: string;
|
49
|
-
length: 1;
|
50
|
-
}>;
|
51
|
-
export type N21 = ArrayType<symbol>;
|
52
|
-
export type N22 = ArrayType<object>;
|
53
|
-
export type N23 = ArrayType<
|
54
|
-
| []
|
55
|
-
| object
|
56
|
-
>;
|
57
|
-
export type N24 = ArrayType<
|
58
|
-
| []
|
59
|
-
| string
|
60
|
-
>;
|
61
|
-
export type N25 = ArrayType<
|
62
|
-
| []
|
63
|
-
| null
|
64
|
-
>;
|
65
|
-
}
|
@@ -1,16 +0,0 @@
|
|
1
|
-
declare type ArrayLength<A extends readonly unknown[]> = LengthValue<ArrayType<A>["length"]>;
|
2
|
-
|
3
|
-
declare namespace ArrayLength {
|
4
|
-
export type T0 = ArrayLength<[]>;
|
5
|
-
export type T0a = ArrayLength<string[]>;
|
6
|
-
export type T0b = ArrayLength<readonly []>;
|
7
|
-
export type T0d = ArrayLength<readonly string[]>;
|
8
|
-
export type T0c = ArrayLength<[string?, string?]>;
|
9
|
-
export type T1 = ArrayLength<[string] | [string, string?, string?]>;
|
10
|
-
export type T1b = ArrayLength<[string] | [string?, string?, string?]>; // 0 | 1 | 2 | 3 -- empty tuple -> length: 0 is just 0, so does not consume other possible lengths
|
11
|
-
export type T1c = ArrayLength<string[] | [string, string, string]>; // 0 -- array -> length: number coerced to length 0 but consumes all other possible lengths
|
12
|
-
}
|
13
|
-
|
14
|
-
declare namespace NotArrayLength {
|
15
|
-
export type N = ArrayLength<never>;
|
16
|
-
}
|
@@ -1,48 +0,0 @@
|
|
1
|
-
declare type MonadType<A extends readonly unknown[]> = 0 extends ArrayLength<A>
|
2
|
-
? never
|
3
|
-
: ArrayType<A>;
|
4
|
-
|
5
|
-
declare namespace MonadType {
|
6
|
-
export type T0 = MonadType<[1, 1]>;
|
7
|
-
export type T1 = MonadType<readonly [1, 1]>;
|
8
|
-
export type T2 = MonadType<readonly [1, 1?]>;
|
9
|
-
export type T3 = MonadType<readonly [1?, 1?]>;
|
10
|
-
export type T4 = MonadType<readonly [1?, 1?]>;
|
11
|
-
export type T5 = MonadType<[[]]>;
|
12
|
-
export type T6 = MonadType<string[] | int[]>;
|
13
|
-
export type T7 = MonadType<(string | int)[]>;
|
14
|
-
export type T18 = MonadType<[string] | [5, 10]>;
|
15
|
-
export type T8a = MonadType<Tuple>;
|
16
|
-
export type T8b = MonadType<ArrayN<3>>;
|
17
|
-
export type T8c = MonadType<
|
18
|
-
| ArrayN<3>
|
19
|
-
| Tuple
|
20
|
-
| [string]
|
21
|
-
| [5, 10]
|
22
|
-
| [5, 13]
|
23
|
-
| readonly [5, 10]
|
24
|
-
>;
|
25
|
-
}
|
26
|
-
|
27
|
-
declare namespace NotMonadType {
|
28
|
-
export type N12 = MonadType<never>;
|
29
|
-
export type N26 = MonadType<[]>;
|
30
|
-
export type N27 = MonadType<string[]>;
|
31
|
-
export type N28 = MonadType<readonly []>;
|
32
|
-
export type N29 = MonadType<readonly string[]>;
|
33
|
-
export type N30 = MonadType<[5] | []>;
|
34
|
-
export type N30a = MonadType<[5] | string[]>;
|
35
|
-
export type N30b = MonadType<[5] | readonly []>;
|
36
|
-
export type N30c = MonadType<[5] | readonly string[]>;
|
37
|
-
export type N30d = MonadType<
|
38
|
-
| []
|
39
|
-
| [5, 10]
|
40
|
-
| string []
|
41
|
-
| readonly []
|
42
|
-
| readonly [5, 10]
|
43
|
-
| readonly string[]
|
44
|
-
>;
|
45
|
-
export type N31 = MonadType<ArrayN>;
|
46
|
-
export type N32 = MonadType<[string?]>;
|
47
|
-
export type N33 = MonadType<readonly [string?]>;
|
48
|
-
}
|
@@ -1,30 +0,0 @@
|
|
1
|
-
declare type Chain<
|
2
|
-
A extends readonly string[],
|
3
|
-
D extends string = "/",
|
4
|
-
Reverse extends boolean = false,
|
5
|
-
> = literal<D> extends never
|
6
|
-
? never
|
7
|
-
: D extends D
|
8
|
-
? ArrayType<A> extends never
|
9
|
-
? never
|
10
|
-
: ArrayType<A> extends readonly [infer H extends string, ...infer T extends string[]]
|
11
|
-
? ArrayType<T> extends readonly []
|
12
|
-
? literalful<H>
|
13
|
-
: True<Reverse> extends never
|
14
|
-
? `${literalful<H>}${literal<D>}${Chain<ArrayType<T>, literal<D>>}`
|
15
|
-
: `${Chain<ArrayType<T>, literal<D>, True<Reverse>>}${literal<D>}${literalful<H>}`
|
16
|
-
: never
|
17
|
-
: never;
|
18
|
-
|
19
|
-
declare namespace Chain {
|
20
|
-
export type T = Chain<["a", "b", "c"]>;
|
21
|
-
export type T0 = Chain<["a", "b", "c"], "">;
|
22
|
-
export type T0a = Chain<["a", "b", "c"], "-">;
|
23
|
-
export type T1 = Chain<["a", "b", "c"], "/", true>;
|
24
|
-
export type T1a = Chain<["a", "b", "c"], ".", true>;
|
25
|
-
export type T2 = Chain<["a", "b" | "bar", "c"]>;
|
26
|
-
export type T2a = Chain<["a" | "foo", "b" | "bar", "c"]>; // 4
|
27
|
-
export type T3 = Chain<["a", "b", "c"], "." | "/">;
|
28
|
-
export type T4 = Chain<["a" | "foo", "b" | "bar", "c"], "." | "/">; // 8
|
29
|
-
export type T5 = Chain<["a" | "foo", "b" | "bar", "c"], "." | "/", true>; // 8
|
30
|
-
}
|
@@ -1,27 +0,0 @@
|
|
1
|
-
declare type Stringify<C> = C extends abstract new (...args: infer A) => infer O
|
2
|
-
? O extends { string: infer S extends string }
|
3
|
-
? S
|
4
|
-
: O extends { toString: () => infer S extends string }
|
5
|
-
? S
|
6
|
-
: never
|
7
|
-
: C extends ((...args: infer A) => infer S extends string)
|
8
|
-
? S
|
9
|
-
: C extends { string: infer S extends string }
|
10
|
-
? S
|
11
|
-
: C extends { toString: () => infer S extends string }
|
12
|
-
? S
|
13
|
-
: never;
|
14
|
-
|
15
|
-
declare namespace Stringify {
|
16
|
-
export type T = Stringify<CharString<"OK-Instance">>;
|
17
|
-
export type T0 = Stringify<CharStringCtor>;
|
18
|
-
export type T1 = Stringify<charstringfunc<"OK-Function">>;
|
19
|
-
|
20
|
-
type CharStringCtor = abstract new () => CharString<"OK-Constructor">;
|
21
|
-
|
22
|
-
interface CharString<Validator extends string> {
|
23
|
-
readonly string: valid<stringful, [Validator, "string"]>;
|
24
|
-
}
|
25
|
-
|
26
|
-
type charstringfunc<Validator extends string> = () => valid<stringful, [Validator, "string"]>;
|
27
|
-
}
|
@@ -1,35 +0,0 @@
|
|
1
|
-
declare type Numbered<N extends number> = Primeval<N, number>;
|
2
|
-
|
3
|
-
declare namespace Numbered {
|
4
|
-
export type T0 = Numbered<0>;
|
5
|
-
export type T1 = Numbered<0.0>;
|
6
|
-
export type T2 = Numbered<1>;
|
7
|
-
export type T3 = Numbered<1.0>;
|
8
|
-
export type T4 = Numbered<1.1>;
|
9
|
-
export type T5 = Numbered<1 | 5>;
|
10
|
-
}
|
11
|
-
|
12
|
-
declare namespace NumberedNever {
|
13
|
-
export type N0 = Numbered<number>;
|
14
|
-
export type N0b = Numbered<numberful>;
|
15
|
-
export type N0c = Numbered<number | numberful>;
|
16
|
-
export type N0d = Numbered<1 | numberful>;
|
17
|
-
export type N1 = Numbered<never>;
|
18
|
-
|
19
|
-
// export type N0e = Numbered<1 | number>;
|
20
|
-
// export type N2 = Numbered<"cool">;
|
21
|
-
// export type N3 = Numbered<"NaN">;
|
22
|
-
// export type N4 = Numbered<"5">;
|
23
|
-
// export type N5 = Numbered<string>;
|
24
|
-
// export type N6 = Numbered<boolean>;
|
25
|
-
// export type N6a = Numbered<true>;
|
26
|
-
// export type N6b = Numbered<false>;
|
27
|
-
// export type N7 = Numbered<null>;
|
28
|
-
// export type N8 = Numbered<undefined>;
|
29
|
-
// export type N9 = Numbered<void>;
|
30
|
-
// export type N10 = Numbered<object>;
|
31
|
-
// export type N11 = Numbered<[]>;
|
32
|
-
// export type N12 = Numbered<5 | true>;
|
33
|
-
// export type N13 = Numbered<()=> 5>;
|
34
|
-
// export type N14 = Numbered<symbol>;
|
35
|
-
}
|
@@ -1 +0,0 @@
|
|
1
|
-
declare type Fake<T> = T extends string ? string : string;
|
@@ -1,2 +0,0 @@
|
|
1
|
-
declare type Test<TF extends { T: unknown; F?: unknown }> = (OmitNever<TF["T"]> extends TF["T"] ? true : never) & (object extends OmitNever<TF["F"]> ? true : undefined extends OmitNever<TF["F"]> ? true : never);
|
2
|
-
declare type OmitNever<R> = { [K in keyof R as R[K] extends never ? never : K]: R[K] };
|
@@ -1 +0,0 @@
|
|
1
|
-
declare type vstring<V extends string> = valid<stringful, [V, "string"]>;
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|
File without changes
|