compostjs 0.0.11 → 0.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.
Files changed (143) hide show
  1. package/dist/compost.js +34 -28
  2. package/dist/core.js +94 -73
  3. package/dist/fable_modules/fable-library-js.4.28.0/Array.d.ts +123 -0
  4. package/dist/fable_modules/fable-library-js.4.28.0/Array.js +1242 -0
  5. package/dist/fable_modules/fable-library-js.4.28.0/Async.d.ts +26 -0
  6. package/dist/fable_modules/fable-library-js.4.28.0/Async.js +145 -0
  7. package/dist/fable_modules/fable-library-js.4.28.0/AsyncBuilder.d.ts +59 -0
  8. package/dist/fable_modules/fable-library-js.4.28.0/AsyncBuilder.js +183 -0
  9. package/dist/fable_modules/fable-library-js.4.28.0/BigInt.d.ts +115 -0
  10. package/dist/fable_modules/fable-library-js.4.28.0/BigInt.js +283 -0
  11. package/dist/fable_modules/fable-library-js.4.28.0/BitConverter.d.ts +27 -0
  12. package/dist/fable_modules/fable-library-js.4.28.0/BitConverter.js +138 -0
  13. package/dist/fable_modules/fable-library-js.4.28.0/Boolean.d.ts +3 -0
  14. package/dist/fable_modules/fable-library-js.4.28.0/Boolean.js +21 -0
  15. package/dist/fable_modules/fable-library-js.4.28.0/CHANGELOG.md +100 -0
  16. package/dist/fable_modules/fable-library-js.4.28.0/Char.d.ts +65 -0
  17. package/dist/fable_modules/fable-library-js.4.28.0/Char.js +169 -0
  18. package/dist/fable_modules/fable-library-js.4.28.0/Choice.d.ts +121 -0
  19. package/dist/fable_modules/fable-library-js.4.28.0/Choice.js +184 -0
  20. package/dist/fable_modules/fable-library-js.4.28.0/CollectionUtil.d.ts +7 -0
  21. package/dist/fable_modules/fable-library-js.4.28.0/CollectionUtil.js +182 -0
  22. package/dist/fable_modules/fable-library-js.4.28.0/ConditionalWeakTable.d.ts +9 -0
  23. package/dist/fable_modules/fable-library-js.4.28.0/ConditionalWeakTable.js +21 -0
  24. package/dist/fable_modules/fable-library-js.4.28.0/Date.d.ts +70 -0
  25. package/dist/fable_modules/fable-library-js.4.28.0/Date.js +748 -0
  26. package/dist/fable_modules/fable-library-js.4.28.0/DateOffset.d.ts +63 -0
  27. package/dist/fable_modules/fable-library-js.4.28.0/DateOffset.js +268 -0
  28. package/dist/fable_modules/fable-library-js.4.28.0/DateOnly.d.ts +18 -0
  29. package/dist/fable_modules/fable-library-js.4.28.0/DateOnly.js +124 -0
  30. package/dist/fable_modules/fable-library-js.4.28.0/Decimal.d.ts +45 -0
  31. package/dist/fable_modules/fable-library-js.4.28.0/Decimal.js +212 -0
  32. package/dist/fable_modules/fable-library-js.4.28.0/Double.d.ts +11 -0
  33. package/dist/fable_modules/fable-library-js.4.28.0/Double.js +46 -0
  34. package/dist/fable_modules/fable-library-js.4.28.0/Encoding.d.ts +12 -0
  35. package/dist/fable_modules/fable-library-js.4.28.0/Encoding.js +173 -0
  36. package/dist/fable_modules/fable-library-js.4.28.0/Event.d.ts +31 -0
  37. package/dist/fable_modules/fable-library-js.4.28.0/Event.js +93 -0
  38. package/dist/fable_modules/fable-library-js.4.28.0/FSharp.Collections.d.ts +7 -0
  39. package/dist/fable_modules/fable-library-js.4.28.0/FSharp.Collections.js +27 -0
  40. package/dist/fable_modules/fable-library-js.4.28.0/FSharp.Core.CompilerServices.d.ts +12 -0
  41. package/dist/fable_modules/fable-library-js.4.28.0/FSharp.Core.CompilerServices.js +27 -0
  42. package/dist/fable_modules/fable-library-js.4.28.0/FSharp.Core.d.ts +17 -0
  43. package/dist/fable_modules/fable-library-js.4.28.0/FSharp.Core.js +69 -0
  44. package/dist/fable_modules/fable-library-js.4.28.0/Global.d.ts +24 -0
  45. package/dist/fable_modules/fable-library-js.4.28.0/Global.js +8 -0
  46. package/dist/fable_modules/fable-library-js.4.28.0/Guid.d.ts +10 -0
  47. package/dist/fable_modules/fable-library-js.4.28.0/Guid.js +142 -0
  48. package/dist/fable_modules/fable-library-js.4.28.0/Int32.d.ts +28 -0
  49. package/dist/fable_modules/fable-library-js.4.28.0/Int32.js +135 -0
  50. package/dist/fable_modules/fable-library-js.4.28.0/List.d.ts +143 -0
  51. package/dist/fable_modules/fable-library-js.4.28.0/List.js +1273 -0
  52. package/dist/fable_modules/fable-library-js.4.28.0/Long.d.ts +3 -0
  53. package/dist/fable_modules/fable-library-js.4.28.0/Long.js +46 -0
  54. package/dist/fable_modules/fable-library-js.4.28.0/MailboxProcessor.d.ts +25 -0
  55. package/dist/fable_modules/fable-library-js.4.28.0/MailboxProcessor.js +93 -0
  56. package/dist/fable_modules/fable-library-js.4.28.0/Map.d.ts +178 -0
  57. package/dist/fable_modules/fable-library-js.4.28.0/Map.js +1396 -0
  58. package/dist/fable_modules/fable-library-js.4.28.0/MapUtil.d.ts +12 -0
  59. package/dist/fable_modules/fable-library-js.4.28.0/MapUtil.js +127 -0
  60. package/dist/fable_modules/fable-library-js.4.28.0/MutableMap.d.ts +52 -0
  61. package/dist/fable_modules/fable-library-js.4.28.0/MutableMap.js +327 -0
  62. package/dist/fable_modules/fable-library-js.4.28.0/MutableSet.d.ts +39 -0
  63. package/dist/fable_modules/fable-library-js.4.28.0/MutableSet.js +233 -0
  64. package/dist/fable_modules/fable-library-js.4.28.0/Native.d.ts +2 -0
  65. package/dist/fable_modules/fable-library-js.4.28.0/Native.js +8 -0
  66. package/dist/fable_modules/fable-library-js.4.28.0/Numeric.d.ts +19 -0
  67. package/dist/fable_modules/fable-library-js.4.28.0/Numeric.js +71 -0
  68. package/dist/fable_modules/fable-library-js.4.28.0/Observable.d.ts +32 -0
  69. package/dist/fable_modules/fable-library-js.4.28.0/Observable.js +113 -0
  70. package/dist/fable_modules/fable-library-js.4.28.0/Option.d.ts +28 -0
  71. package/dist/fable_modules/fable-library-js.4.28.0/Option.js +96 -0
  72. package/dist/fable_modules/fable-library-js.4.28.0/README.md +3 -0
  73. package/dist/fable_modules/fable-library-js.4.28.0/Random.d.ts +37 -0
  74. package/dist/fable_modules/fable-library-js.4.28.0/Random.js +170 -0
  75. package/dist/fable_modules/fable-library-js.4.28.0/Range.d.ts +12 -0
  76. package/dist/fable_modules/fable-library-js.4.28.0/Range.js +45 -0
  77. package/dist/fable_modules/fable-library-js.4.28.0/Reflection.d.ts +119 -0
  78. package/dist/fable_modules/fable-library-js.4.28.0/Reflection.js +461 -0
  79. package/dist/fable_modules/fable-library-js.4.28.0/RegExp.d.ts +10 -0
  80. package/dist/fable_modules/fable-library-js.4.28.0/RegExp.js +131 -0
  81. package/dist/fable_modules/fable-library-js.4.28.0/Result.d.ts +37 -0
  82. package/dist/fable_modules/fable-library-js.4.28.0/Result.js +165 -0
  83. package/dist/fable_modules/fable-library-js.4.28.0/Seq.d.ts +165 -0
  84. package/dist/fable_modules/fable-library-js.4.28.0/Seq.js +1378 -0
  85. package/dist/fable_modules/fable-library-js.4.28.0/Seq2.d.ts +18 -0
  86. package/dist/fable_modules/fable-library-js.4.28.0/Seq2.js +111 -0
  87. package/dist/fable_modules/fable-library-js.4.28.0/Set.d.ts +190 -0
  88. package/dist/fable_modules/fable-library-js.4.28.0/Set.js +1789 -0
  89. package/dist/fable_modules/fable-library-js.4.28.0/String.d.ts +58 -0
  90. package/dist/fable_modules/fable-library-js.4.28.0/String.js +554 -0
  91. package/dist/fable_modules/fable-library-js.4.28.0/System.Collections.Generic.d.ts +79 -0
  92. package/dist/fable_modules/fable-library-js.4.28.0/System.Collections.Generic.js +317 -0
  93. package/dist/fable_modules/fable-library-js.4.28.0/System.Text.d.ts +38 -0
  94. package/dist/fable_modules/fable-library-js.4.28.0/System.Text.js +162 -0
  95. package/dist/fable_modules/fable-library-js.4.28.0/SystemException.d.ts +5 -0
  96. package/dist/fable_modules/fable-library-js.4.28.0/SystemException.js +5 -0
  97. package/dist/fable_modules/fable-library-js.4.28.0/TimeOnly.d.ts +15 -0
  98. package/dist/fable_modules/fable-library-js.4.28.0/TimeOnly.js +122 -0
  99. package/dist/fable_modules/fable-library-js.4.28.0/TimeSpan.d.ts +34 -0
  100. package/dist/fable_modules/fable-library-js.4.28.0/TimeSpan.js +177 -0
  101. package/dist/fable_modules/fable-library-js.4.28.0/Timer.d.ts +19 -0
  102. package/dist/fable_modules/fable-library-js.4.28.0/Timer.js +67 -0
  103. package/dist/fable_modules/fable-library-js.4.28.0/Types.d.ts +58 -0
  104. package/dist/fable_modules/fable-library-js.4.28.0/Types.js +208 -0
  105. package/dist/fable_modules/fable-library-js.4.28.0/Unicode.13.0.0.d.ts +2 -0
  106. package/dist/fable_modules/fable-library-js.4.28.0/Unicode.13.0.0.js +4 -0
  107. package/dist/fable_modules/fable-library-js.4.28.0/Uri.d.ts +31 -0
  108. package/dist/fable_modules/fable-library-js.4.28.0/Uri.js +159 -0
  109. package/dist/fable_modules/fable-library-js.4.28.0/Util.d.ts +210 -0
  110. package/dist/fable_modules/fable-library-js.4.28.0/Util.js +769 -0
  111. package/dist/fable_modules/fable-library-js.4.28.0/big.d.ts +338 -0
  112. package/dist/fable_modules/fable-library-js.4.28.0/lib/big.d.ts +5 -0
  113. package/dist/fable_modules/fable-library-js.4.28.0/lib/big.js +825 -0
  114. package/dist/fable_modules/fable-library-js.4.28.0/package.json +24 -0
  115. package/dist/fable_modules/project_cracked.json +1 -0
  116. package/package.json +5 -4
  117. package/.claude/settings.local.json +0 -11
  118. package/copy-latest.sh +0 -1
  119. package/dist/fable-library.2.10.1/Array.js +0 -1336
  120. package/dist/fable-library.2.10.1/Async.js +0 -121
  121. package/dist/fable-library.2.10.1/AsyncBuilder.js +0 -200
  122. package/dist/fable-library.2.10.1/Date.js +0 -501
  123. package/dist/fable-library.2.10.1/Decimal.js +0 -208
  124. package/dist/fable-library.2.10.1/Event.js +0 -193
  125. package/dist/fable-library.2.10.1/Int32.js +0 -157
  126. package/dist/fable-library.2.10.1/List.js +0 -1234
  127. package/dist/fable-library.2.10.1/Long.js +0 -155
  128. package/dist/fable-library.2.10.1/Map.js +0 -1292
  129. package/dist/fable-library.2.10.1/MutableMap.js +0 -360
  130. package/dist/fable-library.2.10.1/MutableSet.js +0 -279
  131. package/dist/fable-library.2.10.1/Observable.js +0 -131
  132. package/dist/fable-library.2.10.1/Option.js +0 -118
  133. package/dist/fable-library.2.10.1/Reflection.js +0 -345
  134. package/dist/fable-library.2.10.1/RegExp.js +0 -118
  135. package/dist/fable-library.2.10.1/Seq.js +0 -917
  136. package/dist/fable-library.2.10.1/Set.js +0 -1692
  137. package/dist/fable-library.2.10.1/String.js +0 -679
  138. package/dist/fable-library.2.10.1/Types.js +0 -308
  139. package/dist/fable-library.2.10.1/Util.js +0 -761
  140. package/dist/helpers.js +0 -31
  141. package/dist/lib/big.js +0 -905
  142. package/dist/lib/long.js +0 -1375
  143. package/index.html +0 -49
