syntax = "proto3";

package xos;

import "google/protobuf/descriptor.proto";

message ValRule {
  int32 maxLength = 1;
  bool nonNull = 2;
  bool unique = 3;
}

message ForeignKeyRule {
  string modelName = 1;
  string reverseFieldName = 2;
}

message ReverseForeignKeyRule {
  string modelName = 1;
}

message ManyToManyForeignKeyRule {
  string modelName = 1;
}

extend google.protobuf.FieldOptions {
  ValRule val = 1001;
  ForeignKeyRule foreignKey = 1002;
  ReverseForeignKeyRule reverseForeignKey = 1003;
  ManyToManyForeignKeyRule manyToManyForeignKey = 1004;
}

extend google.protobuf.MessageOptions {
  string contentTypeId = 1001;
}

