/*
 * ---------------------------------------------------------
 * Copyright(C) Microsoft Corporation. All rights reserved.
 * ---------------------------------------------------------
 *
 * ---------------------------------------------------------
 * Generated file, DO NOT EDIT
 * ---------------------------------------------------------
 */
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.TypeInfo = exports.Plan = void 0;
var Plan;
(function (Plan) {
    /**
     * No plan is indicated
     */
    Plan[Plan["None"] = 0] = "None";
    /**
     * The Code Security plan
     */
    Plan[Plan["CodeSecurity"] = 1] = "CodeSecurity";
    /**
     * The Secret Protection plan
     */
    Plan[Plan["SecretProtection"] = 2] = "SecretProtection";
    /**
     * Include all plans
     */
    Plan[Plan["All"] = 3] = "All";
})(Plan = exports.Plan || (exports.Plan = {}));
exports.TypeInfo = {
    AdvSecEnablementSettings: {},
    AdvSecEnablementStatus: {},
    BillableCommitterDetails: {},
    CodeSecurityFeatures: {},
    MeterUsage: {},
    MeterUsageForPlan: {},
    OrgEnablementSettings: {},
    Plan: {
        enumValues: {
            "codeSecurity": 1,
            "secretProtection": 2,
            "all": 3
        }
    },
    ProjectEnablementSettings: {},
    RepoEnablementSettings: {},
    SecretProtectionFeatures: {},
};
exports.TypeInfo.AdvSecEnablementSettings.fields = {
    reposEnablementStatus: {
        isArray: true,
        typeInfo: exports.TypeInfo.AdvSecEnablementStatus
    }
};
exports.TypeInfo.AdvSecEnablementStatus.fields = {
    advSecEnablementLastChangedDate: {
        isDate: true,
    }
};
exports.TypeInfo.BillableCommitterDetails.fields = {
    commitTime: {
        isDate: true,
    },
    pushedTime: {
        isDate: true,
    }
};
exports.TypeInfo.CodeSecurityFeatures.fields = {
    codeSecurityEnablementLastChangedDate: {
        isDate: true,
    }
};
exports.TypeInfo.MeterUsage.fields = {
    billingDate: {
        isDate: true,
    }
};
exports.TypeInfo.MeterUsageForPlan.fields = {
    billingDate: {
        isDate: true,
    }
};
exports.TypeInfo.OrgEnablementSettings.fields = {
    codeSecurityFeatures: {
        typeInfo: exports.TypeInfo.CodeSecurityFeatures
    },
    reposEnablementStatus: {
        isArray: true,
        typeInfo: exports.TypeInfo.RepoEnablementSettings
    },
    secretProtectionFeatures: {
        typeInfo: exports.TypeInfo.SecretProtectionFeatures
    }
};
exports.TypeInfo.ProjectEnablementSettings.fields = {
    codeSecurityFeatures: {
        typeInfo: exports.TypeInfo.CodeSecurityFeatures
    },
    reposEnablementStatus: {
        isArray: true,
        typeInfo: exports.TypeInfo.RepoEnablementSettings
    },
    secretProtectionFeatures: {
        typeInfo: exports.TypeInfo.SecretProtectionFeatures
    }
};
exports.TypeInfo.RepoEnablementSettings.fields = {
    codeSecurityFeatures: {
        typeInfo: exports.TypeInfo.CodeSecurityFeatures
    },
    secretProtectionFeatures: {
        typeInfo: exports.TypeInfo.SecretProtectionFeatures
    }
};
exports.TypeInfo.SecretProtectionFeatures.fields = {
    secretProtectionEnablementLastChangedDate: {
        isDate: true,
    }
};
