import * as borsh from "borsh"; import { Buffer } from "buffer"; export class User { name: string; constructor(props: { name: string, }) { this.name = props.name; } toBase58() { return borsh.serialize(UserSchema, this).toString() }; toBuffer() { return Buffer.from(borsh.serialize(UserSchema, this)) }; static fromBuffer(buffer: Buffer) { return borsh.deserialize(UserSchema, User, buffer); }; }; export const UserSchema = new Map([ [ User, { kind: 'struct', fields: [ ['name', 'string'], ], }] ]);