/* Copyright 2026 Marimo. All rights reserved. */ // @ts-expect-error - no types import * as vl from "vega-loader"; import type { DataFormat } from "./types"; import type { DataType } from "./vega-loader"; // Re-export the vega-loader functions to add TypeScript types export function read( data: string | Record | Record[], format: | DataFormat | { type: DataFormat["type"]; parse: "auto"; } | { type: DataFormat["type"]; parse: Record; } | undefined, ): T[] { return vl.read(data, format); } export interface Loader { load( uri: string, options?: unknown, ): Promise | Record[]>; sanitize(uri: string, options?: unknown): Promise<{ href: string }>; http(uri: string, options?: unknown): Promise; file(filename: string): Promise; } export function createLoader(): Loader { return vl.loader(); } export type VegaDataType = | "boolean" | "integer" | "number" | "date" | "string" | "unknown"; export type FieldTypes = Record; export const typeParsers: Record unknown> = vl.typeParsers; export type { DataType } from "@/core/kernel/messages";