using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Runtime.Serialization;
using GitHub.Services.Common;
using GitHub.Services.Common.Internal;
using GitHub.Services.WebApi;
using GitHub.Services.WebApi.Patch;
using GitHub.Services.WebApi.Patch.Json;
namespace GitHub.Core.WebApi
{
[GenerateAllConstants]
public enum ProjectState
{
///
/// Project is in the process of being deleted.
///
[EnumMember]
Deleting = 2,
///
/// Project is in the process of being created.
///
[EnumMember]
New = 0,
///
/// Project is completely created and ready to use.
///
[EnumMember]
WellFormed = 1,
///
/// Project has been queued for creation, but the process has not yet started.
///
[EnumMember]
CreatePending = 3,
///
/// All projects regardless of state.
///
[EnumMember]
All = -1, // Used for filtering.
///
/// Project has not been changed.
///
[EnumMember]
Unchanged = -2, // Used for updating projects.
///
/// Project has been deleted.
///
[EnumMember]
Deleted = 4, // Used for the project history.
}
public enum ProjectVisibility // Stored as a TINYINT
{
[ClientInternalUseOnly]
Unchanged = -1, // Used for updating projects.
///
/// The project is only visible to users with explicit access.
///
Private = 0,
///
/// Enterprise level project visibility
///
[ClientInternalUseOnly(omitFromTypeScriptDeclareFile: false)]
Organization = 1,
///
/// The project is visible to all.
///
[EditorBrowsable(EditorBrowsableState.Never)]
Public = 2,
[ClientInternalUseOnly]
SystemPrivate = 3 // Soft-deleted projects
}
}