declare const _default: AftsQueryBuilder; export default _default; /** * Stateless service for building AFTS (Alfresco Full-Text Search) queries * from a structured JSON configuration (locations + criteria). */ declare class AftsQueryBuilder { /** * Maps a property alias to its Solr field name. * Returns the original property if no alias mapping is found. * @param {string} prop - The property name or alias. * @returns {string} The resolved Solr field name. */ mapAliasToSolr(prop: string): string; /** * Builds an AFTS query string from a structured JSON configuration. * * The queryJson object should have the following structure: * { * locations: [{ type: 'Site'|'Folder', value: string, negation: boolean }], * criteria: [{ * property: { id: string, input: string }, * operator: string, * negation: boolean, * value: any, * value_end?: any * }] * } * * Also supports legacy criteria format with a raw `query` property: * { query: "TYPE:'cm:content'" } * * @param {Object} queryJson - The structured query configuration. * @param {Array} [queryJson.locations] - Array of location filters. * @param {Array} [queryJson.criteria] - Array of search criteria. * @returns {string} The constructed AFTS query string. */ buildAftsQueryFromJSON(queryJson: { locations?: any[]; criteria?: any[]; }): string; /** * Builds an AFTS query fragment for a single criterion. * @param {Object} c - A criterion object. * @returns {string|null} The AFTS fragment, or null if invalid. */ _buildCriterionPart(c: any): string | null; /** * Builds an AFTS query for a single group of criteria. * @param {Object} group - A criteria group with operator and criteria array. * @returns {string|null} The AFTS fragment for the group, or null if empty. */ _buildGroupQuery(group: any): string | null; /** * Builds the criteria portion of the AFTS query from criteriaGroups. * @param {Object} criteriaGroups - The grouped criteria structure. * @returns {string|null} The AFTS fragment for all groups, or null if empty. */ _buildGroupsParts(criteriaGroups: any): string | null; } //# sourceMappingURL=AftsQueryBuilder.d.ts.map