UNPKG

@bandprotocol/bandchain.js

Version:

TypeScript library for Cosmos SDK and BandChain

1,270 lines (1,269 loc) 96.8 kB
import { BinaryReader, BinaryWriter } from "../../binary"; export declare enum FieldDescriptorProto_Type { /** * TYPE_DOUBLE - 0 is reserved for errors. * Order is weird for historical reasons. */ TYPE_DOUBLE = 1, TYPE_FLOAT = 2, /** * TYPE_INT64 - Not ZigZag encoded. Negative numbers take 10 bytes. Use TYPE_SINT64 if * negative values are likely. */ TYPE_INT64 = 3, TYPE_UINT64 = 4, /** * TYPE_INT32 - Not ZigZag encoded. Negative numbers take 10 bytes. Use TYPE_SINT32 if * negative values are likely. */ TYPE_INT32 = 5, TYPE_FIXED64 = 6, TYPE_FIXED32 = 7, TYPE_BOOL = 8, TYPE_STRING = 9, /** * TYPE_GROUP - Tag-delimited aggregate. * Group type is deprecated and not supported in proto3. However, Proto3 * implementations should still be able to parse the group wire format and * treat group fields as unknown fields. */ TYPE_GROUP = 10, /** TYPE_MESSAGE - Length-delimited aggregate. */ TYPE_MESSAGE = 11, /** TYPE_BYTES - New in version 2. */ TYPE_BYTES = 12, TYPE_UINT32 = 13, TYPE_ENUM = 14, TYPE_SFIXED32 = 15, TYPE_SFIXED64 = 16, /** TYPE_SINT32 - Uses ZigZag encoding. */ TYPE_SINT32 = 17, /** TYPE_SINT64 - Uses ZigZag encoding. */ TYPE_SINT64 = 18, UNRECOGNIZED = -1 } export declare const FieldDescriptorProto_TypeSDKType: typeof FieldDescriptorProto_Type; export declare const FieldDescriptorProto_TypeAmino: typeof FieldDescriptorProto_Type; export declare function fieldDescriptorProto_TypeFromJSON(object: any): FieldDescriptorProto_Type; export declare function fieldDescriptorProto_TypeToJSON(object: FieldDescriptorProto_Type): string; export declare enum FieldDescriptorProto_Label { /** LABEL_OPTIONAL - 0 is reserved for errors */ LABEL_OPTIONAL = 1, LABEL_REQUIRED = 2, LABEL_REPEATED = 3, UNRECOGNIZED = -1 } export declare const FieldDescriptorProto_LabelSDKType: typeof FieldDescriptorProto_Label; export declare const FieldDescriptorProto_LabelAmino: typeof FieldDescriptorProto_Label; export declare function fieldDescriptorProto_LabelFromJSON(object: any): FieldDescriptorProto_Label; export declare function fieldDescriptorProto_LabelToJSON(object: FieldDescriptorProto_Label): string; /** Generated classes can be optimized for speed or code size. */ export declare enum FileOptions_OptimizeMode { /** SPEED - Generate complete code for parsing, serialization, */ SPEED = 1, /** CODE_SIZE - etc. */ CODE_SIZE = 2, /** LITE_RUNTIME - Generate code using MessageLite and the lite runtime. */ LITE_RUNTIME = 3, UNRECOGNIZED = -1 } export declare const FileOptions_OptimizeModeSDKType: typeof FileOptions_OptimizeMode; export declare const FileOptions_OptimizeModeAmino: typeof FileOptions_OptimizeMode; export declare function fileOptions_OptimizeModeFromJSON(object: any): FileOptions_OptimizeMode; export declare function fileOptions_OptimizeModeToJSON(object: FileOptions_OptimizeMode): string; export declare enum FieldOptions_CType { /** STRING - Default mode. */ STRING = 0, CORD = 1, STRING_PIECE = 2, UNRECOGNIZED = -1 } export declare const FieldOptions_CTypeSDKType: typeof FieldOptions_CType; export declare const FieldOptions_CTypeAmino: typeof FieldOptions_CType; export declare function fieldOptions_CTypeFromJSON(object: any): FieldOptions_CType; export declare function fieldOptions_CTypeToJSON(object: FieldOptions_CType): string; export declare enum FieldOptions_JSType { /** JS_NORMAL - Use the default type. */ JS_NORMAL = 0, /** JS_STRING - Use JavaScript strings. */ JS_STRING = 1, /** JS_NUMBER - Use JavaScript numbers. */ JS_NUMBER = 2, UNRECOGNIZED = -1 } export declare const FieldOptions_JSTypeSDKType: typeof FieldOptions_JSType; export declare const FieldOptions_JSTypeAmino: typeof FieldOptions_JSType; export declare function fieldOptions_JSTypeFromJSON(object: any): FieldOptions_JSType; export declare function fieldOptions_JSTypeToJSON(object: FieldOptions_JSType): string; /** * Is this method side-effect-free (or safe in HTTP parlance), or idempotent, * or neither? HTTP based RPC implementation may choose GET verb for safe * methods, and PUT verb for idempotent methods instead of the default POST. */ export declare enum MethodOptions_IdempotencyLevel { IDEMPOTENCY_UNKNOWN = 0, /** NO_SIDE_EFFECTS - implies idempotent */ NO_SIDE_EFFECTS = 1, /** IDEMPOTENT - idempotent, but may have side effects */ IDEMPOTENT = 2, UNRECOGNIZED = -1 } export declare const MethodOptions_IdempotencyLevelSDKType: typeof MethodOptions_IdempotencyLevel; export declare const MethodOptions_IdempotencyLevelAmino: typeof MethodOptions_IdempotencyLevel; export declare function methodOptions_IdempotencyLevelFromJSON(object: any): MethodOptions_IdempotencyLevel; export declare function methodOptions_IdempotencyLevelToJSON(object: MethodOptions_IdempotencyLevel): string; /** * The protocol compiler can output a FileDescriptorSet containing the .proto * files it parses. */ export interface FileDescriptorSet { file: FileDescriptorProto[]; } export interface FileDescriptorSetProtoMsg { typeUrl: "/google.protobuf.FileDescriptorSet"; value: Uint8Array; } /** * The protocol compiler can output a FileDescriptorSet containing the .proto * files it parses. */ export interface FileDescriptorSetAmino { file?: FileDescriptorProtoAmino[]; } export interface FileDescriptorSetAminoMsg { type: "/google.protobuf.FileDescriptorSet"; value: FileDescriptorSetAmino; } /** * The protocol compiler can output a FileDescriptorSet containing the .proto * files it parses. */ export interface FileDescriptorSetSDKType { file: FileDescriptorProtoSDKType[]; } /** Describes a complete .proto file. */ export interface FileDescriptorProto { /** file name, relative to root of source tree */ name: string; /** e.g. "foo", "foo.bar", etc. */ package: string; /** Names of files imported by this file. */ dependency: string[]; /** Indexes of the public imported files in the dependency list above. */ publicDependency: number[]; /** * Indexes of the weak imported files in the dependency list. * For Google-internal migration only. Do not use. */ weakDependency: number[]; /** All top-level definitions in this file. */ messageType: DescriptorProto[]; enumType: EnumDescriptorProto[]; service: ServiceDescriptorProto[]; extension: FieldDescriptorProto[]; options?: FileOptions; /** * 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. */ sourceCodeInfo?: SourceCodeInfo; /** * The syntax of the proto file. * The supported values are "proto2" and "proto3". */ syntax: string; } export interface FileDescriptorProtoProtoMsg { typeUrl: "/google.protobuf.FileDescriptorProto"; value: Uint8Array; } /** Describes a complete .proto file. */ export interface FileDescriptorProtoAmino { /** file name, relative to root of source tree */ name?: string; /** e.g. "foo", "foo.bar", etc. */ package?: string; /** Names of files imported by this file. */ dependency?: string[]; /** Indexes of the public imported files in the dependency list above. */ public_dependency?: number[]; /** * Indexes of the weak imported files in the dependency list. * For Google-internal migration only. Do not use. */ weak_dependency?: number[]; /** All top-level definitions in this file. */ message_type?: DescriptorProtoAmino[]; enum_type?: EnumDescriptorProtoAmino[]; service?: ServiceDescriptorProtoAmino[]; extension?: FieldDescriptorProtoAmino[]; options?: FileOptionsAmino; /** * 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. */ source_code_info?: SourceCodeInfoAmino; /** * The syntax of the proto file. * The supported values are "proto2" and "proto3". */ syntax?: string; } export interface FileDescriptorProtoAminoMsg { type: "/google.protobuf.FileDescriptorProto"; value: FileDescriptorProtoAmino; } /** Describes a complete .proto file. */ export interface FileDescriptorProtoSDKType { name: string; package: string; dependency: string[]; public_dependency: number[]; weak_dependency: number[]; message_type: DescriptorProtoSDKType[]; enum_type: EnumDescriptorProtoSDKType[]; service: ServiceDescriptorProtoSDKType[]; extension: FieldDescriptorProtoSDKType[]; options?: FileOptionsSDKType; source_code_info?: SourceCodeInfoSDKType; syntax: string; } /** Describes a message type. */ export interface DescriptorProto { name: string; field: FieldDescriptorProto[]; extension: FieldDescriptorProto[]; nestedType: DescriptorProto[]; enumType: EnumDescriptorProto[]; extensionRange: DescriptorProto_ExtensionRange[]; oneofDecl: OneofDescriptorProto[]; options?: MessageOptions; reservedRange: DescriptorProto_ReservedRange[]; /** * Reserved field names, which may not be used by fields in the same message. * A given name may only be reserved once. */ reservedName: string[]; } export interface DescriptorProtoProtoMsg { typeUrl: "/google.protobuf.DescriptorProto"; value: Uint8Array; } /** Describes a message type. */ export interface DescriptorProtoAmino { name?: string; field?: FieldDescriptorProtoAmino[]; extension?: FieldDescriptorProtoAmino[]; nested_type?: DescriptorProtoAmino[]; enum_type?: EnumDescriptorProtoAmino[]; extension_range?: DescriptorProto_ExtensionRangeAmino[]; oneof_decl?: OneofDescriptorProtoAmino[]; options?: MessageOptionsAmino; reserved_range?: DescriptorProto_ReservedRangeAmino[]; /** * Reserved field names, which may not be used by fields in the same message. * A given name may only be reserved once. */ reserved_name?: string[]; } export interface DescriptorProtoAminoMsg { type: "/google.protobuf.DescriptorProto"; value: DescriptorProtoAmino; } /** Describes a message type. */ export interface DescriptorProtoSDKType { name: string; field: FieldDescriptorProtoSDKType[]; extension: FieldDescriptorProtoSDKType[]; nested_type: DescriptorProtoSDKType[]; enum_type: EnumDescriptorProtoSDKType[]; extension_range: DescriptorProto_ExtensionRangeSDKType[]; oneof_decl: OneofDescriptorProtoSDKType[]; options?: MessageOptionsSDKType; reserved_range: DescriptorProto_ReservedRangeSDKType[]; reserved_name: string[]; } export interface DescriptorProto_ExtensionRange { /** Inclusive. */ start: number; /** Exclusive. */ end: number; options?: ExtensionRangeOptions; } export interface DescriptorProto_ExtensionRangeProtoMsg { typeUrl: "/google.protobuf.ExtensionRange"; value: Uint8Array; } export interface DescriptorProto_ExtensionRangeAmino { /** Inclusive. */ start?: number; /** Exclusive. */ end?: number; options?: ExtensionRangeOptionsAmino; } export interface DescriptorProto_ExtensionRangeAminoMsg { type: "/google.protobuf.ExtensionRange"; value: DescriptorProto_ExtensionRangeAmino; } export interface DescriptorProto_ExtensionRangeSDKType { start: number; end: number; options?: ExtensionRangeOptionsSDKType; } /** * Range of reserved tag numbers. Reserved tag numbers may not be used by * fields or extension ranges in the same message. Reserved ranges may * not overlap. */ export interface DescriptorProto_ReservedRange { /** Inclusive. */ start: number; /** Exclusive. */ end: number; } export interface DescriptorProto_ReservedRangeProtoMsg { typeUrl: "/google.protobuf.ReservedRange"; value: Uint8Array; } /** * Range of reserved tag numbers. Reserved tag numbers may not be used by * fields or extension ranges in the same message. Reserved ranges may * not overlap. */ export interface DescriptorProto_ReservedRangeAmino { /** Inclusive. */ start?: number; /** Exclusive. */ end?: number; } export interface DescriptorProto_ReservedRangeAminoMsg { type: "/google.protobuf.ReservedRange"; value: DescriptorProto_ReservedRangeAmino; } /** * Range of reserved tag numbers. Reserved tag numbers may not be used by * fields or extension ranges in the same message. Reserved ranges may * not overlap. */ export interface DescriptorProto_ReservedRangeSDKType { start: number; end: number; } export interface ExtensionRangeOptions { /** The parser stores options it doesn't recognize here. See above. */ uninterpretedOption: UninterpretedOption[]; } export interface ExtensionRangeOptionsProtoMsg { typeUrl: "/google.protobuf.ExtensionRangeOptions"; value: Uint8Array; } export interface ExtensionRangeOptionsAmino { /** The parser stores options it doesn't recognize here. See above. */ uninterpreted_option?: UninterpretedOptionAmino[]; } export interface ExtensionRangeOptionsAminoMsg { type: "/google.protobuf.ExtensionRangeOptions"; value: ExtensionRangeOptionsAmino; } export interface ExtensionRangeOptionsSDKType { uninterpreted_option: UninterpretedOptionSDKType[]; } /** Describes a field within a message. */ export interface FieldDescriptorProto { name: string; number: number; label: FieldDescriptorProto_Label; /** * If type_name is set, this need not be set. If both this and type_name * are set, this must be one of TYPE_ENUM, TYPE_MESSAGE or TYPE_GROUP. */ type: FieldDescriptorProto_Type; /** * For message and enum types, this is the name of the type. If the name * starts with a '.', it is fully-qualified. Otherwise, C++-like scoping * rules are used to find the type (i.e. first the nested types within this * message are searched, then within the parent, on up to the root * namespace). */ typeName: string; /** * For extensions, this is the name of the type being extended. It is * resolved in the same manner as type_name. */ extendee: string; /** * For numeric types, contains the original text representation of the value. * For booleans, "true" or "false". * For strings, contains the default text contents (not escaped in any way). * For bytes, contains the C escaped value. All bytes >= 128 are escaped. * TODO(kenton): Base-64 encode? */ defaultValue: string; /** * If set, gives the index of a oneof in the containing type's oneof_decl * list. This field is a member of that oneof. */ oneofIndex: number; /** * JSON name of this field. The value is set by protocol compiler. If the * user has set a "json_name" option on this field, that option's value * will be used. Otherwise, it's deduced from the field's name by converting * it to camelCase. */ jsonName: string; options?: FieldOptions; } export interface FieldDescriptorProtoProtoMsg { typeUrl: "/google.protobuf.FieldDescriptorProto"; value: Uint8Array; } /** Describes a field within a message. */ export interface FieldDescriptorProtoAmino { name?: string; number?: number; label?: FieldDescriptorProto_Label; /** * If type_name is set, this need not be set. If both this and type_name * are set, this must be one of TYPE_ENUM, TYPE_MESSAGE or TYPE_GROUP. */ type?: FieldDescriptorProto_Type; /** * For message and enum types, this is the name of the type. If the name * starts with a '.', it is fully-qualified. Otherwise, C++-like scoping * rules are used to find the type (i.e. first the nested types within this * message are searched, then within the parent, on up to the root * namespace). */ type_name?: string; /** * For extensions, this is the name of the type being extended. It is * resolved in the same manner as type_name. */ extendee?: string; /** * For numeric types, contains the original text representation of the value. * For booleans, "true" or "false". * For strings, contains the default text contents (not escaped in any way). * For bytes, contains the C escaped value. All bytes >= 128 are escaped. * TODO(kenton): Base-64 encode? */ default_value?: string; /** * If set, gives the index of a oneof in the containing type's oneof_decl * list. This field is a member of that oneof. */ oneof_index?: number; /** * JSON name of this field. The value is set by protocol compiler. If the * user has set a "json_name" option on this field, that option's value * will be used. Otherwise, it's deduced from the field's name by converting * it to camelCase. */ json_name?: string; options?: FieldOptionsAmino; } export interface FieldDescriptorProtoAminoMsg { type: "/google.protobuf.FieldDescriptorProto"; value: FieldDescriptorProtoAmino; } /** Describes a field within a message. */ export interface FieldDescriptorProtoSDKType { name: string; number: number; label: FieldDescriptorProto_Label; type: FieldDescriptorProto_Type; type_name: string; extendee: string; default_value: string; oneof_index: number; json_name: string; options?: FieldOptionsSDKType; } /** Describes a oneof. */ export interface OneofDescriptorProto { name: string; options?: OneofOptions; } export interface OneofDescriptorProtoProtoMsg { typeUrl: "/google.protobuf.OneofDescriptorProto"; value: Uint8Array; } /** Describes a oneof. */ export interface OneofDescriptorProtoAmino { name?: string; options?: OneofOptionsAmino; } export interface OneofDescriptorProtoAminoMsg { type: "/google.protobuf.OneofDescriptorProto"; value: OneofDescriptorProtoAmino; } /** Describes a oneof. */ export interface OneofDescriptorProtoSDKType { name: string; options?: OneofOptionsSDKType; } /** Describes an enum type. */ export interface EnumDescriptorProto { name: string; value: EnumValueDescriptorProto[]; options?: EnumOptions; /** * Range of reserved numeric values. Reserved numeric values may not be used * by enum values in the same enum declaration. Reserved ranges may not * overlap. */ reservedRange: EnumDescriptorProto_EnumReservedRange[]; /** * Reserved enum value names, which may not be reused. A given name may only * be reserved once. */ reservedName: string[]; } export interface EnumDescriptorProtoProtoMsg { typeUrl: "/google.protobuf.EnumDescriptorProto"; value: Uint8Array; } /** Describes an enum type. */ export interface EnumDescriptorProtoAmino { name?: string; value?: EnumValueDescriptorProtoAmino[]; options?: EnumOptionsAmino; /** * Range of reserved numeric values. Reserved numeric values may not be used * by enum values in the same enum declaration. Reserved ranges may not * overlap. */ reserved_range?: EnumDescriptorProto_EnumReservedRangeAmino[]; /** * Reserved enum value names, which may not be reused. A given name may only * be reserved once. */ reserved_name?: string[]; } export interface EnumDescriptorProtoAminoMsg { type: "/google.protobuf.EnumDescriptorProto"; value: EnumDescriptorProtoAmino; } /** Describes an enum type. */ export interface EnumDescriptorProtoSDKType { name: string; value: EnumValueDescriptorProtoSDKType[]; options?: EnumOptionsSDKType; reserved_range: EnumDescriptorProto_EnumReservedRangeSDKType[]; reserved_name: string[]; } /** * Range of reserved numeric values. Reserved values may not be used by * entries in the same enum. Reserved ranges may not overlap. * * Note that this is distinct from DescriptorProto.ReservedRange in that it * is inclusive such that it can appropriately represent the entire int32 * domain. */ export interface EnumDescriptorProto_EnumReservedRange { /** Inclusive. */ start: number; /** Inclusive. */ end: number; } export interface EnumDescriptorProto_EnumReservedRangeProtoMsg { typeUrl: "/google.protobuf.EnumReservedRange"; value: Uint8Array; } /** * Range of reserved numeric values. Reserved values may not be used by * entries in the same enum. Reserved ranges may not overlap. * * Note that this is distinct from DescriptorProto.ReservedRange in that it * is inclusive such that it can appropriately represent the entire int32 * domain. */ export interface EnumDescriptorProto_EnumReservedRangeAmino { /** Inclusive. */ start?: number; /** Inclusive. */ end?: number; } export interface EnumDescriptorProto_EnumReservedRangeAminoMsg { type: "/google.protobuf.EnumReservedRange"; value: EnumDescriptorProto_EnumReservedRangeAmino; } /** * Range of reserved numeric values. Reserved values may not be used by * entries in the same enum. Reserved ranges may not overlap. * * Note that this is distinct from DescriptorProto.ReservedRange in that it * is inclusive such that it can appropriately represent the entire int32 * domain. */ export interface EnumDescriptorProto_EnumReservedRangeSDKType { start: number; end: number; } /** Describes a value within an enum. */ export interface EnumValueDescriptorProto { name: string; number: number; options?: EnumValueOptions; } export interface EnumValueDescriptorProtoProtoMsg { typeUrl: "/google.protobuf.EnumValueDescriptorProto"; value: Uint8Array; } /** Describes a value within an enum. */ export interface EnumValueDescriptorProtoAmino { name?: string; number?: number; options?: EnumValueOptionsAmino; } export interface EnumValueDescriptorProtoAminoMsg { type: "/google.protobuf.EnumValueDescriptorProto"; value: EnumValueDescriptorProtoAmino; } /** Describes a value within an enum. */ export interface EnumValueDescriptorProtoSDKType { name: string; number: number; options?: EnumValueOptionsSDKType; } /** Describes a service. */ export interface ServiceDescriptorProto { name: string; method: MethodDescriptorProto[]; options?: ServiceOptions; } export interface ServiceDescriptorProtoProtoMsg { typeUrl: "/google.protobuf.ServiceDescriptorProto"; value: Uint8Array; } /** Describes a service. */ export interface ServiceDescriptorProtoAmino { name?: string; method?: MethodDescriptorProtoAmino[]; options?: ServiceOptionsAmino; } export interface ServiceDescriptorProtoAminoMsg { type: "/google.protobuf.ServiceDescriptorProto"; value: ServiceDescriptorProtoAmino; } /** Describes a service. */ export interface ServiceDescriptorProtoSDKType { name: string; method: MethodDescriptorProtoSDKType[]; options?: ServiceOptionsSDKType; } /** Describes a method of a service. */ export interface MethodDescriptorProto { name: string; /** * Input and output type names. These are resolved in the same way as * FieldDescriptorProto.type_name, but must refer to a message type. */ inputType: string; outputType: string; options?: MethodOptions; /** Identifies if client streams multiple client messages */ clientStreaming: boolean; /** Identifies if server streams multiple server messages */ serverStreaming: boolean; } export interface MethodDescriptorProtoProtoMsg { typeUrl: "/google.protobuf.MethodDescriptorProto"; value: Uint8Array; } /** Describes a method of a service. */ export interface MethodDescriptorProtoAmino { name?: string; /** * Input and output type names. These are resolved in the same way as * FieldDescriptorProto.type_name, but must refer to a message type. */ input_type?: string; output_type?: string; options?: MethodOptionsAmino; /** Identifies if client streams multiple client messages */ client_streaming?: boolean; /** Identifies if server streams multiple server messages */ server_streaming?: boolean; } export interface MethodDescriptorProtoAminoMsg { type: "/google.protobuf.MethodDescriptorProto"; value: MethodDescriptorProtoAmino; } /** Describes a method of a service. */ export interface MethodDescriptorProtoSDKType { name: string; input_type: string; output_type: string; options?: MethodOptionsSDKType; client_streaming: boolean; server_streaming: boolean; } export interface FileOptions { /** * Sets the Java package where classes generated from this .proto will be * placed. By default, the proto package is used, but this is often * inappropriate because proto packages do not normally start with backwards * domain names. */ javaPackage: string; /** * If set, all the classes from the .proto file are wrapped in a single * outer class with the given name. This applies to both Proto1 * (equivalent to the old "--one_java_file" option) and Proto2 (where * a .proto always translates to a single class, but you may want to * explicitly choose the class name). */ javaOuterClassname: string; /** * If set true, then the Java code generator will generate a separate .java * file for each top-level message, enum, and service defined in the .proto * file. Thus, these types will *not* be nested inside the outer class * named by java_outer_classname. However, the outer class will still be * generated to contain the file's getDescriptor() method as well as any * top-level extensions defined in the file. */ javaMultipleFiles: boolean; /** This option does nothing. */ /** @deprecated */ javaGenerateEqualsAndHash: boolean; /** * If set true, then the Java2 code generator will generate code that * throws an exception whenever an attempt is made to assign a non-UTF-8 * byte sequence to a string field. * Message reflection will do the same. * However, an extension field still accepts non-UTF-8 byte sequences. * This option has no effect on when used with the lite runtime. */ javaStringCheckUtf8: boolean; optimizeFor: FileOptions_OptimizeMode; /** * Sets the Go package where structs generated from this .proto will be * placed. If omitted, the Go package will be derived from the following: * - The basename of the package import path, if provided. * - Otherwise, the package statement in the .proto file, if present. * - Otherwise, the basename of the .proto file, without extension. */ goPackage: string; /** * Should generic services be generated in each language? "Generic" services * are not specific to any particular RPC system. They are generated by the * main code generators in each language (without additional plugins). * Generic services were the only kind of service generation supported by * early versions of google.protobuf. * * Generic services are now considered deprecated in favor of using plugins * that generate code specific to your particular RPC system. Therefore, * these default to false. Old code which depends on generic services should * explicitly set them to true. */ ccGenericServices: boolean; javaGenericServices: boolean; pyGenericServices: boolean; phpGenericServices: boolean; /** * Is this file deprecated? * Depending on the target platform, this can emit Deprecated annotations * for everything in the file, or it will be completely ignored; in the very * least, this is a formalization for deprecating files. */ deprecated: boolean; /** * Enables the use of arenas for the proto messages in this file. This applies * only to generated classes for C++. */ ccEnableArenas: boolean; /** * Sets the objective c class prefix which is prepended to all objective c * generated classes from this .proto. There is no default. */ objcClassPrefix: string; /** Namespace for generated classes; defaults to the package. */ csharpNamespace: string; /** * By default Swift generators will take the proto package and CamelCase it * replacing '.' with underscore and use that to prefix the types/symbols * defined. When this options is provided, they will use this value instead * to prefix the types/symbols defined. */ swiftPrefix: string; /** * Sets the php class prefix which is prepended to all php generated classes * from this .proto. Default is empty. */ phpClassPrefix: string; /** * Use this option to change the namespace of php generated classes. Default * is empty. When this option is empty, the package name will be used for * determining the namespace. */ phpNamespace: string; /** * Use this option to change the namespace of php generated metadata classes. * Default is empty. When this option is empty, the proto file name will be * used for determining the namespace. */ phpMetadataNamespace: string; /** * Use this option to change the package of ruby generated classes. Default * is empty. When this option is not set, the package name will be used for * determining the ruby package. */ rubyPackage: string; /** * The parser stores options it doesn't recognize here. * See the documentation for the "Options" section above. */ uninterpretedOption: UninterpretedOption[]; } export interface FileOptionsProtoMsg { typeUrl: "/google.protobuf.FileOptions"; value: Uint8Array; } export interface FileOptionsAmino { /** * Sets the Java package where classes generated from this .proto will be * placed. By default, the proto package is used, but this is often * inappropriate because proto packages do not normally start with backwards * domain names. */ java_package?: string; /** * If set, all the classes from the .proto file are wrapped in a single * outer class with the given name. This applies to both Proto1 * (equivalent to the old "--one_java_file" option) and Proto2 (where * a .proto always translates to a single class, but you may want to * explicitly choose the class name). */ java_outer_classname?: string; /** * If set true, then the Java code generator will generate a separate .java * file for each top-level message, enum, and service defined in the .proto * file. Thus, these types will *not* be nested inside the outer class * named by java_outer_classname. However, the outer class will still be * generated to contain the file's getDescriptor() method as well as any * top-level extensions defined in the file. */ java_multiple_files?: boolean; /** This option does nothing. */ /** @deprecated */ java_generate_equals_and_hash?: boolean; /** * If set true, then the Java2 code generator will generate code that * throws an exception whenever an attempt is made to assign a non-UTF-8 * byte sequence to a string field. * Message reflection will do the same. * However, an extension field still accepts non-UTF-8 byte sequences. * This option has no effect on when used with the lite runtime. */ java_string_check_utf8?: boolean; optimize_for?: FileOptions_OptimizeMode; /** * Sets the Go package where structs generated from this .proto will be * placed. If omitted, the Go package will be derived from the following: * - The basename of the package import path, if provided. * - Otherwise, the package statement in the .proto file, if present. * - Otherwise, the basename of the .proto file, without extension. */ go_package?: string; /** * Should generic services be generated in each language? "Generic" services * are not specific to any particular RPC system. They are generated by the * main code generators in each language (without additional plugins). * Generic services were the only kind of service generation supported by * early versions of google.protobuf. * * Generic services are now considered deprecated in favor of using plugins * that generate code specific to your particular RPC system. Therefore, * these default to false. Old code which depends on generic services should * explicitly set them to true. */ cc_generic_services?: boolean; java_generic_services?: boolean; py_generic_services?: boolean; php_generic_services?: boolean; /** * Is this file deprecated? * Depending on the target platform, this can emit Deprecated annotations * for everything in the file, or it will be completely ignored; in the very * least, this is a formalization for deprecating files. */ deprecated?: boolean; /** * Enables the use of arenas for the proto messages in this file. This applies * only to generated classes for C++. */ cc_enable_arenas?: boolean; /** * Sets the objective c class prefix which is prepended to all objective c * generated classes from this .proto. There is no default. */ objc_class_prefix?: string; /** Namespace for generated classes; defaults to the package. */ csharp_namespace?: string; /** * By default Swift generators will take the proto package and CamelCase it * replacing '.' with underscore and use that to prefix the types/symbols * defined. When this options is provided, they will use this value instead * to prefix the types/symbols defined. */ swift_prefix?: string; /** * Sets the php class prefix which is prepended to all php generated classes * from this .proto. Default is empty. */ php_class_prefix?: string; /** * Use this option to change the namespace of php generated classes. Default * is empty. When this option is empty, the package name will be used for * determining the namespace. */ php_namespace?: string; /** * Use this option to change the namespace of php generated metadata classes. * Default is empty. When this option is empty, the proto file name will be * used for determining the namespace. */ php_metadata_namespace?: string; /** * Use this option to change the package of ruby generated classes. Default * is empty. When this option is not set, the package name will be used for * determining the ruby package. */ ruby_package?: string; /** * The parser stores options it doesn't recognize here. * See the documentation for the "Options" section above. */ uninterpreted_option?: UninterpretedOptionAmino[]; } export interface FileOptionsAminoMsg { type: "/google.protobuf.FileOptions"; value: FileOptionsAmino; } export interface FileOptionsSDKType { java_package: string; java_outer_classname: string; java_multiple_files: boolean; /** @deprecated */ java_generate_equals_and_hash: boolean; java_string_check_utf8: boolean; optimize_for: FileOptions_OptimizeMode; go_package: string; cc_generic_services: boolean; java_generic_services: boolean; py_generic_services: boolean; php_generic_services: boolean; deprecated: boolean; cc_enable_arenas: boolean; objc_class_prefix: string; csharp_namespace: string; swift_prefix: string; php_class_prefix: string; php_namespace: string; php_metadata_namespace: string; ruby_package: string; uninterpreted_option: UninterpretedOptionSDKType[]; } export interface MessageOptions { /** * Set true to use the old proto1 MessageSet wire format for extensions. * This is provided for backwards-compatibility with the MessageSet wire * format. You should not use this for any other reason: It's less * efficient, has fewer features, and is more complicated. * * The message must be defined exactly as follows: * message Foo { * option message_set_wire_format = true; * extensions 4 to max; * } * Note that the message cannot have any defined fields; MessageSets only * have extensions. * * All extensions of your type must be singular messages; e.g. they cannot * be int32s, enums, or repeated messages. * * Because this is an option, the above two restrictions are not enforced by * the protocol compiler. */ messageSetWireFormat: boolean; /** * Disables the generation of the standard "descriptor()" accessor, which can * conflict with a field of the same name. This is meant to make migration * from proto1 easier; new code should avoid fields named "descriptor". */ noStandardDescriptorAccessor: boolean; /** * Is this message deprecated? * Depending on the target platform, this can emit Deprecated annotations * for the message, or it will be completely ignored; in the very least, * this is a formalization for deprecating messages. */ deprecated: boolean; /** * Whether the message is an automatically generated map entry type for the * maps field. * * For maps fields: * map<KeyType, ValueType> map_field = 1; * The parsed descriptor looks like: * message MapFieldEntry { * option map_entry = true; * optional KeyType key = 1; * optional ValueType value = 2; * } * repeated MapFieldEntry map_field = 1; * * Implementations may choose not to generate the map_entry=true message, but * use a native map in the target language to hold the keys and values. * The reflection APIs in such implementations still need to work as * if the field is a repeated message field. * * NOTE: Do not set the option in .proto files. Always use the maps syntax * instead. The option should only be implicitly set by the proto compiler * parser. */ mapEntry: boolean; /** The parser stores options it doesn't recognize here. See above. */ uninterpretedOption: UninterpretedOption[]; } export interface MessageOptionsProtoMsg { typeUrl: "/google.protobuf.MessageOptions"; value: Uint8Array; } export interface MessageOptionsAmino { /** * Set true to use the old proto1 MessageSet wire format for extensions. * This is provided for backwards-compatibility with the MessageSet wire * format. You should not use this for any other reason: It's less * efficient, has fewer features, and is more complicated. * * The message must be defined exactly as follows: * message Foo { * option message_set_wire_format = true; * extensions 4 to max; * } * Note that the message cannot have any defined fields; MessageSets only * have extensions. * * All extensions of your type must be singular messages; e.g. they cannot * be int32s, enums, or repeated messages. * * Because this is an option, the above two restrictions are not enforced by * the protocol compiler. */ message_set_wire_format?: boolean; /** * Disables the generation of the standard "descriptor()" accessor, which can * conflict with a field of the same name. This is meant to make migration * from proto1 easier; new code should avoid fields named "descriptor". */ no_standard_descriptor_accessor?: boolean; /** * Is this message deprecated? * Depending on the target platform, this can emit Deprecated annotations * for the message, or it will be completely ignored; in the very least, * this is a formalization for deprecating messages. */ deprecated?: boolean; /** * Whether the message is an automatically generated map entry type for the * maps field. * * For maps fields: * map<KeyType, ValueType> map_field = 1; * The parsed descriptor looks like: * message MapFieldEntry { * option map_entry = true; * optional KeyType key = 1; * optional ValueType value = 2; * } * repeated MapFieldEntry map_field = 1; * * Implementations may choose not to generate the map_entry=true message, but * use a native map in the target language to hold the keys and values. * The reflection APIs in such implementations still need to work as * if the field is a repeated message field. * * NOTE: Do not set the option in .proto files. Always use the maps syntax * instead. The option should only be implicitly set by the proto compiler * parser. */ map_entry?: boolean; /** The parser stores options it doesn't recognize here. See above. */ uninterpreted_option?: UninterpretedOptionAmino[]; } export interface MessageOptionsAminoMsg { type: "/google.protobuf.MessageOptions"; value: MessageOptionsAmino; } export interface MessageOptionsSDKType { message_set_wire_format: boolean; no_standard_descriptor_accessor: boolean; deprecated: boolean; map_entry: boolean; uninterpreted_option: UninterpretedOptionSDKType[]; } export interface FieldOptions { /** * The ctype option instructs the C++ code generator to use a different * representation of the field than it normally would. See the specific * options below. This option is not yet implemented in the open source * release -- sorry, we'll try to include it in a future version! */ ctype: FieldOptions_CType; /** * The packed option can be enabled for repeated primitive fields to enable * a more efficient representation on the wire. Rather than repeatedly * writing the tag and type for each element, the entire array is encoded as * a single length-delimited blob. In proto3, only explicit setting it to * false will avoid using packed encoding. */ packed: boolean; /** * The jstype option determines the JavaScript type used for values of the * field. The option is permitted only for 64 bit integral and fixed types * (int64, uint64, sint64, fixed64, sfixed64). A field with jstype JS_STRING * is represented as JavaScript string, which avoids loss of precision that * can happen when a large value is converted to a floating point JavaScript. * Specifying JS_NUMBER for the jstype causes the generated JavaScript code to * use the JavaScript "number" type. The behavior of the default option * JS_NORMAL is implementation dependent. * * This option is an enum to permit additional types to be added, e.g. * goog.math.Integer. */ jstype: FieldOptions_JSType; /** * Should this field be parsed lazily? Lazy applies only to message-type * fields. It means that when the outer message is initially parsed, the * inner message's contents will not be parsed but instead stored in encoded * form. The inner message will actually be parsed when it is first accessed. * * This is only a hint. Implementations are free to choose whether to use * eager or lazy parsing regardless of the value of this option. However, * setting this option true suggests that the protocol author believes that * using lazy parsing on this field is worth the additional bookkeeping * overhead typically needed to implement it. * * This option does not affect the public interface of any generated code; * all method signatures remain the same. Furthermore, thread-safety of the * interface is not affected by this option; const methods remain safe to * call from multiple threads concurrently, while non-const methods continue * to require exclusive access. * * * Note that implementations may choose not to check required fields within * a lazy sub-message. That is, calling IsInitialized() on the outer message * may return true even if the inner message has missing required fields. * This is necessary because otherwise the inner message would have to be * parsed in order to perform the check, defeating the purpose of lazy * parsing. An implementation which chooses not to check required fields * must be consistent about it. That is, for any particular sub-message, the * implementation must either *always* check its required fields, or *never* * check its required fields, regardless of whether or not the message has * been parsed. */ lazy: boolean; /** * Is this field deprecated? * Depending on the target platform, this can emit Deprecated annotations * for accessors, or it will be completely ignored; in the very least, this * is a formalization for deprecating fields. */ deprecated: boolean; /** For Google-internal migration only. Do not use. */ weak: boolean; /** The parser stores options it doesn't recognize here. See above. */ uninterpretedOption: UninterpretedOption[]; } export interface FieldOptionsProtoMsg { typeUrl: "/google.protobuf.FieldOptions"; value: Uint8Array; } export interface FieldOptionsAmino { /** * The ctype option instructs the C++ code generator to use a different * representation of the field than it normally would. See the specific * options below. This option is not yet implemented in the open source * release -- sorry, we'll try to include it in a future version! */ ctype?: FieldOptions_CType; /** * The packed option can be enabled for repeated primitive fields to enable * a more efficient representation on the wire. Rather than repeatedly * writing the tag and type for each element, the entire array is encoded as * a single length-delimited blob. In proto3, only explicit setting it to * false will avoid using packed encoding. */ packed?: boolean; /** * The jstype option determines the JavaScript type used for values of the * field. The option is permitted only for 64 bit integral and fixed types * (int64, uint64, sint64, fixed64, sfixed64). A field with jstype JS_STRING * is represented as JavaScript string, which avoids loss of precision that * can happen when a large value is converted to a floating point JavaScript. * Specifying JS_NUMBER for the jstype causes the generated JavaScript code to * use the JavaScript "number" type. The behavior of the default option * JS_NORMAL is implementation dependent. * * This option is an enum to permit additional types to be added, e.g. * goog.math.Integer. */ jstype?: FieldOptions_JSType; /** * Should this field be parsed lazily? Lazy applies only to message-type * fields. It means that when the outer message is initially parsed, the * inner message's contents will not be parsed but instead stored in encoded * form. The inner message will actually be parsed when it is first accessed. * * This is only a hint. Implementations are free to choose whether to use * eager or lazy parsing regardless of the value of this option. However, * setting this option true suggests that the protocol author believes that * using lazy parsing on this field is worth the additional bookkeeping * overhead typically needed to implement it. * * This option does not affect the public interface of any generated code; * all method signatures remain the same. Furthermore, thread-safety of the * interface is not affected by this option; const methods remain safe to * call from multiple threads concurrently, while non-const methods continue * to require exclusive access. * * * Note that implementations may choose not to check required fields within * a lazy sub-message. That is, calling IsInitialized() on the outer message * may return true even if the inner message has missing required fields. * This is necessary because otherwise the inner message would have to be * parsed in order to perform the check, defeating the purpose of lazy * parsing. An implementation which chooses not to check required fields * must be consistent about it. That is, for any particular sub-message, the * implementation must either *always* check its required fields, or *never* * check its required fields, regardless of whether or not the message has * been parsed. */ lazy?: boolean; /** * Is this field deprecated? * Depending on the target platform, this can emit Deprecated annotations * for accessors, or it will be completely ignored; in the very least, this * is a formalization for deprecating fields. */ deprecated?: boolean; /** For Google-internal migration only. Do not use. */ weak?: boolean; /** The parser stores options it doesn't recognize here. See above. */ uninterpreted_option?: UninterpretedOptionAmino[]; } export interface FieldOptionsAminoMsg { type: "/google.protobuf.FieldOptions"; value: FieldOptionsAmino; } export interface FieldOptionsSDKType { ctype: FieldOptions_CType; packed: boolean; jstype: FieldOptions_JSType; lazy: boolean;