/**
 * Protobuf encoder/decoder for trace_processor HTTP API
 *
 * This module provides utilities for encoding QueryArgs and decoding QueryResult
 * protobuf messages used by trace_processor_shell HTTP API.
 */
/**
 * Encode a varint (variable-length integer)
 */
export declare function encodeVarint(value: number): Buffer;
/**
 * Decode a varint from buffer at given offset
 * Returns [value, bytesRead]
 */
export declare function decodeVarint(buf: Buffer, offset: number): [number, number];
/**
 * Encode a string field
 */
export declare function encodeStringField(fieldNum: number, str: string): Buffer;
/**
 * Encode QueryArgs protobuf message
 */
export declare function encodeQueryArgs(sql: string): Buffer;
export declare function decodeQueryArgsSql(buf: Buffer): string;
/**
 * Cell types in QueryResult
 */
export declare enum CellType {
    CELL_INVALID = 0,
    CELL_NULL = 1,
    CELL_VARINT = 2,
    CELL_FLOAT64 = 3,
    CELL_STRING = 4,
    CELL_BLOB = 5
}
/**
 * Parsed QueryResult
 */
export interface ParsedQueryResult {
    columnNames: string[];
    rows: any[][];
    error?: string;
    statementCount?: number;
    lastStatementSql?: string;
}
export interface EncodableQueryResult {
    columnNames: string[];
    rows: any[][];
    error?: string;
}
export declare function encodeQueryResult(result: EncodableQueryResult): Buffer;
/**
 * Decode QueryResult protobuf message
 */
export declare function decodeQueryResult(buf: Buffer): ParsedQueryResult;
//# sourceMappingURL=traceProcessorProtobuf.d.ts.map