import { Element } from '../../../../../client/element';
import { Thing } from '../../../../../client/util/geometry';
import { Size } from '../../../../../client/util/geometry/types';
import { System } from '../../../../../system';
import { Dict } from '../../../../../types/Dict';
import SVGSVG from '../../svg/SVG/Component';
export declare const getMinimapSize: ($width: number, $height: number) => Size;
export interface Props {
    width: number;
    height: number;
    nodes?: Dict<Thing>;
    links?: Dict<any>;
    style?: Dict<string>;
    padding?: number;
}
export declare const DEFAULT_STYLE: {
    userSelect: string;
    webkitUserSelect: string;
    mozUserSelect: string;
};
export declare const MINIMAP_WIDTH = 200;
export declare const MINIMAP_HEIGHT = 150;
export default class Minimap extends Element<HTMLDivElement, Props> {
    _map_el: SVGSVG;
    private _map_graph;
    private _map_children;
    private _node_component;
    private _link_el;
    _min_x: number;
    _max_x: number;
    _min_y: number;
    _max_y: number;
    _width: number;
    _height: number;
    constructor($props: Props, $system: System);
    onPropChanged(prop: string, current: any): void;
    tick(): void;
}
