161847f8eSopenharmony_ci/*
261847f8eSopenharmony_ci * Copyright (c) 2021-2023 Huawei Device Co., Ltd.
361847f8eSopenharmony_ci * Licensed under the Apache License, Version 2.0 (the "License");
461847f8eSopenharmony_ci * you may not use this file except in compliance with the License.
561847f8eSopenharmony_ci * You may obtain a copy of the License at
661847f8eSopenharmony_ci *
761847f8eSopenharmony_ci *     http://www.apache.org/licenses/LICENSE-2.0
861847f8eSopenharmony_ci *
961847f8eSopenharmony_ci * Unless required by applicable law or agreed to in writing, software
1061847f8eSopenharmony_ci * distributed under the License is distributed on an "AS IS" BASIS,
1161847f8eSopenharmony_ci * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1261847f8eSopenharmony_ci * See the License for the specific language governing permissions and
1361847f8eSopenharmony_ci * limitations under the License.
1461847f8eSopenharmony_ci */
1561847f8eSopenharmony_ci
1661847f8eSopenharmony_ci/**
1761847f8eSopenharmony_ci * @file
1861847f8eSopenharmony_ci * @kit ArkUI
1961847f8eSopenharmony_ci */
2061847f8eSopenharmony_ci
2161847f8eSopenharmony_ci/**
2261847f8eSopenharmony_ci * The options to help grid layout
2361847f8eSopenharmony_ci *
2461847f8eSopenharmony_ci * @interface GridLayoutOptions
2561847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
2661847f8eSopenharmony_ci * @crossplatform
2761847f8eSopenharmony_ci * @since 10
2861847f8eSopenharmony_ci */
2961847f8eSopenharmony_ci/**
3061847f8eSopenharmony_ci * The options to help grid layout
3161847f8eSopenharmony_ci *
3261847f8eSopenharmony_ci * @interface GridLayoutOptions
3361847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
3461847f8eSopenharmony_ci * @crossplatform
3561847f8eSopenharmony_ci * @atomicservice
3661847f8eSopenharmony_ci * @since 11
3761847f8eSopenharmony_ci */
3861847f8eSopenharmony_cideclare interface GridLayoutOptions {
3961847f8eSopenharmony_ci  /**
4061847f8eSopenharmony_ci   * The size of most grid items, in [rows, columns], generally [1, 1]
4161847f8eSopenharmony_ci   *
4261847f8eSopenharmony_ci   * @type { [number, number] } regularSize
4361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
4461847f8eSopenharmony_ci   * @crossplatform
4561847f8eSopenharmony_ci   * @since 10
4661847f8eSopenharmony_ci   */
4761847f8eSopenharmony_ci  /**
4861847f8eSopenharmony_ci   * The size of most grid items, in [rows, columns], generally [1, 1]
4961847f8eSopenharmony_ci   *
5061847f8eSopenharmony_ci   * @type { [number, number] } regularSize
5161847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
5261847f8eSopenharmony_ci   * @crossplatform
5361847f8eSopenharmony_ci   * @atomicservice
5461847f8eSopenharmony_ci   * @since 11
5561847f8eSopenharmony_ci   */
5661847f8eSopenharmony_ci  regularSize: [number, number];
5761847f8eSopenharmony_ci
5861847f8eSopenharmony_ci  /**
5961847f8eSopenharmony_ci   * The indexes of grid items with irregular size.
6061847f8eSopenharmony_ci   *
6161847f8eSopenharmony_ci   * @type { ?number[] } irregularIndexes
6261847f8eSopenharmony_ci   * @default number[] no irregular grid item
6361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
6461847f8eSopenharmony_ci   * @crossplatform
6561847f8eSopenharmony_ci   * @since 10
6661847f8eSopenharmony_ci   */
6761847f8eSopenharmony_ci  /**
6861847f8eSopenharmony_ci   * The indexes of grid items with irregular size.
6961847f8eSopenharmony_ci   *
7061847f8eSopenharmony_ci   * @type { ?number[] } irregularIndexes
7161847f8eSopenharmony_ci   * @default number[] no irregular grid item
7261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
7361847f8eSopenharmony_ci   * @crossplatform
7461847f8eSopenharmony_ci   * @atomicservice
7561847f8eSopenharmony_ci   * @since 11
7661847f8eSopenharmony_ci   */
7761847f8eSopenharmony_ci  irregularIndexes?: number[];
7861847f8eSopenharmony_ci
7961847f8eSopenharmony_ci  /**
8061847f8eSopenharmony_ci   * Called to return the size of the irregular grid items with the specified index in [rows, columns].
8161847f8eSopenharmony_ci   *
8261847f8eSopenharmony_ci   * @type { ?function } onGetIrregularSizeByIndex, 
8361847f8eSopenharmony_ci   * all irregular grid items will occupy an entire line if not set
8461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
8561847f8eSopenharmony_ci   * @crossplatform
8661847f8eSopenharmony_ci   * @since 10
8761847f8eSopenharmony_ci   */
8861847f8eSopenharmony_ci  /**
8961847f8eSopenharmony_ci   * Called to return the size of the irregular grid items with the specified index in [rows, columns].
9061847f8eSopenharmony_ci   *
9161847f8eSopenharmony_ci   * @type { ?function } onGetIrregularSizeByIndex, 
9261847f8eSopenharmony_ci   * all irregular grid items will occupy an entire line if not set
9361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
9461847f8eSopenharmony_ci   * @crossplatform
9561847f8eSopenharmony_ci   * @atomicservice
9661847f8eSopenharmony_ci   * @since 11
9761847f8eSopenharmony_ci   */
9861847f8eSopenharmony_ci  onGetIrregularSizeByIndex?: (index: number) => [number, number]
9961847f8eSopenharmony_ci
10061847f8eSopenharmony_ci  /**
10161847f8eSopenharmony_ci   * Called to return the size of the grid items with the specified index in 
10261847f8eSopenharmony_ci   * [rowStart, columnStart, rowSpan, columnSpan].
10361847f8eSopenharmony_ci   *
10461847f8eSopenharmony_ci   * @type { ?function } onGetRectByIndex
10561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
10661847f8eSopenharmony_ci   * @crossplatform
10761847f8eSopenharmony_ci   * @since 11
10861847f8eSopenharmony_ci   */
10961847f8eSopenharmony_ci  /**
11061847f8eSopenharmony_ci   * Called to return the size of the grid items with the specified index in 
11161847f8eSopenharmony_ci   * [rowStart, columnStart, rowSpan, columnSpan].
11261847f8eSopenharmony_ci   *
11361847f8eSopenharmony_ci   * @type { ?function } onGetRectByIndex
11461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
11561847f8eSopenharmony_ci   * @crossplatform
11661847f8eSopenharmony_ci   * @atomicservice
11761847f8eSopenharmony_ci   * @since 12
11861847f8eSopenharmony_ci   */
11961847f8eSopenharmony_ci  onGetRectByIndex?: (index: number) => [number, number, number, number]
12061847f8eSopenharmony_ci}
12161847f8eSopenharmony_ci
12261847f8eSopenharmony_ci/**
12361847f8eSopenharmony_ci * Defines the grid interface.
12461847f8eSopenharmony_ci *
12561847f8eSopenharmony_ci * @interface GridInterface
12661847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
12761847f8eSopenharmony_ci * @since 7
12861847f8eSopenharmony_ci */
12961847f8eSopenharmony_ci/**
13061847f8eSopenharmony_ci * Defines the grid interface.
13161847f8eSopenharmony_ci *
13261847f8eSopenharmony_ci * @interface GridInterface
13361847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
13461847f8eSopenharmony_ci * @crossplatform
13561847f8eSopenharmony_ci * @since 10
13661847f8eSopenharmony_ci */
13761847f8eSopenharmony_ci/**
13861847f8eSopenharmony_ci * Defines the grid interface.
13961847f8eSopenharmony_ci *
14061847f8eSopenharmony_ci * @interface GridInterface
14161847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
14261847f8eSopenharmony_ci * @crossplatform
14361847f8eSopenharmony_ci * @atomicservice
14461847f8eSopenharmony_ci * @since 11
14561847f8eSopenharmony_ci */
14661847f8eSopenharmony_ciinterface GridInterface {
14761847f8eSopenharmony_ci  /**
14861847f8eSopenharmony_ci   * Grid is returned when the parameter is transferred.
14961847f8eSopenharmony_ci   *
15061847f8eSopenharmony_ci   * @param { Scroller } scroller
15161847f8eSopenharmony_ci   * @returns { GridAttribute }
15261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
15361847f8eSopenharmony_ci   * @since 7
15461847f8eSopenharmony_ci   */
15561847f8eSopenharmony_ci  /**
15661847f8eSopenharmony_ci   * Grid is returned when the parameter is transferred.
15761847f8eSopenharmony_ci   *
15861847f8eSopenharmony_ci   * @param { Scroller } scroller - Controller bound to the grid
15961847f8eSopenharmony_ci   * @param { GridLayoutOptions } layoutOptions - The options to help grid layout
16061847f8eSopenharmony_ci   * @returns { GridAttribute } The attribute of the grid
16161847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
16261847f8eSopenharmony_ci   * @crossplatform
16361847f8eSopenharmony_ci   * @since 10
16461847f8eSopenharmony_ci   */
16561847f8eSopenharmony_ci  /**
16661847f8eSopenharmony_ci   * Grid is returned when the parameter is transferred.
16761847f8eSopenharmony_ci   *
16861847f8eSopenharmony_ci   * @param { Scroller } scroller - Controller bound to the grid
16961847f8eSopenharmony_ci   * @param { GridLayoutOptions } layoutOptions - The options to help grid layout
17061847f8eSopenharmony_ci   * @returns { GridAttribute } The attribute of the grid
17161847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
17261847f8eSopenharmony_ci   * @crossplatform
17361847f8eSopenharmony_ci   * @atomicservice
17461847f8eSopenharmony_ci   * @since 11
17561847f8eSopenharmony_ci   */
17661847f8eSopenharmony_ci  (scroller?: Scroller, layoutOptions?: GridLayoutOptions): GridAttribute;
17761847f8eSopenharmony_ci}
17861847f8eSopenharmony_ci
17961847f8eSopenharmony_ci/**
18061847f8eSopenharmony_ci * The enum of property layoutDirection
18161847f8eSopenharmony_ci *
18261847f8eSopenharmony_ci * @enum { number }
18361847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
18461847f8eSopenharmony_ci * @since 8
18561847f8eSopenharmony_ci */
18661847f8eSopenharmony_ci/**
18761847f8eSopenharmony_ci * The enum of property layoutDirection
18861847f8eSopenharmony_ci *
18961847f8eSopenharmony_ci * @enum { number }
19061847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
19161847f8eSopenharmony_ci * @crossplatform
19261847f8eSopenharmony_ci * @since 10
19361847f8eSopenharmony_ci */
19461847f8eSopenharmony_ci/**
19561847f8eSopenharmony_ci * The enum of property layoutDirection
19661847f8eSopenharmony_ci *
19761847f8eSopenharmony_ci * @enum { number }
19861847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
19961847f8eSopenharmony_ci * @crossplatform
20061847f8eSopenharmony_ci * @atomicservice
20161847f8eSopenharmony_ci * @since 11
20261847f8eSopenharmony_ci */
20361847f8eSopenharmony_cideclare enum GridDirection {
20461847f8eSopenharmony_ci  /**
20561847f8eSopenharmony_ci   * The row direction.
20661847f8eSopenharmony_ci   *
20761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
20861847f8eSopenharmony_ci   * @since 8
20961847f8eSopenharmony_ci   */
21061847f8eSopenharmony_ci  /**
21161847f8eSopenharmony_ci   * The row direction.
21261847f8eSopenharmony_ci   *
21361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
21461847f8eSopenharmony_ci   * @crossplatform
21561847f8eSopenharmony_ci   * @since 10
21661847f8eSopenharmony_ci   */
21761847f8eSopenharmony_ci  /**
21861847f8eSopenharmony_ci   * The row direction.
21961847f8eSopenharmony_ci   *
22061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
22161847f8eSopenharmony_ci   * @crossplatform
22261847f8eSopenharmony_ci   * @atomicservice
22361847f8eSopenharmony_ci   * @since 11
22461847f8eSopenharmony_ci   */
22561847f8eSopenharmony_ci  Row,
22661847f8eSopenharmony_ci
22761847f8eSopenharmony_ci  /**
22861847f8eSopenharmony_ci   * The column direction.
22961847f8eSopenharmony_ci   *
23061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
23161847f8eSopenharmony_ci   * @since 8
23261847f8eSopenharmony_ci   */
23361847f8eSopenharmony_ci  /**
23461847f8eSopenharmony_ci   * The column direction.
23561847f8eSopenharmony_ci   *
23661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
23761847f8eSopenharmony_ci   * @crossplatform
23861847f8eSopenharmony_ci   * @since 10
23961847f8eSopenharmony_ci   */
24061847f8eSopenharmony_ci  /**
24161847f8eSopenharmony_ci   * The column direction.
24261847f8eSopenharmony_ci   *
24361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
24461847f8eSopenharmony_ci   * @crossplatform
24561847f8eSopenharmony_ci   * @atomicservice
24661847f8eSopenharmony_ci   * @since 11
24761847f8eSopenharmony_ci   */
24861847f8eSopenharmony_ci  Column,
24961847f8eSopenharmony_ci
25061847f8eSopenharmony_ci  /**
25161847f8eSopenharmony_ci   * The row reverse direction.
25261847f8eSopenharmony_ci   *
25361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
25461847f8eSopenharmony_ci   * @since 8
25561847f8eSopenharmony_ci   */
25661847f8eSopenharmony_ci  /**
25761847f8eSopenharmony_ci   * The row reverse direction.
25861847f8eSopenharmony_ci   *
25961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
26061847f8eSopenharmony_ci   * @crossplatform
26161847f8eSopenharmony_ci   * @since 10
26261847f8eSopenharmony_ci   */
26361847f8eSopenharmony_ci  /**
26461847f8eSopenharmony_ci   * The row reverse direction.
26561847f8eSopenharmony_ci   *
26661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
26761847f8eSopenharmony_ci   * @crossplatform
26861847f8eSopenharmony_ci   * @atomicservice
26961847f8eSopenharmony_ci   * @since 11
27061847f8eSopenharmony_ci   */
27161847f8eSopenharmony_ci  RowReverse,
27261847f8eSopenharmony_ci
27361847f8eSopenharmony_ci  /**
27461847f8eSopenharmony_ci   * The column reverse direction.
27561847f8eSopenharmony_ci   *
27661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
27761847f8eSopenharmony_ci   * @since 8
27861847f8eSopenharmony_ci   */
27961847f8eSopenharmony_ci  /**
28061847f8eSopenharmony_ci   * The column reverse direction.
28161847f8eSopenharmony_ci   *
28261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
28361847f8eSopenharmony_ci   * @crossplatform
28461847f8eSopenharmony_ci   * @since 10
28561847f8eSopenharmony_ci   */
28661847f8eSopenharmony_ci  /**
28761847f8eSopenharmony_ci   * The column reverse direction.
28861847f8eSopenharmony_ci   *
28961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
29061847f8eSopenharmony_ci   * @crossplatform
29161847f8eSopenharmony_ci   * @atomicservice
29261847f8eSopenharmony_ci   * @since 11
29361847f8eSopenharmony_ci   */
29461847f8eSopenharmony_ci  ColumnReverse,
29561847f8eSopenharmony_ci}
29661847f8eSopenharmony_ci
29761847f8eSopenharmony_ci/**
29861847f8eSopenharmony_ci * Declare grid item alignment status
29961847f8eSopenharmony_ci *
30061847f8eSopenharmony_ci * @enum { number }
30161847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
30261847f8eSopenharmony_ci * @crossplatform
30361847f8eSopenharmony_ci * @atomicservice
30461847f8eSopenharmony_ci * @since 12
30561847f8eSopenharmony_ci */
30661847f8eSopenharmony_cideclare enum GridItemAlignment {
30761847f8eSopenharmony_ci
30861847f8eSopenharmony_ci  /**
30961847f8eSopenharmony_ci   * Use the default alignment of the Grid.
31061847f8eSopenharmony_ci   * 
31161847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
31261847f8eSopenharmony_ci   * @crossplatform
31361847f8eSopenharmony_ci   * @atomicservice
31461847f8eSopenharmony_ci   * @since 12
31561847f8eSopenharmony_ci   */
31661847f8eSopenharmony_ci  DEFAULT = 0,
31761847f8eSopenharmony_ci
31861847f8eSopenharmony_ci  /**
31961847f8eSopenharmony_ci   * The height of the tallest grid item in the current line 
32061847f8eSopenharmony_ci   * will be used as the height for the other items in the same line
32161847f8eSopenharmony_ci   *
32261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
32361847f8eSopenharmony_ci   * @crossplatform
32461847f8eSopenharmony_ci   * @atomicservice
32561847f8eSopenharmony_ci   * @since 12
32661847f8eSopenharmony_ci   */
32761847f8eSopenharmony_ci  STRETCH = 1,
32861847f8eSopenharmony_ci}
32961847f8eSopenharmony_ci
33061847f8eSopenharmony_ci/**
33161847f8eSopenharmony_ci * The attribute of scrollbar to compute scrollbar position and height.
33261847f8eSopenharmony_ci *
33361847f8eSopenharmony_ci * @interface ComputedBarAttribute
33461847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
33561847f8eSopenharmony_ci * @crossplatform
33661847f8eSopenharmony_ci * @since 10
33761847f8eSopenharmony_ci */
33861847f8eSopenharmony_ci/**
33961847f8eSopenharmony_ci * The attribute of scrollbar to compute scrollbar position and height.
34061847f8eSopenharmony_ci *
34161847f8eSopenharmony_ci * @interface ComputedBarAttribute
34261847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
34361847f8eSopenharmony_ci * @crossplatform
34461847f8eSopenharmony_ci * @atomicservice
34561847f8eSopenharmony_ci * @since 11
34661847f8eSopenharmony_ci */
34761847f8eSopenharmony_cideclare interface ComputedBarAttribute {
34861847f8eSopenharmony_ci  /**
34961847f8eSopenharmony_ci   * The offset of the grid.
35061847f8eSopenharmony_ci   *
35161847f8eSopenharmony_ci   * @type { number }
35261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
35361847f8eSopenharmony_ci   * @crossplatform
35461847f8eSopenharmony_ci   * @since 10
35561847f8eSopenharmony_ci   */
35661847f8eSopenharmony_ci  /**
35761847f8eSopenharmony_ci   * The offset of the grid.
35861847f8eSopenharmony_ci   *
35961847f8eSopenharmony_ci   * @type { number }
36061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
36161847f8eSopenharmony_ci   * @crossplatform
36261847f8eSopenharmony_ci   * @atomicservice
36361847f8eSopenharmony_ci   * @since 11
36461847f8eSopenharmony_ci   */
36561847f8eSopenharmony_ci  totalOffset: number;
36661847f8eSopenharmony_ci
36761847f8eSopenharmony_ci  /**
36861847f8eSopenharmony_ci   * The range of the grid.
36961847f8eSopenharmony_ci   *
37061847f8eSopenharmony_ci   * @type { number }
37161847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
37261847f8eSopenharmony_ci   * @crossplatform
37361847f8eSopenharmony_ci   * @since 10
37461847f8eSopenharmony_ci   */
37561847f8eSopenharmony_ci  /**
37661847f8eSopenharmony_ci   * The range of the grid.
37761847f8eSopenharmony_ci   *
37861847f8eSopenharmony_ci   * @type { number }
37961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
38061847f8eSopenharmony_ci   * @crossplatform
38161847f8eSopenharmony_ci   * @atomicservice
38261847f8eSopenharmony_ci   * @since 11
38361847f8eSopenharmony_ci   */
38461847f8eSopenharmony_ci  totalLength: number;
38561847f8eSopenharmony_ci}
38661847f8eSopenharmony_ci
38761847f8eSopenharmony_ci/**
38861847f8eSopenharmony_ci * Defines the grid attribute functions.
38961847f8eSopenharmony_ci *
39061847f8eSopenharmony_ci * @extends CommonMethod<GridAttribute>
39161847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
39261847f8eSopenharmony_ci * @since 7
39361847f8eSopenharmony_ci */
39461847f8eSopenharmony_ci/**
39561847f8eSopenharmony_ci * Defines the grid attribute functions.
39661847f8eSopenharmony_ci *
39761847f8eSopenharmony_ci * @extends CommonMethod<GridAttribute>
39861847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
39961847f8eSopenharmony_ci * @crossplatform
40061847f8eSopenharmony_ci * @since 10
40161847f8eSopenharmony_ci */
40261847f8eSopenharmony_ci/**
40361847f8eSopenharmony_ci * Defines the grid attribute functions.
40461847f8eSopenharmony_ci *
40561847f8eSopenharmony_ci * @extends ScrollableCommonMethod<GridAttribute>
40661847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
40761847f8eSopenharmony_ci * @crossplatform
40861847f8eSopenharmony_ci * @atomicservice
40961847f8eSopenharmony_ci * @since 11
41061847f8eSopenharmony_ci */
41161847f8eSopenharmony_cideclare class GridAttribute extends ScrollableCommonMethod<GridAttribute> {
41261847f8eSopenharmony_ci  /**
41361847f8eSopenharmony_ci   * This parameter specifies the number of columns in the current grid layout.
41461847f8eSopenharmony_ci   *
41561847f8eSopenharmony_ci   * @param { string } value
41661847f8eSopenharmony_ci   * @returns { GridAttribute }
41761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
41861847f8eSopenharmony_ci   * @since 7
41961847f8eSopenharmony_ci   */
42061847f8eSopenharmony_ci  /**
42161847f8eSopenharmony_ci   * This parameter specifies the number of columns in the current grid layout.
42261847f8eSopenharmony_ci   *
42361847f8eSopenharmony_ci   * @param { string } value
42461847f8eSopenharmony_ci   * @returns { GridAttribute }
42561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
42661847f8eSopenharmony_ci   * @crossplatform
42761847f8eSopenharmony_ci   * @since 10
42861847f8eSopenharmony_ci   */
42961847f8eSopenharmony_ci  /**
43061847f8eSopenharmony_ci   * This parameter specifies the number of columns in the current grid layout.
43161847f8eSopenharmony_ci   *
43261847f8eSopenharmony_ci   * @param { string } value
43361847f8eSopenharmony_ci   * @returns { GridAttribute }
43461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
43561847f8eSopenharmony_ci   * @crossplatform
43661847f8eSopenharmony_ci   * @atomicservice
43761847f8eSopenharmony_ci   * @since 11
43861847f8eSopenharmony_ci   */
43961847f8eSopenharmony_ci  columnsTemplate(value: string): GridAttribute;
44061847f8eSopenharmony_ci
44161847f8eSopenharmony_ci  /**
44261847f8eSopenharmony_ci   * Lets you set the number of rows in the current grid layout,
44361847f8eSopenharmony_ci   *
44461847f8eSopenharmony_ci   * @param { string } value
44561847f8eSopenharmony_ci   * @returns { GridAttribute }
44661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
44761847f8eSopenharmony_ci   * @since 7
44861847f8eSopenharmony_ci   */
44961847f8eSopenharmony_ci  /**
45061847f8eSopenharmony_ci   * Lets you set the number of rows in the current grid layout,
45161847f8eSopenharmony_ci   *
45261847f8eSopenharmony_ci   * @param { string } value
45361847f8eSopenharmony_ci   * @returns { GridAttribute }
45461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
45561847f8eSopenharmony_ci   * @crossplatform
45661847f8eSopenharmony_ci   * @since 10
45761847f8eSopenharmony_ci   */
45861847f8eSopenharmony_ci  /**
45961847f8eSopenharmony_ci   * Lets you set the number of rows in the current grid layout,
46061847f8eSopenharmony_ci   *
46161847f8eSopenharmony_ci   * @param { string } value
46261847f8eSopenharmony_ci   * @returns { GridAttribute }
46361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
46461847f8eSopenharmony_ci   * @crossplatform
46561847f8eSopenharmony_ci   * @atomicservice
46661847f8eSopenharmony_ci   * @since 11
46761847f8eSopenharmony_ci   */
46861847f8eSopenharmony_ci  rowsTemplate(value: string): GridAttribute;
46961847f8eSopenharmony_ci
47061847f8eSopenharmony_ci  /**
47161847f8eSopenharmony_ci   * Allows you to set the spacing between columns.
47261847f8eSopenharmony_ci   *
47361847f8eSopenharmony_ci   * @param { Length } value
47461847f8eSopenharmony_ci   * @returns { GridAttribute }
47561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
47661847f8eSopenharmony_ci   * @since 7
47761847f8eSopenharmony_ci   */
47861847f8eSopenharmony_ci  /**
47961847f8eSopenharmony_ci   * Allows you to set the spacing between columns.
48061847f8eSopenharmony_ci   *
48161847f8eSopenharmony_ci   * @param { Length } value
48261847f8eSopenharmony_ci   * @returns { GridAttribute }
48361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
48461847f8eSopenharmony_ci   * @crossplatform
48561847f8eSopenharmony_ci   * @since 10
48661847f8eSopenharmony_ci   */
48761847f8eSopenharmony_ci  /**
48861847f8eSopenharmony_ci   * Allows you to set the spacing between columns.
48961847f8eSopenharmony_ci   *
49061847f8eSopenharmony_ci   * @param { Length } value
49161847f8eSopenharmony_ci   * @returns { GridAttribute }
49261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
49361847f8eSopenharmony_ci   * @crossplatform
49461847f8eSopenharmony_ci   * @atomicservice
49561847f8eSopenharmony_ci   * @since 11
49661847f8eSopenharmony_ci   */
49761847f8eSopenharmony_ci  columnsGap(value: Length): GridAttribute;
49861847f8eSopenharmony_ci
49961847f8eSopenharmony_ci  /**
50061847f8eSopenharmony_ci   * Lets you set the spacing between rows.
50161847f8eSopenharmony_ci   *
50261847f8eSopenharmony_ci   * @param { Length } value
50361847f8eSopenharmony_ci   * @returns { GridAttribute }
50461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
50561847f8eSopenharmony_ci   * @since 7
50661847f8eSopenharmony_ci   */
50761847f8eSopenharmony_ci  /**
50861847f8eSopenharmony_ci   * Lets you set the spacing between rows.
50961847f8eSopenharmony_ci   *
51061847f8eSopenharmony_ci   * @param { Length } value
51161847f8eSopenharmony_ci   * @returns { GridAttribute }
51261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
51361847f8eSopenharmony_ci   * @crossplatform
51461847f8eSopenharmony_ci   * @since 10
51561847f8eSopenharmony_ci   */
51661847f8eSopenharmony_ci  /**
51761847f8eSopenharmony_ci   * Lets you set the spacing between rows.
51861847f8eSopenharmony_ci   *
51961847f8eSopenharmony_ci   * @param { Length } value
52061847f8eSopenharmony_ci   * @returns { GridAttribute }
52161847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
52261847f8eSopenharmony_ci   * @crossplatform
52361847f8eSopenharmony_ci   * @atomicservice
52461847f8eSopenharmony_ci   * @since 11
52561847f8eSopenharmony_ci   */
52661847f8eSopenharmony_ci  rowsGap(value: Length): GridAttribute;
52761847f8eSopenharmony_ci
52861847f8eSopenharmony_ci  /**
52961847f8eSopenharmony_ci   * This parameter specifies the width of the scroll bar.
53061847f8eSopenharmony_ci   *
53161847f8eSopenharmony_ci   * @param { number | string } value
53261847f8eSopenharmony_ci   * @returns { GridAttribute }
53361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
53461847f8eSopenharmony_ci   * @since 7
53561847f8eSopenharmony_ci   */
53661847f8eSopenharmony_ci  /**
53761847f8eSopenharmony_ci   * This parameter specifies the width of the scroll bar.
53861847f8eSopenharmony_ci   *
53961847f8eSopenharmony_ci   * @param { number | string } value
54061847f8eSopenharmony_ci   * @returns { GridAttribute }
54161847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
54261847f8eSopenharmony_ci   * @crossplatform
54361847f8eSopenharmony_ci   * @since 10
54461847f8eSopenharmony_ci   */
54561847f8eSopenharmony_ci  /**
54661847f8eSopenharmony_ci   * This parameter specifies the width of the scroll bar.
54761847f8eSopenharmony_ci   *
54861847f8eSopenharmony_ci   * @param { number | string } value
54961847f8eSopenharmony_ci   * @returns { GridAttribute }
55061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
55161847f8eSopenharmony_ci   * @crossplatform
55261847f8eSopenharmony_ci   * @atomicservice
55361847f8eSopenharmony_ci   * @since 11
55461847f8eSopenharmony_ci   */
55561847f8eSopenharmony_ci  scrollBarWidth(value: number | string): GridAttribute;
55661847f8eSopenharmony_ci
55761847f8eSopenharmony_ci  /**
55861847f8eSopenharmony_ci   * Sets the color of the scroll bar.
55961847f8eSopenharmony_ci   *
56061847f8eSopenharmony_ci   * @param { Color | number | string } value
56161847f8eSopenharmony_ci   * @returns { GridAttribute }
56261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
56361847f8eSopenharmony_ci   * @since 7
56461847f8eSopenharmony_ci   */
56561847f8eSopenharmony_ci  /**
56661847f8eSopenharmony_ci   * Sets the color of the scroll bar.
56761847f8eSopenharmony_ci   *
56861847f8eSopenharmony_ci   * @param { Color | number | string } value
56961847f8eSopenharmony_ci   * @returns { GridAttribute }
57061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
57161847f8eSopenharmony_ci   * @crossplatform
57261847f8eSopenharmony_ci   * @since 10
57361847f8eSopenharmony_ci   */
57461847f8eSopenharmony_ci  /**
57561847f8eSopenharmony_ci   * Sets the color of the scroll bar.
57661847f8eSopenharmony_ci   *
57761847f8eSopenharmony_ci   * @param { Color | number | string } value
57861847f8eSopenharmony_ci   * @returns { GridAttribute }
57961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
58061847f8eSopenharmony_ci   * @crossplatform
58161847f8eSopenharmony_ci   * @atomicservice
58261847f8eSopenharmony_ci   * @since 11
58361847f8eSopenharmony_ci   */
58461847f8eSopenharmony_ci  scrollBarColor(value: Color | number | string): GridAttribute;
58561847f8eSopenharmony_ci
58661847f8eSopenharmony_ci  /**
58761847f8eSopenharmony_ci   * Lets you set the spacing between rows.
58861847f8eSopenharmony_ci   *
58961847f8eSopenharmony_ci   * @param { BarState } value
59061847f8eSopenharmony_ci   * @returns { GridAttribute }
59161847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
59261847f8eSopenharmony_ci   * @since 7
59361847f8eSopenharmony_ci   */
59461847f8eSopenharmony_ci  /**
59561847f8eSopenharmony_ci   * Lets you set the spacing between rows.
59661847f8eSopenharmony_ci   *
59761847f8eSopenharmony_ci   * @param { BarState } value
59861847f8eSopenharmony_ci   * @returns { GridAttribute }
59961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
60061847f8eSopenharmony_ci   * @crossplatform
60161847f8eSopenharmony_ci   * @since 10
60261847f8eSopenharmony_ci   */
60361847f8eSopenharmony_ci  /**
60461847f8eSopenharmony_ci   * Lets you set the spacing between rows.
60561847f8eSopenharmony_ci   *
60661847f8eSopenharmony_ci   * @param { BarState } value
60761847f8eSopenharmony_ci   * @returns { GridAttribute }
60861847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
60961847f8eSopenharmony_ci   * @crossplatform
61061847f8eSopenharmony_ci   * @atomicservice
61161847f8eSopenharmony_ci   * @since 11
61261847f8eSopenharmony_ci   */
61361847f8eSopenharmony_ci  scrollBar(value: BarState): GridAttribute;
61461847f8eSopenharmony_ci
61561847f8eSopenharmony_ci  /**
61661847f8eSopenharmony_ci   * Set scrollbar position.
61761847f8eSopenharmony_ci   *
61861847f8eSopenharmony_ci   * @param { function } event - callback of grid scroll,
61961847f8eSopenharmony_ci   * index is the current first displayed item, offset is the grid offset,
62061847f8eSopenharmony_ci   * return ComputedBarAttribute to update scrollbar position and height.
62161847f8eSopenharmony_ci   * @returns { GridAttribute }
62261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
62361847f8eSopenharmony_ci   * @crossplatform
62461847f8eSopenharmony_ci   * @since 10
62561847f8eSopenharmony_ci   */
62661847f8eSopenharmony_ci  /**
62761847f8eSopenharmony_ci   * Set scrollbar position.
62861847f8eSopenharmony_ci   *
62961847f8eSopenharmony_ci   * @param { function } event - callback of grid scroll,
63061847f8eSopenharmony_ci   * index is the current first displayed item, offset is the grid offset,
63161847f8eSopenharmony_ci   * return ComputedBarAttribute to update scrollbar position and height.
63261847f8eSopenharmony_ci   * @returns { GridAttribute }
63361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
63461847f8eSopenharmony_ci   * @crossplatform
63561847f8eSopenharmony_ci   * @atomicservice
63661847f8eSopenharmony_ci   * @since 11
63761847f8eSopenharmony_ci   */
63861847f8eSopenharmony_ci  onScrollBarUpdate(event: (index: number, offset: number) => ComputedBarAttribute): GridAttribute;
63961847f8eSopenharmony_ci
64061847f8eSopenharmony_ci  /**
64161847f8eSopenharmony_ci   * Called when the first item displayed in the grid changes.
64261847f8eSopenharmony_ci   *
64361847f8eSopenharmony_ci   * @param { function } event - of grid scroll,
64461847f8eSopenharmony_ci   * first is the index of the first item of the grid.
64561847f8eSopenharmony_ci   * @returns { GridAttribute }
64661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
64761847f8eSopenharmony_ci   * @since 7
64861847f8eSopenharmony_ci   */
64961847f8eSopenharmony_ci  /**
65061847f8eSopenharmony_ci   * Called when the first or last item displayed in the grid changes.
65161847f8eSopenharmony_ci   *
65261847f8eSopenharmony_ci   * @param { function } event - of grid scroll,
65361847f8eSopenharmony_ci   * first is the index of the first item displayed in the grid, 
65461847f8eSopenharmony_ci   * last is the index of the last item displayed in the grid.
65561847f8eSopenharmony_ci   * @returns { GridAttribute }
65661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
65761847f8eSopenharmony_ci   * @crossplatform
65861847f8eSopenharmony_ci   * @since 10
65961847f8eSopenharmony_ci   */
66061847f8eSopenharmony_ci  /**
66161847f8eSopenharmony_ci   * Called when the first or last item displayed in the grid changes.
66261847f8eSopenharmony_ci   *
66361847f8eSopenharmony_ci   * @param { function } event - of grid scroll,
66461847f8eSopenharmony_ci   * first is the index of the first item displayed in the grid, 
66561847f8eSopenharmony_ci   * last is the index of the last item displayed in the grid.
66661847f8eSopenharmony_ci   * @returns { GridAttribute }
66761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
66861847f8eSopenharmony_ci   * @crossplatform
66961847f8eSopenharmony_ci   * @atomicservice
67061847f8eSopenharmony_ci   * @since 11
67161847f8eSopenharmony_ci   */
67261847f8eSopenharmony_ci  onScrollIndex(event: (first: number, last: number) => void): GridAttribute;
67361847f8eSopenharmony_ci
67461847f8eSopenharmony_ci  /**
67561847f8eSopenharmony_ci   * cached Count
67661847f8eSopenharmony_ci   *
67761847f8eSopenharmony_ci   * @param { number } value
67861847f8eSopenharmony_ci   * @returns { GridAttribute }
67961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
68061847f8eSopenharmony_ci   * @since 7
68161847f8eSopenharmony_ci   */
68261847f8eSopenharmony_ci  /**
68361847f8eSopenharmony_ci   * cached Count
68461847f8eSopenharmony_ci   *
68561847f8eSopenharmony_ci   * @param { number } value
68661847f8eSopenharmony_ci   * @returns { GridAttribute }
68761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
68861847f8eSopenharmony_ci   * @crossplatform
68961847f8eSopenharmony_ci   * @since 10
69061847f8eSopenharmony_ci   */
69161847f8eSopenharmony_ci  /**
69261847f8eSopenharmony_ci   * cached Count
69361847f8eSopenharmony_ci   *
69461847f8eSopenharmony_ci   * @param { number } value
69561847f8eSopenharmony_ci   * @returns { GridAttribute }
69661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
69761847f8eSopenharmony_ci   * @crossplatform
69861847f8eSopenharmony_ci   * @atomicservice
69961847f8eSopenharmony_ci   * @since 11
70061847f8eSopenharmony_ci   */
70161847f8eSopenharmony_ci  cachedCount(value: number): GridAttribute;
70261847f8eSopenharmony_ci
70361847f8eSopenharmony_ci  /**
70461847f8eSopenharmony_ci   * Called to set number of GridItems to be preloaded (cached) in LazyForEach / Repeat. 
70561847f8eSopenharmony_ci   * @param { number } count - number of GridItems to be preloaded (cached).
70661847f8eSopenharmony_ci   * @param { boolean } show - if true, cached items are displayed when clip is disabled.
70761847f8eSopenharmony_ci   * @returns { GridAttribute }
70861847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
70961847f8eSopenharmony_ci   * @crossplatform
71061847f8eSopenharmony_ci   * @atomicservice
71161847f8eSopenharmony_ci   * @since 14
71261847f8eSopenharmony_ci   */
71361847f8eSopenharmony_ci  cachedCount(count: number, show: boolean): GridAttribute;
71461847f8eSopenharmony_ci
71561847f8eSopenharmony_ci  /**
71661847f8eSopenharmony_ci   * editMode
71761847f8eSopenharmony_ci   *
71861847f8eSopenharmony_ci   * @param { boolean } value
71961847f8eSopenharmony_ci   * @returns { GridAttribute }
72061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
72161847f8eSopenharmony_ci   * @since 8
72261847f8eSopenharmony_ci   */
72361847f8eSopenharmony_ci  /**
72461847f8eSopenharmony_ci   * editMode
72561847f8eSopenharmony_ci   *
72661847f8eSopenharmony_ci   * @param { boolean } value
72761847f8eSopenharmony_ci   * @returns { GridAttribute }
72861847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
72961847f8eSopenharmony_ci   * @crossplatform
73061847f8eSopenharmony_ci   * @since 10
73161847f8eSopenharmony_ci   */
73261847f8eSopenharmony_ci  /**
73361847f8eSopenharmony_ci   * editMode
73461847f8eSopenharmony_ci   *
73561847f8eSopenharmony_ci   * @param { boolean } value
73661847f8eSopenharmony_ci   * @returns { GridAttribute }
73761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
73861847f8eSopenharmony_ci   * @crossplatform
73961847f8eSopenharmony_ci   * @atomicservice
74061847f8eSopenharmony_ci   * @since 11
74161847f8eSopenharmony_ci   */
74261847f8eSopenharmony_ci  editMode(value: boolean): GridAttribute;
74361847f8eSopenharmony_ci
74461847f8eSopenharmony_ci  /**
74561847f8eSopenharmony_ci   * Called when judging whether it is multiSelectable.
74661847f8eSopenharmony_ci   *
74761847f8eSopenharmony_ci   * @param { boolean } value
74861847f8eSopenharmony_ci   * @returns { GridAttribute }
74961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
75061847f8eSopenharmony_ci   * @since 8
75161847f8eSopenharmony_ci   */
75261847f8eSopenharmony_ci  /**
75361847f8eSopenharmony_ci   * Called when judging whether it is multiSelectable.
75461847f8eSopenharmony_ci   *
75561847f8eSopenharmony_ci   * @param { boolean } value
75661847f8eSopenharmony_ci   * @returns { GridAttribute }
75761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
75861847f8eSopenharmony_ci   * @crossplatform
75961847f8eSopenharmony_ci   * @since 10
76061847f8eSopenharmony_ci   */
76161847f8eSopenharmony_ci  /**
76261847f8eSopenharmony_ci   * Called when judging whether it is multiSelectable.
76361847f8eSopenharmony_ci   *
76461847f8eSopenharmony_ci   * @param { boolean } value
76561847f8eSopenharmony_ci   * @returns { GridAttribute }
76661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
76761847f8eSopenharmony_ci   * @crossplatform
76861847f8eSopenharmony_ci   * @atomicservice
76961847f8eSopenharmony_ci   * @since 11
77061847f8eSopenharmony_ci   */
77161847f8eSopenharmony_ci  multiSelectable(value: boolean): GridAttribute;
77261847f8eSopenharmony_ci
77361847f8eSopenharmony_ci  /**
77461847f8eSopenharmony_ci   * maxCount
77561847f8eSopenharmony_ci   *
77661847f8eSopenharmony_ci   * @param { number } value
77761847f8eSopenharmony_ci   * @returns { GridAttribute }
77861847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
77961847f8eSopenharmony_ci   * @since 8
78061847f8eSopenharmony_ci   */
78161847f8eSopenharmony_ci  /**
78261847f8eSopenharmony_ci   * maxCount
78361847f8eSopenharmony_ci   *
78461847f8eSopenharmony_ci   * @param { number } value
78561847f8eSopenharmony_ci   * @returns { GridAttribute }
78661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
78761847f8eSopenharmony_ci   * @crossplatform
78861847f8eSopenharmony_ci   * @since 10
78961847f8eSopenharmony_ci   */
79061847f8eSopenharmony_ci  /**
79161847f8eSopenharmony_ci   * maxCount
79261847f8eSopenharmony_ci   *
79361847f8eSopenharmony_ci   * @param { number } value
79461847f8eSopenharmony_ci   * @returns { GridAttribute }
79561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
79661847f8eSopenharmony_ci   * @crossplatform
79761847f8eSopenharmony_ci   * @atomicservice
79861847f8eSopenharmony_ci   * @since 11
79961847f8eSopenharmony_ci   */
80061847f8eSopenharmony_ci  maxCount(value: number): GridAttribute;
80161847f8eSopenharmony_ci
80261847f8eSopenharmony_ci  /**
80361847f8eSopenharmony_ci   * minCount
80461847f8eSopenharmony_ci   *
80561847f8eSopenharmony_ci   * @param { number } value
80661847f8eSopenharmony_ci   * @returns { GridAttribute }
80761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
80861847f8eSopenharmony_ci   * @since 8
80961847f8eSopenharmony_ci   */
81061847f8eSopenharmony_ci  /**
81161847f8eSopenharmony_ci   * minCount
81261847f8eSopenharmony_ci   *
81361847f8eSopenharmony_ci   * @param { number } value
81461847f8eSopenharmony_ci   * @returns { GridAttribute }
81561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
81661847f8eSopenharmony_ci   * @crossplatform
81761847f8eSopenharmony_ci   * @since 10
81861847f8eSopenharmony_ci   */
81961847f8eSopenharmony_ci  /**
82061847f8eSopenharmony_ci   * minCount
82161847f8eSopenharmony_ci   *
82261847f8eSopenharmony_ci   * @param { number } value
82361847f8eSopenharmony_ci   * @returns { GridAttribute }
82461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
82561847f8eSopenharmony_ci   * @crossplatform
82661847f8eSopenharmony_ci   * @atomicservice
82761847f8eSopenharmony_ci   * @since 11
82861847f8eSopenharmony_ci   */
82961847f8eSopenharmony_ci  minCount(value: number): GridAttribute;
83061847f8eSopenharmony_ci
83161847f8eSopenharmony_ci  /**
83261847f8eSopenharmony_ci   * cellLength
83361847f8eSopenharmony_ci   *
83461847f8eSopenharmony_ci   * @param { number } value
83561847f8eSopenharmony_ci   * @returns { GridAttribute }
83661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
83761847f8eSopenharmony_ci   * @since 8
83861847f8eSopenharmony_ci   */
83961847f8eSopenharmony_ci  /**
84061847f8eSopenharmony_ci   * cellLength
84161847f8eSopenharmony_ci   *
84261847f8eSopenharmony_ci   * @param { number } value
84361847f8eSopenharmony_ci   * @returns { GridAttribute }
84461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
84561847f8eSopenharmony_ci   * @crossplatform
84661847f8eSopenharmony_ci   * @since 10
84761847f8eSopenharmony_ci   */
84861847f8eSopenharmony_ci  /**
84961847f8eSopenharmony_ci   * cellLength
85061847f8eSopenharmony_ci   *
85161847f8eSopenharmony_ci   * @param { number } value
85261847f8eSopenharmony_ci   * @returns { GridAttribute }
85361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
85461847f8eSopenharmony_ci   * @crossplatform
85561847f8eSopenharmony_ci   * @atomicservice
85661847f8eSopenharmony_ci   * @since 11
85761847f8eSopenharmony_ci   */
85861847f8eSopenharmony_ci  cellLength(value: number): GridAttribute;
85961847f8eSopenharmony_ci
86061847f8eSopenharmony_ci  /**
86161847f8eSopenharmony_ci   * Control GridDirection of the grid.
86261847f8eSopenharmony_ci   *
86361847f8eSopenharmony_ci   * @param { GridDirection } value
86461847f8eSopenharmony_ci   * @returns { GridAttribute }
86561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
86661847f8eSopenharmony_ci   * @since 8
86761847f8eSopenharmony_ci   */
86861847f8eSopenharmony_ci  /**
86961847f8eSopenharmony_ci   * Control GridDirection of the grid.
87061847f8eSopenharmony_ci   *
87161847f8eSopenharmony_ci   * @param { GridDirection } value
87261847f8eSopenharmony_ci   * @returns { GridAttribute }
87361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
87461847f8eSopenharmony_ci   * @crossplatform
87561847f8eSopenharmony_ci   * @since 10
87661847f8eSopenharmony_ci   */
87761847f8eSopenharmony_ci  /**
87861847f8eSopenharmony_ci   * Control GridDirection of the grid.
87961847f8eSopenharmony_ci   *
88061847f8eSopenharmony_ci   * @param { GridDirection } value
88161847f8eSopenharmony_ci   * @returns { GridAttribute }
88261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
88361847f8eSopenharmony_ci   * @crossplatform
88461847f8eSopenharmony_ci   * @atomicservice
88561847f8eSopenharmony_ci   * @since 11
88661847f8eSopenharmony_ci   */
88761847f8eSopenharmony_ci  layoutDirection(value: GridDirection): GridAttribute;
88861847f8eSopenharmony_ci
88961847f8eSopenharmony_ci  /**
89061847f8eSopenharmony_ci   * Control if the grid supports animation.
89161847f8eSopenharmony_ci   *
89261847f8eSopenharmony_ci   * @param { boolean } value
89361847f8eSopenharmony_ci   * @returns { GridAttribute }
89461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
89561847f8eSopenharmony_ci   * @since 8
89661847f8eSopenharmony_ci   */
89761847f8eSopenharmony_ci  /**
89861847f8eSopenharmony_ci   * Control if the grid supports animation.
89961847f8eSopenharmony_ci   *
90061847f8eSopenharmony_ci   * @param { boolean } value
90161847f8eSopenharmony_ci   * @returns { GridAttribute }
90261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
90361847f8eSopenharmony_ci   * @crossplatform
90461847f8eSopenharmony_ci   * @since 10
90561847f8eSopenharmony_ci   */
90661847f8eSopenharmony_ci  /**
90761847f8eSopenharmony_ci   * Control if the grid supports animation.
90861847f8eSopenharmony_ci   *
90961847f8eSopenharmony_ci   * @param { boolean } value
91061847f8eSopenharmony_ci   * @returns { GridAttribute }
91161847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
91261847f8eSopenharmony_ci   * @crossplatform
91361847f8eSopenharmony_ci   * @atomicservice
91461847f8eSopenharmony_ci   * @since 11
91561847f8eSopenharmony_ci   */
91661847f8eSopenharmony_ci  supportAnimation(value: boolean): GridAttribute;
91761847f8eSopenharmony_ci
91861847f8eSopenharmony_ci  /**
91961847f8eSopenharmony_ci   * After a listener is bound, the component can be dragged. After the drag occurs, a callback is triggered.
92061847f8eSopenharmony_ci   * (To be triggered, press and hold for 170 milliseconds (ms))
92161847f8eSopenharmony_ci   *
92261847f8eSopenharmony_ci   * @param { function } event
92361847f8eSopenharmony_ci   * @returns { GridAttribute }
92461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
92561847f8eSopenharmony_ci   * @since 8
92661847f8eSopenharmony_ci   */
92761847f8eSopenharmony_ci  /**
92861847f8eSopenharmony_ci   * After a listener is bound, the component can be dragged. After the drag occurs, a callback is triggered.
92961847f8eSopenharmony_ci   * (To be triggered, press and hold for 170 milliseconds (ms))
93061847f8eSopenharmony_ci   *
93161847f8eSopenharmony_ci   * @param { function } event
93261847f8eSopenharmony_ci   * @returns { GridAttribute }
93361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
93461847f8eSopenharmony_ci   * @crossplatform
93561847f8eSopenharmony_ci   * @since 10
93661847f8eSopenharmony_ci   */
93761847f8eSopenharmony_ci  /**
93861847f8eSopenharmony_ci   * After a listener is bound, the component can be dragged. After the drag occurs, a callback is triggered.
93961847f8eSopenharmony_ci   * (To be triggered, press and hold for 170 milliseconds (ms))
94061847f8eSopenharmony_ci   *
94161847f8eSopenharmony_ci   * @param { function } event
94261847f8eSopenharmony_ci   * @returns { GridAttribute }
94361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
94461847f8eSopenharmony_ci   * @crossplatform
94561847f8eSopenharmony_ci   * @atomicservice
94661847f8eSopenharmony_ci   * @since 11
94761847f8eSopenharmony_ci   */
94861847f8eSopenharmony_ci  onItemDragStart(event: (event: ItemDragInfo, itemIndex: number) => (() => any) | void): GridAttribute;
94961847f8eSopenharmony_ci
95061847f8eSopenharmony_ci  /**
95161847f8eSopenharmony_ci   * After binding, a callback is triggered when the component is dragged to the range of the component.
95261847f8eSopenharmony_ci   *
95361847f8eSopenharmony_ci   * @param { function } event
95461847f8eSopenharmony_ci   * @returns { GridAttribute }
95561847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
95661847f8eSopenharmony_ci   * @since 8
95761847f8eSopenharmony_ci   */
95861847f8eSopenharmony_ci  /**
95961847f8eSopenharmony_ci   * After binding, a callback is triggered when the component is dragged to the range of the component.
96061847f8eSopenharmony_ci   *
96161847f8eSopenharmony_ci   * @param { function } event
96261847f8eSopenharmony_ci   * @returns { GridAttribute }
96361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
96461847f8eSopenharmony_ci   * @crossplatform
96561847f8eSopenharmony_ci   * @since 10
96661847f8eSopenharmony_ci   */
96761847f8eSopenharmony_ci  /**
96861847f8eSopenharmony_ci   * After binding, a callback is triggered when the component is dragged to the range of the component.
96961847f8eSopenharmony_ci   *
97061847f8eSopenharmony_ci   * @param { function } event
97161847f8eSopenharmony_ci   * @returns { GridAttribute }
97261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
97361847f8eSopenharmony_ci   * @crossplatform
97461847f8eSopenharmony_ci   * @atomicservice
97561847f8eSopenharmony_ci   * @since 11
97661847f8eSopenharmony_ci   */
97761847f8eSopenharmony_ci  onItemDragEnter(event: (event: ItemDragInfo) => void): GridAttribute;
97861847f8eSopenharmony_ci
97961847f8eSopenharmony_ci  /**
98061847f8eSopenharmony_ci   * After binding, a callback is triggered when the drag moves within the range of a placeable component.
98161847f8eSopenharmony_ci   *
98261847f8eSopenharmony_ci   * @param { function } event
98361847f8eSopenharmony_ci   * @returns { GridAttribute }
98461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
98561847f8eSopenharmony_ci   * @since 8
98661847f8eSopenharmony_ci   */
98761847f8eSopenharmony_ci  /**
98861847f8eSopenharmony_ci   * After binding, a callback is triggered when the drag moves within the range of a placeable component.
98961847f8eSopenharmony_ci   *
99061847f8eSopenharmony_ci   * @param { function } event
99161847f8eSopenharmony_ci   * @returns { GridAttribute }
99261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
99361847f8eSopenharmony_ci   * @crossplatform
99461847f8eSopenharmony_ci   * @since 10
99561847f8eSopenharmony_ci   */
99661847f8eSopenharmony_ci  /**
99761847f8eSopenharmony_ci   * After binding, a callback is triggered when the drag moves within the range of a placeable component.
99861847f8eSopenharmony_ci   *
99961847f8eSopenharmony_ci   * @param { function } event
100061847f8eSopenharmony_ci   * @returns { GridAttribute }
100161847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
100261847f8eSopenharmony_ci   * @crossplatform
100361847f8eSopenharmony_ci   * @atomicservice
100461847f8eSopenharmony_ci   * @since 11
100561847f8eSopenharmony_ci   */
100661847f8eSopenharmony_ci  onItemDragMove(event: (event: ItemDragInfo, itemIndex: number, insertIndex: number) => void): GridAttribute;
100761847f8eSopenharmony_ci
100861847f8eSopenharmony_ci  /**
100961847f8eSopenharmony_ci   * After binding, a callback is triggered when the component is dragged out of the component range.
101061847f8eSopenharmony_ci   *
101161847f8eSopenharmony_ci   * @param { function } event
101261847f8eSopenharmony_ci   * @returns { GridAttribute }
101361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
101461847f8eSopenharmony_ci   * @since 8
101561847f8eSopenharmony_ci   */
101661847f8eSopenharmony_ci  /**
101761847f8eSopenharmony_ci   * After binding, a callback is triggered when the component is dragged out of the component range.
101861847f8eSopenharmony_ci   *
101961847f8eSopenharmony_ci   * @param { function } event
102061847f8eSopenharmony_ci   * @returns { GridAttribute }
102161847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
102261847f8eSopenharmony_ci   * @crossplatform
102361847f8eSopenharmony_ci   * @since 10
102461847f8eSopenharmony_ci   */
102561847f8eSopenharmony_ci  /**
102661847f8eSopenharmony_ci   * After binding, a callback is triggered when the component is dragged out of the component range.
102761847f8eSopenharmony_ci   *
102861847f8eSopenharmony_ci   * @param { function } event
102961847f8eSopenharmony_ci   * @returns { GridAttribute }
103061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
103161847f8eSopenharmony_ci   * @crossplatform
103261847f8eSopenharmony_ci   * @atomicservice
103361847f8eSopenharmony_ci   * @since 11
103461847f8eSopenharmony_ci   */
103561847f8eSopenharmony_ci  onItemDragLeave(event: (event: ItemDragInfo, itemIndex: number) => void): GridAttribute;
103661847f8eSopenharmony_ci
103761847f8eSopenharmony_ci  /**
103861847f8eSopenharmony_ci   * The component bound to this event can be used as the drag release target.
103961847f8eSopenharmony_ci   * This callback is triggered when the drag behavior is stopped within the scope of the component.
104061847f8eSopenharmony_ci   *
104161847f8eSopenharmony_ci   * @param { function } event
104261847f8eSopenharmony_ci   * @returns { GridAttribute }
104361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
104461847f8eSopenharmony_ci   * @since 8
104561847f8eSopenharmony_ci   */
104661847f8eSopenharmony_ci  /**
104761847f8eSopenharmony_ci   * The component bound to this event can be used as the drag release target.
104861847f8eSopenharmony_ci   * This callback is triggered when the drag behavior is stopped within the scope of the component.
104961847f8eSopenharmony_ci   *
105061847f8eSopenharmony_ci   * @param { function } event
105161847f8eSopenharmony_ci   * @returns { GridAttribute }
105261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
105361847f8eSopenharmony_ci   * @crossplatform
105461847f8eSopenharmony_ci   * @since 10
105561847f8eSopenharmony_ci   */
105661847f8eSopenharmony_ci  /**
105761847f8eSopenharmony_ci   * The component bound to this event can be used as the drag release target.
105861847f8eSopenharmony_ci   * This callback is triggered when the drag behavior is stopped within the scope of the component.
105961847f8eSopenharmony_ci   *
106061847f8eSopenharmony_ci   * @param { function } event
106161847f8eSopenharmony_ci   * @returns { GridAttribute }
106261847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
106361847f8eSopenharmony_ci   * @crossplatform
106461847f8eSopenharmony_ci   * @atomicservice
106561847f8eSopenharmony_ci   * @since 11
106661847f8eSopenharmony_ci   */
106761847f8eSopenharmony_ci  onItemDrop(
106861847f8eSopenharmony_ci    event: (event: ItemDragInfo, itemIndex: number, insertIndex: number, isSuccess: boolean) => void,
106961847f8eSopenharmony_ci  ): GridAttribute;
107061847f8eSopenharmony_ci
107161847f8eSopenharmony_ci  /**
107261847f8eSopenharmony_ci   * Called when the sliding effect is set.
107361847f8eSopenharmony_ci   *
107461847f8eSopenharmony_ci   * @param { EdgeEffect } value - Scroll effect. For details, see EdgeEffect.
107561847f8eSopenharmony_ci   * @returns { GridAttribute } The attribute of the grid
107661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
107761847f8eSopenharmony_ci   * @crossplatform
107861847f8eSopenharmony_ci   * @since 10
107961847f8eSopenharmony_ci   */
108061847f8eSopenharmony_ci  /**
108161847f8eSopenharmony_ci   * Called when the sliding effect is set.
108261847f8eSopenharmony_ci   *
108361847f8eSopenharmony_ci   * @param { EdgeEffect } value
108461847f8eSopenharmony_ci   * @param { EdgeEffectOptions } options
108561847f8eSopenharmony_ci   * @returns { GridAttribute } The attribute of the grid
108661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
108761847f8eSopenharmony_ci   * @crossplatform
108861847f8eSopenharmony_ci   * @atomicservice
108961847f8eSopenharmony_ci   * @since 11
109061847f8eSopenharmony_ci   */
109161847f8eSopenharmony_ci  edgeEffect(value: EdgeEffect, options?: EdgeEffectOptions): GridAttribute;
109261847f8eSopenharmony_ci
109361847f8eSopenharmony_ci  /**
109461847f8eSopenharmony_ci   * Called to setting the nested scroll options.
109561847f8eSopenharmony_ci   *
109661847f8eSopenharmony_ci   * @param { NestedScrollOptions } value - options for nested scrolling.
109761847f8eSopenharmony_ci   * @returns { GridAttribute } the attribute of the grid.
109861847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
109961847f8eSopenharmony_ci   * @since 10
110061847f8eSopenharmony_ci   */
110161847f8eSopenharmony_ci  /**
110261847f8eSopenharmony_ci   * Called to setting the nested scroll options.
110361847f8eSopenharmony_ci   *
110461847f8eSopenharmony_ci   * @param { NestedScrollOptions } value - options for nested scrolling.
110561847f8eSopenharmony_ci   * @returns { GridAttribute } the attribute of the grid.
110661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
110761847f8eSopenharmony_ci   * @crossplatform
110861847f8eSopenharmony_ci   * @atomicservice
110961847f8eSopenharmony_ci   * @since 11
111061847f8eSopenharmony_ci   */
111161847f8eSopenharmony_ci  nestedScroll(value: NestedScrollOptions): GridAttribute;
111261847f8eSopenharmony_ci
111361847f8eSopenharmony_ci  /**
111461847f8eSopenharmony_ci   * Called when setting whether to enable scroll by gesture or mouse.
111561847f8eSopenharmony_ci   *
111661847f8eSopenharmony_ci   * @param { boolean } value
111761847f8eSopenharmony_ci   * @returns { GridAttribute } The attribute of the grid
111861847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
111961847f8eSopenharmony_ci   * @crossplatform
112061847f8eSopenharmony_ci   * @since 10
112161847f8eSopenharmony_ci   */
112261847f8eSopenharmony_ci  /**
112361847f8eSopenharmony_ci   * Called when setting whether to enable scroll by gesture or mouse.
112461847f8eSopenharmony_ci   *
112561847f8eSopenharmony_ci   * @param { boolean } value
112661847f8eSopenharmony_ci   * @returns { GridAttribute } The attribute of the grid
112761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
112861847f8eSopenharmony_ci   * @crossplatform
112961847f8eSopenharmony_ci   * @atomicservice
113061847f8eSopenharmony_ci   * @since 11
113161847f8eSopenharmony_ci   */
113261847f8eSopenharmony_ci  enableScrollInteraction(value: boolean): GridAttribute;
113361847f8eSopenharmony_ci
113461847f8eSopenharmony_ci  /**
113561847f8eSopenharmony_ci   * Called to setting the friction.
113661847f8eSopenharmony_ci   *
113761847f8eSopenharmony_ci   * @param { number | Resource } value - options for scrolling friction.
113861847f8eSopenharmony_ci   * @returns { GridAttribute } the attribute of the grid.
113961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
114061847f8eSopenharmony_ci   * @crossplatform
114161847f8eSopenharmony_ci   * @since 10
114261847f8eSopenharmony_ci   */
114361847f8eSopenharmony_ci  /**
114461847f8eSopenharmony_ci   * Called to setting the friction.
114561847f8eSopenharmony_ci   *
114661847f8eSopenharmony_ci   * @param { number | Resource } value - options for scrolling friction.
114761847f8eSopenharmony_ci   * @returns { GridAttribute } the attribute of the grid.
114861847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
114961847f8eSopenharmony_ci   * @crossplatform
115061847f8eSopenharmony_ci   * @atomicservice
115161847f8eSopenharmony_ci   * @since 11
115261847f8eSopenharmony_ci   */
115361847f8eSopenharmony_ci  friction(value: number | Resource): GridAttribute;
115461847f8eSopenharmony_ci
115561847f8eSopenharmony_ci  /**
115661847f8eSopenharmony_ci   * Set the alignment of grid items.
115761847f8eSopenharmony_ci   *
115861847f8eSopenharmony_ci   * @param { Optional<GridItemAlignment> } alignment - Items alignment
115961847f8eSopenharmony_ci   * @returns { GridAttribute } The attribute of the grid.
116061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
116161847f8eSopenharmony_ci   * @crossplatform
116261847f8eSopenharmony_ci   * @atomicservice
116361847f8eSopenharmony_ci   * @since 12
116461847f8eSopenharmony_ci   */
116561847f8eSopenharmony_ci    alignItems(alignment: Optional<GridItemAlignment>): GridAttribute;
116661847f8eSopenharmony_ci
116761847f8eSopenharmony_ci  /**
116861847f8eSopenharmony_ci   * Called When sliding the grid.
116961847f8eSopenharmony_ci   *
117061847f8eSopenharmony_ci   * @param { function } event - callback of grid scroll,
117161847f8eSopenharmony_ci   * scrollOffset is offset per frame scrolling, ScrollState is current sliding state.
117261847f8eSopenharmony_ci   * @returns { GridAttribute }
117361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
117461847f8eSopenharmony_ci   * @crossplatform
117561847f8eSopenharmony_ci   * @since 10
117661847f8eSopenharmony_ci   */
117761847f8eSopenharmony_ci  /**
117861847f8eSopenharmony_ci   * Called When sliding the grid.
117961847f8eSopenharmony_ci   *
118061847f8eSopenharmony_ci   * @param { function } event - callback of grid scroll,
118161847f8eSopenharmony_ci   * scrollOffset is offset per frame scrolling, ScrollState is current sliding state.
118261847f8eSopenharmony_ci   * @returns { GridAttribute }
118361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
118461847f8eSopenharmony_ci   * @crossplatform
118561847f8eSopenharmony_ci   * @atomicservice
118661847f8eSopenharmony_ci   * @since 11
118761847f8eSopenharmony_ci   * @deprecated since 12
118861847f8eSopenharmony_ci   * @useinstead common.ScrollableCommonMethod#onDidScroll
118961847f8eSopenharmony_ci   */
119061847f8eSopenharmony_ci  onScroll(event: (scrollOffset: number, scrollState: ScrollState) => void): GridAttribute;
119161847f8eSopenharmony_ci
119261847f8eSopenharmony_ci  /**
119361847f8eSopenharmony_ci   * Called when the grid begins to arrive.
119461847f8eSopenharmony_ci   *
119561847f8eSopenharmony_ci   * @param { function } event
119661847f8eSopenharmony_ci   * @returns { GridAttribute }
119761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
119861847f8eSopenharmony_ci   * @crossplatform
119961847f8eSopenharmony_ci   * @since 10
120061847f8eSopenharmony_ci   */
120161847f8eSopenharmony_ci  /**
120261847f8eSopenharmony_ci   * Called when the grid begins to arrive.
120361847f8eSopenharmony_ci   *
120461847f8eSopenharmony_ci   * @param { function } event
120561847f8eSopenharmony_ci   * @returns { GridAttribute }
120661847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
120761847f8eSopenharmony_ci   * @crossplatform
120861847f8eSopenharmony_ci   * @atomicservice
120961847f8eSopenharmony_ci   * @since 11
121061847f8eSopenharmony_ci   */
121161847f8eSopenharmony_ci  onReachStart(event: () => void): GridAttribute;
121261847f8eSopenharmony_ci
121361847f8eSopenharmony_ci  /**
121461847f8eSopenharmony_ci   * Called when the grid reaches the end.
121561847f8eSopenharmony_ci   *
121661847f8eSopenharmony_ci   * @param { function } event
121761847f8eSopenharmony_ci   * @returns { GridAttribute }
121861847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
121961847f8eSopenharmony_ci   * @crossplatform
122061847f8eSopenharmony_ci   * @since 10
122161847f8eSopenharmony_ci   */
122261847f8eSopenharmony_ci  /**
122361847f8eSopenharmony_ci   * Called when the grid reaches the end.
122461847f8eSopenharmony_ci   *
122561847f8eSopenharmony_ci   * @param { function } event
122661847f8eSopenharmony_ci   * @returns { GridAttribute }
122761847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
122861847f8eSopenharmony_ci   * @crossplatform
122961847f8eSopenharmony_ci   * @atomicservice
123061847f8eSopenharmony_ci   * @since 11
123161847f8eSopenharmony_ci   */
123261847f8eSopenharmony_ci  onReachEnd(event: () => void): GridAttribute;
123361847f8eSopenharmony_ci
123461847f8eSopenharmony_ci  /**
123561847f8eSopenharmony_ci   * Called when the slider start.
123661847f8eSopenharmony_ci   *
123761847f8eSopenharmony_ci   * @param { function } event
123861847f8eSopenharmony_ci   * @returns { GridAttribute }
123961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
124061847f8eSopenharmony_ci   * @crossplatform
124161847f8eSopenharmony_ci   * @since 10
124261847f8eSopenharmony_ci   */
124361847f8eSopenharmony_ci  /**
124461847f8eSopenharmony_ci   * Called when the slider start.
124561847f8eSopenharmony_ci   *
124661847f8eSopenharmony_ci   * @param { function } event
124761847f8eSopenharmony_ci   * @returns { GridAttribute }
124861847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
124961847f8eSopenharmony_ci   * @crossplatform
125061847f8eSopenharmony_ci   * @atomicservice
125161847f8eSopenharmony_ci   * @since 11
125261847f8eSopenharmony_ci   */
125361847f8eSopenharmony_ci  onScrollStart(event: () => void): GridAttribute;
125461847f8eSopenharmony_ci
125561847f8eSopenharmony_ci  /**
125661847f8eSopenharmony_ci   * Called when the slider stops.
125761847f8eSopenharmony_ci   *
125861847f8eSopenharmony_ci   * @param { function } event
125961847f8eSopenharmony_ci   * @returns { GridAttribute }
126061847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
126161847f8eSopenharmony_ci   * @crossplatform
126261847f8eSopenharmony_ci   * @since 10
126361847f8eSopenharmony_ci   */
126461847f8eSopenharmony_ci  /**
126561847f8eSopenharmony_ci   * Called when the slider stops.
126661847f8eSopenharmony_ci   *
126761847f8eSopenharmony_ci   * @param { function } event
126861847f8eSopenharmony_ci   * @returns { GridAttribute }
126961847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
127061847f8eSopenharmony_ci   * @crossplatform
127161847f8eSopenharmony_ci   * @atomicservice
127261847f8eSopenharmony_ci   * @since 11
127361847f8eSopenharmony_ci   */
127461847f8eSopenharmony_ci  onScrollStop(event: () => void): GridAttribute;
127561847f8eSopenharmony_ci
127661847f8eSopenharmony_ci  /**
127761847f8eSopenharmony_ci   * Called when scrolling begin each frame.
127861847f8eSopenharmony_ci   *
127961847f8eSopenharmony_ci   * @param { function } event - callback of grid scroll,
128061847f8eSopenharmony_ci   * offset is the amount of sliding that is about to occur, state is current sliding state,
128161847f8eSopenharmony_ci   * return number to actual sliding offset.
128261847f8eSopenharmony_ci   * @returns { GridAttribute }
128361847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
128461847f8eSopenharmony_ci   * @crossplatform
128561847f8eSopenharmony_ci   * @since 10
128661847f8eSopenharmony_ci   */
128761847f8eSopenharmony_ci  /**
128861847f8eSopenharmony_ci   * Called when scrolling begin each frame.
128961847f8eSopenharmony_ci   *
129061847f8eSopenharmony_ci   * @param { function } event - callback of grid scroll,
129161847f8eSopenharmony_ci   * offset is the amount of sliding that is about to occur, state is current sliding state,
129261847f8eSopenharmony_ci   * return number to actual sliding offset.
129361847f8eSopenharmony_ci   * @returns { GridAttribute }
129461847f8eSopenharmony_ci   * @syscap SystemCapability.ArkUI.ArkUI.Full
129561847f8eSopenharmony_ci   * @crossplatform
129661847f8eSopenharmony_ci   * @atomicservice
129761847f8eSopenharmony_ci   * @since 11
129861847f8eSopenharmony_ci   */
129961847f8eSopenharmony_ci  onScrollFrameBegin(event: (offset: number, state: ScrollState) => { offsetRemain: number }): GridAttribute;
130061847f8eSopenharmony_ci}
130161847f8eSopenharmony_ci
130261847f8eSopenharmony_ci/**
130361847f8eSopenharmony_ci * Defines Grid Component.
130461847f8eSopenharmony_ci *
130561847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
130661847f8eSopenharmony_ci * @since 7
130761847f8eSopenharmony_ci */
130861847f8eSopenharmony_ci/**
130961847f8eSopenharmony_ci * Defines Grid Component.
131061847f8eSopenharmony_ci *
131161847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
131261847f8eSopenharmony_ci * @crossplatform
131361847f8eSopenharmony_ci * @since 10
131461847f8eSopenharmony_ci */
131561847f8eSopenharmony_ci/**
131661847f8eSopenharmony_ci * Defines Grid Component.
131761847f8eSopenharmony_ci *
131861847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
131961847f8eSopenharmony_ci * @crossplatform
132061847f8eSopenharmony_ci * @atomicservice
132161847f8eSopenharmony_ci * @since 11
132261847f8eSopenharmony_ci */
132361847f8eSopenharmony_cideclare const Grid: GridInterface;
132461847f8eSopenharmony_ci
132561847f8eSopenharmony_ci/**
132661847f8eSopenharmony_ci * Defines Grid Component instance.
132761847f8eSopenharmony_ci *
132861847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
132961847f8eSopenharmony_ci * @since 7
133061847f8eSopenharmony_ci */
133161847f8eSopenharmony_ci/**
133261847f8eSopenharmony_ci * Defines Grid Component instance.
133361847f8eSopenharmony_ci *
133461847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
133561847f8eSopenharmony_ci * @crossplatform
133661847f8eSopenharmony_ci * @since 10
133761847f8eSopenharmony_ci */
133861847f8eSopenharmony_ci/**
133961847f8eSopenharmony_ci * Defines Grid Component instance.
134061847f8eSopenharmony_ci *
134161847f8eSopenharmony_ci * @syscap SystemCapability.ArkUI.ArkUI.Full
134261847f8eSopenharmony_ci * @crossplatform
134361847f8eSopenharmony_ci * @atomicservice
134461847f8eSopenharmony_ci * @since 11
134561847f8eSopenharmony_ci */
134661847f8eSopenharmony_cideclare const GridInstance: GridAttribute;
1347