UNPKG

@clickup/ent-framework

Version:

A PostgreSQL graph-database-alike library with microsharding and row-level security

26 lines 1.18 kB
import type { Table } from "../types"; import type { Client } from "./Client"; import type { Query } from "./Query"; import type { QueryAnnotation } from "./QueryAnnotation"; import type { Runner } from "./Runner"; import type { Schema } from "./Schema"; /** * A convenient base class for most (but not all) of the queries, where the * Runner instance is the same for different query input shapes. If the query * doesn't fit the QueryBase framework (like PgQueryUpdate for instance where we * have separate Runner instances for separate set of updated fields), a Query * is used directly instead. */ export declare abstract class QueryBase<TTable extends Table, TInput, TOutput, TClient extends Client> implements Query<TOutput> { readonly schema: Schema<TTable>; readonly input: TInput; /** @ignore */ abstract readonly RUNNER_CLASS: { readonly IS_WRITE: boolean; new (schema: Schema<TTable>, client: TClient): Runner<TInput, TOutput>; }; constructor(schema: Schema<TTable>, input: TInput); get IS_WRITE(): boolean; run(client: TClient, annotation: QueryAnnotation): Promise<TOutput>; } //# sourceMappingURL=QueryBase.d.ts.map