UNPKG

@operativa/verse-oracle

Version:

Verse is a modern, fast, object/relational mapper for TypeScript inspired by Entity Framework Core. It features LINQ-style queries, unit of work updates, and a powerful convention-based mapping system. It supports SQLite, Postgres, MySQL, SQL Server and O

28 lines (27 loc) 1.58 kB
import { DateAsTimestampWithTimeZone } from "@operativa/verse/conventions/database"; import { Driver, DriverInfo, ExecuteResult, ExecuteStatement, IsolationLevel } from "@operativa/verse/db/driver"; import { SqlNode } from "@operativa/verse/db/sql"; import { Model } from "@operativa/verse/model/model"; import { Logger } from "@operativa/verse/utils/logging"; import { List } from "immutable"; import { ConnectionAttributes } from "oracledb"; export declare function oracle(connectionAttributes: ConnectionAttributes, adminAttributes?: ConnectionAttributes): OracleDriver; export declare class OracleDriver implements Driver, AsyncDisposable { #private; readonly connectionAttributes: ConnectionAttributes; readonly adminAttributes?: ConnectionAttributes | undefined; constructor(connectionAttributes: ConnectionAttributes, adminAttributes?: ConnectionAttributes | undefined); get info(): DriverInfo; get conventions(): List<DateAsTimestampWithTimeZone>; validate(model: Model): void; set logger(logger: Logger | undefined); private pool; rows(sql: SqlNode): (args: unknown[]) => AsyncIterable<readonly unknown[]>; execute(statements: readonly ExecuteStatement[], isolation?: IsolationLevel, onCommit?: (results: readonly ExecuteResult[]) => void): Promise<ExecuteResult[]>; script(statements: readonly ExecuteStatement[]): string[]; exists(): Promise<boolean>; tableExists(name: string): Promise<boolean>; create(): Promise<void>; drop(): Promise<void>; [Symbol.asyncDispose](): Promise<void | undefined>; }