Skip to content

Commit

Permalink
feat: add kakao.maps.drawing.* types
Browse files Browse the repository at this point in the history
  • Loading branch information
JaeSeoKim committed May 18, 2022
1 parent 9fdbc37 commit cc41690
Show file tree
Hide file tree
Showing 19 changed files with 1,937 additions and 699 deletions.
102 changes: 102 additions & 0 deletions @types/CategoryCode.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,102 @@
/// <reference path="index.d.ts" />

/**
* 지도 객체의 이벤트 관련 함수를 담은 네임스페이스
*/
declare namespace kakao.maps {
export enum CategoryCode {
/**
* 코드 미부여
*/
BLANK = "",
/**
* 대형마트
*/
MT1 = "MT1",

/**
* 편의점
*/
CS2 = "CS2",

/**
* 어린이집, 유치원
*/
PS3 = "PS3",

/**
* 학교
*/
SC4 = "SC4",

/**
* 학원
*/
AC5 = "AC5",

/**
* 주차장
*/
PK6 = "PK6",

/**
* 주유소, 충전소
*/
OL7 = "OL7",

/**
* 지하철역
*/
SW8 = "SW8",

/**
* 은행
*/
BK9 = "BK9",

/**
* 문화시설
*/
CT1 = "CT1",

/**
* 중개업소
*/
AG2 = "AG2",

/**
* 공공기관
*/
PO3 = "PO3",

/**
* 관광명소
*/
AT4 = "AT4",

/**
* 숙박
*/
AD5 = "AD5",

/**
* 음식점
*/
FD6 = "FD6",

/**
* 카페
*/
CE7 = "CE7",

/**
* 병원
*/
HP8 = "HP8",

/**
* 약국
*/
PM9 = "PM9",
}
}
17 changes: 17 additions & 0 deletions @types/CopyrightPosition.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
/// <reference path="index.d.ts" />

