• 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 * @file
18 * @kit ArkUI
19 */
20
21/**
22 * Seek mode.
23 *
24 * @enum { number }
25 * @syscap SystemCapability.ArkUI.ArkUI.Full
26 * @since 8
27 */
28/**
29 * Seek mode.
30 *
31 * @enum { number }
32 * @syscap SystemCapability.ArkUI.ArkUI.Full
33 * @crossplatform
34 * @since 10
35 */
36/**
37 * Seek mode.
38 *
39 * @enum { number }
40 * @syscap SystemCapability.ArkUI.ArkUI.Full
41 * @crossplatform
42 * @atomicservice
43 * @since 11
44 */
45declare enum SeekMode {
46  /**
47   * Sync to keyframes before the time point.
48   *
49   * @syscap SystemCapability.ArkUI.ArkUI.Full
50   * @since 8
51   */
52  /**
53   * Sync to keyframes before the time point.
54   *
55   * @syscap SystemCapability.ArkUI.ArkUI.Full
56   * @crossplatform
57   * @since 10
58   */
59  /**
60   * Sync to keyframes before the time point.
61   *
62   * @syscap SystemCapability.ArkUI.ArkUI.Full
63   * @crossplatform
64   * @atomicservice
65   * @since 11
66   */
67  PreviousKeyframe,
68
69  /**
70   * Sync to keyframes after the time point.
71   *
72   * @syscap SystemCapability.ArkUI.ArkUI.Full
73   * @since 8
74   */
75  /**
76   * Sync to keyframes after the time point.
77   *
78   * @syscap SystemCapability.ArkUI.ArkUI.Full
79   * @crossplatform
80   * @since 10
81   */
82  /**
83   * Sync to keyframes after the time point.
84   *
85   * @syscap SystemCapability.ArkUI.ArkUI.Full
86   * @crossplatform
87   * @atomicservice
88   * @since 11
89   */
90  NextKeyframe,
91
92  /**
93   * Sync to closest keyframes.
94   *
95   * @syscap SystemCapability.ArkUI.ArkUI.Full
96   * @since 8
97   */
98  /**
99   * Sync to closest keyframes.
100   *
101   * @syscap SystemCapability.ArkUI.ArkUI.Full
102   * @crossplatform
103   * @since 10
104   */
105  /**
106   * Sync to closest keyframes.
107   *
108   * @syscap SystemCapability.ArkUI.ArkUI.Full
109   * @crossplatform
110   * @atomicservice
111   * @since 11
112   */
113  ClosestKeyframe,
114
115  /**
116   * Seek to frames closest the time point.
117   *
118   * @syscap SystemCapability.ArkUI.ArkUI.Full
119   * @since 8
120   */
121  /**
122   * Seek to frames closest the time point.
123   *
124   * @syscap SystemCapability.ArkUI.ArkUI.Full
125   * @crossplatform
126   * @since 10
127   */
128  /**
129   * Seek to frames closest the time point.
130   *
131   * @syscap SystemCapability.ArkUI.ArkUI.Full
132   * @crossplatform
133   * @atomicservice
134   * @since 11
135   */
136  Accurate,
137}
138
139/**
140 * playback speed.
141 *
142 * @enum { number }
143 * @syscap SystemCapability.ArkUI.ArkUI.Full
144 * @since 8
145 */
146/**
147 * playback speed.
148 *
149 * @enum { number }
150 * @syscap SystemCapability.ArkUI.ArkUI.Full
151 * @crossplatform
152 * @since 10
153 */
154/**
155 * playback speed.
156 *
157 * @enum { number }
158 * @syscap SystemCapability.ArkUI.ArkUI.Full
159 * @crossplatform
160 * @atomicservice
161 * @since 11
162 */
163declare enum PlaybackSpeed {
164  /**
165   * 0.75x speed playback.
166   *
167   * @syscap SystemCapability.ArkUI.ArkUI.Full
168   * @since 8
169   */
170  /**
171   * 0.75x speed playback.
172   *
173   * @syscap SystemCapability.ArkUI.ArkUI.Full
174   * @crossplatform
175   * @since 10
176   */
177  /**
178   * 0.75x speed playback.
179   *
180   * @syscap SystemCapability.ArkUI.ArkUI.Full
181   * @crossplatform
182   * @atomicservice
183   * @since 11
184   */
185  Speed_Forward_0_75_X,
186
187  /**
188   * 1.00x speed playback.
189   *
190   * @syscap SystemCapability.ArkUI.ArkUI.Full
191   * @since 8
192   */
193  /**
194   * 1.00x speed playback.
195   *
196   * @syscap SystemCapability.ArkUI.ArkUI.Full
197   * @crossplatform
198   * @since 10
199   */
200  /**
201   * 1.00x speed playback.
202   *
203   * @syscap SystemCapability.ArkUI.ArkUI.Full
204   * @crossplatform
205   * @atomicservice
206   * @since 11
207   */
208  Speed_Forward_1_00_X,
209
210  /**
211   * 1.25x speed playback.
212   *
213   * @syscap SystemCapability.ArkUI.ArkUI.Full
214   * @since 8
215   */
216  /**
217   * 1.25x speed playback.
218   *
219   * @syscap SystemCapability.ArkUI.ArkUI.Full
220   * @crossplatform
221   * @since 10
222   */
223  /**
224   * 1.25x speed playback.
225   *
226   * @syscap SystemCapability.ArkUI.ArkUI.Full
227   * @crossplatform
228   * @atomicservice
229   * @since 11
230   */
231  Speed_Forward_1_25_X,
232
233  /**
234   * 1.75x speed playback.
235   *
236   * @syscap SystemCapability.ArkUI.ArkUI.Full
237   * @since 8
238   */
239  /**
240   * 1.75x speed playback.
241   *
242   * @syscap SystemCapability.ArkUI.ArkUI.Full
243   * @crossplatform
244   * @since 10
245   */
246  /**
247   * 1.75x speed playback.
248   *
249   * @syscap SystemCapability.ArkUI.ArkUI.Full
250   * @crossplatform
251   * @atomicservice
252   * @since 11
253   */
254  Speed_Forward_1_75_X,
255
256  /**
257   * 2.00x speed playback.
258   *
259   * @syscap SystemCapability.ArkUI.ArkUI.Full
260   * @since 8
261   */
262  /**
263   * 2.00x speed playback.
264   *
265   * @syscap SystemCapability.ArkUI.ArkUI.Full
266   * @crossplatform
267   * @since 10
268   */
269  /**
270   * 2.00x speed playback.
271   *
272   * @syscap SystemCapability.ArkUI.ArkUI.Full
273   * @crossplatform
274   * @atomicservice
275   * @since 11
276   */
277  Speed_Forward_2_00_X,
278}
279
280/**
281 * Fullscreen information of the video.
282 *
283 * @typedef FullscreenInfo
284 * @syscap SystemCapability.ArkUI.ArkUI.Full
285 * @crossplatform
286 * @atomicservice
287 * @since 18
288 */
289interface FullscreenInfo {
290  /**
291   * The flag whether play in full screen.
292   *
293   * @syscap SystemCapability.ArkUI.ArkUI.Full
294   * @crossplatform
295   * @since 10
296   */
297  /**
298   * The flag whether play in full screen.
299   *
300   * @type { boolean }
301   * @syscap SystemCapability.ArkUI.ArkUI.Full
302   * @crossplatform
303   * @atomicservice
304   * @since 11
305   */
306  /**
307   * The flag whether play in full screen.
308   * Anonymous Object Rectification.
309   *
310   * @type { boolean }
311   * @syscap SystemCapability.ArkUI.ArkUI.Full
312   * @crossplatform
313   * @atomicservice
314   * @since 18
315   */
316  fullscreen: boolean;
317}
318
319/**
320 * Prepared information of the video.
321 *
322 * @typedef PreparedInfo
323 * @syscap SystemCapability.ArkUI.ArkUI.Full
324 * @crossplatform
325 * @atomicservice
326 * @since 18
327 */
328interface PreparedInfo {
329  /**
330   * The duration of the current video, in seconds.
331   *
332   * @syscap SystemCapability.ArkUI.ArkUI.Full
333   * @crossplatform
334   * @since 10
335   */
336  /**
337   * The duration of the current video, in seconds.
338   *
339   * @type { number }
340   * @syscap SystemCapability.ArkUI.ArkUI.Full
341   * @crossplatform
342   * @atomicservice
343   * @since 11
344   */
345  /**
346   * The duration of the current video, in seconds.
347   * Anonymous Object Rectification.
348   *
349   * @type { number }
350   * @syscap SystemCapability.ArkUI.ArkUI.Full
351   * @crossplatform
352   * @atomicservice
353   * @since 18
354   */
355  duration: number;
356}
357
358/**
359 * Playback information of the video.
360 *
361 * @typedef PlaybackInfo
362 * @syscap SystemCapability.ArkUI.ArkUI.Full
363 * @crossplatform
364 * @atomicservice
365 * @since 18
366 */
367interface PlaybackInfo {
368  /**
369   * The current video playback progress, expressed in seconds.
370   *
371   * @syscap SystemCapability.ArkUI.ArkUI.Full
372   * @crossplatform
373   * @since 10
374   */
375  /**
376   * The current video playback progress, expressed in seconds.
377   *
378   * @type { number }
379   * @syscap SystemCapability.ArkUI.ArkUI.Full
380   * @crossplatform
381   * @atomicservice
382   * @since 11
383   */
384  /**
385   * The current video playback progress, expressed in seconds.
386   * Anonymous Object Rectification.
387   *
388   * @type { number }
389   * @syscap SystemCapability.ArkUI.ArkUI.Full
390   * @crossplatform
391   * @atomicservice
392   * @since 18
393   */
394  time: number;
395}
396
397/**
398 * Defines the video poster options.
399 *
400 * @interface PosterOptions
401 * @syscap SystemCapability.ArkUI.ArkUI.Full
402 * @atomicservice
403 * @since 18
404 */
405declare interface PosterOptions {
406  /**
407   * Whether to display the first frame of video on prepared status of AVPlayer.
408   *
409   * @type { ?boolean }
410   * @default false
411   * @syscap SystemCapability.ArkUI.ArkUI.Full
412   * @atomicservice
413   * @since 18
414   */
415  showFirstFrame?: boolean;
416}
417
418/**
419 * Defines the video options.
420 *
421 * @interface VideoOptions
422 * @syscap SystemCapability.ArkUI.ArkUI.Full
423 * @since 7
424 */
425/**
426 * Defines the video options.
427 *
428 * @interface VideoOptions
429 * @syscap SystemCapability.ArkUI.ArkUI.Full
430 * @crossplatform
431 * @since 10
432 */
433/**
434 * Defines the video options.
435 *
436 * @interface VideoOptions
437 * @syscap SystemCapability.ArkUI.ArkUI.Full
438 * @crossplatform
439 * @atomicservice
440 * @since 11
441 */
442/**
443 * Defines the video options.
444 *
445 * @interface VideoOptions
446 * @syscap SystemCapability.ArkUI.ArkUI.Full
447 * @crossplatform
448 * @atomicservice
449 * @since 12
450 */
451declare interface VideoOptions {
452  /**
453   * src of video.
454   *
455   * @type { ?(string | Resource) }
456   * @syscap SystemCapability.ArkUI.ArkUI.Full
457   * @since 7
458   */
459  /**
460   * src of video.
461   *
462   * @type { ?(string | Resource) }
463   * @syscap SystemCapability.ArkUI.ArkUI.Full
464   * @crossplatform
465   * @since 10
466   */
467  /**
468   * src of video.
469   *
470   * @type { ?(string | Resource) }
471   * @syscap SystemCapability.ArkUI.ArkUI.Full
472   * @crossplatform
473   * @atomicservice
474   * @since 11
475   */
476  src?: string | Resource;
477
478  /**
479   * playback rate of video.
480   *
481   * @type { ?(number | string | PlaybackSpeed) }
482   * @syscap SystemCapability.ArkUI.ArkUI.Full
483   * @since 7
484   */
485  /**
486   * playback rate of video.
487   *
488   * @type { ?(number | string | PlaybackSpeed) }
489   * @syscap SystemCapability.ArkUI.ArkUI.Full
490   * @crossplatform
491   * @since 10
492   */
493  /**
494   * playback rate of video.
495   *
496   * @type { ?(number | string | PlaybackSpeed) }
497   * @syscap SystemCapability.ArkUI.ArkUI.Full
498   * @crossplatform
499   * @atomicservice
500   * @since 11
501   */
502  currentProgressRate?: number | string | PlaybackSpeed;
503
504  /**
505   * preview uri of video.
506   *
507   * @type { ?(string | PixelMap | Resource) }
508   * @syscap SystemCapability.ArkUI.ArkUI.Full
509   * @since 7
510   */
511  /**
512   * preview uri of video.
513   *
514   * @type { ?(string | PixelMap | Resource) }
515   * @syscap SystemCapability.ArkUI.ArkUI.Full
516   * @crossplatform
517   * @since 10
518   */
519  /**
520   * preview uri of video.
521   *
522   * @type { ?(string | PixelMap | Resource) }
523   * @syscap SystemCapability.ArkUI.ArkUI.Full
524   * @crossplatform
525   * @atomicservice
526   * @since 11
527   */
528  previewUri?: string | PixelMap | Resource;
529
530  /**
531   * controller of video.
532   *
533   * @type { ?VideoController }
534   * @syscap SystemCapability.ArkUI.ArkUI.Full
535   * @since 7
536   */
537  /**
538   * controller of video.
539   *
540   * @type { ?VideoController }
541   * @syscap SystemCapability.ArkUI.ArkUI.Full
542   * @crossplatform
543   * @since 10
544   */
545  /**
546   * controller of video.
547   *
548   * @type { ?VideoController }
549   * @syscap SystemCapability.ArkUI.ArkUI.Full
550   * @crossplatform
551   * @atomicservice
552   * @since 11
553   */
554  controller?: VideoController;
555
556  /**
557   * image ai options of video.
558   *
559   * @type { ?ImageAIOptions }
560   * @syscap SystemCapability.ArkUI.ArkUI.Full
561   * @atomicservice
562   * @since 12
563   */
564  imageAIOptions?: ImageAIOptions;
565
566  /**
567   * poster options of video.
568   *
569   * @type { ?PosterOptions }
570   * @syscap SystemCapability.ArkUI.ArkUI.Full
571   * @atomicservice
572   * @since 18
573   */
574  posterOptions?: PosterOptions;
575}
576
577/**
578 * Defines the video controller.
579 *
580 * @syscap SystemCapability.ArkUI.ArkUI.Full
581 * @since 7
582 */
583/**
584 * Defines the video controller.
585 *
586 * @syscap SystemCapability.ArkUI.ArkUI.Full
587 * @crossplatform
588 * @since 10
589 */
590/**
591 * Defines the video controller.
592 *
593 * @syscap SystemCapability.ArkUI.ArkUI.Full
594 * @crossplatform
595 * @atomicservice
596 * @since 11
597 */
598declare class VideoController {
599  /**
600   * constructor.
601   *
602   * @syscap SystemCapability.ArkUI.ArkUI.Full
603   * @since 7
604   */
605  /**
606   * constructor.
607   *
608   * @syscap SystemCapability.ArkUI.ArkUI.Full
609   * @crossplatform
610   * @since 10
611   */
612  /**
613   * constructor.
614   *
615   * @syscap SystemCapability.ArkUI.ArkUI.Full
616   * @crossplatform
617   * @atomicservice
618   * @since 11
619   */
620  constructor();
621
622  /**
623   * Provides events to play.
624   *
625   * @syscap SystemCapability.ArkUI.ArkUI.Full
626   * @since 7
627   */
628  /**
629   * Provides events to play.
630   *
631   * @syscap SystemCapability.ArkUI.ArkUI.Full
632   * @crossplatform
633   * @since 10
634   */
635  /**
636   * Provides events to play.
637   *
638   * @syscap SystemCapability.ArkUI.ArkUI.Full
639   * @crossplatform
640   * @atomicservice
641   * @since 11
642   */
643  start();
644
645  /**
646   * Provides a pause event for playback.
647   *
648   * @syscap SystemCapability.ArkUI.ArkUI.Full
649   * @since 7
650   */
651  /**
652   * Provides a pause event for playback.
653   *
654   * @syscap SystemCapability.ArkUI.ArkUI.Full
655   * @crossplatform
656   * @since 10
657   */
658  /**
659   * Provides a pause event for playback.
660   *
661   * @syscap SystemCapability.ArkUI.ArkUI.Full
662   * @crossplatform
663   * @atomicservice
664   * @since 11
665   */
666  pause();
667
668  /**
669   * Provides an event to stop playback.
670   *
671   * @syscap SystemCapability.ArkUI.ArkUI.Full
672   * @since 7
673   */
674  /**
675   * Provides an event to stop playback.
676   *
677   * @syscap SystemCapability.ArkUI.ArkUI.Full
678   * @crossplatform
679   * @since 10
680   */
681  /**
682   * Provides an event to stop playback.
683   *
684   * @syscap SystemCapability.ArkUI.ArkUI.Full
685   * @crossplatform
686   * @atomicservice
687   * @since 11
688   */
689  stop();
690
691  /**
692   * Provide the progress method of video playback.
693   *
694   * @param { number } value
695   * @syscap SystemCapability.ArkUI.ArkUI.Full
696   * @since 7
697   */
698  /**
699   * Provide the progress method of video playback.
700   *
701   * @param { number } value
702   * @syscap SystemCapability.ArkUI.ArkUI.Full
703   * @crossplatform
704   * @since 10
705   */
706  /**
707   * Provide the progress method of video playback.
708   *
709   * @param { number } value
710   * @syscap SystemCapability.ArkUI.ArkUI.Full
711   * @crossplatform
712   * @atomicservice
713   * @since 11
714   */
715  setCurrentTime(value: number);
716
717  /**
718   * Provides a full screen playback method.
719   *
720   * @param { boolean } value
721   * @syscap SystemCapability.ArkUI.ArkUI.Full
722   * @since 7
723   */
724  /**
725   * Provides a full screen playback method.
726   *
727   * @param { boolean } value
728   * @syscap SystemCapability.ArkUI.ArkUI.Full
729   * @crossplatform
730   * @since 10
731   */
732  /**
733   * Provides a full screen playback method.
734   *
735   * @param { boolean } value
736   * @syscap SystemCapability.ArkUI.ArkUI.Full
737   * @crossplatform
738   * @atomicservice
739   * @since 11
740   */
741  requestFullscreen(value: boolean);
742
743  /**
744   * Provides a method to exit full screen playback.
745   *
746   * @syscap SystemCapability.ArkUI.ArkUI.Full
747   * @since 7
748   */
749  /**
750   * Provides a method to exit full screen playback.
751   *
752   * @syscap SystemCapability.ArkUI.ArkUI.Full
753   * @crossplatform
754   * @since 10
755   */
756  /**
757   * Provides a method to exit full screen playback.
758   *
759   * @syscap SystemCapability.ArkUI.ArkUI.Full
760   * @crossplatform
761   * @atomicservice
762   * @since 11
763   */
764  exitFullscreen();
765
766  /**
767   * Provide the progress method of video playback.
768   *
769   * @param { number } value
770   * @param { SeekMode } seekMode
771   * @syscap SystemCapability.ArkUI.ArkUI.Full
772   * @since 8
773   */
774  /**
775   * Provide the progress method of video playback.
776   *
777   * @param { number } value
778   * @param { SeekMode } seekMode
779   * @syscap SystemCapability.ArkUI.ArkUI.Full
780   * @crossplatform
781   * @since 10
782   */
783  /**
784   * Provide the progress method of video playback.
785   *
786   * @param { number } value
787   * @param { SeekMode } seekMode
788   * @syscap SystemCapability.ArkUI.ArkUI.Full
789   * @crossplatform
790   * @atomicservice
791   * @since 11
792   */
793  setCurrentTime(value: number, seekMode: SeekMode);
794
795  /**
796   * Provide the reset method of video playback.
797   *
798   * @syscap SystemCapability.ArkUI.ArkUI.Full
799   * @atomicservice
800   * @since 12
801   */
802  reset(): void;
803}
804
805/**
806 * Defines the video interface.
807 *
808 * @interface VideoInterface
809 * @syscap SystemCapability.ArkUI.ArkUI.Full
810 * @since 7
811 */
812/**
813 * Defines the video interface.
814 *
815 * @interface VideoInterface
816 * @syscap SystemCapability.ArkUI.ArkUI.Full
817 * @crossplatform
818 * @since 10
819 */
820/**
821 * Defines the video interface.
822 *
823 * @interface VideoInterface
824 * @syscap SystemCapability.ArkUI.ArkUI.Full
825 * @crossplatform
826 * @atomicservice
827 * @since 11
828 */
829interface VideoInterface {
830  /**
831   * Set the value.
832   *
833   * @param { VideoOptions } value
834   * @returns { VideoAttribute }
835   * @syscap SystemCapability.ArkUI.ArkUI.Full
836   * @since 7
837   */
838  /**
839   * Set the value.
840   *
841   * @param { VideoOptions } value
842   * @returns { VideoAttribute }
843   * @syscap SystemCapability.ArkUI.ArkUI.Full
844   * @crossplatform
845   * @since 10
846   */
847  /**
848   * Set the value.
849   *
850   * @param { VideoOptions } value
851   * @returns { VideoAttribute }
852   * @syscap SystemCapability.ArkUI.ArkUI.Full
853   * @crossplatform
854   * @atomicservice
855   * @since 11
856   */
857  (value: VideoOptions): VideoAttribute;
858}
859
860/**
861 * Defines the video attribute functions.
862 *
863 * @extends CommonMethod<VideoAttribute>
864 * @syscap SystemCapability.ArkUI.ArkUI.Full
865 * @since 7
866 */
867/**
868 * Defines the video attribute functions.
869 *
870 * @extends CommonMethod<VideoAttribute>
871 * @syscap SystemCapability.ArkUI.ArkUI.Full
872 * @crossplatform
873 * @since 10
874 */
875/**
876 * Defines the video attribute functions.
877 *
878 * @extends CommonMethod<VideoAttribute>
879 * @syscap SystemCapability.ArkUI.ArkUI.Full
880 * @crossplatform
881 * @atomicservice
882 * @since 11
883 */
884declare class VideoAttribute extends CommonMethod<VideoAttribute> {
885  /**
886   * Called when judging whether the video is muted.
887   *
888   * @param { boolean } value
889   * @returns { VideoAttribute }
890   * @syscap SystemCapability.ArkUI.ArkUI.Full
891   * @since 7
892   */
893  /**
894   * Called when judging whether the video is muted.
895   *
896   * @param { boolean } value
897   * @returns { VideoAttribute }
898   * @syscap SystemCapability.ArkUI.ArkUI.Full
899   * @crossplatform
900   * @since 10
901   */
902  /**
903   * Called when judging whether the video is muted.
904   *
905   * @param { boolean } value
906   * @returns { VideoAttribute }
907   * @syscap SystemCapability.ArkUI.ArkUI.Full
908   * @crossplatform
909   * @atomicservice
910   * @since 11
911   */
912  muted(value: boolean): VideoAttribute;
913
914  /**
915   * Called when judging whether the video is played automatically.
916   *
917   * @param { boolean } value
918   * @returns { VideoAttribute }
919   * @syscap SystemCapability.ArkUI.ArkUI.Full
920   * @since 7
921   */
922  /**
923   * Called when judging whether the video is played automatically.
924   *
925   * @param { boolean } value
926   * @returns { VideoAttribute }
927   * @syscap SystemCapability.ArkUI.ArkUI.Full
928   * @crossplatform
929   * @since 10
930   */
931  /**
932   * Called when judging whether the video is played automatically.
933   *
934   * @param { boolean } value
935   * @returns { VideoAttribute }
936   * @syscap SystemCapability.ArkUI.ArkUI.Full
937   * @crossplatform
938   * @atomicservice
939   * @since 11
940   */
941  autoPlay(value: boolean): VideoAttribute;
942
943  /**
944   * Called when judging whether the control bar is displayed.
945   *
946   * @param { boolean } value
947   * @returns { VideoAttribute }
948   * @syscap SystemCapability.ArkUI.ArkUI.Full
949   * @since 7
950   */
951  /**
952   * Called when judging whether the control bar is displayed.
953   *
954   * @param { boolean } value
955   * @returns { VideoAttribute }
956   * @syscap SystemCapability.ArkUI.ArkUI.Full
957   * @crossplatform
958   * @since 10
959   */
960  /**
961   * Called when judging whether the control bar is displayed.
962   *
963   * @param { boolean } value
964   * @returns { VideoAttribute }
965   * @syscap SystemCapability.ArkUI.ArkUI.Full
966   * @crossplatform
967   * @atomicservice
968   * @since 11
969   */
970  controls(value: boolean): VideoAttribute;
971
972  /**
973   * Called when judging whether the video is played circular.
974   *
975   * @param { boolean } value
976   * @returns { VideoAttribute }
977   * @syscap SystemCapability.ArkUI.ArkUI.Full
978   * @since 6
979   */
980  /**
981   * Called when judging whether the video is played circular.
982   *
983   * @param { boolean } value
984   * @returns { VideoAttribute }
985   * @syscap SystemCapability.ArkUI.ArkUI.Full
986   * @crossplatform
987   * @since 10
988   */
989  /**
990   * Called when judging whether the video is played circular.
991   *
992   * @param { boolean } value
993   * @returns { VideoAttribute }
994   * @syscap SystemCapability.ArkUI.ArkUI.Full
995   * @crossplatform
996   * @atomicservice
997   * @since 11
998   */
999  loop(value: boolean): VideoAttribute;
1000
1001  /**
1002   * Called when determining the zoom type of the video source.
1003   *
1004   * @param { ImageFit } value
1005   * @returns { VideoAttribute }
1006   * @syscap SystemCapability.ArkUI.ArkUI.Full
1007   * @since 7
1008   */
1009  /**
1010   * Called when determining the zoom type of the video source.
1011   *
1012   * @param { ImageFit } value
1013   * @returns { VideoAttribute }
1014   * @syscap SystemCapability.ArkUI.ArkUI.Full
1015   * @crossplatform
1016   * @since 10
1017   */
1018  /**
1019   * Called when determining the zoom type of the video source.
1020   *
1021   * @param { ImageFit } value
1022   * @returns { VideoAttribute }
1023   * @syscap SystemCapability.ArkUI.ArkUI.Full
1024   * @crossplatform
1025   * @atomicservice
1026   * @since 11
1027   */
1028  objectFit(value: ImageFit): VideoAttribute;
1029
1030  /**
1031   * Called when the video is played.
1032   *
1033   * @param { function } event
1034   * @returns { VideoAttribute }
1035   * @syscap SystemCapability.ArkUI.ArkUI.Full
1036   * @since 7
1037   */
1038  /**
1039   * Called when the video is played.
1040   *
1041   * @param { function } event
1042   * @returns { VideoAttribute }
1043   * @syscap SystemCapability.ArkUI.ArkUI.Full
1044   * @crossplatform
1045   * @since 10
1046   */
1047  /**
1048   * Called when the video is played.
1049   *
1050   * @param { function } event
1051   * @returns { VideoAttribute }
1052   * @syscap SystemCapability.ArkUI.ArkUI.Full
1053   * @crossplatform
1054   * @atomicservice
1055   * @since 11
1056   */
1057  /**
1058   * Called when the video is played.
1059   * Anonymous Object Rectification.
1060   *
1061   * @param { VoidCallback } event
1062   * @returns { VideoAttribute }
1063   * @syscap SystemCapability.ArkUI.ArkUI.Full
1064   * @crossplatform
1065   * @atomicservice
1066   * @since 18
1067   */
1068  onStart(event: VoidCallback): VideoAttribute;
1069
1070  /**
1071   * Called when the video is paused.
1072   *
1073   * @param { function } event
1074   * @returns { VideoAttribute }
1075   * @syscap SystemCapability.ArkUI.ArkUI.Full
1076   * @since 7
1077   */
1078  /**
1079   * Called when the video is paused.
1080   *
1081   * @param { function } event
1082   * @returns { VideoAttribute }
1083   * @syscap SystemCapability.ArkUI.ArkUI.Full
1084   * @crossplatform
1085   * @since 10
1086   */
1087  /**
1088   * Called when the video is paused.
1089   *
1090   * @param { function } event
1091   * @returns { VideoAttribute }
1092   * @syscap SystemCapability.ArkUI.ArkUI.Full
1093   * @crossplatform
1094   * @atomicservice
1095   * @since 11
1096   */
1097  /**
1098   * Called when the video is paused.
1099   * Anonymous Object Rectification.
1100   *
1101   * @param { VoidCallback } event
1102   * @returns { VideoAttribute }
1103   * @syscap SystemCapability.ArkUI.ArkUI.Full
1104   * @crossplatform
1105   * @atomicservice
1106   * @since 18
1107   */
1108  onPause(event: VoidCallback): VideoAttribute;
1109
1110  /**
1111   * Called when the video playback ends.
1112   *
1113   * @param { function } event
1114   * @returns { VideoAttribute }
1115   * @syscap SystemCapability.ArkUI.ArkUI.Full
1116   * @since 7
1117   */
1118  /**
1119   * Called when the video playback ends.
1120   *
1121   * @param { function } event
1122   * @returns { VideoAttribute }
1123   * @syscap SystemCapability.ArkUI.ArkUI.Full
1124   * @crossplatform
1125   * @since 10
1126   */
1127  /**
1128   * Called when the video playback ends.
1129   *
1130   * @param { function } event
1131   * @returns { VideoAttribute }
1132   * @syscap SystemCapability.ArkUI.ArkUI.Full
1133   * @crossplatform
1134   * @atomicservice
1135   * @since 11
1136   */
1137  /**
1138   * Called when the video playback ends.
1139   * Anonymous Object Rectification.
1140   *
1141   * @param { VoidCallback } event
1142   * @returns { VideoAttribute }
1143   * @syscap SystemCapability.ArkUI.ArkUI.Full
1144   * @crossplatform
1145   * @atomicservice
1146   * @since 18
1147   */
1148  onFinish(event: VoidCallback): VideoAttribute;
1149
1150  /**
1151   * Called when the video enters and exits the full screen.
1152   *
1153   * @param { function } callback
1154   * @returns { VideoAttribute }
1155   * @syscap SystemCapability.ArkUI.ArkUI.Full
1156   * @since 7
1157   */
1158  /**
1159   * Called when the video enters and exits the full screen.
1160   *
1161   * @param { function } callback
1162   * @returns { VideoAttribute }
1163   * @syscap SystemCapability.ArkUI.ArkUI.Full
1164   * @crossplatform
1165   * @since 10
1166   */
1167  /**
1168   * Called when the video enters and exits the full screen.
1169   *
1170   * @param { function } callback
1171   * @returns { VideoAttribute }
1172   * @syscap SystemCapability.ArkUI.ArkUI.Full
1173   * @crossplatform
1174   * @atomicservice
1175   * @since 11
1176   */
1177  /**
1178   * Called when the video enters and exits the full screen.
1179   * Anonymous Object Rectification.
1180   *
1181   * @param { Callback<FullscreenInfo> } callback
1182   * @returns { VideoAttribute }
1183   * @syscap SystemCapability.ArkUI.ArkUI.Full
1184   * @crossplatform
1185   * @atomicservice
1186   * @since 18
1187   */
1188  onFullscreenChange(callback: Callback<FullscreenInfo>): VideoAttribute;
1189
1190  /**
1191   * Called when the video preparation is complete.
1192   *
1193   * @param { function } callback
1194   * @returns { VideoAttribute }
1195   * @syscap SystemCapability.ArkUI.ArkUI.Full
1196   * @since 7
1197   */
1198  /**
1199   * Called when the video preparation is complete.
1200   *
1201   * @param { function } callback
1202   * @returns { VideoAttribute }
1203   * @syscap SystemCapability.ArkUI.ArkUI.Full
1204   * @crossplatform
1205   * @since 10
1206   */
1207  /**
1208   * Called when the video preparation is complete.
1209   *
1210   * @param { function } callback
1211   * @returns { VideoAttribute }
1212   * @syscap SystemCapability.ArkUI.ArkUI.Full
1213   * @crossplatform
1214   * @atomicservice
1215   * @since 11
1216   */
1217  /**
1218   * Called when the video preparation is complete.
1219   * Anonymous Object Rectification.
1220   *
1221   * @param { Callback<PreparedInfo> } callback
1222   * @returns { VideoAttribute }
1223   * @syscap SystemCapability.ArkUI.ArkUI.Full
1224   * @crossplatform
1225   * @atomicservice
1226   * @since 18
1227   */
1228  onPrepared(callback: Callback<PreparedInfo>): VideoAttribute;
1229
1230  /**
1231   * Called when the time information is reported when the progress bar process is operated.
1232   *
1233   * @param { function } callback
1234   * @returns { VideoAttribute }
1235   * @syscap SystemCapability.ArkUI.ArkUI.Full
1236   * @since 7
1237   */
1238  /**
1239   * Called when the time information is reported when the progress bar process is operated.
1240   *
1241   * @param { function } callback
1242   * @returns { VideoAttribute }
1243   * @syscap SystemCapability.ArkUI.ArkUI.Full
1244   * @crossplatform
1245   * @since 10
1246   */
1247  /**
1248   * Called when the time information is reported when the progress bar process is operated.
1249   *
1250   * @param { function } callback
1251   * @returns { VideoAttribute }
1252   * @syscap SystemCapability.ArkUI.ArkUI.Full
1253   * @crossplatform
1254   * @atomicservice
1255   * @since 11
1256   */
1257  /**
1258   * Called when the time information is reported when the progress bar process is operated.
1259   * Anonymous Object Rectification.
1260   *
1261   * @param { Callback<PlaybackInfo> } callback
1262   * @returns { VideoAttribute }
1263   * @syscap SystemCapability.ArkUI.ArkUI.Full
1264   * @crossplatform
1265   * @atomicservice
1266   * @since 18
1267   */
1268  onSeeking(callback: Callback<PlaybackInfo>): VideoAttribute;
1269
1270  /**
1271   * Called when the playback time information is reported after the operation progress bar is completed.
1272   *
1273   * @param { function } callback
1274   * @returns { VideoAttribute }
1275   * @syscap SystemCapability.ArkUI.ArkUI.Full
1276   * @since 7
1277   */
1278  /**
1279   * Called when the playback time information is reported after the operation progress bar is completed.
1280   *
1281   * @param { function } callback
1282   * @returns { VideoAttribute }
1283   * @syscap SystemCapability.ArkUI.ArkUI.Full
1284   * @crossplatform
1285   * @since 10
1286   */
1287  /**
1288   * Called when the playback time information is reported after the operation progress bar is completed.
1289   *
1290   * @param { function } callback
1291   * @returns { VideoAttribute }
1292   * @syscap SystemCapability.ArkUI.ArkUI.Full
1293   * @crossplatform
1294   * @atomicservice
1295   * @since 11
1296   */
1297  /**
1298   * Called when the playback time information is reported after the operation progress bar is completed.
1299   * Anonymous Object Rectification.
1300   *
1301   * @param { Callback<PlaybackInfo> } callback
1302   * @returns { VideoAttribute }
1303   * @syscap SystemCapability.ArkUI.ArkUI.Full
1304   * @crossplatform
1305   * @atomicservice
1306   * @since 18
1307   */
1308  onSeeked(callback: Callback<PlaybackInfo>): VideoAttribute;
1309
1310  /**
1311   * Called when the playback progress changes.
1312   *
1313   * @param { function } callback
1314   * @returns { VideoAttribute }
1315   * @syscap SystemCapability.ArkUI.ArkUI.Full
1316   * @since 7
1317   */
1318  /**
1319   * Called when the playback progress changes.
1320   *
1321   * @param { function } callback
1322   * @returns { VideoAttribute }
1323   * @syscap SystemCapability.ArkUI.ArkUI.Full
1324   * @crossplatform
1325   * @since 10
1326   */
1327  /**
1328   * Called when the playback progress changes.
1329   *
1330   * @param { function } callback
1331   * @returns { VideoAttribute }
1332   * @syscap SystemCapability.ArkUI.ArkUI.Full
1333   * @crossplatform
1334   * @atomicservice
1335   * @since 11
1336   */
1337  /**
1338   * Called when the playback progress changes.
1339   * Anonymous Object Rectification.
1340   *
1341   * @param { Callback<PlaybackInfo> } callback
1342   * @returns { VideoAttribute }
1343   * @syscap SystemCapability.ArkUI.ArkUI.Full
1344   * @crossplatform
1345   * @atomicservice
1346   * @since 18
1347   */
1348  onUpdate(callback: Callback<PlaybackInfo>): VideoAttribute;
1349
1350  /**
1351   * Called when playback fails.
1352   *
1353   * @param { function } event
1354   * @returns { VideoAttribute }
1355   * @syscap SystemCapability.ArkUI.ArkUI.Full
1356   * @since 7
1357   */
1358  /**
1359   * Called when playback fails.
1360   *
1361   * @param { function } event
1362   * @returns { VideoAttribute }
1363   * @syscap SystemCapability.ArkUI.ArkUI.Full
1364   * @crossplatform
1365   * @since 10
1366   */
1367  /**
1368   * Called when playback fails.
1369   *
1370   * @param { function } event
1371   * @returns { VideoAttribute }
1372   * @syscap SystemCapability.ArkUI.ArkUI.Full
1373   * @crossplatform
1374   * @atomicservice
1375   * @since 11
1376   */
1377  onError(event: () => void): VideoAttribute;
1378
1379  /**
1380   * Called when the video is stopped.
1381   *
1382   * @param { Callback<void> } event
1383   * @returns { VideoAttribute }
1384   * @syscap SystemCapability.ArkUI.ArkUI.Full
1385   * @crossplatform
1386   * @atomicservice
1387   * @since 12
1388   */
1389  onStop(event: Callback<void>): VideoAttribute;
1390
1391  /**
1392   * Enable image analyzer.
1393   *
1394   * @param { boolean } enable
1395   * @returns { VideoAttribute }
1396   * @syscap SystemCapability.ArkUI.ArkUI.Full
1397   * @atomicservice
1398   * @since 12
1399   */
1400  enableAnalyzer(enable: boolean): VideoAttribute;
1401
1402  /**
1403   * Set image analyzer with config.
1404   *
1405   * @param { ImageAnalyzerConfig } config
1406   * @returns { VideoAttribute }
1407   * @syscap SystemCapability.ArkUI.ArkUI.Full
1408   * @atomicservice
1409   * @since 12
1410   */
1411  analyzerConfig(config: ImageAnalyzerConfig): VideoAttribute;
1412
1413  /**
1414   * Set background color of the surface holden by Video(only support Color.Black and Color.Transparent). The default value is Color.Black.
1415   *
1416   * @param { ColorMetrics } color
1417   * @returns { VideoAttribute }
1418   * @syscap SystemCapability.ArkUI.ArkUI.Full
1419   * @systemapi
1420   * @since 15
1421   */
1422  surfaceBackgroundColor(color: ColorMetrics): VideoAttribute;
1423
1424  /**
1425   * Indicates whether to response shortcut key. The default value is false.
1426   * If the value is true, video will respond to the shortcut keys as follows:
1427   * Space key: play/pause the video.
1428   * Up/Down arrow key: turn up/down volume of the video.
1429   * Right/Left arrow key: fast forward/backward the video.
1430   *
1431   * @param { boolean } enabled
1432   * @returns { VideoAttribute }
1433   * @syscap SystemCapability.ArkUI.ArkUI.Full
1434   * @atomicservice
1435   * @since 15
1436   */
1437  enableShortcutKey(enabled: boolean): VideoAttribute;
1438}
1439
1440/**
1441 * Defines Video Component.
1442 *
1443 * @syscap SystemCapability.ArkUI.ArkUI.Full
1444 * @since 7
1445 */
1446/**
1447 * Defines Video Component.
1448 *
1449 * @syscap SystemCapability.ArkUI.ArkUI.Full
1450 * @crossplatform
1451 * @since 10
1452 */
1453/**
1454 * Defines Video Component.
1455 *
1456 * @syscap SystemCapability.ArkUI.ArkUI.Full
1457 * @crossplatform
1458 * @atomicservice
1459 * @since 11
1460 */
1461declare const Video: VideoInterface;
1462
1463/**
1464 * Defines Video Component instance.
1465 *
1466 * @syscap SystemCapability.ArkUI.ArkUI.Full
1467 * @since 7
1468 */
1469/**
1470 * Defines Video Component instance.
1471 *
1472 * @syscap SystemCapability.ArkUI.ArkUI.Full
1473 * @crossplatform
1474 * @since 10
1475 */
1476/**
1477 * Defines Video Component instance.
1478 *
1479 * @syscap SystemCapability.ArkUI.ArkUI.Full
1480 * @crossplatform
1481 * @atomicservice
1482 * @since 11
1483 */
1484declare const VideoInstance: VideoAttribute;
1485