import { Media } from './entities/media.entity';
import { BaseTenantService } from '@/common/base/service/base-crud.service';
import { TenantConnectionService } from '../tenant/tenant-connection.service';
export declare class MediaService extends BaseTenantService<Media> {
    protected readonly tenantConnectionService: TenantConnectionService;
    private readonly request;
    protected entity: typeof Media;
    constructor(tenantConnectionService: TenantConnectionService, request: any);
    private get userId();
    private getRepo;
    findAll(): Promise<Media[]>;
    findOne(id: number): Promise<Media>;
    create(data: Partial<Media>): Promise<Media>;
    update(id: number, data: Partial<Media> & {
        renamePhysical?: boolean;
    }): Promise<Media>;
    remove(id: number): Promise<void>;
    createFolder(name: string, parent_id?: number): Promise<Media>;
    saveFileInfo(file: Express.Multer.File, parent_id?: number): Promise<Media>;
    saveMultipleFileInfo(files: Express.Multer.File[], parent_id?: number): Promise<Media[]>;
    deleteManyMedia(ids: number[]): Promise<{
        deleted: number;
    }>;
    private deleteFolderRecursive;
    moveToTrash(ids: number[]): Promise<{
        moved: number;
    }>;
    private moveFolderToTrash;
    emptyTrash(): Promise<{
        deleted: number;
    }>;
    restore(ids: number[]): Promise<{
        restored: number;
    }>;
    private restoreFolderRecursive;
}
