JsonShape
tipo Since 1.1.0
Forma serializable en JSON de T. Un miembro que no puede llegar al cliente (funciones,
undefined, bigint, símbolos o instancias de clase) se convierte en una cadena que lo explica,
de modo que el error de tipos señala el campo.
ts
import type { JsonShape } from "@meekojs/meeko/framework";Source code src/server/runtime/page-body.ts:64
Declaración #
ts
type JsonShape<T> = T extends string | number | boolean | null ? T : T extends Deferred<infer U> ? Deferred<JsonShape<U>> : T extends undefined | bigint | symbol | ((...args: never[]) => unknown) ? NotJson : T extends readonly unknown[] ? { [K in keyof T]: JsonShape<T[K]> } : T extends object ? { [K in keyof T]: JsonShape<T[K]> } : NotJsonType parameters #
-
T Tipo que se va a enviar al cliente.
Example #
ts
import type { JsonShape } from "@meekojs/meeko/framework";
type Shape = JsonShape<{ id: string; load: () => void }>;
// Shape["load"] es la cadena "not serializable to JSON: ...".
const ok: JsonShape<{ id: string }> = { id: "1" };