• 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 to set offset between first grid item and the top of the grid
356   *
357   * @type { ?number }
358   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
359   * @atomicservice
360   * @since 20
361   */
362  gridStartOffset?: number;
363
364  /**
365   * Support to set offset between last grid item and the bottom of the grid
366   *
367   * @type { ?number }
368   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
369   * @atomicservice
370   * @since 20
371   */
372  gridEndOffset?: number;
373
374  /**
375   * Support repeat select
376   *
377   * @type { ?boolean }
378   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
379   * @atomicservice
380   * @since 12
381   */
382  isRepeatSelectSupported?: boolean;
383
384  /**
385   * Support to set checkbox text color
386   *
387   * @type { ?string }
388   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
389   * @atomicservice
390   * @since 12
391   */
392  checkboxTextColor?: string;
393
394  /**
395   * Support to set photo browser background color mode
396   *
397   * @type { ?PickerColorMode }
398   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
399   * @atomicservice
400   * @since 12
401   */
402  photoBrowserBackgroundColorMode?: PickerColorMode;
403
404  /**
405   * Support to set max select number remind mode.
406   *
407   * @type { ?ReminderMode }
408   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
409   * @atomicservice
410   * @since 12
411   */
412  maxSelectedReminderMode?: ReminderMode;
413
414  /**
415   * Support to set display orientation
416   *
417   * @type { ?PickerOrientation }
418   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
419   * @atomicservice
420   * @since 12
421   */
422  orientation?: PickerOrientation;
423
424  /**
425   * Support to set select mode
426   *
427   * @type { ?SelectMode }
428   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
429   * @atomicservice
430   * @since 12
431   */
432  selectMode?: SelectMode;
433
434  /**
435   * Support to set max photo select number
436   *
437   * @type { ?number }
438   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
439   * @atomicservice
440   * @since 12
441   */
442  maxPhotoSelectNumber?: number;
443
444  /**
445   * Support to set max video select number
446   *
447   * @type { ?number }
448   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
449   * @atomicservice
450   * @since 12
451   */
452  maxVideoSelectNumber?: number;
453
454  /**
455   * Support to set sliding selection
456   *
457   * @type { ?boolean }
458   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
459   * @atomicservice
460   * @since 13
461   */
462  isSlidingSelectionSupported?: boolean;
463
464  /**
465   * Support to set photo browser checkbox position
466   *
467   * @type { ?[number, number] }
468   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
469   * @atomicservice
470   * @since 13
471   */
472  photoBrowserCheckboxPosition?: [number, number];
473
474  /**
475   * Single-line display mode for the PhotoPickerComponent.
476   *
477   * @type { ?SingleLineConfig }
478   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
479   * @atomicservice
480   * @since 20
481   */
482  singleLineConfig?: SingleLineConfig;
483
484  /**
485   * Support to set UIComponent color mode.
486   *
487   * @type { ?PickerColorMode }
488   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
489   * @atomicservice
490   * @since 20
491   */
492  uiComponentColorMode?: PickerColorMode;
493}
494
495/**
496 * BaseItemInfo
497 *
498 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
499 * @atomicservice
500 * @since 12
501 */
502export declare class BaseItemInfo {
503  /**
504   * Uri. if the itemType is CAMERA, it will be null
505   *
506   * @type { ?string }
507   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
508   * @atomicservice
509   * @since 12
510   */
511  uri?: string;
512
513  /**
514   * MimeType. if the itemType is CAMERA, it will be null
515   *
516   * @type { ?string }
517   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
518   * @atomicservice
519   * @since 12
520   */
521  mimeType?: string;
522
523  /**
524   * Width. if the itemType is CAMERA, it will be null
525   *
526   * @type { ?number }
527   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
528   * @atomicservice
529   * @since 12
530   */
531  width?: number;
532
533  /**
534   * Height. if the itemType is CAMERA, it will be null
535   *
536   * @type { ?number }
537   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
538   * @atomicservice
539   * @since 12
540   */
541  height?: number;
542
543  /**
544   * Size. if the itemType is CAMERA, it will be null
545   *
546   * @type { ?number }
547   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
548   * @atomicservice
549   * @since 12
550   */
551  size?: number;
552
553  /**
554   * Duration. if the itemType is CAMERA, it will be null; if photos, return -1
555   *
556   * @type { ?number }
557   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
558   * @atomicservice
559   * @since 12
560   */
561  duration?: number;
562}
563
564/**
565 * ItemInfo
566 *
567 * @extends BaseItemInfo
568 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
569 * @atomicservice
570 * @since 12
571 */
572export declare class ItemInfo extends BaseItemInfo {
573  /**
574   * itemType. include CAMERA and THUMBNAIL.
575   *
576   * @type { ?ItemType }
577   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
578   * @atomicservice
579   * @since 12
580   */
581  itemType?: ItemType;
582}
583
584/**
585 * PhotoBrowserInfo
586 *
587 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
588 * @atomicservice
589 * @since 12
590 */
591export declare class PhotoBrowserInfo {
592  /**
593   * AnimatorParams. include duration and curve
594   *
595   * @type { ?AnimatorParams }
596   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
597   * @atomicservice
598   * @since 12
599   */
600  animatorParams?: AnimatorParams;
601}
602
603/**
604 * AnimatorParams
605 *
606 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
607 * @atomicservice
608 * @since 12
609 */
610export declare class AnimatorParams {
611  /**
612   * Animate duration
613   *
614   * @type { ?number }
615   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
616   * @atomicservice
617   * @since 12
618   */
619  duration?: number;
620
621  /**
622   * Animate curve
623   *
624   * @type { ?Curve | ICurve | string }
625   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
626   * @atomicservice
627   * @since 12
628   */
629  curve?: Curve | ICurve | string;
630}
631
632/**
633 * MaxSelected
634 *
635 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
636 * @atomicservice
637 * @since 12
638 */
639export declare class MaxSelected {
640  /**
641   * data. support to set max_total_count, max_photo_count and max_video_count.
642   *
643   * @type { ?Map<MaxCountType, number> }
644   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
645   * @atomicservice
646   * @since 12
647   */
648  data?: Map<MaxCountType, number>;
649}
650
651
652/**
653 * Single-Line display mode.
654 *
655 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
656 * @atomicservice
657 * @since 20
658 */
659export declare class SingleLineConfig {
660  /**
661   * item display ratio
662   *
663   * @type { ?ItemDisplayRatio }
664   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
665   * @atomicservice
666   * @since 20
667   */
668  itemDisplayRatio?: ItemDisplayRatio;
669
670  /**
671   * Rounded corner radius of grid items.
672   *
673   * @type { ?(Length | BorderRadiuses | LocalizedBorderRadiuses) }
674   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
675   * @atomicservice
676   * @since 20
677   */
678  itemBorderRadius?: Length | BorderRadiuses | LocalizedBorderRadiuses;
679
680  /**
681   * item gap
682   *
683   * @type { ?Length }
684   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
685   * @atomicservice
686   * @since 20
687   */
688  itemGap?: Length;
689}
690
691/**
692 * DataType represents the type of the data set to picker component
693 *
694 * @enum { number } DataType
695 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
696 * @atomicservice
697 * @since 12
698 */
699export declare enum DataType {
700  /**
701   * DataType: set selected uris to picker component, the data should be a array of uri
702   *
703   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
704   * @atomicservice
705   * @since 12
706   */
707  SET_SELECTED_URIS = 1,
708
709  /**
710   * SET_ALBUM_URI. set selected album uri to picker component
711   *
712   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
713   * @atomicservice
714   * @since 12
715   */
716  SET_ALBUM_URI = 2
717}
718
719/**
720 * ItemType. include CAMERA and THUMBNAIL
721 *
722 * @enum { number } ItemType
723 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
724 * @atomicservice
725 * @since 12
726 */
727export declare enum ItemType {
728  /**
729   * THUMBNAIL. photos or videos item
730   *
731   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
732   * @atomicservice
733   * @since 12
734   */
735  THUMBNAIL = 0,
736
737  /**
738   * CAMERA. camera item
739   *
740   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
741   * @atomicservice
742   * @since 12
743   */
744  CAMERA = 1
745}
746
747/**
748 * ClickType. include SELECTED and DESELECTED
749 *
750 * @enum { number } ClickType
751 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
752 * @atomicservice
753 * @since 12
754 */
755export declare enum ClickType {
756  /**
757   * SELECTED. click to select photos or videos, if click camera item, the clickType is SELECTED.
758   *
759   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
760   * @atomicservice
761   * @since 12
762   */
763  SELECTED = 0,
764
765  /**
766   * DESELECTED. click to deselect photos or videos
767   *
768   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
769   * @atomicservice
770   * @since 12
771   */
772  DESELECTED = 1
773}
774
775/**
776 * PickerOrientation. include VERTICAL and HORIZONTAL
777 *
778 * @enum { number } PickerOrientation
779 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
780 * @atomicservice
781 * @since 12
782 */
783export declare enum PickerOrientation {
784  /**
785   * VERTICAL. vertical display
786   *
787   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
788   * @atomicservice
789   * @since 12
790   */
791  VERTICAL = 0,
792
793  /**
794   * HORIZONTAL. horizontal display
795   *
796   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
797   * @atomicservice
798   * @since 12
799   */
800  HORIZONTAL = 1
801}
802
803/**
804 * SelectMode. include SINGLE_SELECT and MULTI_SELECT
805 *
806 * @enum { number } SelectMode
807 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
808 * @atomicservice
809 * @since 12
810 */
811export declare enum SelectMode {
812  /**
813   * SINGLE_SELECT. single select
814   *
815   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
816   * @atomicservice
817   * @since 12
818   */
819  SINGLE_SELECT = 0,
820
821  /**
822   * MULTI_SELECT. multi select
823   *
824   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
825   * @atomicservice
826   * @since 12
827   */
828  MULTI_SELECT = 1
829}
830
831/**
832 * PickerColorMode. include AUTO, LIGHT and DARK
833 *
834 * @enum { number } PickerColorMode
835 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
836 * @atomicservice
837 * @since 12
838 */
839export declare enum PickerColorMode {
840  /**
841   * AUTO. follow system color
842   *
843   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
844   * @atomicservice
845   * @since 12
846   */
847  AUTO = 0,
848
849  /**
850   * LIGHT. light color
851   *
852   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
853   * @atomicservice
854   * @since 12
855   */
856  LIGHT = 1,
857
858  /**
859   * DARK. dark color
860   *
861   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
862   * @atomicservice
863   * @since 12
864   */
865  DARK = 2
866}
867
868/**
869 * ReminderMode, include NONE, TOAST and MASK
870 *
871 * @enum { number } ReminderMode
872 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
873 * @atomicservice
874 * @since 12
875 */
876export declare enum ReminderMode {
877  /**
878   * NONE. no need to remind
879   *
880   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
881   * @atomicservice
882   * @since 12
883   */
884  NONE = 0,
885
886  /**
887   * TOAST. remind by toast
888   *
889   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
890   * @atomicservice
891   * @since 12
892   */
893  TOAST = 1,
894
895  /**
896   * MASK. remind by mask
897   *
898   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
899   * @atomicservice
900   * @since 12
901   */
902  MASK = 2
903}
904
905/**
906 * MaxCountType. include TOTAL_MAX_COUNT, PHOTO_MAX_COUNT and VIDEO_MAX_COUNT
907 *
908 * @enum { number } MaxCountType
909 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
910 * @atomicservice
911 * @since 12
912 */
913export declare enum MaxCountType {
914  /**
915   * TOTAL_MAX_COUNT. total max count
916   *
917   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
918   * @atomicservice
919   * @since 12
920   */
921  TOTAL_MAX_COUNT = 0,
922
923  /**
924   * PHOTO_MAX_COUNT. photo max count
925   *
926   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
927   * @atomicservice
928   * @since 12
929   */
930  PHOTO_MAX_COUNT = 1,
931
932  /**
933   * VIDEO_MAX_COUNT. video max count
934   *
935   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
936   * @atomicservice
937   * @since 12
938   */
939  VIDEO_MAX_COUNT = 2
940}
941
942/**
943 * PhotoBrowserRange. include ALL and SELECTED_ONLY
944 *
945 * @enum { number } PhotoBrowserRange
946 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
947 * @atomicservice
948 * @since 12
949 */
950export declare enum PhotoBrowserRange {
951  /**
952   * ALL. all photos or vedios
953   *
954   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
955   * @atomicservice
956   * @since 12
957   */
958  ALL = 0,
959
960  /**
961   * SELECTED_ONLY. only selected photos or vedios
962   *
963   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
964   * @atomicservice
965   * @since 12
966   */
967  SELECTED_ONLY = 1,
968}
969
970/**
971 * PhotoBrowserUIElement. include CHECKBOX and BACK_BUTTON
972 *
973 * @enum { number } PhotoBrowserUIElement
974 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
975 * @atomicservice
976 * @since 13
977 */
978export declare enum PhotoBrowserUIElement {
979  /**
980   * CHECKBOX. checkbox
981   *
982   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
983   * @atomicservice
984   * @since 13
985   */
986  CHECKBOX = 0,
987
988  /**
989   * BACK_BUTTON. back button
990   *
991   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
992   * @atomicservice
993   * @since 13
994   */
995  BACK_BUTTON = 1
996}
997
998/**
999 * Enumeration type of save mode.
1000 *
1001 * @enum { number } SaveMode
1002 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
1003 * @atomicservice
1004 * @since 15
1005 */
1006export declare enum SaveMode {
1007  /**
1008   * Save as a new photo/video.
1009   *
1010   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
1011   * @atomicservice
1012   * @since 15
1013   */
1014  SAVE_AS = 0,
1015
1016  /**
1017   * Overwrite and save.
1018   *
1019   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
1020   * @atomicservice
1021   * @since 15
1022   */
1023  OVERWRITE = 1
1024}
1025
1026/**
1027 * VideoPlayerState. include PLAYING, PAUSED, STOPPED, SEEK_START and SEEK_FINISH
1028 *
1029 * @enum { number } VideoPlayerState
1030 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
1031 * @atomicservice
1032 * @since 14
1033 */
1034export declare enum VideoPlayerState {
1035  /**
1036   * PLAYING. video is playing
1037   *
1038   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
1039   * @atomicservice
1040   * @since 14
1041   */
1042  PLAYING = 0,
1043
1044  /**
1045   * PAUSED. video is paused
1046   *
1047   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
1048   * @atomicservice
1049   * @since 14
1050   */
1051  PAUSED = 1,
1052
1053   /**
1054   * STOPPED. video is stopped
1055   *
1056   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
1057   * @atomicservice
1058   * @since 14
1059   */
1060  STOPPED = 2,
1061
1062   /**
1063   * SEEK_START. seek drag is start
1064   *
1065   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
1066   * @atomicservice
1067   * @since 14
1068   */
1069  SEEK_START = 3,
1070
1071   /**
1072   * SEEK_FINISH. seek drag is finish
1073   *
1074   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
1075   * @atomicservice
1076   * @since 14
1077   */
1078  SEEK_FINISH = 4
1079}
1080
1081/**
1082 * Enumerates the aspect ratios of the grid item display, including 1:1 and the original image's aspect ratio.
1083 *
1084 * @enum { number } Grid item display aspect ratio.
1085 * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
1086 * @atomicservice
1087 * @since 20
1088 */
1089export declare enum ItemDisplayRatio {
1090  /**
1091   * Square ratio item
1092   *
1093   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
1094   * @atomicservice
1095   * @since 20
1096   */
1097  SQUARE_RATIO = 0,
1098
1099  /**
1100   * original size ratio item
1101   *
1102   * @syscap SystemCapability.FileManagement.PhotoAccessHelper.Core
1103   * @atomicservice
1104   * @since 20
1105   */
1106  ORIGINAL_SIZE_RATIO = 1
1107}