/**
 * Copyright (c) 2020-present, Goldman Sachs
 *
 * Licensed under the Apache License, Version 2.0 (the "License");
 * you may not use this file except in compliance with the License.
 * You may obtain a copy of the License at
 *
 *     http://www.apache.org/licenses/LICENSE-2.0
 *
 * Unless required by applicable law or agreed to in writing, software
 * distributed under the License is distributed on an "AS IS" BASIS,
 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
 * See the License for the specific language governing permissions and
 * limitations under the License.
 */
import { type GraphFetchTreeInstanceValue, type GraphFetchTree, PropertyGraphFetchTree } from '../../../graph/metamodel/pure/valueSpecification/GraphFetchTree.js';
import type { PrimitiveInstanceValue, EnumValueInstanceValue, CollectionInstanceValue } from '../../../graph/metamodel/pure/valueSpecification/InstanceValue.js';
import type { FunctionExpression, SimpleFunctionExpression, AbstractPropertyExpression } from '../../../graph/metamodel/pure/valueSpecification/Expression.js';
import { ValueSpecification } from '../../../graph/metamodel/pure/valueSpecification/ValueSpecification.js';
import type { VariableExpression } from '../../../graph/metamodel/pure/valueSpecification/VariableExpression.js';
import { type ObserverContext } from './CoreObserverHelper.js';
import type { KeyExpressionInstanceValue } from '../../../graph/metamodel/pure/valueSpecification/KeyExpressionInstanceValue.js';
import type { ColSpec, ColSpecArray, ColSpecArrayInstance, ColSpecInstanceValue } from '../../../graph/metamodel/pure/valueSpecification/RelationValueSpecification.js';
export declare const observe_VariableExpression: (metamodel: VariableExpression) => VariableExpression;
export declare const observe_FunctionExpression: (metamodel: FunctionExpression, context: ObserverContext) => FunctionExpression;
export declare const observe_SimpleFunctionExpression: (metamodel: SimpleFunctionExpression, context: ObserverContext) => SimpleFunctionExpression;
export declare const observe_AbstractPropertyExpression: (metamodel: AbstractPropertyExpression, context: ObserverContext) => AbstractPropertyExpression;
export declare const observe_PrimitiveInstanceValue: (metamodel: PrimitiveInstanceValue, context: ObserverContext) => PrimitiveInstanceValue;
export declare const observe_EnumValueInstanceValue: (metamodel: EnumValueInstanceValue, context: ObserverContext) => EnumValueInstanceValue;
export declare const observe_CollectionInstanceValue: (metamodel: CollectionInstanceValue, context: ObserverContext) => CollectionInstanceValue;
export declare const observe_KeyExpressionInstanceValue: (metamodel: KeyExpressionInstanceValue, context: ObserverContext) => KeyExpressionInstanceValue;
export declare const observe_GraphFetchTree: (metamodel: GraphFetchTree, context: ObserverContext) => GraphFetchTree;
export declare const observe_PropertyGraphFetchTree: (metamodel: PropertyGraphFetchTree, context: ObserverContext) => PropertyGraphFetchTree;
export declare const observe_RootGraphFetchTree: (metamodel: GraphFetchTree, context: ObserverContext) => GraphFetchTree;
export declare const observe_GraphFetchTreeInstanceValue: (metamodel: GraphFetchTreeInstanceValue, context: ObserverContext) => GraphFetchTreeInstanceValue;
export declare const observe_ColSpec: (metamodel: ColSpec, context: ObserverContext) => ColSpec;
export declare const observe_ColSpecArray: (metamodel: ColSpecArray, context: ObserverContext) => ColSpecArray;
export declare const observe_ColSpecArrayInstance: (metamodel: ColSpecArrayInstance, context: ObserverContext) => ColSpecArrayInstance;
export declare const observe_ColSpecInstance: (metamodel: ColSpecInstanceValue, context: ObserverContext) => ColSpecInstanceValue;
export declare const observe_ValueSpecification: (metamodel: ValueSpecification, context: ObserverContext) => ValueSpecification;
//# sourceMappingURL=ValueSpecificationObserver.d.ts.map