@nejs/basic-extensions 2.20.0 → 2.21.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 (68) hide show
  1. package/bin/repl.basics.js +36 -6
  2. package/bin/repl.signature.js +63 -0
  3. package/dist/@nejs/basic-extensions.bundle.2.21.0.js +25 -0
  4. package/dist/@nejs/basic-extensions.bundle.2.21.0.js.map +7 -0
  5. package/dist/cjs/classes/descriptor.d.ts +1 -1
  6. package/dist/cjs/classes/enum.d.ts +37 -19
  7. package/dist/cjs/classes/enum.js +181 -56
  8. package/dist/cjs/classes/enum.js.map +1 -1
  9. package/dist/cjs/classes/iterable.d.ts +3 -3
  10. package/dist/cjs/classes/param.parser.d.ts +1 -7
  11. package/dist/cjs/classes/pluggable.proxy.d.ts +2 -1
  12. package/dist/cjs/classes/property.d.ts +2 -9
  13. package/dist/cjs/classes/refset.d.ts +2 -2
  14. package/dist/cjs/classes/symkeys.d.ts +1 -1
  15. package/dist/cjs/global.this.js +17 -7
  16. package/dist/cjs/global.this.js.map +1 -1
  17. package/dist/cjs/index.d.ts +8 -5
  18. package/dist/cjs/index.js +13 -8
  19. package/dist/cjs/index.js.map +1 -1
  20. package/dist/cjs/string.extensions.js +38 -0
  21. package/dist/cjs/string.extensions.js.map +1 -1
  22. package/dist/cjs/utils/copy.object.d.ts +2 -2
  23. package/dist/cjs/utils/descriptor.utils.d.ts +152 -0
  24. package/dist/cjs/utils/descriptor.utils.js +228 -9
  25. package/dist/cjs/utils/descriptor.utils.js.map +1 -1
  26. package/dist/cjs/utils/index.d.ts +15 -0
  27. package/dist/cjs/utils/index.js +9 -0
  28. package/dist/cjs/utils/index.js.map +1 -1
  29. package/dist/cjs/utils/stdout.d.ts +742 -0
  30. package/dist/cjs/utils/stdout.js +1042 -0
  31. package/dist/cjs/utils/stdout.js.map +1 -0
  32. package/dist/mjs/classes/descriptor.d.ts +1 -1
  33. package/dist/mjs/classes/enum.d.ts +37 -19
  34. package/dist/mjs/classes/enum.js +181 -57
  35. package/dist/mjs/classes/enum.js.map +1 -1
  36. package/dist/mjs/classes/iterable.d.ts +3 -3
  37. package/dist/mjs/classes/param.parser.d.ts +1 -7
  38. package/dist/mjs/classes/pluggable.proxy.d.ts +2 -1
  39. package/dist/mjs/classes/property.d.ts +2 -9
  40. package/dist/mjs/classes/refset.d.ts +2 -2
  41. package/dist/mjs/classes/symkeys.d.ts +1 -1
  42. package/dist/mjs/index.d.ts +8 -5
  43. package/dist/mjs/index.js +13 -8
  44. package/dist/mjs/index.js.map +1 -1
  45. package/dist/mjs/string.extensions.js +38 -0
  46. package/dist/mjs/string.extensions.js.map +1 -1
  47. package/dist/mjs/utils/copy.object.d.ts +2 -2
  48. package/dist/mjs/utils/descriptor.utils.d.ts +152 -0
  49. package/dist/mjs/utils/descriptor.utils.js +222 -9
  50. package/dist/mjs/utils/descriptor.utils.js.map +1 -1
  51. package/dist/mjs/utils/index.d.ts +15 -0
  52. package/dist/mjs/utils/index.js +10 -1
  53. package/dist/mjs/utils/index.js.map +1 -1
  54. package/dist/mjs/utils/stdout.d.ts +742 -0
  55. package/dist/mjs/utils/stdout.js +1037 -0
  56. package/dist/mjs/utils/stdout.js.map +1 -0
  57. package/package.json +6 -20
  58. package/repl.bootstrap.js +24 -16
  59. package/repl.history +30 -30
  60. package/src/classes/enum.js +249 -109
  61. package/src/index.js +22 -8
  62. package/src/string.extensions.js +41 -0
  63. package/src/utils/descriptor.utils.js +277 -9
  64. package/src/utils/index.js +20 -0
  65. package/src/utils/stdout.js +1151 -0
  66. package/tests/utils/descriptor.utils.test.js +130 -0
  67. package/dist/@nejs/basic-extensions.bundle.2.20.0.js +0 -19
  68. package/dist/@nejs/basic-extensions.bundle.2.20.0.js.map +0 -7
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stdout.js","sourceRoot":"","sources":["../../../src/utils/stdout.js"],"names":[],"mappings":"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"}
@@ -212,7 +212,7 @@ export class Descriptor {
212
212
  * @throws {Error} Throws an error if the constructed descriptor is not
213
213
  * valid.
214
214
  */
215
- constructor(object: object | Descriptor, key?: string | symbol | undefined, ...args: any[]);
215
+ constructor(object: object | Descriptor, key?: string | symbol, ...args: any[]);
216
216
  /**
217
217
  * The default private descriptor value is that of `enigmatic`
218
218
  *
@@ -9,24 +9,42 @@
9
9
  * @returns {Object} The constructed enumeration object.
10
10
  *
11
11
  * @example
12
- * const colors = Enum('Colors', ['red', 'green', 'blue'])
13
- * console.log(colors.red) // EnumValue object for 'red'
14
- *
15
- * @description
16
- * The `Enum` function constructs an enumeration object with a given name,
17
- * values, and optional properties. It supports primitive types, arrays,
18
- * and objects as values. The function uses a combination of `Object.create`
19
- * and `Proxy` to define and manage the properties of the enumeration.
20
- *
21
- * The enumeration object includes:
22
- * - A `toString` method that returns the enumeration name.
23
- * - A `Symbol.toStringTag` for identifying the object as an 'Enum'.
24
- * - A `Symbol.for('Enum.name')` for storing the enumeration name.
25
- *
26
- * For array values, it creates a maker function that returns an
27
- * `EnumValue` object with properties like `real`, `value`, `type`,
28
- * `name`, and `compare`.
29
- */
30
- export function Enum(name: string, values: any[] | any, properties?: Object | Map<any, any> | undefined): Object;
12
+ * const colors = Enum('Colors', ['red', 'green', 'blue'])
13
+ * console.log(colors.red) // EnumValue object for 'red'
14
+ *
15
+ * @description
16
+ * The `Enum` function constructs an enumeration object with a given name,
17
+ * values, and optional properties. It supports primitive types, arrays,
18
+ * and objects as values. The function uses a combination of `Object.create`
19
+ * and `Proxy` to define and manage the properties of the enumeration.
20
+ *
21
+ * The enumeration object includes:
22
+ * - A `toString` method that returns the enumeration name.
23
+ * - A `Symbol.toStringTag` for identifying the object as an 'Enum'.
24
+ * - A `Symbol.for('Enum.name')` for storing the enumeration name.
25
+ *
26
+ * For array values, it creates a maker function that returns an
27
+ * `EnumValue` object with properties like `real`, `value`, `type`,
28
+ * `name`, and `compare`.
29
+ */
30
+ export function Enum(name: string, values: any[] | any, properties?: Object | Map<any, any>): Object;
31
+ /**
32
+ * Creates a base enumeration object with predefined properties and
33
+ * symbols. This function is used to initialize an enumeration with
34
+ * specific characteristics, such as a name and various symbolic
35
+ * properties that enhance its functionality and identification.
36
+ *
37
+ * @param {string} name - The name of the enumeration. This name is
38
+ * used to identify the enumeration and is stored as a symbol on
39
+ * the object.
40
+ * @returns {Object} A new enumeration object with specific properties
41
+ * and symbols set for enhanced functionality and identification.
42
+ *
43
+ * @example
44
+ * // Create a base enum with the name 'Color'
45
+ * const colorEnum = makeBaseEnum('Color')
46
+ * console.log(colorEnum[Symbol.for('Enum.name')]) // Outputs: 'Color'
47
+ */
48
+ export function makeBaseEnum(name: string): Object;
31
49
  export const EnumExtension: Extension;
32
50
  import { Extension } from '@nejs/extension';
@@ -1,5 +1,5 @@
1
1
  import { Extension } from '@nejs/extension';
2
- import { accessor, as, data, isDescriptor } from '../utils/index.js';
2
+ import { accessor, as, data, isDescriptor, redescribe } from '../utils/index.js';
3
3
  /**
4
4
  * Creates an enumeration object with specified values and properties.
5
5
  *
@@ -11,58 +11,41 @@ import { accessor, as, data, isDescriptor } from '../utils/index.js';
11
11
  * @returns {Object} The constructed enumeration object.
12
12
  *
13
13
  * @example
14
- * const colors = Enum('Colors', ['red', 'green', 'blue'])
15
- * console.log(colors.red) // EnumValue object for 'red'
16
- *
17
- * @description
18
- * The `Enum` function constructs an enumeration object with a given name,
19
- * values, and optional properties. It supports primitive types, arrays,
20
- * and objects as values. The function uses a combination of `Object.create`
21
- * and `Proxy` to define and manage the properties of the enumeration.
22
- *
23
- * The enumeration object includes:
24
- * - A `toString` method that returns the enumeration name.
25
- * - A `Symbol.toStringTag` for identifying the object as an 'Enum'.
26
- * - A `Symbol.for('Enum.name')` for storing the enumeration name.
27
- *
28
- * For array values, it creates a maker function that returns an
29
- * `EnumValue` object with properties like `real`, `value`, `type`,
30
- * `name`, and `compare`.
31
- */
14
+ * const colors = Enum('Colors', ['red', 'green', 'blue'])
15
+ * console.log(colors.red) // EnumValue object for 'red'
16
+ *
17
+ * @description
18
+ * The `Enum` function constructs an enumeration object with a given name,
19
+ * values, and optional properties. It supports primitive types, arrays,
20
+ * and objects as values. The function uses a combination of `Object.create`
21
+ * and `Proxy` to define and manage the properties of the enumeration.
22
+ *
23
+ * The enumeration object includes:
24
+ * - A `toString` method that returns the enumeration name.
25
+ * - A `Symbol.toStringTag` for identifying the object as an 'Enum'.
26
+ * - A `Symbol.for('Enum.name')` for storing the enumeration name.
27
+ *
28
+ * For array values, it creates a maker function that returns an
29
+ * `EnumValue` object with properties like `real`, `value`, `type`,
30
+ * `name`, and `compare`.
31
+ */
32
32
  export function Enum(name, values, properties) {
33
- const enumeration = Object.create({}, {
34
- [Symbol.toStringTag]: accessor('Enum', false, true, false),
35
- [Symbol.for('Enum.name')]: accessor(name, false, true, false),
36
- [Symbol.for('Enum.valueKeys')]: data([], false, true, false),
37
- [Symbol.for('nodejs.util.inspect.custom')]: data(function (depth, options, inspect) {
38
- const valueKeys = this[Symbol.for('Enum.valueKeys')] ?? [];
39
- let valueText = valueKeys
40
- .map(key => `\x1b[1;2m${key}\x1b[22m`)
41
- .join(', ');
42
- if (valueText.length)
43
- valueText = ` { ${valueText} }`;
44
- return `\x1b[1menum \x1b[22m${name}${valueText}`;
45
- }, false, true, false),
46
- toString: data(function () {
47
- return `Enum(${name})`;
48
- }, false, true, false)
49
- });
33
+ const enumeration = makeBaseEnum(name);
50
34
  if (!Array.isArray(values)) {
51
35
  values = [values];
52
36
  }
53
- const asString = o => as.string(o, { description: true, stringTag: true });
54
37
  /**
55
- * A new base `EnumValue` type object. It contains enough custom symbols and
56
- * identifiers to allow things like a `compare(to)` function to also work on
57
- * each of the elements. Thing of this as the shared base functionality for
58
- * each `Enum` element.
59
- *
60
- * @param {any} enumValue the value around which an `EnumValue` type is
61
- * created.
62
- * @returns an object defined by {@link Symbol.toStringTag} as well as some
63
- * custom {@link Symbol} keys. The `node.js` custom inspect symbol is also
64
- * defined for better REPL representation.
65
- */
38
+ * A new base `EnumValue` type object. It contains enough custom symbols and
39
+ * identifiers to allow things like a `compare(to)` function to also work on
40
+ * each of the elements. Thing of this as the shared base functionality for
41
+ * each `Enum` element.
42
+ *
43
+ * @param {any} enumValue the value around which an `EnumValue` type is
44
+ * created.
45
+ * @returns an object defined by {@link Symbol.toStringTag} as well as some
46
+ * custom {@link Symbol} keys. The `node.js` custom inspect symbol is also
47
+ * defined for better REPL representation.
48
+ */
66
49
  const makeEnumValue = (property, enumValue) => ({
67
50
  toString: data(() => enumValue, false, true, false),
68
51
  [Symbol.for('Enum.name')]: data(name, false, true, false),
@@ -114,14 +97,14 @@ export function Enum(name, values, properties) {
114
97
  }, false, true, false),
115
98
  });
116
99
  /**
117
- * Given a value, determine how to represent it as both a key and a response
118
- * or underlying original value. The method for this is dependent on the type
119
- * of the value itself.
120
- *
121
- * @param {any} value the value to be converted
122
- * @returns {[string, any]} an array where the first value is the transformed
123
- * value as a key and the second element is the originally supplied value.
124
- */
100
+ * Given a value, determine how to represent it as both a key and a response
101
+ * or underlying original value. The method for this is dependent on the type
102
+ * of the value itself.
103
+ *
104
+ * @param {any} value the value to be converted
105
+ * @returns {[string, any]} an array where the first value is the transformed
106
+ * value as a key and the second element is the originally supplied value.
107
+ */
125
108
  const fromPrimitive = (value) => {
126
109
  let valueType = typeof value;
127
110
  switch (valueType) {
@@ -195,7 +178,6 @@ export function Enum(name, values, properties) {
195
178
  const valueType = Array.isArray(value) ? 'array' : typeof value;
196
179
  let property = undefined;
197
180
  let response = undefined;
198
- let makeNew = undefined;
199
181
  let wasArray = false;
200
182
  let elements = value;
201
183
  switch (valueType) {
@@ -273,4 +255,146 @@ export function Enum(name, values, properties) {
273
255
  return enumeration;
274
256
  }
275
257
  export const EnumExtension = new Extension(Enum);
258
+ /**
259
+ * Converts a given value to a string representation with additional
260
+ * options for description and string tag.
261
+ *
262
+ * @param {any} value - The value to be converted to a string. This can
263
+ * be of any type, including objects, arrays, numbers, etc.
264
+ * @returns {string} A string representation of the input value, enhanced
265
+ * with a description and string tag if applicable.
266
+ *
267
+ * @example
268
+ * // Convert a number to a string with additional options
269
+ * const result = asString(123)
270
+ * console.log(result) // Outputs: "123" with description and string tag
271
+ *
272
+ * @example
273
+ * // Convert an object to a string with additional options
274
+ * const obj = { key: 'value' }
275
+ * const result = asString(obj)
276
+ * console.log(result) // Outputs: "[object Object]" with description and
277
+ * // string tag
278
+ */
279
+ function asString(value) {
280
+ return as.string(value, { description: true, stringTag: true });
281
+ }
282
+ /**
283
+ * Creates a base enumeration object with predefined properties and
284
+ * symbols. This function is used to initialize an enumeration with
285
+ * specific characteristics, such as a name and various symbolic
286
+ * properties that enhance its functionality and identification.
287
+ *
288
+ * @param {string} name - The name of the enumeration. This name is
289
+ * used to identify the enumeration and is stored as a symbol on
290
+ * the object.
291
+ * @returns {Object} A new enumeration object with specific properties
292
+ * and symbols set for enhanced functionality and identification.
293
+ *
294
+ * @example
295
+ * // Create a base enum with the name 'Color'
296
+ * const colorEnum = makeBaseEnum('Color')
297
+ * console.log(colorEnum[Symbol.for('Enum.name')]) // Outputs: 'Color'
298
+ */
299
+ export function makeBaseEnum(name) {
300
+ return Object.create({}, {
301
+ /**
302
+ * Defines the `toStringTag` symbol on each enumeration to allow for
303
+ * type identification and to be consistent in naming conventions.
304
+ *
305
+ * @type {string}
306
+ */
307
+ [Symbol.toStringTag]: accessor('Enum', false, true, false),
308
+ /**
309
+ * In addition to the `toStringTag` symbol which defines this enumeration
310
+ * as an Enum type, the name of the enum is also codified in as a symbol
311
+ * on the object. It can be found using `Symbol.for('Enum.name')`.
312
+ *
313
+ * @type {string|symbol|number}
314
+ */
315
+ [Symbol.for('Enum.name')]: accessor(name, false, true, false),
316
+ /**
317
+ * Knowing which keys of the enum are part of the keys themselves is also
318
+ * crucial for enumerations. These can always be found on each Enum type
319
+ * as `Symbol.for('Enum.valueKeys')` as an array, but can also be found
320
+ * as the `.keys` property if there is no enum value of that name.
321
+ */
322
+ [Symbol.for('Enum.valueKeys')]: data([], false, true, false),
323
+ /**
324
+ * For users of the node.js REPL, this symbol represents enum types in a
325
+ * more readily readable format. See the docs for node's `util.inspect()`
326
+ * function for more details.
327
+ *
328
+ * @type {(number, object, Function) => string}
329
+ */
330
+ [Symbol.for('nodejs.util.inspect.custom')]: data(function (depth, options, inspect) {
331
+ const valueKeys = this[Symbol.for('Enum.valueKeys')] ?? [];
332
+ let valueText = valueKeys
333
+ .map(key => `\x1b[1;2m${key}\x1b[22m`)
334
+ .join(', ');
335
+ if (valueText.length)
336
+ valueText = ` { ${valueText} }`;
337
+ return `\x1b[1menum \x1b[22m${name}${valueText}`;
338
+ }, false, true, false),
339
+ /**
340
+ * This function checks the supplied `possibleEnumValue` to see if it
341
+ * is an enum value type from this enum.
342
+ *
343
+ * @param {any} possibleEnumValue the value to evaluate
344
+ * @returns {boolean} returns `true` if the value is an enum value type
345
+ * from this `Enum`, irrespective of any associated value. Returns `false`
346
+ * otherwise.
347
+ */
348
+ isValueOf: data(function isValueOf(possibleEnumValue) {
349
+ if (!possibleEnumValue || typeof possibleEnumValue !== 'object')
350
+ return false;
351
+ const enumValueType = possibleEnumValue?.type;
352
+ const enumValueName = possibleEnumValue?.name;
353
+ const thisEnumName = this[Symbol.for('Enum.name')];
354
+ const thisEnumKeys = this[Symbol.for('Enum.valueKeys')];
355
+ return (enumValueType === thisEnumName &&
356
+ thisEnumKeys.includes(enumValueName));
357
+ }, false, true, false),
358
+ /**
359
+ * A simple overload of the `toString()` method to represent the enum
360
+ * more identifiably when called. The result will be the word enum with
361
+ * the name of the enum in parenthesis. So a Gender enum might be seen
362
+ * as `Enum(Gender)` as a result to calling this function.
363
+ *
364
+ * @returns {string} a {@link String} representation of this object.
365
+ */
366
+ toString: data(function toString() {
367
+ return `Enum(${name})`;
368
+ }, false, true, false)
369
+ });
370
+ const applySyntacticSugar = () => {
371
+ createSymlinks(Symbol.for('Enum.valueKeys'), 'keys');
372
+ createSymlinks(Symbol.for('Enum.name'), 'name');
373
+ };
374
+ return [base, applySyntacticSugar];
375
+ }
376
+ /**
377
+ * Creates a symlink for a property from an existing key to a new key on
378
+ * the specified object. This function checks if the new key already
379
+ * exists on the object and, if not, it creates a new property with the
380
+ * same descriptor as the old key.
381
+ *
382
+ * Since this method creates the new link through the use of property
383
+ * descriptors, computed getters and setters also are mapped properly.
384
+ *
385
+ * @param {Object} on - The target object on which the symlink is to be
386
+ * created.
387
+ * @param {string|symbol} oldKey - The existing key whose property
388
+ * descriptor will be used for the new key.
389
+ * @param {string|symbol} newKey - The new key under which the property
390
+ * will be accessible.
391
+ *
392
+ * @example
393
+ * const obj = { a: 1 }
394
+ * createSymlink(obj, 'a', 'b')
395
+ * console.log(obj.b) // Outputs: 1
396
+ */
397
+ function createSymlinks(on, oldKey, ...newKeys) {
398
+ redescribe(on, oldKey, {}, { alsoAs: newKeys });
399
+ }
276
400
  //# sourceMappingURL=enum.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"enum.js","sourceRoot":"","sources":["../../../src/classes/enum.js"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"enum.js","sourceRoot":"","sources":["../../../src/classes/enum.js"],"names":[],"mappings":"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"}
@@ -78,7 +78,7 @@ export class Iterator {
78
78
  * fetch keys from the object. Defaults to Object.getOwnPropertyNames.
79
79
  * @returns {Iterator} An Iterator instance containing the object's keys.
80
80
  */
81
- static keys(object: Object, mapEach?: Function | undefined, keyFetcher?: Function | undefined): Iterator;
81
+ static keys(object: Object, mapEach?: Function, keyFetcher?: Function): Iterator;
82
82
  /**
83
83
  * Creates an Iterator for the entries of the given object.
84
84
  *
@@ -92,7 +92,7 @@ export class Iterator {
92
92
  * fetch keys from the object. Defaults to Object.getOwnPropertyNames.
93
93
  * @returns {Iterator} An Iterator instance containing the object's entries.
94
94
  */
95
- static entries(object: Object, mapEach?: Function | undefined, keyFetcher?: Function | undefined): Iterator;
95
+ static entries(object: Object, mapEach?: Function, keyFetcher?: Function): Iterator;
96
96
  /**
97
97
  * Creates an Iterator for the property descriptors of the given object.
98
98
  *
@@ -108,7 +108,7 @@ export class Iterator {
108
108
  * @returns {Iterator} An Iterator instance containing entries of [key,
109
109
  * descriptor] pairs.
110
110
  */
111
- static descriptors(object: Object, mapEach?: Function | undefined, keyFetcher?: Function | undefined): Iterator;
111
+ static descriptors(object: Object, mapEach?: Function, keyFetcher?: Function): Iterator;
112
112
  /**
113
113
  * Creates a new `Iterator` object instance.
114
114
  *
@@ -64,7 +64,7 @@ export class ParamParser {
64
64
  * console.error('Parsing failed.');
65
65
  * }
66
66
  */
67
- static safeTryParsers(parameters: any[], parsers: Function[], throwOnFail?: boolean | undefined): {
67
+ static safeTryParsers(parameters: any[], parsers: Function[], throwOnFail?: boolean): {
68
68
  success: boolean;
69
69
  data: any;
70
70
  };
@@ -127,9 +127,6 @@ export class ParamParser {
127
127
  stack?: string;
128
128
  cause?: unknown;
129
129
  };
130
- captureStackTrace(targetObject: object, constructorOpt?: Function): void;
131
- prepareStackTrace?: ((err: Error, stackTraces: NodeJS.CallSite[]) => any) | undefined;
132
- stackTraceLimit: number;
133
130
  };
134
131
  /**
135
132
  * A custom error class indicating that the parsers array does not
@@ -170,9 +167,6 @@ export class ParamParser {
170
167
  stack?: string;
171
168
  cause?: unknown;
172
169
  };
173
- captureStackTrace(targetObject: object, constructorOpt?: Function): void;
174
- prepareStackTrace?: ((err: Error, stackTraces: NodeJS.CallSite[]) => any) | undefined;
175
- stackTraceLimit: number;
176
170
  };
177
171
  /**
178
172
  * Constructs an instance of ParamParser. It takes in parameters, an optional
@@ -1,4 +1,5 @@
1
1
  export class ProxyHandlerResponse {
2
+ [x: symbol]: string;
2
3
  constructor(success?: boolean, value?: undefined, context?: undefined);
3
4
  }
4
5
  export class ProxyHandler {
@@ -84,7 +85,7 @@ export class ProxyHandler {
84
85
  *
85
86
  * @throws {TypeError} If ProxyHandler.type is undefined.
86
87
  */
87
- static get typeNames(): string[];
88
+ static get typeNames(): Array<string>;
88
89
  /**
89
90
  * A static getter method that returns an object containing keyed proxy
90
91
  * trap types and their associated expected arguments list by name. A
@@ -51,12 +51,8 @@ export class Property {
51
51
  configurable?: boolean | undefined;
52
52
  enumerable?: boolean | undefined;
53
53
  storage?: Object | undefined;
54
- } | undefined): Property;
55
- static data(name: any, value: any, { writable, configurable, enumerable }?: {
56
- writable: any;
57
- configurable: any;
58
- enumerable: any;
59
54
  }): Property;
55
+ static data(name: any, value: any, { writable, configurable, enumerable }?: {}): Property;
60
56
  static from(object: any, name: any): Property;
61
57
  static get is(): {
62
58
  object(value: any): any;
@@ -77,10 +73,7 @@ export class Property {
77
73
  readonly accessor: boolean;
78
74
  readonly data: boolean;
79
75
  };
80
- toString(colors?: boolean, { key, descriptor }?: {
81
- key: any;
82
- descriptor: any;
83
- }): string;
76
+ toString(colors?: boolean, { key, descriptor }?: {}): string;
84
77
  }
85
78
  export const PropertyExtensions: Extension;
86
79
  import { Extension } from '@nejs/extension';
@@ -108,7 +108,7 @@ export class RefSet extends Set<any> {
108
108
  *
109
109
  * @returns {Iterator} An iterator for the values.
110
110
  */
111
- values(): Iterator<any, any, undefined>;
111
+ values(): Iterator<any, any, any>;
112
112
  /**
113
113
  * Returns an iterator for the keys of the RefSet. In RefSet, keys and
114
114
  * values are identical, so this method behaves the same as `values()`. It
@@ -118,7 +118,7 @@ export class RefSet extends Set<any> {
118
118
  *
119
119
  * @returns {Iterator} An iterator for the keys.
120
120
  */
121
- keys(): Iterator<any, any, undefined>;
121
+ keys(): Iterator<any, any, any>;
122
122
  /**
123
123
  * Checks if the RefSet contains a value that is equal to the specified
124
124
  * value. This method is used primarily in objectified RefSets to determine
@@ -343,7 +343,7 @@ export class Symkeys {
343
343
  * const name = Symkeys.calculateName('feature', 'symkeys.public', '/');
344
344
  * console.log(name); // Output: 'symkeys.public/feature'
345
345
  */
346
- calculateName(providedName: string, useDomain?: string | undefined, useSeparator?: string | undefined): string;
346
+ calculateName(providedName: string, useDomain?: string, useSeparator?: string): string;
347
347
  }
348
348
  export const SymkeysExtension: Extension;
349
349
  import { Extension } from '@nejs/extension';
@@ -1,3 +1,4 @@
1
+ export * from "./utils/stdout.js";
1
2
  export * from "./utils/copy.object.js";
2
3
  export * from "./utils/toolkit.js";
3
4
  export * from "./utils/descriptor.utils.js";
@@ -9,15 +10,16 @@ export namespace all {
9
10
  }
10
11
  export default results;
11
12
  declare namespace results {
13
+ export { all };
14
+ export { Controls };
12
15
  export { Extensions };
13
- export { Patches };
16
+ export { Extensions as extensions };
14
17
  export { GlobalFunctionsAndProps };
15
- export { StaticPatches };
16
18
  export { InstancePatches };
17
- export { Controls };
18
- export { Extensions as extensions };
19
+ export { Patches };
19
20
  export { Patches as patches };
20
- export { all };
21
+ export { StaticPatches };
22
+ export { StdoutGlobalPatches };
21
23
  }
22
24
  export const Extensions: {};
23
25
  export const Patches: Map<any, any>;
@@ -25,4 +27,5 @@ export const StaticPatches: ((string | import("@nejs/extension").Patch | ArrayCo
25
27
  export const InstancePatches: ((string | import("@nejs/extension").Patch | BigInt)[] | (string | Number | import("@nejs/extension").Patch)[] | (string | Object)[])[];
26
28
  export const Controls: {};
27
29
  import { GlobalFunctionsAndProps } from './global.this.js';
30
+ import { StdoutGlobalPatches } from './utils/stdout.js';
28
31
  export { GlobalFunctionsAndProps };