import { NativeModule, PermissionResponse, requireNativeModule } from 'expo-modules-core'; import { GranularPermission } from './MediaLibraryNext.types'; import { Album } from './types/Album'; import { Asset } from './types/Asset'; import { Query } from './types/Query'; declare class ExpoMediaLibraryNextModule extends NativeModule { Asset: typeof Asset; Album: typeof Album; Query: typeof Query; createAsset(filePath: string, album?: Album): Promise; deleteAssets(assets: Asset[]): Promise; createAlbum(name: string, assetsRefs: string[] | Asset[], moveAssets?: boolean): Promise; deleteAlbums(albums: Album[], deleteAssets?: boolean): Promise; getAlbum(title: string): Promise; requestPermissionsAsync( writeOnly?: boolean, granularPermissions?: GranularPermission[] ): Promise; } export default requireNativeModule('ExpoMediaLibraryNext');