Package Exports
- @harmoniclabs/cbor
- @harmoniclabs/cbor/dist/LazyCborObj/LazyCborTag
- @harmoniclabs/cbor/dist/LazyCborObj/LazyCborTag.js
- @harmoniclabs/cbor/dist/index.js
- @harmoniclabs/cbor/dist/utils/ints
- @harmoniclabs/cbor/dist/utils/ints.js
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@harmoniclabs/cbor) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
CBOR (Concise Binary Object Representation)
Installation
npm install @harmoniclabs/cborGetting started
import { Cbor, CborText } from "@harmoniclabs/cbor";
const input = "6B68656C6C6F20776F726C64";
const cborObj = Cbor.parse( input );
if( cborObj instanceof CborText )
{
console.log( cborObj.text ) // prints "hello world"
}
const encoded = Cbor.encode( cborObj ).toString();
console.log( encoded ) // prints "6b68656c6c6f20776f726c64" (lower case hex)
How to use
Cbor
to parse/encode CBOR you can use the Cbor static class.
export declare class Cbor {
private constructor();
static encode(cborObj: CborObj): CborString;
static parse(cbor: CborString | Uint8Array | string): CborObj;
}parse allows you to go from a thing that can represent CBOR (a CborString object is always valid) to a CborObj
encode takes a CborObj and returns a CborString.
CborString
is an object that represents a valid CBOR string;
extending a ByteString includes:
toStringmethod that returns a lower case hex string.toBuffermethod that returns theUint8Arrayrepresentation of the string.
class CborString {
toString(): string
toBuffer(): Uint8Array
}CborObj
result of Cbor.parse; represents a generic CBOR tag corresponding to one of the possible Major types.
type CborObj
= CborNegInt
| CborUInt
| CborBytes
| CborText
| CborArray
| CborMap
| CborTag
| CborSimple;