import { TextWriter } from '@yellicode/core'; import { TSqlWriterBase } from './t-sql-writer-base'; import { SqlServerTable, SqlServerColumn } from '../model/sql-server-database'; import { SqlServerObjectNameProvider } from '../providers/sql-server-object-name-provider'; import * as opts from '../options'; export declare class TSqlQueryWriter extends TSqlWriterBase { private objectNameProvider; private sqlSelectWriter; private sqlParameterWriter; /** * Constructor. Creates a new SqlWriter instance using the TextWriter and options provided. * @param textWriter The template's current TextWriter. * @param options Optional: the global options for this writer. */ constructor(textWriter: TextWriter, objectNameProvider: SqlServerObjectNameProvider); writeParameterList(table: SqlServerTable, options: opts.ParameterOptions, filter?: (value: SqlServerColumn) => boolean): void; writeInsertQuery(table: SqlServerTable, parameterOptions: opts.ParameterOptions, insertPropertiesFilter?: (value: SqlServerColumn) => boolean): void; writeUpdateQuery(table: SqlServerTable, parameterOptions: opts.ParameterOptions, parameterFilter?: (value: SqlServerColumn) => boolean, setPropertiesFilter?: (value: SqlServerColumn) => boolean): void; writeDeleteQuery(table: SqlServerTable, parameterOptions: opts.ParameterOptions, parameterFilter?: (value: SqlServerColumn) => boolean): void; writeSelectQuery(table: SqlServerTable, parameterOptions: opts.ParameterOptions, parameterFilter?: (value: SqlServerColumn) => boolean, selectColumnsFilter?: (value: SqlServerColumn) => boolean): void; }