import { GrpcMessage, RecursivePartial, ToProtobufJSONOptions } from '@ngx-grpc/common';
import { BinaryReader, BinaryWriter, ByteSource } from 'google-protobuf';
export declare enum PartitionRawEnumField {
    PARTITION_RAW_ENUM_FIELD_UNSPECIFIED = 0,
    PARTITION_RAW_ENUM_FIELD_ID = 1,
    PARTITION_RAW_ENUM_FIELD_PARENT_PARTITION_IDS = 2,
    PARTITION_RAW_ENUM_FIELD_POD_RESERVED = 3,
    PARTITION_RAW_ENUM_FIELD_POD_MAX = 4,
    PARTITION_RAW_ENUM_FIELD_PREEMPTION_PERCENTAGE = 5,
    PARTITION_RAW_ENUM_FIELD_PRIORITY = 6
}
/**
 * Message implementation for armonik.api.grpc.v1.partitions.PartitionRawField
 */
export declare class PartitionRawField implements GrpcMessage {
    static id: string;
    /**
     * Deserialize binary data to message
     * @param instance message instance
     */
    static deserializeBinary(bytes: ByteSource): PartitionRawField;
    /**
     * Check all the properties and set default protobuf values if necessary
     * @param _instance message instance
     */
    static refineValues(_instance: PartitionRawField): void;
    /**
     * Deserializes / reads binary message into message instance using provided binary reader
     * @param _instance message instance
     * @param _reader binary reader instance
     */
    static deserializeBinaryFromReader(_instance: PartitionRawField, _reader: BinaryReader): void;
    /**
     * Serializes a message to binary format using provided binary reader
     * @param _instance message instance
     * @param _writer binary writer instance
     */
    static serializeBinaryToWriter(_instance: PartitionRawField, _writer: BinaryWriter): void;
    private _field;
    /**
     * Message constructor. Initializes the properties and applies default Protobuf values if necessary
     * @param _value initial values object or instance of PartitionRawField to deeply clone from
     */
    constructor(_value?: RecursivePartial<PartitionRawField.AsObject>);
    get field(): PartitionRawEnumField;
    set field(value: PartitionRawEnumField);
    /**
     * Serialize message to binary data
     * @param instance message instance
     */
    serializeBinary(): Uint8Array;
    /**
     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)
     */
    toObject(): PartitionRawField.AsObject;
    /**
     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()
     */
    toJSON(): PartitionRawField.AsObject;
    /**
     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json
     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.
     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required
     */
    toProtobufJSON(options?: ToProtobufJSONOptions): PartitionRawField.AsProtobufJSON;
}
export declare namespace PartitionRawField {
    /**
     * Standard JavaScript object representation for PartitionRawField
     */
    interface AsObject {
        field: PartitionRawEnumField;
    }
    /**
     * Protobuf JSON representation for PartitionRawField
     */
    interface AsProtobufJSON {
        field: string;
    }
}
/**
 * Message implementation for armonik.api.grpc.v1.partitions.PartitionField
 */
export declare class PartitionField implements GrpcMessage {
    static id: string;
    /**
     * Deserialize binary data to message
     * @param instance message instance
     */
    static deserializeBinary(bytes: ByteSource): PartitionField;
    /**
     * Check all the properties and set default protobuf values if necessary
     * @param _instance message instance
     */
    static refineValues(_instance: PartitionField): void;
    /**
     * Deserializes / reads binary message into message instance using provided binary reader
     * @param _instance message instance
     * @param _reader binary reader instance
     */
    static deserializeBinaryFromReader(_instance: PartitionField, _reader: BinaryReader): void;
    /**
     * Serializes a message to binary format using provided binary reader
     * @param _instance message instance
     * @param _writer binary writer instance
     */
    static serializeBinaryToWriter(_instance: PartitionField, _writer: BinaryWriter): void;
    private _partitionRawField?;
    private _field;
    /**
     * Message constructor. Initializes the properties and applies default Protobuf values if necessary
     * @param _value initial values object or instance of PartitionField to deeply clone from
     */
    constructor(_value?: RecursivePartial<PartitionField.AsObject>);
    get partitionRawField(): PartitionRawField | undefined;
    set partitionRawField(value: PartitionRawField | undefined);
    get field(): PartitionField.FieldCase;
    /**
     * Serialize message to binary data
     * @param instance message instance
     */
    serializeBinary(): Uint8Array;
    /**
     * Cast message to standard JavaScript object (all non-primitive values are deeply cloned)
     */
    toObject(): PartitionField.AsObject;
    /**
     * Convenience method to support JSON.stringify(message), replicates the structure of toObject()
     */
    toJSON(): PartitionField.AsObject;
    /**
     * Cast message to JSON using protobuf JSON notation: https://developers.google.com/protocol-buffers/docs/proto3#json
     * Attention: output differs from toObject() e.g. enums are represented as names and not as numbers, Timestamp is an ISO Date string format etc.
     * If the message itself or some of descendant messages is google.protobuf.Any, you MUST provide a message pool as options. If not, the messagePool is not required
     */
    toProtobufJSON(options?: ToProtobufJSONOptions): PartitionField.AsProtobufJSON;
}
export declare namespace PartitionField {
    /**
     * Standard JavaScript object representation for PartitionField
     */
    interface AsObject {
        partitionRawField?: PartitionRawField.AsObject;
    }
    /**
     * Protobuf JSON representation for PartitionField
     */
    interface AsProtobufJSON {
        partitionRawField: PartitionRawField.AsProtobufJSON | null;
    }
    enum FieldCase {
        none = 0,
        partitionRawField = 1
    }
}
