toTransform
La fonction toTransform() applique récursivement les méthodes toTransform des objets et parcours tableaux/tuples pour produire une valeur prête à être transportée (DTO).
Exemple interactif
Syntaxe
typescript
type ToTransform<GenericInput extends unknown> =
GenericInput extends number | string | null | undefined
? GenericInput
: GenericInput extends { toTransform: AnyFunction }
? ReturnType<GenericInput["toTransform"]>
: GenericInput extends [infer InferredFirst, ...infer InferredRest]
? [
ToTransform<InferredFirst>,
...(
ToTransform<InferredRest> extends infer InferredSubRest extends any[]
? IsEqual<InferredSubRest, never[]> extends false
? InferredSubRest
: []
: []
)
]
: GenericInput extends any[]
? ToTransform<GenericInput[number]>[]
: GenericInput extends Record<number, unknown>
? {
[Prop in keyof GenericInput]: ToTransform<GenericInput[Prop]>;
}
: GenericInput;
function toTransform<GenericInput extends unknown>(
input: GenericInput
): ToTransform<GenericInput>;Paramètres
input: Valeur à transformer viatoTransform(si présent) ou par parcours récursif.
Valeur de retour
Une valeur transformée selon les méthodes toTransform rencontrées, adaptée à une transmission ou un stockage.
Voir aussi
toJSON- Prépare pour la sérialisation JSON
