@nxtedition/types 23.1.4 → 23.1.5

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.
@@ -16,5 +16,6 @@ export type Blocks = Block[];
16
16
  export declare const assertBlock: (input: unknown) => Block;
17
17
  export declare const isBlock: (input: unknown) => input is Block;
18
18
  export declare const randomBlock: () => Block;
19
+ export declare const stringifyBlock: (input: Block) => string;
19
20
  export declare const stringifyBlocks: (input: Blocks) => string;
20
21
  export declare const assertGuardBlock: (input: unknown) => typia.AssertionGuard<Block>;
@@ -1,14 +1,15 @@
1
- import * as __typia_transform__isTypeUint64 from "typia/lib/internal/_isTypeUint64.js";
2
- import * as __typia_transform__assertGuard from "typia/lib/internal/_assertGuard.js";
3
- import * as __typia_transform__accessExpressionAsString from "typia/lib/internal/_accessExpressionAsString.js";
4
- import * as __typia_transform__randomPattern from "typia/lib/internal/_randomPattern.js";
5
- import * as __typia_transform__randomInteger from "typia/lib/internal/_randomInteger.js";
6
- import * as __typia_transform__randomPick from "typia/lib/internal/_randomPick.js";
7
- import * as __typia_transform__randomString from "typia/lib/internal/_randomString.js";
8
- import * as __typia_transform__randomArray from "typia/lib/internal/_randomArray.js";
9
- import * as __typia_transform__randomNumber from "typia/lib/internal/_randomNumber.js";
10
- import * as __typia_transform__jsonStringifyString from "typia/lib/internal/_jsonStringifyString.js";
11
- import * as __typia_transform__throwTypeGuardError from "typia/lib/internal/_throwTypeGuardError.js";
1
+ import * as __typia_transform__isTypeUint64 from "typia/lib/internal/_isTypeUint64";
2
+ import * as __typia_transform__assertGuard from "typia/lib/internal/_assertGuard";
3
+ import * as __typia_transform__accessExpressionAsString from "typia/lib/internal/_accessExpressionAsString";
4
+ import * as __typia_transform__randomPattern from "typia/lib/internal/_randomPattern";
5
+ import * as __typia_transform__randomInteger from "typia/lib/internal/_randomInteger";
6
+ import * as __typia_transform__randomPick from "typia/lib/internal/_randomPick";
7
+ import * as __typia_transform__randomString from "typia/lib/internal/_randomString";
8
+ import * as __typia_transform__randomArray from "typia/lib/internal/_randomArray";
9
+ import * as __typia_transform__randomNumber from "typia/lib/internal/_randomNumber";
10
+ import * as __typia_transform__jsonStringifyString from "typia/lib/internal/_jsonStringifyString";
11
+ import * as __typia_transform__jsonStringifyNumber from "typia/lib/internal/_jsonStringifyNumber";
12
+ import * as __typia_transform__throwTypeGuardError from "typia/lib/internal/_throwTypeGuardError";
12
13
  import typia from 'typia';
