

import * as ASYMMETRIC_CRYPTOGRAPHY_CONSTANTS from './asymmetric-cryptography'
import * as DATABASE_CONSTANTS from './database'
import * as HASH_FUNCTION_CONSTANTS from './hash-function'

import * as PROVIDER_CONSTANTS from './provider'

const PROVIDER_TABLE = {
  [PROVIDER_CONSTANTS.PROVIDER_TYPE_ASYMMETRIC_CRYPTOGRAPHY]: { ...ASYMMETRIC_CRYPTOGRAPHY_CONSTANTS },
  [PROVIDER_CONSTANTS.PROVIDER_TYPE_DATABASE]: { ...DATABASE_CONSTANTS },
  [PROVIDER_CONSTANTS.PROVIDER_TYPE_HASH_FUNCTION]: { ...HASH_FUNCTION_CONSTANTS }
}

export {
  PROVIDER_TABLE,
  PROVIDER_CONSTANTS,
  ASYMMETRIC_CRYPTOGRAPHY_CONSTANTS,
  DATABASE_CONSTANTS,
  HASH_FUNCTION_CONSTANTS
}