UNPKG

@tanstack/db

Version:

A reactive client store for building super fast apps on sync

28 lines (27 loc) 1.12 kB
import { Deferred } from './deferred.cjs'; import { MutationFn, PendingMutation, TransactionConfig, TransactionState } from './types.cjs'; export declare function createTransaction<TData extends object = Record<string, unknown>>(config: TransactionConfig<TData>): Transaction<TData>; export declare function getActiveTransaction(): Transaction | undefined; export declare class Transaction<T extends object = Record<string, unknown>> { id: string; state: TransactionState; mutationFn: MutationFn<T>; mutations: Array<PendingMutation<T>>; isPersisted: Deferred<Transaction<T>>; autoCommit: boolean; createdAt: Date; metadata: Record<string, unknown>; error?: { message: string; error: Error; }; constructor(config: TransactionConfig<T>); setState(newState: TransactionState): void; mutate(callback: () => void): Transaction<T>; applyMutations(mutations: Array<PendingMutation<any>>): void; rollback(config?: { isSecondaryRollback?: boolean; }): Transaction<T>; touchCollection(): void; commit(): Promise<Transaction<T>>; }