import type { MessageInitShape } from "@bufbuild/protobuf";
import { AlterTableRequestSchema, AlterTableResponseSchema, BeginTransactionRequestSchema, BeginTransactionResponseSchema, BulkUpsertRequestSchema, BulkUpsertResponseSchema, CommitTransactionRequestSchema, CommitTransactionResponseSchema, CopyTableRequestSchema, CopyTableResponseSchema, CopyTablesRequestSchema, CopyTablesResponseSchema, CreateSessionRequestSchema, CreateSessionResponseSchema, CreateTableRequestSchema, CreateTableResponseSchema, DeleteSessionRequestSchema, DeleteSessionResponseSchema, DescribeTableOptionsRequestSchema, DescribeTableOptionsResponseSchema, DescribeTableRequestSchema, DescribeTableResponseSchema, DropTableRequestSchema, DropTableResponseSchema, ExecuteDataQueryRequestSchema, ExecuteDataQueryResponseSchema, ExecuteScanQueryPartialResponseSchema, ExecuteScanQueryRequestSchema, ExecuteSchemeQueryRequestSchema, ExecuteSchemeQueryResponseSchema, ExplainDataQueryRequestSchema, ExplainDataQueryResponseSchema, KeepAliveRequestSchema, KeepAliveResponseSchema, PrepareDataQueryRequestSchema, PrepareDataQueryResponseSchema, ReadRowsRequestSchema, ReadRowsResponseSchema, ReadTableRequestSchema, ReadTableResponseSchema, RenameTablesRequestSchema, RenameTablesResponseSchema, RollbackTransactionRequestSchema, RollbackTransactionResponseSchema } from "./protos/ydb_table_pb.js";
/**
 * @generated from service Ydb.Table.V1.TableService
 */
