import { CuneiformQueryBuilder } from '../adapters/soql/cuneiform-query-builder.js'; import type { GetDefinitionsOptions, DefinitionListFilter, CreateDefinitionInput } from './ProfilingDefinitionService.js'; /** * SOQL field list for profiling definition queries. * Field names match actual Salesforce schema. */ export declare const DEFINITION_FIELDS: string; /** * Valid definition types for validation. */ export declare const VALID_DEFINITION_TYPES: ReadonlySet; /** * Valid profiling status values for validation. */ export declare const VALID_PROFILING_STATUSES: ReadonlySet; /** * Static SOQL query builders for profiling definition queries. * * Extracted from ProfilingDefinitionService to isolate query construction * from CRUD operations. All methods are static — no service dependencies needed. */ export declare class DefinitionQueryBuilder { /** * Normalizes a user-supplied namespace prefix into a SOQL LIKE value. * Accepts both `pnova` and `pnova__` — never double-appends underscores. * Shared by buildSoqlQuery and buildListWhereConditions so profile/purge * and list paths produce identical patterns (CLI-3430). * * Precondition: callers MUST validate `namespace` via `validateNamespace()` * (src/services/validation.ts) before passing it here. This helper does not * escape SOQL LIKE wildcards `%` or `_`; the validator restricts input to * `[A-Za-z0-9]` so wildcards cannot reach the query. */ static buildNamespaceLikeValue(namespace: string): string; /** * Builds a SOQL query for profiling definitions with filtering and pagination. */ static buildSoqlQuery(options: GetDefinitionsOptions): string; /** * Validates the type filter value. * * @returns Error message if invalid, undefined if valid */ static validateType(type: string): string | undefined; /** * Validates the status filter value. * * @returns Error message if invalid, undefined if valid */ static validateStatus(status: string): string | undefined; /** * Builds the REST API request body for definition creation. */ static buildCreateDefinitionRequestBody(input: CreateDefinitionInput): Record; /** * Builds WHERE condition descriptors from DefinitionListFilter. */ static buildListWhereConditions(filter?: DefinitionListFilter): Array<{ type: 'eq' | 'like' | 'in'; field: string; value: unknown; }>; /** * Applies WHERE condition descriptors to a CuneiformQueryBuilder. */ static applyWhereConditions(builder: CuneiformQueryBuilder, conditions: Array<{ type: 'eq' | 'like' | 'in'; field: string; value: unknown; }>): void; }