35 lines
1.3 KiB
TypeScript
35 lines
1.3 KiB
TypeScript
import { Repository } from 'typeorm';
|
|
import { StorageService } from '../storage/storage.service';
|
|
import { FilterMediaAssetsDto } from './dto/filter-media-assets.dto';
|
|
import { UpdateMediaAssetDto } from './dto/update-media-asset.dto';
|
|
import { UploadMediaDto } from './dto/upload-media.dto';
|
|
import { MediaAsset } from './entities/media-asset.entity';
|
|
import { MediaSection } from './enums/media-section.enum';
|
|
export declare class MediaService {
|
|
private readonly mediaAssetsRepository;
|
|
private readonly storageService;
|
|
constructor(mediaAssetsRepository: Repository<MediaAsset>, storageService: StorageService);
|
|
uploadMany(files: Express.Multer.File[], dto: UploadMediaDto): Promise<MediaAsset[]>;
|
|
findAll(filters: FilterMediaAssetsDto): Promise<{
|
|
items: MediaAsset[];
|
|
meta: {
|
|
total: number;
|
|
page: number;
|
|
limit: number;
|
|
};
|
|
}>;
|
|
getLibraryOverview(): Promise<{
|
|
section: MediaSection;
|
|
folder: string;
|
|
count: number;
|
|
}[]>;
|
|
findOne(id: string): Promise<MediaAsset>;
|
|
update(id: string, dto: UpdateMediaAssetDto): Promise<MediaAsset>;
|
|
remove(id: string): Promise<{
|
|
message: string;
|
|
}>;
|
|
private inferSection;
|
|
private buildStorageFolder;
|
|
private normalizeFolder;
|
|
}
|