import { createResourceDataset } from "./resource"; export { averages } from "./consts/averages"; export function createScaleDatasets({ scale, groupedKeysToURLPath, }: { scale: Scale; groupedKeysToURLPath: GroupedKeysToURLPath[Scale]; }) { type Key = keyof typeof groupedKeysToURLPath; type ResourceData = ReturnType>; type ResourceDatasets = Record, ResourceData>; const datasets = groupedKeysToURLPath as any as ResourceDatasets; for (const key in groupedKeysToURLPath) { if ((key as Key) !== "price") { datasets[key as unknown as Exclude] = createResourceDataset( { scale, path: groupedKeysToURLPath[key as Key] as any, }, ); } } const price = createResourceDataset({ scale, path: `/${scale}-to-price`, }); Object.assign(datasets, { price }); return datasets; }