github.com/quickfeed/quickfeed@v0.0.0-20240507093252-ed8ca812a09c/public/proto/qf/requests_pb.ts (about)

     1  // @generated by protoc-gen-es v1.8.0 with parameter "target=ts"
     2  // @generated from file qf/requests.proto (package qf, syntax proto3)
     3  /* eslint-disable */
     4  // @ts-nocheck
     5  
     6  import type { BinaryReadOptions, FieldList, JsonReadOptions, JsonValue, PartialMessage, PlainMessage } from "@bufbuild/protobuf";
     7  import { Message, proto3, protoInt64 } from "@bufbuild/protobuf";
     8  import { Enrollment_UserStatus, Review, Submission_Status, Submissions } from "./types_pb.js";
     9  
    10  /**
    11   * @generated from message qf.CourseSubmissions
    12   */
    13  export class CourseSubmissions extends Message<CourseSubmissions> {
    14    /**
    15     * @generated from field: map<uint64, qf.Submissions> submissions = 1;
    16     */
    17    submissions: { [key: string]: Submissions } = {};
    18  
    19    constructor(data?: PartialMessage<CourseSubmissions>) {
    20      super();
    21      proto3.util.initPartial(data, this);
    22    }
    23  
    24    static readonly runtime: typeof proto3 = proto3;
    25    static readonly typeName = "qf.CourseSubmissions";
    26    static readonly fields: FieldList = proto3.util.newFieldList(() => [
    27      { no: 1, name: "submissions", kind: "map", K: 4 /* ScalarType.UINT64 */, V: {kind: "message", T: Submissions} },
    28    ]);
    29  
    30    static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): CourseSubmissions {
    31      return new CourseSubmissions().fromBinary(bytes, options);
    32    }
    33  
    34    static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): CourseSubmissions {
    35      return new CourseSubmissions().fromJson(jsonValue, options);
    36    }
    37  
    38    static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): CourseSubmissions {
    39      return new CourseSubmissions().fromJsonString(jsonString, options);
    40    }
    41  
    42    static equals(a: CourseSubmissions | PlainMessage<CourseSubmissions> | undefined, b: CourseSubmissions | PlainMessage<CourseSubmissions> | undefined): boolean {
    43      return proto3.util.equals(CourseSubmissions, a, b);
    44    }
    45  }
    46  
    47  /**
    48   * @generated from message qf.ReviewRequest
    49   */
    50  export class ReviewRequest extends Message<ReviewRequest> {
    51    /**
    52     * @generated from field: uint64 courseID = 1;
    53     */
    54    courseID = protoInt64.zero;
    55  
    56    /**
    57     * @generated from field: qf.Review review = 2;
    58     */
    59    review?: Review;
    60  
    61    constructor(data?: PartialMessage<ReviewRequest>) {
    62      super();
    63      proto3.util.initPartial(data, this);
    64    }
    65  
    66    static readonly runtime: typeof proto3 = proto3;
    67    static readonly typeName = "qf.ReviewRequest";
    68    static readonly fields: FieldList = proto3.util.newFieldList(() => [
    69      { no: 1, name: "courseID", kind: "scalar", T: 4 /* ScalarType.UINT64 */ },
    70      { no: 2, name: "review", kind: "message", T: Review },
    71    ]);
    72  
    73    static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): ReviewRequest {
    74      return new ReviewRequest().fromBinary(bytes, options);
    75    }
    76  
    77    static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): ReviewRequest {
    78      return new ReviewRequest().fromJson(jsonValue, options);
    79    }
    80  
    81    static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): ReviewRequest {
    82      return new ReviewRequest().fromJsonString(jsonString, options);
    83    }
    84  
    85    static equals(a: ReviewRequest | PlainMessage<ReviewRequest> | undefined, b: ReviewRequest | PlainMessage<ReviewRequest> | undefined): boolean {
    86      return proto3.util.equals(ReviewRequest, a, b);
    87    }
    88  }
    89  
    90  /**
    91   * @generated from message qf.CourseRequest
    92   */
    93  export class CourseRequest extends Message<CourseRequest> {
    94    /**
    95     * @generated from field: uint64 courseID = 1;
    96     */
    97    courseID = protoInt64.zero;
    98  
    99    constructor(data?: PartialMessage<CourseRequest>) {
   100      super();
   101      proto3.util.initPartial(data, this);
   102    }
   103  
   104    static readonly runtime: typeof proto3 = proto3;
   105    static readonly typeName = "qf.CourseRequest";
   106    static readonly fields: FieldList = proto3.util.newFieldList(() => [
   107      { no: 1, name: "courseID", kind: "scalar", T: 4 /* ScalarType.UINT64 */ },
   108    ]);
   109  
   110    static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): CourseRequest {
   111      return new CourseRequest().fromBinary(bytes, options);
   112    }
   113  
   114    static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): CourseRequest {
   115      return new CourseRequest().fromJson(jsonValue, options);
   116    }
   117  
   118    static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): CourseRequest {
   119      return new CourseRequest().fromJsonString(jsonString, options);
   120    }
   121  
   122    static equals(a: CourseRequest | PlainMessage<CourseRequest> | undefined, b: CourseRequest | PlainMessage<CourseRequest> | undefined): boolean {
   123      return proto3.util.equals(CourseRequest, a, b);
   124    }
   125  }
   126  
   127  /**
   128   * @generated from message qf.GroupRequest
   129   */
   130  export class GroupRequest extends Message<GroupRequest> {
   131    /**
   132     * @generated from field: uint64 courseID = 1;
   133     */
   134    courseID = protoInt64.zero;
   135  
   136    /**
   137     * @generated from field: uint64 userID = 2;
   138     */
   139    userID = protoInt64.zero;
   140  
   141    /**
   142     * @generated from field: uint64 groupID = 3;
   143     */
   144    groupID = protoInt64.zero;
   145  
   146    constructor(data?: PartialMessage<GroupRequest>) {
   147      super();
   148      proto3.util.initPartial(data, this);
   149    }
   150  
   151    static readonly runtime: typeof proto3 = proto3;
   152    static readonly typeName = "qf.GroupRequest";
   153    static readonly fields: FieldList = proto3.util.newFieldList(() => [
   154      { no: 1, name: "courseID", kind: "scalar", T: 4 /* ScalarType.UINT64 */ },
   155      { no: 2, name: "userID", kind: "scalar", T: 4 /* ScalarType.UINT64 */ },
   156      { no: 3, name: "groupID", kind: "scalar", T: 4 /* ScalarType.UINT64 */ },
   157    ]);
   158  
   159    static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): GroupRequest {
   160      return new GroupRequest().fromBinary(bytes, options);
   161    }
   162  
   163    static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): GroupRequest {
   164      return new GroupRequest().fromJson(jsonValue, options);
   165    }
   166  
   167    static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): GroupRequest {
   168      return new GroupRequest().fromJsonString(jsonString, options);
   169    }
   170  
   171    static equals(a: GroupRequest | PlainMessage<GroupRequest> | undefined, b: GroupRequest | PlainMessage<GroupRequest> | undefined): boolean {
   172      return proto3.util.equals(GroupRequest, a, b);
   173    }
   174  }
   175  
   176  /**
   177   * @generated from message qf.Organization
   178   */
   179  export class Organization extends Message<Organization> {
   180    /**
   181     * @generated from field: uint64 ScmOrganizationID = 1;
   182     */
   183    ScmOrganizationID = protoInt64.zero;
   184  
   185    /**
   186     * @generated from field: string ScmOrganizationName = 2;
   187     */
   188    ScmOrganizationName = "";
   189  
   190    constructor(data?: PartialMessage<Organization>) {
   191      super();
   192      proto3.util.initPartial(data, this);
   193    }
   194  
   195    static readonly runtime: typeof proto3 = proto3;
   196    static readonly typeName = "qf.Organization";
   197    static readonly fields: FieldList = proto3.util.newFieldList(() => [
   198      { no: 1, name: "ScmOrganizationID", kind: "scalar", T: 4 /* ScalarType.UINT64 */ },
   199      { no: 2, name: "ScmOrganizationName", kind: "scalar", T: 9 /* ScalarType.STRING */ },
   200    ]);
   201  
   202    static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): Organization {
   203      return new Organization().fromBinary(bytes, options);
   204    }
   205  
   206    static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): Organization {
   207      return new Organization().fromJson(jsonValue, options);
   208    }
   209  
   210    static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): Organization {
   211      return new Organization().fromJsonString(jsonString, options);
   212    }
   213  
   214    static equals(a: Organization | PlainMessage<Organization> | undefined, b: Organization | PlainMessage<Organization> | undefined): boolean {
   215      return proto3.util.equals(Organization, a, b);
   216    }
   217  }
   218  
   219  /**
   220   * @generated from message qf.EnrollmentRequest
   221   */
   222  export class EnrollmentRequest extends Message<EnrollmentRequest> {
   223    /**
   224     * @generated from oneof qf.EnrollmentRequest.FetchMode
   225     */
   226    FetchMode: {
   227      /**
   228       * @generated from field: uint64 courseID = 1;
   229       */
   230      value: bigint;
   231      case: "courseID";
   232    } | {
   233      /**
   234       * @generated from field: uint64 userID = 2;
   235       */
   236      value: bigint;
   237      case: "userID";
   238    } | { case: undefined; value?: undefined } = { case: undefined };
   239  
   240    /**
   241     * @generated from field: repeated qf.Enrollment.UserStatus statuses = 3;
   242     */
   243    statuses: Enrollment_UserStatus[] = [];
   244  
   245    constructor(data?: PartialMessage<EnrollmentRequest>) {
   246      super();
   247      proto3.util.initPartial(data, this);
   248    }
   249  
   250    static readonly runtime: typeof proto3 = proto3;
   251    static readonly typeName = "qf.EnrollmentRequest";
   252    static readonly fields: FieldList = proto3.util.newFieldList(() => [
   253      { no: 1, name: "courseID", kind: "scalar", T: 4 /* ScalarType.UINT64 */, oneof: "FetchMode" },
   254      { no: 2, name: "userID", kind: "scalar", T: 4 /* ScalarType.UINT64 */, oneof: "FetchMode" },
   255      { no: 3, name: "statuses", kind: "enum", T: proto3.getEnumType(Enrollment_UserStatus), repeated: true },
   256    ]);
   257  
   258    static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): EnrollmentRequest {
   259      return new EnrollmentRequest().fromBinary(bytes, options);
   260    }
   261  
   262    static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): EnrollmentRequest {
   263      return new EnrollmentRequest().fromJson(jsonValue, options);
   264    }
   265  
   266    static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): EnrollmentRequest {
   267      return new EnrollmentRequest().fromJsonString(jsonString, options);
   268    }
   269  
   270    static equals(a: EnrollmentRequest | PlainMessage<EnrollmentRequest> | undefined, b: EnrollmentRequest | PlainMessage<EnrollmentRequest> | undefined): boolean {
   271      return proto3.util.equals(EnrollmentRequest, a, b);
   272    }
   273  }
   274  
   275  /**
   276   * @generated from message qf.SubmissionRequest
   277   */
   278  export class SubmissionRequest extends Message<SubmissionRequest> {
   279    /**
   280     * @generated from field: uint64 CourseID = 1;
   281     */
   282    CourseID = protoInt64.zero;
   283  
   284    /**
   285     * only used for user and group submissions
   286     *
   287     * @generated from field: uint64 AssignmentID = 2;
   288     */
   289    AssignmentID = protoInt64.zero;
   290  
   291    /**
   292     * @generated from oneof qf.SubmissionRequest.FetchMode
   293     */
   294    FetchMode: {
   295      /**
   296       * fetch single user's submissions with build info
   297       *
   298       * @generated from field: uint64 UserID = 3;
   299       */
   300      value: bigint;
   301      case: "UserID";
   302    } | {
   303      /**
   304       * fetch single group's submissions with build info
   305       *
   306       * @generated from field: uint64 GroupID = 4;
   307       */
   308      value: bigint;
   309      case: "GroupID";
   310    } | {
   311      /**
   312       * fetch single specific submission with build info
   313       *
   314       * @generated from field: uint64 SubmissionID = 5;
   315       */
   316      value: bigint;
   317      case: "SubmissionID";
   318    } | {
   319      /**
   320       * fetch all submissions of given type without build info
   321       *
   322       * @generated from field: qf.SubmissionRequest.SubmissionType Type = 6;
   323       */
   324      value: SubmissionRequest_SubmissionType;
   325      case: "Type";
   326    } | { case: undefined; value?: undefined } = { case: undefined };
   327  
   328    constructor(data?: PartialMessage<SubmissionRequest>) {
   329      super();
   330      proto3.util.initPartial(data, this);
   331    }
   332  
   333    static readonly runtime: typeof proto3 = proto3;
   334    static readonly typeName = "qf.SubmissionRequest";
   335    static readonly fields: FieldList = proto3.util.newFieldList(() => [
   336      { no: 1, name: "CourseID", kind: "scalar", T: 4 /* ScalarType.UINT64 */ },
   337      { no: 2, name: "AssignmentID", kind: "scalar", T: 4 /* ScalarType.UINT64 */ },
   338      { no: 3, name: "UserID", kind: "scalar", T: 4 /* ScalarType.UINT64 */, oneof: "FetchMode" },
   339      { no: 4, name: "GroupID", kind: "scalar", T: 4 /* ScalarType.UINT64 */, oneof: "FetchMode" },
   340      { no: 5, name: "SubmissionID", kind: "scalar", T: 4 /* ScalarType.UINT64 */, oneof: "FetchMode" },
   341      { no: 6, name: "Type", kind: "enum", T: proto3.getEnumType(SubmissionRequest_SubmissionType), oneof: "FetchMode" },
   342    ]);
   343  
   344    static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): SubmissionRequest {
   345      return new SubmissionRequest().fromBinary(bytes, options);
   346    }
   347  
   348    static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): SubmissionRequest {
   349      return new SubmissionRequest().fromJson(jsonValue, options);
   350    }
   351  
   352    static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): SubmissionRequest {
   353      return new SubmissionRequest().fromJsonString(jsonString, options);
   354    }
   355  
   356    static equals(a: SubmissionRequest | PlainMessage<SubmissionRequest> | undefined, b: SubmissionRequest | PlainMessage<SubmissionRequest> | undefined): boolean {
   357      return proto3.util.equals(SubmissionRequest, a, b);
   358    }
   359  }
   360  
   361  /**
   362   * @generated from enum qf.SubmissionRequest.SubmissionType
   363   */
   364  export enum SubmissionRequest_SubmissionType {
   365    /**
   366     * fetch all submissions
   367     *
   368     * @generated from enum value: ALL = 0;
   369     */
   370    ALL = 0,
   371  
   372    /**
   373     * fetch all user submissions
   374     *
   375     * @generated from enum value: USER = 1;
   376     */
   377    USER = 1,
   378  
   379    /**
   380     * fetch all group submissions
   381     *
   382     * @generated from enum value: GROUP = 2;
   383     */
   384    GROUP = 2,
   385  }
   386  // Retrieve enum metadata with: proto3.getEnumType(SubmissionRequest_SubmissionType)
   387  proto3.util.setEnumType(SubmissionRequest_SubmissionType, "qf.SubmissionRequest.SubmissionType", [
   388    { no: 0, name: "ALL" },
   389    { no: 1, name: "USER" },
   390    { no: 2, name: "GROUP" },
   391  ]);
   392  
   393  /**
   394   * @generated from message qf.UpdateSubmissionRequest
   395   */
   396  export class UpdateSubmissionRequest extends Message<UpdateSubmissionRequest> {
   397    /**
   398     * @generated from field: uint64 submissionID = 1;
   399     */
   400    submissionID = protoInt64.zero;
   401  
   402    /**
   403     * @generated from field: uint64 courseID = 2;
   404     */
   405    courseID = protoInt64.zero;
   406  
   407    /**
   408     * @generated from field: uint32 score = 3;
   409     */
   410    score = 0;
   411  
   412    /**
   413     * @generated from field: bool released = 4;
   414     */
   415    released = false;
   416  
   417    /**
   418     * @generated from field: qf.Submission.Status status = 5;
   419     */
   420    status = Submission_Status.NONE;
   421  
   422    constructor(data?: PartialMessage<UpdateSubmissionRequest>) {
   423      super();
   424      proto3.util.initPartial(data, this);
   425    }
   426  
   427    static readonly runtime: typeof proto3 = proto3;
   428    static readonly typeName = "qf.UpdateSubmissionRequest";
   429    static readonly fields: FieldList = proto3.util.newFieldList(() => [
   430      { no: 1, name: "submissionID", kind: "scalar", T: 4 /* ScalarType.UINT64 */ },
   431      { no: 2, name: "courseID", kind: "scalar", T: 4 /* ScalarType.UINT64 */ },
   432      { no: 3, name: "score", kind: "scalar", T: 13 /* ScalarType.UINT32 */ },
   433      { no: 4, name: "released", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
   434      { no: 5, name: "status", kind: "enum", T: proto3.getEnumType(Submission_Status) },
   435    ]);
   436  
   437    static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): UpdateSubmissionRequest {
   438      return new UpdateSubmissionRequest().fromBinary(bytes, options);
   439    }
   440  
   441    static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): UpdateSubmissionRequest {
   442      return new UpdateSubmissionRequest().fromJson(jsonValue, options);
   443    }
   444  
   445    static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): UpdateSubmissionRequest {
   446      return new UpdateSubmissionRequest().fromJsonString(jsonString, options);
   447    }
   448  
   449    static equals(a: UpdateSubmissionRequest | PlainMessage<UpdateSubmissionRequest> | undefined, b: UpdateSubmissionRequest | PlainMessage<UpdateSubmissionRequest> | undefined): boolean {
   450      return proto3.util.equals(UpdateSubmissionRequest, a, b);
   451    }
   452  }
   453  
   454  /**
   455   * @generated from message qf.UpdateSubmissionsRequest
   456   */
   457  export class UpdateSubmissionsRequest extends Message<UpdateSubmissionsRequest> {
   458    /**
   459     * @generated from field: uint64 courseID = 1;
   460     */
   461    courseID = protoInt64.zero;
   462  
   463    /**
   464     * @generated from field: uint64 assignmentID = 2;
   465     */
   466    assignmentID = protoInt64.zero;
   467  
   468    /**
   469     * @generated from field: uint32 scoreLimit = 3;
   470     */
   471    scoreLimit = 0;
   472  
   473    /**
   474     * @generated from field: bool release = 4;
   475     */
   476    release = false;
   477  
   478    /**
   479     * @generated from field: bool approve = 5;
   480     */
   481    approve = false;
   482  
   483    constructor(data?: PartialMessage<UpdateSubmissionsRequest>) {
   484      super();
   485      proto3.util.initPartial(data, this);
   486    }
   487  
   488    static readonly runtime: typeof proto3 = proto3;
   489    static readonly typeName = "qf.UpdateSubmissionsRequest";
   490    static readonly fields: FieldList = proto3.util.newFieldList(() => [
   491      { no: 1, name: "courseID", kind: "scalar", T: 4 /* ScalarType.UINT64 */ },
   492      { no: 2, name: "assignmentID", kind: "scalar", T: 4 /* ScalarType.UINT64 */ },
   493      { no: 3, name: "scoreLimit", kind: "scalar", T: 13 /* ScalarType.UINT32 */ },
   494      { no: 4, name: "release", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
   495      { no: 5, name: "approve", kind: "scalar", T: 8 /* ScalarType.BOOL */ },
   496    ]);
   497  
   498    static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): UpdateSubmissionsRequest {
   499      return new UpdateSubmissionsRequest().fromBinary(bytes, options);
   500    }
   501  
   502    static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): UpdateSubmissionsRequest {
   503      return new UpdateSubmissionsRequest().fromJson(jsonValue, options);
   504    }
   505  
   506    static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): UpdateSubmissionsRequest {
   507      return new UpdateSubmissionsRequest().fromJsonString(jsonString, options);
   508    }
   509  
   510    static equals(a: UpdateSubmissionsRequest | PlainMessage<UpdateSubmissionsRequest> | undefined, b: UpdateSubmissionsRequest | PlainMessage<UpdateSubmissionsRequest> | undefined): boolean {
   511      return proto3.util.equals(UpdateSubmissionsRequest, a, b);
   512    }
   513  }
   514  
   515  /**
   516   * used to check whether student/group submission repo is empty
   517   *
   518   * @generated from message qf.RepositoryRequest
   519   */
   520  export class RepositoryRequest extends Message<RepositoryRequest> {
   521    /**
   522     * @generated from field: uint64 userID = 1;
   523     */
   524    userID = protoInt64.zero;
   525  
   526    /**
   527     * @generated from field: uint64 groupID = 2;
   528     */
   529    groupID = protoInt64.zero;
   530  
   531    /**
   532     * @generated from field: uint64 courseID = 3;
   533     */
   534    courseID = protoInt64.zero;
   535  
   536    constructor(data?: PartialMessage<RepositoryRequest>) {
   537      super();
   538      proto3.util.initPartial(data, this);
   539    }
   540  
   541    static readonly runtime: typeof proto3 = proto3;
   542    static readonly typeName = "qf.RepositoryRequest";
   543    static readonly fields: FieldList = proto3.util.newFieldList(() => [
   544      { no: 1, name: "userID", kind: "scalar", T: 4 /* ScalarType.UINT64 */ },
   545      { no: 2, name: "groupID", kind: "scalar", T: 4 /* ScalarType.UINT64 */ },
   546      { no: 3, name: "courseID", kind: "scalar", T: 4 /* ScalarType.UINT64 */ },
   547    ]);
   548  
   549    static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): RepositoryRequest {
   550      return new RepositoryRequest().fromBinary(bytes, options);
   551    }
   552  
   553    static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): RepositoryRequest {
   554      return new RepositoryRequest().fromJson(jsonValue, options);
   555    }
   556  
   557    static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): RepositoryRequest {
   558      return new RepositoryRequest().fromJsonString(jsonString, options);
   559    }
   560  
   561    static equals(a: RepositoryRequest | PlainMessage<RepositoryRequest> | undefined, b: RepositoryRequest | PlainMessage<RepositoryRequest> | undefined): boolean {
   562      return proto3.util.equals(RepositoryRequest, a, b);
   563    }
   564  }
   565  
   566  /**
   567   * @generated from message qf.Repositories
   568   */
   569  export class Repositories extends Message<Repositories> {
   570    /**
   571     * Map key is the Repository.Type
   572     *
   573     * @generated from field: map<uint32, string> URLs = 1;
   574     */
   575    URLs: { [key: number]: string } = {};
   576  
   577    constructor(data?: PartialMessage<Repositories>) {
   578      super();
   579      proto3.util.initPartial(data, this);
   580    }
   581  
   582    static readonly runtime: typeof proto3 = proto3;
   583    static readonly typeName = "qf.Repositories";
   584    static readonly fields: FieldList = proto3.util.newFieldList(() => [
   585      { no: 1, name: "URLs", kind: "map", K: 13 /* ScalarType.UINT32 */, V: {kind: "scalar", T: 9 /* ScalarType.STRING */} },
   586    ]);
   587  
   588    static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): Repositories {
   589      return new Repositories().fromBinary(bytes, options);
   590    }
   591  
   592    static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): Repositories {
   593      return new Repositories().fromJson(jsonValue, options);
   594    }
   595  
   596    static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): Repositories {
   597      return new Repositories().fromJsonString(jsonString, options);
   598    }
   599  
   600    static equals(a: Repositories | PlainMessage<Repositories> | undefined, b: Repositories | PlainMessage<Repositories> | undefined): boolean {
   601      return proto3.util.equals(Repositories, a, b);
   602    }
   603  }
   604  
   605  /**
   606   * @generated from message qf.RebuildRequest
   607   */
   608  export class RebuildRequest extends Message<RebuildRequest> {
   609    /**
   610     * @generated from field: uint64 courseID = 1;
   611     */
   612    courseID = protoInt64.zero;
   613  
   614    /**
   615     * @generated from field: uint64 assignmentID = 2;
   616     */
   617    assignmentID = protoInt64.zero;
   618  
   619    /**
   620     * @generated from field: uint64 submissionID = 3;
   621     */
   622    submissionID = protoInt64.zero;
   623  
   624    constructor(data?: PartialMessage<RebuildRequest>) {
   625      super();
   626      proto3.util.initPartial(data, this);
   627    }
   628  
   629    static readonly runtime: typeof proto3 = proto3;
   630    static readonly typeName = "qf.RebuildRequest";
   631    static readonly fields: FieldList = proto3.util.newFieldList(() => [
   632      { no: 1, name: "courseID", kind: "scalar", T: 4 /* ScalarType.UINT64 */ },
   633      { no: 2, name: "assignmentID", kind: "scalar", T: 4 /* ScalarType.UINT64 */ },
   634      { no: 3, name: "submissionID", kind: "scalar", T: 4 /* ScalarType.UINT64 */ },
   635    ]);
   636  
   637    static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): RebuildRequest {
   638      return new RebuildRequest().fromBinary(bytes, options);
   639    }
   640  
   641    static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): RebuildRequest {
   642      return new RebuildRequest().fromJson(jsonValue, options);
   643    }
   644  
   645    static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): RebuildRequest {
   646      return new RebuildRequest().fromJsonString(jsonString, options);
   647    }
   648  
   649    static equals(a: RebuildRequest | PlainMessage<RebuildRequest> | undefined, b: RebuildRequest | PlainMessage<RebuildRequest> | undefined): boolean {
   650      return proto3.util.equals(RebuildRequest, a, b);
   651    }
   652  }
   653  
   654  /**
   655   * Void contains no fields. A server response with a Void still contains a gRPC status code,
   656   * which can be checked for success or failure. Status code 0 indicates that the requested action was successful,
   657   * whereas any other status code indicates some failure. As such, the status code can be used as a boolean result from
   658   * the server.
   659   *
   660   * @generated from message qf.Void
   661   */
   662  export class Void extends Message<Void> {
   663    constructor(data?: PartialMessage<Void>) {
   664      super();
   665      proto3.util.initPartial(data, this);
   666    }
   667  
   668    static readonly runtime: typeof proto3 = proto3;
   669    static readonly typeName = "qf.Void";
   670    static readonly fields: FieldList = proto3.util.newFieldList(() => [
   671    ]);
   672  
   673    static fromBinary(bytes: Uint8Array, options?: Partial<BinaryReadOptions>): Void {
   674      return new Void().fromBinary(bytes, options);
   675    }
   676  
   677    static fromJson(jsonValue: JsonValue, options?: Partial<JsonReadOptions>): Void {
   678      return new Void().fromJson(jsonValue, options);
   679    }
   680  
   681    static fromJsonString(jsonString: string, options?: Partial<JsonReadOptions>): Void {
   682      return new Void().fromJsonString(jsonString, options);
   683    }
   684  
   685    static equals(a: Void | PlainMessage<Void> | undefined, b: Void | PlainMessage<Void> | undefined): boolean {
   686      return proto3.util.equals(Void, a, b);
   687    }
   688  }
   689