function common(name, json) {
    if (!commonRe.test(name)) {
        name = "google/protobuf/" + name + ".proto";
        json = { nested: { google: { nested: { protobuf: { nested: json } } } } };
    }
    common[name] = json;
}
Provides common type definitions.
Can also be used to provide additional google types or your own custom types.
@param {string} name Short name as in `google/protobuf/[name].proto` or full file name
@param {Object.<string,*>} json JSON definition within `google.protobuf` if a short name, otherwise the file's root definition
@returns {undefined}
@property {Object.<string,*>} google/protobuf/any.proto Any
@property {Object.<string,*>} google/protobuf/duration.proto Duration
@property {Object.<string,*>} google/protobuf/empty.proto Empty
@property {Object.<string,*>} google/protobuf/struct.proto Struct, Value, NullValue and ListValue
@property {Object.<string,*>} google/protobuf/timestamp.proto Timestamp
@property {Object.<string,*>} google/protobuf/wrappers.proto Wrappers
@example
// manually provides descriptor.proto (assumes google/protobuf/ namespace and .proto extension)
protobuf.common("descriptor", descriptorJson);

// manually provides a custom definition (uses my.foo namespace)
protobuf.common("my/foo/bar.proto", myFooBarJson);