• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1/*
2 * Copyright (C) 2024 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 A component which support other applications to select photos or videos
18 * @kit MediaLibraryKit
19 */
20
21import photoAccessHelper from '@ohos.file.photoAccessHelper';
22import { AsyncCallback } from '@ohos.base';
23
24/**
25 * Declare struct PhotoPickerComponent
26 *
27 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
28 * @atomicservice
29 * @since 12
30 */
31@Component
32export declare struct PhotoPickerComponent {
33  /**
34   * PickerOptions
35   *
36   * @type { ?PickerOptions }
37   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
38   * @atomicservice
39   * @since 12
40   */
41  pickerOptions?: PickerOptions;
42
43  /**
44   * Callback when select photos or videos
45   *
46   * @type { ?function }
47   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
48   * @atomicservice
49   * @since 12
50   */
51  onSelect?: (uri: string) => void;
52
53  /**
54   * Callback when Deselect photos or videos
55   *
56   * @type { ?function }
57   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
58   * @atomicservice
59   * @since 12
60   */
61  onDeselect?: (uri: string) => void;
62
63  /**
64   * Callback when click item. include click camera item and thumbnail item, will return itemInfo
65   *
66   * @type { ?function }
67   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
68   * @atomicservice
69   * @since 12
70   */
71  onItemClicked?: (itemInfo: ItemInfo, clickType: ClickType) => boolean;
72
73  /**
74   * Callback when enter photo browser, will return photoBrowserInfo
75   *
76   * @type { ?function }
77   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
78   * @atomicservice
79   * @since 12
80   */
81  onEnterPhotoBrowser?: (photoBrowserInfo: PhotoBrowserInfo) => boolean;
82
83  /**
84   * Callback when exit photo browser, will return photoBrowserInfo
85   *
86   * @type { ?function }
87   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
88   * @atomicservice
89   * @since 12
90   */
91  onExitPhotoBrowser?: (photoBrowserInfo: PhotoBrowserInfo) => boolean;
92
93  /**
94   * Callback when pickerController is ready.
95   * Set data to picker component by pickerController is supported after pickerController is ready
96   *
97   * @type { ?function }
98   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
99   * @atomicservice
100   * @since 12
101   */
102  onPickerControllerReady?: () => void;
103
104  /**
105   * Callback when photo browser change, will return browserItemInfo
106   *
107   * @type { ?function }
108   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
109   * @atomicservice
110   * @since 12
111   */
112  onPhotoBrowserChanged?: (browserItemInfo: BaseItemInfo) => boolean;
113
114  /**
115   * Callback when selected items are deleted
116   *
117   * @type { ?function }
118   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
119   * @atomicservice
120   * @since 13
121   */
122  onSelectedItemsDeleted?: ItemsDeletedCallback;
123
124  /**
125   * Callback when exceed max selected
126   *
127   * @type { ?function }
128   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
129   * @atomicservice
130   * @since 13
131   */
132  onExceedMaxSelected?: ExceedMaxSelectedCallback;
133
134  /**
135   * Callback when the current album is deleted
136   *
137   * @type { ?function }
138   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
139   * @atomicservice
140   * @since 13
141   */
142  onCurrentAlbumDeleted?: CurrentAlbumDeletedCallback;
143
144  /**
145   * Callback when the video play state changed
146   *
147   * @type { ?function }
148   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
149   * @atomicservice
150   * @since 14
151   */
152  onVideoPlayStateChanged?: videoPlayStateChangedCallback;
153
154  /**
155   * PickerController
156   *
157   * @type { ?PickerController }
158   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
159   * @atomicservice
160   * @since 12
161   */
162  @ObjectLink
163  pickerController: PickerController;
164
165  /**
166   * Build function of PhotoPickerComponent
167   *
168   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
169   * @atomicservice
170   * @since 12
171   */
172  build(): void;
173}
174
175
176/**
177 * The callback of onSelectedItemsDeleted event
178 *
179 * @typedef { function } ItemsDeletedCallback
180 * @param { Array<BaseItemInfo> }
181 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
182 * @atomicservice
183 * @since 13
184 */
185export type ItemsDeletedCallback = (baseItemInfos: Array<BaseItemInfo>) => void;
186
187/**
188 * The callback of onExceedMaxSelected event
189 *
190 * @typedef { function } ItemsDeletedCallback
191 * @param { MaxCountType }
192 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
193 * @atomicservice
194 * @since 13
195 */
196export type ExceedMaxSelectedCallback = (exceedMaxCountType: MaxCountType) => void;
197
198/**
199 * The callback of onCurrentAlbumDeleted event
200 *
201 * @typedef { function } CurrentAlbumDeletedCallback
202 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
203 * @atomicservice
204 * @since 13
205 */
206export type CurrentAlbumDeletedCallback = () => void;
207
208/**
209 * The callback of onVideoPlayStateChanged event
210 *
211 * @typedef { function } videoPlayStateChangedCallback
212 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
213 * @atomicservice
214 * @since 14
215 */
216export type videoPlayStateChangedCallback = (state: VideoPlayerState) => void;
217
218/**
219 * The class for PickerController
220 *
221 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
222 * @atomicservice
223 * @since 12
224 */
225@Observed
226export declare class PickerController {
227  /**
228   * Set data to picker component
229   *
230   * @param { DataType } dataType - data type
231   * @param { Object } data - data
232   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
233   * @atomicservice
234   * @since 12
235   */
236  setData(dataType: DataType, data: Object): void;
237
238  /**
239   * Set max select count to picker component, include max_total_count, max_photo_count and max_video_count.
240   *
241   * @param { MaxSelected } maxSelected - max select count data
242   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
243   * @atomicservice
244   * @since 12
245   */
246  setMaxSelected(maxSelected: MaxSelected): void;
247
248  /**
249   * Set photo browser item to picker component.
250   *
251   * @param { string } uri - specify image uri for photo browsing
252   * @param { PhotoBrowserRange } photoBrowserRange - photo browser slide range
253   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
254   * @atomicservice
255   * @since 12
256   */
257  setPhotoBrowserItem(uri: string, photoBrowserRange?: PhotoBrowserRange): void;
258
259  /**
260   * Exit photo browser.
261   *
262   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
263   * @atomicservice
264   * @since 13
265   */
266  exitPhotoBrowser(): void;
267
268  /**
269   * Sets whether other elements on the photo browser page are visible.
270   *
271   * @param { Array<PhotoBrowserUIElement> } elements - other elements on the photo browser page
272   * @param { boolean } isVisible - visible or not
273   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
274   * @atomicservice
275   * @since 13
276   */
277  setPhotoBrowserUIElementVisibility(elements: Array<PhotoBrowserUIElement>, isVisible: boolean): void;
278
279  /**
280   * Display the photo after edit.
281   *
282   * @param { string } originalUri - Original uri
283   * @param { string } newUri - New uri after replacement
284   * @param { AsyncCallback<void> } callback - Returns void
285   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
286   * @atomicservice
287   * @since 15
288   */
289  replacePhotoPickerPreview(originalUri: string, newUri: string, callback: AsyncCallback<void>): void;
290
291  /**
292   * Save the photo assets of uris.
293   *
294   * @param { Array<string> } trustedUris - Uris need to be saved
295   * @param { AsyncCallback<Array<string>> } callback - Returns the uri list
296   * @param { Array<PhotoCreationConfig> } [configs] - Photo asset creation configs
297   * @param { SaveMode } [saveMode] - Mode of save
298   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
299   * @atomicservice
300   * @since 15
301   */
302  saveTrustedPhotoAssets(trustedUris: Array<string>, callback: AsyncCallback<Array<string>>,
303    configs?: Array<photoAccessHelper.PhotoCreationConfig>, saveMode?: SaveMode): void;
304}
305
306/**
307 * PickerOptions Object
308 *
309 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
310 * @atomicservice
311 * @since 12
312 */
313export declare class PickerOptions extends photoAccessHelper.BaseSelectOptions {
314  /**
315   * Support set checkBox color
316   *
317   * @type { ?string }
318   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
319   * @atomicservice
320   * @since 12
321   */
322  checkBoxColor?: string;
323
324  /**
325   * Support set backgroundColor
326   *
327   * @type { ?string }
328   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
329   * @atomicservice
330   * @since 12
331   */
332  backgroundColor?: string;
333
334  /**
335   * Support set gridMargin
336   *
337   * @type { ?Margin }
338   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
339   * @atomicservice
340   * @since 14
341   */
342  gridMargin?: Margin;
343
344  /**
345   * Support set photoBrowserMargin
346   *
347   * @type { ?Margin }
348   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
349   * @atomicservice
350   * @since 14
351   */
352  photoBrowserMargin?: Margin;
353
354  /**
355   * Support repeat select
356   *
357   * @type { ?boolean }
358   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
359   * @atomicservice
360   * @since 12
361   */
362  isRepeatSelectSupported?: boolean;
363
364  /**
365   * Support to set checkbox text color
366   *
367   * @type { ?string }
368   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
369   * @atomicservice
370   * @since 12
371   */
372  checkboxTextColor?: string;
373
374  /**
375   * Support to set photo browser background color mode
376   *
377   * @type { ?PickerColorMode }
378   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
379   * @atomicservice
380   * @since 12
381   */
382  photoBrowserBackgroundColorMode?: PickerColorMode;
383
384  /**
385   * Support to set max select number remind mode.
386   *
387   * @type { ?ReminderMode }
388   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
389   * @atomicservice
390   * @since 12
391   */
392  maxSelectedReminderMode?: ReminderMode;
393
394  /**
395   * Support to set display orientation
396   *
397   * @type { ?PickerOrientation }
398   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
399   * @atomicservice
400   * @since 12
401   */
402  orientation?: PickerOrientation;
403
404  /**
405   * Support to set select mode
406   *
407   * @type { ?SelectMode }
408   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
409   * @atomicservice
410   * @since 12
411   */
412  selectMode?: SelectMode;
413
414  /**
415   * Support to set max photo select number
416   *
417   * @type { ?number }
418   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
419   * @atomicservice
420   * @since 12
421   */
422  maxPhotoSelectNumber?: number;
423
424  /**
425   * Support to set max video select number
426   *
427   * @type { ?number }
428   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
429   * @atomicservice
430   * @since 12
431   */
432  maxVideoSelectNumber?: number;
433
434  /**
435   * Support to set sliding selection
436   *
437   * @type { ?boolean }
438   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
439   * @atomicservice
440   * @since 13
441   */
442  isSlidingSelectionSupported?: boolean;
443
444  /**
445   * Support to set photo browser checkbox position
446   *
447   * @type { ?[number, number] }
448   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
449   * @atomicservice
450   * @since 13
451   */
452  photoBrowserCheckboxPosition?: [number, number];
453}
454
455/**
456 * BaseItemInfo
457 *
458 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
459 * @atomicservice
460 * @since 12
461 */
462export declare class BaseItemInfo {
463  /**
464   * Uri. if the itemType is CAMERA, it will be null
465   *
466   * @type { ?string }
467   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
468   * @atomicservice
469   * @since 12
470   */
471  uri?: string;
472
473  /**
474   * MimeType. if the itemType is CAMERA, it will be null
475   *
476   * @type { ?string }
477   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
478   * @atomicservice
479   * @since 12
480   */
481  mimeType?: string;
482
483  /**
484   * Width. if the itemType is CAMERA, it will be null
485   *
486   * @type { ?number }
487   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
488   * @atomicservice
489   * @since 12
490   */
491  width?: number;
492
493  /**
494   * Height. if the itemType is CAMERA, it will be null
495   *
496   * @type { ?number }
497   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
498   * @atomicservice
499   * @since 12
500   */
501  height?: number;
502
503  /**
504   * Size. if the itemType is CAMERA, it will be null
505   *
506   * @type { ?number }
507   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
508   * @atomicservice
509   * @since 12
510   */
511  size?: number;
512
513  /**
514   * Duration. if the itemType is CAMERA, it will be null; if photos, return -1
515   *
516   * @type { ?number }
517   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
518   * @atomicservice
519   * @since 12
520   */
521  duration?: number;
522}
523
524/**
525 * ItemInfo
526 *
527 * @extends BaseItemInfo
528 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
529 * @atomicservice
530 * @since 12
531 */
532export declare class ItemInfo extends BaseItemInfo {
533  /**
534   * itemType. include CAMERA and THUMBNAIL.
535   *
536   * @type { ?ItemType }
537   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
538   * @atomicservice
539   * @since 12
540   */
541  itemType?: ItemType;
542}
543
544/**
545 * PhotoBrowserInfo
546 *
547 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
548 * @atomicservice
549 * @since 12
550 */
551export declare class PhotoBrowserInfo {
552  /**
553   * AnimatorParams. include duration and curve
554   *
555   * @type { ?AnimatorParams }
556   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
557   * @atomicservice
558   * @since 12
559   */
560  animatorParams?: AnimatorParams;
561}
562
563/**
564 * AnimatorParams
565 *
566 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
567 * @atomicservice
568 * @since 12
569 */
570export declare class AnimatorParams {
571  /**
572   * Animate duration
573   *
574   * @type { ?number }
575   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
576   * @atomicservice
577   * @since 12
578   */
579  duration?: number;
580
581  /**
582   * Animate curve
583   *
584   * @type { ?Curve | ICurve | string }
585   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
586   * @atomicservice
587   * @since 12
588   */
589  curve?: Curve | ICurve | string;
590}
591
592/**
593 * MaxSelected
594 *
595 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
596 * @atomicservice
597 * @since 12
598 */
599export declare class MaxSelected {
600  /**
601   * data. support to set max_total_count, max_photo_count and max_video_count.
602   *
603   * @type { ?Map<MaxCountType, number> }
604   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
605   * @atomicservice
606   * @since 12
607   */
608  data?: Map<MaxCountType, number>;
609}
610
611/**
612 * DataType represents the type of the data set to picker component
613 *
614 * @enum { number } DataType
615 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
616 * @atomicservice
617 * @since 12
618 */
619export declare enum DataType {
620  /**
621   * DataType: set selected uris to picker component, the data should be a array of uri
622   *
623   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
624   * @atomicservice
625   * @since 12
626   */
627  SET_SELECTED_URIS = 1,
628
629  /**
630   * SET_ALBUM_URI. set selected album uri to picker component
631   *
632   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
633   * @atomicservice
634   * @since 12
635   */
636  SET_ALBUM_URI = 2
637}
638
639/**
640 * ItemType. include CAMERA and THUMBNAIL
641 *
642 * @enum { number } ItemType
643 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
644 * @atomicservice
645 * @since 12
646 */
647export declare enum ItemType {
648  /**
649   * THUMBNAIL. photos or videos item
650   *
651   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
652   * @atomicservice
653   * @since 12
654   */
655  THUMBNAIL = 0,
656
657  /**
658   * CAMERA. camera item
659   *
660   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
661   * @atomicservice
662   * @since 12
663   */
664  CAMERA = 1
665}
666
667/**
668 * ClickType. include SELECTED and DESELECTED
669 *
670 * @enum { number } ClickType
671 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
672 * @atomicservice
673 * @since 12
674 */
675export declare enum ClickType {
676  /**
677   * SELECTED. click to select photos or videos, if click camera item, the clickType is SELECTED.
678   *
679   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
680   * @atomicservice
681   * @since 12
682   */
683  SELECTED = 0,
684
685  /**
686   * DESELECTED. click to deselect photos or videos
687   *
688   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
689   * @atomicservice
690   * @since 12
691   */
692  DESELECTED = 1
693}
694
695/**
696 * PickerOrientation. include VERTICAL and HORIZONTAL
697 *
698 * @enum { number } PickerOrientation
699 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
700 * @atomicservice
701 * @since 12
702 */
703export declare enum PickerOrientation {
704  /**
705   * VERTICAL. vertical display
706   *
707   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
708   * @atomicservice
709   * @since 12
710   */
711  VERTICAL = 0,
712
713  /**
714   * HORIZONTAL. horizontal display
715   *
716   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
717   * @atomicservice
718   * @since 12
719   */
720  HORIZONTAL = 1
721}
722
723/**
724 * SelectMode. include SINGLE_SELECT and MULTI_SELECT
725 *
726 * @enum { number } SelectMode
727 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
728 * @atomicservice
729 * @since 12
730 */
731export declare enum SelectMode {
732  /**
733   * SINGLE_SELECT. single select
734   *
735   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
736   * @atomicservice
737   * @since 12
738   */
739  SINGLE_SELECT = 0,
740
741  /**
742   * MULTI_SELECT. multi select
743   *
744   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
745   * @atomicservice
746   * @since 12
747   */
748  MULTI_SELECT = 1
749}
750
751/**
752 * PickerColorMode. include AUTO, LIGHT and DARK
753 *
754 * @enum { number } PickerColorMode
755 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
756 * @atomicservice
757 * @since 12
758 */
759export declare enum PickerColorMode {
760  /**
761   * AUTO. follow system color
762   *
763   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
764   * @atomicservice
765   * @since 12
766   */
767  AUTO = 0,
768
769  /**
770   * LIGHT. light color
771   *
772   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
773   * @atomicservice
774   * @since 12
775   */
776  LIGHT = 1,
777
778  /**
779   * DARK. dark color
780   *
781   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
782   * @atomicservice
783   * @since 12
784   */
785  DARK = 2
786}
787
788/**
789 * ReminderMode, include NONE, TOAST and MASK
790 *
791 * @enum { number } ReminderMode
792 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
793 * @atomicservice
794 * @since 12
795 */
796export declare enum ReminderMode {
797  /**
798   * NONE. no need to remind
799   *
800   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
801   * @atomicservice
802   * @since 12
803   */
804  NONE = 0,
805
806  /**
807   * TOAST. remind by toast
808   *
809   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
810   * @atomicservice
811   * @since 12
812   */
813  TOAST = 1,
814
815  /**
816   * MASK. remind by mask
817   *
818   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
819   * @atomicservice
820   * @since 12
821   */
822  MASK = 2
823}
824
825/**
826 * MaxCountType. include TOTAL_MAX_COUNT, PHOTO_MAX_COUNT and VIDEO_MAX_COUNT
827 *
828 * @enum { number } MaxCountType
829 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
830 * @atomicservice
831 * @since 12
832 */
833export declare enum MaxCountType {
834  /**
835   * TOTAL_MAX_COUNT. total max count
836   *
837   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
838   * @atomicservice
839   * @since 12
840   */
841  TOTAL_MAX_COUNT = 0,
842
843  /**
844   * PHOTO_MAX_COUNT. photo max count
845   *
846   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
847   * @atomicservice
848   * @since 12
849   */
850  PHOTO_MAX_COUNT = 1,
851
852  /**
853   * VIDEO_MAX_COUNT. video max count
854   *
855   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
856   * @atomicservice
857   * @since 12
858   */
859  VIDEO_MAX_COUNT = 2
860}
861
862/**
863 * PhotoBrowserRange. include ALL and SELECTED_ONLY
864 *
865 * @enum { number } PhotoBrowserRange
866 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
867 * @atomicservice
868 * @since 12
869 */
870export declare enum PhotoBrowserRange {
871  /**
872   * ALL. all photos or vedios
873   *
874   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
875   * @atomicservice
876   * @since 12
877   */
878  ALL = 0,
879
880  /**
881   * SELECTED_ONLY. only selected photos or vedios
882   *
883   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
884   * @atomicservice
885   * @since 12
886   */
887  SELECTED_ONLY = 1,
888}
889
890/**
891 * PhotoBrowserUIElement. include CHECKBOX and BACK_BUTTON
892 *
893 * @enum { number } PhotoBrowserUIElement
894 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
895 * @atomicservice
896 * @since 13
897 */
898export declare enum PhotoBrowserUIElement {
899  /**
900   * CHECKBOX. checkbox
901   *
902   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
903   * @atomicservice
904   * @since 13
905   */
906  CHECKBOX = 0,
907
908  /**
909   * BACK_BUTTON. back button
910   *
911   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
912   * @atomicservice
913   * @since 13
914   */
915  BACK_BUTTON = 1
916}
917
918/**
919 * Enumeration type of save mode.
920 *
921 * @enum { number } SaveMode
922 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
923 * @atomicservice
924 * @since 15
925 */
926export declare enum SaveMode {
927  /**
928   * Save as a new photo/video.
929   *
930   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
931   * @atomicservice
932   * @since 15
933   */
934  SAVE_AS = 0,
935
936  /**
937   * Overwrite and save.
938   *
939   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
940   * @atomicservice
941   * @since 15
942   */
943  OVERWRITE = 1
944}
945
946/**
947 * VideoPlayerState. include PLAYING, PAUSED, STOPPED, SEEK_START and SEEK_FINISH
948 *
949 * @enum { number } VideoPlayerState
950 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
951 * @atomicservice
952 * @since 14
953 */
954export declare enum VideoPlayerState {
955  /**
956   * PLAYING. video is playing
957   *
958   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
959   * @atomicservice
960   * @since 14
961   */
962  PLAYING = 0,
963
964  /**
965   * PAUSED. video is paused
966   *
967   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
968   * @atomicservice
969   * @since 14
970   */
971  PAUSED = 1,
972
973   /**
974   * STOPPED. video is stopped
975   *
976   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
977   * @atomicservice
978   * @since 14
979   */
980  STOPPED = 2,
981
982   /**
983   * SEEK_START. seek drag is start
984   *
985   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
986   * @atomicservice
987   * @since 14
988   */
989  SEEK_START = 3,
990
991   /**
992   * SEEK_FINISH. seek drag is finish
993   *
994   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
995   * @atomicservice
996   * @since 14
997   */
998  SEEK_FINISH = 4
999}
1000