@eslinted/core 12.0.0 → 13.0.0-rc.0
Sign up to get free protection for your applications and to get access to all the features.
- package/dist/factory/global.d.ts +26 -0
- package/dist/factory/global.d.ts.map +1 -0
- package/dist/factory/global.js +39 -0
- package/dist/factory/global.js.map +1 -0
- package/dist/factory/index.d.ts +1 -0
- package/dist/factory/index.d.ts.map +1 -1
- package/dist/factory/index.js +1 -0
- package/dist/factory/index.js.map +1 -1
- package/dist/factory/options/html.d.ts +1 -1
- package/dist/factory/options/html.d.ts.map +1 -1
- package/dist/factory/options/html.js.map +1 -1
- package/dist/factory/options/json.d.ts +1 -1
- package/dist/factory/options/json.d.ts.map +1 -1
- package/dist/factory/options/json.js.map +1 -1
- package/dist/factory/options/jsonc.d.ts +1 -1
- package/dist/factory/options/jsonc.d.ts.map +1 -1
- package/dist/factory/options/jsonc.js.map +1 -1
- package/dist/factory/options/option/index.d.ts +40 -2978
- package/dist/factory/options/option/index.d.ts.map +1 -1
- package/dist/factory/options/option/index.js.map +1 -1
- package/dist/factory/options/option/template/index.d.ts +10 -6
- package/dist/factory/options/option/template/index.d.ts.map +1 -1
- package/dist/factory/options/option/template/languageOptions.d.ts +6 -5
- package/dist/factory/options/option/template/languageOptions.d.ts.map +1 -1
- package/dist/factory/options/svelte.d.ts +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +4 -26
- package/dist/index.js.map +1 -1
- package/dist/objects/config/global/system.d.ts +1 -1
- package/dist/objects/config/global/system.d.ts.map +1 -1
- package/dist/objects/config/scoped.d.ts +1 -5
- package/dist/objects/config/scoped.d.ts.map +1 -1
- package/dist/objects/rule/record/index.d.ts +1 -1
- package/dist/objects/rule/record/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/factory/global.ts +43 -0
- package/src/factory/index.ts +1 -0
- package/src/factory/options/html.ts +1 -2
- package/src/factory/options/json.ts +1 -2
- package/src/factory/options/jsonc.ts +1 -2
- package/src/factory/options/option/index.ts +19 -16
- package/src/factory/options/option/template/index.ts +22 -7
- package/src/factory/options/option/template/languageOptions.ts +18 -13
- package/src/factory/options/svelte.ts +1 -1
- package/src/index.ts +15 -30
- package/src/objects/config/global/system.ts +11 -12
- package/src/objects/config/scoped.ts +1 -5
- package/src/objects/rule/record/index.ts +2 -1
- package/typings/common/literals/chars/alpha.d.ts +0 -4
- package/typings/common/literals/chars/digit.d.ts +0 -12
- package/typings/common/literals/chars/digits/base64.d.ts +0 -13
- package/typings/common/literals/chars/digits/hexchar.d.ts +0 -9
- package/typings/common/literals/chars/lower.d.ts +0 -1
- package/typings/common/literals/chars/upper.d.ts +0 -28
- package/typings/common/literals/numbers/base32.d.ts +0 -19
- package/typings/common/literals/numbers/base64.d.ts +0 -35
- package/typings/common/literals/numbers/binary.d.ts +0 -4
- package/typings/common/literals/numbers/decimal.d.ts +0 -5
- package/typings/common/literals/numbers/hexadecimal.d.ts +0 -10
- package/typings/common/literals/numbers/octal.d.ts +0 -7
- package/typings/common/literals/numbers/quatral.d.ts +0 -4
- package/typings/common/literals/numbers/ternary.d.ts +0 -4
- package/typings/common/primitive.d.ts +0 -5
- package/typings/common/tester.d.ts +0 -8
- package/typings/common/utility/constructor.d.ts +0 -3
- package/typings/common/utility/interface/identity.d.ts +0 -11
- package/typings/common/utility/interface/identity.spec.d.ts +0 -63
- package/typings/common/utility/interface/index.d.ts +0 -5
- package/typings/common/utility/interface/keys.d.ts +0 -3
- package/typings/common/utility/interface/keys.spec.d.ts +0 -67
- package/typings/common/utility/interface/optional.d.ts +0 -7
- package/typings/common/utility/interface/optional.spec.d.ts +0 -34
- package/typings/common/utility/interface/partially.d.ts +0 -1
- package/typings/common/utility/interface/property/index.d.ts +0 -8
- package/typings/common/utility/interface/property/properties.d.ts +0 -6
- package/typings/common/utility/interface/table/index.d.ts +0 -3
- package/typings/common/utility/interface/table/tables.d.ts +0 -5
- package/typings/common/utility/iterable/arrayful.d.ts +0 -1
- package/typings/common/utility/iterable/flat/index.d.ts +0 -3
- package/typings/common/utility/iterable/flat/unflat.d.ts +0 -3
- package/typings/common/utility/iterable/identity.d.ts +0 -1
- package/typings/common/utility/iterable/identity.spec.d.ts +0 -59
- package/typings/common/utility/iterable/index.d.ts +0 -15
- package/typings/common/utility/iterable/index.spec.d.ts +0 -18
- package/typings/common/utility/iterable/tuple.d.ts +0 -11
- package/typings/common/utility/iterable/tuple.spec.d.ts +0 -14
- package/typings/common/utility/iterable/tuples.d.ts +0 -10
- package/typings/common/utility/null/index.d.ts +0 -1
- package/typings/common/utility/null/index.spec.d.ts +0 -13
- package/typings/common/utility/null/nullable.d.ts +0 -1
- package/typings/common/utility/null/nullable.spec.d.ts +0 -13
- package/typings/common/utility/primitive/cast/number.d.ts +0 -13
- package/typings/common/utility/primitive/cast/number.spec.d.ts +0 -57
- package/typings/common/utility/primitive/index.d.ts +0 -11
- package/typings/common/utility/primitive/index.spec.d.ts +0 -27
- package/typings/common/utility/primitive/length.d.ts +0 -5
- package/typings/common/utility/primitive/length.spec.d.ts +0 -26
- package/typings/common/utility/primitive/literal.d.ts +0 -1
- package/typings/common/utility/primitive/literal.spec.d.ts +0 -17
- package/typings/common/utility/primitive/literalful.d.ts +0 -3
- package/typings/common/utility/primitive/literalful.spec.d.ts +0 -20
- package/typings/common/utility/primitive/numeric.d.ts +0 -1
- package/typings/common/utility/primitive/numeric.spec.d.ts +0 -30
- package/typings/common/utility/primitive/truth.d.ts +0 -3
- package/typings/common/utility/primitive/truth.spec.d.ts +0 -22
- package/typings/common/validated/char.d.ts +0 -1
- package/typings/common/validated/index.d.ts +0 -2
- package/typings/common/validated/numberful.d.ts +0 -1
- package/typings/common/validated/properties/finite.d.ts +0 -2
- package/typings/common/validated/properties/int.d.ts +0 -2
- package/typings/common/validated/properties/length.d.ts +0 -3
- package/typings/common/validated/properties/polarity.d.ts +0 -5
- package/typings/common/validated/stringful.d.ts +0 -1
@@ -1,28 +0,0 @@
|
|
1
|
-
declare type upper =
|
2
|
-
| "A"
|
3
|
-
| "B"
|
4
|
-
| "C"
|
5
|
-
| "D"
|
6
|
-
| "E"
|
7
|
-
| "F"
|
8
|
-
| "G"
|
9
|
-
| "H"
|
10
|
-
| "I"
|
11
|
-
| "J"
|
12
|
-
| "K"
|
13
|
-
| "L"
|
14
|
-
| "M"
|
15
|
-
| "N"
|
16
|
-
| "O"
|
17
|
-
| "P"
|
18
|
-
| "Q"
|
19
|
-
| "R"
|
20
|
-
| "S"
|
21
|
-
| "T"
|
22
|
-
| "U"
|
23
|
-
| "V"
|
24
|
-
| "W"
|
25
|
-
| "X"
|
26
|
-
| "Y"
|
27
|
-
| "Z"
|
28
|
-
;
|
@@ -1,35 +0,0 @@
|
|
1
|
-
declare type base64 =
|
2
|
-
| base32
|
3
|
-
| 32
|
4
|
-
| 33
|
5
|
-
| 34
|
6
|
-
| 35
|
7
|
-
| 36
|
8
|
-
| 37
|
9
|
-
| 38
|
10
|
-
| 39
|
11
|
-
| 40
|
12
|
-
| 41
|
13
|
-
| 42
|
14
|
-
| 43
|
15
|
-
| 44
|
16
|
-
| 45
|
17
|
-
| 46
|
18
|
-
| 47
|
19
|
-
| 48
|
20
|
-
| 49
|
21
|
-
| 50
|
22
|
-
| 51
|
23
|
-
| 52
|
24
|
-
| 53
|
25
|
-
| 54
|
26
|
-
| 55
|
27
|
-
| 56
|
28
|
-
| 57
|
29
|
-
| 58
|
30
|
-
| 59
|
31
|
-
| 60
|
32
|
-
| 61
|
33
|
-
| 62
|
34
|
-
| 63
|
35
|
-
;
|
@@ -1,8 +0,0 @@
|
|
1
|
-
declare type Tester<TF extends { T: unknown; F?: unknown }> =
|
2
|
-
& (OmitNever<TF["T"]> extends TF["T"] ? true : never)
|
3
|
-
& (object extends OmitNever<TF["F"]> ? true : undefined extends OmitNever<TF["F"]> ? true : never);
|
4
|
-
declare type OmitNever<R> = { [
|
5
|
-
K in keyof R as R[K] extends never
|
6
|
-
? never
|
7
|
-
: K
|
8
|
-
]: R[K] };
|
@@ -1,11 +0,0 @@
|
|
1
|
-
declare type Interface<R extends object> = [R] extends [object]
|
2
|
-
? [Extract<R, readonly unknown[]>] extends [never]
|
3
|
-
? Required<R> extends Record<infer K, unknown>
|
4
|
-
? Exclude<K, string> extends never
|
5
|
-
? literalful<K & string> extends never
|
6
|
-
? never
|
7
|
-
: R
|
8
|
-
: never
|
9
|
-
: never
|
10
|
-
: never
|
11
|
-
: never;
|
@@ -1,63 +0,0 @@
|
|
1
|
-
declare namespace Interface {
|
2
|
-
export type T = Interface<{ a: 5 }>;
|
3
|
-
export type T0 = Interface<{
|
4
|
-
a: 1;
|
5
|
-
b?: 2;
|
6
|
-
}>;
|
7
|
-
export type T1 = Interface<{
|
8
|
-
a: 1;
|
9
|
-
b: 2;
|
10
|
-
}>;
|
11
|
-
export type T2 = Interface<Record<"a", unknown>>;
|
12
|
-
export type T3 = Interface<Record<"a" | "b", unknown>>;
|
13
|
-
export type N = Interface<never>;
|
14
|
-
export type N0 = Interface<object>;
|
15
|
-
export type N0a = Interface<Record<"a" | "b" | 5, unknown>>;
|
16
|
-
export type N0b = Interface<Record<"a" | "b" | number, unknown>>;
|
17
|
-
export type N0c = Interface<Record<string, unknown>>;
|
18
|
-
export type N0d = Interface<Record<string | number, unknown>>;
|
19
|
-
export type N0e = Interface<Record<stringful, string>>;
|
20
|
-
export type N0f = Interface<Record<stringful | "5", string>>;
|
21
|
-
export type N1 = Interface<[]>;
|
22
|
-
export type N1b = Interface<[1]>;
|
23
|
-
export type N1c = Interface<[1, 1]>;
|
24
|
-
export type N1d = Interface<number[]>;
|
25
|
-
export type N1e = Interface<readonly []>;
|
26
|
-
export type N1f = Interface<readonly [1]>;
|
27
|
-
export type N1g = Interface<readonly [1, 1]>;
|
28
|
-
export type N1h = Interface<readonly number[]>;
|
29
|
-
export type N2 = Interface<() => void>;
|
30
|
-
export type N2a = Interface<(a: string) => boolean>;
|
31
|
-
export type N2b = Interface<(a: string) => string[]>;
|
32
|
-
export type N2c = Interface<(a: string) => object>;
|
33
|
-
export type N5 = Interface<[] | { a: 1 }>;
|
34
|
-
export type N5a = Interface<[30] | { a: 1 }>;
|
35
|
-
export type N5b = Interface<object | []>;
|
36
|
-
export type N5c = Interface<
|
37
|
-
| {
|
38
|
-
a: 1;
|
39
|
-
b: 2;
|
40
|
-
}
|
41
|
-
| {
|
42
|
-
a: 1;
|
43
|
-
b: 2;
|
44
|
-
c: 2;
|
45
|
-
}
|
46
|
-
>;
|
47
|
-
|
48
|
-
// export type N3 = Interface<stringful>;
|
49
|
-
// export type N3b = Interface<numberful>;
|
50
|
-
// export type N13c = Interface<string>;
|
51
|
-
// export type N13d = Interface<"cool">;
|
52
|
-
// export type N13e = Interface<number>;
|
53
|
-
// export type N13f = Interface<0>;
|
54
|
-
// export type N13g = Interface<1>;
|
55
|
-
// export type N13h = Interface<true>;
|
56
|
-
// export type N13i = Interface<false>;
|
57
|
-
// export type N13j = Interface<boolean>;
|
58
|
-
// export type N14 = Interface<null>;
|
59
|
-
// export type N14a = Interface<undefined>;
|
60
|
-
// export type N14c = Interface<unknown>;
|
61
|
-
// export type N15 = Interface<string | { a: cool }>;
|
62
|
-
// export type N15b = Interface<Record<"a" | "b" | string, unknown>>;
|
63
|
-
}
|
@@ -1,67 +0,0 @@
|
|
1
|
-
declare namespace Keys {
|
2
|
-
const RESULT: {
|
3
|
-
positive: typeof POSITIVE | 1;
|
4
|
-
negative: typeof NEGATIVE | 0;
|
5
|
-
};
|
6
|
-
|
7
|
-
export const POSITIVE: {
|
8
|
-
T: Keys<{ a: 5 }>;
|
9
|
-
T0: Keys<{
|
10
|
-
a: 1;
|
11
|
-
b?: 2;
|
12
|
-
}>;
|
13
|
-
T1: Keys<{
|
14
|
-
a: 1;
|
15
|
-
b: 2;
|
16
|
-
}>;
|
17
|
-
} extends Record<string, string> ? "PASS" : never;
|
18
|
-
const s: unique symbol;
|
19
|
-
|
20
|
-
export const NEGATIVE: {
|
21
|
-
N: Keys<never>;
|
22
|
-
N0: Keys<{ [s]: 1 }>;
|
23
|
-
N1: Keys<Record<string, 1>>;
|
24
|
-
N1b: Keys<Record<stringful, 1>>;
|
25
|
-
N1c: Keys<Record<"", 1>>;
|
26
|
-
N1d: Keys<Record<number, 1>>;
|
27
|
-
N2: Keys<Record<stringful | "30", 1>>;
|
28
|
-
N2b: Keys<Record<stringful | "", 1>>;
|
29
|
-
N2c: Keys<Record<number | "", 1>>;
|
30
|
-
N2d: Keys<Record<number | "c", 1>>;
|
31
|
-
N2e: Keys<object>;
|
32
|
-
N2f: Keys<{
|
33
|
-
a: 1;
|
34
|
-
[ful]: "cool";
|
35
|
-
}>;
|
36
|
-
N3: Keys<[]>;
|
37
|
-
N3a: Keys<readonly [1, 1]>;
|
38
|
-
N4: Keys<
|
39
|
-
| {
|
40
|
-
a: 1;
|
41
|
-
b: 1;
|
42
|
-
}
|
43
|
-
| object
|
44
|
-
>;
|
45
|
-
N5: Keys<[1] | { a: 1 }>;
|
46
|
-
N5a: Keys<
|
47
|
-
| {
|
48
|
-
a: 1;
|
49
|
-
b: 1;
|
50
|
-
}
|
51
|
-
| { c: 1 }
|
52
|
-
>;
|
53
|
-
N5b: Keys<
|
54
|
-
| {
|
55
|
-
a: 1;
|
56
|
-
b: 1;
|
57
|
-
}
|
58
|
-
| { c?: 1 }
|
59
|
-
>;
|
60
|
-
|
61
|
-
// N10: Keys<null>;
|
62
|
-
// N10a: Keys<undefined>;
|
63
|
-
// N10b: Keys<void>;
|
64
|
-
// N10c: Keys<unknown>;
|
65
|
-
// N11c: Keys<Record<string | "30", 1>>;
|
66
|
-
} extends Record<string, never> ? "PASS" : never;
|
67
|
-
}
|
@@ -1,34 +0,0 @@
|
|
1
|
-
declare namespace Optional {
|
2
|
-
export type T = Optional<{
|
3
|
-
a: 1;
|
4
|
-
b: 1;
|
5
|
-
c: 1;
|
6
|
-
}, "c">;
|
7
|
-
export type T1c = "a" extends keyof T ? true : false; // true
|
8
|
-
export type T1b = "b" extends keyof T ? true : false; // true
|
9
|
-
export type T1 = "c" extends keyof T ? true : false; // true
|
10
|
-
export type T2 = {
|
11
|
-
a: 1;
|
12
|
-
b: 1;
|
13
|
-
} extends T ? true : false; // true
|
14
|
-
export type T2b = {
|
15
|
-
a: 1;
|
16
|
-
b: 1;
|
17
|
-
c: 1;
|
18
|
-
} extends T ? true : false; // true
|
19
|
-
export type T2c = {
|
20
|
-
a: 1;
|
21
|
-
b: 1;
|
22
|
-
c: 1;
|
23
|
-
z: 9001;
|
24
|
-
} extends T ? true : false; // true
|
25
|
-
export type N_null = {
|
26
|
-
a: 1;
|
27
|
-
b: 1;
|
28
|
-
c: 1;
|
29
|
-
} extends T ? true : false; // true
|
30
|
-
export type N = {
|
31
|
-
b: 1;
|
32
|
-
c: 1;
|
33
|
-
} extends T ? true : false; // false
|
34
|
-
}
|
@@ -1 +0,0 @@
|
|
1
|
-
declare type Partially<K extends string, V> = Partial<Recordful<K, V>>;
|
@@ -1,6 +0,0 @@
|
|
1
|
-
declare type Field<K extends string, OK extends string = never> = Property<K, OK, string>;
|
2
|
-
declare type Flag<OK extends string, K extends string = never> = Property<K, OK, boolean>;
|
3
|
-
declare type Limit<K extends string, OK extends string = never> = Property<K, OK, Record<"min" | "max", number>>;
|
4
|
-
declare type List<K extends string, OK extends string = never> = Property<K, OK, readonly string[]>;
|
5
|
-
declare type Listish<K extends string, OK extends string = never> = Property<K, OK, Unflat>;
|
6
|
-
declare type Scalar<K extends string, OK extends string = never> = Property<K, OK, number>;
|
@@ -1 +0,0 @@
|
|
1
|
-
declare type Arrayful<I = string> = ArrayN<1, I>;
|
@@ -1 +0,0 @@
|
|
1
|
-
declare type IsArray<A> = [A] extends [readonly unknown[]] ? A : never;
|
@@ -1,59 +0,0 @@
|
|
1
|
-
declare namespace ArrayType {
|
2
|
-
export type T0 = IsArray<[]>;
|
3
|
-
export type T1 = IsArray<[1, 1]>;
|
4
|
-
export type T2 = IsArray<string[]>;
|
5
|
-
export type T3 = IsArray<readonly []>;
|
6
|
-
export type T4 = IsArray<readonly [1, 1]>;
|
7
|
-
export type T5 = IsArray<readonly string[]>;
|
8
|
-
export type T6 = IsArray<[[]]>;
|
9
|
-
export type T7 = IsArray<string[] | int[]>;
|
10
|
-
export type T8 = IsArray<(string | int)[]>;
|
11
|
-
export type T9 = IsArray<
|
12
|
-
| []
|
13
|
-
| [5, 10]
|
14
|
-
| string []
|
15
|
-
| readonly []
|
16
|
-
| readonly [5, 10]
|
17
|
-
| readonly string[]
|
18
|
-
>;
|
19
|
-
export type T10 = IsArray<[1?, ...string[]]>;
|
20
|
-
export type T11 = IsArray<[1] | [1, 2?]>;
|
21
|
-
export type N0 = IsArray<"">;
|
22
|
-
export type N1 = IsArray<"test">;
|
23
|
-
export type N2 = IsArray<string>;
|
24
|
-
export type N3 = IsArray<boolean>;
|
25
|
-
export type N4 = IsArray<true>;
|
26
|
-
export type N5 = IsArray<false>;
|
27
|
-
export type N6 = IsArray<0>;
|
28
|
-
export type N7 = IsArray<1>;
|
29
|
-
export type N8 = IsArray<number>;
|
30
|
-
export type N9 = IsArray<null>;
|
31
|
-
export type N10 = IsArray<undefined>;
|
32
|
-
export type N11 = IsArray<unknown>;
|
33
|
-
export type N12 = IsArray<never>;
|
34
|
-
export type N13 = IsArray<void>;
|
35
|
-
export type N14 = IsArray<() => void>;
|
36
|
-
export type N15 = IsArray<(a: string) => []>;
|
37
|
-
export type N16 = IsArray<Record<string, unknown>>;
|
38
|
-
export type N17 = IsArray<Record<number, 5>>;
|
39
|
-
export type N18 = IsArray<stringful>;
|
40
|
-
export type N19 = IsArray<{ 0: string }>;
|
41
|
-
export type N20 = IsArray<{
|
42
|
-
0: string;
|
43
|
-
length: 1;
|
44
|
-
}>;
|
45
|
-
export type N21 = IsArray<symbol>;
|
46
|
-
export type N22 = IsArray<object>;
|
47
|
-
export type N23 = IsArray<
|
48
|
-
| []
|
49
|
-
| object
|
50
|
-
>;
|
51
|
-
export type N24 = IsArray<
|
52
|
-
| []
|
53
|
-
| string
|
54
|
-
>;
|
55
|
-
export type N25 = IsArray<
|
56
|
-
| []
|
57
|
-
| null
|
58
|
-
>;
|
59
|
-
}
|
@@ -1,15 +0,0 @@
|
|
1
|
-
declare type ArrayN<N extends number = 0, I = string> = [I] extends [never]
|
2
|
-
? never
|
3
|
-
: N extends number
|
4
|
-
? `${N}` extends `-${string}`
|
5
|
-
? never
|
6
|
-
: `${N}` extends `${string}.${string}`
|
7
|
-
? never
|
8
|
-
: N extends 0 /* TODO: constrain to posint */
|
9
|
-
? [...I[]]
|
10
|
-
: ArrayBuilder<N, I>
|
11
|
-
: never;
|
12
|
-
|
13
|
-
type ArrayBuilder<N extends number, I, H extends I[] = []> = H["length"] extends N
|
14
|
-
? [...H, ...I[]]
|
15
|
-
: ArrayBuilder<N, I, [...H, I]>;
|
@@ -1,18 +0,0 @@
|
|
1
|
-
declare namespace ArrayN {
|
2
|
-
type T = ArrayN;
|
3
|
-
|
4
|
-
// type T0 = ArrayN<0>; // string[]
|
5
|
-
// type T0a = ArrayN<-0>; // string[]
|
6
|
-
export type T1 = ArrayN<1>;
|
7
|
-
type T2 = ArrayN<2>;
|
8
|
-
type T3 = ArrayN<1.00000>;
|
9
|
-
type Tn = ArrayN<number>; // string[]
|
10
|
-
type Tna = ArrayN<typeof NaN>; // string[]
|
11
|
-
type Tnb = ArrayN<typeof Infinity>; // string[]
|
12
|
-
type F = ArrayN<never>;
|
13
|
-
type F1 = ArrayN<-1>;
|
14
|
-
type F2 = ArrayN<1.1>;
|
15
|
-
type F3 = ArrayN<-1.1>;
|
16
|
-
type F4 = ArrayN<-1.00000>;
|
17
|
-
type F4a = ArrayN<9.999999999>;
|
18
|
-
}
|
@@ -1,11 +0,0 @@
|
|
1
|
-
declare type Tuple<N extends number = 2, I = string> = [I] extends [never]
|
2
|
-
? never
|
3
|
-
: N extends number
|
4
|
-
? N extends 0 /* TODO: constrain posint */
|
5
|
-
? readonly []
|
6
|
-
: TupleBuilder<N, I>
|
7
|
-
: never;
|
8
|
-
|
9
|
-
type TupleBuilder<N extends number, I, H extends readonly I[] = readonly []> = H["length"] extends N
|
10
|
-
? H
|
11
|
-
: TupleBuilder<N, I, readonly [...H, I]>;
|
@@ -1,14 +0,0 @@
|
|
1
|
-
declare namespace Tuple {
|
2
|
-
export type T = Tuple;
|
3
|
-
export type T0 = Tuple<0>;
|
4
|
-
export type T0a = Tuple<1>;
|
5
|
-
export type T0b = Tuple<3>;
|
6
|
-
export type T1 = Tuple<2, string | number>;
|
7
|
-
export type T2 = Tuple<2 | 3>;
|
8
|
-
export type T3 = Tuple<2 | 3, string | number>;
|
9
|
-
export type T4 = Tuple<never>;
|
10
|
-
export type T4a = Tuple<0>;
|
11
|
-
export type T4b = Tuple<0 | 1>;
|
12
|
-
export type T4c = Tuple<1, never>;
|
13
|
-
export type T4d = Tuple<never, never>;
|
14
|
-
}
|
@@ -1,10 +0,0 @@
|
|
1
|
-
declare type Monad<I = string> = Tuple<1, I>;
|
2
|
-
declare type Dyad<I = string> = Tuple<2, I>;
|
3
|
-
declare type Triad<I = string> = Tuple<3, I>;
|
4
|
-
declare type Quad<I = string> = Tuple<4, I>;
|
5
|
-
declare type Pentad<I = string> = Tuple<5, I>;
|
6
|
-
declare type Hexad<I = string> = Tuple<6, I>;
|
7
|
-
declare type Heptad<I = string> = Tuple<7, I>;
|
8
|
-
declare type Octad<I = string> = Tuple<8, I>;
|
9
|
-
declare type Nonad<I = string> = Tuple<9, I>;
|
10
|
-
declare type Decad<I = string> = Tuple<10, I>;
|
@@ -1 +0,0 @@
|
|
1
|
-
declare type Null<T> = null | T;
|
@@ -1,13 +0,0 @@
|
|
1
|
-
declare namespace Null {
|
2
|
-
type OK = Tester<TF> | 0;
|
3
|
-
type TF = {
|
4
|
-
T: {
|
5
|
-
T0: Null<string>;
|
6
|
-
T1: Null<string | null>;
|
7
|
-
T2: Null<string | undefined>;
|
8
|
-
T3: Null<string | null | undefined>;
|
9
|
-
T4: Null<string | int | null>;
|
10
|
-
T6: Null<NonNullable<undefined | string>>;
|
11
|
-
};
|
12
|
-
};
|
13
|
-
}
|
@@ -1 +0,0 @@
|
|
1
|
-
declare type Nullable<T> = Null<NonNullable<T>>;
|
@@ -1,13 +0,0 @@
|
|
1
|
-
declare namespace Nullable {
|
2
|
-
type OK = Tester<TF> | 0;
|
3
|
-
type TF = {
|
4
|
-
T: {
|
5
|
-
T0: Nullable<string>;
|
6
|
-
T1: Nullable<string | null>;
|
7
|
-
T2: Nullable<string | undefined>;
|
8
|
-
T3: Nullable<string | null | undefined>;
|
9
|
-
T4: Nullable<string | int | null>;
|
10
|
-
T6: Nullable<NonNullable<undefined | string>>;
|
11
|
-
};
|
12
|
-
};
|
13
|
-
}
|
@@ -1,13 +0,0 @@
|
|
1
|
-
declare type ToNumber<Value extends string> = literalful<Value> extends never
|
2
|
-
? never
|
3
|
-
: literalful<Value> extends literalful<Exclude<literalful<Value>, "0" | "-0" >>
|
4
|
-
? literalful<Value> extends `${infer Number extends number}`
|
5
|
-
? number extends Number
|
6
|
-
? never
|
7
|
-
: Number
|
8
|
-
: never
|
9
|
-
: literalful<Exclude<literalful<Value>, "0" | "-0" >> extends `${infer Number extends number}`
|
10
|
-
? number extends Number
|
11
|
-
? never
|
12
|
-
: 0 | Number
|
13
|
-
: never;
|
@@ -1,57 +0,0 @@
|
|
1
|
-
declare namespace ToNumber {
|
2
|
-
export type OK = Tester<TF> | 0;
|
3
|
-
export type TF = {
|
4
|
-
T: {
|
5
|
-
T0: ToNumber<"0">;
|
6
|
-
T0a: ToNumber<"-0">;
|
7
|
-
T1: ToNumber<"0" | "-0">;
|
8
|
-
T2: ToNumber<"0" | "1">;
|
9
|
-
T2a: ToNumber<"-0" | "1">;
|
10
|
-
T2d: ToNumber<"0" | "-1">;
|
11
|
-
T2e: ToNumber<"-0" | "-1">;
|
12
|
-
T3: ToNumber<"1">;
|
13
|
-
T3a: ToNumber<"-1">;
|
14
|
-
T4: ToNumber<"0.1">;
|
15
|
-
T4b: ToNumber<"-0.1">;
|
16
|
-
T6: ToNumber<"5" | "9">;
|
17
|
-
T6a: ToNumber<"5" | "-9">;
|
18
|
-
T6b: ToNumber<"5" | "0.9">;
|
19
|
-
T6c: ToNumber<"5" | "-0.9">;
|
20
|
-
Tn: ToNumber<`1${1 | 2 | 3 | 4}`>;
|
21
|
-
Tna: ToNumber<`-1${1 | 2 | 3 | 4}`>;
|
22
|
-
Tnb: ToNumber<`1${1 | 2 | 3 | 4}` | `-1${1 | 2 | 3 | 4}`>;
|
23
|
-
Tnc: ToNumber<"-0" | `1${1 | 2 | 3 | 4}` | `-1${1 | 2 | 3 | 4}`>;
|
24
|
-
};
|
25
|
-
F: {
|
26
|
-
F0: ToNumber<string>;
|
27
|
-
F1: ToNumber<"">;
|
28
|
-
F2: ToNumber<"NaN">;
|
29
|
-
F2a: ToNumber<"Infinity">;
|
30
|
-
F2b: ToNumber<"-Infinity">;
|
31
|
-
F3: ToNumber<"0.0">;
|
32
|
-
F3a: ToNumber<"-0.0">;
|
33
|
-
F3d: ToNumber<"1.0">;
|
34
|
-
F3e: ToNumber<"-1.0">;
|
35
|
-
F4: ToNumber<"0.0" | "-0">;
|
36
|
-
F4a: ToNumber<"-0.0" | "-0">;
|
37
|
-
F4b: ToNumber<"-0.0" | "0">;
|
38
|
-
F4c: ToNumber<"0.0" | "-1">;
|
39
|
-
F4d: ToNumber<"-0.0" | "-1">;
|
40
|
-
F4e: ToNumber<"0.0" | "1">;
|
41
|
-
F4f: ToNumber<"-0.0" | "1">;
|
42
|
-
F4g: ToNumber<"0" | "-1.0">;
|
43
|
-
F4h: ToNumber<"-0" | "-1.0">;
|
44
|
-
F4i: ToNumber<"0.0" | "-1.0">;
|
45
|
-
F4j: ToNumber<"-0.0" | "-1.0">;
|
46
|
-
F5: ToNumber<".1">;
|
47
|
-
F5a: ToNumber<"-.1">;
|
48
|
-
F6: ToNumber<"" | "0">;
|
49
|
-
F6a: ToNumber<"" | "1">;
|
50
|
-
F6b: ToNumber<"1" | ".9">;
|
51
|
-
F6c: ToNumber<"5" | ".9">;
|
52
|
-
F6d: ToNumber<"5" | "-.9">;
|
53
|
-
Fn: ToNumber<`1${number}`>;
|
54
|
-
Fna: ToNumber<`-1${number}`>;
|
55
|
-
};
|
56
|
-
};
|
57
|
-
}
|