import { RFQ_ROUTERS, RouterType, SUPPORTED_ROUTER_TYPES } from '../consts'; import Decimal from 'decimal.js'; import BN from 'bn.js'; export function isRequestedRouterType(requestedFilterSet: Set, routerType: string): boolean { return requestedFilterSet.size == 0 || requestedFilterSet.has(routerType as RouterType); } export function filterRouterTypes(routerTypes: RouterType[] | undefined, includeRfq: boolean): Set { // Handle the case when no router types are specified - use all routers let filterArray = !routerTypes || routerTypes.length === 0 ? [...SUPPORTED_ROUTER_TYPES] : routerTypes; if (!includeRfq) { filterArray = filterArray.filter((routerType) => !RFQ_ROUTERS.has(routerType)); } return new Set(filterArray); } export function safeBNToNumber(value: BN): number { return new Decimal(value.toString()).toNumber(); }