"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
exports.getPropertyMap = getPropertyMap;
/**
 * Returns an Array of IPropertyMap objects
 * that define the projection of properties from a IGroup to an IHubGroup
 * @returns
 * @private
 */
function getPropertyMap() {
    const map = [];
    /**
     * group-specific mappings
     */
    map.push({ entityKey: "name", storeKey: "title" });
    map.push({ entityKey: "summary", storeKey: "snippet" });
    map.push({ entityKey: "permissions", storeKey: "properties.permissions" });
    // features is intentionally left out
    const groupProps = [
        "access",
        "autoJoin",
        "description",
        "id",
        "isInvitationOnly",
        "isDiscussable",
        "isReadOnly",
        "isViewOnly",
        "membershipAccess",
        "owner",
        "orgId",
        "protected",
        "sortField",
        "sortOrder",
        "tags",
        "thumbnail",
        "thumbnailUrl",
        "typeKeywords",
        "userMembership",
        "isOpenData",
        "hiddenMembers",
        "leavingDisallowed",
    ];
    groupProps.forEach((entry) => {
        map.push({ entityKey: entry, storeKey: entry });
    });
    return map;
}
//# sourceMappingURL=getPropertyMap.js.map