UNPKG

@ultipa-graph/ultipa-driver

Version:

NodeJS SDK for Ultipa GQL

34 lines (33 loc) 1.03 kB
/** * Transaction service handles transaction lifecycle management. */ import { ServiceContext } from './service-context'; import { Transaction } from '../transaction'; import { TransactionInfo } from '../types'; /** * Transaction service for managing database transactions. */ export declare class TransactionService { private ctx; constructor(ctx: ServiceContext); /** * Start a new transaction. */ beginTransaction(graphName: string, readOnly?: boolean, timeout?: number): Promise<Transaction>; /** * Commit a transaction. */ commit(transactionId: number): Promise<boolean>; /** * Rollback a transaction. */ rollback(transactionId: number): Promise<boolean>; /** * Return active transactions for the current session. */ listTransactions(): Promise<TransactionInfo[]>; /** * Execute a function within a transaction. */ withTransaction<T>(graphName: string, fn: (txId: number) => Promise<T>, readOnly?: boolean): Promise<T>; }