export declare const TableServiceDefinition: {
    /**
     * Create new session. Implicit session creation is forbidden,
     * so user must create new session before execute any query,
     * otherwise BAD_SESSION status will be returned.
     * Simultaneous execution of requests are forbiden.
     * Sessions are volatile, can be invalidated by server, for example in case
     * of fatal errors. All requests with this session will fail with BAD_SESSION status.
     * So, client must be able to handle BAD_SESSION status.
     *
     * @generated from rpc Ydb.Table.V1.TableService.CreateSession
     */
    readonly createSession: {
        readonly path: "/Ydb.Table.V1.TableService/CreateSession";
        readonly requestStream: false;
        readonly requestSerialize: (message: MessageInitShape<typeof CreateSessionRequestSchema>) => Uint8Array<ArrayBufferLike>;
        readonly requestDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").CreateSessionRequest;
        readonly responseStream: false;
        readonly responseSerialize: (message: MessageInitShape<typeof CreateSessionResponseSchema>) => Uint8Array<ArrayBufferLike>;
        readonly responseDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").CreateSessionResponse;
        readonly options: {};
    };
    /**
     * Ends a session, releasing server resources associated with it.
     *
     * @generated from rpc Ydb.Table.V1.TableService.DeleteSession
     */
    readonly deleteSession: {
        readonly path: "/Ydb.Table.V1.TableService/DeleteSession";
        readonly requestStream: false;
        readonly requestSerialize: (message: MessageInitShape<typeof DeleteSessionRequestSchema>) => Uint8Array<ArrayBufferLike>;
        readonly requestDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").DeleteSessionRequest;
        readonly responseStream: false;
        readonly responseSerialize: (message: MessageInitShape<typeof DeleteSessionResponseSchema>) => Uint8Array<ArrayBufferLike>;
        readonly responseDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").DeleteSessionResponse;
        readonly options: {};
    };
    /**
     * Idle sessions can be kept alive by calling KeepAlive periodically.
     *
     * @generated from rpc Ydb.Table.V1.TableService.KeepAlive
     */
    readonly keepAlive: {
        readonly path: "/Ydb.Table.V1.TableService/KeepAlive";
        readonly requestStream: false;
        readonly requestSerialize: (message: MessageInitShape<typeof KeepAliveRequestSchema>) => Uint8Array<ArrayBufferLike>;
        readonly requestDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").KeepAliveRequest;
        readonly responseStream: false;
        readonly responseSerialize: (message: MessageInitShape<typeof KeepAliveResponseSchema>) => Uint8Array<ArrayBufferLike>;
        readonly responseDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").KeepAliveResponse;
        readonly options: {};
    };
    /**
     * Creates new table.
     *
     * @generated from rpc Ydb.Table.V1.TableService.CreateTable
     */
    readonly createTable: {
        readonly path: "/Ydb.Table.V1.TableService/CreateTable";
        readonly requestStream: false;
        readonly requestSerialize: (message: MessageInitShape<typeof CreateTableRequestSchema>) => Uint8Array<ArrayBufferLike>;
        readonly requestDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").CreateTableRequest;
        readonly responseStream: false;
        readonly responseSerialize: (message: MessageInitShape<typeof CreateTableResponseSchema>) => Uint8Array<ArrayBufferLike>;
        readonly responseDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").CreateTableResponse;
        readonly options: {};
    };
    /**
     * Drop table.
     *
     * @generated from rpc Ydb.Table.V1.TableService.DropTable
     */
    readonly dropTable: {
        readonly path: "/Ydb.Table.V1.TableService/DropTable";
        readonly requestStream: false;
        readonly requestSerialize: (message: MessageInitShape<typeof DropTableRequestSchema>) => Uint8Array<ArrayBufferLike>;
        readonly requestDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").DropTableRequest;
        readonly responseStream: false;
        readonly responseSerialize: (message: MessageInitShape<typeof DropTableResponseSchema>) => Uint8Array<ArrayBufferLike>;
        readonly responseDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").DropTableResponse;
        readonly options: {};
    };
    /**
     * Modifies schema of given table.
     *
     * @generated from rpc Ydb.Table.V1.TableService.AlterTable
     */
    readonly alterTable: {
        readonly path: "/Ydb.Table.V1.TableService/AlterTable";
        readonly requestStream: false;
        readonly requestSerialize: (message: MessageInitShape<typeof AlterTableRequestSchema>) => Uint8Array<ArrayBufferLike>;
        readonly requestDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").AlterTableRequest;
        readonly responseStream: false;
        readonly responseSerialize: (message: MessageInitShape<typeof AlterTableResponseSchema>) => Uint8Array<ArrayBufferLike>;
        readonly responseDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").AlterTableResponse;
        readonly options: {};
    };
    /**
     * Creates copy of given table.
     *
     * @generated from rpc Ydb.Table.V1.TableService.CopyTable
     */
    readonly copyTable: {
        readonly path: "/Ydb.Table.V1.TableService/CopyTable";
        readonly requestStream: false;
        readonly requestSerialize: (message: MessageInitShape<typeof CopyTableRequestSchema>) => Uint8Array<ArrayBufferLike>;
        readonly requestDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").CopyTableRequest;
        readonly responseStream: false;
        readonly responseSerialize: (message: MessageInitShape<typeof CopyTableResponseSchema>) => Uint8Array<ArrayBufferLike>;
        readonly responseDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").CopyTableResponse;
        readonly options: {};
    };
    /**
     * Creates consistent copy of given tables.
     *
     * @generated from rpc Ydb.Table.V1.TableService.CopyTables
     */
    readonly copyTables: {
        readonly path: "/Ydb.Table.V1.TableService/CopyTables";
        readonly requestStream: false;
        readonly requestSerialize: (message: MessageInitShape<typeof CopyTablesRequestSchema>) => Uint8Array<ArrayBufferLike>;
        readonly requestDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").CopyTablesRequest;
        readonly responseStream: false;
        readonly responseSerialize: (message: MessageInitShape<typeof CopyTablesResponseSchema>) => Uint8Array<ArrayBufferLike>;
        readonly responseDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").CopyTablesResponse;
        readonly options: {};
    };
    /**
     * Creates consistent move of given tables.
     *
     * @generated from rpc Ydb.Table.V1.TableService.RenameTables
     */
    readonly renameTables: {
        readonly path: "/Ydb.Table.V1.TableService/RenameTables";
        readonly requestStream: false;
        readonly requestSerialize: (message: MessageInitShape<typeof RenameTablesRequestSchema>) => Uint8Array<ArrayBufferLike>;
        readonly requestDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").RenameTablesRequest;
        readonly responseStream: false;
        readonly responseSerialize: (message: MessageInitShape<typeof RenameTablesResponseSchema>) => Uint8Array<ArrayBufferLike>;
        readonly responseDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").RenameTablesResponse;
        readonly options: {};
    };
    /**
     * Returns information about given table (metadata).
     *
     * @generated from rpc Ydb.Table.V1.TableService.DescribeTable
     */
    readonly describeTable: {
        readonly path: "/Ydb.Table.V1.TableService/DescribeTable";
        readonly requestStream: false;
        readonly requestSerialize: (message: MessageInitShape<typeof DescribeTableRequestSchema>) => Uint8Array<ArrayBufferLike>;
        readonly requestDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").DescribeTableRequest;
        readonly responseStream: false;
        readonly responseSerialize: (message: MessageInitShape<typeof DescribeTableResponseSchema>) => Uint8Array<ArrayBufferLike>;
        readonly responseDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").DescribeTableResponse;
        readonly options: {};
    };
    /**
     * Explains data query.
     * SessionId of previously created session must be provided.
     *
     * @generated from rpc Ydb.Table.V1.TableService.ExplainDataQuery
     */
    readonly explainDataQuery: {
        readonly path: "/Ydb.Table.V1.TableService/ExplainDataQuery";
        readonly requestStream: false;
        readonly requestSerialize: (message: MessageInitShape<typeof ExplainDataQueryRequestSchema>) => Uint8Array<ArrayBufferLike>;
        readonly requestDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").ExplainDataQueryRequest;
        readonly responseStream: false;
        readonly responseSerialize: (message: MessageInitShape<typeof ExplainDataQueryResponseSchema>) => Uint8Array<ArrayBufferLike>;
        readonly responseDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").ExplainDataQueryResponse;
        readonly options: {};
    };
    /**
     * Prepares data query, returns query id.
     * SessionId of previously created session must be provided.
     *
     * @generated from rpc Ydb.Table.V1.TableService.PrepareDataQuery
     */
    readonly prepareDataQuery: {
        readonly path: "/Ydb.Table.V1.TableService/PrepareDataQuery";
        readonly requestStream: false;
        readonly requestSerialize: (message: MessageInitShape<typeof PrepareDataQueryRequestSchema>) => Uint8Array<ArrayBufferLike>;
        readonly requestDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").PrepareDataQueryRequest;
        readonly responseStream: false;
        readonly responseSerialize: (message: MessageInitShape<typeof PrepareDataQueryResponseSchema>) => Uint8Array<ArrayBufferLike>;
        readonly responseDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").PrepareDataQueryResponse;
        readonly options: {};
    };
    /**
     * Executes data query.
     * SessionId of previously created session must be provided.
     *
     * @generated from rpc Ydb.Table.V1.TableService.ExecuteDataQuery
     */
    readonly executeDataQuery: {
        readonly path: "/Ydb.Table.V1.TableService/ExecuteDataQuery";
        readonly requestStream: false;
        readonly requestSerialize: (message: MessageInitShape<typeof ExecuteDataQueryRequestSchema>) => Uint8Array<ArrayBufferLike>;
        readonly requestDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").ExecuteDataQueryRequest;
        readonly responseStream: false;
        readonly responseSerialize: (message: MessageInitShape<typeof ExecuteDataQueryResponseSchema>) => Uint8Array<ArrayBufferLike>;
        readonly responseDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").ExecuteDataQueryResponse;
        readonly options: {};
    };
    /**
     * Executes scheme query.
     * SessionId of previously created session must be provided.
     *
     * @generated from rpc Ydb.Table.V1.TableService.ExecuteSchemeQuery
     */
    readonly executeSchemeQuery: {
        readonly path: "/Ydb.Table.V1.TableService/ExecuteSchemeQuery";
        readonly requestStream: false;
        readonly requestSerialize: (message: MessageInitShape<typeof ExecuteSchemeQueryRequestSchema>) => Uint8Array<ArrayBufferLike>;
        readonly requestDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").ExecuteSchemeQueryRequest;
        readonly responseStream: false;
        readonly responseSerialize: (message: MessageInitShape<typeof ExecuteSchemeQueryResponseSchema>) => Uint8Array<ArrayBufferLike>;
        readonly responseDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").ExecuteSchemeQueryResponse;
        readonly options: {};
    };
    /**
     * Begins new transaction.
     *
     * @generated from rpc Ydb.Table.V1.TableService.BeginTransaction
     */
    readonly beginTransaction: {
        readonly path: "/Ydb.Table.V1.TableService/BeginTransaction";
        readonly requestStream: false;
        readonly requestSerialize: (message: MessageInitShape<typeof BeginTransactionRequestSchema>) => Uint8Array<ArrayBufferLike>;
        readonly requestDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").BeginTransactionRequest;
        readonly responseStream: false;
        readonly responseSerialize: (message: MessageInitShape<typeof BeginTransactionResponseSchema>) => Uint8Array<ArrayBufferLike>;
        readonly responseDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").BeginTransactionResponse;
        readonly options: {};
    };
    /**
     * Commits specified active transaction.
     *
     * @generated from rpc Ydb.Table.V1.TableService.CommitTransaction
     */
    readonly commitTransaction: {
        readonly path: "/Ydb.Table.V1.TableService/CommitTransaction";
        readonly requestStream: false;
        readonly requestSerialize: (message: MessageInitShape<typeof CommitTransactionRequestSchema>) => Uint8Array<ArrayBufferLike>;
        readonly requestDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").CommitTransactionRequest;
        readonly responseStream: false;
        readonly responseSerialize: (message: MessageInitShape<typeof CommitTransactionResponseSchema>) => Uint8Array<ArrayBufferLike>;
        readonly responseDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").CommitTransactionResponse;
        readonly options: {};
    };
    /**
     * Performs a rollback of the specified active transaction.
     *
     * @generated from rpc Ydb.Table.V1.TableService.RollbackTransaction
     */
    readonly rollbackTransaction: {
        readonly path: "/Ydb.Table.V1.TableService/RollbackTransaction";
        readonly requestStream: false;
        readonly requestSerialize: (message: MessageInitShape<typeof RollbackTransactionRequestSchema>) => Uint8Array<ArrayBufferLike>;
        readonly requestDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").RollbackTransactionRequest;
        readonly responseStream: false;
        readonly responseSerialize: (message: MessageInitShape<typeof RollbackTransactionResponseSchema>) => Uint8Array<ArrayBufferLike>;
        readonly responseDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").RollbackTransactionResponse;
        readonly options: {};
    };
    /**
     * Describe supported table options.
     *
     * @generated from rpc Ydb.Table.V1.TableService.DescribeTableOptions
     */
    readonly describeTableOptions: {
        readonly path: "/Ydb.Table.V1.TableService/DescribeTableOptions";
        readonly requestStream: false;
        readonly requestSerialize: (message: MessageInitShape<typeof DescribeTableOptionsRequestSchema>) => Uint8Array<ArrayBufferLike>;
        readonly requestDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").DescribeTableOptionsRequest;
        readonly responseStream: false;
        readonly responseSerialize: (message: MessageInitShape<typeof DescribeTableOptionsResponseSchema>) => Uint8Array<ArrayBufferLike>;
        readonly responseDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").DescribeTableOptionsResponse;
        readonly options: {};
    };
    /**
     * Streaming read table
     *
     * @generated from rpc Ydb.Table.V1.TableService.StreamReadTable
     */
    readonly streamReadTable: {
        readonly path: "/Ydb.Table.V1.TableService/StreamReadTable";
        readonly requestStream: false;
        readonly requestSerialize: (message: MessageInitShape<typeof ReadTableRequestSchema>) => Uint8Array<ArrayBufferLike>;
        readonly requestDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").ReadTableRequest;
        readonly responseStream: true;
        readonly responseSerialize: (message: MessageInitShape<typeof ReadTableResponseSchema>) => Uint8Array<ArrayBufferLike>;
        readonly responseDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").ReadTableResponse;
        readonly options: {};
    };
    /**
     * Reads specified keys non-transactionally from a single table
     *
     * @generated from rpc Ydb.Table.V1.TableService.ReadRows
     */
    readonly readRows: {
        readonly path: "/Ydb.Table.V1.TableService/ReadRows";
        readonly requestStream: false;
        readonly requestSerialize: (message: MessageInitShape<typeof ReadRowsRequestSchema>) => Uint8Array<ArrayBufferLike>;
        readonly requestDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").ReadRowsRequest;
        readonly responseStream: false;
        readonly responseSerialize: (message: MessageInitShape<typeof ReadRowsResponseSchema>) => Uint8Array<ArrayBufferLike>;
        readonly responseDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").ReadRowsResponse;
        readonly options: {};
    };
    /**
     * Upserts a batch of rows non-transactionally.
     * Returns success only when all rows were successfully upserted. In case of an error some rows might
     * be upserted and some might not.
     *
     * @generated from rpc Ydb.Table.V1.TableService.BulkUpsert
     */
    readonly bulkUpsert: {
        readonly path: "/Ydb.Table.V1.TableService/BulkUpsert";
        readonly requestStream: false;
        readonly requestSerialize: (message: MessageInitShape<typeof BulkUpsertRequestSchema>) => Uint8Array<ArrayBufferLike>;
        readonly requestDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").BulkUpsertRequest;
        readonly responseStream: false;
        readonly responseSerialize: (message: MessageInitShape<typeof BulkUpsertResponseSchema>) => Uint8Array<ArrayBufferLike>;
        readonly responseDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").BulkUpsertResponse;
        readonly options: {};
    };
    /**
     * Executes scan query with streaming result.
     *
     * @generated from rpc Ydb.Table.V1.TableService.StreamExecuteScanQuery
     */
    readonly streamExecuteScanQuery: {
        readonly path: "/Ydb.Table.V1.TableService/StreamExecuteScanQuery";
        readonly requestStream: false;
        readonly requestSerialize: (message: MessageInitShape<typeof ExecuteScanQueryRequestSchema>) => Uint8Array<ArrayBufferLike>;
        readonly requestDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").ExecuteScanQueryRequest;
        readonly responseStream: true;
        readonly responseSerialize: (message: MessageInitShape<typeof ExecuteScanQueryPartialResponseSchema>) => Uint8Array<ArrayBufferLike>;
        readonly responseDeserialize: (bytes: Uint8Array) => import("./protos/ydb_table_pb.js").ExecuteScanQueryPartialResponse;
        readonly options: {};
    };
};
//# sourceMappingURL=ydb_table_v1_grpc_pb.d.ts.map