import { DataSource } from 'typeorm'; import { ResolverAuthInfo } from '../interface.js'; import { Environment } from '../../interpreter.js'; import { Instance, Relationship } from '../../module.js'; export declare let defaultDataSource: DataSource | undefined; export declare const PathAttributeName: string; export declare const DeletedFlagAttributeName: string; export declare class DbContext { txnId: string | undefined; authInfo: ResolverAuthInfo; private inKernelMode; resourceFqName: string; activeEnv: Environment; private needAuthCheckFlag; constructor(resourceFqName: string, authInfo: ResolverAuthInfo, activeEnv: Environment, txnId?: string, inKernelMode?: boolean); clone(): DbContext; getUserId(): string; isForDelete(): boolean; isForUpdate(): boolean; setResourceFqNameFrom(inst: Instance): DbContext; setNeedAuthCheck(flag: boolean): DbContext; isPermitted(): boolean; isInKernelMode(): boolean; } export declare const DbType = "sqlite"; export declare function initDefaultDatabase(): Promise; export declare function resetDefaultDatabase(): Promise; export declare function insertRows(tableName: string, rows: object[], ctx: DbContext, doUpsert?: boolean): Promise; export declare function insertRow(tableName: string, row: object, ctx: DbContext, doUpsert: boolean): Promise; export declare function insertBetweenRow(n: string, a1: string, a2: string, node1: Instance, node2: Instance, relEntry: Relationship, ctx: DbContext): Promise; export declare function upsertRows(tableName: string, rows: object[], ctx: DbContext): Promise; export declare function upsertRow(tableName: string, row: object, ctx: DbContext): Promise; export declare function updateRow(tableName: string, queryObj: object, queryVals: object, updateObj: object, ctx: DbContext): Promise; type QueryObjectEntry = [string, any]; export type QueryObject = Array; export declare function hardDeleteRow(tableName: string, queryObject: QueryObject, ctx: DbContext): Promise; export declare function getMany(tableName: string, queryObj: object | undefined, queryVals: object | undefined, colNamesToSelect: string[], ctx: DbContext): Promise; export type BetweenConnectionInfo = { connectionTable: string; fromColumn: string; fromValue: string; toColumn: string; toRef: string; }; export declare function getAllConnected(tableName: string, queryObj: object, queryVals: object, connInfo: BetweenConnectionInfo, ctx: DbContext): Promise; export declare function startDbTransaction(): Promise; export declare function commitDbTransaction(txnId: string): Promise; export declare function rollbackDbTransaction(txnId: string): Promise; export {}; //# sourceMappingURL=database.d.ts.map