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 * Contains interpolator functions such as initialization, third-order Bezier curves, and spring curves. 23 * 24 * @namespace curves 25 * @syscap SystemCapability.ArkUI.ArkUI.Full 26 * @since 7 27 */ 28/** 29 * Contains interpolator functions such as initialization, third-order Bezier curves, and spring curves. 30 * 31 * @namespace curves 32 * @syscap SystemCapability.ArkUI.ArkUI.Full 33 * @crossplatform 34 * @since 10 35 */ 36/** 37 * Contains interpolator functions such as initialization, third-order Bezier curves, and spring curves. 38 * 39 * @namespace curves 40 * @syscap SystemCapability.ArkUI.ArkUI.Full 41 * @crossplatform 42 * @atomicservice 43 * @since 11 44 */ 45declare namespace curves { 46 /** 47 * enum Curve. 48 * 49 * @enum { number } 50 * @syscap SystemCapability.ArkUI.ArkUI.Full 51 * @since 7 52 */ 53 /** 54 * enum Curve. 55 * 56 * @enum { number } 57 * @syscap SystemCapability.ArkUI.ArkUI.Full 58 * @crossplatform 59 * @since 10 60 */ 61 /** 62 * enum Curve. 63 * 64 * @enum { number } 65 * @syscap SystemCapability.ArkUI.ArkUI.Full 66 * @crossplatform 67 * @atomicservice 68 * @since 11 69 */ 70 enum Curve { 71 /** 72 * Linear. Indicates that the animation has the same velocity from start to finish. 73 * 74 * @syscap SystemCapability.ArkUI.ArkUI.Full 75 * @since 7 76 */ 77 /** 78 * Linear. Indicates that the animation has the same velocity from start to finish. 79 * 80 * @syscap SystemCapability.ArkUI.ArkUI.Full 81 * @crossplatform 82 * @since 10 83 */ 84 /** 85 * Linear. Indicates that the animation has the same velocity from start to finish. 86 * 87 * @syscap SystemCapability.ArkUI.ArkUI.Full 88 * @crossplatform 89 * @atomicservice 90 * @since 11 91 */ 92 Linear, 93 /** 94 * Ease. Indicates that the animation starts at a low speed, then speeds up, and slows down before the end, 95 * CubicBezier(0.25, 0.1, 0.25, 1.0). 96 * 97 * @syscap SystemCapability.ArkUI.ArkUI.Full 98 * @since 7 99 */ 100 /** 101 * Ease. Indicates that the animation starts at a low speed, then speeds up, and slows down before the end, 102 * CubicBezier(0.25, 0.1, 0.25, 1.0). 103 * 104 * @syscap SystemCapability.ArkUI.ArkUI.Full 105 * @crossplatform 106 * @since 10 107 */ 108 /** 109 * Ease. Indicates that the animation starts at a low speed, then speeds up, and slows down before the end, 110 * CubicBezier(0.25, 0.1, 0.25, 1.0). 111 * 112 * @syscap SystemCapability.ArkUI.ArkUI.Full 113 * @crossplatform 114 * @atomicservice 115 * @since 11 116 */ 117 Ease, 118 /** 119 * EaseIn. Indicates that the animation starts at a low speed, Cubic Bezier (0.42, 0.0, 1.0, 1.0). 120 * 121 * @syscap SystemCapability.ArkUI.ArkUI.Full 122 * @since 7 123 */ 124 /** 125 * EaseIn. Indicates that the animation starts at a low speed, Cubic Bezier (0.42, 0.0, 1.0, 1.0). 126 * 127 * @syscap SystemCapability.ArkUI.ArkUI.Full 128 * @crossplatform 129 * @since 10 130 */ 131 /** 132 * EaseIn. Indicates that the animation starts at a low speed, Cubic Bezier (0.42, 0.0, 1.0, 1.0). 133 * 134 * @syscap SystemCapability.ArkUI.ArkUI.Full 135 * @crossplatform 136 * @atomicservice 137 * @since 11 138 */ 139 EaseIn, 140 /** 141 * EaseOut. Indicates that the animation ends at low speed, CubicBezier (0.0, 0.0, 0.58, 1.0). 142 * 143 * @syscap SystemCapability.ArkUI.ArkUI.Full 144 * @since 7 145 */ 146 /** 147 * EaseOut. Indicates that the animation ends at low speed, CubicBezier (0.0, 0.0, 0.58, 1.0). 148 * 149 * @syscap SystemCapability.ArkUI.ArkUI.Full 150 * @crossplatform 151 * @since 10 152 */ 153 /** 154 * EaseOut. Indicates that the animation ends at low speed, CubicBezier (0.0, 0.0, 0.58, 1.0). 155 * 156 * @syscap SystemCapability.ArkUI.ArkUI.Full 157 * @crossplatform 158 * @atomicservice 159 * @since 11 160 */ 161 EaseOut, 162 /** 163 * EaseInOut. Indicates that the animation starts and ends at low speed, CubicBezier (0.42, 0.0, 0.58, 1.0). 164 * 165 * @syscap SystemCapability.ArkUI.ArkUI.Full 166 * @since 7 167 */ 168 /** 169 * EaseInOut. Indicates that the animation starts and ends at low speed, CubicBezier (0.42, 0.0, 0.58, 1.0). 170 * 171 * @syscap SystemCapability.ArkUI.ArkUI.Full 172 * @crossplatform 173 * @since 10 174 */ 175 /** 176 * EaseInOut. Indicates that the animation starts and ends at low speed, CubicBezier (0.42, 0.0, 0.58, 1.0). 177 * 178 * @syscap SystemCapability.ArkUI.ArkUI.Full 179 * @crossplatform 180 * @atomicservice 181 * @since 11 182 */ 183 EaseInOut, 184 /** 185 * FastOutSlowIn. Standard curve, cubic-bezier (0.4, 0.0, 0.2, 1.0). 186 * 187 * @syscap SystemCapability.ArkUI.ArkUI.Full 188 * @since 7 189 */ 190 /** 191 * FastOutSlowIn. Standard curve, cubic-bezier (0.4, 0.0, 0.2, 1.0). 192 * 193 * @syscap SystemCapability.ArkUI.ArkUI.Full 194 * @crossplatform 195 * @since 10 196 */ 197 /** 198 * FastOutSlowIn. Standard curve, cubic-bezier (0.4, 0.0, 0.2, 1.0). 199 * 200 * @syscap SystemCapability.ArkUI.ArkUI.Full 201 * @crossplatform 202 * @atomicservice 203 * @since 11 204 */ 205 FastOutSlowIn, 206 /** 207 * LinearOutSlowIn. Deceleration curve, cubic-bezier (0.0, 0.0, 0.2, 1.0). 208 * 209 * @syscap SystemCapability.ArkUI.ArkUI.Full 210 * @since 7 211 */ 212 /** 213 * LinearOutSlowIn. Deceleration curve, cubic-bezier (0.0, 0.0, 0.2, 1.0). 214 * 215 * @syscap SystemCapability.ArkUI.ArkUI.Full 216 * @crossplatform 217 * @since 10 218 */ 219 /** 220 * LinearOutSlowIn. Deceleration curve, cubic-bezier (0.0, 0.0, 0.2, 1.0). 221 * 222 * @syscap SystemCapability.ArkUI.ArkUI.Full 223 * @crossplatform 224 * @atomicservice 225 * @since 11 226 */ 227 LinearOutSlowIn, 228 /** 229 * FastOutLinearIn. Acceleration curve, cubic-bezier (0.4, 0.0, 1.0, 1.0). 230 * 231 * @syscap SystemCapability.ArkUI.ArkUI.Full 232 * @since 7 233 */ 234 /** 235 * FastOutLinearIn. Acceleration curve, cubic-bezier (0.4, 0.0, 1.0, 1.0). 236 * 237 * @syscap SystemCapability.ArkUI.ArkUI.Full 238 * @crossplatform 239 * @since 10 240 */ 241 /** 242 * FastOutLinearIn. Acceleration curve, cubic-bezier (0.4, 0.0, 1.0, 1.0). 243 * 244 * @syscap SystemCapability.ArkUI.ArkUI.Full 245 * @crossplatform 246 * @atomicservice 247 * @since 11 248 */ 249 FastOutLinearIn, 250 /** 251 * ExtremeDeceleration. Abrupt curve, cubic-bezier (0.0, 0.0, 0.0, 1.0). 252 * 253 * @syscap SystemCapability.ArkUI.ArkUI.Full 254 * @since 7 255 */ 256 /** 257 * ExtremeDeceleration. Abrupt curve, cubic-bezier (0.0, 0.0, 0.0, 1.0). 258 * 259 * @syscap SystemCapability.ArkUI.ArkUI.Full 260 * @crossplatform 261 * @since 10 262 */ 263 /** 264 * ExtremeDeceleration. Abrupt curve, cubic-bezier (0.0, 0.0, 0.0, 1.0). 265 * 266 * @syscap SystemCapability.ArkUI.ArkUI.Full 267 * @crossplatform 268 * @atomicservice 269 * @since 11 270 */ 271 ExtremeDeceleration, 272 /** 273 * Sharp. Sharp curves, cubic-bezier (0.33, 0.0, 0.67, 1.0). 274 * 275 * @syscap SystemCapability.ArkUI.ArkUI.Full 276 * @since 7 277 */ 278 /** 279 * Sharp. Sharp curves, cubic-bezier (0.33, 0.0, 0.67, 1.0). 280 * 281 * @syscap SystemCapability.ArkUI.ArkUI.Full 282 * @crossplatform 283 * @since 10 284 */ 285 /** 286 * Sharp. Sharp curves, cubic-bezier (0.33, 0.0, 0.67, 1.0). 287 * 288 * @syscap SystemCapability.ArkUI.ArkUI.Full 289 * @crossplatform 290 * @atomicservice 291 * @since 11 292 */ 293 Sharp, 294 /** 295 * Rhythm. Rhythmic curve, cubic-bezier (0.7, 0.0, 0.2, 1.0). 296 * 297 * @syscap SystemCapability.ArkUI.ArkUI.Full 298 * @since 7 299 */ 300 /** 301 * Rhythm. Rhythmic curve, cubic-bezier (0.7, 0.0, 0.2, 1.0). 302 * 303 * @syscap SystemCapability.ArkUI.ArkUI.Full 304 * @crossplatform 305 * @since 10 306 */ 307 /** 308 * Rhythm. Rhythmic curve, cubic-bezier (0.7, 0.0, 0.2, 1.0). 309 * 310 * @syscap SystemCapability.ArkUI.ArkUI.Full 311 * @crossplatform 312 * @atomicservice 313 * @since 11 314 */ 315 Rhythm, 316 /** 317 * Smooth. Smooth curves, cubic-bezier (0.4, 0.0, 0.4, 1.0). 318 * 319 * @syscap SystemCapability.ArkUI.ArkUI.Full 320 * @since 7 321 */ 322 /** 323 * Smooth. Smooth curves, cubic-bezier (0.4, 0.0, 0.4, 1.0). 324 * 325 * @syscap SystemCapability.ArkUI.ArkUI.Full 326 * @crossplatform 327 * @since 10 328 */ 329 /** 330 * Smooth. Smooth curves, cubic-bezier (0.4, 0.0, 0.4, 1.0). 331 * 332 * @syscap SystemCapability.ArkUI.ArkUI.Full 333 * @crossplatform 334 * @atomicservice 335 * @since 11 336 */ 337 Smooth, 338 /** 339 * Friction. Damping curves, CubicBezier (0.2, 0.0, 0.2, 1.0). 340 * 341 * @syscap SystemCapability.ArkUI.ArkUI.Full 342 * @since 7 343 */ 344 /** 345 * Friction. Damping curves, CubicBezier (0.2, 0.0, 0.2, 1.0). 346 * 347 * @syscap SystemCapability.ArkUI.ArkUI.Full 348 * @crossplatform 349 * @since 10 350 */ 351 /** 352 * Friction. Damping curves, CubicBezier (0.2, 0.0, 0.2, 1.0). 353 * 354 * @syscap SystemCapability.ArkUI.ArkUI.Full 355 * @crossplatform 356 * @atomicservice 357 * @since 11 358 */ 359 Friction, 360 } 361 362 /** 363 * Interface for curve object. 364 * 365 * @typedef ICurve 366 * @syscap SystemCapability.ArkUI.ArkUI.Full 367 * @since 9 368 */ 369 /** 370 * Interface for curve object. 371 * 372 * @typedef ICurve 373 * @syscap SystemCapability.ArkUI.ArkUI.Full 374 * @crossplatform 375 * @since 10 376 */ 377 /** 378 * Interface for curve object. 379 * 380 * @typedef ICurve 381 * @syscap SystemCapability.ArkUI.ArkUI.Full 382 * @crossplatform 383 * @atomicservice 384 * @since 11 385 */ 386 interface ICurve { 387 /** 388 * Get curve value by fraction.params,the parameter value range is from 0 to 1. 389 * 1 is taken when the value is greater than 1 and 0 is taken when it is less than 0. 390 * 391 * @param { number } fraction -Indicates the current normalized time parameter. Value range: [0, 1]. 392 * Note: If the value is less than 0, it will be processed as 0. If the value is greater than 1, 1 is used. 393 * @returns { number } 394 * @syscap SystemCapability.ArkUI.ArkUI.Full 395 * @since 9 396 */ 397 /** 398 * Get curve value by fraction.params,the parameter value range is from 0 to 1. 399 * 1 is taken when the value is greater than 1 and 0 is taken when it is less than 0. 400 * 401 * @param { number } fraction -Indicates the current normalized time parameter. Value range: [0, 1]. 402 * Note: If the value is less than 0, it will be processed as 0. If the value is greater than 1, 1 is used. 403 * @returns { number } 404 * @syscap SystemCapability.ArkUI.ArkUI.Full 405 * @crossplatform 406 * @since 10 407 */ 408 /** 409 * Get curve value by fraction.params,the parameter value range is from 0 to 1. 410 * 1 is taken when the value is greater than 1 and 0 is taken when it is less than 0. 411 * 412 * @param { number } fraction -Indicates the current normalized time parameter. Value range: [0, 1]. 413 * Note: If the value is less than 0, it will be processed as 0. If the value is greater than 1, 1 is used. 414 * @returns { number } 415 * @syscap SystemCapability.ArkUI.ArkUI.Full 416 * @crossplatform 417 * @atomicservice 418 * @since 11 419 */ 420 interpolate(fraction: number): number; 421 } 422 423 /** 424 * Initializes the interpolator curve when called. 425 * 426 * @param { Curve } [curve] The default value is Curve.Linear 427 * @returns { ICurve } 428 * @syscap SystemCapability.ArkUI.ArkUI.Full 429 * @since 9 430 */ 431 /** 432 * Initializes the interpolator curve when called. 433 * 434 * @param { Curve } [curve] The default value is Curve.Linear 435 * @returns { ICurve } 436 * @syscap SystemCapability.ArkUI.ArkUI.Full 437 * @crossplatform 438 * @since 10 439 */ 440 /** 441 * Initializes the interpolator curve when called. 442 * 443 * @param { Curve } [curve] The default value is Curve.Linear 444 * @returns { ICurve } 445 * @syscap SystemCapability.ArkUI.ArkUI.Full 446 * @crossplatform 447 * @atomicservice 448 * @since 11 449 */ 450 function initCurve(curve?: Curve): ICurve; 451 452 /** 453 * Initializes the interpolator curve when called. 454 * 455 * @param { Curve } [curve] 456 * @returns { string } 457 * @syscap SystemCapability.ArkUI.ArkUI.Full 458 * @since 7 459 * @deprecated since 9 460 * @useinstead initCurve 461 */ 462 function init(curve?: Curve): string; 463 464 /** 465 * Constructs a step curve when called. 466 * 467 * @param { number } count -The number of steps. The range of this value is [1, +∞). 468 * @param { boolean } end -A step change occurs at the start or end of each interval. 469 * @returns { ICurve } 470 * @syscap SystemCapability.ArkUI.ArkUI.Full 471 * @since 9 472 */ 473 /** 474 * Constructs a step curve when called. 475 * 476 * @param { number } count -The number of steps. The range of this value is [1, +∞). 477 * @param { boolean } end -A step change occurs at the start or end of each interval. 478 * @returns { ICurve } 479 * @syscap SystemCapability.ArkUI.ArkUI.Full 480 * @crossplatform 481 * @since 10 482 */ 483 /** 484 * Constructs a step curve when called. 485 * 486 * @param { number } count -The number of steps. The range of this value is [1, +∞). 487 * @param { boolean } end -A step change occurs at the start or end of each interval. 488 * @returns { ICurve } 489 * @syscap SystemCapability.ArkUI.ArkUI.Full 490 * @crossplatform 491 * @atomicservice 492 * @since 11 493 */ 494 function stepsCurve(count: number, end: boolean): ICurve; 495 496 /** 497 * Constructs a custom curve when called. 498 * 499 * @param { function } interpolate - fraction range is [0,1], the return number must between [0,1]. 500 * @returns { ICurve } 501 * @syscap SystemCapability.ArkUI.ArkUI.Full 502 * @crossplatform 503 * @since 10 504 */ 505 /** 506 * Constructs a custom curve when called. 507 * 508 * @param { function } interpolate - fraction range is [0,1], the return number must between [0,1]. 509 * @returns { ICurve } 510 * @syscap SystemCapability.ArkUI.ArkUI.Full 511 * @crossplatform 512 * @atomicservice 513 * @since 11 514 */ 515 function customCurve(interpolate: (fraction: number) => number): ICurve; 516 517 /** 518 * Constructs a step curve when called. 519 * 520 * @param { number } count 521 * @param { boolean } end 522 * @returns { string } 523 * @syscap SystemCapability.ArkUI.ArkUI.Full 524 * @since 7 525 * @deprecated since 9 526 * @useinstead stepsCurve 527 */ 528 function steps(count: number, end: boolean): string; 529 530 /** 531 * Constructs a third-order Bezier curve when called. 532 * @param { number } x1 -Value range [0, 1]. 533 * Note: If the value is less than 0, 0 is used. If the value is greater than 1, 1 is used. 534 * @param { number } y1 -Value range (-∞, +∞). 535 * @param { number } x2 -Value range [0, 1]. 536 * Note: If the value is less than 0, 0 is used. If the value is greater than 1, 1 is used. 537 * @param { number } y2 -Value range (-∞, +∞). 538 * @returns { ICurve } 539 * @syscap SystemCapability.ArkUI.ArkUI.Full 540 * @since 9 541 */ 542 /** 543 * Constructs a third-order Bezier curve when called. 544 * 545 * @param { number } x1 -Value range [0, 1]. 546 * Note: If the value is less than 0, 0 is used. If the value is greater than 1, 1 is used. 547 * @param { number } y1 -Value range (-∞, +∞). 548 * @param { number } x2 -Value range [0, 1]. 549 * Note: If the value is less than 0, 0 is used. If the value is greater than 1, 1 is used. 550 * @param { number } y2 -Value range (-∞, +∞). 551 * @returns { ICurve } 552 * @syscap SystemCapability.ArkUI.ArkUI.Full 553 * @crossplatform 554 * @since 10 555 */ 556 /** 557 * Constructs a third-order Bezier curve when called. 558 * 559 * @param { number } x1 -Value range [0, 1]. 560 * Note: If the value is less than 0, 0 is used. If the value is greater than 1, 1 is used. 561 * @param { number } y1 -Value range (-∞, +∞). 562 * @param { number } x2 -Value range [0, 1]. 563 * Note: If the value is less than 0, 0 is used. If the value is greater than 1, 1 is used. 564 * @param { number } y2 -Value range (-∞, +∞). 565 * @returns { ICurve } 566 * @syscap SystemCapability.ArkUI.ArkUI.Full 567 * @crossplatform 568 * @atomicservice 569 * @since 11 570 */ 571 function cubicBezierCurve(x1: number, y1: number, x2: number, y2: number): ICurve; 572 573 /** 574 * Constructs a third-order Bezier curve when called. 575 * 576 * @param { number } x1 -Value range [0, 1]. 577 * Note: If the value is less than 0, 0 is used. If the value is greater than 1, 1 is used. 578 * @param { number } y1 -Value range (-∞, +∞). 579 * @param { number } x2 -Value range [0, 1]. 580 * Note: If the value is less than 0, 0 is used. If the value is greater than 1, 1 is used. 581 * @param { number } y2 -Value range (-∞, +∞). 582 * @returns { string } 583 * @syscap SystemCapability.ArkUI.ArkUI.Full 584 * @since 7 585 * @deprecated since 9 586 * @useinstead cubicBezierCurve 587 */ 588 function cubicBezier(x1: number, y1: number, x2: number, y2: number): string; 589 590 /** 591 * Constructs a spring curve when called. For more information about the meaning of the parameter, see spring(). 592 * 593 * @param { number } velocity -Value range (-∞, +∞). 594 * @param { number } mass -Value range (0, +∞). Note: If the value is less than or equal to 0, 1 is used. 595 * @param { number } stiffness -Value range (0, +∞). Note: If the value is less than or equal to 0, 1 is used. 596 * @param { number } damping -Value range (0, +∞). Note: If the value is less than or equal to 0, 1 is used. 597 * @returns { ICurve } 598 * @syscap SystemCapability.ArkUI.ArkUI.Full 599 * @since 9 600 */ 601 /** 602 * Constructs a spring curve when called. 603 * 604 * @param { number } velocity -Value range (-∞, +∞). 605 * @param { number } mass -Value range (0, +∞). Note: If the value is less than or equal to 0, 1 is used. 606 * @param { number } stiffness -Value range (0, +∞). Note: If the value is less than or equal to 0, 1 is used. 607 * @param { number } damping -Value range (0, +∞). Note: If the value is less than or equal to 0, 1 is used. 608 * @returns { ICurve } 609 * @syscap SystemCapability.ArkUI.ArkUI.Full 610 * @crossplatform 611 * @since 10 612 */ 613 /** 614 * Constructs a spring curve when called. 615 * 616 * @param { number } velocity -Value range (-∞, +∞). 617 * @param { number } mass -Value range (0, +∞). Note: If the value is less than or equal to 0, 1 is used. 618 * @param { number } stiffness -Value range (0, +∞). Note: If the value is less than or equal to 0, 1 is used. 619 * @param { number } damping -Value range (0, +∞). Note: If the value is less than or equal to 0, 1 is used. 620 * @returns { ICurve } 621 * @syscap SystemCapability.ArkUI.ArkUI.Full 622 * @crossplatform 623 * @atomicservice 624 * @since 11 625 */ 626 function springCurve(velocity: number, mass: number, stiffness: number, damping: number): ICurve; 627 628 /** 629 * Constructs a spring curve when called. 630 * 631 * @param { number } velocity -Initial velocity. An influence parameter of external factors on elastic dynamics, 632 * purpose is to ensure a smooth transition of the object from the previous state of motion to the elastic dynamics. 633 * @param { number } mass -Quality. The force object of the elastic system will have an inertial effect on elastic 634 * system. The greater the mass, the greater the amplitude of the oscillation. 635 * @param { number } stiffness -The degree to which an object is deformed by resisting the applied force. 636 * @param { number } damping -Pure number, Used to describe oscillation and decay of a system after being disturbed. 637 * @returns { string } 638 * @syscap SystemCapability.ArkUI.ArkUI.Full 639 * @since 7 640 * @deprecated since 9 641 * @useinstead springCurve 642 */ 643 function spring(velocity: number, mass: number, stiffness: number, damping: number): string; 644 645 /** 646 * Constructs a spring motion when called. 647 * 648 * @param { number } [response] The default value is 0.15. Unit: seconds. Value range: (0, +∞). 649 * Note: If a value is set to 0 or less, the default value of 0.15 is used. 650 * @param { number } [dampingFraction] The default value is 0.86. Unit: seconds. Value range: [0, +∞). 651 * Note: If a value is set to 0 or less, the default value of 0.86 is used. 652 * @param { number } [overlapDuration] The default value is 0.25. Unit: seconds. Value range: [0, +∞). 653 * Note: If a value is set to 0 or less, the default value of 0.25 is used. 654 * @returns { ICurve } 655 * @syscap SystemCapability.ArkUI.ArkUI.Full 656 * @since 9 657 */ 658 /** 659 * Constructs a spring motion when called. 660 * 661 * @param { number } [response] The default value is 0.15. Unit: seconds. Value range: (0, +∞). 662 * Note: If a value is set to 0 or less, the default value of 0.15 is used. 663 * @param { number } [dampingFraction] The default value is 0.86. Unit: seconds. Value range: [0, +∞). 664 * Note: If a value is set to 0 or less, the default value of 0.86 is used. 665 * @param { number } [overlapDuration] The default value is 0.25. Unit: seconds. Value range: [0, +∞). 666 * Note: If a value is set to 0 or less, the default value of 0.25 is used. 667 * @returns { ICurve } 668 * @syscap SystemCapability.ArkUI.ArkUI.Full 669 * @crossplatform 670 * @since 10 671 */ 672 /** 673 * Constructs a spring motion when called. 674 * 675 * @param { number } [response] The default value is 0.15. Unit: seconds. Value range: (0, +∞). 676 * Note: If a value is set to 0 or less, the default value of 0.15 is used. 677 * @param { number } [dampingFraction] The default value is 0.86. Unit: seconds. Value range: [0, +∞). 678 * Note: If a value is set to 0 or less, the default value of 0.86 is used. 679 * @param { number } [overlapDuration] The default value is 0.25. Unit: seconds. Value range: [0, +∞). 680 * Note: If a value is set to 0 or less, the default value of 0.25 is used. 681 * @returns { ICurve } 682 * @syscap SystemCapability.ArkUI.ArkUI.Full 683 * @crossplatform 684 * @atomicservice 685 * @since 11 686 */ 687 function springMotion(response?: number, dampingFraction?: number, overlapDuration?: number): ICurve; 688 689 /** 690 * Constructs a responsive spring motion when called. 691 * 692 * @param { number } [response] The default value is 0.15. Unit: seconds. Value range: (0, +∞). 693 * Note: If a value is set to 0 or less, the default value of 0.15 is used. 694 * @param { number } [dampingFraction] The default value is 0.86. Unit: seconds. Value range: [0, +∞). 695 * Note: If a value is set to 0 or less, the default value of 0.86 is used. 696 * @param { number } [overlapDuration] The default value is 0.25. Unit: seconds. Value range: [0, +∞). 697 * Note: If a value is set to 0 or less, the default value of 0.25 is used. 698 * @returns { ICurve } 699 * @syscap SystemCapability.ArkUI.ArkUI.Full 700 * @since 9 701 */ 702 /** 703 * Constructs a responsive spring motion when called. 704 * 705 * @param { number } [response] The default value is 0.15. Unit: seconds. Value range: (0, +∞). 706 * Note: If a value is set to 0 or less, the default value of 0.15 is used. 707 * @param { number } [dampingFraction] The default value is 0.86. Unit: seconds. Value range: [0, +∞). 708 * Note: If a value is set to 0 or less, the default value of 0.86 is used. 709 * @param { number } [overlapDuration] The default value is 0.25. Unit: seconds. Value range: [0, +∞). 710 * Note: If a value is set to 0 or less, the default value of 0.25 is used. 711 * @returns { ICurve } 712 * @syscap SystemCapability.ArkUI.ArkUI.Full 713 * @crossplatform 714 * @since 10 715 */ 716 /** 717 * Constructs a responsive spring motion when called. 718 * The parameters are interpreted as in springMotion. 719 * 720 * @param { number } [response] The default value is 0.15. Unit: seconds. Value range: (0, +∞). 721 * Note: If a value is set to 0 or less, the default value of 0.15 is used. 722 * @param { number } [dampingFraction] The default value is 0.86. Unit: seconds. Value range: [0, +∞). 723 * Note: If a value is set to 0 or less, the default value of 0.86 is used. 724 * @param { number } [overlapDuration] The default value is 0.25. Unit: seconds. Value range: [0, +∞). 725 * Note: If a value is set to 0 or less, the default value of 0.25 is used. 726 * @returns { ICurve } 727 * @syscap SystemCapability.ArkUI.ArkUI.Full 728 * @crossplatform 729 * @atomicservice 730 * @since 11 731 */ 732 function responsiveSpringMotion(response?: number, dampingFraction?: number, overlapDuration?: number): ICurve; 733 734 /** 735 * Constructs an interpolating spring curve when called, the animation duration can not be specified manually, 736 * and is determined by parameters of the curve. It produces values change from 0 to 1, and then uses interpolator 737 * to calculate the actual animation values. 738 * 739 * @param { number } velocity - the initial velocity of the spring, and is a normalized speed corresponding to the 740 * value changes from 0 to 1,specific value range (-∞, ∞). 741 * @param { number } mass - the mass of object in the mass-damper-spring system, value range (0, +∞). 742 * Note: If the value is less than or equal to 0, the value 1 is used. 743 * @param { number } stiffness - the stiffness of spring, value range (0, +∞). 744 * Note: If the value is less than or equal to 0, the value 1 is used. 745 * @param { number } damping - the damping value of spring, value range (0, +∞). 746 * Note: If the value is less than or equal to 0, the value 1 is used. 747 * @returns { ICurve } 748 * @syscap SystemCapability.ArkUI.ArkUI.Full 749 * @crossplatform 750 * @since 10 751 */ 752 /** 753 * Constructs an interpolating spring curve when called, the animation duration can not be specified manually, 754 * and is determined by parameters of the curve. It produces values change from 0 to 1, and then uses interpolator 755 * to calculate the actual animation values. 756 * 757 * @param { number } velocity - the initial velocity of the spring, and is a normalized speed corresponding to the 758 * value changes from 0 to 1,specific value range (-∞, ∞). 759 * @param { number } mass - the mass of object in the mass-damper-spring system, value range (0, +∞). 760 * Note: If the value is less than or equal to 0, the value 1 is used. 761 * @param { number } stiffness - the stiffness of spring, value range (0, +∞). 762 * Note: If the value is less than or equal to 0, the value 1 is used. 763 * @param { number } damping - the damping value of spring, value range (0, +∞). 764 * Note: If the value is less than or equal to 0, the value 1 is used. 765 * @returns { ICurve } 766 * @syscap SystemCapability.ArkUI.ArkUI.Full 767 * @crossplatform 768 * @atomicservice 769 * @since 11 770 */ 771 function interpolatingSpring(velocity: number, mass: number, stiffness: number, damping: number): ICurve; 772} 773 774export default curves; 775