41 lines
2.5 KiB
C#
41 lines
2.5 KiB
C#
namespace YandexMusic.API;
|
||
|
||
/// <summary>Главный класс API Яндекс Музыки. Предоставляет доступ ко всем веткам API.</summary>
|
||
public class YandexMusicApi
|
||
{
|
||
/// <summary>API для работы с альбомами.</summary>
|
||
public YAlbumAPI Album { get; internal set; } = null!;
|
||
/// <summary>API для работы с исполнителями.</summary>
|
||
public YArtistAPI Artist { get; internal set; } = null!;
|
||
/// <summary>API для работы с лейблами.</summary>
|
||
public YLabelAPI Label { get; internal set; } = null!;
|
||
/// <summary>API для работы с главной страницей (лендингом).</summary>
|
||
public YLandingAPI Landing { get; internal set; } = null!;
|
||
/// <summary>API для работы с библиотекой (лайки, дизлайки).</summary>
|
||
public YLibraryAPI Library { get; internal set; } = null!;
|
||
/// <summary>API для работы с плейлистами.</summary>
|
||
public YPlaylistAPI Playlist { get; internal set; } = null!;
|
||
/// <summary>API для работы с закреплёнными объектами.</summary>
|
||
public YPinsAPI Pins { get; internal set; } = null!;
|
||
/// <summary>API для работы с радио.</summary>
|
||
public YRadioAPI Radio { get; internal set; } = null!;
|
||
/// <summary>API для поиска.</summary>
|
||
public YSearchAPI Search { get; internal set; } = null!;
|
||
/// <summary>API для работы с треками.</summary>
|
||
public YTrackAPI Track { get; internal set; } = null!;
|
||
/// <summary>API для работы с очередями.</summary>
|
||
public YQueueAPI Queue { get; internal set; } = null!;
|
||
/// <summary>API для работы с пользователем и авторизацией.</summary>
|
||
public YUserAPI User { get; internal set; } = null!;
|
||
/// <summary>API для загрузки пользовательского контента.</summary>
|
||
public YUgcAPI UserGeneratedContent { get; internal set; } = null!;
|
||
/// <summary>API для работы с протоколом Ynison (WebSocket).</summary>
|
||
public YYnisonAPI Ynison { get; internal set; } = null!;
|
||
|
||
/// <summary>Создаёт экземпляр API с инициализацией всех подсистем.</summary>
|
||
public YandexMusicApi()
|
||
{
|
||
foreach (var property in GetType().GetProperties())
|
||
property.SetValue(this, Activator.CreateInstance(property.PropertyType, this));
|
||
}
|
||
} |