1/* 2 * Copyright (c) 2021-2025 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/*** if arkts 1.2 */ 22import { BackgroundBlurStyleOptions, BackgroundEffectOptions, BlurStyle, Callback, CommonMethod, Optional, TranslateOptions, DividerStyle } from './common'; 23import { EdgeEffect, PageFlipMode } from './enums'; 24import { Dimension, Length, ResourceColor } from './units'; 25import { CommonModifier } from "../CommonModifier"; 26/*** endif */ 27 28/** 29 * CommonModifier 30 * 31 * @typedef { import('../api/arkui/CommonModifier').CommonModifier } CommonModifier 32 * @syscap SystemCapability.ArkUI.ArkUI.Full 33 * @crossplatform 34 * @atomicservice 35 * @since 15 36 */ 37declare type CommonModifier = import('../api/arkui/CommonModifier').CommonModifier; 38 39/** 40 * Declare the graphic format of the bar chart. 41 * 42 * @enum { number } 43 * @syscap SystemCapability.ArkUI.ArkUI.Full 44 * @since 7 45 */ 46/** 47 * Declare the graphic format of the bar chart. 48 * 49 * @enum { number } 50 * @syscap SystemCapability.ArkUI.ArkUI.Full 51 * @crossplatform 52 * @since 10 53 */ 54/** 55 * Declare the graphic format of the bar chart. 56 * 57 * @enum { number } 58 * @syscap SystemCapability.ArkUI.ArkUI.Full 59 * @crossplatform 60 * @atomicservice 61 * @since arkts {'1.1':'11','1.2':'20'} 62 * @arkts 1.1&1.2 63 */ 64declare enum BarMode { 65 /** 66 * The actual layout width of the TabBar is used. If the width exceeds the total width, you can slide the tabbar. 67 * 68 * @syscap SystemCapability.ArkUI.ArkUI.Full 69 * @since 7 70 */ 71 /** 72 * The actual layout width of the TabBar is used. If the width exceeds the total width, you can slide the tabbar. 73 * 74 * @syscap SystemCapability.ArkUI.ArkUI.Full 75 * @crossplatform 76 * @since 10 77 */ 78 /** 79 * The width of each tab is determined by the actual layout. The tabs are scrollable in the following case: 80 * In horizontal layout, the total width exceeds the tab bar width; in vertical layout, 81 * the total height exceeds the tab bar height. 82 * 83 * @syscap SystemCapability.ArkUI.ArkUI.Full 84 * @crossplatform 85 * @atomicservice 86 * @since arkts {'1.1':'11','1.2':'20'} 87 * @arkts 1.1&1.2 88 */ 89 Scrollable = 0, 90 91 /** 92 * The width of all TabBars is evenly allocated. 93 * 94 * @syscap SystemCapability.ArkUI.ArkUI.Full 95 * @since 7 96 */ 97 /** 98 * The width of all TabBars is evenly allocated. 99 * 100 * @syscap SystemCapability.ArkUI.ArkUI.Full 101 * @crossplatform 102 * @since 10 103 */ 104 /** 105 * The width of each tab is determined by equally dividing the number of tabs by the bar width 106 * (or bar height in the vertical layout). 107 * 108 * @syscap SystemCapability.ArkUI.ArkUI.Full 109 * @crossplatform 110 * @atomicservice 111 * @since arkts {'1.1':'11','1.2':'20'} 112 * @arkts 1.1&1.2 113 */ 114 Fixed = 1, 115} 116 117/** 118 * Declare the animation mode of tab content. 119 * 120 * @enum { number } 121 * @syscap SystemCapability.ArkUI.ArkUI.Full 122 * @crossplatform 123 * @atomicservice 124 * @since arkts {'1.1':'12','1.2':'20'} 125 * @arkts 1.1&1.2 126 */ 127declare enum AnimationMode { 128 /** 129 * Load the content of the target page before starting the switching animation. 130 * 131 * @syscap SystemCapability.ArkUI.ArkUI.Full 132 * @crossplatform 133 * @atomicservice 134 * @since arkts {'1.1':'12','1.2':'20'} 135 * @arkts 1.1&1.2 136 */ 137 CONTENT_FIRST = 0, 138 139 /** 140 * Start the switching animation before loading the content of the target page. 141 * 142 * @syscap SystemCapability.ArkUI.ArkUI.Full 143 * @crossplatform 144 * @atomicservice 145 * @since arkts {'1.1':'12','1.2':'20'} 146 * @arkts 1.1&1.2 147 */ 148 ACTION_FIRST = 1, 149 150 /** 151 * Disable the default switching animation. 152 * 153 * @syscap SystemCapability.ArkUI.ArkUI.Full 154 * @crossplatform 155 * @atomicservice 156 * @since arkts {'1.1':'12','1.2':'20'} 157 * @arkts 1.1&1.2 158 */ 159 NO_ANIMATION = 2, 160 161 /** 162 * Load the content of the target page first, then jump to the vicinity of the target page without animation, 163 * and finally jump to the target page with animation. 164 * 165 * @syscap SystemCapability.ArkUI.ArkUI.Full 166 * @crossplatform 167 * @atomicservice 168 * @since arkts {'1.1':'15','1.2':'20'} 169 * @arkts 1.1&1.2 170 */ 171 CONTENT_FIRST_WITH_JUMP = 3, 172 173 /** 174 * Jump to the vicinity of the target page without animation first, 175 * then jump to the target page with animation, and finally load the content of the target page. 176 * 177 * @syscap SystemCapability.ArkUI.ArkUI.Full 178 * @crossplatform 179 * @atomicservice 180 * @since arkts {'1.1':'15','1.2':'20'} 181 * @arkts 1.1&1.2 182 */ 183 ACTION_FIRST_WITH_JUMP = 4, 184} 185 186/** 187 * Declare the location of the bar chart. 188 * 189 * @enum { number } 190 * @syscap SystemCapability.ArkUI.ArkUI.Full 191 * @since 7 192 */ 193/** 194 * Declare the location of the bar chart. 195 * 196 * @enum { number } 197 * @syscap SystemCapability.ArkUI.ArkUI.Full 198 * @crossplatform 199 * @since 10 200 */ 201/** 202 * Declare the location of the bar chart. 203 * 204 * @enum { number } 205 * @syscap SystemCapability.ArkUI.ArkUI.Full 206 * @crossplatform 207 * @atomicservice 208 * @since arkts {'1.1':'11','1.2':'20'} 209 * @arkts 1.1&1.2 210 */ 211declare enum BarPosition { 212 /** 213 * When the vertical attribute method is set to true, the tab is on the left of the container. When the vertical property method is set to false, the tab is at the top of the container. 214 * 215 * @syscap SystemCapability.ArkUI.ArkUI.Full 216 * @since 7 217 */ 218 /** 219 * When the vertical attribute method is set to true, the tab is on the left of the container. When the vertical property method is set to false, the tab is at the top of the container. 220 * 221 * @syscap SystemCapability.ArkUI.ArkUI.Full 222 * @crossplatform 223 * @since 10 224 */ 225 /** 226 * When the vertical attribute method is set to true, the tab is on the left of the container. When the vertical property method is set to false, the tab is at the top of the container. 227 * 228 * @syscap SystemCapability.ArkUI.ArkUI.Full 229 * @crossplatform 230 * @atomicservice 231 * @since arkts {'1.1':'11','1.2':'20'} 232 * @arkts 1.1&1.2 233 */ 234 Start, 235 236 /** 237 * When the vertical attribute method is set to true, the tab is located on the right of the container. When the vertical property method is set to false, the tab is at the bottom of the container. 238 * 239 * @syscap SystemCapability.ArkUI.ArkUI.Full 240 * @since 7 241 */ 242 /** 243 * When the vertical attribute method is set to true, the tab is located on the right of the container. When the vertical property method is set to false, the tab is at the bottom of the container. 244 * 245 * @syscap SystemCapability.ArkUI.ArkUI.Full 246 * @crossplatform 247 * @since 10 248 */ 249 /** 250 * When the vertical attribute method is set to true, the tab is located on the right of the container. When the vertical property method is set to false, the tab is at the bottom of the container. 251 * 252 * @syscap SystemCapability.ArkUI.ArkUI.Full 253 * @crossplatform 254 * @atomicservice 255 * @since arkts {'1.1':'11','1.2':'20'} 256 * @arkts 1.1&1.2 257 */ 258 End, 259} 260 261/** 262 * Declare the layout style of the tab bar items. 263 * 264 * @enum { number } 265 * @syscap SystemCapability.ArkUI.ArkUI.Full 266 * @crossplatform 267 * @since 10 268 */ 269/** 270 * Declare the layout style of the tab bar items. 271 * 272 * @enum { number } 273 * @syscap SystemCapability.ArkUI.ArkUI.Full 274 * @crossplatform 275 * @atomicservice 276 * @since arkts {'1.1':'11','1.2':'20'} 277 * @arkts 1.1&1.2 278 */ 279declare enum LayoutStyle { 280 /** 281 * The tab bar items are laid in the center of the tab bar. 282 * 283 * @syscap SystemCapability.ArkUI.ArkUI.Full 284 * @crossplatform 285 * @since 10 286 */ 287 /** 288 * If the tab content exceeds the tab bar width, the tabs are scrollable. 289 * If not, the tabs are compactly centered on the tab bar and not scrollable. 290 * 291 * @syscap SystemCapability.ArkUI.ArkUI.Full 292 * @crossplatform 293 * @atomicservice 294 * @since arkts {'1.1':'11','1.2':'20'} 295 * @arkts 1.1&1.2 296 */ 297 ALWAYS_CENTER = 0, 298 /** 299 * The tab bar items are laid in the tab bar by an average split. 300 * 301 * @syscap SystemCapability.ArkUI.ArkUI.Full 302 * @crossplatform 303 * @since 10 304 */ 305 /** 306 * If the tab content exceeds the tab bar width, the tabs are scrollable. 307 * If not, the tabs are not scrollable, and the width of the tab bar is evenly distributed among all tabs. 308 * 309 * @syscap SystemCapability.ArkUI.ArkUI.Full 310 * @crossplatform 311 * @atomicservice 312 * @since arkts {'1.1':'11','1.2':'20'} 313 * @arkts 1.1&1.2 314 */ 315 ALWAYS_AVERAGE_SPLIT = 1, 316 /** 317 * The tab bar items are laid in the center of the bar when their total length is more than half of the tab bar. 318 * Otherwise, they are laid in the center half of the tab bar with the same space between them. 319 * 320 * @syscap SystemCapability.ArkUI.ArkUI.Full 321 * @crossplatform 322 * @since 10 323 */ 324 /** 325 * If the tab content exceeds the tab bar width, the tabs are scrollable. If the tab content exceeds 326 * half the width of the tab bar but is still within the tab bar width, the tabs are compactly centered and 327 * not scrollable.If the tab content does not exceed half the width of the tab bar, the tabs are centered within 328 * half the width of the tab bar with even spacing between them and are not scrollable. 329 * 330 * @syscap SystemCapability.ArkUI.ArkUI.Full 331 * @crossplatform 332 * @atomicservice 333 * @since arkts {'1.1':'11','1.2':'20'} 334 * @arkts 1.1&1.2 335 */ 336 SPACE_BETWEEN_OR_CENTER = 2 337} 338 339/** 340 * Declare the cache mode of the child components. 341 * 342 * @enum { number } 343 * @syscap SystemCapability.ArkUI.ArkUI.Full 344 * @crossplatform 345 * @atomicservice 346 * @since arkts {'1.1':'19','1.2':'20'} 347 * @arkts 1.1&1.2 348 */ 349declare enum TabsCacheMode { 350 /** 351 * Caches the child components on both sides of the current child components. 352 * 353 * @syscap SystemCapability.ArkUI.ArkUI.Full 354 * @crossplatform 355 * @atomicservice 356 * @since arkts {'1.1':'19','1.2':'20'} 357 * @arkts 1.1&1.2 358 */ 359 CACHE_BOTH_SIDE = 0, 360 361 /** 362 * Caches the latest switched child components. 363 * 364 * @syscap SystemCapability.ArkUI.ArkUI.Full 365 * @crossplatform 366 * @atomicservice 367 * @since arkts {'1.1':'19','1.2':'20'} 368 * @arkts 1.1&1.2 369 */ 370 CACHE_LATEST_SWITCHED = 1 371} 372 373/** 374 * Provides methods for switching tabs. 375 * 376 * @syscap SystemCapability.ArkUI.ArkUI.Full 377 * @since 7 378 */ 379/** 380 * Provides methods for switching tabs. 381 * 382 * @syscap SystemCapability.ArkUI.ArkUI.Full 383 * @crossplatform 384 * @since 10 385 */ 386/** 387 * Provides methods for switching tabs. 388 * 389 * @syscap SystemCapability.ArkUI.ArkUI.Full 390 * @crossplatform 391 * @atomicservice 392 * @since arkts {'1.1':'11','1.2':'20'} 393 * @arkts 1.1&1.2 394 */ 395declare class TabsController { 396 /** 397 * constructor. 398 * 399 * @syscap SystemCapability.ArkUI.ArkUI.Full 400 * @since 7 401 */ 402 /** 403 * constructor. 404 * 405 * @syscap SystemCapability.ArkUI.ArkUI.Full 406 * @crossplatform 407 * @since 10 408 */ 409 /** 410 * constructor. 411 * 412 * @syscap SystemCapability.ArkUI.ArkUI.Full 413 * @crossplatform 414 * @atomicservice 415 * @since arkts {'1.1':'11','1.2':'20'} 416 * @arkts 1.1&1.2 417 */ 418 constructor(); 419 420 /** 421 * Called when the tab is switched. 422 * 423 * @param { number } value 424 * @syscap SystemCapability.ArkUI.ArkUI.Full 425 * @since 7 426 */ 427 /** 428 * Called when the tab is switched. 429 * 430 * @param { number } value 431 * @syscap SystemCapability.ArkUI.ArkUI.Full 432 * @crossplatform 433 * @since 10 434 */ 435 /** 436 * Switches to the specified tab. 437 * 438 * @param { number } value - Index of the tab. If this parameter is set to a value less than 0 439 * or greater than the maximum number, the default value 0 is used. 440 * @syscap SystemCapability.ArkUI.ArkUI.Full 441 * @crossplatform 442 * @atomicservice 443 * @since arkts {'1.1':'11','1.2':'20'} 444 * @arkts 1.1&1.2 445 */ 446 changeIndex(value: number): void; 447 448 /** 449 * Called when need to preload specified tab content. 450 * 451 * @param { Optional<Array<number>> } indices - Indices of tab content to be preloaded, default to an empty array. 452 * @returns { Promise<void> } The promise returned by the function. 453 * @throws { BusinessError } 401 - Parameter invalid. Possible causes: 454 * <br> 1. The parameter type is not Array<number>. 455 * <br> 2. The parameter is an empty array. 456 * <br> 3. The parameter contains an invalid index. 457 * @syscap SystemCapability.ArkUI.ArkUI.Full 458 * @crossplatform 459 * @atomicservice 460 * @since arkts {'1.1':'12','1.2':'20'} 461 * @arkts 1.1&1.2 462 */ 463 preloadItems(indices: Optional<Array<number>>): Promise<void>; 464 465 /** 466 * Set tab bar translate. 467 * 468 * @param { TranslateOptions } translate - translate options 469 * @syscap SystemCapability.ArkUI.ArkUI.Full 470 * @crossplatform 471 * @atomicservice 472 * @since arkts {'1.1':'13','1.2':'20'} 473 * @arkts 1.1&1.2 474 */ 475 setTabBarTranslate(translate: TranslateOptions): void; 476 477 /** 478 * Set tab bar opacity. 479 * 480 * @param { number } opacity - opacity, default to 1.0 481 * @syscap SystemCapability.ArkUI.ArkUI.Full 482 * @crossplatform 483 * @atomicservice 484 * @since arkts {'1.1':'13','1.2':'20'} 485 * @arkts 1.1&1.2 486 */ 487 setTabBarOpacity(opacity: number): void; 488} 489 490/** 491 * Options used to create Tabs. 492 * 493 * @typedef TabsOptions 494 * @syscap SystemCapability.ArkUI.ArkUI.Full 495 * @crossplatform 496 * @atomicservice 497 * @since arkts {'1.1':'15','1.2':'20'} 498 * @arkts 1.1&1.2 499 */ 500declare interface TabsOptions { 501 /** 502 * Set the tab location for Tabs. 503 * 504 * @type { ?BarPosition } 505 * @syscap SystemCapability.ArkUI.ArkUI.Full 506 * @since 7 507 */ 508 /** 509 * Set the tab location for Tabs. 510 * 511 * @type { ?BarPosition } 512 * @syscap SystemCapability.ArkUI.ArkUI.Full 513 * @crossplatform 514 * @since 10 515 */ 516 /** 517 * Set the tab location for Tabs. 518 * 519 * @type { ?BarPosition } 520 * @default BarPosition.Start 521 * @syscap SystemCapability.ArkUI.ArkUI.Full 522 * @crossplatform 523 * @atomicservice 524 * @since arkts {'1.1':'11','1.2':'20'} 525 * @arkts 1.1&1.2 526 */ 527 barPosition?: BarPosition; 528 529 /** 530 * Set the index of the currently displayed tab. 531 * 532 * @type { ?number } 533 * @syscap SystemCapability.ArkUI.ArkUI.Full 534 * @since 7 535 */ 536 /** 537 * Set the index of the currently displayed tab. 538 * 539 * @type { ?number } 540 * @syscap SystemCapability.ArkUI.ArkUI.Full 541 * @crossplatform 542 * @since 10 543 */ 544 /** 545 * Set the index of the currently displayed tab. 546 * 547 * @type { ?number } 548 * @default 0 549 * @syscap SystemCapability.ArkUI.ArkUI.Full 550 * @crossplatform 551 * @atomicservice 552 * @since arkts {'1.1':'11','1.2':'20'} 553 * @arkts 1.1&1.2 554 */ 555 index?: number; 556 557 /** 558 * Set the Tabs controller. 559 * 560 * @type { ?TabsController } 561 * @syscap SystemCapability.ArkUI.ArkUI.Full 562 * @since 7 563 */ 564 /** 565 * Set the Tabs controller. 566 * 567 * @type { ?TabsController } 568 * @syscap SystemCapability.ArkUI.ArkUI.Full 569 * @crossplatform 570 * @since 10 571 */ 572 /** 573 * Set the Tabs controller. 574 * 575 * @type { ?TabsController } 576 * @syscap SystemCapability.ArkUI.ArkUI.Full 577 * @crossplatform 578 * @atomicservice 579 * @since arkts {'1.1':'11','1.2':'20'} 580 * @arkts 1.1&1.2 581 */ 582 controller?: TabsController 583 584 /** 585 * Set common attributes to tabbar. 586 * 587 * @type { ?CommonModifier } 588 * @syscap SystemCapability.ArkUI.ArkUI.Full 589 * @crossplatform 590 * @atomicservice 591 * @since arkts {'1.1':'15','1.2':'20'} 592 * @arkts 1.1&1.2 593 */ 594 barModifier?: CommonModifier 595} 596 597/** 598 * Provides an interface for switching views. 599 * 600 * @interface TabsInterface 601 * @syscap SystemCapability.ArkUI.ArkUI.Full 602 * @since 7 603 */ 604/** 605 * Provides an interface for switching views. 606 * 607 * @interface TabsInterface 608 * @syscap SystemCapability.ArkUI.ArkUI.Full 609 * @crossplatform 610 * @since 10 611 */ 612/** 613 * Provides an interface for switching views. 614 * 615 * @interface TabsInterface 616 * @syscap SystemCapability.ArkUI.ArkUI.Full 617 * @crossplatform 618 * @atomicservice 619 * @since arkts {'1.1':'11','1.2':'20'} 620 * @arkts 1.1&1.2 621 */ 622interface TabsInterface { 623 /** 624 * Called when the view is switched. 625 * 626 * @param { object } value 627 * @returns { TabsAttribute } 628 * @syscap SystemCapability.ArkUI.ArkUI.Full 629 * @since 7 630 */ 631 /** 632 * Called when the view is switched. 633 * 634 * @param { object } value 635 * @returns { TabsAttribute } 636 * @syscap SystemCapability.ArkUI.ArkUI.Full 637 * @crossplatform 638 * @since 10 639 */ 640 /** 641 * Called when the view is switched. 642 * 643 * @param { object } value 644 * @returns { TabsAttribute } 645 * @syscap SystemCapability.ArkUI.ArkUI.Full 646 * @crossplatform 647 * @atomicservice 648 * @since 11 649 */ 650 /** 651 * Called when the view is switched. 652 * 653 * @param { TabsOptions } [options] - Tabs options. 654 * @returns { TabsAttribute } 655 * @syscap SystemCapability.ArkUI.ArkUI.Full 656 * @crossplatform 657 * @atomicservice 658 * @since arkts {'1.1':'15','1.2':'20'} 659 * @arkts 1.1&1.2 660 */ 661 (options?: TabsOptions): TabsAttribute; 662} 663 664/** 665 * Provides an interface for the style of an divider including stroke width, color, start margin 666 * and end margin 667 * 668 * @interface DividerStyle 669 * @syscap SystemCapability.ArkUI.ArkUI.Full 670 * @crossplatform 671 * @since 10 672 */ 673/** 674 * Provides an interface for the style of an divider including stroke width, color, start margin 675 * and end margin 676 * 677 * @interface DividerStyle 678 * @syscap SystemCapability.ArkUI.ArkUI.Full 679 * @crossplatform 680 * @atomicservice 681 * @since 11 682 */ 683interface DividerStyle { 684 /** 685 * Define the stroke width of the divider 686 * 687 * @type { Length } 688 * @default 0 689 * @syscap SystemCapability.ArkUI.ArkUI.Full 690 * @crossplatform 691 * @since 10 692 */ 693 /** 694 * Width of the divider. It cannot be set in percentage. 695 * 696 * @type { Length } 697 * @default 0vp 698 * @syscap SystemCapability.ArkUI.ArkUI.Full 699 * @crossplatform 700 * @atomicservice 701 * @since 11 702 */ 703 strokeWidth: Length; 704 705 /** 706 * Define the color of the divider 707 * 708 * @type { ?ResourceColor } 709 * @syscap SystemCapability.ArkUI.ArkUI.Full 710 * @crossplatform 711 * @since 10 712 */ 713 /** 714 * Color of the divider. 715 * 716 * @type { ?ResourceColor } 717 * @default #33182431 718 * @syscap SystemCapability.ArkUI.ArkUI.Full 719 * @crossplatform 720 * @atomicservice 721 * @since 11 722 */ 723 color?: ResourceColor; 724 725 /** 726 * Define the start margin of the divider 727 * 728 * @type { ?Length } 729 * @default 0 730 * @syscap SystemCapability.ArkUI.ArkUI.Full 731 * @crossplatform 732 * @since 10 733 */ 734 /** 735 * Distance between the divider and the top of the sidebar. It cannot be set in percentage. 736 * 737 * @type { ?Length } 738 * @default 0vp 739 * @syscap SystemCapability.ArkUI.ArkUI.Full 740 * @crossplatform 741 * @atomicservice 742 * @since 11 743 */ 744 startMargin?: Length; 745 746 /** 747 * Define the end margin of the divider 748 * 749 * @type { ?Length } 750 * @default 0 751 * @syscap SystemCapability.ArkUI.ArkUI.Full 752 * @crossplatform 753 * @since 10 754 */ 755 /** 756 * Distance between the divider and the bottom of the sidebar. It cannot be set in percentage. 757 * 758 * @type { ?Length } 759 * @default 0vp 760 * @syscap SystemCapability.ArkUI.ArkUI.Full 761 * @crossplatform 762 * @atomicservice 763 * @since 11 764 */ 765 endMargin?: Length; 766} 767 768/** 769 * Provides an interface for tabs animation. 770 * 771 * @interface TabsAnimationEvent 772 * @syscap SystemCapability.ArkUI.ArkUI.Full 773 * @crossplatform 774 * @since 11 775 */ 776/** 777 * Provides an interface for tabs animation. 778 * 779 * @interface TabsAnimationEvent 780 * @syscap SystemCapability.ArkUI.ArkUI.Full 781 * @crossplatform 782 * @atomicservice 783 * @since arkts {'1.1':'12','1.2':'20'} 784 * @arkts 1.1&1.2 785 */ 786declare interface TabsAnimationEvent { 787 /** 788 * Offset of the current page to the start position of the tabs main axis. The unit is vp. 789 * 790 * @type { number } 791 * @default 0.0 vp 792 * @syscap SystemCapability.ArkUI.ArkUI.Full 793 * @crossplatform 794 * @since 11 795 */ 796 /** 797 * Offset of the current page to the start position of the tabs main axis. The unit is vp. 798 * 799 * @type { number } 800 * @default 0.0 vp 801 * @syscap SystemCapability.ArkUI.ArkUI.Full 802 * @crossplatform 803 * @atomicservice 804 * @since arkts {'1.1':'12','1.2':'20'} 805 * @arkts 1.1&1.2 806 */ 807 currentOffset: number; 808 809 /** 810 * Offset of the target page to the start position of the tabs main axis. The unit is vp. 811 * 812 * @type { number } 813 * @default 0.0 vp 814 * @syscap SystemCapability.ArkUI.ArkUI.Full 815 * @crossplatform 816 * @since 11 817 */ 818 /** 819 * Offset of the target page to the start position of the tabs main axis. The unit is vp. 820 * 821 * @type { number } 822 * @default 0.0 vp 823 * @syscap SystemCapability.ArkUI.ArkUI.Full 824 * @crossplatform 825 * @atomicservice 826 * @since arkts {'1.1':'12','1.2':'20'} 827 * @arkts 1.1&1.2 828 */ 829 targetOffset: number; 830 831 /** 832 * Start speed of the page-turning animation. The unit is vp/s. 833 * 834 * @type { number } 835 * @default 0.0 vp/s 836 * @syscap SystemCapability.ArkUI.ArkUI.Full 837 * @crossplatform 838 * @since 11 839 */ 840 /** 841 * Start speed of the page-turning animation. The unit is vp/s. 842 * 843 * @type { number } 844 * @default 0.0 vp/s 845 * @syscap SystemCapability.ArkUI.ArkUI.Full 846 * @crossplatform 847 * @atomicservice 848 * @since arkts {'1.1':'12','1.2':'20'} 849 * @arkts 1.1&1.2 850 */ 851 velocity: number; 852} 853 854/** 855 * Provides an interface for the grid column options of an tab bar including sm, md, lg, margin and gutter. 856 * 857 * @interface BarGridColumnOptions 858 * @syscap SystemCapability.ArkUI.ArkUI.Full 859 * @crossplatform 860 * @since 10 861 */ 862/** 863 * Provides an interface for the grid column options of an tab bar including sm, md, lg, margin and gutter. 864 * 865 * @interface BarGridColumnOptions 866 * @syscap SystemCapability.ArkUI.ArkUI.Full 867 * @crossplatform 868 * @atomicservice 869 * @since arkts {'1.1':'11','1.2':'20'} 870 * @arkts 1.1&1.2 871 */ 872interface BarGridColumnOptions { 873 /** 874 * Define the occupied column number when the screen is of small size 875 * 876 * @type { ?number } 877 * @syscap SystemCapability.ArkUI.ArkUI.Full 878 * @crossplatform 879 * @since 10 880 */ 881 /** 882 * Number of columns occupied by a tab on a screen whose width is 883 * greater than or equal to 320 vp but less than 600 vp. The value must be a non-negative even number. 884 * 885 * @type { ?number } 886 * @default -1 887 * @syscap SystemCapability.ArkUI.ArkUI.Full 888 * @crossplatform 889 * @atomicservice 890 * @since arkts {'1.1':'11','1.2':'20'} 891 * @arkts 1.1&1.2 892 */ 893 sm?: number; 894 895 /** 896 * Define the occupied column number when the screen is of middle size 897 * 898 * @type { ?number } 899 * @syscap SystemCapability.ArkUI.ArkUI.Full 900 * @crossplatform 901 * @since 10 902 */ 903 /** 904 * Number of columns occupied by a tab on a screen whose width is 905 * greater than or equal to 600 vp but less than 800 vp. The value must be a non-negative even number. 906 * 907 * @type { ?number } 908 * @default -1 909 * @syscap SystemCapability.ArkUI.ArkUI.Full 910 * @crossplatform 911 * @atomicservice 912 * @since arkts {'1.1':'11','1.2':'20'} 913 * @arkts 1.1&1.2 914 */ 915 md?: number; 916 917 /** 918 * Define the occupied column number when the screen is of large size 919 * 920 * @type { ?number } 921 * @syscap SystemCapability.ArkUI.ArkUI.Full 922 * @crossplatform 923 * @since 10 924 */ 925 /** 926 * Number of columns occupied by a tab on a screen whose width is 927 * greater than or equal to 840 vp but less than 1024 vp. The value must be a non-negative even number. 928 * 929 * @type { ?number } 930 * @default -1 931 * @syscap SystemCapability.ArkUI.ArkUI.Full 932 * @crossplatform 933 * @atomicservice 934 * @since arkts {'1.1':'11','1.2':'20'} 935 * @arkts 1.1&1.2 936 */ 937 lg?: number; 938 939 /** 940 * Define the margin size of the columns 941 * 942 * @type { ?Dimension } 943 * @syscap SystemCapability.ArkUI.ArkUI.Full 944 * @crossplatform 945 * @since 10 946 */ 947 /** 948 * Column margin in grid mode. It cannot be set in percentage. 949 * 950 * @type { ?Dimension } 951 * @default 24vp 952 * @syscap SystemCapability.ArkUI.ArkUI.Full 953 * @crossplatform 954 * @atomicservice 955 * @since arkts {'1.1':'11','1.2':'20'} 956 * @arkts 1.1&1.2 957 */ 958 margin?: Dimension; 959 960 /** 961 * Define the gutter size of the columns 962 * 963 * @type { ?Dimension } 964 * @syscap SystemCapability.ArkUI.ArkUI.Full 965 * @crossplatform 966 * @since 10 967 */ 968 /** 969 * Column gutter (that is, gap between columns) in grid mode. It cannot be set in percentage. 970 * 971 * @type { ?Dimension } 972 * @default 24vp 973 * @syscap SystemCapability.ArkUI.ArkUI.Full 974 * @crossplatform 975 * @atomicservice 976 * @since arkts {'1.1':'11','1.2':'20'} 977 * @arkts 1.1&1.2 978 */ 979 gutter?: Dimension; 980} 981 982/** 983 * Provides an interface for the options for the scrollable bar mode including margin and nonScrollableLayoutStyle. 984 * 985 * @interface ScrollableBarModeOptions 986 * @syscap SystemCapability.ArkUI.ArkUI.Full 987 * @crossplatform 988 * @since 10 989 */ 990/** 991 * Provides an interface for the options for the scrollable bar mode including margin and nonScrollableLayoutStyle. 992 * 993 * @interface ScrollableBarModeOptions 994 * @syscap SystemCapability.ArkUI.ArkUI.Full 995 * @crossplatform 996 * @atomicservice 997 * @since arkts {'1.1':'11','1.2':'20'} 998 * @arkts 1.1&1.2 999 */ 1000interface ScrollableBarModeOptions { 1001 /** 1002 * Define the margin size of the bar items when the tab bar is scrollable. 1003 * 1004 * @type { ?Dimension } 1005 * @syscap SystemCapability.ArkUI.ArkUI.Full 1006 * @crossplatform 1007 * @since 10 1008 */ 1009 /** 1010 * Left and right margin of the tab bar in scrollable mode. It cannot be set in percentage. 1011 * 1012 * @type { ?Dimension } 1013 * @default 0vp 1014 * @syscap SystemCapability.ArkUI.ArkUI.Full 1015 * @crossplatform 1016 * @atomicservice 1017 * @since arkts {'1.1':'11','1.2':'20'} 1018 * @arkts 1.1&1.2 1019 */ 1020 margin?: Dimension; 1021 1022 /** 1023 * Define the layout style of the bar items when the tab bar is not scrollable. 1024 * 1025 * @type { ?LayoutStyle } 1026 * @syscap SystemCapability.ArkUI.ArkUI.Full 1027 * @crossplatform 1028 * @since 10 1029 */ 1030 /** 1031 * Tab layout mode of the tab bar when not scrolling in scrollable mode. 1032 * 1033 * @type { ?LayoutStyle } 1034 * @default LayoutStyle.ALWAYS_CENTER 1035 * @syscap SystemCapability.ArkUI.ArkUI.Full 1036 * @crossplatform 1037 * @atomicservice 1038 * @since arkts {'1.1':'11','1.2':'20'} 1039 * @arkts 1.1&1.2 1040 */ 1041 nonScrollableLayoutStyle?: LayoutStyle; 1042} 1043 1044/** 1045 * Defines a tabs callback when onAnimationStart. 1046 * 1047 * @typedef { function } OnTabsAnimationStartCallback 1048 * @param { number } index - The index value of the tab that when animation start. 1049 * @param { number } targetIndex - The target index value of the tab that when animation start. 1050 * @param { TabsAnimationEvent } extraInfo - The extra callback info. 1051 * @syscap SystemCapability.ArkUI.ArkUI.Full 1052 * @crossplatform 1053 * @atomicservice 1054 * @since arkts {'1.1':'18','1.2':'20'} 1055 * @arkts 1.1&1.2 1056 */ 1057declare type OnTabsAnimationStartCallback = (index: number, targetIndex: number, extraInfo: TabsAnimationEvent) => void; 1058 1059/** 1060 * Defines a tabs callback when onAnimationEnd. 1061 * 1062 * @typedef { function } OnTabsAnimationEndCallback 1063 * @param { number } index - The index value of the tab that when animation end. 1064 * @param { TabsAnimationEvent } extraInfo - The extra callback info. 1065 * @syscap SystemCapability.ArkUI.ArkUI.Full 1066 * @crossplatform 1067 * @atomicservice 1068 * @since arkts {'1.1':'18','1.2':'20'} 1069 * @arkts 1.1&1.2 1070 */ 1071declare type OnTabsAnimationEndCallback = (index: number, extraInfo: TabsAnimationEvent) => void; 1072 1073/** 1074 * Defines a tabs callback when onGestureSwipe. 1075 * 1076 * @typedef { function } OnTabsGestureSwipeCallback 1077 * @param { number } index - The index value of the tab before gesture swipe. 1078 * @param { TabsAnimationEvent } extraInfo - The extra callback info. 1079 * @syscap SystemCapability.ArkUI.ArkUI.Full 1080 * @crossplatform 1081 * @atomicservice 1082 * @since arkts {'1.1':'18','1.2':'20'} 1083 * @arkts 1.1&1.2 1084 */ 1085declare type OnTabsGestureSwipeCallback = (index: number, extraInfo: TabsAnimationEvent) => void; 1086 1087/** 1088 * Defines a tabs callback when customContentTransition. 1089 * 1090 * @typedef { function } TabsCustomContentTransitionCallback 1091 * @param { number } from - The index value of the current tab when the animation begins. 1092 * @param { number } to - The index value of the target tab when the animation begins. 1093 * @returns { TabContentAnimatedTransition | undefined } Returns animated transition options of tab or undefined. 1094 * @syscap SystemCapability.ArkUI.ArkUI.Full 1095 * @crossplatform 1096 * @atomicservice 1097 * @since arkts {'1.1':'18','1.2':'20'} 1098 * @arkts 1.1&1.2 1099 */ 1100declare type TabsCustomContentTransitionCallback = (from: number, to: number) => TabContentAnimatedTransition | undefined; 1101 1102/** 1103 * Defines a tabs callback when onContentWillChange. 1104 * 1105 * @typedef { function } OnTabsContentWillChangeCallback 1106 * @param { number } currentIndex - The index value of the current tab. 1107 * @param { number } comingIndex - The index value of the tab that will change. 1108 * @returns { boolean } 1109 * Tabs can change from currentIndex to comingIndex if function return true. 1110 * Tabs can not change from currentIndex to comingIndex if function return false. 1111 * @syscap SystemCapability.ArkUI.ArkUI.Full 1112 * @crossplatform 1113 * @atomicservice 1114 * @since arkts {'1.1':'18','1.2':'20'} 1115 * @arkts 1.1&1.2 1116 */ 1117declare type OnTabsContentWillChangeCallback = (currentIndex: number, comingIndex: number) => boolean; 1118 1119/** 1120 * Defines the tabs attribute functions. 1121 * 1122 * @extends CommonMethod<TabsAttribute> 1123 * @syscap SystemCapability.ArkUI.ArkUI.Full 1124 * @since 7 1125 */ 1126/** 1127 * Defines the tabs attribute functions. 1128 * 1129 * @extends CommonMethod<TabsAttribute> 1130 * @syscap SystemCapability.ArkUI.ArkUI.Full 1131 * @crossplatform 1132 * @since 10 1133 */ 1134/** 1135 * Defines the tabs attribute functions. 1136 * 1137 * @extends CommonMethod<TabsAttribute> 1138 * @syscap SystemCapability.ArkUI.ArkUI.Full 1139 * @crossplatform 1140 * @atomicservice 1141 * @since arkts {'1.1':'11','1.2':'20'} 1142 * @arkts 1.1&1.2 1143 */ 1144declare class TabsAttribute extends CommonMethod<TabsAttribute> { 1145 /** 1146 * Called when determining whether the tab is vertical. 1147 * 1148 * @param { boolean } value 1149 * @returns { TabsAttribute } 1150 * @syscap SystemCapability.ArkUI.ArkUI.Full 1151 * @since 7 1152 */ 1153 /** 1154 * Called when determining whether the tab is vertical. 1155 * 1156 * @param { boolean } value 1157 * @returns { TabsAttribute } 1158 * @syscap SystemCapability.ArkUI.ArkUI.Full 1159 * @crossplatform 1160 * @since 10 1161 */ 1162 /** 1163 * Sets whether to use vertical tabs. 1164 * 1165 * @param { boolean } value - Whether to use vertical tabs. Default value is false. 1166 * @returns { TabsAttribute } 1167 * @syscap SystemCapability.ArkUI.ArkUI.Full 1168 * @crossplatform 1169 * @atomicservice 1170 * @since arkts {'1.1':'11','1.2':'20'} 1171 * @arkts 1.1&1.2 1172 */ 1173 vertical(value: boolean): TabsAttribute; 1174 1175 /** 1176 * Called when determining the location of the bar chart. 1177 * 1178 * @param { BarPosition } value 1179 * @returns { TabsAttribute } 1180 * @syscap SystemCapability.ArkUI.ArkUI.Full 1181 * @since 9 1182 */ 1183 /** 1184 * Called when determining the location of the bar chart. 1185 * 1186 * @param { BarPosition } value 1187 * @returns { TabsAttribute } 1188 * @syscap SystemCapability.ArkUI.ArkUI.Full 1189 * @crossplatform 1190 * @since 10 1191 */ 1192 /** 1193 * Sets the position of the Tabs component. 1194 * 1195 * @param { BarPosition } value - Position of the Tabs component. Default value is BarPosition.Start. 1196 * @returns { TabsAttribute } 1197 * @syscap SystemCapability.ArkUI.ArkUI.Full 1198 * @crossplatform 1199 * @atomicservice 1200 * @since arkts {'1.1':'11','1.2':'20'} 1201 * @arkts 1.1&1.2 1202 */ 1203 barPosition(value: BarPosition): TabsAttribute; 1204 1205 /** 1206 * Called when judging whether page switching can be performed by sliding left and right. 1207 * 1208 * @param { boolean } value 1209 * @returns { TabsAttribute } 1210 * @syscap SystemCapability.ArkUI.ArkUI.Full 1211 * @since 7 1212 */ 1213 /** 1214 * Called when judging whether page switching can be performed by sliding left and right. 1215 * 1216 * @param { boolean } value 1217 * @returns { TabsAttribute } 1218 * @syscap SystemCapability.ArkUI.ArkUI.Full 1219 * @crossplatform 1220 * @since 10 1221 */ 1222 /** 1223 * Sets whether the tabs are scrollable. 1224 * 1225 * @param { boolean } value - Whether the tabs are scrollable. Default value is true. 1226 * @returns { TabsAttribute } 1227 * @syscap SystemCapability.ArkUI.ArkUI.Full 1228 * @crossplatform 1229 * @atomicservice 1230 * @since arkts {'1.1':'11','1.2':'20'} 1231 * @arkts 1.1&1.2 1232 */ 1233 scrollable(value: boolean): TabsAttribute; 1234 1235 /** 1236 * Called when the graphic format of the bar chart is selected as fixed mode. 1237 * 1238 * @param { BarMode.Fixed } value 1239 * @returns { TabsAttribute } 1240 * @syscap SystemCapability.ArkUI.ArkUI.Full 1241 * @crossplatform 1242 * @since 10 1243 */ 1244 /** 1245 * Sets the tab bar layout mode to BarMode.Fixed. 1246 * 1247 * @param { BarMode.Fixed } value - The width of each tab is determined by equally dividing 1248 * the number of tabs by the bar width (or bar height in the vertical layout). 1249 * @returns { TabsAttribute } 1250 * @syscap SystemCapability.ArkUI.ArkUI.Full 1251 * @crossplatform 1252 * @atomicservice 1253 * @since 11 1254 */ 1255 barMode(value: BarMode.Fixed): TabsAttribute; 1256 1257 /** 1258 * Called when the graphic format of the bar chart is selected as scrollable mode. 1259 * 1260 * @param { BarMode.Scrollable } value 1261 * @param { ScrollableBarModeOptions } [options] - options indicate the options for the scrollable bar mode 1262 * @returns { TabsAttribute } 1263 * @syscap SystemCapability.ArkUI.ArkUI.Full 1264 * @crossplatform 1265 * @since 10 1266 */ 1267 /** 1268 * Sets the tab bar layout mode to BarMode.Scrollable. 1269 * 1270 * @param { BarMode.Scrollable } value - The width of each tab is determined by the actual layout. 1271 * The tabs are scrollable in the following case: In horizontal layout, the total width exceeds the tab bar width; 1272 * in vertical layout, the total height exceeds the tab bar height. 1273 * @param { ScrollableBarModeOptions } [options] - Layout style of the tab bar in scrollable mode. 1274 * This parameter is effective only when the tab bar is in scrollable mode. 1275 * @returns { TabsAttribute } 1276 * @syscap SystemCapability.ArkUI.ArkUI.Full 1277 * @crossplatform 1278 * @atomicservice 1279 * @since 11 1280 */ 1281 barMode(value: BarMode.Scrollable, options: ScrollableBarModeOptions): TabsAttribute; 1282 1283 /** 1284 * Called when the graphic format of the bar chart is selected. 1285 * 1286 * @param { BarMode } value 1287 * @returns { TabsAttribute } 1288 * @syscap SystemCapability.ArkUI.ArkUI.Full 1289 * @since 7 1290 */ 1291 /** 1292 * Called when the graphic format of the bar chart is selected. 1293 * 1294 * @param { BarMode } value 1295 * @param { ScrollableBarModeOptions } [options] - options indicate the options for the scrollable bar mode 1296 * @returns { TabsAttribute } 1297 * @syscap SystemCapability.ArkUI.ArkUI.Full 1298 * @crossplatform 1299 * @since 10 1300 */ 1301 /** 1302 * Sets the tab bar layout mode. 1303 * 1304 * @param { BarMode } value - Layout mode. Default value is BarMode.Fixed. 1305 * @param { ScrollableBarModeOptions } [options] - Layout style of the tab bar in scrollable mode. 1306 * This parameter is effective only when the tab bar is in horizontal scrollable mode. 1307 * @returns { TabsAttribute } 1308 * @syscap SystemCapability.ArkUI.ArkUI.Full 1309 * @crossplatform 1310 * @atomicservice 1311 * @since arkts {'1.1':'11','1.2':'20'} 1312 * @arkts 1.1&1.2 1313 */ 1314 barMode(value: BarMode, options?: ScrollableBarModeOptions): TabsAttribute; 1315 1316 /** 1317 * Called when the width of the bar graph is set. 1318 * Notice: barWidth only supports Number type. 1319 * 1320 * @param { number } value 1321 * @returns { TabsAttribute } 1322 * @syscap SystemCapability.ArkUI.ArkUI.Full 1323 * @since 7 1324 */ 1325 /** 1326 * Called when the width of the bar graph is set. 1327 * Notice: barWidth only supports Number type on 7, supports Length type since 8. 1328 * 1329 * @param { Length } value 1330 * @returns { TabsAttribute } 1331 * @syscap SystemCapability.ArkUI.ArkUI.Full 1332 * @since 8 1333 */ 1334 /** 1335 * Called when the width of the bar graph is set. 1336 * Notice: barWidth only supports Number type on 7, supports Length type since 8. 1337 * 1338 * @param { Length } value 1339 * @returns { TabsAttribute } 1340 * @syscap SystemCapability.ArkUI.ArkUI.Full 1341 * @crossplatform 1342 * @since 10 1343 */ 1344 /** 1345 * Sets the width of the tab bar. 1346 * Notice: barWidth only supports Number type on 7, supports Length type since 8. 1347 * 1348 * @param { Length } value - Width of the tab bar. If the set value is less than 0 1349 * or greater than the width of the Tabs component, the default value is used. 1350 * @returns { TabsAttribute } 1351 * @syscap SystemCapability.ArkUI.ArkUI.Full 1352 * @crossplatform 1353 * @atomicservice 1354 * @since arkts {'1.1':'11','1.2':'20'} 1355 * @arkts 1.1&1.2 1356 */ 1357 barWidth(value: Length): TabsAttribute; 1358 1359 /** 1360 * Called when the height of the bar graph is set. 1361 * Notice: barHeight only supports Number type. 1362 * 1363 * @param { number } value 1364 * @returns { TabsAttribute } 1365 * @syscap SystemCapability.ArkUI.ArkUI.Full 1366 * @since 7 1367 */ 1368 /** 1369 * Called when the height of the bar graph is set. 1370 * Notice: barHeight only supports Number type on 7, supports Length type since 8. 1371 * 1372 * @param { Length } value 1373 * @returns { TabsAttribute } 1374 * @syscap SystemCapability.ArkUI.ArkUI.Full 1375 * @since 8 1376 */ 1377 /** 1378 * Called when the height of the bar graph is set. 1379 * Notice: barHeight only supports Number type on 7, supports Length type since 8. 1380 * 1381 * @param { Length } value 1382 * @returns { TabsAttribute } 1383 * @syscap SystemCapability.ArkUI.ArkUI.Full 1384 * @crossplatform 1385 * @since 10 1386 */ 1387 /** 1388 * Sets the height of the tab bar. 1389 * Notice: barHeight only supports Number type on 7, supports Length type since 8. 1390 * 1391 * @param { Length } value - Height of the tab bar. If the set value is less than 0 or 1392 * greater than the height of the Tabs component, the default value is used. 1393 * @returns { TabsAttribute } 1394 * @syscap SystemCapability.ArkUI.ArkUI.Full 1395 * @crossplatform 1396 * @atomicservice 1397 * @since arkts {'1.1':'11','1.2':'20'} 1398 * @arkts 1.1&1.2 1399 */ 1400 barHeight(value: Length): TabsAttribute; 1401 1402 /** 1403 * Called when the height of the bar graph is set. 1404 * Notice: barHeight only supports Number type on 7, supports Length type since 8. 1405 * 1406 * @param { Length } height - the height of the tabBar. 1407 * @param { boolean } noMinHeightLimit - indicates whether there is a minimum limit on the height of the tabBar 1408 * when height is set to auto, default value is false. 1409 * @returns { TabsAttribute } 1410 * @syscap SystemCapability.ArkUI.ArkUI.Full 1411 * @crossplatform 1412 * @atomicservice 1413 * @since 20 1414 */ 1415 barHeight(height: Length, noMinHeightLimit: boolean): TabsAttribute; 1416 1417 /** 1418 * Sets the animation curve 1419 * 1420 * @param { Curve | ICurve } curve - animation curve for tabs switch animation, 1421 * Curve is an enumeration type for common curves, ICurve is a curve object. 1422 * Default value: 1423 * When pages are turned by swiping in TabContent, the default value is 1424 * interpolatingSpring(-1, 1, 228, 30). 1425 * When pages are turned by tapping tabs or calling the changeIndex API of TabsController, 1426 * the default value is cubicBezierCurve(0.2, 0.0, 0.1, 1.0). 1427 * @returns { TabsAttribute } 1428 * @syscap SystemCapability.ArkUI.ArkUI.Full 1429 * @crossplatform 1430 * @atomicservice 1431 * @since 20 1432 */ 1433 animationCurve(curve: Curve | ICurve): TabsAttribute; 1434 1435 /** 1436 * Called when the animation duration of the bar graph is set. 1437 * 1438 * @param { number } value 1439 * @returns { TabsAttribute } 1440 * @syscap SystemCapability.ArkUI.ArkUI.Full 1441 * @since 7 1442 */ 1443 /** 1444 * Called when the animation duration of the bar graph is set. 1445 * 1446 * @param { number } value - default value: 1447 * When this property is not set or set to null, the default value is 0. 1448 * When set to a value less than 0 or undefined, the default value is 300. 1449 * @returns { TabsAttribute } 1450 * @syscap SystemCapability.ArkUI.ArkUI.Full 1451 * @crossplatform 1452 * @since 10 1453 */ 1454 /** 1455 * Sets the length of time required to complete the tab switching animation, 1456 * which is initiated by clicking a specific tab or by calling the changeIndex API of TabsController. 1457 * 1458 * @param { number } value - default value: 1459 * When this property is not set or set to null, the default value is 0. 1460 * When set to a value less than 0 or undefined, the default value is 300. 1461 * @returns { TabsAttribute } 1462 * @syscap SystemCapability.ArkUI.ArkUI.Full 1463 * @crossplatform 1464 * @atomicservice 1465 * @since arkts {'1.1':'11','1.2':'20'} 1466 * @arkts 1.1&1.2 1467 */ 1468 animationDuration(value: number): TabsAttribute; 1469 1470 /** 1471 * Sets the animation mode for tab switching initiated by clicking a specific tab or 1472 * by calling the changeIndex API of TabsController. 1473 * 1474 * @param { Optional<AnimationMode> } mode - animation mode for tabs switch animation. 1475 * Default value is AnimationMode.CONTENT_FIRST. 1476 * @returns { TabsAttribute } 1477 * @syscap SystemCapability.ArkUI.ArkUI.Full 1478 * @crossplatform 1479 * @atomicservice 1480 * @since arkts {'1.1':'12','1.2':'20'} 1481 * @arkts 1.1&1.2 1482 */ 1483 animationMode(mode: Optional<AnimationMode>): TabsAttribute; 1484 1485 /** 1486 * Sets the edge effect used when the boundary of the scrolling area is reached. 1487 * 1488 * @param { Optional<EdgeEffect> } edgeEffect - Effect used when the boundary of the scrolling area is reached. 1489 * Default value is EdgeEffect.Spring. 1490 * @returns { TabsAttribute } 1491 * @syscap SystemCapability.ArkUI.ArkUI.Full 1492 * @crossplatform 1493 * @atomicservice 1494 * @since arkts {'1.1':'12','1.2':'20'} 1495 * @arkts 1.1&1.2 1496 */ 1497 edgeEffect(edgeEffect: Optional<EdgeEffect>): TabsAttribute; 1498 1499 /** 1500 * Called when the tab is switched. 1501 * 1502 * @param { function } event 1503 * @returns { TabsAttribute } 1504 * @syscap SystemCapability.ArkUI.ArkUI.Full 1505 * @since 7 1506 */ 1507 /** 1508 * Called when the tab is switched. 1509 * 1510 * @param { function } event 1511 * @returns { TabsAttribute } 1512 * @syscap SystemCapability.ArkUI.ArkUI.Full 1513 * @crossplatform 1514 * @since 10 1515 */ 1516 /** 1517 * Called when the tab is switched. 1518 * 1519 * @param { function } event 1520 * @returns { TabsAttribute } 1521 * @syscap SystemCapability.ArkUI.ArkUI.Full 1522 * @crossplatform 1523 * @atomicservice 1524 * @since 11 1525 */ 1526 /** 1527 * Triggered when a tab is switched. 1528 * Anonymous Object Rectification 1529 * 1530 * <p><strong>NOTE</strong>: 1531 * <br>This event is triggered when any of the following conditions is met: 1532 * 1. The swiping animation is completed, followed by tab switching. 1533 * 2. The Controller API is called. 1534 * 3. The attribute value is updated using a state variable. 1535 * 4. A tab is clicked. 1536 * </p> 1537 * 1538 * @param { Callback<number> } event 1539 * @returns { TabsAttribute } 1540 * @syscap SystemCapability.ArkUI.ArkUI.Full 1541 * @crossplatform 1542 * @atomicservice 1543 * @since arkts {'1.1':'18','1.2':'20'} 1544 * @arkts 1.1&1.2 1545 */ 1546 onChange(event: Callback<number>): TabsAttribute; 1547 1548 /** 1549 * Called when a new tab becomes selected. Animation is not necessarily complete. 1550 * 1551 * @param { Callback<number> } event - callback to notify which index has been selected 1552 * @returns { TabsAttribute } 1553 * @syscap SystemCapability.ArkUI.ArkUI.Full 1554 * @crossplatform 1555 * @atomicservice 1556 * @since arkts {'1.1':'18','1.2':'20'} 1557 * @arkts 1.1&1.2 1558 */ 1559 onSelected(event: Callback<number>): TabsAttribute; 1560 1561 /** 1562 * Called when the tab is clicked. 1563 * 1564 * @param { function } event 1565 * @returns { TabsAttribute } 1566 * @syscap SystemCapability.ArkUI.ArkUI.Full 1567 * @crossplatform 1568 * @since 10 1569 */ 1570 /** 1571 * Called when the tab is clicked. 1572 * 1573 * @param { function } event 1574 * @returns { TabsAttribute } 1575 * @syscap SystemCapability.ArkUI.ArkUI.Full 1576 * @crossplatform 1577 * @atomicservice 1578 * @since 11 1579 */ 1580 /** 1581 * Triggered when a tab is clicked. 1582 * Anonymous Object Rectification 1583 * 1584 * @param { Callback<number> } event 1585 * @returns { TabsAttribute } 1586 * @syscap SystemCapability.ArkUI.ArkUI.Full 1587 * @crossplatform 1588 * @atomicservice 1589 * @since arkts {'1.1':'18','1.2':'20'} 1590 * @arkts 1.1&1.2 1591 */ 1592 onTabBarClick(event: Callback<number>): TabsAttribute; 1593 1594 /** 1595 * Called when a new tab becomes unselected. Animation is not necessarily complete. 1596 * 1597 * @param { Callback<number> } event - callback to notify which index has been unselected 1598 * @returns { TabsAttribute } 1599 * @syscap SystemCapability.ArkUI.ArkUI.Full 1600 * @crossplatform 1601 * @atomicservice 1602 * @since arkts {'1.1':'18','1.2':'20'} 1603 * @arkts 1.1&1.2 1604 */ 1605 onUnselected(event: Callback<number>): TabsAttribute; 1606 1607 /** 1608 * Called when the tab content flip animation start. 1609 * 1610 * @param { function } handler - 1611 * "index": the index value of the tab that when animation start. 1612 * "targetIndex": the target index value of the tab that when animation start. 1613 * "event": the animation event callback info. 1614 * @returns { TabsAttribute } 1615 * @syscap SystemCapability.ArkUI.ArkUI.Full 1616 * @crossplatform 1617 * @since 11 1618 */ 1619 /** 1620 * Called when the tab content flip animation start. 1621 * 1622 * @param { function } handler - 1623 * "index": the index value of the tab that when animation start. 1624 * "targetIndex": the target index value of the tab that when animation start. 1625 * "event": the animation event callback info. 1626 * @returns { TabsAttribute } 1627 * @syscap SystemCapability.ArkUI.ArkUI.Full 1628 * @crossplatform 1629 * @atomicservice 1630 * @since 12 1631 */ 1632 /** 1633 * Triggered when the tab switching animation starts. 1634 * Anonymous Object Rectification 1635 * 1636 * @param { OnTabsAnimationStartCallback } handler 1637 * @returns { TabsAttribute } 1638 * @syscap SystemCapability.ArkUI.ArkUI.Full 1639 * @crossplatform 1640 * @atomicservice 1641 * @since arkts {'1.1':'18','1.2':'20'} 1642 * @arkts 1.1&1.2 1643 */ 1644 onAnimationStart(handler: OnTabsAnimationStartCallback): TabsAttribute; 1645 1646 /** 1647 * Called when the tab content flip animation end. 1648 * 1649 * @param { function } handler - 1650 * "index": the index value of the tab that when animation start. 1651 * "event": the animation event callback info. 1652 * @returns { TabsAttribute } 1653 * @syscap SystemCapability.ArkUI.ArkUI.Full 1654 * @crossplatform 1655 * @since 11 1656 */ 1657 /** 1658 * Called when the tab content flip animation end. 1659 * 1660 * @param { function } handler - 1661 * "index": the index value of the tab that when animation start. 1662 * "event": the animation event callback info. 1663 * @returns { TabsAttribute } 1664 * @syscap SystemCapability.ArkUI.ArkUI.Full 1665 * @crossplatform 1666 * @atomicservice 1667 * @since 12 1668 */ 1669 /** 1670 * Triggered when the tab switching animation ends. 1671 * Anonymous Object Rectification 1672 * 1673 * @param { OnTabsAnimationEndCallback } handler 1674 * @returns { TabsAttribute } 1675 * @syscap SystemCapability.ArkUI.ArkUI.Full 1676 * @crossplatform 1677 * @atomicservice 1678 * @since arkts {'1.1':'18','1.2':'20'} 1679 * @arkts 1.1&1.2 1680 */ 1681 onAnimationEnd(handler: OnTabsAnimationEndCallback): TabsAttribute; 1682 1683 /** 1684 * Called when swiping the tab content with the gesture. 1685 * 1686 * @param { function } handler - 1687 * "index": the index value of the tab that when animation start. 1688 * "event": the animation event callback info. 1689 * @returns { TabsAttribute } 1690 * @syscap SystemCapability.ArkUI.ArkUI.Full 1691 * @crossplatform 1692 * @since 11 1693 */ 1694 /** 1695 * Called when swiping the tab content with the gesture. 1696 * 1697 * @param { function } handler - 1698 * "index": the index value of the tab that when animation start. 1699 * "event": the animation event callback info. 1700 * @returns { TabsAttribute } 1701 * @syscap SystemCapability.ArkUI.ArkUI.Full 1702 * @crossplatform 1703 * @atomicservice 1704 * @since 12 1705 */ 1706 /** 1707 * Triggered on a frame-by-frame basis when the tab is switched by a swipe. 1708 * Anonymous Object Rectification 1709 * 1710 * @param { OnTabsGestureSwipeCallback } handler 1711 * @returns { TabsAttribute } 1712 * @syscap SystemCapability.ArkUI.ArkUI.Full 1713 * @crossplatform 1714 * @atomicservice 1715 * @since arkts {'1.1':'18','1.2':'20'} 1716 * @arkts 1.1&1.2 1717 */ 1718 onGestureSwipe(handler: OnTabsGestureSwipeCallback): TabsAttribute; 1719 1720 /** 1721 * Set whether the edges of tab bar are fading. 1722 * 1723 * @param { boolean } value - indicates whether the edges of tab bar are fading. 1724 * @returns { TabsAttribute } the attribute of the tabs 1725 * @syscap SystemCapability.ArkUI.ArkUI.Full 1726 * @crossplatform 1727 * @since 10 1728 */ 1729 /** 1730 * Sets whether the tab fades out when it exceeds the container width. 1731 * 1732 * <p><strong>NOTE</strong>: 1733 * <br>It is recommended that this attribute be used together with the barBackgroundColor attribute. 1734 * If the barBackgroundColor attribute is not defined, the tab fades out in white 1735 * when it exceeds the container width by default. 1736 * </p> 1737 * 1738 * @param { boolean } value - Whether the tab fades out when it exceeds the container width. Default value is true. 1739 * @returns { TabsAttribute } the attribute of the tabs 1740 * @syscap SystemCapability.ArkUI.ArkUI.Full 1741 * @crossplatform 1742 * @atomicservice 1743 * @since arkts {'1.1':'11','1.2':'20'} 1744 * @arkts 1.1&1.2 1745 */ 1746 fadingEdge(value: boolean): TabsAttribute; 1747 1748 /** 1749 * Set the divider between tab bar and tab content. 1750 * 1751 * @param { DividerStyle | null } value - indicates the style of the indicator. 1752 * @returns { TabsAttribute } the attribute of the tabs 1753 * @syscap SystemCapability.ArkUI.ArkUI.Full 1754 * @crossplatform 1755 * @since 10 1756 */ 1757 /** 1758 * Set the divider between tab bar and tab content. 1759 * 1760 * @param { DividerStyle | null } value - indicates the style of the indicator. Default value is null. 1761 * @returns { TabsAttribute } the attribute of the tabs 1762 * @syscap SystemCapability.ArkUI.ArkUI.Full 1763 * @crossplatform 1764 * @atomicservice 1765 * @since arkts {'1.1':'11','1.2':'20'} 1766 * @arkts 1.1&1.2 1767 */ 1768 divider(value: DividerStyle | null): TabsAttribute; 1769 1770 /** 1771 * Set whether the tab bar overlaps with the tab content. 1772 * 1773 * @param { boolean } value - indicates whether the tab bar overlaps with the tab content. 1774 * @returns { TabsAttribute } the attribute of the tabs 1775 * @syscap SystemCapability.ArkUI.ArkUI.Full 1776 * @since 10 1777 */ 1778 /** 1779 * Sets whether the tab bar is superimposed on the TabContent component after having its background blurred. 1780 * 1781 * @param { boolean } value - indicates whether the tab bar overlaps with the tab content. Default value is false. 1782 * @returns { TabsAttribute } the attribute of the tabs 1783 * @syscap SystemCapability.ArkUI.ArkUI.Full 1784 * @crossplatform 1785 * @atomicservice 1786 * @since arkts {'1.1':'11','1.2':'20'} 1787 * @arkts 1.1&1.2 1788 */ 1789 barOverlap(value: boolean): TabsAttribute; 1790 1791 /** 1792 * Set the background color of the tab bar. 1793 * 1794 * @param { ResourceColor } value - indicates the background color of the tab bar. 1795 * @returns { TabsAttribute } the attribute of the tabs 1796 * @syscap SystemCapability.ArkUI.ArkUI.Full 1797 * @since 10 1798 */ 1799 /** 1800 * Set the background color of the tab bar. 1801 * 1802 * @param { ResourceColor } value - indicates the background color of the tab bar. 1803 * Default value is Color.Transparent. 1804 * @returns { TabsAttribute } the attribute of the tabs 1805 * @syscap SystemCapability.ArkUI.ArkUI.Full 1806 * @crossplatform 1807 * @atomicservice 1808 * @since arkts {'1.1':'11','1.2':'20'} 1809 * @arkts 1.1&1.2 1810 */ 1811 barBackgroundColor(value: ResourceColor): TabsAttribute; 1812 1813 /** 1814 * Set the grid alignment options of the tab bar. 1815 * 1816 * @param { BarGridColumnOptions } value - indicates the bar grid alignment options. 1817 * @returns { TabsAttribute } the attribute of the tabs 1818 * @syscap SystemCapability.ArkUI.ArkUI.Full 1819 * @crossplatform 1820 * @since 10 1821 */ 1822 /** 1823 * Sets the visible area of the tab bar in grid mode. 1824 * 1825 * <p><strong>NOTE</strong>: 1826 * <br>This attribute is effective only in horizontal mode. It is not applicable to XS, XL, and XXL devices. 1827 * </p> 1828 * 1829 * @param { BarGridColumnOptions } value - indicates the bar grid alignment options. 1830 * @returns { TabsAttribute } the attribute of the tabs 1831 * @syscap SystemCapability.ArkUI.ArkUI.Full 1832 * @crossplatform 1833 * @atomicservice 1834 * @since arkts {'1.1':'11','1.2':'20'} 1835 * @arkts 1.1&1.2 1836 */ 1837 barGridAlign(value: BarGridColumnOptions): TabsAttribute; 1838 1839 /** 1840 * Custom tab content transition animation. 1841 * When undefined is set, this interface does not take effect. 1842 * 1843 * @param { function } delegate - custom content transition animation. 1844 * @returns { TabsAttribute } the attribute of the tabs 1845 * @syscap SystemCapability.ArkUI.ArkUI.Full 1846 * @crossplatform 1847 * @form 1848 * @since 11 1849 */ 1850 /** 1851 * Custom tab content transition animation. 1852 * When undefined is set, this interface does not take effect. 1853 * 1854 * @param { function } delegate - custom content transition animation. 1855 * @returns { TabsAttribute } the attribute of the tabs 1856 * @syscap SystemCapability.ArkUI.ArkUI.Full 1857 * @crossplatform 1858 * @form 1859 * @atomicservice 1860 * @since 12 1861 */ 1862 /** 1863 * Custom tab content transition animation. 1864 * When undefined is set, this interface does not take effect. 1865 * Anonymous Object Rectification 1866 * 1867 * <p><strong>NOTE</strong>: 1868 * <br>Instructions: 1869 * <br>1. When the custom tab switching animation is used, the default switching animation of 1870 * the Tabs component is disabled, and tabs cannot be switched through swiping. 1871 * <br>2. The value undefined means not to use the custom tab switching animation, 1872 * in which case the default switching animation is used. 1873 * <br>3. The custom tab switching animation cannot be interrupted. 1874 * <br>4. Currently, the custom tab switching animation can be triggered only by clicking a tab 1875 * or by calling the TabsController.changeIndex() API. 1876 * <br>5. When the custom tab switching animation is used, 1877 * the Tabs component supports all events except onGestureSwipe. 1878 * <br>6. Notes about the onChange and onAnimationEnd events: If the second custom animation is triggered 1879 * during the execution of the first custom animation, the onChange and onAnimationEnd events of 1880 * the first custom animation will be triggered when the second custom animation starts. 1881 * <br>7. When the custom animation is used, the stack layout is used for pages involved in the animation. 1882 * If the zIndex attribute is not set for related pages, the zIndex values of all pages are the same. 1883 * In this case, the pages are rendered in the order in which they are added to 1884 * the component tree(that is, the sequence of page indexes). In light of this, 1885 * to control the rendering levels of pages, set the zIndex attribute of the pages. 1886 * </p> 1887 * 1888 * @param { TabsCustomContentTransitionCallback } delegate - Custom content transition animation. 1889 * @returns { TabsAttribute } The attribute of the tabs. 1890 * @syscap SystemCapability.ArkUI.ArkUI.Full 1891 * @crossplatform 1892 * @atomicservice 1893 * @since arkts {'1.1':'18','1.2':'20'} 1894 * @arkts 1.1&1.2 1895 */ 1896 customContentTransition(delegate: TabsCustomContentTransitionCallback): TabsAttribute; 1897 1898 /** 1899 * Sets the background blur style of the tab bar. 1900 * 1901 * @param { BlurStyle } value - Background blur style of the tab bar. Default value is BlurStyle.NONE. 1902 * @returns { TabsAttribute } the attribute of the tabs 1903 * @syscap SystemCapability.ArkUI.ArkUI.Full 1904 * @crossplatform 1905 * @atomicservice 1906 * @since arkts {'1.1':'11','1.2':'20'} 1907 * @arkts 1.1&1.2 1908 */ 1909 barBackgroundBlurStyle(value: BlurStyle): TabsAttribute; 1910 1911 /** 1912 * Setting page flip mode on mouse wheel event. 1913 * 1914 * @param { Optional<PageFlipMode> } mode - page flip mode on mouse wheel event. The default value is PageFlipMode.CONTINUOUS. 1915 * @returns { TabsAttribute } 1916 * @syscap SystemCapability.ArkUI.ArkUI.Full 1917 * @crossplatform 1918 * @atomicservice 1919 * @since arkts {'1.1':'15','1.2':'20'} 1920 * @arkts 1.1&1.2 1921 */ 1922 pageFlipMode(mode: Optional<PageFlipMode>): TabsAttribute; 1923 1924 /** 1925 * Set the BlurStyle of the tab bar. 1926 * 1927 * @param { BlurStyle } style - style indicate the blur style for the tab bar 1928 * @param { BackgroundBlurStyleOptions } options - options indicate the options for the tab bar 1929 * @returns { TabsAttribute } the attribute of the tabs 1930 * @syscap SystemCapability.ArkUI.ArkUI.Full 1931 * @crossplatform 1932 * @atomicservice 1933 * @since arkts {'1.1':'18','1.2':'20'} 1934 * @arkts 1.1&1.2 1935 */ 1936 barBackgroundBlurStyle(style: BlurStyle, options: BackgroundBlurStyleOptions): TabsAttribute; 1937 1938 /** 1939 * Set the BackgroundEffect of the tab bar. 1940 * 1941 * @param { BackgroundEffectOptions } options - options indicate the options for the tab bar 1942 * @returns { TabsAttribute } the attribute of the tabs 1943 * @syscap SystemCapability.ArkUI.ArkUI.Full 1944 * @crossplatform 1945 * @atomicservice 1946 * @since arkts {'1.1':'18','1.2':'20'} 1947 * @arkts 1.1&1.2 1948 */ 1949 barBackgroundEffect(options: BackgroundEffectOptions): TabsAttribute; 1950 1951 /** 1952 * Called when content will change. 1953 * 1954 * @param { function } handler 1955 * "currentIndex": the index value of the current tab. 1956 * "comingIndex": the index value of the tab that will change. 1957 * Tabs can change from currentIndex to comingIndex if function return true. 1958 * Tabs can not change from currentIndex to comingIndex if function return false. 1959 * @returns { TabsAttribute } 1960 * @syscap SystemCapability.ArkUI.ArkUI.Full 1961 * @crossplatform 1962 * @atomicservice 1963 * @since 12 1964 */ 1965 /** 1966 * Triggered when a new page is about to be displayed. 1967 * Anonymous Object Rectification 1968 * 1969 * <p><strong>NOTE</strong>: 1970 * <br>This event is triggered when any of the following conditions is met: 1971 * 1. When the user swipes on the TabContent component (provided that it supports swiping) to switch to a new page. 1972 * 2. When TabsController.changeIndex is called to switch to a new page. 1973 * 3. When the **index** attribute is changed to switch to a new page. 1974 * 4. When the user clicks a tab on the tab bar to switch to a new page. 1975 * 5. When the user presses the left or right arrow key on the keyboard to switch to a new page 1976 * while the tab bar is focused. 1977 * </p> 1978 * 1979 * @param { OnTabsContentWillChangeCallback } handler 1980 * @returns { TabsAttribute } 1981 * @syscap SystemCapability.ArkUI.ArkUI.Full 1982 * @crossplatform 1983 * @atomicservice 1984 * @since arkts {'1.1':'18','1.2':'20'} 1985 * @arkts 1.1&1.2 1986 */ 1987 onContentWillChange(handler: OnTabsContentWillChangeCallback): TabsAttribute; 1988 1989 /** 1990 * Sets the maximum number of child components to be cached. 1991 * 1992 * @param { number } count - the maximum number of child components to be cached, default to 0. 1993 * @param { TabsCacheMode } mode - the mode of caching child components, default to TabsCacheMode.CACHE_BOTH_SIDE. 1994 * @returns { TabsAttribute } 1995 * @syscap SystemCapability.ArkUI.ArkUI.Full 1996 * @crossplatform 1997 * @atomicservice 1998 * @since arkts {'1.1':'19','1.2':'20'} 1999 * @arkts 1.1&1.2 2000 */ 2001 cachedMaxCount(count: number, mode: TabsCacheMode): TabsAttribute; 2002} 2003 2004/** 2005 * Defines the Tab Content animated transition options. 2006 * 2007 * @interface TabContentAnimatedTransition 2008 * @syscap SystemCapability.ArkUI.ArkUI.Full 2009 * @crossplatform 2010 * @form 2011 * @since 11 2012 */ 2013/** 2014 * Defines the Tab Content animated transition options. 2015 * 2016 * @interface TabContentAnimatedTransition 2017 * @syscap SystemCapability.ArkUI.ArkUI.Full 2018 * @crossplatform 2019 * @form 2020 * @atomicservice 2021 * @since arkts {'1.1':'12','1.2':'20'} 2022 * @arkts 1.1&1.2 2023 */ 2024declare interface TabContentAnimatedTransition { 2025 /** 2026 * Defines the timeout of custom content transition animation. The unit is ms. 2027 * If TabContentTransitionProxy.finishTransition() is not invoked, use the timeout as animation end time. 2028 * 2029 * @type { ?number } 2030 * @default 1000 ms 2031 * @syscap SystemCapability.ArkUI.ArkUI.Full 2032 * @crossplatform 2033 * @form 2034 * @since 11 2035 */ 2036 /** 2037 * Defines the timeout of custom content transition animation. The unit is ms. 2038 * If TabContentTransitionProxy.finishTransition() is not invoked, use the timeout as animation end time. 2039 * 2040 * @type { ?number } 2041 * @default 1000 ms 2042 * @syscap SystemCapability.ArkUI.ArkUI.Full 2043 * @crossplatform 2044 * @form 2045 * @atomicservice 2046 * @since arkts {'1.1':'12','1.2':'20'} 2047 * @arkts 1.1&1.2 2048 */ 2049 timeout?: number; 2050 2051 /** 2052 * Called when custom content transition animation start. 2053 * 2054 * @type { function } 2055 * @syscap SystemCapability.ArkUI.ArkUI.Full 2056 * @crossplatform 2057 * @form 2058 * @since 11 2059 */ 2060 /** 2061 * Called when custom content transition animation start. 2062 * 2063 * @type { function } 2064 * @syscap SystemCapability.ArkUI.ArkUI.Full 2065 * @crossplatform 2066 * @form 2067 * @atomicservice 2068 * @since 12 2069 */ 2070 /** 2071 * Called when custom content transition animation start. 2072 * Anonymous Object Rectification 2073 * 2074 * @type { Callback<TabContentTransitionProxy> } 2075 * @syscap SystemCapability.ArkUI.ArkUI.Full 2076 * @crossplatform 2077 * @form 2078 * @atomicservice 2079 * @since arkts {'1.1':'18','1.2':'20'} 2080 * @arkts 1.1&1.2 2081 */ 2082 transition: Callback<TabContentTransitionProxy>; 2083} 2084 2085/** 2086 * The proxy of TabContentAnimatedTransition. 2087 * 2088 * @interface TabContentTransitionProxy 2089 * @syscap SystemCapability.ArkUI.ArkUI.Full 2090 * @crossplatform 2091 * @form 2092 * @since 11 2093 */ 2094/** 2095 * The proxy of TabContentAnimatedTransition. 2096 * 2097 * @interface TabContentTransitionProxy 2098 * @syscap SystemCapability.ArkUI.ArkUI.Full 2099 * @crossplatform 2100 * @form 2101 * @atomicservice 2102 * @since arkts {'1.1':'12','1.2':'20'} 2103 * @arkts 1.1&1.2 2104 */ 2105declare interface TabContentTransitionProxy { 2106 /** 2107 * The index of current tab content. 2108 * 2109 * @type { number } 2110 * @syscap SystemCapability.ArkUI.ArkUI.Full 2111 * @crossplatform 2112 * @form 2113 * @since 11 2114 */ 2115 /** 2116 * The index of current tab content. 2117 * 2118 * @type { number } 2119 * @syscap SystemCapability.ArkUI.ArkUI.Full 2120 * @crossplatform 2121 * @form 2122 * @atomicservice 2123 * @since arkts {'1.1':'12','1.2':'20'} 2124 * @arkts 1.1&1.2 2125 */ 2126 from: number; 2127 2128 /** 2129 * The index of target tab content. 2130 * 2131 * @type { number } 2132 * @syscap SystemCapability.ArkUI.ArkUI.Full 2133 * @crossplatform 2134 * @form 2135 * @since 11 2136 */ 2137 /** 2138 * The index of target tab content. 2139 * 2140 * @type { number } 2141 * @syscap SystemCapability.ArkUI.ArkUI.Full 2142 * @crossplatform 2143 * @form 2144 * @atomicservice 2145 * @since arkts {'1.1':'12','1.2':'20'} 2146 * @arkts 1.1&1.2 2147 */ 2148 to: number; 2149 2150 /** 2151 * Notifies Tabs component the custom content transition animation is complete. 2152 * 2153 * @syscap SystemCapability.ArkUI.ArkUI.Full 2154 * @crossplatform 2155 * @form 2156 * @since 11 2157 */ 2158 /** 2159 * Notifies Tabs component the custom content transition animation is complete. 2160 * 2161 * @syscap SystemCapability.ArkUI.ArkUI.Full 2162 * @crossplatform 2163 * @form 2164 * @atomicservice 2165 * @since arkts {'1.1':'12','1.2':'20'} 2166 * @arkts 1.1&1.2 2167 */ 2168 finishTransition(): void; 2169} 2170 2171/** 2172 * Defines Tabs Component. 2173 * 2174 * @syscap SystemCapability.ArkUI.ArkUI.Full 2175 * @since 7 2176 */ 2177/** 2178 * Defines Tabs Component. 2179 * 2180 * @syscap SystemCapability.ArkUI.ArkUI.Full 2181 * @crossplatform 2182 * @since 10 2183 */ 2184/** 2185 * Defines Tabs Component. 2186 * 2187 * @syscap SystemCapability.ArkUI.ArkUI.Full 2188 * @crossplatform 2189 * @atomicservice 2190 * @since 11 2191 */ 2192declare const Tabs: TabsInterface; 2193 2194/** 2195 * Defines Tabs Component instance. 2196 * 2197 * @syscap SystemCapability.ArkUI.ArkUI.Full 2198 * @since 7 2199 */ 2200/** 2201 * Defines Tabs Component instance. 2202 * 2203 * @syscap SystemCapability.ArkUI.ArkUI.Full 2204 * @crossplatform 2205 * @since 10 2206 */ 2207/** 2208 * Defines Tabs Component instance. 2209 * 2210 * @syscap SystemCapability.ArkUI.ArkUI.Full 2211 * @crossplatform 2212 * @atomicservice 2213 * @since 11 2214 */ 2215declare const TabsInstance: TabsAttribute; 2216