import type { GenFile, GenMessage } from "@bufbuild/protobuf/codegenv2";
import type { Message } from "@bufbuild/protobuf";
/**
 * Describes the file protos/ydb_query_stats.proto.
 */
export declare const file_protos_ydb_query_stats: GenFile;
/**
 * Describes select, update (insert, upsert, replace) and delete operations
 *
 * @generated from message Ydb.TableStats.OperationStats
 */
export type OperationStats = Message<"Ydb.TableStats.OperationStats"> & {
    /**
     * @generated from field: uint64 rows = 1;
     */
    rows: bigint;
    /**
     * @generated from field: uint64 bytes = 2;
     */
    bytes: bigint;
};
/**
 * Describes the message Ydb.TableStats.OperationStats.
 * Use `create(OperationStatsSchema)` to create a new message.
 */
export declare const OperationStatsSchema: GenMessage<OperationStats>;
/**
 * Describes all operations on a table
 *
 * @generated from message Ydb.TableStats.TableAccessStats
 */
export type TableAccessStats = Message<"Ydb.TableStats.TableAccessStats"> & {
    /**
     * @generated from field: string name = 1;
     */
    name: string;
    /**
     * @generated from field: Ydb.TableStats.OperationStats reads = 3;
     */
    reads?: OperationStats;
    /**
     * @generated from field: Ydb.TableStats.OperationStats updates = 4;
     */
    updates?: OperationStats;
    /**
     * @generated from field: Ydb.TableStats.OperationStats deletes = 5;
     */
    deletes?: OperationStats;
    /**
     * @generated from field: uint64 partitions_count = 6;
     */
    partitionsCount: bigint;
};
/**
 * Describes the message Ydb.TableStats.TableAccessStats.
 * Use `create(TableAccessStatsSchema)` to create a new message.
 */
export declare const TableAccessStatsSchema: GenMessage<TableAccessStats>;
/**
 * @generated from message Ydb.TableStats.QueryPhaseStats
 */
export type QueryPhaseStats = Message<"Ydb.TableStats.QueryPhaseStats"> & {
    /**
     * @generated from field: uint64 duration_us = 1;
     */
    durationUs: bigint;
    /**
     * @generated from field: repeated Ydb.TableStats.TableAccessStats table_access = 2;
     */
    tableAccess: TableAccessStats[];
    /**
     * @generated from field: uint64 cpu_time_us = 3;
     */
    cpuTimeUs: bigint;
    /**
     * @generated from field: uint64 affected_shards = 4;
     */
    affectedShards: bigint;
    /**
     * @generated from field: bool literal_phase = 5;
     */
    literalPhase: boolean;
};
/**
 * Describes the message Ydb.TableStats.QueryPhaseStats.
 * Use `create(QueryPhaseStatsSchema)` to create a new message.
 */
export declare const QueryPhaseStatsSchema: GenMessage<QueryPhaseStats>;
/**
 * @generated from message Ydb.TableStats.CompilationStats
 */
export type CompilationStats = Message<"Ydb.TableStats.CompilationStats"> & {
    /**
     * @generated from field: bool from_cache = 1;
     */
    fromCache: boolean;
    /**
     * @generated from field: uint64 duration_us = 2;
     */
    durationUs: bigint;
    /**
     * @generated from field: uint64 cpu_time_us = 3;
     */
    cpuTimeUs: bigint;
};
/**
 * Describes the message Ydb.TableStats.CompilationStats.
 * Use `create(CompilationStatsSchema)` to create a new message.
 */
export declare const CompilationStatsSchema: GenMessage<CompilationStats>;
/**
 * @generated from message Ydb.TableStats.QueryStats
 */
export type QueryStats = Message<"Ydb.TableStats.QueryStats"> & {
    /**
     * A query might have one or more execution phases
     *
     * @generated from field: repeated Ydb.TableStats.QueryPhaseStats query_phases = 1;
     */
    queryPhases: QueryPhaseStats[];
    /**
     * @generated from field: Ydb.TableStats.CompilationStats compilation = 2;
     */
    compilation?: CompilationStats;
    /**
     * @generated from field: uint64 process_cpu_time_us = 3;
     */
    processCpuTimeUs: bigint;
    /**
     * @generated from field: string query_plan = 4;
     */
    queryPlan: string;
    /**
     * @generated from field: string query_ast = 5;
     */
    queryAst: string;
    /**
     * @generated from field: uint64 total_duration_us = 6;
     */
    totalDurationUs: bigint;
    /**
     * @generated from field: uint64 total_cpu_time_us = 7;
     */
    totalCpuTimeUs: bigint;
};
/**
 * Describes the message Ydb.TableStats.QueryStats.
 * Use `create(QueryStatsSchema)` to create a new message.
 */
export declare const QueryStatsSchema: GenMessage<QueryStats>;
//# sourceMappingURL=ydb_query_stats_pb.d.ts.map