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 row.
23 *
24 * @interface RowOptions
25 * @syscap SystemCapability.ArkUI.ArkUI.Full
26 * @crossplatform
27 * @form
28 * @atomicservice
29 * @since 13
30 */
31declare interface RowOptions {
32  /**
33   * Row spacing.
34   *
35   * @type { ?(string | number) }
36   * @syscap SystemCapability.ArkUI.ArkUI.Full
37   * @since 7
38   */
39  /**
40   * Row spacing.
41   *
42   * @type { ?(string | number) }
43   * @syscap SystemCapability.ArkUI.ArkUI.Full
44   * @form
45   * @since 9
46   */
47  /**
48   * Row spacing.
49   *
50   * @type { ?(string | number) }
51   * @syscap SystemCapability.ArkUI.ArkUI.Full
52   * @crossplatform
53   * @form
54   * @since 10
55   */
56  /**
57   * Row spacing.
58   *
59   * @type { ?(string | number) }
60   * @syscap SystemCapability.ArkUI.ArkUI.Full
61   * @crossplatform
62   * @form
63   * @atomicservice
64   * @since 11
65   */
66  space?: string | number;
67}
68
69/**
70 * The components are laid out horizontally
71 *
72 * @interface RowInterface
73 * @syscap SystemCapability.ArkUI.ArkUI.Full
74 * @since 7
75 */
76/**
77 * The components are laid out horizontally
78 *
79 * @interface RowInterface
80 * @syscap SystemCapability.ArkUI.ArkUI.Full
81 * @form
82 * @since 9
83 */
84/**
85 * The components are laid out horizontally
86 *
87 * @interface RowInterface
88 * @syscap SystemCapability.ArkUI.ArkUI.Full
89 * @crossplatform
90 * @form
91 * @since 10
92 */
93/**
94 * The components are laid out horizontally
95 *
96 * @interface RowInterface
97 * @syscap SystemCapability.ArkUI.ArkUI.Full
98 * @crossplatform
99 * @form
100 * @atomicservice
101 * @since 11
102 */
103interface RowInterface {
104  /**
105   * Called when the layout is set in the horizontal direction.
106   *
107   * @param { object } value
108   * @returns { RowAttribute }
109   * @syscap SystemCapability.ArkUI.ArkUI.Full
110   * @since 7
111   */
112  /**
113   * Called when the layout is set in the horizontal direction.
114   *
115   * @param { object } value
116   * @returns { RowAttribute }
117   * @syscap SystemCapability.ArkUI.ArkUI.Full
118   * @form
119   * @since 9
120   */
121  /**
122   * Called when the layout is set in the horizontal direction.
123   *
124   * @param { object } value
125   * @returns { RowAttribute }
126   * @syscap SystemCapability.ArkUI.ArkUI.Full
127   * @crossplatform
128   * @form
129   * @since 10
130   */
131  /**
132   * Called when the layout is set in the horizontal direction.
133   *
134   * @param { object } value
135   * @returns { RowAttribute }
136   * @syscap SystemCapability.ArkUI.ArkUI.Full
137   * @crossplatform
138   * @form
139   * @atomicservice
140   * @since 11
141   */
142  /**
143   * Called when the layout is set in the horizontal direction.
144   *
145   * @param { ?RowOptions } options - row options
146   * @returns { RowAttribute }
147   * @syscap SystemCapability.ArkUI.ArkUI.Full
148   * @crossplatform
149   * @form
150   * @atomicservice
151   * @since 13
152   */
153  (options?: RowOptions): RowAttribute;
154}
155
156/**
157 * Defines the row attribute functions.
158 *
159 * @extends CommonMethod<RowAttribute>
160 * @syscap SystemCapability.ArkUI.ArkUI.Full
161 * @since 7
162 */
163/**
164 * Defines the row attribute functions.
165 *
166 * @extends CommonMethod<RowAttribute>
167 * @syscap SystemCapability.ArkUI.ArkUI.Full
168 * @form
169 * @since 9
170 */
171/**
172 * Defines the row attribute functions.
173 *
174 * @extends CommonMethod<RowAttribute>
175 * @syscap SystemCapability.ArkUI.ArkUI.Full
176 * @crossplatform
177 * @form
178 * @since 10
179 */
180/**
181 * Defines the row attribute functions.
182 *
183 * @extends CommonMethod<RowAttribute>
184 * @syscap SystemCapability.ArkUI.ArkUI.Full
185 * @crossplatform
186 * @form
187 * @atomicservice
188 * @since 11
189 */
190declare class RowAttribute extends CommonMethod<RowAttribute> {
191  /**
192   * Called when the vertical alignment is set.
193   *
194   * @param { VerticalAlign } value
195   * @returns { RowAttribute }
196   * @syscap SystemCapability.ArkUI.ArkUI.Full
197   * @since 7
198   */
199  /**
200   * Called when the vertical alignment is set.
201   *
202   * @param { VerticalAlign } value
203   * @returns { RowAttribute }
204   * @syscap SystemCapability.ArkUI.ArkUI.Full
205   * @form
206   * @since 9
207   */
208  /**
209   * Called when the vertical alignment is set.
210   *
211   * @param { VerticalAlign } value
212   * @returns { RowAttribute }
213   * @syscap SystemCapability.ArkUI.ArkUI.Full
214   * @crossplatform
215   * @form
216   * @since 10
217   */
218  /**
219   * Called when the vertical alignment is set.
220   *
221   * @param { VerticalAlign } value
222   * @returns { RowAttribute }
223   * @syscap SystemCapability.ArkUI.ArkUI.Full
224   * @crossplatform
225   * @form
226   * @atomicservice
227   * @since 11
228   */
229  alignItems(value: VerticalAlign): RowAttribute;
230
231  /**
232   * Called when the horizontal alignment is set.
233   *
234   * @param { FlexAlign } value
235   * @returns { RowAttribute }
236   * @syscap SystemCapability.ArkUI.ArkUI.Full
237   * @since 8
238   */
239  /**
240   * Called when the horizontal alignment is set.
241   *
242   * @param { FlexAlign } value
243   * @returns { RowAttribute }
244   * @syscap SystemCapability.ArkUI.ArkUI.Full
245   * @form
246   * @since 9
247   */
248  /**
249   * Called when the horizontal alignment is set.
250   *
251   * @param { FlexAlign } value
252   * @returns { RowAttribute }
253   * @syscap SystemCapability.ArkUI.ArkUI.Full
254   * @crossplatform
255   * @form
256   * @since 10
257   */
258  /**
259   * Called when the horizontal alignment is set.
260   *
261   * @param { FlexAlign } value
262   * @returns { RowAttribute }
263   * @syscap SystemCapability.ArkUI.ArkUI.Full
264   * @crossplatform
265   * @form
266   * @atomicservice
267   * @since 11
268   */
269  justifyContent(value: FlexAlign): RowAttribute;
270  /**
271   * Defines the PointLight
272   *
273   * @param { PointLightStyle } value - The point light style.
274   * @returns { RowAttribute } The attribute of the row.
275   * @syscap SystemCapability.ArkUI.ArkUI.Full
276   * @systemapi
277   * @since 11
278   */
279  pointLight(value: PointLightStyle): RowAttribute;
280  /**
281   * Called when the Main-Axis's direction is set reversed or not
282   *
283   * @param { Optional<boolean> } isReversed - If the main axis is reversed.
284   * @returns { RowAttribute } The attribute of the row.
285   * @syscap SystemCapability.ArkUI.ArkUI.Full
286   * @crossplatform
287   * @form
288   * @atomicservice
289   * @since 12
290   */
291  reverse(isReversed: Optional<boolean>): RowAttribute;
292}
293
294/**
295 * Defines Row Component.
296 *
297 * @syscap SystemCapability.ArkUI.ArkUI.Full
298 * @since 7
299 */
300/**
301 * Defines Row Component.
302 *
303 * @syscap SystemCapability.ArkUI.ArkUI.Full
304 * @form
305 * @since 9
306 */
307/**
308 * Defines Row Component.
309 *
310 * @syscap SystemCapability.ArkUI.ArkUI.Full
311 * @crossplatform
312 * @form
313 * @since 10
314 */
315/**
316 * Defines Row Component.
317 *
318 * @syscap SystemCapability.ArkUI.ArkUI.Full
319 * @crossplatform
320 * @form
321 * @atomicservice
322 * @since 11
323 */
324declare const Row: RowInterface;
325
326/**
327 * Defines Row Component instance.
328 *
329 * @syscap SystemCapability.ArkUI.ArkUI.Full
330 * @since 7
331 */
332/**
333 * Defines Row Component instance.
334 *
335 * @syscap SystemCapability.ArkUI.ArkUI.Full
336 * @form
337 * @since 9
338 */
339/**
340 * Defines Row Component instance.
341 *
342 * @syscap SystemCapability.ArkUI.ArkUI.Full
343 * @crossplatform
344 * @form
345 * @since 10
346 */
347/**
348 * Defines Row Component instance.
349 *
350 * @syscap SystemCapability.ArkUI.ArkUI.Full
351 * @crossplatform
352 * @form
353 * @atomicservice
354 * @since 11
355 */
356declare const RowInstance: RowAttribute;
357