import type { BinaryWriteOptions } from "@protobuf-ts/runtime"; import type { IBinaryWriter } from "@protobuf-ts/runtime"; import type { BinaryReadOptions } from "@protobuf-ts/runtime"; import type { IBinaryReader } from "@protobuf-ts/runtime"; import type { PartialMessage } from "@protobuf-ts/runtime"; import { MessageType } from "@protobuf-ts/runtime"; import { Any } from "./any"; import { SourceContext } from "./source_context"; /** * A protocol buffer message type. * * @generated from protobuf message google.protobuf.Type */ export interface Type { /** * The fully qualified message name. * * @generated from protobuf field: string name = 1; */ name: string; /** * The list of fields. * * @generated from protobuf field: repeated google.protobuf.Field fields = 2; */ fields: Field[]; /** * The list of types appearing in `oneof` definitions in this type. * * @generated from protobuf field: repeated string oneofs = 3; */ oneofs: string[]; /** * The protocol buffer options. * * @generated from protobuf field: repeated google.protobuf.Option options = 4; */ options: Option[]; /** * The source context. * * @generated from protobuf field: google.protobuf.SourceContext source_context = 5; */ sourceContext?: SourceContext; /** * The source syntax. * * @generated from protobuf field: google.protobuf.Syntax syntax = 6; */ syntax: Syntax; } /** * A single field of a message type. * * @generated from protobuf message google.protobuf.Field */ export interface Field { /** * The field type. * * @generated from protobuf field: google.protobuf.Field.Kind kind = 1; */ kind: Field_Kind; /** * The field cardinality. * * @generated from protobuf field: google.protobuf.Field.Cardinality cardinality = 2; */ cardinality: Field_Cardinality; /** * The field number. * * @generated from protobuf field: int32 number = 3; */ number: number; /** * The field name. * * @generated from protobuf field: string name = 4; */ name: string; /** * The field type URL, without the scheme, for message or enumeration * types. Example: `"type.googleapis.com/google.protobuf.Timestamp"`. * * @generated from protobuf field: string type_url = 6; */ typeUrl: string; /** * The index of the field type in `Type.oneofs`, for message or enumeration * types. The first type has index 1; zero means the type is not in the list. * * @generated from protobuf field: int32 oneof_index = 7; */ oneofIndex: number; /** * Whether to use alternative packed wire representation. * * @generated from protobuf field: bool packed = 8; */ packed: boolean; /** * The protocol buffer options. * * @generated from protobuf field: repeated google.protobuf.Option options = 9; */ options: Option[]; /** * The field JSON name. * * @generated from protobuf field: string json_name = 10; */ jsonName: string; /** * The string value of the default value of this field. Proto2 syntax only. * * @generated from protobuf field: string default_value = 11; */ defaultValue: string; } /** * Basic field types. * * @generated from protobuf enum google.protobuf.Field.Kind */ export declare enum Field_Kind { /** * Field type unknown. * * @generated from protobuf enum value: TYPE_UNKNOWN = 0; */ TYPE_UNKNOWN = 0, /** * Field type double. * * @generated from protobuf enum value: TYPE_DOUBLE = 1; */ TYPE_DOUBLE = 1, /** * Field type float. * * @generated from protobuf enum value: TYPE_FLOAT = 2; */ TYPE_FLOAT = 2, /** * Field type int64. * * @generated from protobuf enum value: TYPE_INT64 = 3; */ TYPE_INT64 = 3, /** * Field type uint64. * * @generated from protobuf enum value: TYPE_UINT64 = 4; */ TYPE_UINT64 = 4, /** * Field type int32. * * @generated from protobuf enum value: TYPE_INT32 = 5; */ TYPE_INT32 = 5, /** * Field type fixed64. * * @generated from protobuf enum value: TYPE_FIXED64 = 6; */ TYPE_FIXED64 = 6, /** * Field type fixed32. * * @generated from protobuf enum value: TYPE_FIXED32 = 7; */ TYPE_FIXED32 = 7, /** * Field type bool. * * @generated from protobuf enum value: TYPE_BOOL = 8; */ TYPE_BOOL = 8, /** * Field type string. * * @generated from protobuf enum value: TYPE_STRING = 9; */ TYPE_STRING = 9, /** * Field type group. Proto2 syntax only, and deprecated. * * @generated from protobuf enum value: TYPE_GROUP = 10; */ TYPE_GROUP = 10, /** * Field type message. * * @generated from protobuf enum value: TYPE_MESSAGE = 11; */ TYPE_MESSAGE = 11, /** * Field type bytes. * * @generated from protobuf enum value: TYPE_BYTES = 12; */ TYPE_BYTES = 12, /** * Field type uint32. * * @generated from protobuf enum value: TYPE_UINT32 = 13; */ TYPE_UINT32 = 13, /** * Field type enum. * * @generated from protobuf enum value: TYPE_ENUM = 14; */ TYPE_ENUM = 14, /** * Field type sfixed32. * * @generated from protobuf enum value: TYPE_SFIXED32 = 15; */ TYPE_SFIXED32 = 15, /** * Field type sfixed64. * * @generated from protobuf enum value: TYPE_SFIXED64 = 16; */ TYPE_SFIXED64 = 16, /** * Field type sint32. * * @generated from protobuf enum value: TYPE_SINT32 = 17; */ TYPE_SINT32 = 17, /** * Field type sint64. * * @generated from protobuf enum value: TYPE_SINT64 = 18; */ TYPE_SINT64 = 18 } /** * Whether a field is optional, required, or repeated. * * @generated from protobuf enum google.protobuf.Field.Cardinality */ export declare enum Field_Cardinality { /** * For fields with unknown cardinality. * * @generated from protobuf enum value: CARDINALITY_UNKNOWN = 0; */ UNKNOWN = 0, /** * For optional fields. * * @generated from protobuf enum value: CARDINALITY_OPTIONAL = 1; */ OPTIONAL = 1, /** * For required fields. Proto2 syntax only. * * @generated from protobuf enum value: CARDINALITY_REQUIRED = 2; */ REQUIRED = 2, /** * For repeated fields. * * @generated from protobuf enum value: CARDINALITY_REPEATED = 3; */ REPEATED = 3 } /** * Enum type definition. * * @generated from protobuf message google.protobuf.Enum */ export interface Enum { /** * Enum type name. * * @generated from protobuf field: string name = 1; */ name: string; /** * Enum value definitions. * * @generated from protobuf field: repeated google.protobuf.EnumValue enumvalue = 2; */ enumvalue: EnumValue[]; /** * Protocol buffer options. * * @generated from protobuf field: repeated google.protobuf.Option options = 3; */ options: Option[]; /** * The source context. * * @generated from protobuf field: google.protobuf.SourceContext source_context = 4; */ sourceContext?: SourceContext; /** * The source syntax. * * @generated from protobuf field: google.protobuf.Syntax syntax = 5; */ syntax: Syntax; } /** * Enum value definition. * * @generated from protobuf message google.protobuf.EnumValue */ export interface EnumValue { /** * Enum value name. * * @generated from protobuf field: string name = 1; */ name: string; /** * Enum value number. * * @generated from protobuf field: int32 number = 2; */ number: number; /** * Protocol buffer options. * * @generated from protobuf field: repeated google.protobuf.Option options = 3; */ options: Option[]; } /** * A protocol buffer option, which can be attached to a message, field, * enumeration, etc. * * @generated from protobuf message google.protobuf.Option */ export interface Option { /** * The option's name. For protobuf built-in options (options defined in * descriptor.proto), this is the short name. For example, `"map_entry"`. * For custom options, it should be the fully-qualified name. For example, * `"google.api.http"`. * * @generated from protobuf field: string name = 1; */ name: string; /** * The option's value packed in an Any message. If the value is a primitive, * the corresponding wrapper type defined in google/protobuf/wrappers.proto * should be used. If the value is an enum, it should be stored as an int32 * value using the google.protobuf.Int32Value type. * * @generated from protobuf field: google.protobuf.Any value = 2; */ value?: Any; } /** * The syntax in which a protocol buffer element is defined. * * @generated from protobuf enum google.protobuf.Syntax */ export declare enum Syntax { /** * Syntax `proto2`. * * @generated from protobuf enum value: SYNTAX_PROTO2 = 0; */ PROTO2 = 0, /** * Syntax `proto3`. * * @generated from protobuf enum value: SYNTAX_PROTO3 = 1; */ PROTO3 = 1 } declare class Type$Type extends MessageType { constructor(); create(value?: PartialMessage): Type; internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Type): Type; internalBinaryWrite(message: Type, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter; } /** * @generated MessageType for protobuf message google.protobuf.Type */ export declare const Type: Type$Type; declare class Field$Type extends MessageType { constructor(); create(value?: PartialMessage): Field; internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Field): Field; internalBinaryWrite(message: Field, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter; } /** * @generated MessageType for protobuf message google.protobuf.Field */ export declare const Field: Field$Type; declare class Enum$Type extends MessageType { constructor(); create(value?: PartialMessage): Enum; internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: Enum): Enum; internalBinaryWrite(message: Enum, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter; } /** * @generated MessageType for protobuf message google.protobuf.Enum */ export declare const Enum: Enum$Type; declare class EnumValue$Type extends MessageType { constructor(); create(value?: PartialMessage): EnumValue; internalBinaryRead(reader: IBinaryReader, length: number, options: BinaryReadOptions, target?: EnumValue): EnumValue; internalBinaryWrite(message: EnumValue, writer: IBinaryWriter, options: BinaryWriteOptions): IBinaryWriter; } /** * @generated MessageType for protobuf message google.protobuf.EnumValue */ export declare const EnumValue: EnumValue$Type; declare class Option$Type extends MessageType