# meshcore TypeScript library for MeshCore protocol utilities. ## Packet parsing Using the library to decode MeshCore packets: ```ts import { Packet } from '@hamradio/meshcore'; const raw = new Uint8Array(Buffer.from("050AA50E2CB0336DB67BBF78928A3BB9BF7A8B677C83B6EC0716F9DD10002A06", "hex")); const packet = Packet.fromBytes(raw); console.log(packet); /* _Packet { header: 5, transport: undefined, pathLength: 10, path: Uint8Array(10) [ 165, 14, 44, 176, 51, 109, 182, 123, 191, 120 ], payload: Uint8Array(20) [ 146, 138, 59, 185, 191, 122, 139, 103, 124, 131, 182, 236, 7, 22, 249, 221, 16, 0, 42, 6 ], routeType: 1, payloadVersion: 0, payloadType: 1, pathHashCount: 10, pathHashSize: 1, pathHashBytes: 10, pathHashes: [ 'a5', '0e', '2c', 'b0', '33', '6d', 'b6', '7b', 'bf', '78' ] } */ ``` ## Identities The package supports: - `Identity` for public key management. - `LocalIdentity` for private key management. - `Contact` for managing named identities. - `Group` for managing groups. - `KeyManager` for managing all of the above and handling decryption.