UNPKG

@elysium-onchain-id/identity-sdk

Version:
34 lines (33 loc) 1.12 kB
import { Signer } from 'ethers'; import { ErrorParams } from './errors/Errors'; export interface PublicKey { key: string; type: string; signingMethod: string; } /** * Thrown when an invalid address is given */ export declare class InvalidSignerModuleParamsError extends Error { constructor({ message }?: ErrorParams); } /** * Interface for a signer. This object should be able to sign message and export its public key. */ export interface SignerModuleInterface { getPublicKey(): Promise<PublicKey>; signMessage(message: Uint8Array | string): Promise<string>; } export declare class SignerModule implements SignerModuleInterface { private readonly publicKey?; private readonly getPublicKeyFunction?; private readonly signMessageFunction; constructor(params: { publicKey?: PublicKey; getPublicKey?: () => Promise<PublicKey>; signMessage: (message: string) => Promise<string>; } | Signer); static isSignerModule(value: any): value is SignerModuleInterface; getPublicKey(): Promise<PublicKey>; signMessage(message: string): Promise<string>; }