import Joi from 'joi' import type { SelectAccountOptions } from './types.js' import { validate, chainValidation, type ValidateReturn } from '@web3-onboard/common' const basePath = Joi.object({ label: Joi.string().required(), value: Joi.string().required() }) const basePaths = Joi.array().items(basePath) const chains = Joi.array().items(chainValidation) const asset = Joi.object({ label: Joi.string().required(), address: Joi.string() }) const assets = Joi.array().items(asset) const selectAccountOptions = Joi.object({ basePaths: basePaths, assets: assets, chains: chains, scanAccounts: Joi.function().arity(1).required(), supportsCustomPath: Joi.bool(), consecutiveEmptyAccountThreshold: Joi.number(), containerElement: Joi.string() }) export const validateSelectAccountOptions = ( data: SelectAccountOptions ): ValidateReturn => { return validate(selectAccountOptions, data) }