try {
const encodedMessage = new TextEncoder().encode(message);
const signature = await provider.signMessage(encodedMessage, address);
return signature;
} catch (error) {
throw new Error(error instanceof Error ? error.message : 'Failed to sign message');
}