// RUNTIME VALIDATORS
export function is < T > ( input : unknown ) : input is T ; // returns boolean
export function assert < T > ( input : unknown ) : T ; // throws TypeGuardError
export function assertGuard < T > ( input : unknown ) : asserts input is T ;
export function validate < T > ( input : unknown ) : IValidation < T > ; // detailed
// JSON FUNCTIONS
export namespace json {
export function application < T > ( ) : IJsonApplication ; // JSON schema
export function assertParse < T > ( input : string ) : T ; // type safe parser
export function assertStringify < T > ( input : T ) : string ; // safe and faster
}
// LLM FUNCTION CALLING SCHEMA
export namespace llm {
// application schema from a class or interface type
export function application < App , Model > ( ) : ILlmApplication < Model > ;
// structured output
export function parameters < P , Moodel > ( ) : ILlmSchema . IParameters < Model > ;
export function schema < T , Model > ( ) : ILlmSchema < Model > ; // type schema
}
// PROTOCOL BUFFER
export namespace protobuf {
export function message < T > ( ) : string ; // Protocol Buffer message
export function assertDecode < T > ( buffer : Uint8Array ) : T ; // safe decoder
export function assertEncode < T > ( input : T ) : Uint8Array ; // safe encoder
}
// RANDOM GENERATOR
export function random < T > ( g ?: Partial < IRandomGenerator > ) : T ; typia ist eine Transformator -Bibliothek, die unter den folgenden Funktionen unterstützt:
Notiz
class-validatorclass-transformer Wenn Sie typia -Funktion nennen, wird sie wie unten zusammengestellt.
Dies ist das Schlüsselkonzept der typia , wodurch der TypeScript -Typ in eine Laufzeitfunktion umgewandelt wird. Die Funktion typia.is<T>() wird durch Analysieren des Zieltyps T in der Kompilierungsstufe in einen dedizierten Typ -Checker transformiert.
Diese Funktion ermöglicht es Entwicklern, die Sicherheit der Type in ihren Anwendungen zu gewährleisten, die statische Typisierung von TypeScript zu nutzen und gleichzeitig die Laufzeitvalidierung zu ermöglichen. Anstatt zusätzliche Schemata zu definieren, können Sie einfach den reinen Typ -Typ -Typ selbst verwenden.
//----
// examples/checkString.ts
//----
import typia , { tags } from "typia" ;
export const checkString = typia . createIs < string > ( ) ;
//----
// examples/checkUUID.js
//----
import typia from "typia" ;
export const checkString = ( ( ) => {
return ( input ) => "string" === typeof input ;
} ) ( ) ; Vielen Dank für Ihre Unterstützung.
Ihre Spende fördert typia Entwicklung.
Außerdem wird typia die Hälfte der Spenden auf Kernwirkende von typia neu verteilt.
nonara/ts-patchryoppippi/unplugin-typiaSie können erleben, wie typia auf der Playground -Website funktioniert:
Schauen Sie sich das Dokument in der Website an:
assert() Funktionis() Funktionvalidate() Funktionstringify() Funktionenparse() Funktionenapplication() Funktionparameters() Funktionschema() Funktiondecode() Funktionenencode() Funktionendev.to Artikel