///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
///
import React from "react";
export declare const KakaoMapMarkerClustererContext: React.Context;
export type MarkerClustererProps = React.PropsWithChildren<{
/**
* 클러스터의 격자 크기. 화면 픽셀 단위이며 해당 격자 영역 안에 마커가 포함되면 클러스터에 포함시킨다
* @default 60
*/
gridSize?: number;
/**
* 마커들의 좌표 평균을 클러스터 좌표 설정 여부
* @default false
*/
averageCenter?: boolean;
/**
* 클러스터링 할 지도의 최소 레벨 값. 지정한 숫자에 해당하는 레벨 미만에서는 클러스터링 하지 않는다
* @default 0
*/
minLevel?: number;
/**
* 클러스터링 할 최소 마커 수
* @default 2
*/
minClusterSize?: number;
/**
* 클러스터의 스타일. 여러개를 선언하면 calculator 로 구분된 사이즈 구간마다 서로 다른 스타일을 적용시킬 수 있다
*/
styles?: React.CSSProperties[] | object[];
/**
* 클러스터에 표시할 문자열 또는 문자열 생성 함수.
* @default "클러스터에 포함된 숫자"
*/
texts?: string[] | ((size: number) => string);
/**
* 클러스터 크기를 구분하는 값을 가진 배열 또는 구분값 생성함수
* @default [10, 100, 1000, 10000]
*/
calculator?: number[] | ((size: number) => number[]);
/**
* 클러스터 클릭 시 지도 확대 여부. true로 설정하면 클러스터 클릭 시 확대 되지 않는다
* @default false
*/
disableClickZoom?: boolean;
/**
* 클러스터 클릭 가능 여부 지정 옵션. false일 경우 클러스터의 clusterclick, clusterdblclick, clusterrightclick 이벤트가 발생하지 않으며, 커서가 변경되지 않는다.
* @default true
*/
clickable?: boolean;
/**
* 클러스터에 마우스 over/out 가능 여부 지정 옵션. false일 경우 클러스터의 clusterover, clusterout 이벤트가 발생하지 않는다.
* @default true
*/
hoverable?: boolean;
/**
* 클러스터 마커를 클릭 했을 때 발생한다.
* 이벤트 핸들러 함수 인자로는 Cluster 객체가 넘어온다.
* 클러스터 마커 클릭 시 지도가 줌인 되는 경우 원하는 Cluster 객체를 얻지 못할 수도 있다.
* 때문에 MarkerClusterer 를 생성할 때 disableClickZoom 옵션을 true로 설정하여
* 클러스터 마커를 클릭했을 때 지도가 줌인되지 않도록 설정 후 사용한다.
*/
onClusterclick?: (target: kakao.maps.MarkerClusterer, cluster: kakao.maps.Cluster) => void;
/**
* 클러스터 마커를 마우스 오버 했을 때 발생한다
* 이벤트 핸들러 함수 인자로는 마우스 오버한 Cluster 객체가 넘어온다.
*/
onClusterover?: (target: kakao.maps.MarkerClusterer, cluster: kakao.maps.Cluster) => void;
/**
* 클러스터 마커를 마우스 아웃 했을 때 발생한다
* 이벤트 핸들러 함수 인자로는 마우스 아웃된 Cluster 객체가 넘어온다.
*/
onClusterout?: (target: kakao.maps.MarkerClusterer, cluster: kakao.maps.Cluster) => void;
/**
* 클러스터 마커를 더블클릭 했을 때 발생한다
* 이벤트 핸들러 함수 인자로는 더블클릭한 Cluster 객체가 넘어온다.
* MarkerClusterer 를 생성할 때 disableClickZoom 옵션을 true로 설정해야만 이벤트가 발생한다.
*/
onClusterdblclick?: (target: kakao.maps.MarkerClusterer, cluster: kakao.maps.Cluster) => void;
/**
* 클러스터 마커를 오른쪽 클릭 했을 때 발생한다
* 이벤트 핸들러 함수 인자로는 오른쪽 클릭한 Cluster 객체가 넘어온다.
*/
onClusterrightclick?: (target: kakao.maps.MarkerClusterer, cluster: kakao.maps.Cluster) => void;
/**
* 클러스터링이 완료됐을 때 발생한다.
* 이벤트 핸들러 함수 인자로는 생성된 Cluster 객체 전체가 배열로 넘어온다.
*/
onClustered?: (target: kakao.maps.MarkerClusterer, clusters: kakao.maps.Cluster[]) => void;
/**
* MarkerClusterer 생성 후 해당 객체를 전달하는 함수
*/
onCreate?: (target: kakao.maps.MarkerClusterer) => void;
}>;
export declare const MarkerClusterer: React.ForwardRefExoticComponent<{
/**
* 클러스터의 격자 크기. 화면 픽셀 단위이며 해당 격자 영역 안에 마커가 포함되면 클러스터에 포함시킨다
* @default 60
*/
gridSize?: number | undefined;
/**
* 마커들의 좌표 평균을 클러스터 좌표 설정 여부
* @default false
*/
averageCenter?: boolean | undefined;
/**
* 클러스터링 할 지도의 최소 레벨 값. 지정한 숫자에 해당하는 레벨 미만에서는 클러스터링 하지 않는다
* @default 0
*/
minLevel?: number | undefined;
/**
* 클러스터링 할 최소 마커 수
* @default 2
*/
minClusterSize?: number | undefined;
/**
* 클러스터의 스타일. 여러개를 선언하면 calculator 로 구분된 사이즈 구간마다 서로 다른 스타일을 적용시킬 수 있다
*/
styles?: React.CSSProperties[] | object[] | undefined;
/**
* 클러스터에 표시할 문자열 또는 문자열 생성 함수.
* @default "클러스터에 포함된 숫자"
*/
texts?: string[] | ((size: number) => string) | undefined;
/**
* 클러스터 크기를 구분하는 값을 가진 배열 또는 구분값 생성함수
* @default [10, 100, 1000, 10000]
*/
calculator?: number[] | ((size: number) => number[]) | undefined;
/**
* 클러스터 클릭 시 지도 확대 여부. true로 설정하면 클러스터 클릭 시 확대 되지 않는다
* @default false
*/
disableClickZoom?: boolean | undefined;
/**
* 클러스터 클릭 가능 여부 지정 옵션. false일 경우 클러스터의 clusterclick, clusterdblclick, clusterrightclick 이벤트가 발생하지 않으며, 커서가 변경되지 않는다.
* @default true
*/
clickable?: boolean | undefined;
/**
* 클러스터에 마우스 over/out 가능 여부 지정 옵션. false일 경우 클러스터의 clusterover, clusterout 이벤트가 발생하지 않는다.
* @default true
*/
hoverable?: boolean | undefined;
/**
* 클러스터 마커를 클릭 했을 때 발생한다.
* 이벤트 핸들러 함수 인자로는 Cluster 객체가 넘어온다.
* 클러스터 마커 클릭 시 지도가 줌인 되는 경우 원하는 Cluster 객체를 얻지 못할 수도 있다.
* 때문에 MarkerClusterer 를 생성할 때 disableClickZoom 옵션을 true로 설정하여
* 클러스터 마커를 클릭했을 때 지도가 줌인되지 않도록 설정 후 사용한다.
*/
onClusterclick?: ((target: kakao.maps.MarkerClusterer, cluster: kakao.maps.Cluster) => void) | undefined;
/**
* 클러스터 마커를 마우스 오버 했을 때 발생한다
* 이벤트 핸들러 함수 인자로는 마우스 오버한 Cluster 객체가 넘어온다.
*/
onClusterover?: ((target: kakao.maps.MarkerClusterer, cluster: kakao.maps.Cluster) => void) | undefined;
/**
* 클러스터 마커를 마우스 아웃 했을 때 발생한다
* 이벤트 핸들러 함수 인자로는 마우스 아웃된 Cluster 객체가 넘어온다.
*/
onClusterout?: ((target: kakao.maps.MarkerClusterer, cluster: kakao.maps.Cluster) => void) | undefined;
/**
* 클러스터 마커를 더블클릭 했을 때 발생한다
* 이벤트 핸들러 함수 인자로는 더블클릭한 Cluster 객체가 넘어온다.
* MarkerClusterer 를 생성할 때 disableClickZoom 옵션을 true로 설정해야만 이벤트가 발생한다.
*/
onClusterdblclick?: ((target: kakao.maps.MarkerClusterer, cluster: kakao.maps.Cluster) => void) | undefined;
/**
* 클러스터 마커를 오른쪽 클릭 했을 때 발생한다
* 이벤트 핸들러 함수 인자로는 오른쪽 클릭한 Cluster 객체가 넘어온다.
*/
onClusterrightclick?: ((target: kakao.maps.MarkerClusterer, cluster: kakao.maps.Cluster) => void) | undefined;
/**
* 클러스터링이 완료됐을 때 발생한다.
* 이벤트 핸들러 함수 인자로는 생성된 Cluster 객체 전체가 배열로 넘어온다.
*/
onClustered?: ((target: kakao.maps.MarkerClusterer, clusters: kakao.maps.Cluster[]) => void) | undefined;
/**
* MarkerClusterer 생성 후 해당 객체를 전달하는 함수
*/
onCreate?: ((target: kakao.maps.MarkerClusterer) => void) | undefined;
} & {
children?: React.ReactNode;
} & React.RefAttributes>;