fiRules<T>: Omit<T, "oneof" | "repeat" | "repeated" | "packed" | "opt"> & ({     oneof: undefined;     opt: false;     packed: false;     repeated: false; } | {     oneof: undefined;     opt: true;     packed: false;     repeated: false; } | {     oneof: undefined;     opt: false;     packed: boolean;     repeated: boolean; } | {     oneof: OneofInfo;     opt: false;     packed: false;     repeated: false; })