import { ICamelLanguageDefinition } from '../../../models'; export declare class ExpressionService { /** * Get the language catalog map from the Camel catalog. Since "language" language is not in the languages Camel * catalog, it is extracted from the YAML DSL schema. */ static getLanguageMap(): Record; /** * Get the language schema from the language catalog. Language catalog has its properties schema in itself, * which is combined in @kaoto-next/camel-catalog. * @param languageCatalog The {@link ICamelLanguageDefinition} object represents the language to get the schema. */ static getLanguageSchema(languageCatalog: ICamelLanguageDefinition): import("json-schema").JSONSchema4; static getDefinitionFromModelName(languageCatalogMap: Record, modelName: string): ICamelLanguageDefinition | undefined; /** * Parse the expression model from the parent step model object. Since expression has several dialects, * this method tries to read all possibility and merge into a single representation. Camel expression has * following 4 dialects, where the 2nd and 4th doesn't allow to configure additional properties: * * @param languageCatalogMap The language catalog map to use as a dictionary. * @param parentModel The parent step model object which has expression as its parameter. For example `setBody` contents. * */ static parseStepExpressionModel(languageCatalogMap: Record, parentModel: Record): { language: ICamelLanguageDefinition | undefined; model: Record | undefined; }; private static parseLanguageModel; /** * Set the expression model to the parent step model object. This method uses the most verbose dialect, i.e. * ```yaml * - setBody: * expression: * simple: * expression: ${body} * trim: true * ``` * @param languageCatalogMap The language catalog map to use as a dictionary. * @param parentModel The parent step model object which has expression as its parameter. e.g. `setBody` contents. * @param languageModelName The language model name string to set. e.g. `simple`. * @param newExpressionModel The new expression model to set, e.g. `/setBody/expression/simple` contents. */ static setStepExpressionModel(languageCatalogMap: Record, parentModel: Record, languageModelName: string, newExpressionModel: Record): void; static deleteStepExpressionModel(parentModel: Record): void; /** * Parse the property expression model from the parent parameter model object. * @param languageCatalogMap The language catalog map to use as a dictionary. * @param parentModel The parent parameter model object which is an expression type. For example `completionPredicate` parameter contents of `aggregate` EIP. */ static parsePropertyExpressionModel(languageCatalogMap: Record, parentModel: any): { language: ICamelLanguageDefinition | undefined; model: any; }; /** * Set the property expression model to the parent parameter model object. * @param languageCatalogMap The language catalog map to use as a dictionary. * @param parentModel The parent parameter model object which is an expression type. For example `completionPredicate` parameter contents of `aggregate` EIP. * @param languageName The language model name string to set. e.g. `simple`. * @param newExpressionModel The new expression model to set, e.g. `/aggregate/completionPredicate/simple` contents. */ static setPropertyExpressionModel(languageCatalogMap: Record, parentModel: Record, languageName: string, newExpressionModel: Record): any; }