import { Operation } from 'fast-json-patch/index.mjs'; import * as vegaImport from 'vega'; import { EncodeEntryName, Loader, LoaderOptions, Renderers, Spec as VgSpec, TooltipHandler, View, LoggerInterface as Logger } from 'vega'; import { expressionInterpreter } from 'vega-interpreter'; import * as vegaLiteImport from 'vega-lite'; import { TopLevelSpec as VlSpec } from 'vega-lite'; import * as themes from 'vega-themes'; import { Options as TooltipOptions } from 'vega-tooltip'; import { Config, ExpressionFunction, Mode } from './types.js'; export declare const version: string; export * from './types.js'; export declare const vega: typeof vegaImport; export declare let vegaLite: typeof vegaLiteImport; export interface Actions { export?: boolean | { svg?: boolean; png?: boolean; }; source?: boolean; compiled?: boolean; editor?: boolean; } export declare const DEFAULT_ACTIONS: { export: { svg: boolean; png: boolean; }; source: boolean; compiled: boolean; editor: boolean; }; export interface Hover { hoverSet?: EncodeEntryName; updateSet?: EncodeEntryName; } export type PatchFunc = (spec: VgSpec) => VgSpec; declare const I18N: { CLICK_TO_VIEW_ACTIONS: string; COMPILED_ACTION: string; EDITOR_ACTION: string; PNG_ACTION: string; SOURCE_ACTION: string; SVG_ACTION: string; }; export interface EmbedOptions { bind?: HTMLElement | string; actions?: boolean | Actions; mode?: Mode; theme?: keyof Omit; defaultStyle?: boolean | string; logLevel?: number; logger?: Logger; loader?: Loader | LoaderOptions; renderer?: R; tooltip?: TooltipHandler | TooltipOptions | boolean; patch?: S | PatchFunc | Operation[]; width?: number; height?: number; padding?: number | { left?: number; right?: number; top?: number; bottom?: number; }; scaleFactor?: number | { svg?: number; png?: number; }; config?: S | Config; sourceHeader?: string; sourceFooter?: string; editorUrl?: string; hover?: boolean | Hover; i18n?: Partial; downloadFileName?: string; formatLocale?: Record; timeFormatLocale?: Record; expressionFunctions?: ExpressionFunction; ast?: boolean; expr?: typeof expressionInterpreter; viewClass?: typeof View; forceActionsMenu?: boolean; } export type VisualizationSpec = VlSpec | VgSpec; export interface Result { /** The Vega view. */ view: View; /** The input specification. */ spec: VisualizationSpec; /** The compiled and patched Vega specification. */ vgSpec: VgSpec; /** The Vega-Embed options. */ embedOptions: EmbedOptions; /** Removes references to unwanted behaviors and memory leaks. Calls Vega's `view.finalize`. */ finalize: () => void; } /** * Try to guess the type of spec. * * @param spec Vega or Vega-Lite spec. */ export declare function guessMode(spec: VisualizationSpec, logger: Logger, providedMode?: Mode): Mode; /** * Embed a Vega visualization component in a web page. This function returns a promise. * * @param el DOM element in which to place component (DOM node or CSS selector). * @param spec String : A URL string from which to load the Vega specification. * Object : The Vega/Vega-Lite specification as a parsed JSON object. * @param opts A JavaScript object containing options for embedding. */ export default function embed(el: HTMLElement | string, spec: VisualizationSpec | string, opts?: EmbedOptions): Promise; //# sourceMappingURL=embed.d.ts.map