import { CriteriaParameter, InputCriteria } from './CriteriaParameter.js'; interface OutputJSON { expression: string | undefined; parameters: Array; } /** * `CriteriaParameter`: Utilizado para validar e manipular os critérios da requisição. * */ export declare class Criteria { private _expression; private _parameters; constructor(exp?: string, params?: Array); /** * @ngdoc * @Setter_______________ * @name sankhyalabs.core.src:Criteria#parameters * @methodOf sankhyalabs.core.src:CriteriaProvider * @description Setter para "parameters". Trata-se de uma Array de parametros da classe Criteria. * @param {Array} [parameters] Array de parametros da classe Criteria. */ set parameters(parameters: Array); /** * @ngdoc * @Getter_______________ * @name sankhyalabs.core.src:Criteria#parameters * @methodOf sankhyalabs.core.src:CriteriaProvider * @description Getter para parameters * @returns {Array} */ get parameters(): Array; /** * @ngdoc * @Setter_______________ * @name sankhyalabs.core.src:Criteria#expression * @methodOf sankhyalabs.core.src:CriteriaProvider * @description Setter para "expression". Trata-se do expressão da classe Criteria. * @param {string} [expression] Expressão da classe Criteria. */ set expression(expression: string | undefined); /** * @ngdoc * @Getter_______________ * @name sankhyalabs.core.src:Criteria#expression * @methodOf sankhyalabs.core.src:CriteriaProvider * @description Getter para expression * @returns {string} expression em formato string. */ get expression(): string | undefined; /** * @ngdoc * @name sankhyalabs.core.src:Criteria#getSize * @methodOf sankhyalabs.core.src:Criteria * @description Método que retorna o Número de caracteres da expressão da classe Criteria. * @returns {number} Número de caracteres da expressão da classe Criteria. */ getSize: () => number; /** * @ngdoc * @name sankhyalabs.core.src:Criteria#or * @methodOf sankhyalabs.core.src:Criteria * @description Concatena a expressão ' OR ' ao critério. * @param {Criteria | string} [exp] Expressão a ser concatenada * @param {Array} [param] Parâmetros a serem concatenados. * @returns {Criteria} Retorna a própria instância do Criterio para encadeamento. */ or: (exp: Criteria | string, param?: Array) => Criteria; /** * @ngdoc * @name sankhyalabs.core.src:Criteria#and * @methodOf sankhyalabs.core.src:Criteria * @description Concatena a expressão ' AND ' ao critério. * @param {Criteria | string} [exp] Expressão a ser concatenada * @param {Array} [param] Parâmetros a serem concatenados. * @returns {Criteria} Retorna a própria instância do Criterio para encadeamento. */ and: (exp: Criteria | string, param?: Array) => Criteria; /** * @ngdoc * @name sankhyalabs.core.src:Criteria#toJSON * @methodOf sankhyalabs.core.src:Criteria * @description Retorna um JSON que representa o objeto Criteria. * @returns {Object} Retorna um JSON que representa o objeto Criteria. */ toJSON: () => OutputJSON | undefined; /** * @ngdoc * @name sankhyalabs.core.src:Criteria#append * @methodOf sankhyalabs.core.src:Criteria * @description Concatena uma expressão e parâmetros ao critério. * @param {string} [exp=undefined] Expressão a ser concatenada * @param {array} [param=undefined] Parâmetros a serem concatenados. * @returns {Criteria} Retorna a própria instância do Criterio para encadeamento. */ append(exp: Criteria | string, param?: Array): Criteria; /** * @ngdoc * @name sankhyalabs.core.src:Criteria#addParameter * @methodOf sankhyalabs.core.src:Criteria * @description Concatena parâmetros ao critério. * - Se passado um array, o metodo iterará no array e adicionará cada um dos itens. * - É possível passar um Objeto CriteriaParameter, um número, string ou uma instancia de data, eles serão inferidos para o tipo certo. * @param {CriteriaParameter} Parâmetro a ser adicionado. */ private addParameter; } export {};