"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.isOperationAddArtifactAttribute = exports.isOperationAlterTraits = exports.isResolvedAttributeSet = exports.isOperationAddAttributeGroup = exports.isOperationIncludeAttributes = exports.isOperationReplaceAsForeignKey = exports.isOperationRenameAttributes = exports.isOperationCombineAttributes = exports.isOperationArrayExpansion = exports.isOperationExcludeAttributes = exports.isOperationAddTypeAttribute = exports.isOperationAddSupportingAttribute = exports.isOperationAddCountAttribute = exports.isProjection = exports.isCdmObjectReference = exports.isE2ERelationship = exports.isAttributeResolutionGuidance = exports.isDataPartitionPattern = exports.isDataPartition = exports.isReferencedEntityDeclarationDefinition = exports.isLocalEntityDeclarationDefinition = exports.isManifestDeclarationDefinition = exports.isAttributeContextReference = exports.isAttributeContextDefinition = exports.isFolderDefinition = exports.isManifestDefinition = exports.isDocumentDefinition = exports.isEntityReference = exports.isEntityDefinition = exports.isConstantEntityDefinition = exports.isAttributeGroupReference = exports.isAttributeGroupDefinition = exports.isEntityAttributeDefinition = exports.isTypeAttributeDefinition = exports.isAttributeReference = exports.isDataTypeReference = exports.isDataTypeDefinition = exports.isPurposeReference = exports.isPurposeDefinition = exports.isCdmTraitGroupReference = exports.isCdmTraitReference = exports.isCdmTraitGroupDefinition = exports.isCdmTraitDefinition = exports.isParameterDefinition = exports.isArgument = exports.isImport = void 0;
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License. See License.txt in the project root for license information.
const internal_1 = require("../internal");
function isImport(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.import;
}
exports.isImport = isImport;
function isArgument(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.argumentDef;
}
exports.isArgument = isArgument;
function isParameterDefinition(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.parameterDef;
}
exports.isParameterDefinition = isParameterDefinition;
function isCdmTraitDefinition(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.traitDef;
}
exports.isCdmTraitDefinition = isCdmTraitDefinition;
function isCdmTraitGroupDefinition(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.traitGroupDef;
}
exports.isCdmTraitGroupDefinition = isCdmTraitGroupDefinition;
function isCdmTraitReference(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.traitRef;
}
exports.isCdmTraitReference = isCdmTraitReference;
function isCdmTraitGroupReference(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.traitGroupRef;
}
exports.isCdmTraitGroupReference = isCdmTraitGroupReference;
function isPurposeDefinition(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.purposeDef;
}
exports.isPurposeDefinition = isPurposeDefinition;
function isPurposeReference(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.purposeRef;
}
exports.isPurposeReference = isPurposeReference;
function isDataTypeDefinition(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.dataTypeDef;
}
exports.isDataTypeDefinition = isDataTypeDefinition;
function isDataTypeReference(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.purposeRef;
}
exports.isDataTypeReference = isDataTypeReference;
function isAttributeReference(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.attributeRef;
}
exports.isAttributeReference = isAttributeReference;
function isTypeAttributeDefinition(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.typeAttributeDef;
}
exports.isTypeAttributeDefinition = isTypeAttributeDefinition;
function isEntityAttributeDefinition(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.entityAttributeDef;
}
exports.isEntityAttributeDefinition = isEntityAttributeDefinition;
function isAttributeGroupDefinition(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.attributeGroupDef;
}
exports.isAttributeGroupDefinition = isAttributeGroupDefinition;
function isAttributeGroupReference(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.attributeGroupRef;
}
exports.isAttributeGroupReference = isAttributeGroupReference;
function isConstantEntityDefinition(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.constantEntityDef;
}
exports.isConstantEntityDefinition = isConstantEntityDefinition;
function isEntityDefinition(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.entityDef;
}
exports.isEntityDefinition = isEntityDefinition;
function isEntityReference(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.entityRef;
}
exports.isEntityReference = isEntityReference;
function isDocumentDefinition(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.documentDef;
}
exports.isDocumentDefinition = isDocumentDefinition;
function isManifestDefinition(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.manifestDef;
}
exports.isManifestDefinition = isManifestDefinition;
function isFolderDefinition(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.folderDef;
}
exports.isFolderDefinition = isFolderDefinition;
function isAttributeContextDefinition(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.attributeContextDef;
}
exports.isAttributeContextDefinition = isAttributeContextDefinition;
function isAttributeContextReference(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.attributeContextRef;
}
exports.isAttributeContextReference = isAttributeContextReference;
function isManifestDeclarationDefinition(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.manifestDeclarationDef;
}
exports.isManifestDeclarationDefinition = isManifestDeclarationDefinition;
function isLocalEntityDeclarationDefinition(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.localEntityDeclarationDef;
}
exports.isLocalEntityDeclarationDefinition = isLocalEntityDeclarationDefinition;
function isReferencedEntityDeclarationDefinition(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.referencedEntityDeclarationDef;
}
exports.isReferencedEntityDeclarationDefinition = isReferencedEntityDeclarationDefinition;
function isDataPartition(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.dataPartitionDef;
}
exports.isDataPartition = isDataPartition;
function isDataPartitionPattern(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.dataPartitionPatternDef;
}
exports.isDataPartitionPattern = isDataPartitionPattern;
function isAttributeResolutionGuidance(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.attributeResolutionGuidanceDef;
}
exports.isAttributeResolutionGuidance = isAttributeResolutionGuidance;
function isE2ERelationship(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.e2eRelationshipDef;
}
exports.isE2ERelationship = isE2ERelationship;
function isCdmObjectReference(obj) {
    return obj && obj.fetchResolvedReference !== undefined;
}
exports.isCdmObjectReference = isCdmObjectReference;
function isProjection(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.projectionDef;
}
exports.isProjection = isProjection;
function isOperationAddCountAttribute(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.operationAddCountAttributeDef;
}
exports.isOperationAddCountAttribute = isOperationAddCountAttribute;
function isOperationAddSupportingAttribute(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.operationAddSupportingAttributeDef;
}
exports.isOperationAddSupportingAttribute = isOperationAddSupportingAttribute;
function isOperationAddTypeAttribute(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.operationAddTypeAttributeDef;
}
exports.isOperationAddTypeAttribute = isOperationAddTypeAttribute;
function isOperationExcludeAttributes(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.operationExcludeAttributesDef;
}
exports.isOperationExcludeAttributes = isOperationExcludeAttributes;
function isOperationArrayExpansion(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.operationArrayExpansionDef;
}
exports.isOperationArrayExpansion = isOperationArrayExpansion;
function isOperationCombineAttributes(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.operationCombineAttributesDef;
}
exports.isOperationCombineAttributes = isOperationCombineAttributes;
function isOperationRenameAttributes(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.operationRenameAttributesDef;
}
exports.isOperationRenameAttributes = isOperationRenameAttributes;
function isOperationReplaceAsForeignKey(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.operationReplaceAsForeignKeyDef;
}
exports.isOperationReplaceAsForeignKey = isOperationReplaceAsForeignKey;
function isOperationIncludeAttributes(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.operationIncludeAttributesDef;
}
exports.isOperationIncludeAttributes = isOperationIncludeAttributes;
function isOperationAddAttributeGroup(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.operationAddAttributeGroupDef;
}
exports.isOperationAddAttributeGroup = isOperationAddAttributeGroup;
function isResolvedAttributeSet(obj) {
    return obj && obj.set !== undefined && obj.resolvedName2resolvedAttribute !== undefined;
}
exports.isResolvedAttributeSet = isResolvedAttributeSet;
function isOperationAlterTraits(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.operationAlterTraitsDef;
}
exports.isOperationAlterTraits = isOperationAlterTraits;
function isOperationAddArtifactAttribute(obj) {
    return obj && obj.objectType === internal_1.cdmObjectType.operationAddArtifactAttributeDef;
}
exports.isOperationAddArtifactAttribute = isOperationAddArtifactAttribute;
//# sourceMappingURL=cdmObjectTypeGuards.js.map