diff --git a/api/@ohos.filemanagement.userfile_manager.d.ts b/api/@ohos.filemanagement.userFileManager.d.ts similarity index 52% rename from api/@ohos.filemanagement.userfile_manager.d.ts rename to api/@ohos.filemanagement.userFileManager.d.ts index 5fdd82edc05b355e7dda0ba88a7ae303b4128604..863d2baa402312a617d0119ae0e71aa76ddf9dee 100644 --- a/api/@ohos.filemanagement.userfile_manager.d.ts +++ b/api/@ohos.filemanagement.userFileManager.d.ts @@ -14,72 +14,68 @@ */ import { AsyncCallback, Callback } from './basic'; -import Context from './application/Context'; +import Context from './application/Context'; import image from './@ohos.multimedia.image'; +import dataSharePredicates from './@ohos.data.dataSharePredicates'; /** - * @name userfile_manager + * @name userFileManager * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @import Import userfile_manager from '@ohos.filemanagement.userfile_manager' + * @import Import userFileManager from '@ohos.filemanagement.userFileManager' */ -declare namespace userfile_manager { - /** - * Obtains a UserFileManager instance. - * @since 9 - * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @import Import userfile_manager from '@ohos.filemanagement.userfile_manager' - * @FAModelOnly - * @return Returns a UserFileManager instance if the operation is successful; returns null otherwise. - */ - function getUserFileMgr(): UserFileManager; +declare namespace userFileManager { /** * Returns an instance of UserFileManager * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core * @StageModelOnly - * @param context hap context information + * @param context Hap context information * @return Instance of UserFileManager */ function getUserFileMgr(context: Context): UserFileManager; /** - * Enumeration types for different kinds of Media Files + * Enumeration types for different kinds of Files * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ - enum MediaType { - /** - * File media type - * @since 9 - * @syscap SystemCapability.FileManagement.UserFileManager.Core - */ - FILE = 0, + enum FileType { /** - * Image media type + * Image file type * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ - IMAGE, + IMAGE = 1, /** - * Video media type + * Video file type * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ VIDEO, /** - * Audio media type + * Audio file type * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ AUDIO } + /** + * Indicates the type of file asset member. + */ + type MemberType = number | string | boolean; + + /** + * Indicates the type of notify event. + */ + type ChangeEvent = 'deviceChange' | 'albumChange' | 'imageChange' | 'audioChange' | 'videoChange' | 'remoteFileChange'; + /** * Provides methods to encapsulate file attributes. * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @import Import userfilemgr from '@ohos.filemanagement.userfile_manager' + * @import Import userFileManager from '@ohos.filemanagement.userFileManager' */ interface FileAsset { /** @@ -89,11 +85,11 @@ declare namespace userfile_manager { */ readonly uri: string; /** - * Media type, for example, IMAGE, VIDEO, FILE, AUDIO + * File type, for example, IMAGE, VIDEO, AUDIO * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ - readonly mediaType: MediaType; + readonly fileType: FileType; /** * Display name (with a file name extension) of the file. * @since 9 @@ -101,39 +97,42 @@ declare namespace userfile_manager { */ displayName: string; /** - * If it is a directory where the file is located. + * Return the fileasset member parameter. * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @param callback Callback return the result of isDerectory. + * @param member the name of the parameter. for example : get(ImageVideoKey.URI) */ - isDirectory(callback: AsyncCallback): void; + get(member: string): MemberType; /** - * If it is a directory where the file is located. + * Set the fileasset member parameter. * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core + * @param member The name of the parameter. only TITLE can be changed + * @param string The value of the parameter. + * @example : Set(ImageVideoKey.TITLE, "newTitle"), call commitModify after set value */ - isDirectory():Promise; + set(member: string, value: string): void; /** * Modify meta data where the file is located. * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @permission ohos.permission.WRITE_IMAGEVIDEO or ohos.permission.WRITE_AUDIO or ohos.permission.WRITE_DOCUMENT - * @param callback no value will be returned. + * @permission ohos.permission.WRITE_IMAGEVIDEO or ohos.permission.WRITE_AUDIO + * @param callback No value will be returned. */ commitModify(callback: AsyncCallback): void; /** * Modify meta data where the file is located. * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @permission ohos.permission.WRITE_IMAGEVIDEO or ohos.permission.WRITE_AUDIO or ohos.permission.WRITE_DOCUMENT + * @permission ohos.permission.WRITE_IMAGEVIDEO or ohos.permission.WRITE_AUDIO */ commitModify(): Promise; /** * Open the file is located. * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @permission ohos.permission.READ_IMAGEVIDEO or ohos.permission.READ_AUDIO or ohos.permission.READ_DOCUMENT or ohos.permission.WRITE_MEDIA or ohos.permission.WRITE_IMAGEVIDEO or ohos.permission.WRITE_AUDIO or ohos.permission.WRITE_DOCUMENT - * @param mode mode for open, for example: rw, r, w. + * @permission ohos.permission.READ_IMAGEVIDEO or ohos.permission.READ_AUDIO or ohos.permission.WRITE_IMAGEVIDEO or ohos.permission.WRITE_AUDIO + * @param mode Mode for open, for example: rw, r, w. * @param callback Callback return the fd of the file. */ open(mode: string, callback: AsyncCallback): void; @@ -141,30 +140,30 @@ declare namespace userfile_manager { * Open the file is located. * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @permission ohos.permission.READ_IMAGEVIDEO or ohos.permission.READ_AUDIO or ohos.permission.READ_DOCUMENT or ohos.permission.WRITE_MEDIA or ohos.permission.WRITE_IMAGEVIDEO or ohos.permission.WRITE_AUDIO or ohos.permission.WRITE_DOCUMENT - * @param mode mode for open, for example: rw, r, w. + * @permission ohos.permission.READ_IMAGEVIDEO or ohos.permission.READ_AUDIO or ohos.permission.WRITE_IMAGEVIDEO or ohos.permission.WRITE_AUDIO + * @param mode Mode for open, for example: rw, r, w. */ open(mode: string): Promise; /** * Close the file is located. * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @param fd fd of the file which had been opened - * @param callback no value will be returned. + * @param fd Fd of the file which had been opened + * @param callback No value will be returned. */ close(fd: number, callback: AsyncCallback): void; /** * Close the file is located. * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @param fd fd of the file which had been opened + * @param fd Fd of the file which had been opened */ close(fd: number): Promise; /** * Get thumbnail of the file when the file is located. * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @permission ohos.permission.READ_IMAGEVIDEO or ohos.permission.READ_AUDIO or ohos.permission.READ_DOCUMENT + * @permission ohos.permission.READ_IMAGEVIDEO or ohos.permission.READ_AUDIO * @param callback Callback used to return the thumbnail's pixelmap. */ getThumbnail(callback: AsyncCallback): void; @@ -172,25 +171,25 @@ declare namespace userfile_manager { * Get thumbnail of the file when the file is located. * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @permission ohos.permission.READ_IMAGEVIDEO or ohos.permission.READ_AUDIO or ohos.permission.READ_DOCUMENT - * @param size thumbnail's size + * @permission ohos.permission.READ_IMAGEVIDEO or ohos.permission.READ_AUDIO + * @param size Thumbnail's size * @param callback Callback used to return the thumbnail's pixelmap. */ - getThumbnail(size: Size, callback: AsyncCallback): void; + getThumbnail(size: image.Size, callback: AsyncCallback): void; /** * Get thumbnail of the file when the file is located. * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @permission ohos.permission.READ_IMAGEVIDEO or ohos.permission.READ_AUDIO or ohos.permission.READ_DOCUMENT - * @param size thumbnail's size + * @permission ohos.permission.READ_IMAGEVIDEO or ohos.permission.READ_AUDIO + * @param size Thumbnail's size */ - getThumbnail(size?: Size): Promise; + getThumbnail(size?: image.Size): Promise; /** * Set favorite for the file when the file is located. * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @permission ohos.permission.WRITE_IMAGEVIDEO or ohos.permission.WRITE_AUDIO or ohos.permission.WRITE_DOCUMENT - * @param isFavorite ture is favorite file, false is not favorite file + * @permission ohos.permission.WRITE_IMAGEVIDEO or ohos.permission.WRITE_AUDIO + * @param isFavorite True is favorite file, false is not favorite file * @param callback Callback used to return, No value is returned. */ favorite(isFavorite: boolean, callback: AsyncCallback): void; @@ -198,163 +197,76 @@ declare namespace userfile_manager { * Set favorite for the file when the file is located. * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @permission ohos.permission.WRITE_IMAGEVIDEO or ohos.permission.WRITE_AUDIO or ohos.permission.WRITE_DOCUMENT - * @param isFavorite ture is favorite file, false is not favorite file + ** @permission ohos.permission.WRITE_IMAGEVIDEO or ohos.permission.WRITE_AUDIO + * @param isFavorite True is favorite file, false is not favorite file */ favorite(isFavorite: boolean): Promise; - /** - * If the file is favorite when the file is located. - * @since 9 - * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @param callback Callback used to return true or false. - */ - isFavorite(callback: AsyncCallback): void; - /** - * If the file is favorite when the file is located. - * @since 9 - * @syscap SystemCapability.FileManagement.UserFileManager.Core - */ - isFavorite():Promise; - /** - * Set trash for the file when the file is located. - * @since 9 - * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @permission ohos.permission.WRITE_IMAGEVIDEO or ohos.permission.WRITE_AUDIO or ohos.permission.WRITE_DOCUMENT - * @param isTrash true is trashed file, false is not trashed file - * @param callback Callback used to return, No value is returned. - */ - trash(isTrash: boolean, callback: AsyncCallback): void; - /** - * Set trash for the file when the file is located. - * @since 9 - * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @permission ohos.permission.WRITE_IMAGEVIDEO or ohos.permission.WRITE_AUDIO or ohos.permission.WRITE_DOCUMENT - * @param isTrash true is trashed file, false is not trashed file - */ - trash(isTrash: boolean): Promise; - /** - * If the file is in trash when the file is located. - * @since 9 - * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @param callback Callback used to return true or false. - */ - isTrash(callback: AsyncCallback): void; - /** - * If the file is in trash when the file is located. - * @since 9 - * @syscap SystemCapability.FileManagement.UserFileManager.Core - */ - isTrash():Promise; } /** - * Describes MediaFetchOptions's selection + * Describes AUDIO TYPE FetchOptions's predicate * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ - enum FileKey { + enum AudioKey { /** * File uri * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ - URI = "uri", - /** - * Relative Path - * @since 9 - * @syscap SystemCapability.FileManagement.UserFileManager.Core - */ - RELATIVE_PATH = "relative_path", + URI, /** * File name * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ - DISPLAY_NAME = "display_name", + DISPLAY_NAME, /** * Date of the file creation * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ - DATE_ADDED = "date_added", + DATE_ADDED, /** * Modify date of the file * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ - DATE_MODIFIED = "date_modified", + DATE_MODIFIED, /** * Title of the file * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ - TITLE = "title", - } - - /** - * Describes AUDIO TYPE MediaFetchOptions's predicate - * @since 9 - * @syscap SystemCapability.FileManagement.UserFileManager.Core - */ - enum AudioKey { + TITLE, /** - * File uri - * @since 9 - * @syscap SystemCapability.FileManagement.UserFileManager.Core - */ - URI = "uri", - /** - * Relative Path - * @since 9 - * @syscap SystemCapability.FileManagement.UserFileManager.Core - */ - RELATIVE_PATH = "relative_path", - /** - * File name - * @since 9 - * @syscap SystemCapability.FileManagement.UserFileManager.Core - */ - DISPLAY_NAME = "display_name", - /** - * Date of the file creation - * @since 9 - * @syscap SystemCapability.FileManagement.UserFileManager.Core - */ - DATE_ADDED = "date_added", - /** - * Modify date of the file - * @since 9 - * @syscap SystemCapability.FileManagement.UserFileManager.Core - */ - DATE_MODIFIED = "date_modified", - /** - * Title of the file + * Artist of the audio file * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ - TITLE = "title", + ARTIST, /** - * Artist of the audio file + * Audio album of the audio file * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ - ARTIST = "artist", + AUDIOALBUM, /** - * Audio album of the audio file + * Duration of the audio file * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ - AUDIOALBUM = "audio_album", + DURATION, /** - * Duration of the audio and video file + * Favorite state of the file * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ - DURATION = "duration", + FAVORITE, } /** - * Describes Image, Video TYPE MediaFetchOptions's predicate + * Describes Image, Video TYPE FetchOptions's predicate * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ @@ -364,61 +276,73 @@ declare namespace userfile_manager { * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ - URI = "uri", + URI, /** - * Relative Path + * File type of the Asset * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ - RELATIVE_PATH = "relative_path", + FILE_TYPE, /** * File name * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ - DISPLAY_NAME = "display_name", + DISPLAY_NAME, /** * Date of the file creation * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ - DATE_ADDED = "date_added", + DATE_ADDED, /** * Modify date of the file * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ - DATE_MODIFIED = "date_modified", + DATE_MODIFIED, /** * Title of the file * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ - TITLE = "title", + TITLE, /** * Duration of the audio and video file * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ - DURATION = "duration", + DURATION, /** * Width of the image file * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ - WIDTH = "width", + WIDTH, /** * Height of the image file * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ - HEIGHT = "height", + HEIGHT, /** * Date taken of the file * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ - DATE_TAKEN = "date_taken", + DATE_TAKEN, + /** + * Orientation of the image file + * @since 9 + * @syscap SystemCapability.FileManagement.UserFileManager.Core + */ + ORIENTATION, + /** + * Favorite state of the file + * @since 9 + * @syscap SystemCapability.FileManagement.UserFileManager.Core + */ + FAVORITE, } /** @@ -428,64 +352,81 @@ declare namespace userfile_manager { */ enum AlbumKey { /** - * File uri + * Album uri * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ - URI = "uri", + URI, /** - * Relative Path + * File type of the Album * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ - RELATIVE_PATH = "relative_path", + FILE_TYPE, /** - * File name + * Album name * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ - DISPLAY_NAME = "display_name", + ALBUM_NAME, /** - * Date of the file creation + * Date of the Album creation * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ - DATE_ADDED = "date_added", + DATE_ADDED, /** - * Modify date of the file + * Modify date of the Album * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ - DATE_MODIFIED = "date_modified", + DATE_MODIFIED, } /** - * Fetch parameters applicable on images, videos, audios, albums and other media - * @syscap SystemCapability.FileManagement.UserFileManager.Core + * Fetch parameters * @since 9 + * @syscap SystemCapability.FileManagement.UserFileManager.Core */ - interface MediaFetchOptions { + interface FetchOptions { /** - * Fields to retrieve, for example, selections: "media_type =? OR media_type =?". + * Indicates the columns to query. * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core + * @param fetchColumns Indicates the columns to query. If this parameter is null, only uri, name, fileType will query. */ - selections: string; + fetchColumns: Array; /** - * Conditions for retrieval, for example, selectionArgs: [IMAGE, VIDEO]. + * Predicate to query * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core + * @param predicates Indicates filter criteria. */ - selectionArgs: Array; + predicates: dataSharePredicates.DataSharePredicates; + } + + /** + * Fetch parameters + * @since 9 + * @syscap SystemCapability.FileManagement.UserFileManager.Core + */ + interface AlbumFetchOptions { + /** + * Predicate to query + * @since 9 + * @syscap SystemCapability.FileManagement.UserFileManager.Core + * @param predicates Indicates filter criteria. + */ + predicates: dataSharePredicates.DataSharePredicates; } /** * Implements file retrieval. * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @import Import userfilemgr from '@ohos.filemanagement.userfile_manager' + * @import Import userFileManager from '@ohos.filemanagement.userFileManager' */ - interface FetchFileResult { + interface FetchResult { /** * Obtains the total number of files in the file retrieval result. * @since 9 @@ -503,7 +444,7 @@ declare namespace userfile_manager { */ isAfterLast(): boolean; /** - * Releases the FetchFileResult instance and invalidates it. Other methods cannot be called. + * Releases the FetchResult instance and invalidates it. Other methods cannot be called. * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ @@ -514,75 +455,77 @@ declare namespace userfile_manager { * @syscap SystemCapability.FileManagement.UserFileManager.Core * @param callback Callback used to return the file in the format of a FileAsset instance. */ - getFirstObject(callback: AsyncCallback): void; + getFirstObject(callback: AsyncCallback): void; /** - * Obtains the first FileAsset in the file retrieval result. This method uses a promise to return the file. + * Obtains the first T in the file retrieval result. This method uses a promise to return the file. * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @return A Promise instance used to return the file in the format of a FileAsset instance. + * @return A Promise instance used to return the file in the format of a T instance. */ - getFirstObject(): Promise; + getFirstObject(): Promise; /** - * Obtains the next FileAsset in the file retrieval result. + * Obtains the next T in the file retrieval result. * This method uses a callback to return the file. * Before calling this method, you must use isAfterLast() to check whether the result set points to the last row. * This method returns the next file only when True is returned for isAfterLast(). * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @param callback Callback used to return the file in the format of a FileAsset instance. + * @param callback Callback used to return the file in the format of a T instance. */ - getNextObject(callback: AsyncCallback): void; + getNextObject(callback: AsyncCallback): void; /** - * Obtains the next FileAsset in the file retrieval result. + * Obtains the next T in the file retrieval result. * This method uses a promise to return the file. * Before calling this method, you must use isAfterLast() to check whether the result set points to the last row. * This method returns the next file only when True is returned for isAfterLast(). * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @return A Promise instance used to return the file in the format of a FileAsset instance. + * @return A Promise instance used to return the file in the format of a T instance. */ - getNextObject(): Promise; + getNextObject(): Promise; /** - * Obtains the last FileAsset in the file retrieval result. This method uses a callback to return the file. + * Obtains the last T in the file retrieval result. This method uses a callback to return the file. * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @param callback Callback used to return the file in the format of a FileAsset instance. + * @param callback Callback used to return the file in the format of a T instance. */ - getLastObject(callback: AsyncCallback): void; + getLastObject(callback: AsyncCallback): void; /** - * Obtains the last FileAsset in the file retrieval result. This method uses a promise to return the file. + * Obtains the last T in the file retrieval result. This method uses a promise to return the file. * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @return A Promise instance used to return the file in the format of a FileAsset instance. + * @return A Promise instance used to return the file in the format of a T instance. */ - getLastObject(): Promise; + getLastObject(): Promise; /** - * Obtains the FileAsset with the specified index in the file retrieval result. + * Obtains the T with the specified index in the file retrieval result. * This method uses a callback to return the file. * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core * @param index Index of the file to obtain. - * @param callback Callback used to return the file in the format of a FileAsset instance. + * @throws {BusinessError} 13900020 - if type index is not number + * @param callback Callback used to return the file in the format of a T instance. */ - getPositionObject(index: number, callback: AsyncCallback): void; + getPositionObject(index: number, callback: AsyncCallback): void; /** - * Obtains the FileAsset with the specified index in the file retrieval result. + * Obtains the T with the specified index in the file retrieval result. * This method uses a promise to return the file. * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core * @param index Index of the file to obtain. - * @return A Promise instance used to return the file in the format of a FileAsset instance. + * @throws {BusinessError} 13900020 - if type index is not number + * @return A Promise instance used to return the file in the format of a T instance. */ - getPositionObject(index: number): Promise; + getPositionObject(index: number): Promise; } /** - * Defines the album. + * Defines the AbsAlbum. * * @syscap SystemCapability.FileManagement.UserFileManager.Core * @since 9 */ - interface Album { + interface AbsAlbum { /** * Album name. * @since 9 @@ -608,103 +551,57 @@ declare namespace userfile_manager { */ readonly count: number; /** - * Relative path for the album - * @since 9 - * @syscap SystemCapability.FileManagement.UserFileManager.Core - */ - readonly relativePath: string; - /** - * coverUri for the album + * CoverUri for the album * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core */ readonly coverUri: string; - /** - * Modify the meta data for the album + * Obtains files in an album. This method uses an asynchronous callback to return the files. * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @permission ohos.permission.WRITE_IMAGEVIDEO or ohos.permission.WRITE_AUDIO or ohos.permission.WRITE_DOCUMENT - * @param callback, no value will be returned. + * @permission ohos.permission.READ_IMAGEVIDEO + * @param type Detemined which kinds of asset to retrive. + * @param options Retrieval options. + * @throws {BusinessError} 13900020 - if type options is not FetchOptions + * @param callback Callback used to return the files in the format of a FetchResult instance. */ - commitModify(callback: AsyncCallback): void; - /** - * Modify the meta data for the album - * @since 9 - * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @permission ohos.permission.WRITE_IMAGEVIDEO or ohos.permission.WRITE_AUDIO or ohos.permission.WRITE_DOCUMENT - */ - commitModify(): Promise; - /** - * SObtains files in an album. This method uses an asynchronous callback to return the files. - * @since 9 - * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @permission ohos.permission.READ_IMAGEVIDEO or ohos.permission.READ_AUDIO or ohos.permission.READ_DOCUMENT - * @param callback Callback used to return the files in the format of a FetchFileResult instance. - */ - getFileAssets(type: Array, callback: AsyncCallback): void; - /** - * SObtains files in an album. This method uses an asynchronous callback to return the files. - * @since 9 - * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @permission ohos.permission.READ_IMAGEVIDEO or ohos.permission.READ_AUDIO or ohos.permission.READ_DOCUMENT - * @param options Media retrieval options. - * @param callback Callback used to return the files in the format of a FetchFileResult instance. - */ - getFileAssets(type: Array, options: MediaFetchOptions, callback: AsyncCallback): void; + getPhotoAssets(options: FetchOptions, callback: AsyncCallback>): void; /** * Obtains files in an album. This method uses a promise to return the files. * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @permission ohos.permission.READ_IMAGEVIDEO or ohos.permission.READ_AUDIO or ohos.permission.READ_DOCUMENT - * @param options Media retrieval options. - * @return A Promise instance used to return the files in the format of a FetchFileResult instance. + * @permission ohos.permission.READ_IMAGEVIDEO + * @param type Detemined which kinds of asset to retrive. + * @param options Retrieval options. + * @throws {BusinessError} 13900020 - if type options is not FetchOptions + * @return A Promise instance used to return the files in the format of a FetchResult instance. */ - getFileAssets(type: Array, options?: MediaFetchOptions): Promise; + getPhotoAssets(options: FetchOptions): Promise>; } /** - * Enumeration public directory that predefined - * @since 9 + * Defines the album. + * * @syscap SystemCapability.FileManagement.UserFileManager.Core + * @since 9 */ - enum DirectoryType { + interface Album extends AbsAlbum { /** - * predefined public directory for files token by Camera. - * @since 9 - * @syscap SystemCapability.FileManagement.UserFileManager.Core - */ - DIR_CAMERA = 0, - /** - * predefined public directory for VIDEO files. - * @since 9 - * @syscap SystemCapability.FileManagement.UserFileManager.Core - */ - DIR_VIDEO, - /** - * predefined public directory for IMAGE files. - * @since 9 - * @syscap SystemCapability.FileManagement.UserFileManager.Core - */ - DIR_IMAGE, - /** - * predefined public directory for AUDIO files. - * @since 9 - * @syscap SystemCapability.FileManagement.UserFileManager.Core - */ - DIR_AUDIO, - /** - * predefined public directory for DOCUMENTS files. + * Modify the meta data for the album * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core + * @permission ohos.permission.WRITE_IMAGEVIDEO + * @param callback No value will be returned. */ - DIR_DOCUMENTS, + commitModify(callback: AsyncCallback): void; /** - * predefined public directory for DOWNLOAD files. + * Modify the meta data for the album * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core + * @permission ohos.permission.WRITE_IMAGEVIDEO */ - DIR_DOWNLOAD + commitModify(): Promise; } /** @@ -715,139 +612,163 @@ declare namespace userfile_manager { */ interface UserFileManager { /** - * get system predefined root dir, use to create file asset by relative path + * Query photo, video assets * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @param type, public directory predefined in DirectoryType. - * @param callback Callback return the FetchFileResult. + * @permission ohos.permission.READ_IMAGEVIDEO + * @param options retrieval options. + * @throws {BusinessError} 13900020 - if type options is not FetchOptions + * @param callback Callback return the FetchResult. */ - getPublicDirectory(type: DirectoryType, callback: AsyncCallback): void; + getPhotoAssets(options: FetchOptions, callback: AsyncCallback>): void; /** - * get system predefined root dir, use to create file asset by relative path + * Query photo, video assets * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @param type public directory predefined in DirectoryType. - * @return A promise instance used to return the public directory in the format of string + * @permission ohos.permission.READ_IMAGEVIDEO + * @param type Detemined which kinds of asset to retrive. + * @param options Retrieval options. + * @throws {BusinessError} 13900020 - if type options is not FetchOptions + * @return A promise instance used to return the files in the format of a FetchResult instance */ - getPublicDirectory(type: DirectoryType): Promise; + getPhotoAssets(options: FetchOptions): Promise>; /** - * query all assets just for count & first cover - * if need all data, getAllObject from FetchFileResult - * @since 9 + * Create Photo Asset * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @permission ohos.permission.READ_IMAGEVIDEO or ohos.permission.READ_AUDIO or ohos.permission.READ_DOCUMENT - * @param options, Media retrieval options. - * @param callback, Callback return the FetchFileResult. + * @permission ohos.permission.WRITE_IMAGEVIDEO + * @param displayName File name + * @param albumUri Asset will put into the album. + * @param callback Callback used to return the FileAsset + * @throws {BusinessError} 13900020 - if type displayName or albumUri is not string + * @throws {BusinessError} 14000001 - if type displayName invalid + * @systemapi + * @since 9 */ - getFileAssets(type: Array, options: MediaFetchOptions, callback: AsyncCallback): void; + createPhotoAsset(displayName: string, albumUri: string, callback: AsyncCallback): void; /** - * query all assets just for count & first cover - * if need all data, getAllObject from FetchFileResult + * Create Photo Asset + * @syscap SystemCapability.FileManagement.UserFileManager.Core + * @permission ohos.permission.WRITE_IMAGEVIDEO + * @param displayName File name + * @param callback Callback used to return the FileAsset + * @throws {BusinessError} 13900020 - if type displayName is not string + * @throws {BusinessError} 14000001 - if type displayName invalid + * @systemapi * @since 9 + */ + createPhotoAsset(displayName: string, callback: AsyncCallback): void; + /** + * Create Photo Asset * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @permission ohos.permission.READ_IMAGEVIDEO or ohos.permission.READ_AUDIO or ohos.permission.READ_DOCUMENT - * @param options Media retrieval options. - * @return A promise instance used to return the files in the format of a FetchFileResult instance + * @permission ohos.permission.WRITE_IMAGEVIDEO + * @param displayName File name + * @param albumUri Album uri is optional, asset will put into the default album without albumUri + * @return A Promise instance used to return the FileAsset + * @throws {BusinessError} 13900020 - if type displayName or albumUri is not string + * @systemapi + * @since 9 */ - getFileAssets(type: Array, options: MediaFetchOptions): Promise; + createPhotoAsset(displayName: string, albumUri?: string): Promise; /** - * Turn on mornitor the data changes by media type + * Obtains albums based on the retrieval options. This method uses an asynchronous callback to return. * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @param type one of 'deviceChange','albumChange','imageChange','audioChange','videoChange','fileChange','remoteFileChange' - * @param callback no value returned + * @permission ohos.permission.READ_IMAGEVIDEO + * @param options Retrieval options. + * @param callback Callback used to return an album array. + * @throws {BusinessError} 13900020 - if type options is not AlbumFetchOptions */ - on(type: 'deviceChange'|'albumChange'|'imageChange'|'audioChange'|'videoChange'|'fileChange'|'remoteFileChange', callback: Callback): void; + getPhotoAlbums(options: AlbumFetchOptions, callback: AsyncCallback>): void; /** - * Turn off mornitor the data changes by media type + * Obtains albums based on the retrieval options. This method uses a promise to return the albums. * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @param type one of 'deviceChange','albumChange','imageChange','audioChange','videoChange','fileChange','remoteFileChange' - * @param callback no value returned + * @permission ohos.permission.READ_IMAGEVIDEO + * @param options Retrieval options. + * @return A Promise instance used to return an album array. + * @throws {BusinessError} 13900020 - if type options is not AlbumFetchOptions */ - off(type: 'deviceChange'|'albumChange'|'imageChange'|'audioChange'|'videoChange'|'fileChange'|'remoteFileChange', callback?: Callback): void; + getPhotoAlbums(options: AlbumFetchOptions): Promise>; /** - * Create File Asset + * Obtains system private albums based on the private album type. This method uses an asynchronous callback to return. * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @permission ohos.permission.WRITE_IMAGEVIDEO or ohos.permission.WRITE_AUDIO or ohos.permission.WRITE_DOCUMENT - * @param mediaType mediaType for example:IMAGE, VIDEO, AUDIO, FILE - * @param displayName file name - * @param relativePath relative path - * @param callback Callback used to return the FileAsset + * @permission ohos.permission.READ_IMAGEVIDEO + * @param type Private album type + * @param callback Used to return a private album FetchResult. + * @throws {BusinessError} 13900020 - if type type is not PrivateAlbumType * @systemapi * @since 9 */ - createAsset(mediaType: MediaType, displayName: string, relativePath: string, callback: AsyncCallback): void; + getPrivateAlbum(type: PrivateAlbumType, callback: AsyncCallback>): void; /** - * Create File Asset + * Obtains system private albums based on the private album type. This method uses a promise to return. * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @permission ohos.permission.WRITE_IMAGEVIDEO or ohos.permission.WRITE_AUDIO or ohos.permission.WRITE_DOCUMENT - * @param mediaType mediaType for example:IMAGE, VIDEO, AUDIO, FILE - * @param displayName file name - * @param relativePath relative path - * @return A Promise instance used to return the FileAsset + * @permission ohos.permission.READ_IMAGEVIDEO + * @param type Private album type + * @return A Promise instance used to return a private album FetchResult. + * @throws {BusinessError} 13900020 - if type type is not PrivateAlbumType * @systemapi * @since 9 */ - createAsset(mediaType: MediaType, displayName: string, relativePath: string): Promise; + getPrivateAlbum(type: PrivateAlbumType): Promise>; /** - * Delete File Asset + * Query audio assets * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @permission ohos.permission.WRITE_IMAGEVIDEO or ohos.permission.WRITE_AUDIO or ohos.permission.WRITE_DOCUMENT - * @param uri FileAsset's URI - * @param callback no value returned - * @systemapi + * @permission ohos.permission.READ_AUDIO + * @param options Retrieval options. + * @throws {BusinessError} 13900020 - if type options is not FetchOptions + * @param callback Callback return the FetchResult. */ - deleteAsset(uri: string, callback: AsyncCallback): void; + getAudioAssets(options: FetchOptions, callback: AsyncCallback>): void; /** - * Delete File Asset + * Query audio assets * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @permission ohos.permission.WRITE_IMAGEVIDEO or ohos.permission.WRITE_AUDIO or ohos.permission.WRITE_DOCUMENT - * @param uri, FileAsset's URI - * @return A Promise instance, no value returned - * @systemapi + * @permission ohos.permission.READ_AUDIO + * @param type Detemined which kinds of asset to retrive. + * @param options Retrieval options. + * @throws {BusinessError} 13900020 - if type options is not FetchOptions + * @return A promise instance used to return the files in the format of a FetchResult instance */ - deleteAsset(uri: string): Promise; + getAudioAssets(options: FetchOptions): Promise>; /** - * Obtains albums based on the media retrieval options. This method uses an asynchronous callback to return. + * Delete Asset + * @since 9 + * @syscap SystemCapability.FileManagement.UserFileManager.Core + * @permission ohos.permission.READ_IMAGEVIDEO and ohos.permission.WRITE_IMAGEVIDEO or ohos.permission.READ_AUDIO and ohos.permission.WRITE_AUDIO + * @param uri Uri of asset + * @param callback No value returned + * @throws {BusinessError} 13900020 - if type uri is not string + * @systemapi + */ + delete(uri: string, callback: AsyncCallback): void; + /** + * Delete Asset * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @permission ohos.permission.READ_IMAGEVIDEO or ohos.permission.READ_AUDIO or ohos.permission.READ_DOCUMENT - * @param options Media retrieval options. - * @param callback Callback used to return an album array. + * @permission ohos.permission.READ_IMAGEVIDEO and ohos.permission.WRITE_IMAGEVIDEO or ohos.permission.READ_AUDIO and ohos.permission.WRITE_AUDIO + * @param uri Uri of asset + * @return A Promise instance, no value returned + * @throws {BusinessError} 13900020 - if type uri is not string */ - getAlbums(type: Array, options: MediaFetchOptions, callback: AsyncCallback>): void; + delete(uri: string): Promise; /** - * Obtains albums based on the media retrieval options. This method uses a promise to return the albums. + * Turn on mornitor the data changes * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @permission ohos.permission.READ_IMAGEVIDEO or ohos.permission.READ_AUDIO or ohos.permission.READ_DOCUMENT - * @param option Media retrieval options. - * @return A Promise instance used to return an album array. + * @param type One of 'deviceChange','albumChange','imageChange','audioChange','videoChange','remoteFileChange' + * @param callback No value returned */ - getAlbums(type: Array, options: MediaFetchOptions): Promise>; + on(type: ChangeEvent, callback: Callback): void; /** - * Obtains system private albums based on the virtual album type. This method uses an asynchronous callback to return. - * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @permission ohos.permission.READ_IMAGEVIDEO or ohos.permission.READ_AUDIO or ohos.permission.READ_DOCUMENTS - * @param type virtual album type - * @param callback used to return a virtual album array. - * @systemapi + * Turn off mornitor the data changes * @since 9 + * @syscap SystemCapability.FileManagement.UserFileManager.Core + * @param type One of 'deviceChange','albumChange','imageChange','audioChange','videoChange','remoteFileChange' + * @param callback No value returned */ - getPrivateAlbum(type: VirtualAlbumType, callback: AsyncCallback>): void; - /** - * Obtains system private albums based on the virtual album type. This method uses a promise to return. - * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @permission ohos.permission.READ_IMAGEVIDEO or ohos.permission.READ_AUDIO or ohos.permission.READ_DOCUMENTS - * @param type virtual album type - * @return A Promise instance used to return a virtual album array. - * @systemapi - * @since 9 - */ - getPrivateAlbum(type: VirtualAlbumType): Promise>; + off(type: ChangeEvent, callback?: Callback): void; /** * Get Active Peer device information * @since 9 @@ -896,27 +817,7 @@ declare namespace userfile_manager { } /** - * thumbnail's size which have width and heigh - * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @since 9 - */ - interface Size { - /** - * Width of image file - * @since 9 - * @syscap SystemCapability.FileManagement.UserFileManager.Core - */ - width: number; - /** - * Height of image file - * @since 9 - * @syscap SystemCapability.FileManagement.UserFileManager.Core - */ - height: number; - } - - /** - * peer devices' information + * Peer devices' information * @syscap SystemCapability.FileManagement.UserFileManager.DistributedCore * @systemapi * @since 9 @@ -946,12 +847,12 @@ declare namespace userfile_manager { } /** - * Virtual album type + * Private album type * @syscap SystemCapability.FileManagement.UserFileManager.Core * @systemapi * @since 9 */ - enum VirtualAlbumType { + enum PrivateAlbumType { /** * System Private Album: Favorite album * @syscap SystemCapability.FileManagement.UserFileManager.Core @@ -967,35 +868,56 @@ declare namespace userfile_manager { */ TYPE_TRASH, } + /** - * Defines the virtual album + * Defines the private album * * @syscap SystemCapability.FileManagement.UserFileManager.Core * @systemapi * @since 9 */ - interface VirtualAlbum { + interface PrivateAlbum extends AbsAlbum { /** - * Obtains files in an virtual album. This method uses an asynchronous callback to return the files. + * Delete asset permanently from Trash bin, only support the Trash album + * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @permission ohos.permission.READ_IMAGEVIDEO or ohos.permission.READ_AUDIO or ohos.permission.READ_DOCUMENTS - * @param options Media retrieval options. - * @param callback Callback used to return the files in the format of a FetchFileResult instance. + * @param uri uri of asset + * @permission ohos.permission.READ_IMAGEVIDEO and ohos.permission.WRITE_IMAGEVIDEO or ohos.permission.READ_AUDIO and ohos.permission.WRITE_AUDIO + * @param callback No value returned * @systemapi + */ + delete(uri: string, callback: AsyncCallback): void; + /** + * Delete asset permanently from Trash bin, only support the Trash album * @since 9 + * @syscap SystemCapability.FileManagement.UserFileManager.Core + * @param uri Uri of asset + * @permission ohos.permission.READ_IMAGEVIDEO and ohos.permission.WRITE_IMAGEVIDEO or ohos.permission.READ_AUDIO and ohos.permission.WRITE_AUDIO + * @return A Promise instance, no value returned + * @systemapi */ - getFileAssets(type: Array, options: MediaFetchOptions, callback: AsyncCallback): void; + delete(uri: string): Promise; /** - * Obtains files in an virtual album. This method uses a promise to return the files. + * Recover asset from Trash bin, only support the Trash album + * @since 9 * @syscap SystemCapability.FileManagement.UserFileManager.Core - * @permission ohos.permission.READ_IMAGEVIDEO or ohos.permission.READ_AUDIO or ohos.permission.READ_DOCUMENTS - * @param options Media retrieval options. - * @return A Promise instance used to return the files in the format of a FetchFileResult instance. + * @param uri Uri of asset + * @permission ohos.permission.READ_IMAGEVIDEO and ohos.permission.WRITE_IMAGEVIDEO or ohos.permission.READ_AUDIO and ohos.permission.WRITE_AUDIO + * @param callback No value returned * @systemapi + */ + recover(uri: string, callback: AsyncCallback): void; + /** + * Recover asset from Trash bin, only support the Trash album * @since 9 + * @param uri Uri of asset + * @syscap SystemCapability.FileManagement.UserFileManager.Core + * @permission ohos.permission.READ_IMAGEVIDEO and ohos.permission.WRITE_IMAGEVIDEO or ohos.permission.READ_AUDIO and ohos.permission.WRITE_AUDIO + * @return A Promise instance, no value returned + * @systemapi */ - getFileAssets(type: Array, options: MediaFetchOptions): Promise; + recover(uri: string): Promise; } } -export default userfile_manager; +export default userFileManager; \ No newline at end of file