files.d.ts 1.3 KB

12345678910111213141516171819202122232425262728
  1. import { BaseCollection } from "./base_collection";
  2. import { File } from "../models/file";
  3. import { QueuedProcess } from "../models/queued_process";
  4. import { UploadFileParams } from "../interfaces/upload_file_params";
  5. import { DownloadFileParams } from "../interfaces/download_file_params";
  6. import { Keyable } from "../interfaces/keyable";
  7. import { ProjectWithPagination } from "../interfaces/project_with_pagination";
  8. import { PaginatedResult } from "../interfaces/paginated_result";
  9. import { ProjectOnly } from "../interfaces/project_only";
  10. interface ListFileParams extends ProjectWithPagination {
  11. filter_filename?: string;
  12. }
  13. type FileDeleted = {
  14. project_id: string;
  15. file_deleted: boolean;
  16. };
  17. export declare class Files extends BaseCollection {
  18. protected static rootElementName: string;
  19. protected static prefixURI: string;
  20. protected static elementClass: typeof File;
  21. protected static secondaryElementNameSingular: string;
  22. protected static secondaryElementClass: typeof QueuedProcess;
  23. list(request_params: ListFileParams): Promise<PaginatedResult<File>>;
  24. upload(project_id: string, upload: UploadFileParams): Promise<QueuedProcess>;
  25. download(project_id: string, download: DownloadFileParams): Promise<Keyable>;
  26. delete(file_id: string | number, request_params: ProjectOnly): Promise<FileDeleted>;
  27. }
  28. export {};