/**
 * 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 { RootRelationalInstanceSetImplementation } from '../../../../../../../../graph/metamodel/pure/packageableElements/store/relational/mapping/RootRelationalInstanceSetImplementation.js';
import type { RelationalInstanceSetImplementation } from '../../../../../../../../graph/metamodel/pure/packageableElements/store/relational/mapping/RelationalInstanceSetImplementation.js';
import type { EmbeddedRelationalInstanceSetImplementation } from '../../../../../../../../graph/metamodel/pure/packageableElements/store/relational/mapping/EmbeddedRelationalInstanceSetImplementation.js';
import type { SetImplementation } from '../../../../../../../../graph/metamodel/pure/packageableElements/mapping/SetImplementation.js';
import type { Mapping } from '../../../../../../../../graph/metamodel/pure/packageableElements/mapping/Mapping.js';
import type { EnumerationMapping } from '../../../../../../../../graph/metamodel/pure/packageableElements/mapping/EnumerationMapping.js';
import { type TableAlias } from '../../../../../../../../graph/metamodel/pure/packageableElements/store/relational/model/RelationalOperationElement.js';
import { FilterMapping } from '../../../../../../../../graph/metamodel/pure/packageableElements/store/relational/mapping/FilterMapping.js';
import type { V1_GraphBuilderContext } from '../../../../transformation/pureGraph/to/V1_GraphBuilderContext.js';
import type { V1_RelationalClassMapping } from '../../../../model/packageableElements/store/relational/mapping/V1_RelationalClassMapping.js';
import type { V1_FilterMapping } from '../../../../model/packageableElements/store/relational/mapping/V1_FilterMapping.js';
export declare const V1_buildRelationalClassMapping: (relationalClassMapping: V1_RelationalClassMapping, context: V1_GraphBuilderContext, immediateParent: RelationalInstanceSetImplementation, topParent: RootRelationalInstanceSetImplementation, parentMapping: Mapping, embeddedRelationalPropertyMappings: EmbeddedRelationalInstanceSetImplementation[], enumerationMappings: EnumerationMapping[], tableAliasIndex: Map<string, TableAlias>) => SetImplementation;
export declare const V1_buildRelationalPrimaryKey: (rootRelational: RootRelationalInstanceSetImplementation) => void;
export declare const V1_buildRelationalMappingFilter: (v1_filter: V1_FilterMapping, context: V1_GraphBuilderContext) => FilterMapping;
//# sourceMappingURL=V1_RelationalClassMappingBuilderHelper.d.ts.map