inferred-types 0.43.5 → 0.44.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.
Files changed (78) hide show
  1. package/dist/constants/Network.d.ts +22 -0
  2. package/dist/constants/Network.d.ts.map +1 -0
  3. package/dist/constants/Network.js +21 -0
  4. package/dist/constants/RepoConstants.d.ts +31 -0
  5. package/dist/constants/RepoConstants.d.ts.map +1 -0
  6. package/dist/constants/RepoConstants.js +48 -0
  7. package/dist/constants/index.d.ts +2 -1
  8. package/dist/constants/index.d.ts.map +1 -1
  9. package/dist/constants/index.js +2 -1
  10. package/dist/constants/tsconfig.tsbuildinfo +1 -1
  11. package/dist/inferred-types/index.cjs +85 -14
  12. package/dist/inferred-types/tsconfig.tsbuildinfo +1 -1
  13. package/dist/runtime/dictionary/valuesOf.d.ts +1 -1
  14. package/dist/runtime/dictionary/valuesOf.d.ts.map +1 -1
  15. package/dist/runtime/tsconfig.tsbuildinfo +1 -1
  16. package/dist/runtime/type-guards/index.d.ts +1 -0
  17. package/dist/runtime/type-guards/index.d.ts.map +1 -1
  18. package/dist/runtime/type-guards/index.js +1 -0
  19. package/dist/runtime/type-guards/isInlineSvg.d.ts +8 -0
  20. package/dist/runtime/type-guards/isInlineSvg.d.ts.map +1 -0
  21. package/dist/runtime/type-guards/isInlineSvg.js +10 -0
  22. package/dist/runtime/type-guards/isUrl.d.ts +22 -4
  23. package/dist/runtime/type-guards/isUrl.d.ts.map +1 -1
  24. package/dist/runtime/type-guards/isUrl.js +29 -8
  25. package/dist/runtime/type-guards/repos.d.ts +45 -0
  26. package/dist/runtime/type-guards/repos.d.ts.map +1 -0
  27. package/dist/runtime/type-guards/repos.js +77 -0
  28. package/dist/types/{numeric-literals/ValueCallback.d.ts → api/api.d.ts} +1 -1
  29. package/dist/types/api/api.d.ts.map +1 -0
  30. package/dist/types/api/index.d.ts +2 -0
  31. package/dist/types/api/index.d.ts.map +1 -0
  32. package/dist/types/api/index.js +1 -0
  33. package/dist/types/boolean-logic/branching/OnPass.d.ts +29 -0
  34. package/dist/types/boolean-logic/branching/OnPass.d.ts.map +1 -0
  35. package/dist/types/boolean-logic/branching/OnPass.js +1 -0
  36. package/dist/types/boolean-logic/branching/index.d.ts +1 -0
  37. package/dist/types/boolean-logic/branching/index.d.ts.map +1 -1
  38. package/dist/types/boolean-logic/branching/index.js +1 -0
  39. package/dist/types/index.d.ts +1 -0
  40. package/dist/types/index.d.ts.map +1 -1
  41. package/dist/types/index.js +1 -0
  42. package/dist/types/literals/ExpandRecursively.d.ts +7 -1
  43. package/dist/types/literals/ExpandRecursively.d.ts.map +1 -1
  44. package/dist/types/literals/Shape.d.ts +1 -1
  45. package/dist/types/literals/Shape.d.ts.map +1 -1
  46. package/dist/types/numeric-literals/index.d.ts +0 -1
  47. package/dist/types/numeric-literals/index.d.ts.map +1 -1
  48. package/dist/types/numeric-literals/index.js +0 -1
  49. package/dist/types/string-literals/character-sets/DomainName.d.ts +12 -3
  50. package/dist/types/string-literals/character-sets/DomainName.d.ts.map +1 -1
  51. package/dist/types/string-literals/character-sets/InlineSvg.d.ts +8 -0
  52. package/dist/types/string-literals/character-sets/InlineSvg.d.ts.map +1 -0
  53. package/dist/types/string-literals/character-sets/InlineSvg.js +1 -0
  54. package/dist/types/string-literals/character-sets/Repos.d.ts +108 -0
  55. package/dist/types/string-literals/character-sets/Repos.d.ts.map +1 -0
  56. package/dist/types/string-literals/character-sets/Repos.js +1 -0
  57. package/dist/types/string-literals/character-sets/Url.d.ts +160 -6
  58. package/dist/types/string-literals/character-sets/Url.d.ts.map +1 -1
  59. package/dist/types/string-literals/character-sets/index.d.ts +3 -0
  60. package/dist/types/string-literals/character-sets/index.d.ts.map +1 -1
  61. package/dist/types/string-literals/character-sets/index.js +3 -0
  62. package/dist/types/tsconfig.tsbuildinfo +1 -1
  63. package/dist/types/type-conversion/MergeObjects.d.ts.map +1 -1
  64. package/dist/types/type-conversion/RetainChars.d.ts +15 -0
  65. package/dist/types/type-conversion/RetainChars.d.ts.map +1 -0
  66. package/dist/types/type-conversion/RetainChars.js +1 -0
  67. package/dist/types/type-conversion/StripChars.d.ts +18 -0
  68. package/dist/types/type-conversion/StripChars.d.ts.map +1 -0
  69. package/dist/types/type-conversion/StripChars.js +1 -0
  70. package/dist/types/type-conversion/index.d.ts +2 -0
  71. package/dist/types/type-conversion/index.d.ts.map +1 -1
  72. package/dist/types/type-conversion/index.js +2 -0
  73. package/package.json +9 -9
  74. package/dist/constants/TCP_IP.d.ts +0 -11
  75. package/dist/constants/TCP_IP.d.ts.map +0 -1
  76. package/dist/constants/TCP_IP.js +0 -10
  77. package/dist/types/numeric-literals/ValueCallback.d.ts.map +0 -1
  78. /package/dist/types/{numeric-literals/ValueCallback.js → api/api.js} +0 -0
