"use strict";
// Copyright (c) Microsoft Corporation. All rights reserved.
// Licensed under the MIT License. See License.txt in the project root for license information.
Object.defineProperty(exports, "__esModule", { value: true });
exports.CdmTraitGroupReference = void 0;
const internal_1 = require("../internal");
class CdmTraitGroupReference extends internal_1.CdmTraitReferenceBase {
    constructor(ctx, traitGroup, simpleReference) {
        super(ctx, traitGroup, simpleReference);
        // let bodyCode = () =>
        {
            this.objectType = internal_1.cdmObjectType.traitGroupRef;
        }
        // return p.measure(bodyCode);
    }
    getObjectType() {
        // let bodyCode = () =>
        {
            return internal_1.cdmObjectType.traitGroupRef;
        }
        // return p.measure(bodyCode);
    }
    /**
     * @internal
     */
    copyRefObject(resOpt, refTo, simpleReference, host) {
        // let bodyCode = () =>
        {
            if (host == null)
                return new CdmTraitGroupReference(this.ctx, refTo, simpleReference);
            else
                return host.copyToHost(this.ctx, refTo, simpleReference);
        }
        // return p.measure(bodyCode);
    }
    /**
     * @internal
     */
    visitRef(pathFrom, preChildren, postChildren) {
        return false;
    }
}
exports.CdmTraitGroupReference = CdmTraitGroupReference;
//# sourceMappingURL=CdmTraitGroupReference.js.map