Skip to content
# Interface: QueryBuildOptions

Defined in: packages/core/src/transformers/DynamicQueryBuilder.ts:108

Options for dynamic query building

Properties

filter?

optional filter: FilterConditions

Defined in: packages/core/src/transformers/DynamicQueryBuilder.ts:110

Filter conditions to inject into WHERE clause


sort?

optional sort: SortConditions

Defined in: packages/core/src/transformers/DynamicQueryBuilder.ts:112

Sort conditions to inject into ORDER BY clause


paging?

optional paging: PaginationOptions

Defined in: packages/core/src/transformers/DynamicQueryBuilder.ts:114

Pagination options to inject LIMIT/OFFSET clauses


includeColumns?

optional includeColumns: string[]

Defined in: packages/core/src/transformers/DynamicQueryBuilder.ts:119

Columns that should remain in the SELECT clause. When specified, every other column is removed so the output matches this whitelist.


excludeColumns?

optional excludeColumns: string[]

Defined in: packages/core/src/transformers/DynamicQueryBuilder.ts:124

Columns that should be removed from the SELECT clause. Filters apply subtractively and only drop columns that exist in the original output.


serialize?

optional serialize: boolean | JsonMapping

Defined in: packages/core/src/transformers/DynamicQueryBuilder.ts:130

JSON serialization mapping to transform results into hierarchical JSON

  • JsonMapping object: explicit mapping configuration
  • true: auto-load mapping from corresponding .json file
  • false/undefined: no serialization

jsonb?

optional jsonb: boolean

Defined in: packages/core/src/transformers/DynamicQueryBuilder.ts:136

JSONB usage setting. Must be true (default) for PostgreSQL GROUP BY compatibility. Setting to false will throw an error as JSON type cannot be used in GROUP BY clauses.

Default

ts
true

existsStrict?

optional existsStrict: boolean

Defined in: packages/core/src/transformers/DynamicQueryBuilder.ts:141

Throw when column-anchored EXISTS filters fail to resolve. Defaults to false so invalid definitions are skipped silently.


schemaInfo?

optional schemaInfo: SchemaInfo

Defined in: packages/core/src/transformers/DynamicQueryBuilder.ts:145

Schema metadata used when removing unused LEFT JOINs; overrides builder defaults.


removeUnusedLeftJoins?

optional removeUnusedLeftJoins: boolean

Defined in: packages/core/src/transformers/DynamicQueryBuilder.ts:149

Remove unused LEFT JOINs before further processing when schema info is available.


removeUnusedCtes?

optional removeUnusedCtes: boolean

Defined in: packages/core/src/transformers/DynamicQueryBuilder.ts:154

Remove unused Common Table Expressions (CTEs) when they can be safely pruned. Defaults to false to preserve original WITH definitions.

Released under the MIT License.