@@ -0,0 +1,108 @@
1
+ import { Mutable, TupleToUnion, OptionalSpace, Values, Flatten, UrlsFrom, AlphaNumericChar, GetUrlPath, IsTrue, Keys, AddUrlPathSegment, IsUnion, UnionToTuple, As } from "../../index";
2
+ import { Constant, GITHUB_INSIGHT_CATEGORY_LOOKUP, REPO_PAGE_TYPES, REPO_SOURCES, REPO_SOURCE_LOOKUP } from "../../../constants/index";
3
+ /**
4
+ * **RepoSources**
5
+ *
6
+ * common sources for source code repositories.
7
+ */
8
+ export type RepoSource = TupleToUnion<Mutable<typeof REPO_SOURCES>>;
9
+ /**
10
+ * **RepoPageType**
11
+ *
12
+ * a union of descriptive page names you'd expect to find in a source
13
+ * code repository.
14
+ */
15
+ export type RepoPageType = TupleToUnion<Mutable<typeof REPO_PAGE_TYPES>>;
16
+ export type RepoUrls = UrlsFrom<Flatten<Mutable<Values<typeof REPO_SOURCE_LOOKUP>>>>;
17
+ /**
18
+ * **SemanticVersion**`<[TAllowPrefix]>`
19
+ *
20
+ * Provides a type for _sematic versions_.
21
+ *
22
+ * - by default it not only allows the `${major}.${minor}.${patch}` nomenclature
23
+ * but also _optionally_ allows a prefix of `v`:
24
+ * - `0.10.1` - valid
25
+ * - `v0.10.1` - also valid
26
+ * - `v 0.10.1` - also valid
27
+ * - this prefixing can be disabled by setting `TPrefix` to false
28
+ */
29
+ export type SemanticVersion<TPrefix extends boolean = true> = `${[TPrefix] extends [true] ? `${"v" | ""}${OptionalSpace}` : ""}${number}.${number}.${number}`;
30
+ /**
31
+ * **GitRef**
32
+ *
33
+ * A type that provides the basic shape of a non-HTTP reference
34
+ * to a Git repository.
35
+ */
36
+ export type GitRef = `git@${string}.${string}:${string}.git`;
37
+ /**
38
+ * **GithubRepoUrl**`<[T]>`
39
+ *
40
+ * A type which represents the pattern of a URL pointing a repository
41
+ * on Github.
42
+ *
43
+ * When used _without the provided generic_ it provides a decent shape but will introduce
44
+ * false positives due to URL subpaths that exist.
45
+ *
46
+ * If you pass the value through the generic `T` then it will proxy the value through
47
+ * if it's a valid Repo URL (including a subpath validation) or `never` if it is not.
48
+ */
49
+ export type GithubRepoUrl<T = Constant<"not-set">> = T extends Constant<"not-set"> ? `https://github.com/${string}/${AlphaNumericChar | "-" | "_"}${string}` : T extends `https://github.com/${string}/${AlphaNumericChar | "-" | "_"}${string}` ? GetUrlPath<T> extends `/${string}/${string}/${string}` ? never : T : never;
50
+ /**
51
+ * **GithubIssuesUrl**`<[TOnlySummary]>`
52
+ *
53
+ * Provides a shape for either the _issues summary_ page of a repo on Github
54
+ * or that plus any specific _issue_ URLs.
55
+ *
56
+ * - by default it will show any issues page but set `TOnlySummary` to false
57
+ * if you're only wanting to match the summary page.
58
+ */
59
+ export type GithubIssuesUrl<TOnlySummary extends boolean = false> = [
60
+ IsTrue<TOnlySummary>
61
+ ] extends [true] ? `https://github.com/${string}/${string}/issues` : `https://github.com/${string}/${string}/issues` | `https://github.com/${string}/${string}/issues/${string}`;
62
+ /**
63
+ * **GithubProjectsUrl**`<[TOnlySummary]>`
64
+ *
65
+ * Provides a shape for either the _projects summary_ page of a repo on Github
66
+ * or that plus any specific _issue_ URLs.
67
+ *
68
+ * - by default it will show any Projects page but set `TOnlySummary` to false
69
+ * if you're only wanting to match the summary page.
70
+ */
71
+ export type GithubProjectsUrl<TOnlySummary extends boolean = false> = IsTrue<TOnlySummary> extends true ? `https://github.com/${string}/${string}/projects` : `https://github.com/${string}/${string}/projects` | `https://github.com/${string}/${string}/projects/${string}`;
72
+ /**
73
+ * **GithubActionsUrl**`<[TOnlySummary]>`
74
+ *
75
+ * Provides a shape for either the _actions summary_ page of a repo on Github
76
+ * or that plus any specific Job URLs.
77
+ *
78
+ * - by default it will show any actions related page but set `TOnlySummary` to false
79
+ * if you're only wanting to match the summary page.
80
+ */
81
+ export type GithubActionsUrl<TOnlySummary extends boolean = false> = IsTrue<TOnlySummary> extends true ? `https://github.com/${string}/${string}/actions` : `https://github.com/${string}/${string}/actions` | `https://github.com/${string}/${string}/actions/${string}`;
82
+ type GithubLookup = typeof GITHUB_INSIGHT_CATEGORY_LOOKUP;
83
+ type GhLookup = {
84
+ [K in keyof GithubLookup]: GithubLookup[K] extends string ? AddUrlPathSegment<`https://github.com/${string}`, GithubLookup[K]> : never;
85
+ };
86
+ /**
87
+ * GithubInsightPageType
88
+ *
89
+ * The sub-pages found under the **Insights** tab of a repo.
90
+ *
91
+ * **Related:** `GithubInsightsUrl`
92
+ */
93
+ export type GithubInsightPageType = TupleToUnion<Keys<GithubLookup>>;
94
+ type _GithubInsightUrl<T extends readonly GithubInsightPageType[]> = {
95
+ [K in keyof T]: T[K] extends string ? T[K] extends keyof GhLookup ? GhLookup[T[K]] : never : never;
96
+ };
97
+ /**
98
+ * **GithubInsightUrl**`<[T]>`
99
+ *
100
+ * Provides a URL shape that fits all of the _insights_ pages
101
+ * for a repo on Github.
102
+ *
103
+ * - if you want to pair down the types of insight pages you're
104
+ * matching for you can specify `T` as some union type of `GithubInsightPageType`
105
+ */
106
+ export type GithubInsightUrl<T extends GithubInsightPageType = GithubInsightPageType> = IsUnion<T> extends true ? TupleToUnion<_GithubInsightUrl<As<UnionToTuple<T>, readonly GithubInsightPageType[]>>> : T extends keyof GhLookup ? GhLookup[T] : never;
107
+ export {};
108
+ //# sourceMappingURL=Repos.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Repos.d.ts","sourceRoot":"","sources":["../../../../src/types/string-literals/character-sets/Repos.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ export {};
@@ -1,8 +1,132 @@
1
- import { DomainName } from "./DomainName";
2
- import { Ip4Address } from "./IpAddress";
3
- import { VariableChar } from "./Variable";
4
- export type NetworkProtocol = "http" | "https" | "file" | "ws" | "wss";
5
- export type RelativeUrl = `${VariableChar | "/"}`;
1
+ import { AlphaNumericChar, As, AsString, ExpandUnion, IsStringLiteral, IsTrue, StripAfter, StripBefore, StripChars, StripLeading, StripTrailing, TupleToUnion, DnsName, DomainName, Ip4Address, Mutable, Values, Flatten, EmptyObject } from "../../index";
2
+ import { NETWORK_PROTOCOL_LOOKUP } from "../../../constants/index";
3
+ export type NetworkProtocol = Exclude<TupleToUnion<Mutable<Flatten<Values<typeof NETWORK_PROTOCOL_LOOKUP>>>>, "">;
4
+ /**
5
+ * **NetworkProtocolPrefix**
6
+ *
7
+ * A type which tries to represent the _prefix_ of a URL/URI which
8
+ * indicates the network protocol.
9
+ */
10
+ export type NetworkProtocolPrefix<T extends NetworkProtocol = NetworkProtocol> = `${T}://`;
11
+ export type PortSpecifierOptions = {
12
+ /**
13
+ * **portRequirement**
14
+ *
15
+ * Whether a _port_ is "required", "optional", or "not-allowed"
16
+ * for this protocol.
17
+ *
18
+ * @default "not-allowed"
19
+ */
20
+ portRequirement?: "optional" | "required" | "not-allowed";
21
+ ports?: number;
22
+ };
23
+ type _Ports<TOpt extends PortSpecifierOptions> = TOpt["ports"] extends number ? `${TOpt["ports"]}` : `${number}`;
24
+ /**
25
+ * **PortSpecifier**`<TOpt>`
26
+ *
27
+ * Produces a string literal for the _port_ designation of
28
+ * many protocols. Basically just a `:${number}` and
29
+ * then possibly a space.
30
+ *
31
+ * - `TOpt` allows you to state whether the port should be:
32
+ * - `optional`
33
+ * - `required`
34
+ * - or `not-allowed`
35
+ */
36
+ export type PortSpecifier<TOpt extends PortSpecifierOptions = {
37
+ portRequirement: "not-allowed";
38
+ ports: number;
39
+ }> = [TOpt["portRequirement"]] extends ["required"] ? `:${_Ports<TOpt>}` : [TOpt["portRequirement"]] extends ["optional"] ? "" | `:${_Ports<TOpt>}` : ``;
40
+ export type ProtocolOptions = {
41
+ /**
42
+ * whether the protocol prefix should be optional
43
+ * @default false
44
+ */
45
+ optional?: boolean;
46
+ /**
47
+ * whether to allow for `http://` along with `https://`
48
+ * @default false
49
+ */
50
+ allowInsecure?: boolean;
51
+ protocol?: "http" | "ws" | "both";
52
+ };
53
+ /**
54
+ * **HttpProtocol**`<[TOpt]>`
55
+ *
56
+ * A utility which provides different ways of
57
+ * requiring an **HTTP** based protocol string.
58
+ *
59
+ * - by default this only allows `https://`
60
+ * - you can choose to make the protocol _optional_
61
+ * or enable insure `http://` too.
62
+ */
63
+ export type WebsocketProtocol<TOpt extends ProtocolOptions = EmptyObject> = IsTrue<TOpt["allowInsecure"]> extends true ? IsTrue<TOpt["optional"]> extends true ? `wss://` | `ws://` | "" : `wss://` | `ws://` : IsTrue<TOpt["optional"]> extends true ? `wss://` | "" : `wss://`;
64
+ /**
65
+ * **HttpProtocol**`<[TOpt]>`
66
+ *
67
+ * A utility which provides different ways of
68
+ * requiring an **HTTP** based protocol string.
69
+ *
70
+ * - by default this only allows `https://`
71
+ * - you can choose to make the protocol _optional_
72
+ * or enable insure `http://` too.
73
+ */
74
+ export type HttpProtocol<TOpt extends ProtocolOptions = EmptyObject> = IsTrue<TOpt["allowInsecure"]> extends true ? IsTrue<TOpt["optional"]> extends true ? `https://` | `http://` | "" : `https://` | `http://` : IsTrue<TOpt["optional"]> extends true ? `https://` | "" : `https://`;
75
+ /**
76
+ * **RemoveHttpProtocol**`<T>`
77
+ *
78
+ * Removes both `http://` and `https://` prefixes to a string.
79
+ */
80
+ export type RemoveHttpProtocol<T extends string> = T extends `http://${infer Insecure}` ? Insecure : T extends `https://${infer Secure}` ? Secure : T;
81
+ /**
82
+ * **RemoveNetworkProtocol**`<TContent,[TProtocol]>`
83
+ *
84
+ * Removes any _leading_ content which is a network protocol reference.
85
+ *
86
+ * - an example would be `https://` but so would `ftp://`
87
+ * - you can narrow the protocols it's looking to remove by modifying
88
+ * `TProtocol`
89
+ */
90
+ export type RemoveNetworkProtocol<TContent extends string, TProtocol extends NetworkProtocol = NetworkProtocol> = TContent extends `${NetworkProtocolPrefix<TProtocol>}${infer Rest}` ? Rest : TContent;
91
+ /**
92
+ * **UrlPath**`<T>`
93
+ *
94
+ * A simple type that represents the _shape_ of a UrlPath
95
+ * when no generics are used (aka, `T` is defaulted to _null_).
96
+ *
97
+ * This type is either an empty string `''` or a string starting
98
+ * with a `/` character.
99
+ *
100
+ * If you want more detailed type checking of the path you can
101
+ * pass in a string to `T` and it will be validated and return
102
+ * `never` when an invalid character is used.
103
+ */
104
+ export type UrlPath<T extends string | null = null> = T extends null ? "" | `/${AlphaNumericChar | "_"}${string}` : T extends string ? IsStringLiteral<T> extends true ? T extends `${string}/` ? never : StripChars<T, AlphaNumericChar | "/" | "_" | "." | "-"> extends "" ? T : never : never : never;
105
+ /**
106
+ * **GetUrlSource**`<T>`
107
+ *
108
+ * Extracts out the IP address or Domain Name from a URL-like string literal.
109
+ *
110
+ * - if _not_ a string literal then just proxies through `string`
111
+ * - if not able to find it then it returns the literal ''
112
+ */
113
+ export type GetUrlSource<T extends string> = IsStringLiteral<T> extends true ? RemoveNetworkProtocol<T> extends `${infer Domain extends DnsName | Ip4Address}${"" | `/${string}`}` ? StripAfter<Domain, "/"> : "" : string;
114
+ type _GetUrlPath<T extends string> = StripAfter<As<StripBefore<RemoveNetworkProtocol<T>, "/">, string>, "?"> extends string ? StripAfter<As<StripBefore<RemoveNetworkProtocol<T>, "/">, string>, "?"> : never;
115
+ /**
116
+ * **GetUrlPath**`<T>`
117
+ *
118
+ * Extracts the URL's path from a full URL/URI.
119
+ *
120
+ * - removes any reference to the network protocol
121
+ * - removes the domain name or IP address
122
+ * - removes any trailing query parameters
123
+ */
124
+ export type GetUrlPath<T extends string> = IsStringLiteral<T> extends true ? RemoveNetworkProtocol<T> extends `${string}/${string}` ? _GetUrlPath<RemoveNetworkProtocol<T>> extends "" ? "" : `/${_GetUrlPath<RemoveNetworkProtocol<T>>}` : "" : string;
125
+ type RelativeStart = `../` | `./`;
126
+ /**
127
+ * **RelativeUrl**
128
+ */
129
+ export type RelativeUrl = `${RelativeStart}${UrlPath}`;
6
130
  /**
7
131
  * A literal variant of _string_ which forces a string to follow conventions
8
132
  * for a fully qualified URL like `https://google.com`. It can't ensure the
@@ -10,5 +134,35 @@ export type RelativeUrl = `${VariableChar | "/"}`;
10
134
  */
