1/*
2 * Copyright (c) 2021-2023 Huawei Device Co., Ltd.
3 * Licensed under the Apache License, Version 2.0 (the "License");
4 * you may not use this file except in compliance with the License.
5 * You may obtain a copy of the License at
6 *
7 *     http://www.apache.org/licenses/LICENSE-2.0
8 *
9 * Unless required by applicable law or agreed to in writing, software
10 * distributed under the License is distributed on an "AS IS" BASIS,
11 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 * See the License for the specific language governing permissions and
13 * limitations under the License.
14 */
15
16/**
17 * @file
18 * @kit ArkUI
19 */
20
21/**
22 * Define options used to construct a polygon.
23 *
24 * @interface PolygonOptions
25 * @syscap SystemCapability.ArkUI.ArkUI.Full
26 * @crossplatform
27 * @form
28 * @atomicservice
29 * @since 14
30 */
31declare interface PolygonOptions {
32  /**
33   * Polygon width.
34   *
35   * @type { ?(string | number) }
36   * @syscap SystemCapability.ArkUI.ArkUI.Full
37   * @since 7
38   */
39  /**
40   * Polygon width.
41   *
42   * @type { ?(string | number) }
43   * @syscap SystemCapability.ArkUI.ArkUI.Full
44   * @form
45   * @since 9
46   */
47  /**
48   * Polygon width.
49   *
50   * @type { ?(string | number) }
51   * @syscap SystemCapability.ArkUI.ArkUI.Full
52   * @crossplatform
53   * @form
54   * @since 10
55   */
56  /**
57   * Polygon width.
58   *
59   * @type { ?(string | number) }
60   * @syscap SystemCapability.ArkUI.ArkUI.Full
61   * @crossplatform
62   * @form
63   * @atomicservice
64   * @since 11
65   */
66  width?: string | number;
67
68  /**
69   * Polygon height.
70   *
71   * @type { ?(string | number) }
72   * @syscap SystemCapability.ArkUI.ArkUI.Full
73   * @since 7
74   */
75  /**
76   * Polygon height.
77   *
78   * @type { ?(string | number) }
79   * @syscap SystemCapability.ArkUI.ArkUI.Full
80   * @form
81   * @since 9
82   */
83  /**
84   * Polygon height.
85   *
86   * @type { ?(string | number) }
87   * @syscap SystemCapability.ArkUI.ArkUI.Full
88   * @crossplatform
89   * @form
90   * @since 10
91   */
92  /**
93   * Polygon height.
94   *
95   * @type { ?(string | number) }
96   * @syscap SystemCapability.ArkUI.ArkUI.Full
97   * @crossplatform
98   * @form
99   * @atomicservice
100   * @since 11
101   */
102  height?: string | number
103}
104
105/**
106 * Provides the polygon drawing interface.
107 *
108 * @interface PolygonInterface
109 * @syscap SystemCapability.ArkUI.ArkUI.Full
110 * @since 7
111 */
112/**
113 * Provides the polygon drawing interface.
114 *
115 * @interface PolygonInterface
116 * @syscap SystemCapability.ArkUI.ArkUI.Full
117 * @form
118 * @since 9
119 */
120/**
121 * Provides the polygon drawing interface.
122 *
123 * @interface PolygonInterface
124 * @syscap SystemCapability.ArkUI.ArkUI.Full
125 * @crossplatform
126 * @form
127 * @since 10
128 */
129/**
130 * Provides the polygon drawing interface.
131 *
132 * @interface PolygonInterface
133 * @syscap SystemCapability.ArkUI.ArkUI.Full
134 * @crossplatform
135 * @form
136 * @atomicservice
137 * @since 11
138 */
139interface PolygonInterface {
140  /**
141   * Uses new to create Polygon.
142   * 
143   * @since 7
144   */
145  /**
146   * Uses new to create Polygon.
147   * 
148   * @syscap SystemCapability.ArkUI.ArkUI.Full
149   * @form
150   * @since 9
151   */
152  /**
153   * Uses new to create Polygon.
154   * 
155   * @syscap SystemCapability.ArkUI.ArkUI.Full
156   * @crossplatform
157   * @form
158   * @since 10
159   */
160  /**
161   * Uses new to create Polygon.
162   *
163   * @syscap SystemCapability.ArkUI.ArkUI.Full
164   * @crossplatform
165   * @form
166   * @atomicservice
167   * @since 11
168   */
169  /**
170   * Uses new to create Polygon.
171   *
172   * @param { PolygonOptions } [options] - Polygon options
173   * @returns { PolygonAttribute }
174   * @syscap SystemCapability.ArkUI.ArkUI.Full
175   * @crossplatform
176   * @form
177   * @atomicservice
178   * @since 14
179   */
180  new (options?: PolygonOptions): PolygonAttribute;
181
182  /**
183   * Called when drawing a polygon.
184   *
185   * @param { object } value
186   * @returns { PolygonAttribute }
187   * @syscap SystemCapability.ArkUI.ArkUI.Full
188   * @since 7
189   */
190  /**
191   * Called when drawing a polygon.
192   *
193   * @param { object } value
194   * @returns { PolygonAttribute }
195   * @syscap SystemCapability.ArkUI.ArkUI.Full
196   * @form
197   * @since 9
198   */
199  /**
200   * Called when drawing a polygon.
201   *
202   * @param { object } value
203   * @returns { PolygonAttribute }
204   * @syscap SystemCapability.ArkUI.ArkUI.Full
205   * @crossplatform
206   * @form
207   * @since 10
208   */
209  /**
210   * Called when drawing a polygon.
211   *
212   * @param { object } value
213   * @returns { PolygonAttribute }
214   * @syscap SystemCapability.ArkUI.ArkUI.Full
215   * @crossplatform
216   * @form
217   * @atomicservice
218   * @since 11
219   */
220  /**
221   * Called when drawing a polygon.
222   *
223   * @param { PolygonOptions } [options] - Polygon options
224   * @returns { PolygonAttribute }
225   * @syscap SystemCapability.ArkUI.ArkUI.Full
226   * @crossplatform
227   * @form
228   * @atomicservice
229   * @since 14
230   */
231  (options?: PolygonOptions): PolygonAttribute;
232}
233
234/**
235 * Provides attribute for Polygon.
236 *
237 * @extends CommonShapeMethod<PolygonAttribute>
238 * @syscap SystemCapability.ArkUI.ArkUI.Full
239 * @since 7
240 */
241/**
242 * Provides attribute for Polygon.
243 *
244 * @extends CommonShapeMethod<PolygonAttribute>
245 * @syscap SystemCapability.ArkUI.ArkUI.Full
246 * @form
247 * @since 9
248 */
249/**
250 * Provides attribute for Polygon.
251 *
252 * @extends CommonShapeMethod<PolygonAttribute>
253 * @syscap SystemCapability.ArkUI.ArkUI.Full
254 * @crossplatform
255 * @form
256 * @since 10
257 */
258/**
259 * Provides attribute for Polygon.
260 *
261 * @extends CommonShapeMethod<PolygonAttribute>
262 * @syscap SystemCapability.ArkUI.ArkUI.Full
263 * @crossplatform
264 * @form
265 * @atomicservice
266 * @since 11
267 */
268declare class PolygonAttribute extends CommonShapeMethod<PolygonAttribute> {
269  /**
270   * Called when the vertex coordinate list of a polygon is set.
271   *
272   * @param { Array<any> } value
273   * @returns { PolygonAttribute }
274   * @syscap SystemCapability.ArkUI.ArkUI.Full
275   * @since 7
276   */
277  /**
278   * Called when the vertex coordinate list of a polygon is set.
279   *
280   * @param { Array<any> } value
281   * @returns { PolygonAttribute }
282   * @syscap SystemCapability.ArkUI.ArkUI.Full
283   * @form
284   * @since 9
285   */
286  /**
287   * Called when the vertex coordinate list of a polygon is set.
288   *
289   * @param { Array<any> } value
290   * @returns { PolygonAttribute }
291   * @syscap SystemCapability.ArkUI.ArkUI.Full
292   * @crossplatform
293   * @form
294   * @since 10
295   */
296  /**
297   * Called when the vertex coordinate list of a polygon is set.
298   *
299   * @param { Array<any> } value
300   * @returns { PolygonAttribute }
301   * @syscap SystemCapability.ArkUI.ArkUI.Full
302   * @crossplatform
303   * @form
304   * @atomicservice
305   * @since 11
306   */
307  points(value: Array<any>): PolygonAttribute;
308}
309
310/**
311 * Defines Polygon Component.
312 *
313 * @syscap SystemCapability.ArkUI.ArkUI.Full
314 * @since 7
315 */
316/**
317 * Defines CheckboxGroup Component.
318 *
319 * @syscap SystemCapability.ArkUI.ArkUI.Full
320 * @form
321 * @since 9
322 */
323/**
324 * Defines CheckboxGroup Component.
325 *
326 * @syscap SystemCapability.ArkUI.ArkUI.Full
327 * @crossplatform
328 * @form
329 * @since 10
330 */
331/**
332 * Defines CheckboxGroup Component.
333 *
334 * @syscap SystemCapability.ArkUI.ArkUI.Full
335 * @crossplatform
336 * @form
337 * @atomicservice
338 * @since 11
339 */
340declare const Polygon: PolygonInterface;
341
342/**
343 * Defines Polygon Component instance.
344 *
345 * @syscap SystemCapability.ArkUI.ArkUI.Full
346 * @since 7
347 */
348/**
349 * Defines Polygon Component instance.
350 *
351 * @syscap SystemCapability.ArkUI.ArkUI.Full
352 * @form
353 * @since 9
354 */
355/**
356 * Defines Polygon Component instance.
357 *
358 * @syscap SystemCapability.ArkUI.ArkUI.Full
359 * @crossplatform
360 * @form
361 * @since 10
362 */
363/**
364 * Defines Polygon Component instance.
365 *
366 * @syscap SystemCapability.ArkUI.ArkUI.Full
367 * @crossplatform
368 * @form
369 * @atomicservice
370 * @since 11
371 */
372declare const PolygonInstance: PolygonAttribute;
373