/**
 * This enum is used in DB. DO NOT CHANGE the existing values. It is also
 * indirectly referenced in the authorization.polar file, so references there
 * need to be updated if this changes.
 */
export var GroupType;
(function (GroupType) {
    GroupType[GroupType["ALL_USERS"] = 0] = "ALL_USERS";
    /**
     * @deprecated proj:rbac The Admin group type is no longer meant to be used. It's being replaced with the 'Admin' role assignment.
     * TODO(@jack) Remove this group type once rbac v2 is enabled for all orgs.
     */
    GroupType[GroupType["ADMIN"] = 1] = "ADMIN";
    GroupType[GroupType["CUSTOM"] = 2] = "CUSTOM";
    GroupType[GroupType["SUPER_USER"] = 3] = "SUPER_USER";
})(GroupType || (GroupType = {}));
export var GroupSource;
(function (GroupSource) {
    GroupSource["SUPERBLOCKS"] = "SUPERBLOCKS";
    GroupSource["SCIM"] = "SCIM";
})(GroupSource || (GroupSource = {}));
export class DataTreeGroup {
    id;
    name;
    size;
    constructor(groupBrief) {
        this.id = groupBrief.id;
        this.name = groupBrief.name;
        this.size = groupBrief.size;
    }
}
export var GroupMemberStatus;
(function (GroupMemberStatus) {
    GroupMemberStatus["UNREGISTERED"] = "unregistered";
    GroupMemberStatus["JOINED"] = "joined";
    GroupMemberStatus["DEACTIVATED"] = "deactivated";
})(GroupMemberStatus || (GroupMemberStatus = {}));
export var GroupAction;
(function (GroupAction) {
    GroupAction["ADD_MEMBER"] = "add_member";
    GroupAction["REMOVE_MEMBER"] = "remove_member";
})(GroupAction || (GroupAction = {}));
export const validGroupAction = (groupAction) => {
    return groupAction === GroupAction.ADD_MEMBER || groupAction === GroupAction.REMOVE_MEMBER;
};
export var DefaultGroupName;
(function (DefaultGroupName) {
    DefaultGroupName["ALL_USERS"] = "All Users";
    /**
     * @deprecated proj:rbac The Admin group type is no longer meant to be used. It's being replaced with the 'Admin' role assignment.
     * TODO(@jack) Remove this group type once rbac v2 is enabled for all orgs.
     */
    DefaultGroupName["ADMIN"] = "Admins";
    DefaultGroupName["SUPER_USER"] = "Super Users";
})(DefaultGroupName || (DefaultGroupName = {}));
export const isGroupDeletable = (type) => {
    return type !== GroupType.ADMIN && type !== GroupType.ALL_USERS;
};
//# sourceMappingURL=index.js.map