@mint-ui/map 1.2.0-test.8 → 1.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (60) hide show
  1. package/.eslintrc.js +11 -4
  2. package/.vscode/settings.json +32 -9
  3. package/dist/components/mint-map/core/MintMapController.d.ts +1 -0
  4. package/dist/components/mint-map/core/MintMapCore.js +5 -6
  5. package/dist/components/mint-map/core/advanced/CanvasMarkerLayer/CanvasMarkerLayer.d.ts +12 -0
  6. package/dist/components/mint-map/core/advanced/CanvasMarkerLayer/CanvasMarkerLayer.js +962 -0
  7. package/dist/components/mint-map/core/advanced/CanvasMarkerLayer/index.d.ts +4 -0
  8. package/dist/components/mint-map/core/advanced/CanvasMarkerLayer/types.d.ts +280 -0
  9. package/dist/components/mint-map/core/advanced/CanvasPolygonLayer/CanvasPolygonLayer.d.ts +17 -0
  10. package/dist/components/mint-map/core/advanced/CanvasPolygonLayer/CanvasPolygonLayer.js +624 -0
  11. package/dist/components/mint-map/core/advanced/CanvasPolygonLayer/index.d.ts +4 -0
  12. package/dist/components/mint-map/core/advanced/CanvasPolygonLayer/renderer.d.ts +303 -0
  13. package/dist/components/mint-map/core/advanced/CanvasPolygonLayer/renderer.js +1091 -0
  14. package/dist/components/mint-map/core/advanced/CanvasPolygonLayer/types.d.ts +284 -0
  15. package/dist/components/mint-map/core/advanced/canvas/CanvasMarker.d.ts +7 -0
  16. package/dist/components/mint-map/core/advanced/canvas/CanvasMarkerClaude.js +7 -7
  17. package/dist/components/mint-map/core/advanced/canvas/index.d.ts +0 -1
  18. package/dist/components/mint-map/core/advanced/index.d.ts +4 -2
  19. package/dist/components/mint-map/core/advanced/shared/context.d.ts +44 -0
  20. package/dist/components/mint-map/core/advanced/shared/context.js +230 -0
  21. package/dist/components/mint-map/core/advanced/shared/helpers.d.ts +20 -0
  22. package/dist/components/mint-map/core/advanced/shared/helpers.js +41 -0
  23. package/dist/components/mint-map/core/advanced/shared/hooks.d.ts +74 -0
  24. package/dist/components/mint-map/core/advanced/shared/hooks.js +196 -0
  25. package/dist/components/mint-map/core/advanced/{woongCanvas/shared → shared}/index.d.ts +5 -2
  26. package/dist/components/mint-map/core/advanced/shared/performance.d.ts +82 -0
  27. package/dist/components/mint-map/core/advanced/shared/performance.js +288 -0
  28. package/dist/components/mint-map/core/advanced/shared/types.d.ts +150 -0
  29. package/dist/components/mint-map/core/advanced/shared/types.js +31 -0
  30. package/dist/components/mint-map/core/advanced/shared/utils.d.ts +173 -0
  31. package/dist/components/mint-map/core/advanced/shared/utils.js +382 -0
  32. package/dist/components/mint-map/core/advanced/shared/viewport.d.ts +42 -0
  33. package/dist/components/mint-map/core/advanced/shared/viewport.js +52 -0
  34. package/dist/components/mint-map/core/wrapper/MapMarkerWrapper.js +22 -1
  35. package/dist/components/mint-map/google/GoogleMintMapController.d.ts +1 -0
  36. package/dist/components/mint-map/google/GoogleMintMapController.js +13 -8
  37. package/dist/components/mint-map/kakao/KakaoMintMapController.d.ts +1 -0
  38. package/dist/components/mint-map/kakao/KakaoMintMapController.js +13 -8
  39. package/dist/components/mint-map/naver/NaverMintMapController.d.ts +3 -0
  40. package/dist/components/mint-map/naver/NaverMintMapController.js +46 -11
  41. package/dist/index.es.js +5605 -4056
  42. package/dist/index.js +47 -27
  43. package/dist/index.umd.js +5621 -4059
  44. package/package.json +1 -1
  45. package/CLAUDE.md +0 -100
  46. package/dist/components/mint-map/core/advanced/canvas/CanvasMarkerHanquf.d.ts +0 -22
  47. package/dist/components/mint-map/core/advanced/canvas/CanvasMarkerHanquf.js +0 -413
  48. package/dist/components/mint-map/core/advanced/woongCanvas/ClusterMarker.d.ts +0 -11
  49. package/dist/components/mint-map/core/advanced/woongCanvas/WoongKonvaMarker.d.ts +0 -53
  50. package/dist/components/mint-map/core/advanced/woongCanvas/WoongKonvaMarker.js +0 -1123
  51. package/dist/components/mint-map/core/advanced/woongCanvas/index.d.ts +0 -3
  52. package/dist/components/mint-map/core/advanced/woongCanvas/shared/context.d.ts +0 -31
  53. package/dist/components/mint-map/core/advanced/woongCanvas/shared/context.js +0 -164
  54. package/dist/components/mint-map/core/advanced/woongCanvas/shared/performance.d.ts +0 -161
  55. package/dist/components/mint-map/core/advanced/woongCanvas/shared/performance.js +0 -343
  56. package/dist/components/mint-map/core/advanced/woongCanvas/shared/types.d.ts +0 -131
  57. package/dist/components/mint-map/core/advanced/woongCanvas/shared/types.js +0 -14
  58. package/dist/components/mint-map/core/advanced/woongCanvas/shared/utils.d.ts +0 -31
  59. package/dist/components/mint-map/core/advanced/woongCanvas/shared/utils.js +0 -164
  60. package/dist/components/mint-map/core/util/geohash.js +0 -125
