import { logger } from '../../helpers/logger'
import * as memoizee from 'memoizee'
-type GetFilePathResult = { isOwned: boolean, path: string } | undefined
+type GetFilePathResult = { isOwned: boolean, path: string, downloadName?: string } | undefined
export abstract class AbstractVideoStaticFileCache <T> {
maxAge,
max,
promise: true,
- dispose: (result: GetFilePathResult) => {
- if (result.isOwned !== true) {
+ dispose: (result?: GetFilePathResult) => {
+ if (result && result.isOwned !== true) {
remove(result.path)
.then(() => logger.debug('%s removed from %s', result.path, this.constructor.name))
.catch(err => logger.error('Cannot remove %s from cache %s.', result.path, this.constructor.name, { err }))