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 * indexer align property.
23 *
24 * @enum { number }
25 * @syscap SystemCapability.ArkUI.ArkUI.Full
26 * @since 7
27 */
28/**
29 * indexer align property.
30 *
31 * @enum { number }
32 * @syscap SystemCapability.ArkUI.ArkUI.Full
33 * @crossplatform
34 * @since 10
35 */
36/**
37 * indexer align property.
38 *
39 * @enum { number }
40 * @syscap SystemCapability.ArkUI.ArkUI.Full
41 * @crossplatform
42 * @atomicservice
43 * @since 11
44 */
45declare enum IndexerAlign {
46  /**
47   * A dialog box is displayed on the right of the index bar.
48   *
49   * @syscap SystemCapability.ArkUI.ArkUI.Full
50   * @since 7
51   */
52  /**
53   * A dialog box is displayed on the right of the index bar.
54   *
55   * @syscap SystemCapability.ArkUI.ArkUI.Full
56   * @crossplatform
57   * @since 10
58   */
59  /**
60   * A dialog box is displayed on the right of the index bar.
61   *
62   * @syscap SystemCapability.ArkUI.ArkUI.Full
63   * @crossplatform
64   * @atomicservice
65   * @since 11
66   */
67  Left,
68
69  /**
70   * A dialog box is displayed on the left of the index bar.
71   *
72   * @syscap SystemCapability.ArkUI.ArkUI.Full
73   * @since 7
74   */
75  /**
76   * A dialog box is displayed on the left of the index bar.
77   *
78   * @syscap SystemCapability.ArkUI.ArkUI.Full
79   * @crossplatform
80   * @since 10
81   */
82  /**
83   * A dialog box is displayed on the left of the index bar.
84   *
85   * @syscap SystemCapability.ArkUI.ArkUI.Full
86   * @crossplatform
87   * @atomicservice
88   * @since 11
89   */
90  Right,
91
92  /**
93   * A dialog box is displayed on the start of the index bar.
94   *
95   * @syscap SystemCapability.ArkUI.ArkUI.Full
96   * @crossplatform
97   * @atomicservice
98   * @since 12
99   */
100  START,
101
102  /**
103   * A dialog box is displayed on the end of the index bar.
104   *
105   * @syscap SystemCapability.ArkUI.ArkUI.Full
106   * @crossplatform
107   * @atomicservice
108   * @since 12
109   */
110  END,
111}
112
113/**
114 * AlphabetIndexer constructor options.
115 *
116 * @interface AlphabetIndexerOptions
117 * @syscap SystemCapability.ArkUI.ArkUI.Full
118 * @crossplatform
119 * @atomicservice
120 * @since 13
121 */
122interface AlphabetIndexerOptions {
123  /**
124   * Alphabetical index string array.
125   *
126   * @type { Array<string> }
127   * @syscap SystemCapability.ArkUI.ArkUI.Full
128   * @since 7
129   */
130  /**
131   * Alphabetical index string array.
132   *
133   * @type { Array<string> }
134   * @syscap SystemCapability.ArkUI.ArkUI.Full
135   * @crossplatform
136   * @since 10
137   */
138  /**
139   * Alphabetical index string array.
140   *
141   * @type { Array<string> }
142   * @syscap SystemCapability.ArkUI.ArkUI.Full
143   * @crossplatform
144   * @atomicservice
145   * @since 11
146   */
147  arrayValue: Array<string>;
148  /**
149   * ID of the selected item.
150   *
151   * @type { number }
152   * @syscap SystemCapability.ArkUI.ArkUI.Full
153   * @since 7
154   */
155  /**
156   * ID of the selected item.
157   *
158   * @type { number }
159   * @syscap SystemCapability.ArkUI.ArkUI.Full
160   * @crossplatform
161   * @since 10
162   */
163  /**
164   * ID of the selected item.
165   *
166   * @type { number }
167   * @syscap SystemCapability.ArkUI.ArkUI.Full
168   * @crossplatform
169   * @atomicservice
170   * @since 11
171   */
172  selected: number;
173}
174
175/**
176 * Alphabet index bar.
177 *
178 * @interface AlphabetIndexerInterface
179 * @syscap SystemCapability.ArkUI.ArkUI.Full
180 * @since 7
181 */
182/**
183 * Alphabet index bar.
184 *
185 * @interface AlphabetIndexerInterface
186 * @syscap SystemCapability.ArkUI.ArkUI.Full
187 * @crossplatform
188 * @since 10
189 */
190/**
191 * Alphabet index bar.
192 *
193 * @interface AlphabetIndexerInterface
194 * @syscap SystemCapability.ArkUI.ArkUI.Full
195 * @crossplatform
196 * @atomicservice
197 * @since 11
198 */
199interface AlphabetIndexerInterface {
200  /**
201   * ArrayValue: Alphabetical index string array.
202   * selected: ID of the selected item.
203   *
204   * @param { object } value
205   * @returns { AlphabetIndexerAttribute }
206   * @syscap SystemCapability.ArkUI.ArkUI.Full
207   * @since 7
208   */
209  /**
210   * ArrayValue: Alphabetical index string array.
211   * selected: ID of the selected item.
212   *
213   * @param { object } value
214   * @returns { AlphabetIndexerAttribute }
215   * @syscap SystemCapability.ArkUI.ArkUI.Full
216   * @crossplatform
217   * @since 10
218   */
219  /**
220   * ArrayValue: Alphabetical index string array.
221   * selected: ID of the selected item.
222   *
223   * @param { object } value
224   * @returns { AlphabetIndexerAttribute }
225   * @syscap SystemCapability.ArkUI.ArkUI.Full
226   * @crossplatform
227   * @atomicservice
228   * @since 11
229   */
230  /**
231   * Construct the alphabet indexer component.
232   * Called when the alphabet indexer component is used.
233   *
234   * @param { AlphabetIndexerOptions } options - alphabet indexer options
235   * @returns { AlphabetIndexerAttribute }
236   * @syscap SystemCapability.ArkUI.ArkUI.Full
237   * @crossplatform
238   * @atomicservice
239   * @since 13
240   */
241  (options: AlphabetIndexerOptions): AlphabetIndexerAttribute;
242}
243
244/**
245 * Defines an AlphabetIndexer callback when onSelect.
246 *
247 * @typedef { function } OnAlphabetIndexerSelectCallback
248 * @param { number } index - selected index
249 * @syscap SystemCapability.ArkUI.ArkUI.Full
250 * @crossplatform
251 * @atomicservice
252 * @since 13
253 */
254declare type OnAlphabetIndexerSelectCallback  = (index: number) => void;
255
256/**
257 * Defines an AlphabetIndexer callback when onPopupSelect.
258 *
259 * @typedef { function } OnAlphabetIndexerPopupSelectCallback
260 * @param { number } index - selected index
261 * @syscap SystemCapability.ArkUI.ArkUI.Full
262 * @crossplatform
263 * @atomicservice
264 * @since 13
265 */
266declare type OnAlphabetIndexerPopupSelectCallback  = (index: number) => void;
267
268/**
269 * Defines an AlphabetIndexer callback when onRequestPopupData.
270 *
271 * @typedef { function } OnAlphabetIndexerRequestPopupDataCallback
272 * @param { number } index - selected index
273 * @returns { Array<string> } string array corresponding to the index
274 * @syscap SystemCapability.ArkUI.ArkUI.Full
275 * @crossplatform
276 * @atomicservice
277 * @since 13
278 */
279declare type OnAlphabetIndexerRequestPopupDataCallback  = (index: number) => Array<string>;
280
281/**
282 * Defines the alphabet index bar attribute functions.
283 *
284 * @extends CommonMethod<AlphabetIndexerAttribute>
285 * @syscap SystemCapability.ArkUI.ArkUI.Full
286 * @since 7
287 */
288/**
289 * Defines the alphabet index bar attribute functions.
290 *
291 * @extends CommonMethod<AlphabetIndexerAttribute>
292 * @syscap SystemCapability.ArkUI.ArkUI.Full
293 * @crossplatform
294 * @since 10
295 */
296/**
297 * Defines the alphabet index bar attribute functions.
298 *
299 * @extends CommonMethod<AlphabetIndexerAttribute>
300 * @syscap SystemCapability.ArkUI.ArkUI.Full
301 * @crossplatform
302 * @atomicservice
303 * @since 11
304 */
305declare class AlphabetIndexerAttribute extends CommonMethod<AlphabetIndexerAttribute> {
306  /**
307   * Index bar selection callback.
308   *
309   * @param { function } callback
310   * @returns { AlphabetIndexerAttribute }
311   * @syscap SystemCapability.ArkUI.ArkUI.Full
312   * @since 7
313   * @deprecated since 8
314   * @useinstead onSelect
315   */
316  onSelected(callback: (index: number) => void): AlphabetIndexerAttribute;
317
318  /**
319   * Definitions color.
320   *
321   * @param { ResourceColor } value
322   * @returns { AlphabetIndexerAttribute }
323   * @syscap SystemCapability.ArkUI.ArkUI.Full
324   * @since 7
325   */
326  /**
327   * Definitions color.
328   *
329   * @param { ResourceColor } value
330   * @returns { AlphabetIndexerAttribute }
331   * @syscap SystemCapability.ArkUI.ArkUI.Full
332   * @crossplatform
333   * @since 10
334   */
335  /**
336   * Definitions color.
337   *
338   * @param { ResourceColor } value
339   * @returns { AlphabetIndexerAttribute }
340   * @syscap SystemCapability.ArkUI.ArkUI.Full
341   * @crossplatform
342   * @atomicservice
343   * @since 11
344   */
345  color(value: ResourceColor): AlphabetIndexerAttribute;
346
347  /**
348   * Select the text color.
349   *
350   * @param { ResourceColor } value
351   * @returns { AlphabetIndexerAttribute }
352   * @syscap SystemCapability.ArkUI.ArkUI.Full
353   * @since 7
354   */
355  /**
356   * Select the text color.
357   *
358   * @param { ResourceColor } value
359   * @returns { AlphabetIndexerAttribute }
360   * @syscap SystemCapability.ArkUI.ArkUI.Full
361   * @crossplatform
362   * @since 10
363   */
364  /**
365   * Select the text color.
366   *
367   * @param { ResourceColor } value
368   * @returns { AlphabetIndexerAttribute }
369   * @syscap SystemCapability.ArkUI.ArkUI.Full
370   * @crossplatform
371   * @atomicservice
372   * @since 11
373   */
374  selectedColor(value: ResourceColor): AlphabetIndexerAttribute;
375
376  /**
377   * Font color of the pop-up prompt text.
378   *
379   * @param { ResourceColor } value
380   * @returns { AlphabetIndexerAttribute }
381   * @syscap SystemCapability.ArkUI.ArkUI.Full
382   * @since 7
383   */
384  /**
385   * Font color of the pop-up prompt text.
386   *
387   * @param { ResourceColor } value
388   * @returns { AlphabetIndexerAttribute }
389   * @syscap SystemCapability.ArkUI.ArkUI.Full
390   * @crossplatform
391   * @since 10
392   */
393  /**
394   * Font color of the pop-up prompt text.
395   *
396   * @param { ResourceColor } value
397   * @returns { AlphabetIndexerAttribute }
398   * @syscap SystemCapability.ArkUI.ArkUI.Full
399   * @crossplatform
400   * @atomicservice
401   * @since 11
402   */
403  popupColor(value: ResourceColor): AlphabetIndexerAttribute;
404
405  /**
406   * Select the text background color.
407   *
408   * @param { ResourceColor } value
409   * @returns { AlphabetIndexerAttribute }
410   * @syscap SystemCapability.ArkUI.ArkUI.Full
411   * @since 7
412   */
413  /**
414   * Select the text background color.
415   *
416   * @param { ResourceColor } value
417   * @returns { AlphabetIndexerAttribute }
418   * @syscap SystemCapability.ArkUI.ArkUI.Full
419   * @crossplatform
420   * @since 10
421   */
422  /**
423   * Select the text background color.
424   *
425   * @param { ResourceColor } value
426   * @returns { AlphabetIndexerAttribute }
427   * @syscap SystemCapability.ArkUI.ArkUI.Full
428   * @crossplatform
429   * @atomicservice
430   * @since 11
431   */
432  selectedBackgroundColor(value: ResourceColor): AlphabetIndexerAttribute;
433
434  /**
435   * Background color of the pop-up window index.
436   *
437   * @param { ResourceColor } value
438   * @returns { AlphabetIndexerAttribute }
439   * @syscap SystemCapability.ArkUI.ArkUI.Full
440   * @since 7
441   */
442  /**
443   * Background color of the pop-up window index.
444   *
445   * @param { ResourceColor } value
446   * @returns { AlphabetIndexerAttribute }
447   * @syscap SystemCapability.ArkUI.ArkUI.Full
448   * @crossplatform
449   * @since 10
450   */
451  /**
452   * Background color of the pop-up window index.
453   *
454   * @param { ResourceColor } value
455   * @returns { AlphabetIndexerAttribute }
456   * @syscap SystemCapability.ArkUI.ArkUI.Full
457   * @crossplatform
458   * @atomicservice
459   * @since 11
460   */
461  popupBackground(value: ResourceColor): AlphabetIndexerAttribute;
462
463  /**
464   * Set the selected font color of non-alphabetic part of the pop-up window.
465   *
466   * @param { ResourceColor } value - indicates the color of the selected font.
467   * @returns { AlphabetIndexerAttribute }
468   * @syscap SystemCapability.ArkUI.ArkUI.Full
469   * @since 10
470   */
471  /**
472   * Set the selected font color of non-alphabetic part of the pop-up window.
473   *
474   * @param { ResourceColor } value - indicates the color of the selected font.
475   * @returns { AlphabetIndexerAttribute }
476   * @syscap SystemCapability.ArkUI.ArkUI.Full
477   * @crossplatform
478   * @since 10
479   */
480  /**
481   * Set the selected font color of non-alphabetic part of the pop-up window.
482   *
483   * @param { ResourceColor } value - indicates the color of the selected font.
484   * @returns { AlphabetIndexerAttribute }
485   * @syscap SystemCapability.ArkUI.ArkUI.Full
486   * @crossplatform
487   * @atomicservice
488   * @since 11
489   */
490  popupSelectedColor(value: ResourceColor): AlphabetIndexerAttribute;
491
492  /**
493   * Set the unselected font color of non-alphabetic part of the pop-up window.
494   *
495   * @param { ResourceColor } value - indicates the color of the unselected font.
496   * @returns { AlphabetIndexerAttribute }
497   * @syscap SystemCapability.ArkUI.ArkUI.Full
498   * @crossplatform
499   * @since 10
500   */
501  /**
502   * Set the unselected font color of non-alphabetic part of the pop-up window.
503   *
504   * @param { ResourceColor } value - indicates the color of the unselected font.
505   * @returns { AlphabetIndexerAttribute }
506   * @syscap SystemCapability.ArkUI.ArkUI.Full
507   * @crossplatform
508   * @atomicservice
509   * @since 11
510   */
511  popupUnselectedColor(value: ResourceColor): AlphabetIndexerAttribute;
512
513  /**
514   * Set the background color of non-alphabetic part of the pop-up window.
515   *
516   * @param { ResourceColor } value - indicates the color of background.
517   * @returns { AlphabetIndexerAttribute }
518   * @syscap SystemCapability.ArkUI.ArkUI.Full
519   * @crossplatform
520   * @since 10
521   */
522  /**
523   * Set the background color of non-alphabetic part of the pop-up window.
524   *
525   * @param { ResourceColor } value - indicates the color of background.
526   * @returns { AlphabetIndexerAttribute }
527   * @syscap SystemCapability.ArkUI.ArkUI.Full
528   * @crossplatform
529   * @atomicservice
530   * @since 11
531   */
532  popupItemBackgroundColor(value: ResourceColor): AlphabetIndexerAttribute;
533
534  /**
535   * Whether to use pop-up index hints.
536   *
537   * @param { boolean } value
538   * @returns { AlphabetIndexerAttribute }
539   * @syscap SystemCapability.ArkUI.ArkUI.Full
540   * @since 7
541   */
542  /**
543   * Whether to use pop-up index hints.
544   *
545   * @param { boolean } value
546   * @returns { AlphabetIndexerAttribute }
547   * @syscap SystemCapability.ArkUI.ArkUI.Full
548   * @crossplatform
549   * @since 10
550   */
551  /**
552   * Whether to use pop-up index hints.
553   *
554   * @param { boolean } value
555   * @returns { AlphabetIndexerAttribute }
556   * @syscap SystemCapability.ArkUI.ArkUI.Full
557   * @crossplatform
558   * @atomicservice
559   * @since 11
560   */
561  usingPopup(value: boolean): AlphabetIndexerAttribute;
562
563  /**
564   * Select the text text style,
565   *
566   * @param { Font } value
567   * @returns { AlphabetIndexerAttribute }
568   * @syscap SystemCapability.ArkUI.ArkUI.Full
569   * @since 7
570   */
571  /**
572   * Select the text text style,
573   *
574   * @param { Font } value
575   * @returns { AlphabetIndexerAttribute }
576   * @syscap SystemCapability.ArkUI.ArkUI.Full
577   * @crossplatform
578   * @since 10
579   */
580  /**
581   * Select the text text style,
582   *
583   * @param { Font } value
584   * @returns { AlphabetIndexerAttribute }
585   * @syscap SystemCapability.ArkUI.ArkUI.Full
586   * @crossplatform
587   * @atomicservice
588   * @since 11
589   */
590  selectedFont(value: Font): AlphabetIndexerAttribute;
591
592  /**
593   * Select the text background color.
594   *
595   * @param { Font } value
596   * @returns { AlphabetIndexerAttribute }
597   * @syscap SystemCapability.ArkUI.ArkUI.Full
598   * @since 7
599   */
600  /**
601   * Select the text background color.
602   *
603   * @param { Font } value
604   * @returns { AlphabetIndexerAttribute }
605   * @syscap SystemCapability.ArkUI.ArkUI.Full
606   * @crossplatform
607   * @since 10
608   */
609  /**
610   * Select the text background color.
611   *
612   * @param { Font } value
613   * @returns { AlphabetIndexerAttribute }
614   * @syscap SystemCapability.ArkUI.ArkUI.Full
615   * @crossplatform
616   * @atomicservice
617   * @since 11
618   */
619  popupFont(value: Font): AlphabetIndexerAttribute;
620
621  /**
622   * Set the font style of non-alphabetic part of the prompt pop-up window.
623   * Family and style are not supported currently and will be fixed in future.
624   *
625   * @param { Font } value - indicates the style of the font.
626   * @returns { AlphabetIndexerAttribute }
627   * @syscap SystemCapability.ArkUI.ArkUI.Full
628   * @crossplatform
629   * @since 10
630   */
631  /**
632   * Set the font style of non-alphabetic part of the prompt pop-up window.
633   * Family and style are not supported currently and will be fixed in future.
634   *
635   * @param { Font } value - indicates the style of the font.
636   * @returns { AlphabetIndexerAttribute }
637   * @syscap SystemCapability.ArkUI.ArkUI.Full
638   * @crossplatform
639   * @atomicservice
640   * @since 11
641   */
642  popupItemFont(value: Font): AlphabetIndexerAttribute;
643
644  /**
645   * Size of the letter area on the letter index bar. The letter area is a square. Set the length of the square side.
646   *
647   * @param { string | number } value
648   * @returns { AlphabetIndexerAttribute }
649   * @syscap SystemCapability.ArkUI.ArkUI.Full
650   * @since 7
651   */
652  /**
653   * Size of the letter area on the letter index bar. The letter area is a square. Set the length of the square side.
654   *
655   * @param { string | number } value
656   * @returns { AlphabetIndexerAttribute }
657   * @syscap SystemCapability.ArkUI.ArkUI.Full
658   * @crossplatform
659   * @since 10
660   */
661  /**
662   * Size of the letter area on the letter index bar. The letter area is a square. Set the length of the square side.
663   *
664   * @param { string | number } value
665   * @returns { AlphabetIndexerAttribute }
666   * @syscap SystemCapability.ArkUI.ArkUI.Full
667   * @crossplatform
668   * @atomicservice
669   * @since 11
670   */
671  itemSize(value: string | number): AlphabetIndexerAttribute;
672
673  /**
674   * Definitions fonts.
675   *
676   * @param { Font } value
677   * @returns { AlphabetIndexerAttribute }
678   * @syscap SystemCapability.ArkUI.ArkUI.Full
679   * @since 7
680   */
681  /**
682   * Definitions fonts.
683   *
684   * @param { Font } value
685   * @returns { AlphabetIndexerAttribute }
686   * @syscap SystemCapability.ArkUI.ArkUI.Full
687   * @crossplatform
688   * @since 10
689   */
690  /**
691   * Definitions fonts.
692   *
693   * @param { Font } value
694   * @returns { AlphabetIndexerAttribute }
695   * @syscap SystemCapability.ArkUI.ArkUI.Full
696   * @crossplatform
697   * @atomicservice
698   * @since 11
699   */
700  font(value: Font): AlphabetIndexerAttribute;
701
702  /**
703   * Alphabet index bar alignment style. The left and right alignment styles are supported,
704   * which affects the pop-up position of the pop-up window.
705   *
706   * @param { IndexerAlign } value - indicates the alignment style of Alphabet index.
707   * @returns { AlphabetIndexerAttribute }
708   * @syscap SystemCapability.ArkUI.ArkUI.Full
709   * @since 7
710   */
711  /**
712   * Alphabet index bar alignment style. The left and right alignment styles are supported,
713   * which affects the pop-up position of the pop-up window.
714   *
715   * @param { IndexerAlign } value - indicates the alignment style of Alphabet index.
716   * @param { Length } [offset] - indicates the horizontal space between pop-up window and indexer bar.
717   * @returns { AlphabetIndexerAttribute }
718   * @syscap SystemCapability.ArkUI.ArkUI.Full
719   * @crossplatform
720   * @since 10
721   */
722  /**
723   * Alphabet index bar alignment style. The left and right alignment styles are supported,
724   * which affects the pop-up position of the pop-up window.
725   *
726   * @param { IndexerAlign } value - indicates the alignment style of Alphabet index.
727   * @param { Length } [offset] - indicates the horizontal space between pop-up window and indexer bar.
728   * @returns { AlphabetIndexerAttribute }
729   * @syscap SystemCapability.ArkUI.ArkUI.Full
730   * @crossplatform
731   * @atomicservice
732   * @since 11
733   */
734  alignStyle(value: IndexerAlign, offset?: Length): AlphabetIndexerAttribute;
735
736  /**
737   * Index bar selection callback.
738   *
739   * @param { function } callback
740   * @returns { AlphabetIndexerAttribute }
741   * @syscap SystemCapability.ArkUI.ArkUI.Full
742   * @since 8
743   */
744  /**
745   * Index bar selection callback.
746   *
747   * @param { function } callback
748   * @returns { AlphabetIndexerAttribute }
749   * @syscap SystemCapability.ArkUI.ArkUI.Full
750   * @crossplatform
751   * @since 10
752   */
753  /**
754   * Index bar selection callback.
755   *
756   * @param { function } callback
757   * @returns { AlphabetIndexerAttribute }
758   * @syscap SystemCapability.ArkUI.ArkUI.Full
759   * @crossplatform
760   * @atomicservice
761   * @since 11
762   */
763  /**
764   * Index bar selection callback.
765   *
766   * @param { OnAlphabetIndexerSelectCallback } callback
767   * @returns { AlphabetIndexerAttribute }
768   * @syscap SystemCapability.ArkUI.ArkUI.Full
769   * @crossplatform
770   * @atomicservice
771   * @since 13
772   */
773  onSelect(callback: OnAlphabetIndexerSelectCallback): AlphabetIndexerAttribute;
774
775  /**
776   * Index bar selection callback and return the strings which display on pop-up.
777   *
778   * @param { function } callback
779   * @returns { AlphabetIndexerAttribute }
780   * @syscap SystemCapability.ArkUI.ArkUI.Full
781   * @since 8
782   */
783  /**
784   * Index bar selection callback and return the strings which display on pop-up.
785   *
786   * @param { function } callback
787   * @returns { AlphabetIndexerAttribute }
788   * @syscap SystemCapability.ArkUI.ArkUI.Full
789   * @crossplatform
790   * @since 10
791   */
792  /**
793   * Index bar selection callback and return the strings which display on pop-up.
794   *
795   * @param { function } callback
796   * @returns { AlphabetIndexerAttribute }
797   * @syscap SystemCapability.ArkUI.ArkUI.Full
798   * @crossplatform
799   * @atomicservice
800   * @since 11
801   */
802  /**
803   * Index bar selection callback and return the strings which display on pop-up.
804   *
805   * @param { OnAlphabetIndexerRequestPopupDataCallback } callback
806   * @returns { AlphabetIndexerAttribute }
807   * @syscap SystemCapability.ArkUI.ArkUI.Full
808   * @crossplatform
809   * @atomicservice
810   * @since 13
811   */
812  onRequestPopupData(callback: OnAlphabetIndexerRequestPopupDataCallback): AlphabetIndexerAttribute;
813
814  /**
815   * Pop-up selection callback.
816   *
817   * @param { function } callback
818   * @returns { AlphabetIndexerAttribute }
819   * @syscap SystemCapability.ArkUI.ArkUI.Full
820   * @since 8
821   */
822  /**
823   * Pop-up selection callback.
824   *
825   * @param { function } callback
826   * @returns { AlphabetIndexerAttribute }
827   * @syscap SystemCapability.ArkUI.ArkUI.Full
828   * @crossplatform
829   * @since 10
830   */
831  /**
832   * Pop-up selection callback.
833   *
834   * @param { function } callback
835   * @returns { AlphabetIndexerAttribute }
836   * @syscap SystemCapability.ArkUI.ArkUI.Full
837   * @crossplatform
838   * @atomicservice
839   * @since 11
840   */
841  /**
842   * Pop-up selection callback.
843   *
844   * @param { OnAlphabetIndexerPopupSelectCallback } callback
845   * @returns { AlphabetIndexerAttribute }
846   * @syscap SystemCapability.ArkUI.ArkUI.Full
847   * @crossplatform
848   * @atomicservice
849   * @since 13
850   */
851  onPopupSelect(callback: OnAlphabetIndexerPopupSelectCallback): AlphabetIndexerAttribute;
852
853  /**
854   * Sets the selected index.
855   *
856   * @param { number } index
857   * @returns { AlphabetIndexerAttribute }
858   * @syscap SystemCapability.ArkUI.ArkUI.Full
859   * @since 8
860   */
861  /**
862   * Sets the selected index.
863   *
864   * @param { number } index
865   * @returns { AlphabetIndexerAttribute }
866   * @syscap SystemCapability.ArkUI.ArkUI.Full
867   * @crossplatform
868   * @since 10
869   */
870  /**
871   * Sets the selected index.
872   *
873   * @param { number } index
874   * @returns { AlphabetIndexerAttribute }
875   * @syscap SystemCapability.ArkUI.ArkUI.Full
876   * @crossplatform
877   * @atomicservice
878   * @since 11
879   */
880  selected(index: number): AlphabetIndexerAttribute;
881
882  /**
883   * Position of the pop-up windows, relative to the midpoint of the top border of the indexer bar.
884   *
885   * @param { Position } value
886   * @returns { AlphabetIndexerAttribute }
887   * @syscap SystemCapability.ArkUI.ArkUI.Full
888   * @since 8
889   */
890  /**
891   * Position of the pop-up windows, relative to the midpoint of the top border of the indexer bar.
892   *
893   * @param { Position } value
894   * @returns { AlphabetIndexerAttribute }
895   * @syscap SystemCapability.ArkUI.ArkUI.Full
896   * @crossplatform
897   * @since 10
898   */
899  /**
900   * Position of the pop-up windows, relative to the midpoint of the top border of the indexer bar.
901   *
902   * @param { Position } value
903   * @returns { AlphabetIndexerAttribute }
904   * @syscap SystemCapability.ArkUI.ArkUI.Full
905   * @crossplatform
906   * @atomicservice
907   * @since 11
908   */
909  popupPosition(value: Position): AlphabetIndexerAttribute;
910
911  /**
912   * Automatically collapses the characters when the indexer bar not high enough to display all characters.
913   *
914   * @param { boolean } value - A boolean value determines whether auto collapses is enabled for indexer bar.
915   * @returns { AlphabetIndexerAttribute }
916   * @syscap SystemCapability.ArkUI.ArkUI.Full
917   * @crossplatform
918   * @since 11
919   */
920  /**
921   * Automatically collapses the characters when the indexer bar not high enough to display all characters.
922   *
923   * @param { boolean } value - A boolean value determines whether auto collapses is enabled for indexer bar.
924   * @returns { AlphabetIndexerAttribute }
925   * @syscap SystemCapability.ArkUI.ArkUI.Full
926   * @crossplatform
927   * @atomicservice
928   * @since 12
929   */
930  autoCollapse(value: boolean): AlphabetIndexerAttribute;
931
932  /**
933   * Set the radius of the item of the pop-up window.
934   *
935   * @param { number } value
936   * @returns { AlphabetIndexerAttribute }
937   * @syscap SystemCapability.ArkUI.ArkUI.Full
938   * @crossplatform
939   * @atomicservice
940   * @since 12
941   */
942  popupItemBorderRadius(value: number): AlphabetIndexerAttribute;
943
944  /**
945   * Set the radius of the item of the indexer.
946   *
947   * @param { number } value
948   * @returns { AlphabetIndexerAttribute }
949   * @syscap SystemCapability.ArkUI.ArkUI.Full
950   * @crossplatform
951   * @atomicservice
952   * @since 12
953   */
954  itemBorderRadius(value: number): AlphabetIndexerAttribute;
955
956  /**
957   * Set the background blurStyle of title of the pop-up window.
958   *
959   * @param { BlurStyle } value
960   * @returns { AlphabetIndexerAttribute }
961   * @syscap SystemCapability.ArkUI.ArkUI.Full
962   * @crossplatform
963   * @atomicservice
964   * @since 12
965   */
966  popupBackgroundBlurStyle(value: BlurStyle): AlphabetIndexerAttribute;
967
968  /**
969   * Set the background color of title of the pop-up window.
970   *
971   * @param { ResourceColor } value
972   * @returns { AlphabetIndexerAttribute }
973   * @syscap SystemCapability.ArkUI.ArkUI.Full
974   * @crossplatform
975   * @atomicservice
976   * @since 12
977   */
978  popupTitleBackground(value: ResourceColor): AlphabetIndexerAttribute;
979
980  /**
981   * Enable or disable haptic feedback.
982   *
983   * @param { boolean } value - Default value is true, set false to disable haptic feedback.
984   * @returns { AlphabetIndexerAttribute }
985   * @syscap SystemCapability.ArkUI.ArkUI.Full
986   * @atomicservice
987   * @since 12
988   */
989  enableHapticFeedback(value: boolean): AlphabetIndexerAttribute;
990}
991
992/**
993 * Defines AlphabetIndexer Component.
994 *
995 * @syscap SystemCapability.ArkUI.ArkUI.Full
996 * @since 7
997 */
998/**
999 * Defines AlphabetIndexer Component.
1000 *
1001 * @syscap SystemCapability.ArkUI.ArkUI.Full
1002 * @crossplatform
1003 * @since 10
1004 */
1005/**
1006 * Defines AlphabetIndexer Component.
1007 *
1008 * @syscap SystemCapability.ArkUI.ArkUI.Full
1009 * @crossplatform
1010 * @atomicservice
1011 * @since 11
1012 */
1013declare const AlphabetIndexer: AlphabetIndexerInterface;
1014
1015/**
1016 * Defines AlphabetIndexer Component instance.
1017 *
1018 * @syscap SystemCapability.ArkUI.ArkUI.Full
1019 * @since 7
1020 */
1021/**
1022 * Defines AlphabetIndexer Component instance.
1023 *
1024 * @syscap SystemCapability.ArkUI.ArkUI.Full
1025 * @crossplatform
1026 * @since 10
1027 */
1028/**
1029 * Defines AlphabetIndexer Component instance.
1030 *
1031 * @syscap SystemCapability.ArkUI.ArkUI.Full
1032 * @crossplatform
1033 * @atomicservice
1034 * @since 11
1035 */
1036declare const AlphabetIndexerInstance: AlphabetIndexerAttribute;
1037