13
14
  export const assertBlock = (() => { const _io0 = input => "string" === typeof input.id && RegExp("^[0-9A-Za-z~][0-9A-Za-z~._: -]*$").test(input.id) && ("string" === typeof input.file && RegExp("^[0-9A-Za-z~][0-9A-Za-z~._: -]*$").test(input.file)) && ("string" === typeof input.location && RegExp("^[0-9A-Za-z~][0-9A-Za-z~._: -]*$").test(input.location)) && ("number" === typeof input.offset && (0 <= input.offset && __typia_transform__isTypeUint64._isTypeUint64(input.offset))) && (null === input.size || "number" === typeof input.size && (0 <= input.size && __typia_transform__isTypeUint64._isTypeUint64(input.size))) && (null === input.hash || "string" === typeof input.hash && RegExp("^([A-Fa-f0-9]{32})?$").test(input.hash)) && (null === input.btime || "number" === typeof input.btime && (0 <= input.btime && __typia_transform__isTypeUint64._isTypeUint64(input.btime))) && (null === input.path || "string" === typeof input.path) && (undefined !== input.error && (null === input.error || (Array.isArray(input.error) && input.error.every(elem => "object" === typeof elem && null !== elem && _io1(elem)) || "object" === typeof input.error && null !== input.error && _io1(input.error)))); const _io1 = input => "string" === typeof input.message && (undefined === input.type || "string" === typeof input.type) && (undefined === input.code || "string" === typeof input.code) && (undefined === input.exitCode || "number" === typeof input.exitCode) && (undefined === input.signalCode || "number" === typeof input.signalCode) && (undefined === input.statusCode || "number" === typeof input.statusCode) && (undefined === input.headers || "object" === typeof input.headers && null !== input.headers && false === Array.isArray(input.headers) && _io2(input.headers)) && (undefined === input.data || "object" === typeof input.data && null !== input.data && false === Array.isArray(input.data) && _io3(input.data)) && (null === input.cause || undefined === input.cause || "object" === typeof input.cause && null !== input.cause && _io1(input.cause)) && (null === input.errors || undefined === input.errors || Array.isArray(input.errors) && input.errors.every(elem => "object" === typeof elem && null !== elem && _io1(elem))); const _io2 = input => Object.keys(input).every(key => {
14
15
  const value = input[key];
@@ -354,7 +355,7 @@ export const randomBlock = (() => { const _ro0 = (_recursive = false, _depth = 0
354
355
  _generator = generator;
355
356
  return _ro0();
356
357
  }; })();
357
- export const stringifyBlocks = (() => { const _so0 = input => `{"id":${__typia_transform__jsonStringifyString._jsonStringifyString(input.id)},"file":${__typia_transform__jsonStringifyString._jsonStringifyString(input.file)},"location":${__typia_transform__jsonStringifyString._jsonStringifyString(input.location)},"offset":${input.offset},"size":${null !== input.size ? input.size : "null"},"hash":${null !== input.hash ? __typia_transform__jsonStringifyString._jsonStringifyString(input.hash) : "null"},"btime":${null !== input.btime ? input.btime : "null"},"path":${null !== input.path ? __typia_transform__jsonStringifyString._jsonStringifyString(input.path) : "null"},"error":${null !== input.error ? (() => {
358
+ export const stringifyBlock = (() => { const _so0 = input => `{"id":${__typia_transform__jsonStringifyString._jsonStringifyString(input.id)},"file":${__typia_transform__jsonStringifyString._jsonStringifyString(input.file)},"location":${__typia_transform__jsonStringifyString._jsonStringifyString(input.location)},"offset":${String(__typia_transform__jsonStringifyNumber._jsonStringifyNumber(input.offset))},"size":${null !== input.size ? String(__typia_transform__jsonStringifyNumber._jsonStringifyNumber(input.size)) : "null"},"hash":${null !== input.hash ? __typia_transform__jsonStringifyString._jsonStringifyString(input.hash) : "null"},"btime":${null !== input.btime ? String(__typia_transform__jsonStringifyNumber._jsonStringifyNumber(input.btime)) : "null"},"path":${null !== input.path ? __typia_transform__jsonStringifyString._jsonStringifyString(input.path) : "null"},"error":${null !== input.error ? (() => {
358
359
  if (Array.isArray(input.error))
359
360
  return `[${input.error.map(elem => _so1(elem)).join(",")}]`;
360
361
  if ("object" === typeof input.error && null !== input.error)
@@ -364,7 +365,24 @@ export const stringifyBlocks = (() => { const _so0 = input => `{"id":${__typia_t
364
365
  expected: "(Array<NxtError> | NxtError | null)",
365
366
  value: input.error
366
367
  });
367
- })() : "null"}}`; const _so1 = input => `{${undefined === input.type ? "" : `"type":${undefined !== input.type ? __typia_transform__jsonStringifyString._jsonStringifyString(input.type) : undefined},`}${undefined === input.code ? "" : `"code":${undefined !== input.code ? __typia_transform__jsonStringifyString._jsonStringifyString(input.code) : undefined},`}${undefined === input.exitCode ? "" : `"exitCode":${undefined !== input.exitCode ? input.exitCode : undefined},`}${undefined === input.signalCode ? "" : `"signalCode":${undefined !== input.signalCode ? input.signalCode : undefined},`}${undefined === input.statusCode ? "" : `"statusCode":${undefined !== input.statusCode ? input.statusCode : undefined},`}${undefined === input.headers ? "" : `"headers":${undefined !== input.headers ? _so2(input.headers) : undefined},`}${undefined === input.data ? "" : `"data":${undefined !== input.data ? _so3(input.data) : undefined},`}${undefined === input.cause ? "" : `"cause":${undefined !== input.cause ? null !== input.cause ? _so1(input.cause) : "null" : undefined},`}${undefined === input.errors ? "" : `"errors":${undefined !== input.errors ? null !== input.errors ? `[${input.errors.map(elem => _so1(elem)).join(",")}]` : "null" : undefined},`}"message":${__typia_transform__jsonStringifyString._jsonStringifyString(input.message)}}`; const _so2 = input => `{${Object.entries(input).map(([key, value]) => { if (undefined === value)
368
+ })() : "null"}}`; const _so1 = input => `{${undefined === input.type ? "" : `"type":${undefined !== input.type ? __typia_transform__jsonStringifyString._jsonStringifyString(input.type) : undefined},`}${undefined === input.code ? "" : `"code":${undefined !== input.code ? __typia_transform__jsonStringifyString._jsonStringifyString(input.code) : undefined},`}${undefined === input.exitCode ? "" : `"exitCode":${undefined !== input.exitCode ? String(__typia_transform__jsonStringifyNumber._jsonStringifyNumber(input.exitCode)) : undefined},`}${undefined === input.signalCode ? "" : `"signalCode":${undefined !== input.signalCode ? String(__typia_transform__jsonStringifyNumber._jsonStringifyNumber(input.signalCode)) : undefined},`}${undefined === input.statusCode ? "" : `"statusCode":${undefined !== input.statusCode ? String(__typia_transform__jsonStringifyNumber._jsonStringifyNumber(input.statusCode)) : undefined},`}${undefined === input.headers ? "" : `"headers":${undefined !== input.headers ? _so2(input.headers) : undefined},`}${undefined === input.data ? "" : `"data":${undefined !== input.data ? _so3(input.data) : undefined},`}${undefined === input.cause ? "" : `"cause":${undefined !== input.cause ? null !== input.cause ? _so1(input.cause) : "null" : undefined},`}${undefined === input.errors ? "" : `"errors":${undefined !== input.errors ? null !== input.errors ? `[${input.errors.map(elem => _so1(elem)).join(",")}]` : "null" : undefined},`}"message":${__typia_transform__jsonStringifyString._jsonStringifyString(input.message)}}`; const _so2 = input => `{${Object.entries(input).map(([key, value]) => { if (undefined === value)
369
+ return ""; return `${JSON.stringify(key)}:${__typia_transform__jsonStringifyString._jsonStringifyString(value)}`; }).filter(str => "" !== str).join(",")}}`; const _so3 = input => "{}"; const _io1 = input => "string" === typeof input.message && (undefined === input.type || "string" === typeof input.type) && (undefined === input.code || "string" === typeof input.code) && (undefined === input.exitCode || "number" === typeof input.exitCode) && (undefined === input.signalCode || "number" === typeof input.signalCode) && (undefined === input.statusCode || "number" === typeof input.statusCode) && (undefined === input.headers || "object" === typeof input.headers && null !== input.headers && false === Array.isArray(input.headers) && _io2(input.headers)) && (undefined === input.data || "object" === typeof input.data && null !== input.data && false === Array.isArray(input.data) && _io3(input.data)) && (null === input.cause || undefined === input.cause || "object" === typeof input.cause && null !== input.cause && _io1(input.cause)) && (null === input.errors || undefined === input.errors || Array.isArray(input.errors) && input.errors.every(elem => "object" === typeof elem && null !== elem && _io1(elem))); const _io2 = input => Object.keys(input).every(key => {
370
+ const value = input[key];
371
+ if (undefined === value)
372
+ return true;
373
+ return "string" === typeof value;
374
+ }); const _io3 = input => true; return input => _so0(input); })();
375
+ export const stringifyBlocks = (() => { const _so0 = input => `{"id":${__typia_transform__jsonStringifyString._jsonStringifyString(input.id)},"file":${__typia_transform__jsonStringifyString._jsonStringifyString(input.file)},"location":${__typia_transform__jsonStringifyString._jsonStringifyString(input.location)},"offset":${String(__typia_transform__jsonStringifyNumber._jsonStringifyNumber(input.offset))},"size":${null !== input.size ? String(__typia_transform__jsonStringifyNumber._jsonStringifyNumber(input.size)) : "null"},"hash":${null !== input.hash ? __typia_transform__jsonStringifyString._jsonStringifyString(input.hash) : "null"},"btime":${null !== input.btime ? String(__typia_transform__jsonStringifyNumber._jsonStringifyNumber(input.btime)) : "null"},"path":${null !== input.path ? __typia_transform__jsonStringifyString._jsonStringifyString(input.path) : "null"},"error":${null !== input.error ? (() => {
376
+ if (Array.isArray(input.error))
377
+ return `[${input.error.map(elem => _so1(elem)).join(",")}]`;
378
+ if ("object" === typeof input.error && null !== input.error)
379
+ return _so1(input.error);
380
+ __typia_transform__throwTypeGuardError._throwTypeGuardError({
381
+ method: "typia.json.createStringify",
382
+ expected: "(Array<NxtError> | NxtError | null)",
383
+ value: input.error
384
+ });
385
+ })() : "null"}}`; const _so1 = input => `{${undefined === input.type ? "" : `"type":${undefined !== input.type ? __typia_transform__jsonStringifyString._jsonStringifyString(input.type) : undefined},`}${undefined === input.code ? "" : `"code":${undefined !== input.code ? __typia_transform__jsonStringifyString._jsonStringifyString(input.code) : undefined},`}${undefined === input.exitCode ? "" : `"exitCode":${undefined !== input.exitCode ? String(__typia_transform__jsonStringifyNumber._jsonStringifyNumber(input.exitCode)) : undefined},`}${undefined === input.signalCode ? "" : `"signalCode":${undefined !== input.signalCode ? String(__typia_transform__jsonStringifyNumber._jsonStringifyNumber(input.signalCode)) : undefined},`}${undefined === input.statusCode ? "" : `"statusCode":${undefined !== input.statusCode ? String(__typia_transform__jsonStringifyNumber._jsonStringifyNumber(input.statusCode)) : undefined},`}${undefined === input.headers ? "" : `"headers":${undefined !== input.headers ? _so2(input.headers) : undefined},`}${undefined === input.data ? "" : `"data":${undefined !== input.data ? _so3(input.data) : undefined},`}${undefined === input.cause ? "" : `"cause":${undefined !== input.cause ? null !== input.cause ? _so1(input.cause) : "null" : undefined},`}${undefined === input.errors ? "" : `"errors":${undefined !== input.errors ? null !== input.errors ? `[${input.errors.map(elem => _so1(elem)).join(",")}]` : "null" : undefined},`}"message":${__typia_transform__jsonStringifyString._jsonStringifyString(input.message)}}`; const _so2 = input => `{${Object.entries(input).map(([key, value]) => { if (undefined === value)
368
386
  return ""; return `${JSON.stringify(key)}:${__typia_transform__jsonStringifyString._jsonStringifyString(value)}`; }).filter(str => "" !== str).join(",")}}`; const _so3 = input => "{}"; const _io1 = input => "string" === typeof input.message && (undefined === input.type || "string" === typeof input.type) && (undefined === input.code || "string" === typeof input.code) && (undefined === input.exitCode || "number" === typeof input.exitCode) && (undefined === input.signalCode || "number" === typeof input.signalCode) && (undefined === input.statusCode || "number" === typeof input.statusCode) && (undefined === input.headers || "object" === typeof input.headers && null !== input.headers && false === Array.isArray(input.headers) && _io2(input.headers)) && (undefined === input.data || "object" === typeof input.data && null !== input.data && false === Array.isArray(input.data) && _io3(input.data)) && (null === input.cause || undefined === input.cause || "object" === typeof input.cause && null !== input.cause && _io1(input.cause)) && (null === input.errors || undefined === input.errors || Array.isArray(input.errors) && input.errors.every(elem => "object" === typeof elem && null !== elem && _io1(elem))); const _io2 = input => Object.keys(input).every(key => {
369
387
  const value = input[key];
370
388
  if (undefined === value)
@@ -1,9 +1,10 @@
1
- import * as __typia_transform__assertGuard from "typia/lib/internal/_assertGuard.js";
2
- import * as __typia_transform__isTypeUint64 from "typia/lib/internal/_isTypeUint64.js";
3
- import * as __typia_transform__accessExpressionAsString from "typia/lib/internal/_accessExpressionAsString.js";
4
- import * as __typia_transform__jsonStringifyString from "typia/lib/internal/_jsonStringifyString.js";
5
- import * as __typia_transform__throwTypeGuardError from "typia/lib/internal/_throwTypeGuardError.js";
6
- import * as __typia_transform__jsonStringifyTail from "typia/lib/internal/_jsonStringifyTail.js";
1
+ import * as __typia_transform__assertGuard from "typia/lib/internal/_assertGuard";
2
+ import * as __typia_transform__isTypeUint64 from "typia/lib/internal/_isTypeUint64";
3
+ import * as __typia_transform__accessExpressionAsString from "typia/lib/internal/_accessExpressionAsString";
4
+ import * as __typia_transform__jsonStringifyNumber from "typia/lib/internal/_jsonStringifyNumber";
5
+ import * as __typia_transform__jsonStringifyString from "typia/lib/internal/_jsonStringifyString";
6
+ import * as __typia_transform__throwTypeGuardError from "typia/lib/internal/_throwTypeGuardError";
7
+ import * as __typia_transform__jsonStringifyTail from "typia/lib/internal/_jsonStringifyTail";
7
8
  import typia from 'typia';
8
9
  export const assertFileRef = (() => { const _io0 = input => (undefined === input.file || "string" === typeof input.file) && (undefined === input.offset || "number" === typeof input.offset) && (undefined === input.start || "number" === typeof input.start) && (undefined === input.end || "number" === typeof input.end); const _ao0 = (input, _path, _exceptionable = true) => (undefined === input.file || "string" === typeof input.file || __typia_transform__assertGuard._assertGuard(_exceptionable, {
9
10
  method: "typia.createAssert",
@@ -773,7 +774,7 @@ export const assertFileStats = (() => { const _io0 = input => (null === input.po
773
774
  }
774
775
  return input;
775
776
  }; })();
776
- export const stringifyFileStats = (() => { const _so0 = input => `{${undefined === input.progress ? "" : `"progress":${undefined !== input.progress ? input.progress : undefined},`}${undefined === input.speed ? "" : `"speed":${undefined !== input.speed ? input.speed : undefined},`}"position":${null !== input.position ? input.position : "null"},"uploading":${null !== input.uploading ? input.uploading : "null"},"zones":${`[${input.zones.map(elem => __typia_transform__jsonStringifyString._jsonStringifyString(elem)).join(",")}]`},"replicas":${`[${input.replicas.map(elem => __typia_transform__jsonStringifyString._jsonStringifyString(elem)).join(",")}]`},"locations":${`[${input.locations.map(elem => __typia_transform__jsonStringifyString._jsonStringifyString(elem)).join(",")}]`},"ranges":${`[${input.ranges.map(elem => `[${elem[0]},${elem[1]}]`).join(",")}]`},"complete":${input.complete},"id":${__typia_transform__jsonStringifyString._jsonStringifyString(input.id)},"size":${null !== input.size ? input.size : "null"},"seekable":${input.seekable},"deleted":${input.deleted},"refs":${`[${input.refs.map(elem => _so1(elem)).join(",")}]`},"tags":${`[${input.tags.map(elem => __typia_transform__jsonStringifyString._jsonStringifyString(elem)).join(",")}]`},"resumable":${__typia_transform__jsonStringifyString._jsonStringifyString(input.resumable)},"mimeType":${__typia_transform__jsonStringifyString._jsonStringifyString(input.mimeType)},"encoding":${__typia_transform__jsonStringifyString._jsonStringifyString(input.encoding)},"hash":${__typia_transform__jsonStringifyString._jsonStringifyString(input.hash)},"btime":${input.btime},"completed":${input.completed},"error":${null !== input.error ? (() => {
777
+ export const stringifyFileStats = (() => { const _so0 = input => `{${undefined === input.progress ? "" : `"progress":${undefined !== input.progress ? String(__typia_transform__jsonStringifyNumber._jsonStringifyNumber(input.progress)) : undefined},`}${undefined === input.speed ? "" : `"speed":${undefined !== input.speed ? String(__typia_transform__jsonStringifyNumber._jsonStringifyNumber(input.speed)) : undefined},`}"position":${null !== input.position ? String(__typia_transform__jsonStringifyNumber._jsonStringifyNumber(input.position)) : "null"},"uploading":${null !== input.uploading ? String(input.uploading) : "null"},"zones":${`[${input.zones.map(elem => __typia_transform__jsonStringifyString._jsonStringifyString(elem)).join(",")}]`},"replicas":${`[${input.replicas.map(elem => __typia_transform__jsonStringifyString._jsonStringifyString(elem)).join(",")}]`},"locations":${`[${input.locations.map(elem => __typia_transform__jsonStringifyString._jsonStringifyString(elem)).join(",")}]`},"ranges":${`[${input.ranges.map(elem => `[${String(__typia_transform__jsonStringifyNumber._jsonStringifyNumber(elem[0]))},${String(__typia_transform__jsonStringifyNumber._jsonStringifyNumber(elem[1]))}]`).join(",")}]`},"complete":${String(input.complete)},"id":${__typia_transform__jsonStringifyString._jsonStringifyString(input.id)},"size":${null !== input.size ? String(__typia_transform__jsonStringifyNumber._jsonStringifyNumber(input.size)) : "null"},"seekable":${String(input.seekable)},"deleted":${String(input.deleted)},"refs":${`[${input.refs.map(elem => _so1(elem)).join(",")}]`},"tags":${`[${input.tags.map(elem => __typia_transform__jsonStringifyString._jsonStringifyString(elem)).join(",")}]`},"resumable":${__typia_transform__jsonStringifyString._jsonStringifyString(input.resumable)},"mimeType":${__typia_transform__jsonStringifyString._jsonStringifyString(input.mimeType)},"encoding":${__typia_transform__jsonStringifyString._jsonStringifyString(input.encoding)},"hash":${__typia_transform__jsonStringifyString._jsonStringifyString(input.hash)},"btime":${String(__typia_transform__jsonStringifyNumber._jsonStringifyNumber(input.btime))},"completed":${String(input.completed)},"error":${null !== input.error ? (() => {
777
778
  if (Array.isArray(input.error))
778
779
  return `[${input.error.map(elem => _so2(elem)).join(",")}]`;
779
780
  if ("object" === typeof input.error && null !== input.error)
@@ -783,7 +784,7 @@ export const stringifyFileStats = (() => { const _so0 = input => `{${undefined =
783
784
  expected: "(Array<NxtError> | NxtError | null)",
784
785
  value: input.error
785
786
  });
786
- })() : "null"}}`; const _so1 = input => `{${__typia_transform__jsonStringifyTail._jsonStringifyTail(`${undefined === input.file ? "" : `"file":${undefined !== input.file ? __typia_transform__jsonStringifyString._jsonStringifyString(input.file) : undefined},`}${undefined === input.offset ? "" : `"offset":${undefined !== input.offset ? input.offset : undefined},`}${undefined === input.start ? "" : `"start":${undefined !== input.start ? input.start : undefined},`}${undefined === input.end ? "" : `"end":${undefined !== input.end ? input.end : undefined}`}`)}}`; const _so2 = input => `{${undefined === input.type ? "" : `"type":${undefined !== input.type ? __typia_transform__jsonStringifyString._jsonStringifyString(input.type) : undefined},`}${undefined === input.code ? "" : `"code":${undefined !== input.code ? __typia_transform__jsonStringifyString._jsonStringifyString(input.code) : undefined},`}${undefined === input.exitCode ? "" : `"exitCode":${undefined !== input.exitCode ? input.exitCode : undefined},`}${undefined === input.signalCode ? "" : `"signalCode":${undefined !== input.signalCode ? input.signalCode : undefined},`}${undefined === input.statusCode ? "" : `"statusCode":${undefined !== input.statusCode ? input.statusCode : undefined},`}${undefined === input.headers ? "" : `"headers":${undefined !== input.headers ? _so3(input.headers) : undefined},`}${undefined === input.data ? "" : `"data":${undefined !== input.data ? _so4(input.data) : undefined},`}${undefined === input.cause ? "" : `"cause":${undefined !== input.cause ? null !== input.cause ? _so2(input.cause) : "null" : undefined},`}${undefined === input.errors ? "" : `"errors":${undefined !== input.errors ? null !== input.errors ? `[${input.errors.map(elem => _so2(elem)).join(",")}]` : "null" : undefined},`}"message":${__typia_transform__jsonStringifyString._jsonStringifyString(input.message)}}`; const _so3 = input => `{${Object.entries(input).map(([key, value]) => { if (undefined === value)
787
+ })() : "null"}}`; const _so1 = input => `{${__typia_transform__jsonStringifyTail._jsonStringifyTail(`${undefined === input.file ? "" : `"file":${undefined !== input.file ? __typia_transform__jsonStringifyString._jsonStringifyString(input.file) : undefined},`}${undefined === input.offset ? "" : `"offset":${undefined !== input.offset ? String(__typia_transform__jsonStringifyNumber._jsonStringifyNumber(input.offset)) : undefined},`}${undefined === input.start ? "" : `"start":${undefined !== input.start ? String(__typia_transform__jsonStringifyNumber._jsonStringifyNumber(input.start)) : undefined},`}${undefined === input.end ? "" : `"end":${undefined !== input.end ? String(__typia_transform__jsonStringifyNumber._jsonStringifyNumber(input.end)) : undefined}`}`)}}`; const _so2 = input => `{${undefined === input.type ? "" : `"type":${undefined !== input.type ? __typia_transform__jsonStringifyString._jsonStringifyString(input.type) : undefined},`}${undefined === input.code ? "" : `"code":${undefined !== input.code ? __typia_transform__jsonStringifyString._jsonStringifyString(input.code) : undefined},`}${undefined === input.exitCode ? "" : `"exitCode":${undefined !== input.exitCode ? String(__typia_transform__jsonStringifyNumber._jsonStringifyNumber(input.exitCode)) : undefined},`}${undefined === input.signalCode ? "" : `"signalCode":${undefined !== input.signalCode ? String(__typia_transform__jsonStringifyNumber._jsonStringifyNumber(input.signalCode)) : undefined},`}${undefined === input.statusCode ? "" : `"statusCode":${undefined !== input.statusCode ? String(__typia_transform__jsonStringifyNumber._jsonStringifyNumber(input.statusCode)) : undefined},`}${undefined === input.headers ? "" : `"headers":${undefined !== input.headers ? _so3(input.headers) : undefined},`}${undefined === input.data ? "" : `"data":${undefined !== input.data ? _so4(input.data) : undefined},`}${undefined === input.cause ? "" : `"cause":${undefined !== input.cause ? null !== input.cause ? _so2(input.cause) : "null" : undefined},`}${undefined === input.errors ? "" : `"errors":${undefined !== input.errors ? null !== input.errors ? `[${input.errors.map(elem => _so2(elem)).join(",")}]` : "null" : undefined},`}"message":${__typia_transform__jsonStringifyString._jsonStringifyString(input.message)}}`; const _so3 = input => `{${Object.entries(input).map(([key, value]) => { if (undefined === value)
787
788
  return ""; return `${JSON.stringify(key)}:${__typia_transform__jsonStringifyString._jsonStringifyString(value)}`; }).filter(str => "" !== str).join(",")}}`; const _so4 = input => "{}"; const _io1 = input => (undefined === input.file || "string" === typeof input.file) && (undefined === input.offset || "number" === typeof input.offset) && (undefined === input.start || "number" === typeof input.start) && (undefined === input.end || "number" === typeof input.end); const _io2 = input => "string" === typeof input.message && (undefined === input.type || "string" === typeof input.type) && (undefined === input.code || "string" === typeof input.code) && (undefined === input.exitCode || "number" === typeof input.exitCode) && (undefined === input.signalCode || "number" === typeof input.signalCode) && (undefined === input.statusCode || "number" === typeof input.statusCode) && (undefined === input.headers || "object" === typeof input.headers && null !== input.headers && false === Array.isArray(input.headers) && _io3(input.headers)) && (undefined === input.data || "object" === typeof input.data && null !== input.data && false === Array.isArray(input.data) && _io4(input.data)) && (null === input.cause || undefined === input.cause || "object" === typeof input.cause && null !== input.cause && _io2(input.cause)) && (null === input.errors || undefined === input.errors || Array.isArray(input.errors) && input.errors.every(elem => "object" === typeof elem && null !== elem && _io2(elem))); const _io3 = input => Object.keys(input).every(key => {
788
789
  const value = input[key];
789
790
  if (undefined === value)
@@ -1,4 +1,4 @@
1
- import * as __typia_transform__assertGuard from "typia/lib/internal/_assertGuard.js";
1
+ import * as __typia_transform__assertGuard from "typia/lib/internal/_assertGuard";
2
2
  import typia from "typia";
3
3
  export const assertLocation = (() => { const _io0 = input => "string" === typeof input.id && (null === input.size || "number" === typeof input.size) && (null === input.free || "number" === typeof input.free) && (null === input.capacity || "number" === typeof input.capacity) && (null === input.available || "number" === typeof input.available) && (null === input.cache || "boolean" === typeof input.cache) && "string" === typeof input.origin && "string" === typeof input.zone && (Array.isArray(input.allows) && input.allows.every(elem => "string" === typeof elem)); const _ao0 = (input, _path, _exceptionable = true) => ("string" === typeof input.id || __typia_transform__assertGuard._assertGuard(_exceptionable, {
4
4
  method: "typia.createAssert",
@@ -1,5 +1,5 @@
1
- import * as __typia_transform__isTypeUint32 from "typia/lib/internal/_isTypeUint32.js";
2
- import * as __typia_transform__assertGuard from "typia/lib/internal/_assertGuard.js";
1
+ import * as __typia_transform__isTypeUint32 from "typia/lib/internal/_isTypeUint32";
2
+ import * as __typia_transform__assertGuard from "typia/lib/internal/_assertGuard";
3
3
  import typia from 'typia';
4
4
  export const assertRule = (() => { const _io0 = input => Array.isArray(input.locations) && input.locations.every(elem => "string" === typeof elem) && ("number" === typeof input.replicas && __typia_transform__isTypeUint32._isTypeUint32(input.replicas)) && ("number" === typeof input.priority && __typia_transform__isTypeUint32._isTypeUint32(input.priority)) && (Array.isArray(input.includes) && input.includes.every(elem => "string" === typeof elem)) && (Array.isArray(input.excludes) && input.excludes.every(elem => "string" === typeof elem)); const _ao0 = (input, _path, _exceptionable = true) => ((Array.isArray(input.locations) || __typia_transform__assertGuard._assertGuard(_exceptionable, {
5
5
  method: "typia.createAssert",
@@ -1,5 +1,7 @@
1
1
  /// <reference lib="esnext.asynciterable" />
2
2
 
3
+ import { TagBase } from './TagBase';
4
+
3
5
  /**
4
6
  All diff* functions should return a list of operations, often empty.
5
7
 
@@ -817,6 +819,8 @@ declare interface EventDomainRecords {
817
819
  ":event.children?": EventChildrenRecord;
818
820
  ":event.props?": EventPropsRecord;
819
821
  ":event.stats?": EventStatsRecord;
822
+ ":event.readDuration?": EventReadDurationRecord;
823
+ ":event.readRate?": EventReadRateRecord;
820
824
  }
821
825
 
822
826
  declare interface EventDurationRecord {
@@ -850,6 +854,19 @@ declare type EventProps = {
850
854
 
851
855
  declare type EventPropsRecord = EventProps & Record<Exclude<string, keyof EventProps>, JsonValue>;
852
856
 
857
+ declare interface EventReadDurationRecord {
858
+ numChars?: number;
859
+ numWords?: number;
860
+ readRate?: number;
861
+ readDuration?: number;
862
+ readType?: ReadType;
863
+ }
864
+
865
+ declare interface EventReadRateRecord {
866
+ readRate?: number;
867
+ readType?: ReadType;
868
+ }
869
+
853
870
  declare interface EventRecord {
854
871
  start?: number | null;
855
872
  end?: number | null;
@@ -1721,24 +1738,29 @@ declare interface ListNodeContent {
1721
1738
  }
1722
1739
 
1723
1740
  /**
1724
- * Maximum value constraint tag.
1725
- *
1726
- * Enforces that a numeric value must be less than or equal to the specified
1727
- * maximum. This constraint validates that the input value satisfies: input <=
1728
- * maximum.
1741
+ * Inclusive maximum value constraint (value <= max).
1729
1742
  *
1730
- * Example usage:
1743
+ * `Maximum<N>` is a type tag that validates numeric values are less than or
1744
+ * equal to the specified bound. Apply it to `number` or `bigint` properties
1745
+ * using TypeScript intersection types.
1731
1746
  *
1732
- * ```typescript
1733
- * type Percentage = number & tags.Maximum<100>; // Must be <= 100
1734
- * type SmallInt = bigint & tags.Maximum<255n>; // BigInt must be <= 255
1735
- * ```
1747
+ * This constraint is **mutually exclusive** with {@link ExclusiveMaximum} - you
1748
+ * cannot use both on the same property. Use `Maximum` for inclusive bounds (<=)
1749
+ * and `ExclusiveMaximum` for exclusive bounds (<).
1736
1750
  *
1737
- * Note: This tag is mutually exclusive with ExclusiveMaximum. You cannot apply
1738
- * both Maximum and ExclusiveMaximum constraints to the same property.
1751
+ * The constraint is enforced at runtime by `typia.is()`, `typia.assert()`, and
1752
+ * `typia.validate()`. It also generates `maximum` in JSON Schema output.
1739
1753
  *
1740
1754
  * @author Jeongho Nam - https://github.com/samchon
1741
- * @template Value - The maximum value constraint (number or bigint literal)
1755
+ * @example
1756
+ * interface Rating {
1757
+ * // Score from 0-100
1758
+ * score: number & Minimum<0> & Maximum<100>;
1759
+ * // Percentage cannot exceed 1.0
1760
+ * ratio: number & Maximum<1.0>;
1761
+ * }
1762
+ *
1763
+ * @template Value The maximum allowed value (inclusive)
1742
1764
  */
1743
1765
  declare type Maximum<Value extends number | bigint> = TagBase<{
1744
1766
  target: Value extends bigint ? "bigint" : "number";
@@ -1900,24 +1922,29 @@ declare interface Message {
1900
1922
  declare type MethodsRecord = Union["methods"];
1901
1923
 
1902
1924
  /**
1903
- * Minimum value constraint tag.
1904
- *
1905
- * Enforces that a numeric value must be greater than or equal to the specified
1906
- * minimum. This constraint validates that the input value satisfies: input >=
1907
- * minimum.
1925
+ * Inclusive minimum value constraint (value >= min).
1908
1926
  *
1909
- * Example usage:
1927
+ * `Minimum<N>` is a type tag that validates numeric values are greater than or
1928
+ * equal to the specified bound. Apply it to `number` or `bigint` properties
1929
+ * using TypeScript intersection types.
1910
1930
  *
1911
- * ```typescript
1912
- * type Age = number & tags.Minimum<0>; // Age must be 0 or greater
1913
- * type Balance = bigint & tags.Minimum<0n>; // BigInt balance must be non-negative
1914
- * ```
1931
+ * This constraint is **mutually exclusive** with {@link ExclusiveMinimum} - you
1932
+ * cannot use both on the same property. Use `Minimum` for inclusive bounds (>=)
1933
+ * and `ExclusiveMinimum` for exclusive bounds (>).
1915
1934
  *
1916
- * Note: This tag is mutually exclusive with ExclusiveMinimum. You cannot apply
1917
- * both Minimum and ExclusiveMinimum constraints to the same property.
1935
+ * The constraint is enforced at runtime by `typia.is()`, `typia.assert()`, and
1936
+ * `typia.validate()`. It also generates `minimum` in JSON Schema output.
1918
1937
  *
1919
1938
  * @author Jeongho Nam - https://github.com/samchon
1920
- * @template Value - The minimum value constraint (number or bigint literal)
1939
+ * @example
1940
+ * interface Product {
1941
+ * // Price must be 0 or greater
1942
+ * price: number & Minimum<0>;
1943
+ * // Quantity must be at least 1
1944
+ * quantity: number & Minimum<1>;
1945
+ * }
1946
+ *
1947
+ * @template Value The minimum allowed value (inclusive)
1921
1948
  */
1922
1949
  declare type Minimum<Value extends number | bigint> = TagBase<{
1923
1950
  target: Value extends bigint ? "bigint" : "number";
@@ -2223,8 +2250,6 @@ declare interface NxtStatusService extends NxtStatusObject {
2223
2250
  /**
2224
2251
  * A representation of any set of values over any amount of time. This is the most basic building block
2225
2252
  * of RxJS.
2226
- *
2227
- * @class Observable<T>
2228
2253
  */
2229
2254
  declare class Observable<T> implements Subscribable<T> {
2230
2255
  /**
@@ -2236,8 +2261,7 @@ declare class Observable<T> implements Subscribable<T> {
2236
2261
  */
2237
2262
  operator: Operator<any, T> | undefined;
2238
2263
  /**
2239
- * @constructor
2240
- * @param {Function} subscribe the function that is called when the Observable is
2264
+ * @param subscribe The function that is called when the Observable is
2241
2265
  * initially subscribed to. This function is given a Subscriber, to which new values
2242
2266
  * can be `next`ed, or an `error` method can be called to raise an error, or
2243
2267
  * `complete` can be called to notify of a successful completion.
@@ -2245,20 +2269,16 @@ declare class Observable<T> implements Subscribable<T> {
2245
2269
  constructor(subscribe?: (this: Observable<T>, subscriber: Subscriber<T>) => TeardownLogic);
2246
2270
  /**
2247
2271
  * Creates a new Observable by calling the Observable constructor
2248
- * @owner Observable
2249
- * @method create
2250
- * @param {Function} subscribe? the subscriber function to be passed to the Observable constructor
2251
- * @return {Observable} a new observable
2252
- * @nocollapse
2272
+ * @param subscribe the subscriber function to be passed to the Observable constructor
2273
+ * @return A new observable.
2253
2274
  * @deprecated Use `new Observable()` instead. Will be removed in v8.
2254
2275
  */
2255
2276
  static create: (...args: any[]) => any;
2256
2277
  /**
2257
2278
  * Creates a new Observable, with this Observable instance as the source, and the passed
2258
2279
  * operator defined as the new observable's operator.
2259
- * @method lift
2260
2280
  * @param operator the operator defining the operation to take on the observable
2261
- * @return a new observable with the Operator applied
2281
+ * @return A new observable with the Operator applied.
2262
2282
  * @deprecated Internal implementation detail, do not use directly. Will be made internal in v8.
2263
2283
  * If you have implemented an operator using `lift`, it is recommended that you create an
2264
2284
  * operator by simply returning `new Observable()` directly. See "Creating new operators from
@@ -2308,9 +2328,9 @@ declare class Observable<T> implements Subscribable<T> {
2308
2328
  * // 'Total: 6'
2309
2329
  * ```
2310
2330
  *
2311
- * @param next a handler for each value emitted by the observable
2312
- * @return a promise that either resolves on observable completion or
2313
- * rejects with the handled error
2331
+ * @param next A handler for each value emitted by the observable.
2332
+ * @return A promise that either resolves on observable completion or
2333
+ * rejects with the handled error.
2314
2334
  */
2315
2335
  forEach(next: (value: T) => void): Promise<void>;
2316
2336
  /**
@@ -2431,22 +2451,33 @@ declare interface ParagraphNodeContent extends ElementNodeContent {
2431
2451
  declare type Paths<Data> = keyof Data & string;
2432
2452
 
2433
2453
  /**
2434
- * String pattern (regular expression) constraint tag.
2454
+ * Regular expression pattern constraint for strings.
2435
2455
  *
2436
- * Validates that a string matches a specified regular expression pattern. Use
2437
- * this tag to enforce custom string formats through regex validation.
2456
+ * `Pattern<Regex>` is a type tag that validates string values match the
2457
+ * specified regular expression pattern. Apply it to `string` properties using
2458
+ * TypeScript intersection types.
2438
2459
  *
2439
- * Examples:
2460
+ * This constraint is **mutually exclusive** with {@link Format} - you cannot use
2461
+ * both on the same property. Use `Pattern` for custom regex validation, or
2462
+ * `Format` for standard formats (email, uuid, etc.).
2440
2463
  *
2441
- * ```ts
2442
- * type PhoneNumber = string & Pattern<"^\d{3}-\d{3}-\d{4}$">; // 123-456-7890
2443
- * type HexColor = string & Pattern<"^#[0-9A-Fa-f]{6}$">; // #FF5733
2444
- * ```
2464
+ * The pattern should be a valid JavaScript regular expression string without
2465
+ * the surrounding slashes. The entire string must match (implicit `^` and `$`
2466
+ * anchors).
2445
2467
  *
2446
- * Note: This tag is mutually exclusive with the Format tag. You cannot use both
2447
- * Pattern and Format on the same type.
2468
+ * The constraint is enforced at runtime by `typia.is()`, `typia.assert()`, and
2469
+ * `typia.validate()`. It generates `pattern` in JSON Schema output.
2448
2470
  *
2449
2471
  * @author Jeongho Nam - https://github.com/samchon
2472
+ * @example
2473
+ * interface Product {
2474
+ * // SKU format: 3 letters, dash, 4 digits
2475
+ * sku: string & Pattern<"^[A-Z]{3}-[0-9]{4}$">;
2476
+ * // Phone number: digits and optional dashes
2477
+ * phone: string & Pattern<"^[0-9-]+$">;
2478
+ * }
2479
+ *
2480
+ * @template Value Regular expression pattern as a string literal
2450
2481
  */
2451
2482
  declare type Pattern<Value extends string> = TagBase<{
2452
2483
  target: "string";
@@ -2680,6 +2711,8 @@ number,
2680
2711
  number
2681
2712
  ];
2682
2713
 
2714
+ declare type ReadType = "characters" | "words" | "wordsPerMinute";
2715
+
2683
2716
  declare interface Records extends KeyedDomainRecords, KeyedProvidedDomainRecords, DbExactRecords, DbProvidedRecord {
2684
2717
  [key: string]: unknown;
2685
2718
  }
@@ -3267,6 +3300,10 @@ declare type SerializedLexicalNode = {
3267
3300
  type: string;
3268
3301
  /** A numeric version for this schema, defaulting to 1, but not generally recommended for use */
3269
3302
  version: number;
3303
+ /**
3304
+ * Any state persisted with the NodeState API that is not
3305
+ * configured for flat storage
3306
+ */
3270
3307
  [NODE_STATE_KEY]?: Record<string, unknown>;
3271
3308
  };
3272
3309
 
@@ -4064,8 +4101,6 @@ declare interface Subscribable<T> {
4064
4101
  * a Subscriber, in order to provide Subscription-like capabilities such as
4065
4102
  * `unsubscribe`. Subscriber is a common type in RxJS, and crucial for
4066
4103
  * implementing operators, but it is rarely used as a public API.
4067
- *
4068
- * @class Subscriber<T>
4069
4104
  */
4070
4105
  declare class Subscriber<T> extends Subscription implements Observer<T> {
4071
4106
  /**
@@ -4078,7 +4113,6 @@ declare class Subscriber<T> extends Subscription implements Observer<T> {
4078
4113
  * Observer.
4079
4114
  * @return A Subscriber wrapping the (partially defined)
4080
4115
  * Observer represented by the given arguments.
4081
- * @nocollapse
4082
4116
  * @deprecated Do not use. Will be removed in v8. There is no replacement for this
4083
4117
  * method, and there is no reason to be creating instances of `Subscriber` directly.
4084
4118
  * If you have a specific use case, please file an issue.
@@ -4097,23 +4131,20 @@ declare class Subscriber<T> extends Subscription implements Observer<T> {
4097
4131
  * The {@link Observer} callback to receive notifications of type `next` from
4098
4132
  * the Observable, with a value. The Observable may call this method 0 or more
4099
4133
  * times.
4100
- * @param {T} [value] The `next` value.
4101
- * @return {void}
4134
+ * @param value The `next` value.
4102
4135
  */
4103
- next(value?: T): void;
4136
+ next(value: T): void;
4104
4137
  /**
4105
4138
  * The {@link Observer} callback to receive notifications of type `error` from
4106
4139
  * the Observable, with an attached `Error`. Notifies the Observer that
4107
4140
  * the Observable has experienced an error condition.
4108
- * @param {any} [err] The `error` exception.
4109
- * @return {void}
4141
+ * @param err The `error` exception.
4110
4142
  */
4111
4143
  error(err?: any): void;
4112
4144
  /**
4113
4145
  * The {@link Observer} callback to receive a valueless notification of type
4114
4146
  * `complete` from the Observable. Notifies the Observer that the Observable
4115
4147
  * has finished sending push-based notifications.
4116
- * @return {void}
4117
4148
  */
4118
4149
  complete(): void;
4119
4150
  unsubscribe(): void;
@@ -4131,12 +4162,9 @@ declare class Subscriber<T> extends Subscription implements Observer<T> {
4131
4162
  * method, which will attach a child Subscription to the current Subscription.
4132
4163
  * When a Subscription is unsubscribed, all its children (and its grandchildren)
4133
4164
  * will be unsubscribed as well.
4134
- *
4135
- * @class Subscription
4136
4165
  */
4137
4166
  declare class Subscription implements SubscriptionLike {
4138
4167
  private initialTeardown?;
4139
- /** @nocollapse */
4140
4168
  static EMPTY: Subscription;
4141
4169
  /**
4142
4170
  * A flag to indicate whether this Subscription has already been unsubscribed.
@@ -4157,7 +4185,6 @@ declare class Subscription implements SubscriptionLike {
4157
4185
  * Disposes the resources held by the subscription. May, for instance, cancel
4158
4186
  * an ongoing Observable execution or cancel any other type of work that
4159
4187
  * started when the Subscription was created.
4160
- * @return {void}
4161
4188
  */
4162
4189
  unsubscribe(): void;
4163
4190
  /**
@@ -4325,88 +4352,6 @@ declare interface SubtitleStyleDomainRecords {
4325
4352
  ":subtitle-style": SubtitleStyleDomainRecord;
4326
4353
  }
4327
4354
 
4328
- /**
4329
- * Base type for all validation tags in typia.
4330
- *
4331
- * TagBase provides the foundation for all typia's validation tags. It attaches
4332
- * metadata to TypeScript types that typia's transformer processes at
4333
- * compile-time to generate optimized runtime validation code.
4334
- *
4335
- * @author Jeongho Nam - https://github.com/samchon
4336
- * @example
4337
- * ```typescript
4338
- * // Custom tag example
4339
- * type MyCustomTag<Value extends number> = TagBase<{
4340
- * target: "number";
4341
- * kind: "MyCustom";
4342
- * value: Value;
4343
- * validate: `$input === ${Value}`;
4344
- * }>;
4345
- * ```
4346
- *
4347
- * @template Props - Tag properties that define validation behavior
4348
- */
4349
- declare type TagBase<Props extends TagBase.IProps<any, any, any, any, any, any>> = {
4350
- /**
4351
- * This is a dummy property for compilation.
4352
- *
4353
- * It does not mean anything in runtime.
4354
- */
4355
- "typia.tag"?: Props;
4356
- };
4357
-
4358
- declare namespace TagBase {
4359
- /**
4360
- * Properties interface for validation tags.
4361
- *
4362
- * @author Jeongho Nam - https://github.com/samchon
4363
- */
4364
- interface IProps<Target extends "boolean" | "bigint" | "number" | "string" | "array" | "object", Kind extends string, Value extends boolean | bigint | number | string | undefined, Validate extends string | {
4365
- [key in Target]?: string;
4366
- }, Exclusive extends boolean | string[], Schema extends object | undefined> {
4367
- /**
4368
- * Target type.
4369
- *
4370
- * If user tries to adapt this tag to a different type, it would be a
4371
- * compile error.
4372
- *
4373
- * For example, you've configured target type as `string`, but user adapted
4374
- * it onto a `number` type (`number & YourCustomTag<Value>`), then it would
4375
- * be blocked by TypeScript compiler.
4376
- */
4377
- target: Target;
4378
- /** What kind of tag is this? */
4379
- kind: Kind;
4380
- /** Value to be configured by user. */
4381
- value: Value;
4382
- /**
4383
- * Validation script.
4384
- *
4385
- * This script would be inserted into the generated validation function. In
4386
- * here script, target variable name must be `$input`. The variable name
4387
- * `$input` would be transformed to the suitable when compilation.
4388
- *
4389
- * Also, If you've take a mistake on this script, compile error would be
4390
- * occurred. So, define it with confidence. Compiler will block all your
4391
- * mistakes.
4392
- */
4393
- validate?: Validate;
4394
- /**
4395
- * Exclusive option.
4396
- *
4397
- * If this property configured as `true`, same {@link kind} tag cannot be
4398
- * duplicated in the target type. Otherwise, if you've configured this
4399
- * property as string array, all of the {@link kind} value assigned tags
4400
- * cannot be compatible in the target type.
4401
- *
4402
- * @default false
4403
- */
4404
- exclusive?: Exclusive | string[];
4405
- /** Additional schema info assigned to the {@link IJsonSchema} object. */
4406
- schema?: Schema;
4407
- }
4408
- }
4409
-
4410
4355
  declare interface TagPermission {
4411
4356
  type: "tag";
4412
4357
  method?: undefined;
@@ -4505,31 +4450,37 @@ declare interface TranscribeReplaceReplacer {
4505
4450
  }
4506
4451
 
4507
4452
  /**
4508
- * Type tag for specifying numeric bit-width representations.
4453
+ * Numeric precision and bit-width type constraint.
4454
+ *
4455
+ * `Type<Value>` is a type tag that constrains numeric values to specific
4456
+ * bit-width representations. This is essential for Protocol Buffers
4457
+ * serialization and ensures values fit within their specified ranges.
4509
4458
  *
4510
- * Constrains numeric types to specific bit-width formats used in systems
4511
- * programming and protocol buffers. Ensures numbers conform to
4512
- * platform-specific representations.
4459
+ * Available types:
4513
4460
  *
4514
- * Supported types:
4461
+ * - `"int32"`: Signed 32-bit integer (-2,147,483,648 to 2,147,483,647)
4462
+ * - `"uint32"`: Unsigned 32-bit integer (0 to 4,294,967,295)
4463
+ * - `"int64"`: Signed 64-bit integer (for `number` or `bigint`)
4464
+ * - `"uint64"`: Unsigned 64-bit integer (for `number` or `bigint`)
4465
+ * - `"float"`: 32-bit floating point
4466
+ * - `"double"`: 64-bit floating point (default JavaScript number)
4515
4467
  *
4516
- * - `int32`: 32-bit signed integer (-2^31 to 2^31-1)
4517
- * - `uint32`: 32-bit unsigned integer (0 to 2^32-1)
4518
- * - `int64`: 64-bit signed integer (supports both bigint and number)
4519
- * - `uint64`: 64-bit unsigned integer (supports both bigint and number)
4520
- * - `float`: 32-bit floating point (single precision)
4521
- * - `double`: 64-bit floating point (double precision, default JS number)
4468
+ * For Protocol Buffers, integer types also determine the wire encoding. The
4469
+ * constraint is enforced at runtime by `typia.is()`, `typia.assert()`, and
4470
+ * `typia.validate()`. It generates appropriate `type` in JSON Schema.
4522
4471
  *
4523
4472
  * @author Jeongho Nam - https://github.com/samchon
4524
4473
  * @example
4525
- * ```typescript
4526
- * type Score = number & Type<"int32">; // -2,147,483,648 to 2,147,483,647
4527
- * type UserId = number & Type<"uint32">; // 0 to 4,294,967,295
4528
- * type FileSize = bigint & Type<"int64">; // Large file sizes
4529
- * type Coordinate = number & Type<"double">; // High precision coordinates
4530
- * ```
4474
+ * interface Message {
4475
+ * // 32-bit unsigned integer
4476
+ * id: number & Type<"uint32">;
4477
+ * // 64-bit signed integer as bigint
4478
+ * timestamp: bigint & Type<"int64">;
4479
+ * // 32-bit float for memory efficiency
4480
+ * score: number & Type<"float">;
4481
+ * }
4531
4482
  *
4532
- * @template Value - The numeric type representation
4483
+ * @template Value Numeric type identifier
4533
4484
  */
4534
4485
  declare type Type<Value extends "int32" | "uint32" | "int64" | "uint64" | "float" | "double"> = TagBase<{
4535
4486
  target: Value extends "int64" | "uint64" ? "bigint" | "number" : "number";