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 polyline.
23 *
24 * @interface PolylineOptions
25 * @syscap SystemCapability.ArkUI.ArkUI.Full
26 * @crossplatform
27 * @form
28 * @atomicservice
29 * @since 14
30 */
31declare interface PolylineOptions {
32  /**
33   * Polyline width.
34   *
35   * @type { ?(string | number) }
36   * @syscap SystemCapability.ArkUI.ArkUI.Full
37   * @since 7
38   */
39  /**
40   * Polyline width.
41   *
42   * @type { ?(string | number) }
43   * @syscap SystemCapability.ArkUI.ArkUI.Full
44   * @form
45   * @since 9
46   */
47  /**
48   * Polyline width.
49   *
50   * @type { ?(string | number) }
51   * @syscap SystemCapability.ArkUI.ArkUI.Full
52   * @crossplatform
53   * @form
54   * @since 10
55   */
56  /**
57   * Polyline 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   * Polyline height.
70   *
71   * @type { ?(string | number) }
72   * @syscap SystemCapability.ArkUI.ArkUI.Full
73   * @since 7
74   */
75  /**
76   * Polyline height.
77   *
78   * @type { ?(string | number) }
79   * @syscap SystemCapability.ArkUI.ArkUI.Full
80   * @form
81   * @since 9
82   */
83  /**
84   * Polyline height.
85   *
86   * @type { ?(string | number) }
87   * @syscap SystemCapability.ArkUI.ArkUI.Full
88   * @crossplatform
89   * @form
90   * @since 10
91   */
92  /**
93   * Polyline 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 an interface for drawing polylines.
107 *
108 * @interface PolylineInterface
109 * @syscap SystemCapability.ArkUI.ArkUI.Full
110 * @since 7
111 */
112/**
113 * Provides an interface for drawing polylines.
114 *
115 * @interface PolylineInterface
116 * @syscap SystemCapability.ArkUI.ArkUI.Full
117 * @form
118 * @since 9
119 */
120/**
121 * Provides an interface for drawing polylines.
122 *
123 * @interface PolylineInterface
124 * @syscap SystemCapability.ArkUI.ArkUI.Full
125 * @crossplatform
126 * @form
127 * @since 10
128 */
129/**
130 * Provides an interface for drawing polylines.
131 *
132 * @interface PolylineInterface
133 * @syscap SystemCapability.ArkUI.ArkUI.Full
134 * @crossplatform
135 * @form
136 * @atomicservice
137 * @since 11
138 */
139interface PolylineInterface {
140  /**
141   * Uses new to create Polyline.
142   * 
143   * @syscap SystemCapability.ArkUI.ArkUI.Full
144   * @since 7
145   */
146  /**
147   * Uses new to create Polyline.
148   * 
149   * @syscap SystemCapability.ArkUI.ArkUI.Full
150   * @form
151   * @since 9
152   */
153  /**
154   * Uses new to create Polyline.
155   * 
156   * @syscap SystemCapability.ArkUI.ArkUI.Full
157   * @crossplatform
158   * @form
159   * @since 10
160   */
161  /**
162   * Uses new to create Polyline.
163   * 
164   * @syscap SystemCapability.ArkUI.ArkUI.Full
165   * @crossplatform
166   * @form
167   * @atomicservice
168   * @since 11
169   */
170  /**
171   * Uses new to create Polyline.
172   *
173   * @param { PolylineOptions } [options] - Poly line options
174   * @returns { PolylineAttribute }
175   * @syscap SystemCapability.ArkUI.ArkUI.Full
176   * @crossplatform
177   * @form
178   * @atomicservice
179   * @since 14
180   */
181  new (options?: PolylineOptions): PolylineAttribute;
182
183  /**
184   * Called when using the draw fold.
185   *
186   * @param { object } value
187   * @returns { PolylineAttribute }
188   * @syscap SystemCapability.ArkUI.ArkUI.Full
189   * @since 7
190   */
191  /**
192   * Called when using the draw fold.
193   *
194   * @param { object } value
195   * @returns { PolylineAttribute }
196   * @syscap SystemCapability.ArkUI.ArkUI.Full
197   * @form
198   * @since 9
199   */
200  /**
201   * Called when using the draw fold.
202   *
203   * @param { object } value
204   * @returns { PolylineAttribute }
205   * @syscap SystemCapability.ArkUI.ArkUI.Full
206   * @crossplatform
207   * @form
208   * @since 10
209   */
210  /**
211   * Called when using the draw fold.
212   *
213   * @param { object } value
214   * @returns { PolylineAttribute }
215   * @syscap SystemCapability.ArkUI.ArkUI.Full
216   * @crossplatform
217   * @form
218   * @atomicservice
219   * @since 11
220   */
221  /**
222   * Called when using the draw fold.
223   *
224   * @param { PolylineOptions } [options] - Poly line options
225   * @returns { PolylineAttribute }
226   * @syscap SystemCapability.ArkUI.ArkUI.Full
227   * @crossplatform
228   * @form
229   * @atomicservice
230   * @since 14
231   */
232  (options?: PolylineOptions): PolylineAttribute;
233}
234
235/**
236 * @extends CommonShapeMethod<PolylineAttribute>
237 * @syscap SystemCapability.ArkUI.ArkUI.Full
238 * @since 7
239 */
240/**
241 * @extends CommonShapeMethod<PolylineAttribute>
242 * @syscap SystemCapability.ArkUI.ArkUI.Full
243 * @form
244 * @since 9
245 */
246/**
247 * @extends CommonShapeMethod<PolylineAttribute>
248 * @syscap SystemCapability.ArkUI.ArkUI.Full
249 * @crossplatform
250 * @form
251 * @since 10
252 */
253/**
254 * @extends CommonShapeMethod<PolylineAttribute>
255 * @syscap SystemCapability.ArkUI.ArkUI.Full
256 * @crossplatform
257 * @form
258 * @atomicservice
259 * @since 11
260 */
261declare class PolylineAttribute extends CommonShapeMethod<PolylineAttribute> {
262  /**
263   * Called when the polyline is set to pass through the coordinate point list.
264   *
265   * @param { Array<any> } value
266   * @returns { PolylineAttribute }
267   * @syscap SystemCapability.ArkUI.ArkUI.Full
268   * @since 7
269   */
270  /**
271   * Called when the polyline is set to pass through the coordinate point list.
272   *
273   * @param { Array<any> } value
274   * @returns { PolylineAttribute }
275   * @syscap SystemCapability.ArkUI.ArkUI.Full
276   * @form
277   * @since 9
278   */
279  /**
280   * Called when the polyline is set to pass through the coordinate point list.
281   *
282   * @param { Array<any> } value
283   * @returns { PolylineAttribute }
284   * @syscap SystemCapability.ArkUI.ArkUI.Full
285   * @crossplatform
286   * @form
287   * @since 10
288   */
289  /**
290   * Called when the polyline is set to pass through the coordinate point list.
291   *
292   * @param { Array<any> } value
293   * @returns { PolylineAttribute }
294   * @syscap SystemCapability.ArkUI.ArkUI.Full
295   * @crossplatform
296   * @form
297   * @atomicservice
298   * @since 11
299   */
300  points(value: Array<any>): PolylineAttribute;
301}
302
303/**
304 * Defines Polyline Component.
305 *
306 * @syscap SystemCapability.ArkUI.ArkUI.Full
307 * @since 7
308 */
309/**
310 * Defines Polyline Component.
311 *
312 * @syscap SystemCapability.ArkUI.ArkUI.Full
313 * @form
314 * @since 9
315 */
316/**
317 * Defines Polyline Component.
318 *
319 * @syscap SystemCapability.ArkUI.ArkUI.Full
320 * @crossplatform
321 * @form
322 * @since 10
323 */
324/**
325 * Defines Polyline Component.
326 *
327 * @syscap SystemCapability.ArkUI.ArkUI.Full
328 * @crossplatform
329 * @form
330 * @atomicservice
331 * @since 11
332 */
333declare const Polyline: PolylineInterface;
334
335/**
336 * Defines Polyline Component instance.
337 *
338 * @syscap SystemCapability.ArkUI.ArkUI.Full
339 * @since 7
340 */
341/**
342 * Defines Polyline Component instance.
343 *
344 * @syscap SystemCapability.ArkUI.ArkUI.Full
345 * @form
346 * @since 9
347 */
348/**
349 * Defines Polyline Component instance.
350 *
351 * @syscap SystemCapability.ArkUI.ArkUI.Full
352 * @crossplatform
353 * @form
354 * @since 10
355 */
356/**
357 * Defines Polyline Component instance.
358 *
359 * @syscap SystemCapability.ArkUI.ArkUI.Full
360 * @crossplatform
361 * @form
362 * @atomicservice
363 * @since 11
364 */
365declare const PolylineInstance: PolylineAttribute;
366