• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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 * Declare the jump method.
18 *
19 * @enum { number }
20 * @syscap SystemCapability.ArkUI.ArkUI.Full
21 * @since 7
22 */
23/**
24 * Declare the jump method.
25 *
26 * @enum { number }
27 * @syscap SystemCapability.ArkUI.ArkUI.Full
28 * @crossplatform
29 * @since 10
30 */
31declare enum RouteType {
32  /**
33   * The page is not redirected.
34   *
35   * @syscap SystemCapability.ArkUI.ArkUI.Full
36   * @since 7
37   */
38  /**
39   * The page is not redirected.
40   *
41   * @syscap SystemCapability.ArkUI.ArkUI.Full
42   * @crossplatform
43   * @since 10
44   */
45  None,
46
47  /**
48   * Go to the next page.
49   *
50   * @syscap SystemCapability.ArkUI.ArkUI.Full
51   * @since 7
52   */
53  /**
54   * Go to the next page.
55   *
56   * @syscap SystemCapability.ArkUI.ArkUI.Full
57   * @crossplatform
58   * @since 10
59   */
60  Push,
61
62  /**
63   * Redirect to a specified page.
64   *
65   * @syscap SystemCapability.ArkUI.ArkUI.Full
66   * @since 7
67   */
68  /**
69   * Redirect to a specified page.
70   *
71   * @syscap SystemCapability.ArkUI.ArkUI.Full
72   * @crossplatform
73   * @since 10
74   */
75  Pop,
76}
77
78/**
79 * Declare the sliding effect of transition.
80 *
81 * @enum { number }
82 * @syscap SystemCapability.ArkUI.ArkUI.Full
83 * @since 7
84 */
85/**
86 * Declare the sliding effect of transition.
87 *
88 * @enum { number }
89 * @syscap SystemCapability.ArkUI.ArkUI.Full
90 * @crossplatform
91 * @since 10
92 */
93declare enum SlideEffect {
94  /**
95   * Swipe left.
96   *
97   * @syscap SystemCapability.ArkUI.ArkUI.Full
98   * @since 7
99   */
100  /**
101   * Swipe left.
102   *
103   * @syscap SystemCapability.ArkUI.ArkUI.Full
104   * @crossplatform
105   * @since 10
106   */
107  Left,
108
109  /**
110   * Swipe right.
111   *
112   * @syscap SystemCapability.ArkUI.ArkUI.Full
113   * @since 7
114   */
115  /**
116   * Swipe right.
117   *
118   * @syscap SystemCapability.ArkUI.ArkUI.Full
119   * @crossplatform
120   * @since 10
121   */
122  Right,
123
124  /**
125   * Swipe top.
126   *
127   * @syscap SystemCapability.ArkUI.ArkUI.Full
128   * @since 7
129   */
130  /**
131   * Swipe top.
132   *
133   * @syscap SystemCapability.ArkUI.ArkUI.Full
134   * @crossplatform
135   * @since 10
136   */
137  Top,
138
139  /**
140   * Swipe bottom.
141   *
142   * @syscap SystemCapability.ArkUI.ArkUI.Full
143   * @since 7
144   */
145  /**
146   * Swipe bottom.
147   *
148   * @syscap SystemCapability.ArkUI.ArkUI.Full
149   * @crossplatform
150   * @since 10
151   */
152  Bottom,
153}
154
155/**
156 * Provides interfaces for common transitions.
157 *
158 * @syscap SystemCapability.ArkUI.ArkUI.Full
159 * @since 7
160 */
161/**
162 * Provides interfaces for common transitions.
163 *
164 * @syscap SystemCapability.ArkUI.ArkUI.Full
165 * @crossplatform
166 * @since 10
167 */
168declare class CommonTransition<T> {
169  /**
170   * Called when a transition method is required.
171   *
172   * @syscap SystemCapability.ArkUI.ArkUI.Full
173   * @since 7
174   */
175  /**
176   * Called when a transition method is required.
177   *
178   * @syscap SystemCapability.ArkUI.ArkUI.Full
179   * @crossplatform
180   * @since 10
181   */
182  constructor();
183
184  /**
185   * Called when the slide in effect of the transition is set.
186   *
187   * @param { SlideEffect } value
188   * @returns { T }
189   * @syscap SystemCapability.ArkUI.ArkUI.Full
190   * @since 7
191   */
192  /**
193   * Called when the slide in effect of the transition is set.
194   *
195   * @param { SlideEffect } value
196   * @returns { T }
197   * @syscap SystemCapability.ArkUI.ArkUI.Full
198   * @crossplatform
199   * @since 10
200   */
201  slide(value: SlideEffect): T;
202
203  /**
204   * Called when the translation effect of page transition is set.
205   *
206   * @param { object } value
207   * @returns { T }
208   * @syscap SystemCapability.ArkUI.ArkUI.Full
209   * @since 7
210   */
211  /**
212   * Called when the translation effect of page transition is set.
213   *
214   * @param { object } value
215   * @returns { T }
216   * @syscap SystemCapability.ArkUI.ArkUI.Full
217   * @crossplatform
218   * @since 10
219   */
220  translate(value: { x?: number | string; y?: number | string; z?: number | string }): T;
221
222  /**
223   * Called when setting the zoom effect of page transition.
224   *
225   * @param { object } value
226   * @returns { T }
227   * @syscap SystemCapability.ArkUI.ArkUI.Full
228   * @since 7
229   */
230  /**
231   * Called when setting the zoom effect of page transition.
232   *
233   * @param { object } value
234   * @returns { T }
235   * @syscap SystemCapability.ArkUI.ArkUI.Full
236   * @crossplatform
237   * @since 10
238   */
239  scale(value: { x?: number; y?: number; z?: number; centerX?: number | string; centerY?: number | string }): T;
240
241  /**
242   * Called when the transparency value of the starting point of entry or the ending point of exit is set.
243   *
244   * @param { number } value
245   * @returns { T }
246   * @syscap SystemCapability.ArkUI.ArkUI.Full
247   * @since 7
248   */
249  /**
250   * Called when the transparency value of the starting point of entry or the ending point of exit is set.
251   *
252   * @param { number } value
253   * @returns { T }
254   * @syscap SystemCapability.ArkUI.ArkUI.Full
255   * @crossplatform
256   * @since 10
257   */
258  opacity(value: number): T;
259}
260
261/**
262 * Defines pageTransition constructor parameters.
263 *
264 * @interface PageTransitionOptions
265 * @syscap SystemCapability.ArkUI.ArkUI.Full
266 * @since 7
267 */
268/**
269 * Defines pageTransition constructor parameters.
270 *
271 * @interface PageTransitionOptions
272 * @syscap SystemCapability.ArkUI.ArkUI.Full
273 * @crossplatform
274 * @since 10
275 */
276declare interface PageTransitionOptions {
277  /**
278   * RouteType in which the pageTransition can work.
279   * @type { ?RouteType }
280   * @syscap SystemCapability.ArkUI.ArkUI.Full
281   * @since 7
282   */
283  /**
284   * RouteType in which the pageTransition can work.
285   * @type { ?RouteType }
286   * @syscap SystemCapability.ArkUI.ArkUI.Full
287   * @crossplatform
288   * @since 10
289   */
290  type?: RouteType;
291  /**
292   * PageTransition animation duration, in ms.
293   * @type { ?number }
294   * @syscap SystemCapability.ArkUI.ArkUI.Full
295   * @since 7
296   */
297  /**
298   * PageTransition animation duration, in ms.
299   * @type { ?number }
300   * @syscap SystemCapability.ArkUI.ArkUI.Full
301   * @crossplatform
302   * @since 10
303   */
304  duration?: number;
305  /**
306   * PageTransition animation curve.
307   * @type { ?(Curve | string | ICurve) }
308   * @syscap SystemCapability.ArkUI.ArkUI.Full
309   * @since 7
310   */
311  /**
312   * PageTransition animation curve.
313   * @type { ?(Curve | string | ICurve) }
314   * @syscap SystemCapability.ArkUI.ArkUI.Full
315   * @crossplatform
316   * @since 10
317   */
318  curve?: Curve | string | ICurve;
319  /**
320   * PageTransition animation delay time, in ms.
321   * @syscap SystemCapability.ArkUI.ArkUI.Full
322   * @type { ?number }
323   * @since 7
324   */
325  /**
326   * PageTransition animation delay time, in ms.
327   * @type { ?number }
328   * @syscap SystemCapability.ArkUI.ArkUI.Full
329   * @crossplatform
330   * @since 10
331   */
332  delay?: number;
333}
334
335/**
336 * Provides an interface for page rotation mode.
337 *
338 * @interface PageTransitionEnterInterface
339 * @syscap SystemCapability.ArkUI.ArkUI.Full
340 * @since 7
341 */
342/**
343 * Provides an interface to set transition style when a page enters.
344 *
345 * @interface PageTransitionEnterInterface
346 * @syscap SystemCapability.ArkUI.ArkUI.Full
347 * @crossplatform
348 * @since 10
349 */
350interface PageTransitionEnterInterface extends CommonTransition<PageTransitionEnterInterface> {
351  /**
352   * Called when page Jump animation is used.
353   *
354   * @param { PageTransitionOptions } value
355   * @returns { PageTransitionEnterInterface }
356   * @syscap SystemCapability.ArkUI.ArkUI.Full
357   * @since 7
358   */
359  /**
360   * Called when page Jump animation is used.
361   *
362   * @param { PageTransitionOptions } value - pageTransition options
363   * @returns { PageTransitionEnterInterface }
364   * @syscap SystemCapability.ArkUI.ArkUI.Full
365   * @crossplatform
366   * @since 10
367   */
368  (value: PageTransitionOptions): PageTransitionEnterInterface;
369
370  /**
371   * Called when the incoming parameter is the normalized progress of the current incoming animation.
372   *
373   * @param { function } event
374   * @returns { PageTransitionEnterInterface }
375   * @syscap SystemCapability.ArkUI.ArkUI.Full
376   * @since 7
377   */
378  /**
379   * Called frame by frame to customize pageTransition animation when the page enters.
380   * The incoming parameter is the normalized progress of the current incoming animation.
381   *
382   * @param { function } event - animation callback frame by frame
383   * @returns { PageTransitionEnterInterface }
384   * @syscap SystemCapability.ArkUI.ArkUI.Full
385   * @crossplatform
386   * @since 10
387   */
388  onEnter(event: (type: RouteType, progress: number) => void): PageTransitionEnterInterface;
389}
390
391/**
392 * Provide an interface to exit the transition.
393 *
394 * @interface PageTransitionExitInterface
395 * @syscap SystemCapability.ArkUI.ArkUI.Full
396 * @since 7
397 */
398/**
399 * Provide an interface to set transition style when a page exits.
400 *
401 * @interface PageTransitionExitInterface
402 * @syscap SystemCapability.ArkUI.ArkUI.Full
403 * @crossplatform
404 * @since 10
405 */
406interface PageTransitionExitInterface extends CommonTransition<PageTransitionExitInterface> {
407  /**
408   * Called when the transition is delayed.
409   *
410   * @param { PageTransitionOptions } value
411   * @returns { PageTransitionExitInterface }
412   * @syscap SystemCapability.ArkUI.ArkUI.Full
413   * @since 7
414   */
415  /**
416   * Called when page Jump animation is used.
417   *
418   * @param { PageTransitionOptions } value - pageTransition options
419   * @returns { PageTransitionExitInterface }
420   * @syscap SystemCapability.ArkUI.ArkUI.Full
421   * @crossplatform
422   * @since 10
423   */
424  (value: PageTransitionOptions): PageTransitionExitInterface;
425
426  /**
427   * Called when the input parameter is the normalized progress of the current exit animation.
428   *
429   * @param { function } event
430   * @returns { PageTransitionExitInterface }
431   * @syscap SystemCapability.ArkUI.ArkUI.Full
432   * @since 7
433   */
434  /**
435   * Called frame by frame to customize pageTransition animation when the page exits.
436   * The input parameter is the normalized progress of the current exit animation.
437   *
438   * @param { function } event
439   * @returns { PageTransitionExitInterface }
440   * @syscap SystemCapability.ArkUI.ArkUI.Full
441   * @crossplatform
442   * @since 10
443   */
444  onExit(event: (type: RouteType, progress: number) => void): PageTransitionExitInterface;
445}
446
447/**
448 * Defines PageTransitionEnter Component.
449 *
450 * @syscap SystemCapability.ArkUI.ArkUI.Full
451 * @since 7
452 */
453/**
454 * Defines PageTransitionEnter Component.
455 *
456 * @syscap SystemCapability.ArkUI.ArkUI.Full
457 * @crossplatform
458 * @since 10
459 */
460declare const PageTransitionEnter: PageTransitionEnterInterface;
461
462/**
463 * Defines PageTransitionExit Component.
464 *
465 * @syscap SystemCapability.ArkUI.ArkUI.Full
466 * @since 7
467 */
468/**
469 * Defines PageTransitionExit Component.
470 *
471 * @syscap SystemCapability.ArkUI.ArkUI.Full
472 * @crossplatform
473 * @since 10
474 */
475declare const PageTransitionExit: PageTransitionExitInterface;
476