import * as flatbuffers from 'flatbuffers';
import { Metric as Metric } from './Metric_generated.js';
/**
 * The Test Request message forces a Heartbeat message from the opposing
 * application. The Test Request message may be sent by either side.
 *
 * The Test Request message verifies communication line status. The opposite
 * application responds to the Test Request message with a Heartbeat message
 * containing the TestReqID.
 */
export declare class TestRequest {
    bb: flatbuffers.ByteBuffer | null;
    bb_pos: number;
    __init(i: number, bb: flatbuffers.ByteBuffer): TestRequest;
    static getRootAsTestRequest(bb: flatbuffers.ByteBuffer, obj?: TestRequest): TestRequest;
    static getSizePrefixedRootAsTestRequest(bb: flatbuffers.ByteBuffer, obj?: TestRequest): TestRequest;
    /**
     * Identifier to be returned in resulting Heartbeat.
     */
    reqId(): string | null;
    reqId(optionalEncoding: flatbuffers.Encoding): string | Uint8Array | null;
    /**
     * Optional array of metrics for monitoring purposes.
     */
    metrics(index: number, obj?: Metric): Metric | null;
    metricsLength(): number;
    static startTestRequest(builder: flatbuffers.Builder): void;
    static addReqId(builder: flatbuffers.Builder, reqIdOffset: flatbuffers.Offset): void;
    static addMetrics(builder: flatbuffers.Builder, metricsOffset: flatbuffers.Offset): void;
    static createMetricsVector(builder: flatbuffers.Builder, data: flatbuffers.Offset[]): flatbuffers.Offset;
    static startMetricsVector(builder: flatbuffers.Builder, numElems: number): void;
    static endTestRequest(builder: flatbuffers.Builder): flatbuffers.Offset;
    static createTestRequest(builder: flatbuffers.Builder, reqIdOffset: flatbuffers.Offset, metricsOffset: flatbuffers.Offset): flatbuffers.Offset;
}
