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