export async function signMessage(message: string, secret: string): Promise { const encoder = new TextEncoder(); const key = await window.crypto.subtle.importKey( 'raw', encoder.encode(secret), {name: 'HMAC', hash: {name: 'SHA-256'}}, false, ['sign'] ); const signature = await window.crypto.subtle.sign('HMAC', key, encoder.encode(message)); return Array.prototype.map.call( new Uint8Array(signature), (x: any) => ('00'+x.toString(16)).slice(-2) ).join(''); };