UNPKG

ydb-sdk

Version:

Node.js bindings for working with YDB API over gRPC

57 lines 3.15 kB
import EventEmitter from "events"; import { GrpcQueryService, QueryService } from "./query-session-pool"; import { Endpoint } from "../discovery"; import { Ydb } from "ydb-sdk-proto"; import { ClientReadableStream, Metadata } from "@grpc/grpc-js"; import { sessionIdSymbol, sessionTxSettingsSymbol, sessionTxIdSymbol, sessionCurrentOperationSymbol, sessionAcquireSymbol, sessionReleaseSymbol, sessionAttachSymbol, sessionIsFreeSymbol, sessionIsDeletedSymbol, sessionDeleteOnReleaseSymbol, sessionRollbackTransactionSymbol, sessionCommitTransactionSymbol, sessionBeginTransactionSymbol, isIdempotentSymbol, isIdempotentDoLevelSymbol, createSymbol, sessionIsClosingSymbol, ctxSymbol, sessionTrailerCallbackSymbol } from './symbols'; import ICreateSessionResult = Ydb.Table.ICreateSessionResult; import { attach as attachImpl } from './query-session-attach'; import { execute as executeImpl } from './query-session-execute'; import { beginTransaction, commitTransaction, rollbackTransaction as rollbackTransactionImpl } from './query-session-transaction'; import { Logger } from "../logger/simple-logger"; import { Context } from "../context"; export interface QuerySessionOperation { cancel(reason: any): void; } export declare const apiSymbol: unique symbol; export declare const implSymbol: unique symbol; export declare const attachStreamSymbol: unique symbol; export declare class QuerySession extends EventEmitter implements ICreateSessionResult { endpoint: Endpoint; readonly logger: Logger; [ctxSymbol]?: Context; [sessionCurrentOperationSymbol]?: QuerySessionOperation; [sessionIdSymbol]: string; [sessionTxIdSymbol]?: string; [sessionTxSettingsSymbol]?: Ydb.Query.ITransactionSettings; [isIdempotentDoLevelSymbol]?: boolean; [isIdempotentSymbol]?: boolean; [sessionTrailerCallbackSymbol]?: (md: Metadata) => void; [implSymbol]: QueryService; [attachStreamSymbol]?: ClientReadableStream<Ydb.Query.SessionState>; [apiSymbol]: GrpcQueryService; private beingDeleted; private free; private closing; get ctx(): Context; get sessionId(): string; get txId(): string | undefined; private constructor(); static [createSymbol](api: GrpcQueryService, impl: QueryService, endpoint: Endpoint, sessionId: string, logger: Logger): QuerySession; [sessionAcquireSymbol](): this; [sessionReleaseSymbol](): void; [sessionIsFreeSymbol](): boolean; [sessionIsClosingSymbol](): boolean; [sessionDeleteOnReleaseSymbol](): void; [sessionIsDeletedSymbol](): boolean; delete(): Promise<void>; [sessionAttachSymbol]: typeof attachImpl; beginTransaction(txSettings?: Ydb.Query.ITransactionSettings | null): Promise<void>; commitTransaction(): Promise<Ydb.Query.CommitTransactionResponse>; rollbackTransaction(): Promise<Ydb.Query.RollbackTransactionResponse>; [sessionBeginTransactionSymbol]: typeof beginTransaction; [sessionCommitTransactionSymbol]: typeof commitTransaction; [sessionRollbackTransactionSymbol]: typeof rollbackTransactionImpl; execute: typeof executeImpl; } //# sourceMappingURL=query-session.d.ts.map