/**
 * 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 V1_ValueSpecification } from '../model/valueSpecification/V1_ValueSpecification.js';
import type { V1_Variable } from '../model/valueSpecification/V1_Variable.js';
import type { V1_Lambda } from '../model/valueSpecification/raw/V1_Lambda.js';
import type { V1_EnumValue } from '../model/valueSpecification/raw/V1_EnumValue.js';
import type { V1_AppliedFunction } from '../model/valueSpecification/application/V1_AppliedFunction.js';
import type { V1_Collection } from '../model/valueSpecification/raw/V1_Collection.js';
import type { V1_KeyExpression } from '../model/valueSpecification/raw/V1_KeyExpression.js';
import type { V1_AppliedProperty } from '../model/valueSpecification/application/V1_AppliedProperty.js';
import type { V1_PackageableElementPtr } from '../model/valueSpecification/raw/V1_PackageableElementPtr.js';
import type { V1_GenericTypeInstance } from '../model/valueSpecification/raw/V1_GenericTypeInstance.js';
import type { V1_ClassInstance } from '../model/valueSpecification/raw/V1_ClassInstance.js';
import type { V1_ColSpec } from '../model/valueSpecification/raw/classInstance/relation/V1_ColSpec.js';
import type { V1_ColSpecArray } from '../model/valueSpecification/raw/classInstance/relation/V1_ColSpecArray.js';
export declare const V1_observe_Variable: (metamodel: V1_Variable) => V1_Variable;
export declare const V1_observe_AppliedFunction: (metamodel: V1_AppliedFunction) => V1_AppliedFunction;
export declare const V1_observe_AppliedProperty: (metamodel: V1_AppliedProperty) => V1_AppliedProperty;
export declare const V1_observe_EnumValue: (metamodel: V1_EnumValue) => V1_EnumValue;
export declare const V1_observe_Collection: (metamodel: V1_Collection) => V1_Collection;
export declare const V1_observe_KeyExpression: (metamodel: V1_KeyExpression) => V1_KeyExpression;
export declare const V1_observe_ColSpec: (metamodel: V1_ColSpec) => V1_ColSpec;
export declare const V1_observe_ColSpecArray: (metamodel: V1_ColSpecArray) => V1_ColSpecArray;
export declare const V1_observe_Lambda: (metamodel: V1_Lambda) => V1_Lambda;
export declare const V1_observe_PackageableElementPtr: (metamodel: V1_PackageableElementPtr) => V1_PackageableElementPtr;
export declare const V1_observe_GenericTypeInstance: (metamodel: V1_GenericTypeInstance) => V1_GenericTypeInstance;
export declare const V1_observe_ClassInstance: (metamodel: V1_ClassInstance) => V1_ClassInstance;
/**
 * Make a V1_ValueSpecification observable
 *
 * @param valueSpecification - The V1_ValueSpecification to make observable
 * @returns The observed V1_ValueSpecification
 */
export declare const V1_observe_ValueSpecification: (metamodel: V1_ValueSpecification) => V1_ValueSpecification;
//# sourceMappingURL=V1_ValueSpecificationObserver.d.ts.map