@@ -0,0 +1,159 @@
1
+ const ok = (value) => ({
2
+ tag: "ok",
3
+ value,
4
+ });
5
+ const error = (error) => ({ tag: "error", error });
6
+ export class Uri {
7
+ constructor(state) {
8
+ this.uri = state;
9
+ }
10
+ static isAbsoluteUri(uri) {
11
+ try {
12
+ new URL(uri);
13
+ return true;
14
+ }
15
+ catch {
16
+ return false;
17
+ }
18
+ }
19
+ static tryCreateWithKind(uri, kind) {
20
+ switch (kind) {
21
+ case 1 /* UriKind.Absolute */:
22
+ return Uri.isAbsoluteUri(uri)
23
+ ? ok(new Uri({ original: uri, value: new URL(uri), kind }))
24
+ : error("Invalid URI: The format of the URI could not be determined.");
25
+ case 2 /* UriKind.Relative */:
26
+ return Uri.isAbsoluteUri(uri)
27
+ ? error("URI is not a relative path.")
28
+ : ok(new Uri({ original: uri, value: uri, kind }));
29
+ case 0 /* UriKind.RelativeOrAbsolute */:
30
+ return Uri.isAbsoluteUri(uri)
31
+ ? ok(new Uri({ original: uri, value: new URL(uri), kind: 1 /* UriKind.Absolute */ }))
32
+ : ok(new Uri({ original: uri, value: uri, kind: 2 /* UriKind.Relative */ }));
33
+ default:
34
+ const never = kind;
35
+ return never;
36
+ }
37
+ }
38
+ static tryCreateWithBase(baseUri, relativeUri) {
39
+ return baseUri.uri.kind !== 1 /* UriKind.Absolute */
40
+ ? error("Base URI should have Absolute kind")
41
+ : typeof relativeUri === "string"
42
+ ? ok(new Uri({
43
+ original: new URL(relativeUri, baseUri.uri.value).toString(),
44
+ value: new URL(relativeUri, baseUri.uri.value),
45
+ kind: 1 /* UriKind.Absolute */,
46
+ }))
47
+ : relativeUri.uri.kind === 2 /* UriKind.Relative */
48
+ ? ok(new Uri({
49
+ original: new URL(relativeUri.uri.value, baseUri.uri.value).toString(),
50
+ value: new URL(relativeUri.uri.value, baseUri.uri.value),
51
+ kind: 1 /* UriKind.Absolute */,
52
+ }))
53
+ : ok(baseUri);
54
+ }
55
+ static tryCreateImpl(value, kindOrUri = 1 /* UriKind.Absolute */) {
56
+ return typeof value === "string"
57
+ ? typeof kindOrUri !== "number"
58
+ ? error("Kind must be specified when the baseUri is a string.")
59
+ : Uri.tryCreateWithKind(value, kindOrUri)
60
+ : typeof kindOrUri === "number"
61
+ ? error("Kind should not be specified when the baseUri is an absolute Uri.")
62
+ : Uri.tryCreateWithBase(value, kindOrUri);
63
+ }
64
+ static create(value, kindOrUri = 1 /* UriKind.Absolute */) {
65
+ const result = Uri.tryCreateImpl(value, kindOrUri);
66
+ switch (result.tag) {
67
+ case "ok":
68
+ return result.value;
69
+ case "error":
70
+ throw new Error(result.error);
71
+ default:
72
+ const never = result;
73
+ return never;
74
+ }
75
+ }
76
+ static tryCreate(value, kindOrUri = 1 /* UriKind.Absolute */, out) {
77
+ const result = Uri.tryCreateImpl(value, kindOrUri);
78
+ switch (result.tag) {
79
+ case "ok":
80
+ out.contents = result.value;
81
+ return true;
82
+ case "error":
83
+ return false;
84
+ default:
85
+ const never = result;
86
+ return never;
87
+ }
88
+ }
89
+ toString() {
90
+ switch (this.uri.kind) {
91
+ case 1 /* UriKind.Absolute */:
92
+ return decodeURIComponent(this.asUrl().toString());
93
+ case 2 /* UriKind.Relative */:
94
+ return this.uri.value;
95
+ default:
96
+ const never = this.uri;
97
+ return never;
98
+ }
99
+ }
100
+ asUrl() {
101
+ switch (this.uri.kind) {
102
+ case 1 /* UriKind.Absolute */:
103
+ return this.uri.value;
104
+ case 2 /* UriKind.Relative */:
105
+ throw new Error("This operation is not supported for a relative URI.");
106
+ default:
107
+ const never = this.uri;
108
+ return never;
109
+ }
110
+ }
111
+ get isAbsoluteUri() {
112
+ return this.uri.kind === 1 /* UriKind.Absolute */;
113
+ }
114
+ get absoluteUri() {
115
+ return this.asUrl().href;
116
+ }
117
+ get scheme() {
118
+ const protocol = this.asUrl().protocol;
119
+ return protocol.slice(0, protocol.length - 1);
120
+ }
121
+ get host() {
122
+ const host = this.asUrl().host;
123
+ if (host.includes(":")) {
124
+ return host.split(":")[0];
125
+ }
126
+ else {
127
+ return host;
128
+ }
129
+ }
130
+ get absolutePath() {
131
+ return this.asUrl().pathname;
132
+ }
133
+ get query() {
134
+ return this.asUrl().search;
135
+ }
136
+ get isDefaultPort() {
137
+ return this.port === 80;
138
+ }
139
+ get port() {
140
+ const port = this.asUrl().port;
141
+ if (port === "") {
142
+ return 80;
143
+ }
144
+ else {
145
+ return parseInt(port);
146
+ }
147
+ }
148
+ get pathAndQuery() {
149
+ const url = this.asUrl();
150
+ return url.pathname + url.search;
151
+ }
152
+ get fragment() {
153
+ return this.asUrl().hash;
154
+ }
155
+ get originalString() {
156
+ return this.uri.original;
157
+ }
158
+ }
159
+ export default Uri;
@@ -0,0 +1,210 @@
1
+ export declare const enum DateKind {
2
+ Unspecified = 0,
3
+ UTC = 1,
4
+ Local = 2
5
+ }
6
+ export interface IDateTime extends Date {
7
+ kind?: DateKind;
8
+ }
9
+ export interface IDateTimeOffset extends Date {
10
+ offset?: number;
11
+ }
12
+ export interface IComparable<T> extends IEquatable<T> {
13
+ CompareTo(x: T): number;
14
+ }
15
+ export interface IEquatable<T> {
16
+ Equals(x: T): boolean;
17
+ }
18
+ export interface IHashable {
19
+ GetHashCode(): number;
20
+ }
21
+ export interface IDisposable {
22
+ Dispose(): void;
23
+ }
24
+ export interface IComparer<T> {
25
+ Compare(x: T, y: T): number;
26
+ }
27
+ export interface IEqualityComparer<T> {
28
+ Equals(x: T, y: T): boolean;
29
+ GetHashCode(x: T): number;
30
+ }
31
+ export interface ICollection<T> extends Iterable<T> {
32
+ readonly Count: number;
33
+ readonly IsReadOnly: boolean;
34
+ Add(item: T): void;
35
+ Clear(): void;
36
+ Contains(item: T): boolean;
37
+ CopyTo(array: T[], arrayIndex: number): void;
38
+ Remove(item: T): boolean;
39
+ }
40
+ export declare function isArrayLike<T>(x: T | ArrayLike<T> | Iterable<T>): x is T[];
41
+ export declare function isIterable<T>(x: T | ArrayLike<T> | Iterable<T>): x is Iterable<T>;
42
+ export declare function isEnumerable<T>(x: T | Iterable<T>): x is IEnumerable<T>;
43
+ export declare function isComparer<T>(x: T | IComparer<T>): x is IComparer<T>;
44
+ export declare function isComparable<T>(x: T | IComparable<T>): x is IComparable<T>;
45
+ export declare function isEquatable<T>(x: T | IEquatable<T>): x is IEquatable<T>;
46
+ export declare function isHashable<T>(x: T | IHashable): x is IHashable;
47
+ export declare function isDisposable<T>(x: T | IDisposable): x is IDisposable;
48
+ export declare function disposeSafe(x: any): void;
49
+ export declare function defaultOf<T>(): T;
50
+ export declare function sameConstructor<T>(x: T, y: T): boolean;
51
+ export interface IEnumerator<T> extends IDisposable {
52
+ ["System.Collections.Generic.IEnumerator`1.get_Current"](): T;
53
+ ["System.Collections.IEnumerator.get_Current"](): T;
54
+ ["System.Collections.IEnumerator.MoveNext"](): boolean;
55
+ ["System.Collections.IEnumerator.Reset"](): void;
56
+ Dispose(): void;
57
+ }
58
+ export interface IEnumerable<T> extends Iterable<T> {
59
+ GetEnumerator(): IEnumerator<T>;
60
+ "System.Collections.IEnumerable.GetEnumerator"(): IEnumerator<any>;
61
+ }
62
+ export declare class Enumerable<T> implements IEnumerable<T> {
63
+ private en;
64
+ constructor(en: IEnumerator<T>);
65
+ GetEnumerator(): IEnumerator<T>;
66
+ "System.Collections.IEnumerable.GetEnumerator"(): IEnumerator<any>;
67
+ [Symbol.iterator](): this;
68
+ next(): IteratorResult<T>;
69
+ }
70
+ export declare class Enumerator<T> implements IEnumerator<T> {
71
+ private iter;
72
+ private current;
73
+ constructor(iter: Iterator<T>);
74
+ ["System.Collections.Generic.IEnumerator`1.get_Current"](): T;
75
+ ["System.Collections.IEnumerator.get_Current"](): T;
76
+ ["System.Collections.IEnumerator.MoveNext"](): boolean;
77
+ ["System.Collections.IEnumerator.Reset"](): void;
78
+ Dispose(): void;
79
+ }
80
+ export declare function toEnumerable<T>(e: IEnumerable<T> | Iterable<T>): IEnumerable<T>;
81
+ export declare function getEnumerator<T>(e: IEnumerable<T> | Iterable<T>): IEnumerator<T>;
82
+ export declare function toIterator<T>(en: IEnumerator<T>): Iterator<T>;
83
+ export declare function enumerableToIterator<T>(e: IEnumerable<T> | Iterable<T>): Iterator<T>;
84
+ export interface ISet<T> {
85
+ add(value: T): ISet<T>;
86
+ clear(): void;
87
+ delete(value: T): boolean;
88
+ forEach(callbackfn: (value: T, value2: T, set: ISet<T>) => void, thisArg?: any): void;
89
+ has(value: T): boolean;
90
+ readonly size: number;
91
+ [Symbol.iterator](): Iterator<T>;
92
+ entries(): Iterable<[T, T]>;
93
+ keys(): Iterable<T>;
94
+ values(): Iterable<T>;
95
+ }
96
+ export interface IMapOrWeakMap<K, V> {
97
+ delete(key: K): boolean;
98
+ get(key: K): V | undefined;
99
+ has(key: K): boolean;
100
+ set(key: K, value: V): IMapOrWeakMap<K, V>;
101
+ }
102
+ export interface IMap<K, V> extends IMapOrWeakMap<K, V> {
103
+ clear(): void;
104
+ set(key: K, value: V): IMap<K, V>;
105
+ forEach(callbackfn: (value: V, key: K, map: IMap<K, V>) => void, thisArg?: any): void;
106
+ readonly size: number;
107
+ [Symbol.iterator](): Iterator<[K, V]>;
108
+ entries(): Iterable<[K, V]>;
109
+ keys(): Iterable<K>;
110
+ values(): Iterable<V>;
111
+ }
112
+ export declare class Comparer<T> implements IComparer<T> {
113
+ Compare: (x: T, y: T) => number;
114
+ constructor(f?: (x: T, y: T) => number);
115
+ }
116
+ export declare function comparerFromEqualityComparer<T>(comparer: IEqualityComparer<T>): IComparer<T>;
117
+ export declare function assertEqual<T>(actual: T, expected: T, msg?: string): void;
118
+ export declare function assertNotEqual<T>(actual: T, expected: T, msg?: string): void;
119
+ export declare class Lazy<T> {
120
+ private factory;
121
+ private isValueCreated;
122
+ private createdValue?;
123
+ constructor(factory: () => T);
124
+ get Value(): T | undefined;
125
+ get IsValueCreated(): boolean;
126
+ }
127
+ export declare function lazyFromValue<T>(v: T): Lazy<T>;
128
+ export declare function padWithZeros(i: number, length: number): string;
129
+ export declare function padLeftAndRightWithZeros(i: number, lengthLeft: number, lengthRight: number): string;
130
+ export declare function dateOffset(date: IDateTime | IDateTimeOffset): number;
131
+ export declare function int16ToString(i: number, radix?: number): string;
132
+ export declare function int32ToString(i: number, radix?: number): string;
133
+ export declare function int64ToString(i: bigint, radix?: number): string;
134
+ export declare abstract class ObjectRef {
135
+ static id(o: any): any;
136
+ private static idMap;
137
+ private static count;
138
+ }
139
+ export declare function stringHash(s: string): number;
140
+ export declare function numberHash(x: number): number;
141
+ export declare function bigintHash(x: bigint): number;
142
+ export declare function combineHashCodes(hashes: ArrayLike<number>): number;
143
+ export declare function physicalHash<T>(x: T): number;
144
+ export declare function identityHash<T>(x: T): number;
145
+ export declare function dateHash(x: Date): number;
146
+ export declare function arrayHash<T>(x: ArrayLike<T>): number;
147
+ export declare function structuralHash<T>(x: T): number;
148
+ export declare function fastStructuralHash<T>(x: T): number;
149
+ export declare function safeHash<T>(x: T): number;
150
+ export declare function equalArraysWith<T>(x: ArrayLike<T>, y: ArrayLike<T>, eq: (x: T, y: T) => boolean): boolean;
151
+ export declare function equalArrays<T>(x: ArrayLike<T>, y: ArrayLike<T>): boolean;
152
+ export declare function physicalEquality<T>(x: T, y: T): boolean;
153
+ export declare function equals<T>(x: T, y: T): boolean;
154
+ export declare function compareDates(x: Date | IDateTime | IDateTimeOffset, y: Date | IDateTime | IDateTimeOffset): 0 | 1 | -1;
155
+ export declare function comparePrimitives<T>(x: T, y: T): number;
156
+ export declare function compareArraysWith<T>(x: ArrayLike<T>, y: ArrayLike<T>, comp: (x: T, y: T) => number): number;
157
+ export declare function compareArrays<T>(x: ArrayLike<T>, y: ArrayLike<T>): number;
158
+ export declare function compare<T>(x: T, y: T): number;
159
+ export declare function min<T>(comparer: (x: T, y: T) => number, x: T, y: T): T;
160
+ export declare function max<T>(comparer: (x: T, y: T) => number, x: T, y: T): T;
161
+ export declare function clamp<T>(comparer: (x: T, y: T) => number, value: T, min: T, max: T): T;
162
+ export declare function createAtom<T>(value: T): (<Args extends [] | [T]>(...args: Args) => Args extends [] ? T : void);
163
+ export declare function createObj(fields: Iterable<[string, any]>): any;
164
+ export declare function jsOptions<T>(mutator: (x: T) => void): T;
165
+ export declare function round(value: number, digits?: number): number;
166
+ export declare function sign(x: number): number;
167
+ export declare function unescapeDataString(s: string): string;
168
+ export declare function escapeDataString(s: string): string;
169
+ export declare function escapeUriString(s: string): string;
170
+ export declare function count<T>(col: Iterable<T>): number;
171
+ export declare function clear<T>(col: Iterable<T>): void;
172
+ export declare function uncurry2<T1, T2, TResult>(f: (a1: T1) => (a2: T2) => TResult): (a1: T1, a2: T2) => TResult;
173
+ export declare function curry2<T1, T2, TResult>(f: (a1: T1, a2: T2) => TResult): (a1: T1) => (a2: T2) => TResult;
174
+ export declare function uncurry3<T1, T2, T3, TResult>(f: (a1: T1) => (a2: T2) => (a3: T3) => TResult): (a1: T1, a2: T2, a3: T3) => TResult;
175
+ export declare function curry3<T1, T2, T3, TResult>(f: (a1: T1, a2: T2, a3: T3) => TResult): (a1: T1) => (a2: T2) => (a3: T3) => TResult;
176
+ export declare function uncurry4<T1, T2, T3, T4, TResult>(f: (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => TResult): (a1: T1, a2: T2, a3: T3, a4: T4) => TResult;
177
+ export declare function curry4<T1, T2, T3, T4, TResult>(f: (a1: T1, a2: T2, a3: T3, a4: T4) => TResult): (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => TResult;
178
+ export declare function uncurry5<T1, T2, T3, T4, T5, TResult>(f: (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => TResult): (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5) => TResult;
179
+ export declare function curry5<T1, T2, T3, T4, T5, TResult>(f: (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5) => TResult): (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => TResult;
180
+ export declare function uncurry6<T1, T2, T3, T4, T5, T6, TResult>(f: (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => (a6: T6) => TResult): (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5, a6: T6) => TResult;
181
+ export declare function curry6<T1, T2, T3, T4, T5, T6, TResult>(f: (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5, a6: T6) => TResult): (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => (a6: T6) => TResult;
182
+ export declare function uncurry7<T1, T2, T3, T4, T5, T6, T7, TResult>(f: (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => (a6: T6) => (a7: T7) => TResult): (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5, a6: T6, a7: T7) => TResult;
183
+ export declare function curry7<T1, T2, T3, T4, T5, T6, T7, TResult>(f: (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5, a6: T6, a7: T7) => TResult): (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => (a6: T6) => (a7: T7) => TResult;
184
+ export declare function uncurry8<T1, T2, T3, T4, T5, T6, T7, T8, TResult>(f: (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => (a6: T6) => (a7: T7) => (a8: T8) => TResult): (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5, a6: T6, a7: T7, a8: T8) => TResult;
185
+ export declare function curry8<T1, T2, T3, T4, T5, T6, T7, T8, TResult>(f: (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5, a6: T6, a7: T7, a8: T8) => TResult): (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => (a6: T6) => (a7: T7) => (a8: T8) => TResult;
186
+ export declare function uncurry9<T1, T2, T3, T4, T5, T6, T7, T8, T9, TResult>(f: (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => (a6: T6) => (a7: T7) => (a8: T8) => (a9: T9) => TResult): (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5, a6: T6, a7: T7, a8: T8, a9: T9) => TResult;
187
+ export declare function curry9<T1, T2, T3, T4, T5, T6, T7, T8, T9, TResult>(f: (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5, a6: T6, a7: T7, a8: T8, a9: T9) => TResult): (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => (a6: T6) => (a7: T7) => (a8: T8) => (a9: T9) => TResult;
188
+ export declare function uncurry10<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, TResult>(f: (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => (a6: T6) => (a7: T7) => (a8: T8) => (a9: T9) => (a10: T10) => TResult): (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5, a6: T6, a7: T7, a8: T8, a9: T9, a10: T10) => TResult;
189
+ export declare function curry10<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, TResult>(f: (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5, a6: T6, a7: T7, a8: T8, a9: T9, a10: T10) => TResult): (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => (a6: T6) => (a7: T7) => (a8: T8) => (a9: T9) => (a10: T10) => TResult;
190
+ export declare function uncurry11<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, TResult>(f: (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => (a6: T6) => (a7: T7) => (a8: T8) => (a9: T9) => (a10: T10) => (a11: T11) => TResult): (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5, a6: T6, a7: T7, a8: T8, a9: T9, a10: T10, a11: T11) => TResult;
191
+ export declare function curry11<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, TResult>(f: (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5, a6: T6, a7: T7, a8: T8, a9: T9, a10: T10, a11: T11) => TResult): (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => (a6: T6) => (a7: T7) => (a8: T8) => (a9: T9) => (a10: T10) => (a11: T11) => TResult;
192
+ export declare function uncurry12<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, TResult>(f: (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => (a6: T6) => (a7: T7) => (a8: T8) => (a9: T9) => (a10: T10) => (a11: T11) => (a12: T12) => TResult): (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5, a6: T6, a7: T7, a8: T8, a9: T9, a10: T10, a11: T11, a12: T12) => TResult;
193
+ export declare function curry12<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, TResult>(f: (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5, a6: T6, a7: T7, a8: T8, a9: T9, a10: T10, a11: T11, a12: T12) => TResult): (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => (a6: T6) => (a7: T7) => (a8: T8) => (a9: T9) => (a10: T10) => (a11: T11) => (a12: T12) => TResult;
194
+ export declare function uncurry13<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, TResult>(f: (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => (a6: T6) => (a7: T7) => (a8: T8) => (a9: T9) => (a10: T10) => (a11: T11) => (a12: T12) => (a13: T13) => TResult): (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5, a6: T6, a7: T7, a8: T8, a9: T9, a10: T10, a11: T11, a12: T12, a13: T13) => TResult;
195
+ export declare function curry13<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, TResult>(f: (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5, a6: T6, a7: T7, a8: T8, a9: T9, a10: T10, a11: T11, a12: T12, a13: T13) => TResult): (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => (a6: T6) => (a7: T7) => (a8: T8) => (a9: T9) => (a10: T10) => (a11: T11) => (a12: T12) => (a13: T13) => TResult;
196
+ export declare function uncurry14<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, TResult>(f: (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => (a6: T6) => (a7: T7) => (a8: T8) => (a9: T9) => (a10: T10) => (a11: T11) => (a12: T12) => (a13: T13) => (a14: T14) => TResult): (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5, a6: T6, a7: T7, a8: T8, a9: T9, a10: T10, a11: T11, a12: T12, a13: T13, a14: T14) => TResult;
197
+ export declare function curry14<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, TResult>(f: (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5, a6: T6, a7: T7, a8: T8, a9: T9, a10: T10, a11: T11, a12: T12, a13: T13, a14: T14) => TResult): (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => (a6: T6) => (a7: T7) => (a8: T8) => (a9: T9) => (a10: T10) => (a11: T11) => (a12: T12) => (a13: T13) => (a14: T14) => TResult;
198
+ export declare function uncurry15<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, TResult>(f: (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => (a6: T6) => (a7: T7) => (a8: T8) => (a9: T9) => (a10: T10) => (a11: T11) => (a12: T12) => (a13: T13) => (a14: T14) => (a15: T15) => TResult): (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5, a6: T6, a7: T7, a8: T8, a9: T9, a10: T10, a11: T11, a12: T12, a13: T13, a14: T14, a15: T15) => TResult;
199
+ export declare function curry15<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, TResult>(f: (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5, a6: T6, a7: T7, a8: T8, a9: T9, a10: T10, a11: T11, a12: T12, a13: T13, a14: T14, a15: T15) => TResult): (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => (a6: T6) => (a7: T7) => (a8: T8) => (a9: T9) => (a10: T10) => (a11: T11) => (a12: T12) => (a13: T13) => (a14: T14) => (a15: T15) => TResult;
200
+ export declare function uncurry16<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, TResult>(f: (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => (a6: T6) => (a7: T7) => (a8: T8) => (a9: T9) => (a10: T10) => (a11: T11) => (a12: T12) => (a13: T13) => (a14: T14) => (a15: T15) => (a16: T16) => TResult): (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5, a6: T6, a7: T7, a8: T8, a9: T9, a10: T10, a11: T11, a12: T12, a13: T13, a14: T14, a15: T15, a16: T16) => TResult;
201
+ export declare function curry16<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, TResult>(f: (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5, a6: T6, a7: T7, a8: T8, a9: T9, a10: T10, a11: T11, a12: T12, a13: T13, a14: T14, a15: T15, a16: T16) => TResult): (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => (a6: T6) => (a7: T7) => (a8: T8) => (a9: T9) => (a10: T10) => (a11: T11) => (a12: T12) => (a13: T13) => (a14: T14) => (a15: T15) => (a16: T16) => TResult;
202
+ export declare function uncurry17<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, TResult>(f: (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => (a6: T6) => (a7: T7) => (a8: T8) => (a9: T9) => (a10: T10) => (a11: T11) => (a12: T12) => (a13: T13) => (a14: T14) => (a15: T15) => (a16: T16) => (a17: T17) => TResult): (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5, a6: T6, a7: T7, a8: T8, a9: T9, a10: T10, a11: T11, a12: T12, a13: T13, a14: T14, a15: T15, a16: T16, a17: T17) => TResult;
203
+ export declare function curry17<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, TResult>(f: (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5, a6: T6, a7: T7, a8: T8, a9: T9, a10: T10, a11: T11, a12: T12, a13: T13, a14: T14, a15: T15, a16: T16, a17: T17) => TResult): (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => (a6: T6) => (a7: T7) => (a8: T8) => (a9: T9) => (a10: T10) => (a11: T11) => (a12: T12) => (a13: T13) => (a14: T14) => (a15: T15) => (a16: T16) => (a17: T17) => TResult;
204
+ export declare function uncurry18<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, TResult>(f: (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => (a6: T6) => (a7: T7) => (a8: T8) => (a9: T9) => (a10: T10) => (a11: T11) => (a12: T12) => (a13: T13) => (a14: T14) => (a15: T15) => (a16: T16) => (a17: T17) => (a18: T18) => TResult): (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5, a6: T6, a7: T7, a8: T8, a9: T9, a10: T10, a11: T11, a12: T12, a13: T13, a14: T14, a15: T15, a16: T16, a17: T17, a18: T18) => TResult;
205
+ export declare function curry18<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, TResult>(f: (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5, a6: T6, a7: T7, a8: T8, a9: T9, a10: T10, a11: T11, a12: T12, a13: T13, a14: T14, a15: T15, a16: T16, a17: T17, a18: T18) => TResult): (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => (a6: T6) => (a7: T7) => (a8: T8) => (a9: T9) => (a10: T10) => (a11: T11) => (a12: T12) => (a13: T13) => (a14: T14) => (a15: T15) => (a16: T16) => (a17: T17) => (a18: T18) => TResult;
206
+ export declare function uncurry19<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, TResult>(f: (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => (a6: T6) => (a7: T7) => (a8: T8) => (a9: T9) => (a10: T10) => (a11: T11) => (a12: T12) => (a13: T13) => (a14: T14) => (a15: T15) => (a16: T16) => (a17: T17) => (a18: T18) => (a19: T19) => TResult): (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5, a6: T6, a7: T7, a8: T8, a9: T9, a10: T10, a11: T11, a12: T12, a13: T13, a14: T14, a15: T15, a16: T16, a17: T17, a18: T18, a19: T19) => TResult;
207
+ export declare function curry19<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, TResult>(f: (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5, a6: T6, a7: T7, a8: T8, a9: T9, a10: T10, a11: T11, a12: T12, a13: T13, a14: T14, a15: T15, a16: T16, a17: T17, a18: T18, a19: T19) => TResult): (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => (a6: T6) => (a7: T7) => (a8: T8) => (a9: T9) => (a10: T10) => (a11: T11) => (a12: T12) => (a13: T13) => (a14: T14) => (a15: T15) => (a16: T16) => (a17: T17) => (a18: T18) => (a19: T19) => TResult;
208
+ export declare function uncurry20<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, TResult>(f: (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => (a6: T6) => (a7: T7) => (a8: T8) => (a9: T9) => (a10: T10) => (a11: T11) => (a12: T12) => (a13: T13) => (a14: T14) => (a15: T15) => (a16: T16) => (a17: T17) => (a18: T18) => (a19: T19) => (a20: T20) => TResult): (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5, a6: T6, a7: T7, a8: T8, a9: T9, a10: T10, a11: T11, a12: T12, a13: T13, a14: T14, a15: T15, a16: T16, a17: T17, a18: T18, a19: T19, a20: T20) => TResult;
209
+ export declare function curry20<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10, T11, T12, T13, T14, T15, T16, T17, T18, T19, T20, TResult>(f: (a1: T1, a2: T2, a3: T3, a4: T4, a5: T5, a6: T6, a7: T7, a8: T8, a9: T9, a10: T10, a11: T11, a12: T12, a13: T13, a14: T14, a15: T15, a16: T16, a17: T17, a18: T18, a19: T19, a20: T20) => TResult): (a1: T1) => (a2: T2) => (a3: T3) => (a4: T4) => (a5: T5) => (a6: T6) => (a7: T7) => (a8: T8) => (a9: T9) => (a10: T10) => (a11: T11) => (a12: T12) => (a13: T13) => (a14: T14) => (a15: T15) => (a16: T16) => (a17: T17) => (a18: T18) => (a19: T19) => (a20: T20) => TResult;
210
+ export declare function copyToArray<T>(source: T[], sourceIndex: number, target: T[], targetIndex: number, count: number): void;