UNPKG

react-naver-maps

Version:

React Navermaps API integration for modern development.

60 lines (57 loc) 2.88 kB
import * as react from 'react'; import { UIEventHandlers } from '../types/event.js'; import { UncontrolledKey } from '../utils/uncontrolled.js'; declare const locationalKeys: readonly ["position"]; declare const uiEvents: readonly ["mousedown", "mouseup", "click", "dblclick", "rightclick", "mouseover", "mouseout", "dragstart", "drag", "dragend"]; declare type MarkerKVO = { /** Animation??? */ animation: naver.maps.Animation; position: naver.maps.Coord | naver.maps.CoordLiteral; icon: string | naver.maps.ImageIcon | naver.maps.SymbolIcon | naver.maps.HtmlIcon; shape: naver.maps.MarkerShape; title: string; cursor: string; clickable: boolean; draggable: boolean; visible: boolean; zIndex: number; }; declare type UncontrolledProps = { [key in typeof locationalKeys[number] as UncontrolledKey<key>]: MarkerKVO[key]; }; declare type MarkerOptions = Partial<MarkerKVO>; declare type Props = MarkerOptions & Partial<UncontrolledProps> & UIEventHandlers<typeof uiEvents> & { onAnimationChanged?: (value: naver.maps.Animation) => void; onPositionChanged?: (value: naver.maps.Coord) => void; onIconChanged?: (value: string | naver.maps.ImageIcon | naver.maps.HtmlIcon | naver.maps.SymbolIcon) => void; onShapeChanged?: (event: naver.maps.MarkerShape) => void; onTitleChanged?: (event: string) => void; onCursorChanged?: (event: string) => void; onClickableChanged?: (event: boolean) => void; onDraggableChanged?: (event: boolean) => void; onVisibleChanged?: (event: boolean) => void; /** * hello yeah * @param event helo? * @returns */ onZIndexChanged?: (event: number) => void; }; declare const Marker: react.ForwardRefExoticComponent<Partial<MarkerKVO> & Partial<UncontrolledProps> & Partial<Record<"onClick" | "onDrag" | "onMousedown" | "onMouseup" | "onDblclick" | "onRightclick" | "onMouseover" | "onMouseout" | "onDragstart" | "onDragend", (e: naver.maps.PointerEvent) => void>> & { onAnimationChanged?: ((value: naver.maps.Animation) => void) | undefined; onPositionChanged?: ((value: naver.maps.Coord) => void) | undefined; onIconChanged?: ((value: string | naver.maps.ImageIcon | naver.maps.HtmlIcon | naver.maps.SymbolIcon) => void) | undefined; onShapeChanged?: ((event: naver.maps.MarkerShape) => void) | undefined; onTitleChanged?: ((event: string) => void) | undefined; onCursorChanged?: ((event: string) => void) | undefined; onClickableChanged?: ((event: boolean) => void) | undefined; onDraggableChanged?: ((event: boolean) => void) | undefined; onVisibleChanged?: ((event: boolean) => void) | undefined; /** * hello yeah * @param event helo? * @returns */ onZIndexChanged?: ((event: number) => void) | undefined; } & react.RefAttributes<naver.maps.Marker>>; export { Marker, Props };