
import { PROVIDER_TYPE_ASYMMETRIC_CRYPTOGRAPHY } from '../../constants/provider'
import { multiplexProviderFunction } from '../provider/multiplex-provider-function'

import { VerifyMessage } from '../../data-structures/asymmetric-cryptography'

const verifyMessage: VerifyMessage = verifyMessageFunction

async function verifyMessageFunction (_message: any, _signature: any, _publicKey: string, extract?: any): Promise<boolean[]> {
  return multiplexProviderFunction(PROVIDER_TYPE_ASYMMETRIC_CRYPTOGRAPHY, 'verifyMessage', [...arguments], extract)
}

export {
  verifyMessage
}