@vulcan-sql/core
Version:
Core package of VulcanSQL
20 lines (19 loc) • 938 B
TypeScript
/// <reference types="node" />
import { DataSource, IncomingHttpHeaders, PrepareParameterFunc, RequestParameter } from '../../models/index';
import { interfaces } from 'inversify';
import { DataQueryBuilder, IDataQueryBuilder } from './builder';
import { IParameterizer } from './parameterizer';
export interface IExecutor {
createBuilder(profileName: string, query: string, parameterizer: IParameterizer, headers?: IncomingHttpHeaders): Promise<IDataQueryBuilder>;
prepare: PrepareParameterFunc;
}
export declare class QueryExecutor implements IExecutor {
private dataSourceFactory;
constructor(dataSourceFactory: interfaces.SimpleFactory<DataSource>);
prepare(request: RequestParameter): Promise<string>;
/**
* create data query builder
* @returns
*/
createBuilder(profileName: string, query: string, parameterizer: IParameterizer, headers?: IncomingHttpHeaders): Promise<DataQueryBuilder>;
}