declare namespace kakao.maps {
/**
* @see [CopyrightPosition.d](http://apis.map.kakao.com/web/documentation/#https://apis.map.kakao.com/web/documentation/#CopyrightPosition)
*/
export enum CopyrightPosition {
/**
* 왼쪽 아래를 의미한다.
*/
BOTTOMLEFT = 0,
/**
* 오른쪽 아래를 의미한다.
*/
BOTTOMRIGHT = 1,
}
}
2 changes: 1 addition & 1 deletion @types/CustomOverlay.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -98,7 +98,7 @@ declare namespace kakao.maps {
*
* @param range
*/
public setRange(range: number): void;
public setRange(range: number = 500): void;

/**
* 커스텀 오버레이의 가시반경을 반환한다.
Expand Down
13 changes: 9 additions & 4 deletions @types/Map.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -145,7 +145,7 @@ declare namespace kakao.maps {
* @param position
*/
public addControl(
control: MapTypeControl | ZoomControl,
control: MapTypeControl | ZoomControl | kakao.maps.drawing.ToolboxElement,
position: ControlPosition
): void;

Expand All @@ -154,7 +154,9 @@ declare namespace kakao.maps {
*
* @param control
*/
public removeControl(control: MapTypeControl | ZoomControl): void;
public removeControl(
control: MapTypeControl | ZoomControl | kakao.maps.drawing.ToolboxElement
): void;

/**
* 마우스 드래그와 모바일 터치를 이용한 지도 이동 가능 여부를 설정한다.
Expand Down Expand Up @@ -231,10 +233,13 @@ declare namespace kakao.maps {
/**
* copyright의 위치를 설정한다.
*
* @param copyrightPosition
* @param CopyrightPosition
* @param reversed
*/
// public setCopyrightPosition(copyrightPosition: CopyrightPosition, reversed?: boolean): void
public setCopyrightPosition(
copyrightPosition: CopyrightPosition,
reversed?: boolean
): void;

/**
* 지도의 좌표 변환 객체를 반환한다.
Expand Down
24 changes: 24 additions & 0 deletions @types/MouseEvent.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
/// <reference path="index.d.ts" />

/**
* 지도 객체의 이벤트 관련 함수를 담은 네임스페이스
*/
declare namespace kakao.maps.event {
/**
* 마우스 이벤트로 넘겨 받는 인자
* 직접 생성할 수는 없으며 이벤트 핸들러에서 내부적으로 생성된 객체를 parameter로 받아 사용한다.
*
* @see [MouseEvent](http://apis.map.kakao.com/web/documentation/#MouseEvent)
*/
export interface MouseEvent {
/**
* 지도 좌표
*/
latLng?: kakao.maps.LatLng;

/**
* 화면 좌표
*/
point?: kakao.maps.Point;
}
}
25 changes: 25 additions & 0 deletions @types/RoadviewClient.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
/// <reference path="index.d.ts" />

declare namespace kakao.maps {
/**
* @see [RoadviewClient](https://apis.map.kakao.com/web/documentation/#RoadviewClient)
*/
export class RoadviewClient {
/**
* 특정 좌표 근처의 파노라마 ID 등 로드뷰와 관련된 데이터를 다룬다.
*/
constructor();

/**
* 특정 좌표에서 반경 내 가장 가까운 로드뷰 파노라마 ID를 구한다.
* @param position
* @param radius
* @param callback
*/
getNearestPanoId(
position: LatLng,
radius: number,
callback: (panoId: number) => void
): number;
}
}
72 changes: 72 additions & 0 deletions @types/StaticMap.d.ts
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
/// <reference path="index.d.ts" />

declare namespace kakao.maps {
/**
* @see [StaticMap](https://apis.map.kakao.com/web/documentation/#StaticMap)
*/
export class StaticMap {
/**
* 이미지 지도를 생성한다.
* 이미지 지도의 최대 크기는 2048×2048이고 이 이상 큰 이미지를 요청하는 경우 무시된다.
*
* @param container 이미지 지도가 표시될 HTML element
* @param options
*/
constructor(container: Node, options: StaticMapOptions);

/**
* 이미지 지도의 중심 좌표를 설정한다.
* @param latlng
*/
public setCenter(latlng: LatLng);

/**
* 이미지 지도의 중심 좌표를 반환한다.
*/
public getCenter(): LatLng;

/**
* 이미지 지도의 확대 수준을 설정한다.
* 0부터 14까지의 정수이며, 값이 작을수록 확대된다.
* @param level
*/
public setLevel(level: number);

/**
* 이미지 지도의 확대 수준을 반환한다.
* 0부터 14까지의 정수이며, 지도가 확대되어 있을수록 작은 값을 반환한다.
*/
public getLevel(): number;

/**
* 이미지 지도 타입을 설정한다.
* @param mapTypeId
*/
public setMapTypeId(mapTypeId: MapTypeId);

/**
* 이미지 지도 타입을 반환한다.
*/
public getMapTypeId(): MapTypeId;
}

export interface StaticMapOptions {
/**
* 중심 좌표 (필수)
*/
center: LatLng;
/**
* 확대 수준
* @default 3
*/
level?: number;
/**
* 지도 종류 (기본값: 일반 지도)
*/
mapTypeId?: MapTypeId;
/**
* 이미지 지도에 표시할 마커 또는 마커 배열
*/
marker: Marker | Array<Marker>;
}
}
22 changes: 0 additions & 22 deletions @types/Viewpoint.d.ts
Original file line number Diff line number Diff line change
Expand Up @@ -18,26 +18,4 @@ declare namespace kakao.maps {
*/
constructor(pan: number, tilt: number, zoom?: number, panoId?: number);
}

/**
* @see [RoadviewClient](https://apis.map.kakao.com/web/documentation/#RoadviewClient)
*/
export class RoadviewClient {
/**
* 특정 좌표 근처의 파노라마 ID 등 로드뷰와 관련된 데이터를 다룬다.
*/
constructor();

/**
* 특정 좌표에서 반경 내 가장 가까운 로드뷰 파노라마 ID를 구한다.
* @param position
* @param radius
* @param callback
*/
getNearestPanoId(
position: LatLng,
radius: number,
callback: (panoId: number) => void
): number;
}
}
Loading

0 comments on commit cc41690

Please sign in to comment.