11
135
  export type FullyQualifiedUrl = `${NetworkProtocol}://${Ip4Address | DomainName}/${string}`;
12
136
  export type UrlBuilder = (<P extends NetworkProtocol, D extends DomainName, B extends RelativeUrl>(protocol: P, domain: D, basePath: B) => `${P}://${D}/${B}`) | (<U extends RelativeUrl>(url: U) => U);
13
- export type Uri = `${NetworkProtocol}://${string}`;
137
+ /**
138
+ * **Uri**
139
+ *
140
+ * A simple type to allow for any HTTP, File, or Websocket based URI.
141
+ */
142
+ export type Uri<T extends NetworkProtocol = NetworkProtocol> = `${T}://${string}`;
143
+ /**
144
+ * **AddUrlPathSegment**`<TExisting, TAdd>`
145
+ *
146
+ * Adds a new URL path segment, ensuring that appropriate
147
+ * `/` representation is preserved.
148
+ */
149
+ export type AddUrlPathSegment<TExisting extends string, TAdd extends string> = TExisting extends `${string}/` ? `${TExisting}${StripTrailing<StripLeading<TAdd, "/">, "/">}` : `${TExisting}/${StripTrailing<StripLeading<TAdd, "/">, "/">}`;
150
+ type _Path<T extends string> = GetUrlPath<T> extends UrlPath ? GetUrlPath<T> : never;
151
+ type _UrlsFromProtocol<TContent extends string, TProto extends WebsocketProtocol<TOpt> | HttpProtocol<TOpt>, TOpt extends ProtocolOptions & PortSpecifierOptions> = `${TProto}${GetUrlSource<TContent>}${PortSpecifier<TOpt>}${AddUrlPathSegment<_Path<TContent>, `${string}`>}` | `${TProto}${GetUrlSource<TContent>}${PortSpecifier<TOpt>}${_Path<TContent>}`;
152
+ type _UrlsFrom<T extends string, TOpt extends ProtocolOptions & PortSpecifierOptions = EmptyObject> = TOpt["protocol"] extends "ws" ? _UrlsFromProtocol<T, WebsocketProtocol<TOpt>, TOpt> : TOpt["protocol"] extends "both" ? _UrlsFromProtocol<T, WebsocketProtocol<TOpt>, TOpt> | _UrlsFromProtocol<T, HttpProtocol<TOpt>, TOpt> : _UrlsFromProtocol<T, HttpProtocol<TOpt>, TOpt>;
153
+ /**
154
+ * **UrlsFrom**`<T, [TOpt]>`
155
+ *
156
+ * Utility which generates a type for all valid URLs in the given
157
+ * partial URL.
158
+ *
159
+ * - you can configure whether the protocol should be _optional_
160
+ * and whether _insecure_ URL's should be allowed with `TOpt`
161
+ * - you can also switch the protocol between `http`,`ws`, or `both`
162
+ * - the default protocol is `http`
163
+ */
164
+ export type UrlsFrom<T extends string | readonly string[], TOpt extends ProtocolOptions & PortSpecifierOptions = EmptyObject> = T extends string ? ExpandUnion<_UrlsFrom<T, TOpt>> : T extends readonly string[] ? TupleToUnion<{
165
+ [K in keyof T]: IsStringLiteral<T[K]> extends true ? ExpandUnion<_UrlsFrom<AsString<T[K]>, TOpt>> : never;
166
+ }> : never;
167
+ export {};
14
168
  //# sourceMappingURL=Url.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Url.d.ts","sourceRoot":"","sources":["../../../../src/types/string-literals/character-sets/Url.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAG1C,MAAM,MAAM,eAAe,GAAG,MAAM,GAAG,OAAO,GAAG,MAAM,GAAG,IAAI,GAAG,KAAK,CAAC;AAGvE,MAAM,MAAM,WAAW,GAAG,GAAG,YAAY,GAAG,GAAG,EAAE,CAAC;AAElD;;;;GAIG;AACH,MAAM,MAAM,iBAAiB,GAAG,GAAG,eAAe,MAAM,UAAU,GAAG,UAAU,IAAI,MAAM,EAAE,CAAC;AAE5F,MAAM,MAAM,UAAU,GAClB,CAAC,CAAC,CAAC,SAAS,eAAe,EAAE,CAAC,SAAS,UAAU,EAAE,CAAC,SAAS,WAAW,EACxE,QAAQ,EAAE,CAAC,EACX,MAAM,EAAE,CAAC,EACT,QAAQ,EAAE,CAAC,KACR,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,GACtB,CAAC,CAAC,CAAC,SAAS,WAAW,EAAE,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;AAG3C,MAAM,MAAM,GAAG,GAAG,GAAG,eAAe,MAAM,MAAM,EAAE,CAAC"}
