/**
 * Vega-Lite to Semiotic translator.
 * Converts a Vega-Lite spec into a Semiotic ChartConfig.
 *
 * Scope: core marks (bar, line, point, area, rect, arc, circle, square, tick)
 * with basic encodings. No layers, facets, selections, or complex transforms.
 */
import type { ChartConfig } from "../export/chartConfig";
export interface VegaLiteEncoding {
    field?: string;
    type?: "quantitative" | "nominal" | "ordinal" | "temporal";
    aggregate?: string;
    scale?: {
        scheme?: string;
        range?: any;
        domain?: any;
    };
    axis?: {
        title?: string;
        labelAngle?: number;
    };
    value?: any;
    bin?: boolean | {
        maxbins?: number;
    };
    stack?: boolean | string | null;
}
export interface VegaLiteSpec {
    mark: string | {
        type: string;
        [key: string]: any;
    };
    data?: {
        values?: any[];
        url?: string;
    };
    encoding?: Record<string, VegaLiteEncoding>;
    width?: number;
    height?: number;
    title?: string | {
        text: string;
    };
    transform?: any[];
    [key: string]: any;
}
export declare function fromVegaLite(spec: VegaLiteSpec): ChartConfig & {
    warnings?: string[];
};
