• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/*
2* Copyright (C) 2023-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/// <reference path="../component/units.d.ts" />
22
23import { ResourceStr } from 'GlobalResource';
24
25/**
26 * Declare FilterType
27 * @enum { FilterType }
28 * @syscap SystemCapability.ArkUI.ArkUI.Full
29 * @since 10
30 */
31
32
33/**
34 * Declare FilterType
35 * @enum { FilterType }
36 * @syscap SystemCapability.ArkUI.ArkUI.Full
37 * @atomicservice
38 * @since 11
39 */
40export declare enum FilterType {
41    /**
42     * The multi_line_filter type.
43     * @syscap SystemCapability.ArkUI.ArkUI.Full
44     * @since 10
45     */
46    /**
47     * The multi_line_filter type.
48     * @syscap SystemCapability.ArkUI.ArkUI.Full
49     * @atomicservice
50     * @since 11
51     */
52    MULTI_LINE_FILTER = 0,
53
54    /**
55     * The list_filter type.
56     * @syscap SystemCapability.ArkUI.ArkUI.Full
57     * @since 10
58     */
59    /**
60     * The list_filter type.
61     * @syscap SystemCapability.ArkUI.ArkUI.Full
62     * @atomicservice
63     * @since 11
64     */
65    LIST_FILTER = 1
66}
67
68/**
69 * This parameter is used to define the input of each filtering dimension.
70 * @syscap SystemCapability.ArkUI.ArkUI.Full
71 * @since 10
72 */
73/**
74 * This parameter is used to define the input of each filtering dimension.
75 * @syscap SystemCapability.ArkUI.ArkUI.Full
76 * @atomicservice
77 * @since 11
78 */
79export declare class FilterParams {
80    /**
81     * filter item name.
82     * @type { ResourceStr }
83     * @syscap SystemCapability.ArkUI.ArkUI.Full
84     * @since 10
85     */
86    /**
87     * filter item name.
88     * @type { ResourceStr }
89     * @syscap SystemCapability.ArkUI.ArkUI.Full
90     * @atomicservice
91     * @since 11
92     */
93    name: ResourceStr;
94    /**
95     * filter options.
96     * @type { Array<ResourceStr> }
97     * @syscap SystemCapability.ArkUI.ArkUI.Full
98     * @since 10
99     */
100    /**
101     * filter options.
102     * @type { Array<ResourceStr> }
103     * @syscap SystemCapability.ArkUI.ArkUI.Full
104     * @atomicservice
105     * @since 11
106     */
107    options: Array<ResourceStr>;
108}
109
110/**
111 * This parameter specifies the selection result of a filtering dimension.
112 * The index starts from 0.
113 * @syscap SystemCapability.ArkUI.ArkUI.Full
114 * @since 10
115 */
116/**
117 * This parameter specifies the selection result of a filtering dimension.
118 * The index starts from 0.
119 * @syscap SystemCapability.ArkUI.ArkUI.Full
120 * @atomicservice
121 * @since 11
122 */
123export declare class FilterResult {
124    /**
125     * result name.
126     * @type { ResourceStr }
127     * @syscap SystemCapability.ArkUI.ArkUI.Full
128     * @since 10
129     */
130    /**
131     * result name.
132     * @type { ResourceStr }
133     * @syscap SystemCapability.ArkUI.ArkUI.Full
134     * @atomicservice
135     * @since 11
136     */
137    name: ResourceStr;
138    /**
139     * result index.
140     * @type { number }
141     * @syscap SystemCapability.ArkUI.ArkUI.Full
142     * @since 10
143     */
144    /**
145     * result index.
146     * @type { number }
147     * @syscap SystemCapability.ArkUI.ArkUI.Full
148     * @atomicservice
149     * @since 11
150     */
151    index: number;
152    /**
153     * result value.
154     * @type { ResourceStr }
155     * @syscap SystemCapability.ArkUI.ArkUI.Full
156     * @since 10
157     */
158    /**
159     * result value.
160     * @type { ResourceStr }
161     * @syscap SystemCapability.ArkUI.ArkUI.Full
162     * @atomicservice
163     * @since 11
164     */
165    value: ResourceStr;
166}
167
168/**
169 * Declare Filter.The Filter is used in scenarios where multi-dimensional filtering is required.
170 * @syscap SystemCapability.ArkUI.ArkUI.Full
171 * @since 10
172 */
173/**
174 * Declare Filter.The Filter is used in scenarios where multi-dimensional filtering is required.
175 * @syscap SystemCapability.ArkUI.ArkUI.Full
176 * @atomicservice
177 * @since 11
178 */
179@Component
180export declare struct Filter {
181    /**
182     * Container in the user-defined filtering result display area.
183     * @type { () => void }
184     * @syscap SystemCapability.ArkUI.ArkUI.Full
185     * @since 10
186     */
187    /**
188     * Container in the user-defined filtering result display area.
189     * @type { () => void }
190     * @syscap SystemCapability.ArkUI.ArkUI.Full
191     * @atomicservice
192     * @since 11
193     */
194    @BuilderParam container: () => void;
195
196    /**
197     * Multi-dimensional filtering parameters.
198     * @type { Array<FilterParams> }
199     * @syscap SystemCapability.ArkUI.ArkUI.Full
200     * @since 10
201     */
202    /**
203     * Multi-dimensional filtering parameters.
204     * @type { Array<FilterParams> }
205     * @syscap SystemCapability.ArkUI.ArkUI.Full
206     * @atomicservice
207     * @since 11
208     */
209    @Prop multiFilters: Array<FilterParams>;
210
211    /**
212     * FilterParams, Additional filter item parameter. The filter item name is displayed and can be deselected.
213     * @type { ?FilterParams }
214     * @syscap SystemCapability.ArkUI.ArkUI.Full
215     * @since 10
216     */
217    /**
218     * FilterParams, Additional filter item parameter. The filter item name is displayed and can be deselected.
219     * @type { ?FilterParams }
220     * @syscap SystemCapability.ArkUI.ArkUI.Full
221     * @atomicservice
222     * @since 11
223     */
224    @Prop additionFilters?: FilterParams;
225
226    /**
227     * FilterParams, Callback method after a user clicks a filter item.
228     * @param { (filterResults: Array<FilterResult>) => void } FilterType, Filter display style type.
229     * @syscap SystemCapability.ArkUI.ArkUI.Full
230     * @since 10
231     */
232    /**
233     * FilterParams, Callback method after a user clicks a filter item.
234     * @param { (filterResults: Array<FilterResult>) => void } FilterType, Filter display style type.
235     * @syscap SystemCapability.ArkUI.ArkUI.Full
236     * @atomicservice
237     * @since 11
238     */
239    onFilterChanged: (filterResults: Array<FilterResult>) => void;
240
241    /**
242     * FilterType, Filter display style type.
243     * @type { ?FilterType }
244     * @syscap SystemCapability.ArkUI.ArkUI.Full
245     * @since 10
246     */
247    /**
248     * FilterType, Filter display style type.
249     * @type { ?FilterType }
250     * @syscap SystemCapability.ArkUI.ArkUI.Full
251     * @atomicservice
252     * @since 11
253     */
254    @Prop filterType?: FilterType;
255}