import { GeoProjection } from 'd3-geo'; import { axisFormatter, BulletLegendItemInterface } from '../../../types'; import { LegendPosition } from '../../../enums'; import { MapData, MapPoint } from '../types'; export type MapsData> = { mapFeatureKey: keyof T; data: MapData; /** * TopoJSON data for the map. * @see https://github.com/topojson/topojson-specification/ */ topoJson: any; zoomFactor?: number; zoomExtent?: [number, number]; projection?: GeoProjection; areaColor?: string | ((d: any) => string); areaCursor?: string | ((d: any) => string); pointColor?: string | ((d: MapPoint) => string); pointSize?: number | ((d: MapPoint) => number); pointLabel?: (d: MapPoint) => string; pointCursor?: string | ((d: MapPoint) => string); linkColor?: string | ((d: any) => string); linkWidth?: number | ((d: any) => number); linkCursor?: string | ((d: any) => string); height?: string | number; width?: string | number; fitView?: boolean; fitViewPadding?: number; hideTooltip?: boolean; tooltipTitleFormatter?: (data: T) => string | number; yFormatter?: axisFormatter; categories?: Record; legendPosition?: LegendPosition; legendStyle?: any; hideLegend?: boolean; duration?: number; pointStrokeWidth?: number | ((d: MapPoint) => number); mapFitToPoints?: boolean; padding?: { top: number; right: number; bottom: number; left: number; }; };