-
Notifications
You must be signed in to change notification settings - Fork 10
Expand file tree
/
Copy pathIFilesRepository.ts
More file actions
68 lines (55 loc) · 2.24 KB
/
IFilesRepository.ts
File metadata and controls
68 lines (55 loc) · 2.24 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
import { FilesSubset } from '../models/FilesSubset'
import { FileDataTable } from '../models/FileDataTable'
import { FileUserPermissions } from '../models/FileUserPermissions'
import { FileSearchCriteria, FileOrderCriteria } from '../models/FileCriteria'
import { FileCounts } from '../models/FileCounts'
import { FileDownloadSizeMode } from '../models/FileDownloadSizeMode'
import { FileModel } from '../models/FileModel'
import { Dataset } from '../../../datasets'
import { FileUploadDestination } from '../models/FileUploadDestination'
import { UploadedFileDTO } from '../dtos/UploadedFileDTO'
export interface IFilesRepository {
getDatasetFiles(
datasetId: number | string,
datasetVersionId: string,
includeDeaccessioned: boolean,
fileOrderCriteria: FileOrderCriteria,
limit?: number,
offset?: number,
fileSearchCriteria?: FileSearchCriteria
): Promise<FilesSubset>
getDatasetFileCounts(
datasetId: number | string,
datasetVersionId: string,
includeDeaccessioned: boolean,
fileSearchCriteria?: FileSearchCriteria
): Promise<FileCounts>
getDatasetFilesTotalDownloadSize(
datasetId: number | string,
datasetVersionId: string,
includeDeaccessioned: boolean,
fileDownloadSizeMode: FileDownloadSizeMode,
fileSearchCriteria?: FileSearchCriteria
): Promise<number>
getFileDownloadCount(fileId: number | string): Promise<number>
getFileUserPermissions(fileId: number | string): Promise<FileUserPermissions>
getFileDataTables(fileId: number | string): Promise<FileDataTable[]>
getFile(
fileId: number | string,
datasetVersionId: string,
returnDatasetVersion: boolean
): Promise<FileModel | [FileModel, Dataset]>
getFileCitation(
fileId: number | string,
datasetVersionId: string,
includeDeaccessioned: boolean
): Promise<string>
getFileUploadDestination(datasetId: number | string, file: File): Promise<FileUploadDestination>
addUploadedFilesToDataset(
datasetId: number | string,
uploadedFileDTOs: UploadedFileDTO[]
): Promise<undefined>
deleteFile(fileId: number | string): Promise<undefined>
replaceFile(fileId: number, uploadedFileDTO: UploadedFileDTO): Promise<undefined>
restrictFile(fileId: number | string, restrict: boolean): Promise<undefined>
}