import { Tensor2D } from '@tensorflow/tfjs'; export interface Surface { container: HTMLElement; label: HTMLElement; drawArea: HTMLElement; } export interface SurfaceInfo { name: string; tab?: string; styles?: StyleOptions; } export interface SurfaceInfoStrict extends SurfaceInfo { name: string; tab: string; styles?: StyleOptions; } export declare type StyleOptions = Partial; export interface CSSOptions { width: string; height: string; maxWidth: string; maxHeight: string; } export declare type Drawable = HTMLElement | Surface | SurfaceInfo | { drawArea: HTMLElement; }; export declare function isSurfaceInfo(drawable: Drawable): drawable is SurfaceInfo; export declare function isSurface(drawable: Drawable): drawable is Surface; export interface VisOptions { width?: number; height?: number; xLabel?: string; yLabel?: string; xType?: 'quantitative' | 'ordinal' | 'nominal'; yType?: 'quantitative' | 'ordinal' | 'nominal'; fontSize?: number; } export interface XYPlotOptions extends VisOptions { xAxisDomain?: [number, number]; yAxisDomain?: [number, number]; zoomToFit?: boolean; } export declare type HistogramOpts = VisOptions & { stats?: HistogramStats | false; maxBins?: number; }; export interface HistogramStats { numVals?: number; min?: number; max?: number; numNans?: number; numZeros?: number; numInfs?: number; } export declare type TypedArray = Int8Array | Uint8Array | Int16Array | Uint16Array | Int32Array | Uint32Array | Uint8ClampedArray | Float32Array | Float64Array; export interface ConfusionMatrixData { values: number[][]; tickLabels?: string[]; } export declare type Point2D = { x: number; y: number; }; export interface HeatmapData { values: number[][] | Tensor2D; xTickLabels?: string[]; yTickLabels?: string[]; } export declare type NamedColorMap = 'greyscale' | 'viridis' | 'blues'; export interface HeatmapOptions extends VisOptions { colorMap?: NamedColorMap; domain?: number[]; }