---
title: "Référence d'API — nodefony/cbor"
source: docs/api/core/cbor.md
url: https://nodefony.github.io/nodefony-core/docs/api/core/cbor/
---


[Documentation](../../../) › [Référence d'API](../../) › [`nodefony`](../) › cbor

> Générée depuis les déclarations de types publiées de `nodefony` **10.0.0-beta.6** : exactement ce que reçoit une application qui l'installe. Cette page n'existe dans aucun dépôt — pour la corriger, on corrige le TSDoc du code.

## `nodefony/cbor`

`import { … } from "nodefony/cbor"` — 6 symboles.

### Classes (1)

#### `CborError`

```ts
class CborError extends TypeError
```

Erreur levée par le codec CBOR, à l'encodage comme au décodage.

- `readonly name: string`
- `readonly position: number | null` — Décalage, en octets depuis le début de l'entrée, de l'élément refusé ; `null` quand la faute vient de la valeur à encoder.
- `constructor(message: string, position?: number | null)`

### Fonctions (2)

#### `decodeCbor`

```ts
function decodeCbor(bytes: Uint8Array, options?: ICborDecodeOptions): unknown
```

Décode un message CBOR en la valeur que `JSON.parse` aurait rendue du même contenu.

#### `encodeCbor`

```ts
function encodeCbor(value: unknown): Uint8Array<ArrayBuffer>
```

Encode une valeur en CBOR, exactement ce que `JSON.stringify` puis `JSON.parse` en rendraient.

### Constantes (2)

#### `CBOR_FRAME_CODEC`

```ts
const CBOR_FRAME_CODEC: { protocol: string; textCodec: { protocol: string; bytesMarker: string; encode(frame: unknown): string; decode(data: string | Uint8Array): unknown; }; encode(frame: unknown): Uint8Array<ArrayBuffer>; decode(data: string | Uint8Array): unknown; }
```

Le codec CBOR de la socket : chaque frame part en trame binaire, les octets en chaîne d'octets native (type majeur 2), sans base64 ni parcours préalable.

#### `CBOR_PROTOCOL`

```ts
const CBOR_PROTOCOL = "nodefony.jsonrpc.cbor.v1"
```

Nom du sous-protocole WebSocket (RFC 6455 §1.9) sous lequel ce codec est offert par le client et annoncé par le serveur dans l'accueil — ADR-0022 §2, « trois noms versionnés ».

### Interfaces (1)

#### `ICborDecodeOptions`

```ts
interface ICborDecodeOptions
```

Options de `decodeCbor`.

- `readonly maxDepth?: number` — Profondeur maximale d'imbrication des tableaux et objets (racine = 0).

---

[← Toutes les références d'API](../../)
