import type { ExtendedFeatureCollection, GeoProjection } from '@mui/x-charts-vendor/d3-geo'; import type { GeoProjectionInput } from "./useGeoProjection.types.js"; export declare function getParallels(parallels: [number, number] | null | undefined): [number, number]; /** * Builds a *fresh* `GeoProjection` instance from the raw projection input. * * This is intentionally not a memoized selector: callers mutate the returned projection (to fit, * scale, translate, rotate it). Returning a shared instance would mean mutations leak between * consumers and, worse, that a recomputed view keeps the same object reference — so store * subscribers comparing with `Object.is` would not detect the change and the map would render one * update behind. */ export declare function resolveProjectionInstance(projectionInput: GeoProjectionInput | null, parallels: [number, number]): GeoProjection | null; /** * Helper function to compute the translation needed to fit the map in the drawing area at zoomLevel=1 */ export declare function getDefaultTranslation(projectionInput: GeoProjectionInput | null | undefined, geoData: ExtendedFeatureCollection | null | undefined, parallels: [number, number] | null | undefined, center: [number, number]): [number, number] | null;