import {Result} from 'result' export function a2str(buf: Uint8Array) : string { // @ts-ignore return String.fromCharCode.apply(null, buf) } export function str2a(str: string) : Uint8Array { const buf = new Uint8Array(str.length) for (let i= 0, strLen = str.length; i < strLen; i++) { buf[i] = str.charCodeAt(i) } return buf } export function a2b64(buf: Uint8Array) : string { return btoa(a2str(buf)) } export function b642a(b64: string) : Result { try { return Result.ok(str2a(atob(b64))) } catch (e) {} return Result.error([]) }