Describes a complete .proto file.

interface FileDescriptorProto {
    dependency: string[];
    enumType: EnumDescriptorProto[];
    extension: FieldDescriptorProto[];
    messageType: DescriptorProto[];
    name: string;
    options?: FileOptions;
    package: string;
    publicDependency: number[];
    service: ServiceDescriptorProto[];
    sourceCodeInfo?: SourceCodeInfo;
    syntax: string;
    weakDependency: number[];
}

Properties

dependency: string[]

Names of files imported by this file.

messageType: DescriptorProto[]

All top-level definitions in this file.

name: string

file name, relative to root of source tree

options?: FileOptions
package: string
publicDependency: number[]

Indexes of the public imported files in the dependency list above.

sourceCodeInfo?: SourceCodeInfo

This field contains optional information about the original source code. You may safely remove this entire field without harming runtime functionality of the descriptors -- the information is needed only by development tools.

syntax: string

The syntax of the proto file. The supported values are "proto2" and "proto3".

weakDependency: number[]

Indexes of the weak imported files in the dependency list. For Google-internal migration only. Do not use.