@@ -0,0 +1,303 @@
1
+ /**
2
+ * 폴리곤 렌더링 유틸리티
3
+ *
4
+ * 이 파일은 폴리곤 렌더링을 위한 헬퍼 함수와 팩토리 함수를 제공합니다.
5
+ * GeoJSON MultiPolygon 형식을 지원하며, 도넛 폴리곤(구멍이 있는 폴리곤)도 처리할 수 있습니다.
6
+ *
7
+ * 세 가지 스타일 지정 방식을 지원하는 렌더링 함수를 제공합니다:
8
+ * 1. 개별 props 방식: renderPolygonBase, renderPolygonEvent
9
+ * 2. 객체 방식: renderPolygonBaseWithObject, renderPolygonEventWithObject
10
+ * 3. 함수 방식: renderPolygonBaseWithCustomStyle, renderPolygonEventWithCustomStyle
11
+ */
12
+ import type { PolygonStyleCustomizer, PolygonStyleObject } from './CanvasPolygonLayer';
13
+ import { CustomRenderBase, CustomRenderEvent } from '../shared/types';
14
+ /**
15
+ * 폴리곤 그리기 파라미터 인터페이스
16
+ */
17
+ interface DrawPolygonParams {
18
+ /** Canvas 2D 렌더링 컨텍스트 */
19
+ ctx: CanvasRenderingContext2D;
20
+ /** 변환된 폴리곤 좌표 배열 (4차원: [MultiPolygon][Polygon][Point][x/y]) */
21
+ polygonOffsets: number[][][][];
22
+ /** 도넛 폴리곤 여부 (구멍이 있는 폴리곤) */
23
+ isDonutPolygon: boolean;
24
+ /** 채우기 색상 */
25
+ fillColor: string;
26
+ /** 테두리 색상 */
27
+ strokeColor: string;
28
+ /** 테두리 두께 */
29
+ lineWidth: number;
30
+ }
31
+ /**
32
+ * 폴리곤 그리기 헬퍼 함수 (도넛 폴리곤 지원)
33
+ *
34
+ * Canvas 2D Context를 사용하여 폴리곤을 그립니다.
35
+ * 도넛 폴리곤의 경우 evenodd fill rule을 사용하여 구멍을 처리합니다.
36
+ *
37
+ * @param params 폴리곤 그리기 파라미터
38
+ *
39
+ * @remarks
40
+ * - **도넛 폴리곤 처리**:
41
+ * - 외부 폴리곤과 내부 구멍들을 같은 path에 추가
42
+ * - `fill('evenodd')`를 사용하여 구멍 뚫기
43
+ * - **일반 폴리곤 처리**: 각 폴리곤 그룹을 개별적으로 그리기
44
+ * - **성능**: O(n), n은 폴리곤의 총 좌표 수
45
+ *
46
+ * @example
47
+ * ```typescript
48
+ * drawPolygon({
49
+ * ctx,
50
+ * polygonOffsets: [[[[100, 200], [200, 200], [200, 100], [100, 100]]]],
51
+ * isDonutPolygon: false,
52
+ * fillColor: 'rgba(255, 0, 0, 0.5)',
53
+ * strokeColor: 'rgba(255, 0, 0, 1)',
54
+ * lineWidth: 2
55
+ * });
56
+ * ```
57
+ */
58
+ export declare const drawPolygon: ({ ctx, fillColor, isDonutPolygon, lineWidth, polygonOffsets, strokeColor }: DrawPolygonParams) => void;
59
+ /**
60
+ * 폴리곤 Base 렌더링 함수 팩토리
61
+ *
62
+ * Base Layer에서 사용할 렌더링 함수를 생성합니다.
63
+ * 선택되지 않은 폴리곤만 렌더링하며, 선택된 항목은 Event Layer에서 처리됩니다.
64
+ *
65
+ * @template T 폴리곤 데이터의 추가 속성 타입
66
+ * @param baseFillColor 기본 폴리곤 채우기 색상
67
+ * @param baseStrokeColor 기본 폴리곤 테두리 색상
68
+ * @param baseLineWidth 기본 폴리곤 테두리 두께
69
+ * @returns Base Layer 렌더링 함수
70
+ *
71
+ * @remarks
72
+ * - 선택된 항목은 Event Layer에서 그려지므로 Base Layer에서는 스킵
73
+ * - 성능: O(n), n은 렌더링할 폴리곤 개수
74
+ * - 좌표 변환은 자동으로 캐싱되어 성능 최적화됨
75
+ *
76
+ * @example
77
+ * ```typescript
78
+ * const renderBase = renderPolygonBase(
79
+ * 'rgba(255, 100, 100, 0.5)',
80
+ * 'rgba(200, 50, 50, 0.8)',
81
+ * 2
82
+ * );
83
+ * ```
84
+ */
85
+ export declare const renderPolygonBase: <T = unknown>(baseFillColor: string, baseStrokeColor: string, baseLineWidth: number) => CustomRenderBase<T>;
86
+ /**
87
+ * 폴리곤 Event 렌더링 함수 팩토리
88
+ *
89
+ * Event Layer에서 사용할 렌더링 함수를 생성합니다.
90
+ * 선택된 항목, hover된 항목, 마지막 선택된 항목을 각각 다른 스타일로 렌더링합니다.
91
+ *
92
+ * @template T 폴리곤 데이터의 추가 속성 타입
93
+ * @param baseFillColor 기본 폴리곤 채우기 색상 (필수, fallback용)
94
+ * @param baseStrokeColor 기본 폴리곤 테두리 색상 (필수, fallback용)
95
+ * @param baseLineWidth 기본 폴리곤 테두리 두께 (필수, fallback용)
96
+ * @param selectedFillColor 선택된 폴리곤 채우기 색상 (선택, 기본값: baseFillColor)
97
+ * @param selectedStrokeColor 선택된 폴리곤 테두리 색상 (선택, 기본값: baseStrokeColor)
98
+ * @param selectedLineWidth 선택된 폴리곤 테두리 두께 (선택, 기본값: baseLineWidth)
99
+ * @param activeFillColor 마지막 선택된 폴리곤 채우기 색상 (선택, 기본값: selectedFillColor)
100
+ * @param activeStrokeColor 마지막 선택된 폴리곤 테두리 색상 (선택, 기본값: selectedStrokeColor)
101
+ * @param activeLineWidth 마지막 선택된 폴리곤 테두리 두께 (선택, 기본값: selectedLineWidth)
102
+ * @param hoveredFillColor Hover 시 폴리곤 채우기 색상 (선택, 기본값: selectedFillColor)
103
+ * @param hoveredStrokeColor Hover 시 폴리곤 테두리 색상 (선택, 기본값: selectedStrokeColor)
104
+ * @param hoveredLineWidth Hover 시 폴리곤 테두리 두께 (선택, 기본값: selectedLineWidth)
105
+ * @returns Event Layer 렌더링 함수
106
+ *
107
+ * @remarks
108
+ * - **렌더링 순서**: 선택된 항목 → 마지막 선택된 항목 → hover된 항목 (최상단)
109
+ * - **성능**: O(m), m은 선택된 항목 수 + hover된 항목 수
110
+ * - 좌표 변환은 자동으로 캐싱되어 성능 최적화됨
111
+ * - hover된 항목이 선택되어 있으면 active 스타일 적용
112
+ *
113
+ * @example
114
+ * ```typescript
115
+ * const renderEvent = renderPolygonEvent(
116
+ * 'rgba(255, 100, 100, 0.5)', // baseFillColor
117
+ * 'rgba(200, 50, 50, 0.8)', // baseStrokeColor
118
+ * 2, // baseLineWidth
119
+ * 'rgba(255, 193, 7, 0.7)', // selectedFillColor
120
+ * 'rgba(255, 152, 0, 1)', // selectedStrokeColor
121
+ * 4 // selectedLineWidth
122
+ * );
123
+ * ```
124
+ */
125
+ export declare const renderPolygonEvent: <T = unknown>(baseFillColor: string, baseStrokeColor: string, baseLineWidth: number, selectedFillColor: string | undefined, selectedStrokeColor: string | undefined, selectedLineWidth: number | undefined, activeFillColor: string | undefined, activeStrokeColor: string | undefined, activeLineWidth: number | undefined, hoveredFillColor: string | undefined, hoveredStrokeColor: string | undefined, hoveredLineWidth: number | undefined) => CustomRenderEvent<T>;
126
+ /**
127
+ * 폴리곤 Base 렌더링 함수 팩토리 (객체 방식)
128
+ *
129
+ * Base Layer에서 사용할 렌더링 함수를 생성합니다.
130
+ * renderStyle 객체를 사용하여 기본 스타일을 적용합니다.
131
+ *
132
+ * @template T 폴리곤 데이터의 추가 속성 타입
133
+ * @param renderStyle 폴리곤 스타일 객체
134
+ * @returns Base Layer 렌더링 함수
135
+ *
136
+ * @remarks
137
+ * - 선택된 항목은 Event Layer에서 그려지므로 Base Layer에서는 스킵
138
+ * - 성능: O(n), n은 렌더링할 폴리곤 개수
139
+ * - 좌표 변환은 자동으로 캐싱되어 성능 최적화됨
140
+ *
141
+ * @example
142
+ * ```typescript
143
+ * const renderBase = renderPolygonBaseWithObject<MyDataType>({
144
+ * base: { fillColor: 'rgba(255, 100, 100, 0.5)', strokeColor: 'rgba(200, 50, 50, 0.8)', lineWidth: 2 }
145
+ * });
146
+ * ```
147
+ */
148
+ export declare const renderPolygonBaseWithObject: <T = unknown>(renderStyle: PolygonStyleObject) => CustomRenderBase<T>;
149
+ /**
150
+ * 폴리곤 Event 렌더링 함수 팩토리 (객체 방식)
151
+ *
152
+ * Event Layer에서 사용할 렌더링 함수를 생성합니다.
153
+ * renderStyle 객체를 사용하여 개별 props 방식과 동일한 알고리즘으로 스타일을 적용합니다.
154
+ *
155
+ * @template T 폴리곤 데이터의 추가 속성 타입
156
+ * @param renderStyle 폴리곤 스타일 객체
157
+ * @returns Event Layer 렌더링 함수
158
+ *
159
+ * @remarks
160
+ * - **렌더링 순서**: 선택된 항목 → 마지막 선택된 항목 → hover된 항목 (최상단)
161
+ * - **성능**: O(m), m은 선택된 항목 수 + hover된 항목 수
162
+ * - 좌표 변환은 자동으로 캐싱되어 성능 최적화됨
163
+ * - **알고리즘**: 개별 props 방식과 동일
164
+ * - 기본값 설정: selected/active/hovered가 없으면 base 또는 상위 값 사용
165
+ * - 선택된 항목: selected 스타일
166
+ * - 마지막 선택된 항목 (호버 안 됨): active 스타일
167
+ * - 호버된 항목: 선택되어 있으면 active, 아니면 hovered 스타일
168
+ *
169
+ * @example
170
+ * ```typescript
171
+ * const renderEvent = renderPolygonEventWithObject<MyDataType>({
172
+ * base: { fillColor: 'rgba(255, 100, 100, 0.5)', strokeColor: 'rgba(200, 50, 50, 0.8)', lineWidth: 2 },
173
+ * selected: { fillColor: 'rgba(255, 193, 7, 0.7)', strokeColor: 'rgba(255, 152, 0, 1)', lineWidth: 4 },
174
+ * active: { fillColor: 'rgba(255, 152, 0, 0.8)', strokeColor: 'rgba(255, 87, 34, 1)', lineWidth: 5 },
175
+ * hovered: { fillColor: 'rgba(100, 150, 255, 0.8)', strokeColor: 'rgba(0, 100, 200, 1)', lineWidth: 3 }
176
+ * });
177
+ * ```
178
+ */
179
+ export declare const renderPolygonEventWithObject: <T = unknown>(renderStyle: PolygonStyleObject) => CustomRenderEvent<T>;
180
+ /**
181
+ * 폴리곤 Base 렌더링 함수 팩토리 (커스터마이징 방식)
182
+ *
183
+ * Base Layer에서 사용할 렌더링 함수를 생성합니다.
184
+ * customStyle 함수를 사용하여 각 폴리곤의 스타일을 자유롭게 커스터마이징합니다.
185
+ *
186
+ * @template T 폴리곤 데이터의 추가 속성 타입
187
+ * @param customStyle 폴리곤 스타일 커스터마이징 함수
188
+ * @returns Base Layer 렌더링 함수
189
+ *
190
+ * @remarks
191
+ * - 선택된 항목은 Event Layer에서 그려지므로 Base Layer에서는 스킵
192
+ * - 성능: O(n), n은 렌더링할 폴리곤 개수
193
+ * - 좌표 변환은 자동으로 캐싱되어 성능 최적화됨
194
+ *
195
+ * @example
196
+ * ```typescript
197
+ * const renderBase = renderPolygonBaseWithCustomStyle<MyDataType>(
198
+ * (item, context) => {
199
+ * if (item.someProperty > 100) {
200
+ * return { fillColor: 'red', strokeColor: 'darkred', lineWidth: 3 };
201
+ * }
202
+ * // 아무것도 반환하지 않으면 그리지 않음
203
+ * }
204
+ * );
205
+ * ```
206
+ */
207
+ export declare const renderPolygonBaseWithCustomStyle: <T = unknown>(customStyle: PolygonStyleCustomizer<T>) => CustomRenderBase<T>;
208
+ /**
209
+ * 폴리곤 Event 렌더링 함수 팩토리 (커스터마이징 방식)
210
+ *
211
+ * Event Layer에서 사용할 렌더링 함수를 생성합니다.
212
+ * customStyle 함수를 사용하여 각 폴리곤의 스타일을 자유롭게 커스터마이징합니다.
213
+ *
214
+ * @template T 폴리곤 데이터의 추가 속성 타입
215
+ * @param customStyle 폴리곤 스타일 커스터마이징 함수
216
+ * @returns Event Layer 렌더링 함수
217
+ *
218
+ * @remarks
219
+ * - **렌더링 순서**: 선택된 항목 → 마지막 선택된 항목 → hover된 항목 (최상단)
220
+ * - **성능**: O(m), m은 선택된 항목 수 + hover된 항목 수
221
+ * - 좌표 변환은 자동으로 캐싱되어 성능 최적화됨
222
+ *
223
+ * @example
224
+ * ```typescript
225
+ * const renderEvent = renderPolygonEventWithCustomStyle<MyDataType>(
226
+ * (item, context) => {
227
+ * if (context.isActive) {
228
+ * return { fillColor: 'yellow', strokeColor: 'orange', lineWidth: 5 };
229
+ * }
230
+ * if (context.isHovered) {
231
+ * return { fillColor: 'blue', strokeColor: 'darkblue', lineWidth: 3 };
232
+ * }
233
+ * if (context.isSelected) {
234
+ * return { fillColor: 'green', strokeColor: 'darkgreen', lineWidth: 4 };
235
+ * }
236
+ * // 아무것도 반환하지 않으면 그리지 않음
237
+ * }
238
+ * );
239
+ * ```
240
+ */
241
+ export declare const renderPolygonEventWithCustomStyle: <T = unknown>(customStyle: PolygonStyleCustomizer<T>) => CustomRenderEvent<T>;
242
+ /**
243
+ * 폴리곤 Base 렌더링 함수 팩토리 (하이브리드 방식: customStyle + 개별 props)
244
+ *
245
+ * Base Layer에서 사용할 렌더링 함수를 생성합니다.
246
+ * customStyle이 제공되면 우선적으로 사용하며, null/undefined를 반환하면 개별 props로 정의된 기본 스타일을 사용합니다.
247
+ *
248
+ * @template T 폴리곤 데이터의 추가 속성 타입
249
+ * @param customStyle 폴리곤 스타일 커스터마이징 함수 (선택)
250
+ * @param baseFillColor 기본 폴리곤 채우기 색상 (fallback용)
251
+ * @param baseStrokeColor 기본 폴리곤 테두리 색상 (fallback용)
252
+ * @param baseLineWidth 기본 폴리곤 테두리 두께 (fallback용)
253
+ * @returns Base Layer 렌더링 함수
254
+ */
255
+ export declare const renderPolygonBaseWithHybrid: <T = unknown>(customStyle: PolygonStyleCustomizer<T> | undefined, baseFillColor: string, baseStrokeColor: string, baseLineWidth: number) => CustomRenderBase<T>;
256
+ /**
257
+ * 폴리곤 Event 렌더링 함수 팩토리 (하이브리드 방식: customStyle + 개별 props)
258
+ *
259
+ * Event Layer에서 사용할 렌더링 함수를 생성합니다.
260
+ * customStyle이 제공되면 우선적으로 사용하며, null/undefined를 반환하면 개별 props로 정의된 기본 스타일을 사용합니다.
261
+ *
262
+ * @template T 폴리곤 데이터의 추가 속성 타입
263
+ * @param customStyle 폴리곤 스타일 커스터마이징 함수 (선택)
264
+ * @param baseFillColor 기본 폴리곤 채우기 색상 (fallback용)
265
+ * @param baseStrokeColor 기본 폴리곤 테두리 색상 (fallback용)
266
+ * @param baseLineWidth 기본 폴리곤 테두리 두께 (fallback용)
267
+ * @param selectedFillColor 선택된 폴리곤 채우기 색상 (fallback용)
268
+ * @param selectedStrokeColor 선택된 폴리곤 테두리 색상 (fallback용)
269
+ * @param selectedLineWidth 선택된 폴리곤 테두리 두께 (fallback용)
270
+ * @param activeFillColor 마지막 선택된 폴리곤 채우기 색상 (fallback용)
271
+ * @param activeStrokeColor 마지막 선택된 폴리곤 테두리 색상 (fallback용)
272
+ * @param activeLineWidth 마지막 선택된 폴리곤 테두리 두께 (fallback용)
273
+ * @param hoveredFillColor Hover 시 폴리곤 채우기 색상 (fallback용)
274
+ * @param hoveredStrokeColor Hover 시 폴리곤 테두리 색상 (fallback용)
275
+ * @param hoveredLineWidth Hover 시 폴리곤 테두리 두께 (fallback용)
276
+ * @returns Event Layer 렌더링 함수
277
+ */
278
+ export declare const renderPolygonEventWithHybrid: <T = unknown>(customStyle: PolygonStyleCustomizer<T> | undefined, baseFillColor: string, baseStrokeColor: string, baseLineWidth: number, selectedFillColor: string | undefined, selectedStrokeColor: string | undefined, selectedLineWidth: number | undefined, activeFillColor: string | undefined, activeStrokeColor: string | undefined, activeLineWidth: number | undefined, hoveredFillColor: string | undefined, hoveredStrokeColor: string | undefined, hoveredLineWidth: number | undefined) => CustomRenderEvent<T>;
279
+ /**
280
+ * 폴리곤 Base 렌더링 함수 팩토리 (하이브리드 방식: customStyle + renderStyle)
281
+ *
282
+ * Base Layer에서 사용할 렌더링 함수를 생성합니다.
283
+ * customStyle이 제공되면 우선적으로 사용하며, null/undefined를 반환하면 renderStyle로 정의된 기본 스타일을 사용합니다.
284
+ *
285
+ * @template T 폴리곤 데이터의 추가 속성 타입
286
+ * @param customStyle 폴리곤 스타일 커스터마이징 함수 (선택)
287
+ * @param renderStyle 폴리곤 스타일 객체 (fallback용)
288
+ * @returns Base Layer 렌더링 함수
289
+ */
290
+ export declare const renderPolygonBaseWithHybridObject: <T = unknown>(customStyle: PolygonStyleCustomizer<T> | undefined, renderStyle: PolygonStyleObject) => CustomRenderBase<T>;
291
+ /**
292
+ * 폴리곤 Event 렌더링 함수 팩토리 (하이브리드 방식: customStyle + renderStyle)
293
+ *
294
+ * Event Layer에서 사용할 렌더링 함수를 생성합니다.
295
+ * customStyle이 제공되면 우선적으로 사용하며, null/undefined를 반환하면 renderStyle로 정의된 기본 스타일을 사용합니다.
296
+ *
297
+ * @template T 폴리곤 데이터의 추가 속성 타입
298
+ * @param customStyle 폴리곤 스타일 커스터마이징 함수 (선택)
299
+ * @param renderStyle 폴리곤 스타일 객체 (fallback용)
300
+ * @returns Event Layer 렌더링 함수
301
+ */
302
+ export declare const renderPolygonEventWithHybridObject: <T = unknown>(customStyle: PolygonStyleCustomizer<T> | undefined, renderStyle: PolygonStyleObject) => CustomRenderEvent<T>;
303
+ export {};