contributors.d.ts 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940
  1. import { BaseCollection } from "./base_collection";
  2. import { Contributor } from "../models/contributor";
  3. import { ProjectWithPagination } from "../interfaces/project_with_pagination";
  4. import { PaginatedResult } from "../interfaces/paginated_result";
  5. import { ProjectOnly } from "../interfaces/project_only";
  6. type ContributorLanguages = {
  7. lang_iso: string;
  8. is_writable?: boolean;
  9. };
  10. type ContributorRights = "upload" | "activity" | "download" | "settings" | "create_branches" | "statistics" | "keys" | "screenshots" | "glossary" | "contributors" | "languages" | "tasks";
  11. type ContributorCreateData = {
  12. email: string;
  13. fullname?: string;
  14. is_admin?: boolean;
  15. is_reviewer?: boolean;
  16. languages: ContributorLanguages[];
  17. admin_rights?: ContributorRights[];
  18. };
  19. type ContributorUpdateData = {
  20. is_admin?: boolean;
  21. is_reviewer?: boolean;
  22. languages?: ContributorLanguages[];
  23. admin_rights?: ContributorRights[];
  24. };
  25. type ContributorDeleted = {
  26. project_id: string;
  27. contributor_deleted: boolean;
  28. };
  29. export declare class Contributors extends BaseCollection {
  30. protected static rootElementName: string;
  31. protected static rootElementNameSingular: string;
  32. protected static prefixURI: string;
  33. protected static elementClass: typeof Contributor;
  34. list(request_params: ProjectWithPagination): Promise<PaginatedResult<Contributor>>;
  35. create(contributor_params: ContributorCreateData | ContributorCreateData[], request_params: ProjectOnly): Promise<Contributor[]>;
  36. get(contributor_id: string | number, request_params: ProjectOnly): Promise<Contributor>;
  37. update(contributor_id: string | number, contributor_params: ContributorUpdateData, request_params: ProjectOnly): Promise<Contributor>;
  38. delete(contributor_id: string | number, request_params: ProjectOnly): Promise<ContributorDeleted>;
  39. }
  40. export {};