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