1
+ {"version":3,"file":"Url.d.ts","sourceRoot":"","sources":["../../../../src/types/string-literals/character-sets/Url.ts"],"names":[],"mappings":"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"}
@@ -22,6 +22,9 @@ export * from "./ValueAtDotPath";
22
22
  export * from "./Consonants";
23
23
  export * from "./PlusMinus";
24
24
  export * from "./CSS";
25
+ export * from "./InlineSvg";
26
+ export * from "./Repos";
27
+ export * from "./Variable";
25
28
  export * from "./brackets/index";
26
29
  export * from "./quotation-marks/index";
27
30
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/types/string-literals/character-sets/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,OAAO,CAAC;AACtB,cAAc,OAAO,CAAC;AACtB,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,OAAO,CAAC;AAEtB,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/types/string-literals/character-sets/index.ts"],"names":[],"mappings":"AAAA,cAAc,SAAS,CAAC;AACxB,cAAc,cAAc,CAAC;AAC7B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,kBAAkB,CAAC;AACjC,cAAc,kBAAkB,CAAC;AACjC,cAAc,eAAe,CAAC;AAC9B,cAAc,cAAc,CAAC;AAC7B,cAAc,OAAO,CAAC;AACtB,cAAc,OAAO,CAAC;AACtB,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,iBAAiB,CAAC;AAChC,cAAc,mBAAmB,CAAC;AAClC,cAAc,cAAc,CAAC;AAC7B,cAAc,eAAe,CAAC;AAC9B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,eAAe,CAAC;AAC9B,cAAc,gBAAgB,CAAC;AAC/B,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC;AAC7B,cAAc,aAAa,CAAC;AAC5B,cAAc,OAAO,CAAC;AACtB,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,YAAY,CAAC;AAE3B,cAAc,kBAAkB,CAAC;AACjC,cAAc,yBAAyB,CAAC"}
@@ -22,5 +22,8 @@ export * from "./ValueAtDotPath.js";
22
22
  export * from "./Consonants.js";
23
23
  export * from "./PlusMinus.js";
24
24
  export * from "./CSS.js";
25
+ export * from "./InlineSvg.js";
26
+ export * from "./Repos.js";
27
+ export * from "./Variable.js";
25
28
  export * from "./brackets/index.js";
26
29
  export * from "./quotation-marks/index.js";