import { b as ClientMethods, a as PaginationOptions, B as BaseClient, C as ClientConfig } from '../client-Me0HpgXr.js'; type components = { schemas: { AddAlbumOptions: { addType?: components["schemas"]["AlbumAddType"]; searchForNewAlbum?: boolean; }; AddArtistOptions: { albumsToMonitor?: string[] | null; monitor?: components["schemas"]["MonitorTypes"]; monitored?: boolean; searchForMissingAlbums?: boolean; }; /** @enum {string} */ AlbumAddType: "automatic" | "manual"; AlbumReleaseResource: { /** Format: int32 */ albumId?: number; country?: string[] | null; disambiguation?: string | null; /** Format: int32 */ duration?: number; foreignReleaseId?: string | null; format?: string | null; /** Format: int32 */ id?: number; label?: string[] | null; media?: components["schemas"]["MediumResource"][] | null; /** Format: int32 */ readonly mediumCount?: number; monitored?: boolean; status?: string | null; title?: string | null; /** Format: int32 */ trackCount?: number; }; AlbumResource: { addOptions?: components["schemas"]["AddAlbumOptions"]; albumType?: string | null; anyReleaseOk?: boolean; artist?: components["schemas"]["ArtistResource"]; /** Format: int32 */ artistId?: number; disambiguation?: string | null; /** Format: int32 */ duration?: number; foreignAlbumId?: string | null; genres?: string[] | null; /** Format: int32 */ id?: number; images?: components["schemas"]["MediaCover"][] | null; /** Format: date-time */ lastSearchTime?: string | null; links?: components["schemas"]["Links"][] | null; media?: components["schemas"]["MediumResource"][] | null; /** Format: int32 */ readonly mediumCount?: number; monitored?: boolean; overview?: string | null; /** Format: int32 */ profileId?: number; ratings?: components["schemas"]["Ratings"]; /** Format: date-time */ releaseDate?: string | null; releases?: components["schemas"]["AlbumReleaseResource"][] | null; remoteCover?: string | null; secondaryTypes?: string[] | null; statistics?: components["schemas"]["AlbumStatisticsResource"]; title?: string | null; }; AlbumResourcePagingResource: { /** Format: int32 */ page?: number; /** Format: int32 */ pageSize?: number; records?: components["schemas"]["AlbumResource"][] | null; sortDirection?: components["schemas"]["SortDirection"]; sortKey?: string | null; /** Format: int32 */ totalRecords?: number; }; AlbumsMonitoredResource: { albumIds?: number[] | null; monitored?: boolean; }; AlbumStatisticsResource: { /** Format: double */ readonly percentOfTracks?: number; /** Format: int64 */ sizeOnDisk?: number; /** Format: int32 */ totalTrackCount?: number; /** Format: int32 */ trackCount?: number; /** Format: int32 */ trackFileCount?: number; }; AlbumStudioArtistResource: { albums?: components["schemas"]["AlbumResource"][] | null; /** Format: int32 */ id?: number; monitored?: boolean | null; }; AlbumStudioResource: { artist?: components["schemas"]["AlbumStudioArtistResource"][] | null; monitoringOptions?: components["schemas"]["MonitoringOptions"]; monitorNewItems?: components["schemas"]["NewItemMonitorTypes"]; }; /** @enum {string} */ AllowFingerprinting: "never" | "newFiles" | "allFiles"; /** @enum {string} */ ApplyTags: "add" | "remove" | "replace"; ArtistEditorResource: { addImportListExclusion?: boolean; applyTags?: components["schemas"]["ApplyTags"]; artistIds?: number[] | null; deleteFiles?: boolean; /** Format: int32 */ metadataProfileId?: number | null; monitored?: boolean | null; monitorNewItems?: components["schemas"]["NewItemMonitorTypes"]; moveFiles?: boolean; /** Format: int32 */ qualityProfileId?: number | null; rootFolderPath?: string | null; tags?: number[] | null; }; ArtistResource: { /** Format: date-time */ added?: string; addOptions?: components["schemas"]["AddArtistOptions"]; allMusicId?: string | null; artistName?: string | null; artistType?: string | null; cleanName?: string | null; disambiguation?: string | null; /** Format: int32 */ discogsId?: number; readonly ended?: boolean; folder?: string | null; foreignArtistId?: string | null; genres?: string[] | null; /** Format: int32 */ id?: number; images?: components["schemas"]["MediaCover"][] | null; lastAlbum?: components["schemas"]["AlbumResource"]; links?: components["schemas"]["Links"][] | null; mbId?: string | null; members?: components["schemas"]["Member"][] | null; /** Format: int32 */ metadataProfileId?: number; monitored?: boolean; monitorNewItems?: components["schemas"]["NewItemMonitorTypes"]; nextAlbum?: components["schemas"]["AlbumResource"]; overview?: string | null; path?: string | null; /** Format: int32 */ qualityProfileId?: number; ratings?: components["schemas"]["Ratings"]; remotePoster?: string | null; rootFolderPath?: string | null; sortName?: string | null; statistics?: components["schemas"]["ArtistStatisticsResource"]; status?: components["schemas"]["ArtistStatusType"]; /** Format: int32 */ tadbId?: number; tags?: number[] | null; }; ArtistStatisticsResource: { /** Format: int32 */ albumCount?: number; /** Format: double */ readonly percentOfTracks?: number; /** Format: int64 */ sizeOnDisk?: number; /** Format: int32 */ totalTrackCount?: number; /** Format: int32 */ trackCount?: number; /** Format: int32 */ trackFileCount?: number; }; /** @enum {string} */ ArtistStatusType: "continuing" | "ended" | "deleted"; ArtistTitleInfo: { title?: string | null; titleWithoutYear?: string | null; /** Format: int32 */ year?: number; }; /** @enum {string} */ AuthenticationRequiredType: "enabled" | "disabledForLocalAddresses"; /** @enum {string} */ AuthenticationType: "none" | "basic" | "forms" | "external"; AutoTaggingResource: { /** Format: int32 */ id?: number; name?: string | null; removeTagsAutomatically?: boolean; specifications?: components["schemas"]["AutoTaggingSpecificationSchema"][] | null; tags?: number[] | null; }; AutoTaggingSpecificationSchema: { fields?: components["schemas"]["Field"][] | null; /** Format: int32 */ id?: number; implementation?: string | null; implementationName?: string | null; name?: string | null; negate?: boolean; required?: boolean; }; BackupResource: { /** Format: int32 */ id?: number; name?: string | null; path?: string | null; /** Format: int64 */ size?: number; /** Format: date-time */ time?: string; type?: components["schemas"]["BackupType"]; }; /** @enum {string} */ BackupType: "scheduled" | "manual" | "update"; BlocklistBulkResource: { ids?: number[] | null; }; BlocklistResource: { albumIds?: number[] | null; artist?: components["schemas"]["ArtistResource"]; /** Format: int32 */ artistId?: number; customFormats?: components["schemas"]["CustomFormatResource"][] | null; /** Format: date-time */ date?: string; /** Format: int32 */ id?: number; indexer?: string | null; message?: string | null; protocol?: components["schemas"]["DownloadProtocol"]; quality?: components["schemas"]["QualityModel"]; sourceTitle?: string | null; }; BlocklistResourcePagingResource: { /** Format: int32 */ page?: number; /** Format: int32 */ pageSize?: number; records?: components["schemas"]["BlocklistResource"][] | null; sortDirection?: components["schemas"]["SortDirection"]; sortKey?: string | null; /** Format: int32 */ totalRecords?: number; }; /** @enum {string} */ CertificateValidationType: "enabled" | "disabledForLocalAddresses" | "disabled"; Command: { clientUserAgent?: string | null; readonly completionMessage?: string | null; readonly isExclusive?: boolean; readonly isLongRunning?: boolean; readonly isTypeExclusive?: boolean; /** Format: date-time */ lastExecutionTime?: string | null; /** Format: date-time */ lastStartTime?: string | null; readonly name?: string | null; readonly requiresDiskAccess?: boolean; sendUpdatesToClient?: boolean; suppressMessages?: boolean; trigger?: components["schemas"]["CommandTrigger"]; readonly updateScheduledTask?: boolean; }; /** @enum {string} */ CommandPriority: "normal" | "high" | "low"; CommandResource: { body?: components["schemas"]["Command"]; clientUserAgent?: string | null; commandName?: string | null; /** Format: date-span */ duration?: string | null; /** Format: date-time */ ended?: string | null; exception?: string | null; /** Format: int32 */ id?: number; /** Format: date-time */ lastExecutionTime?: string | null; message?: string | null; name?: string | null; priority?: components["schemas"]["CommandPriority"]; /** Format: date-time */ queued?: string; result?: components["schemas"]["CommandResult"]; sendUpdatesToClient?: boolean; /** Format: date-time */ started?: string | null; /** Format: date-time */ stateChangeTime?: string | null; status?: components["schemas"]["CommandStatus"]; trigger?: components["schemas"]["CommandTrigger"]; updateScheduledTask?: boolean; }; /** @enum {string} */ CommandResult: "unknown" | "successful" | "unsuccessful"; /** @enum {string} */ CommandStatus: "queued" | "started" | "completed" | "failed" | "aborted" | "cancelled" | "orphaned"; /** @enum {string} */ CommandTrigger: "unspecified" | "manual" | "scheduled"; CustomFilterResource: { filters?: { [key: string]: unknown; }[] | null; /** Format: int32 */ id?: number; label?: string | null; type?: string | null; }; CustomFormatBulkResource: { ids?: number[] | null; includeCustomFormatWhenRenaming?: boolean | null; }; CustomFormatResource: { /** Format: int32 */ id?: number; includeCustomFormatWhenRenaming?: boolean | null; name?: string | null; specifications?: components["schemas"]["CustomFormatSpecificationSchema"][] | null; }; CustomFormatSpecificationSchema: { fields?: components["schemas"]["Field"][] | null; /** Format: int32 */ id?: number; implementation?: string | null; implementationName?: string | null; infoLink?: string | null; name?: string | null; negate?: boolean; presets?: components["schemas"]["CustomFormatSpecificationSchema"][] | null; required?: boolean; }; /** @enum {string} */ DatabaseType: "sqLite" | "postgreSQL"; DelayProfileResource: { bypassIfAboveCustomFormatScore?: boolean; bypassIfHighestQuality?: boolean; enableTorrent?: boolean; enableUsenet?: boolean; /** Format: int32 */ id?: number; /** Format: int32 */ minimumCustomFormatScore?: number; /** Format: int32 */ order?: number; preferredProtocol?: components["schemas"]["DownloadProtocol"]; tags?: number[] | null; /** Format: int32 */ torrentDelay?: number; /** Format: int32 */ usenetDelay?: number; }; DiskSpaceResource: { /** Format: int64 */ freeSpace?: number; /** Format: int32 */ id?: number; label?: string | null; path?: string | null; /** Format: int64 */ totalSpace?: number; }; DownloadClientBulkResource: { applyTags?: components["schemas"]["ApplyTags"]; enable?: boolean | null; ids?: number[] | null; /** Format: int32 */ priority?: number | null; removeCompletedDownloads?: boolean | null; removeFailedDownloads?: boolean | null; tags?: number[] | null; }; DownloadClientConfigResource: { autoRedownloadFailed?: boolean; autoRedownloadFailedFromInteractiveSearch?: boolean; downloadClientWorkingFolders?: string | null; enableCompletedDownloadHandling?: boolean; /** Format: int32 */ id?: number; }; DownloadClientResource: { configContract?: string | null; enable?: boolean; fields?: components["schemas"]["Field"][] | null; /** Format: int32 */ id?: number; implementation?: string | null; implementationName?: string | null; infoLink?: string | null; message?: components["schemas"]["ProviderMessage"]; name?: string | null; presets?: components["schemas"]["DownloadClientResource"][] | null; /** Format: int32 */ priority?: number; protocol?: components["schemas"]["DownloadProtocol"]; removeCompletedDownloads?: boolean; removeFailedDownloads?: boolean; tags?: number[] | null; }; /** @enum {string} */ DownloadProtocol: "unknown" | "usenet" | "torrent"; /** @enum {string} */ EntityHistoryEventType: "unknown" | "grabbed" | "artistFolderImported" | "trackFileImported" | "downloadFailed" | "trackFileDeleted" | "trackFileRenamed" | "albumImportIncomplete" | "downloadImported" | "trackFileRetagged" | "downloadIgnored"; Field: { advanced?: boolean; helpLink?: string | null; helpText?: string | null; helpTextWarning?: string | null; hidden?: string | null; isFloat?: boolean; label?: string | null; name?: string | null; /** Format: int32 */ order?: number; placeholder?: string | null; privacy?: components["schemas"]["PrivacyLevel"]; section?: string | null; selectOptions?: components["schemas"]["SelectOption"][] | null; selectOptionsProviderAction?: string | null; type?: string | null; unit?: string | null; value?: unknown; }; /** @enum {string} */ FileDateType: "none" | "albumReleaseDate"; /** @enum {string} */ HealthCheckResult: "ok" | "notice" | "warning" | "error"; HealthResource: { /** Format: int32 */ id?: number; message?: string | null; source?: string | null; type?: components["schemas"]["HealthCheckResult"]; wikiUrl?: string | null; }; HistoryResource: { album?: components["schemas"]["AlbumResource"]; /** Format: int32 */ albumId?: number; artist?: components["schemas"]["ArtistResource"]; /** Format: int32 */ artistId?: number; customFormats?: components["schemas"]["CustomFormatResource"][] | null; /** Format: int32 */ customFormatScore?: number; data?: { [key: string]: string | null; } | null; /** Format: date-time */ date?: string; downloadId?: string | null; eventType?: components["schemas"]["EntityHistoryEventType"]; /** Format: int32 */ id?: number; quality?: components["schemas"]["QualityModel"]; qualityCutoffNotMet?: boolean; sourceTitle?: string | null; track?: components["schemas"]["TrackResource"]; /** Format: int32 */ trackId?: number; }; HistoryResourcePagingResource: { /** Format: int32 */ page?: number; /** Format: int32 */ pageSize?: number; records?: components["schemas"]["HistoryResource"][] | null; sortDirection?: components["schemas"]["SortDirection"]; sortKey?: string | null; /** Format: int32 */ totalRecords?: number; }; HostConfigResource: { analyticsEnabled?: boolean; apiKey?: string | null; applicationUrl?: string | null; authenticationMethod?: components["schemas"]["AuthenticationType"]; authenticationRequired?: components["schemas"]["AuthenticationRequiredType"]; backupFolder?: string | null; /** Format: int32 */ backupInterval?: number; /** Format: int32 */ backupRetention?: number; bindAddress?: string | null; branch?: string | null; certificateValidation?: components["schemas"]["CertificateValidationType"]; consoleLogLevel?: string | null; enableSsl?: boolean; /** Format: int32 */ id?: number; instanceName?: string | null; launchBrowser?: boolean; logLevel?: string | null; /** Format: int32 */ logSizeLimit?: number; password?: string | null; passwordConfirmation?: string | null; /** Format: int32 */ port?: number; proxyBypassFilter?: string | null; proxyBypassLocalAddresses?: boolean; proxyEnabled?: boolean; proxyHostname?: string | null; proxyPassword?: string | null; /** Format: int32 */ proxyPort?: number; proxyType?: components["schemas"]["ProxyType"]; proxyUsername?: string | null; sslCertPassword?: string | null; sslCertPath?: string | null; /** Format: int32 */ sslPort?: number; trustCgnatIpAddresses?: boolean; updateAutomatically?: boolean; updateMechanism?: components["schemas"]["UpdateMechanism"]; updateScriptPath?: string | null; urlBase?: string | null; username?: string | null; }; ImportListBulkResource: { applyTags?: components["schemas"]["ApplyTags"]; enableAutomaticAdd?: boolean | null; ids?: number[] | null; /** Format: int32 */ qualityProfileId?: number | null; rootFolderPath?: string | null; tags?: number[] | null; }; ImportListExclusionResource: { artistName?: string | null; foreignId?: string | null; /** Format: int32 */ id?: number; }; /** @enum {string} */ ImportListMonitorType: "none" | "specificAlbum" | "entireArtist"; ImportListResource: { configContract?: string | null; enableAutomaticAdd?: boolean; fields?: components["schemas"]["Field"][] | null; /** Format: int32 */ id?: number; implementation?: string | null; implementationName?: string | null; infoLink?: string | null; /** Format: int32 */ listOrder?: number; listType?: components["schemas"]["ImportListType"]; message?: components["schemas"]["ProviderMessage"]; /** Format: int32 */ metadataProfileId?: number; /** Format: date-span */ minRefreshInterval?: string; monitorNewItems?: components["schemas"]["NewItemMonitorTypes"]; name?: string | null; presets?: components["schemas"]["ImportListResource"][] | null; /** Format: int32 */ qualityProfileId?: number; rootFolderPath?: string | null; shouldMonitor?: components["schemas"]["ImportListMonitorType"]; shouldMonitorExisting?: boolean; shouldSearch?: boolean; tags?: number[] | null; }; /** @enum {string} */ ImportListType: "program" | "spotify" | "lastFm" | "other" | "advanced"; IndexerBulkResource: { applyTags?: components["schemas"]["ApplyTags"]; enableAutomaticSearch?: boolean | null; enableInteractiveSearch?: boolean | null; enableRss?: boolean | null; ids?: number[] | null; /** Format: int32 */ priority?: number | null; tags?: number[] | null; }; IndexerConfigResource: { /** Format: int32 */ id?: number; /** Format: int32 */ maximumSize?: number; /** Format: int32 */ minimumAge?: number; /** Format: int32 */ retention?: number; /** Format: int32 */ rssSyncInterval?: number; }; IndexerFlagResource: { /** Format: int32 */ id?: number; name?: string | null; readonly nameLower?: string | null; }; IndexerResource: { configContract?: string | null; /** Format: int32 */ downloadClientId?: number; enableAutomaticSearch?: boolean; enableInteractiveSearch?: boolean; enableRss?: boolean; fields?: components["schemas"]["Field"][] | null; /** Format: int32 */ id?: number; implementation?: string | null; implementationName?: string | null; infoLink?: string | null; message?: components["schemas"]["ProviderMessage"]; name?: string | null; presets?: components["schemas"]["IndexerResource"][] | null; /** Format: int32 */ priority?: number; protocol?: components["schemas"]["DownloadProtocol"]; supportsRss?: boolean; supportsSearch?: boolean; tags?: number[] | null; }; IsoCountry: { name?: string | null; twoLetterCode?: string | null; }; LanguageResource: { /** Format: int32 */ id?: number; name?: string | null; readonly nameLower?: string | null; }; Links: { name?: string | null; url?: string | null; }; LocalizationResource: { /** Format: int32 */ id?: number; strings?: { [key: string]: string | null; } | null; }; LogFileResource: { contentsUrl?: string | null; downloadUrl?: string | null; filename?: string | null; /** Format: int32 */ id?: number; /** Format: date-time */ lastWriteTime?: string; }; LogResource: { exception?: string | null; exceptionType?: string | null; /** Format: int32 */ id?: number; level?: string | null; logger?: string | null; message?: string | null; method?: string | null; /** Format: date-time */ time?: string; }; LogResourcePagingResource: { /** Format: int32 */ page?: number; /** Format: int32 */ pageSize?: number; records?: components["schemas"]["LogResource"][] | null; sortDirection?: components["schemas"]["SortDirection"]; sortKey?: string | null; /** Format: int32 */ totalRecords?: number; }; ManualImportResource: { additionalFile?: boolean; album?: components["schemas"]["AlbumResource"]; /** Format: int32 */ albumReleaseId?: number; artist?: components["schemas"]["ArtistResource"]; audioTags?: components["schemas"]["ParsedTrackInfo"]; disableReleaseSwitching?: boolean; downloadId?: string | null; /** Format: int32 */ id?: number; /** Format: int32 */ indexerFlags?: number; name?: string | null; path?: string | null; quality?: components["schemas"]["QualityModel"]; /** Format: int32 */ qualityWeight?: number; rejections?: components["schemas"]["Rejection"][] | null; releaseGroup?: string | null; replaceExistingFiles?: boolean; /** Format: int64 */ size?: number; tracks?: components["schemas"]["TrackResource"][] | null; }; ManualImportUpdateResource: { additionalFile?: boolean; /** Format: int32 */ albumId?: number | null; /** Format: int32 */ albumReleaseId?: number | null; /** Format: int32 */ artistId?: number | null; disableReleaseSwitching?: boolean; downloadId?: string | null; /** Format: int32 */ id?: number; /** Format: int32 */ indexerFlags?: number; name?: string | null; path?: string | null; quality?: components["schemas"]["QualityModel"]; rejections?: components["schemas"]["Rejection"][] | null; releaseGroup?: string | null; replaceExistingFiles?: boolean; trackIds?: number[] | null; tracks?: components["schemas"]["TrackResource"][] | null; }; MediaCover: { coverType?: components["schemas"]["MediaCoverTypes"]; readonly extension?: string | null; remoteUrl?: string | null; url?: string | null; }; /** @enum {string} */ MediaCoverTypes: "unknown" | "poster" | "banner" | "fanart" | "screenshot" | "headshot" | "cover" | "disc" | "logo" | "clearlogo"; MediaInfoModel: { /** Format: int32 */ audioBitrate?: number; /** Format: int32 */ audioBits?: number; /** Format: int32 */ audioChannels?: number; audioFormat?: string | null; /** Format: int32 */ audioSampleRate?: number; }; MediaInfoResource: { audioBitRate?: string | null; audioBits?: string | null; /** Format: double */ audioChannels?: number; audioCodec?: string | null; audioSampleRate?: string | null; /** Format: int32 */ id?: number; }; MediaManagementConfigResource: { allowFingerprinting?: components["schemas"]["AllowFingerprinting"]; autoUnmonitorPreviouslyDownloadedTracks?: boolean; chmodFolder?: string | null; chownGroup?: string | null; copyUsingHardlinks?: boolean; createEmptyArtistFolders?: boolean; deleteEmptyFolders?: boolean; downloadPropersAndRepacks?: components["schemas"]["ProperDownloadTypes"]; enableMediaInfo?: boolean; extraFileExtensions?: string | null; fileDate?: components["schemas"]["FileDateType"]; /** Format: int32 */ id?: number; importExtraFiles?: boolean; /** Format: int32 */ minimumFreeSpaceWhenImporting?: number; recycleBin?: string | null; /** Format: int32 */ recycleBinCleanupDays?: number; rescanAfterRefresh?: components["schemas"]["RescanAfterRefreshType"]; scriptImportPath?: string | null; setPermissionsLinux?: boolean; skipFreeSpaceCheckWhenImporting?: boolean; useScriptImport?: boolean; watchLibraryForChanges?: boolean; }; MediumResource: { mediumFormat?: string | null; mediumName?: string | null; /** Format: int32 */ mediumNumber?: number; }; Member: { images?: components["schemas"]["MediaCover"][] | null; instrument?: string | null; name?: string | null; }; MetadataProfileResource: { /** Format: int32 */ id?: number; name?: string | null; primaryAlbumTypes?: components["schemas"]["ProfilePrimaryAlbumTypeItemResource"][] | null; releaseStatuses?: components["schemas"]["ProfileReleaseStatusItemResource"][] | null; secondaryAlbumTypes?: components["schemas"]["ProfileSecondaryAlbumTypeItemResource"][] | null; }; MetadataProviderConfigResource: { embedCoverArt?: boolean; /** Format: int32 */ id?: number; metadataSource?: string | null; scrubAudioTags?: boolean; writeAudioTags?: components["schemas"]["WriteAudioTagsType"]; }; MetadataResource: { configContract?: string | null; enable?: boolean; fields?: components["schemas"]["Field"][] | null; /** Format: int32 */ id?: number; implementation?: string | null; implementationName?: string | null; infoLink?: string | null; message?: components["schemas"]["ProviderMessage"]; name?: string | null; presets?: components["schemas"]["MetadataResource"][] | null; tags?: number[] | null; }; MonitoringOptions: { albumsToMonitor?: string[] | null; monitor?: components["schemas"]["MonitorTypes"]; monitored?: boolean; }; /** @enum {string} */ MonitorTypes: "all" | "future" | "missing" | "existing" | "latest" | "first" | "none" | "unknown"; NamingConfigResource: { artistFolderFormat?: string | null; /** Format: int32 */ colonReplacementFormat?: number; /** Format: int32 */ id?: number; includeAlbumTitle?: boolean; includeArtistName?: boolean; includeQuality?: boolean; multiDiscTrackFormat?: string | null; numberStyle?: string | null; renameTracks?: boolean; replaceIllegalCharacters?: boolean; replaceSpaces?: boolean; separator?: string | null; standardTrackFormat?: string | null; }; /** @enum {string} */ NewItemMonitorTypes: "all" | "none" | "new"; NotificationResource: { configContract?: string | null; fields?: components["schemas"]["Field"][] | null; /** Format: int32 */ id?: number; implementation?: string | null; implementationName?: string | null; includeHealthWarnings?: boolean; infoLink?: string | null; link?: string | null; message?: components["schemas"]["ProviderMessage"]; name?: string | null; onAlbumDelete?: boolean; onApplicationUpdate?: boolean; onArtistAdd?: boolean; onArtistDelete?: boolean; onDownloadFailure?: boolean; onGrab?: boolean; onHealthIssue?: boolean; onHealthRestored?: boolean; onImportFailure?: boolean; onReleaseImport?: boolean; onRename?: boolean; onTrackRetag?: boolean; onUpgrade?: boolean; presets?: components["schemas"]["NotificationResource"][] | null; supportsOnAlbumDelete?: boolean; supportsOnApplicationUpdate?: boolean; supportsOnArtistAdd?: boolean; supportsOnArtistDelete?: boolean; supportsOnDownloadFailure?: boolean; supportsOnGrab?: boolean; supportsOnHealthIssue?: boolean; supportsOnHealthRestored?: boolean; supportsOnImportFailure?: boolean; supportsOnReleaseImport?: boolean; supportsOnRename?: boolean; supportsOnTrackRetag?: boolean; supportsOnUpgrade?: boolean; tags?: number[] | null; testCommand?: string | null; }; ParsedAlbumInfo: { albumTitle?: string | null; albumType?: string | null; artistName?: string | null; artistTitleInfo?: components["schemas"]["ArtistTitleInfo"]; discography?: boolean; /** Format: int32 */ discographyEnd?: number; /** Format: int32 */ discographyStart?: number; quality?: components["schemas"]["QualityModel"]; releaseDate?: string | null; releaseGroup?: string | null; releaseHash?: string | null; releaseTitle?: string | null; releaseVersion?: string | null; }; ParsedTrackInfo: { albumMBId?: string | null; albumTitle?: string | null; artistMBId?: string | null; artistTitle?: string | null; artistTitleInfo?: components["schemas"]["ArtistTitleInfo"]; catalogNumber?: string | null; cleanTitle?: string | null; country?: components["schemas"]["IsoCountry"]; disambiguation?: string | null; /** Format: int32 */ discCount?: number; /** Format: int32 */ discNumber?: number; /** Format: date-span */ duration?: string; label?: string | null; mediaInfo?: components["schemas"]["MediaInfoModel"]; quality?: components["schemas"]["QualityModel"]; recordingMBId?: string | null; releaseGroup?: string | null; releaseHash?: string | null; releaseMBId?: string | null; title?: string | null; trackMBId?: string | null; trackNumbers?: number[] | null; /** Format: int32 */ year?: number; }; ParseResource: { albums?: components["schemas"]["AlbumResource"][] | null; artist?: components["schemas"]["ArtistResource"]; customFormats?: components["schemas"]["CustomFormatResource"][] | null; /** Format: int32 */ customFormatScore?: number; /** Format: int32 */ id?: number; parsedAlbumInfo?: components["schemas"]["ParsedAlbumInfo"]; title?: string | null; }; PingResource: { status?: string | null; }; PrimaryAlbumType: { /** Format: int32 */ id?: number; name?: string | null; }; /** @enum {string} */ PrivacyLevel: "normal" | "password" | "apiKey" | "userName"; ProfileFormatItemResource: { /** Format: int32 */ format?: number; /** Format: int32 */ id?: number; name?: string | null; /** Format: int32 */ score?: number; }; ProfilePrimaryAlbumTypeItemResource: { albumType?: components["schemas"]["PrimaryAlbumType"]; allowed?: boolean; /** Format: int32 */ id?: number; }; ProfileReleaseStatusItemResource: { allowed?: boolean; /** Format: int32 */ id?: number; releaseStatus?: components["schemas"]["ReleaseStatus"]; }; ProfileSecondaryAlbumTypeItemResource: { albumType?: components["schemas"]["SecondaryAlbumType"]; allowed?: boolean; /** Format: int32 */ id?: number; }; /** @enum {string} */ ProperDownloadTypes: "preferAndUpgrade" | "doNotUpgrade" | "doNotPrefer"; ProviderMessage: { message?: string | null; type?: components["schemas"]["ProviderMessageType"]; }; /** @enum {string} */ ProviderMessageType: "info" | "warning" | "error"; /** @enum {string} */ ProxyType: "http" | "socks4" | "socks5"; Quality: { /** Format: int32 */ id?: number; name?: string | null; }; QualityDefinitionResource: { /** Format: int32 */ id?: number; /** Format: double */ maxSize?: number | null; /** Format: double */ minSize?: number | null; /** Format: double */ preferredSize?: number | null; quality?: components["schemas"]["Quality"]; title?: string | null; /** Format: int32 */ weight?: number; }; QualityModel: { quality?: components["schemas"]["Quality"]; revision?: components["schemas"]["Revision"]; }; QualityProfileQualityItemResource: { allowed?: boolean; /** Format: int32 */ id?: number; items?: components["schemas"]["QualityProfileQualityItemResource"][] | null; name?: string | null; quality?: components["schemas"]["Quality"]; }; QualityProfileResource: { /** Format: int32 */ cutoff?: number; /** Format: int32 */ cutoffFormatScore?: number; formatItems?: components["schemas"]["ProfileFormatItemResource"][] | null; /** Format: int32 */ id?: number; items?: components["schemas"]["QualityProfileQualityItemResource"][] | null; /** Format: int32 */ minFormatScore?: number; name?: string | null; upgradeAllowed?: boolean; }; QueueBulkResource: { ids?: number[] | null; }; QueueResource: { /** Format: date-time */ added?: string | null; album?: components["schemas"]["AlbumResource"]; /** Format: int32 */ albumId?: number | null; artist?: components["schemas"]["ArtistResource"]; /** Format: int32 */ artistId?: number | null; customFormats?: components["schemas"]["CustomFormatResource"][] | null; /** Format: int32 */ customFormatScore?: number; downloadClient?: string | null; downloadClientHasPostImportCategory?: boolean; downloadForced?: boolean; downloadId?: string | null; errorMessage?: string | null; /** Format: date-time */ estimatedCompletionTime?: string | null; /** Format: int32 */ id?: number; indexer?: string | null; outputPath?: string | null; protocol?: components["schemas"]["DownloadProtocol"]; quality?: components["schemas"]["QualityModel"]; /** Format: double */ size?: number; /** Format: double */ sizeleft?: number; status?: string | null; statusMessages?: components["schemas"]["TrackedDownloadStatusMessage"][] | null; /** Format: date-span */ timeleft?: string | null; title?: string | null; trackedDownloadState?: components["schemas"]["TrackedDownloadState"]; trackedDownloadStatus?: components["schemas"]["TrackedDownloadStatus"]; /** Format: int32 */ trackFileCount?: number; /** Format: int32 */ trackHasFileCount?: number; }; QueueResourcePagingResource: { /** Format: int32 */ page?: number; /** Format: int32 */ pageSize?: number; records?: components["schemas"]["QueueResource"][] | null; sortDirection?: components["schemas"]["SortDirection"]; sortKey?: string | null; /** Format: int32 */ totalRecords?: number; }; QueueStatusResource: { /** Format: int32 */ count?: number; errors?: boolean; /** Format: int32 */ id?: number; /** Format: int32 */ totalCount?: number; /** Format: int32 */ unknownCount?: number; unknownErrors?: boolean; unknownWarnings?: boolean; warnings?: boolean; }; Ratings: { /** Format: double */ value?: number; /** Format: int32 */ votes?: number; }; Rejection: { reason?: string | null; type?: components["schemas"]["RejectionType"]; }; /** @enum {string} */ RejectionType: "permanent" | "temporary"; ReleaseProfileResource: { enabled?: boolean; /** Format: int32 */ id?: number; ignored?: string[] | null; /** Format: int32 */ indexerId?: number; required?: string[] | null; tags?: number[] | null; }; ReleaseResource: { /** Format: int32 */ age?: number; /** Format: double */ ageHours?: number; /** Format: double */ ageMinutes?: number; airDate?: string | null; /** Format: int32 */ albumId?: number | null; albumTitle?: string | null; approved?: boolean; /** Format: int32 */ artistId?: number | null; artistName?: string | null; commentUrl?: string | null; customFormats?: components["schemas"]["CustomFormatResource"][] | null; /** Format: int32 */ customFormatScore?: number; discography?: boolean; downloadAllowed?: boolean; downloadClient?: string | null; /** Format: int32 */ downloadClientId?: number | null; downloadUrl?: string | null; guid?: string | null; /** Format: int32 */ id?: number; indexer?: string | null; /** Format: int32 */ indexerFlags?: number; /** Format: int32 */ indexerId?: number; infoHash?: string | null; infoUrl?: string | null; /** Format: int32 */ leechers?: number | null; magnetUrl?: string | null; protocol?: components["schemas"]["DownloadProtocol"]; /** Format: date-time */ publishDate?: string; quality?: components["schemas"]["QualityModel"]; /** Format: int32 */ qualityWeight?: number; rejected?: boolean; rejections?: string[] | null; releaseGroup?: string | null; releaseHash?: string | null; /** Format: int32 */ releaseWeight?: number; sceneSource?: boolean; /** Format: int32 */ seeders?: number | null; /** Format: int64 */ size?: number; subGroup?: string | null; temporarilyRejected?: boolean; title?: string | null; }; ReleaseStatus: { /** Format: int32 */ id?: number; name?: string | null; }; RemotePathMappingResource: { host?: string | null; /** Format: int32 */ id?: number; localPath?: string | null; remotePath?: string | null; }; RenameTrackResource: { /** Format: int32 */ albumId?: number; /** Format: int32 */ artistId?: number; existingPath?: string | null; /** Format: int32 */ id?: number; newPath?: string | null; /** Format: int32 */ trackFileId?: number; trackNumbers?: number[] | null; }; /** @enum {string} */ RescanAfterRefreshType: "always" | "afterManual" | "never"; RetagTrackResource: { /** Format: int32 */ albumId?: number; /** Format: int32 */ artistId?: number; changes?: components["schemas"]["TagDifference"][] | null; /** Format: int32 */ id?: number; path?: string | null; /** Format: int32 */ trackFileId?: number; trackNumbers?: number[] | null; }; Revision: { isRepack?: boolean; /** Format: int32 */ real?: number; /** Format: int32 */ version?: number; }; RootFolderResource: { accessible?: boolean; /** Format: int32 */ defaultMetadataProfileId?: number; defaultMonitorOption?: components["schemas"]["MonitorTypes"]; defaultNewItemMonitorOption?: components["schemas"]["NewItemMonitorTypes"]; /** Format: int32 */ defaultQualityProfileId?: number; defaultTags?: number[] | null; /** Format: int64 */ freeSpace?: number | null; /** Format: int32 */ id?: number; name?: string | null; path?: string | null; /** Format: int64 */ totalSpace?: number | null; }; /** @enum {string} */ RuntimeMode: "console" | "service" | "tray"; SearchResource: { album?: components["schemas"]["AlbumResource"]; artist?: components["schemas"]["ArtistResource"]; foreignId?: string | null; /** Format: int32 */ id?: number; }; SecondaryAlbumType: { /** Format: int32 */ id?: number; name?: string | null; }; SelectOption: { hint?: string | null; name?: string | null; /** Format: int32 */ order?: number; /** Format: int32 */ value?: number; }; /** @enum {string} */ SortDirection: "default" | "ascending" | "descending"; SystemResource: { appData?: string | null; appName?: string | null; authentication?: components["schemas"]["AuthenticationType"]; branch?: string | null; /** Format: date-time */ buildTime?: string; databaseType?: components["schemas"]["DatabaseType"]; databaseVersion?: string | null; instanceName?: string | null; isAdmin?: boolean; isDebug?: boolean; isDocker?: boolean; isLinux?: boolean; isNetCore?: boolean; isOsx?: boolean; isProduction?: boolean; isUserInteractive?: boolean; isWindows?: boolean; /** Format: int32 */ migrationVersion?: number; mode?: components["schemas"]["RuntimeMode"]; osName?: string | null; osVersion?: string | null; packageAuthor?: string | null; packageUpdateMechanism?: components["schemas"]["UpdateMechanism"]; packageUpdateMechanismMessage?: string | null; packageVersion?: string | null; runtimeName?: string | null; runtimeVersion?: string | null; /** Format: date-time */ startTime?: string; startupPath?: string | null; urlBase?: string | null; version?: string | null; }; TagDetailsResource: { artistIds?: number[] | null; autoTagIds?: number[] | null; delayProfileIds?: number[] | null; downloadClientIds?: number[] | null; /** Format: int32 */ id?: number; importListIds?: number[] | null; indexerIds?: number[] | null; label?: string | null; notificationIds?: number[] | null; restrictionIds?: number[] | null; }; TagDifference: { field?: string | null; newValue?: string | null; oldValue?: string | null; }; TagResource: { /** Format: int32 */ id?: number; label?: string | null; }; TaskResource: { /** Format: int32 */ id?: number; /** Format: int32 */ interval?: number; /** Format: date-span */ readonly lastDuration?: string; /** Format: date-time */ lastExecution?: string; /** Format: date-time */ lastStartTime?: string; name?: string | null; /** Format: date-time */ nextExecution?: string; taskName?: string | null; }; /** @enum {string} */ TrackedDownloadState: "downloading" | "downloadFailed" | "downloadFailedPending" | "importBlocked" | "importPending" | "importing" | "importFailed" | "imported" | "ignored"; /** @enum {string} */ TrackedDownloadStatus: "ok" | "warning" | "error"; TrackedDownloadStatusMessage: { messages?: string[] | null; title?: string | null; }; TrackFileListResource: { quality?: components["schemas"]["QualityModel"]; releaseGroup?: string | null; sceneName?: string | null; trackFileIds?: number[] | null; }; TrackFileResource: { /** Format: int32 */ albumId?: number; /** Format: int32 */ artistId?: number; audioTags?: components["schemas"]["ParsedTrackInfo"]; customFormats?: components["schemas"]["CustomFormatResource"][] | null; /** Format: int32 */ customFormatScore?: number; /** Format: date-time */ dateAdded?: string; /** Format: int32 */ id?: number; /** Format: int32 */ indexerFlags?: number | null; mediaInfo?: components["schemas"]["MediaInfoResource"]; path?: string | null; quality?: components["schemas"]["QualityModel"]; qualityCutoffNotMet?: boolean; /** Format: int32 */ qualityWeight?: number; releaseGroup?: string | null; sceneName?: string | null; /** Format: int64 */ size?: number; }; TrackResource: { /** Format: int32 */ absoluteTrackNumber?: number; /** Format: int32 */ albumId?: number; artist?: components["schemas"]["ArtistResource"]; /** Format: int32 */ artistId?: number; /** Format: int32 */ duration?: number; explicit?: boolean; foreignRecordingId?: string | null; foreignTrackId?: string | null; hasFile?: boolean; /** Format: int32 */ id?: number; /** Format: int32 */ mediumNumber?: number; ratings?: components["schemas"]["Ratings"]; title?: string | null; trackFile?: components["schemas"]["TrackFileResource"]; /** Format: int32 */ trackFileId?: number; trackNumber?: string | null; }; UiConfigResource: { calendarWeekColumnHeader?: string | null; enableColorImpairedMode?: boolean; expandAlbumByDefault?: boolean; expandBroadcastByDefault?: boolean; expandEPByDefault?: boolean; expandOtherByDefault?: boolean; expandSingleByDefault?: boolean; /** Format: int32 */ firstDayOfWeek?: number; /** Format: int32 */ id?: number; longDateFormat?: string | null; shortDateFormat?: string | null; showRelativeDates?: boolean; theme?: string | null; timeFormat?: string | null; /** Format: int32 */ uiLanguage?: number; }; UpdateChanges: { fixed?: string[] | null; new?: string[] | null; }; /** @enum {string} */ UpdateMechanism: "builtIn" | "script" | "external" | "apt" | "docker"; UpdateResource: { branch?: string | null; changes?: components["schemas"]["UpdateChanges"]; fileName?: string | null; hash?: string | null; /** Format: int32 */ id?: number; installable?: boolean; installed?: boolean; /** Format: date-time */ installedOn?: string | null; latest?: boolean; /** Format: date-time */ releaseDate?: string; url?: string | null; version?: string | null; }; /** @enum {string} */ WriteAudioTagsType: "no" | "newFiles" | "allFiles" | "sync"; }; responses: never; parameters: never; requestBodies: never; headers: never; pathItems: never; }; type Artist = components['schemas']['ArtistResource']; type ArtistEditor = components['schemas']['ArtistEditorResource']; type ArtistStatistics = components['schemas']['ArtistStatisticsResource']; type AddArtistOptions = components['schemas']['AddArtistOptions']; type Album = components['schemas']['AlbumResource']; type AlbumRelease = components['schemas']['AlbumReleaseResource']; type AlbumStatistics = components['schemas']['AlbumStatisticsResource']; type AddAlbumOptions = components['schemas']['AddAlbumOptions']; type AlbumAddType = components['schemas']['AlbumAddType']; type AlbumsMonitored = components['schemas']['AlbumsMonitoredResource']; type AlbumStudio = components['schemas']['AlbumStudioResource']; type AlbumStudioArtist = components['schemas']['AlbumStudioArtistResource']; type Track = components['schemas']['TrackResource']; type TrackFile = components['schemas']['TrackFileResource']; type TrackFileList = components['schemas']['TrackFileListResource']; type Medium = components['schemas']['MediumResource']; type QualityProfile = components['schemas']['QualityProfileResource']; type QualityProfileQualityItem = components['schemas']['QualityProfileQualityItemResource']; type QualityDefinition = components['schemas']['QualityDefinitionResource']; type Quality = components['schemas']['Quality']; type QualityModel = components['schemas']['QualityModel']; type MetadataProfile = components['schemas']['MetadataProfileResource']; type MetadataProfileElement = components['schemas']['ProfilePrimaryAlbumTypeItemResource']; type CustomFormat = components['schemas']['CustomFormatResource']; type CustomFormatBulk = components['schemas']['CustomFormatBulkResource']; type CustomFormatSpecificationSchema = components['schemas']['CustomFormatSpecificationSchema']; type Language = components['schemas']['LanguageResource']; type Release = components['schemas']['ReleaseResource']; type Command = components['schemas']['Command']; type CommandResource = components['schemas']['CommandResource']; type CommandStatus = components['schemas']['CommandStatus']; type CommandResult = components['schemas']['CommandResult']; type CommandPriority = components['schemas']['CommandPriority']; type CommandTrigger = components['schemas']['CommandTrigger']; type Queue = components['schemas']['QueueResource']; type QueueBulk = components['schemas']['QueueBulkResource']; type QueueStatus = components['schemas']['QueueStatusResource']; type History = components['schemas']['HistoryResource']; type EntityHistoryEventType = components['schemas']['EntityHistoryEventType']; type Calendar = Album; type DownloadClient = components['schemas']['DownloadClientResource']; type DownloadClientBulk = components['schemas']['DownloadClientBulkResource']; type DownloadClientConfig = components['schemas']['DownloadClientConfigResource']; type DownloadProtocol = components['schemas']['DownloadProtocol']; type Indexer = components['schemas']['IndexerResource']; type IndexerBulk = components['schemas']['IndexerBulkResource']; type IndexerConfig = components['schemas']['IndexerConfigResource']; type IndexerFlag = components['schemas']['IndexerFlagResource']; type ImportList = components['schemas']['ImportListResource']; type ImportListBulk = components['schemas']['ImportListBulkResource']; type ImportExclusion = components['schemas']['ImportListExclusionResource']; type Notification = components['schemas']['NotificationResource']; type Metadata = components['schemas']['MetadataResource']; type Tag = components['schemas']['TagResource']; type TagDetails = components['schemas']['TagDetailsResource']; type RootFolder = components['schemas']['RootFolderResource']; type RemotePathMapping = components['schemas']['RemotePathMappingResource']; type Blocklist = components['schemas']['BlocklistResource']; type BlocklistBulk = components['schemas']['BlocklistBulkResource']; type ManualImport = components['schemas']['ManualImportResource']; type ManualImportUpdate = components['schemas']['ManualImportUpdateResource']; type Parse = components['schemas']['ParseResource']; type Backup = components['schemas']['BackupResource']; type BackupType = components['schemas']['BackupType']; type SystemResource = components['schemas']['SystemResource']; type Health = components['schemas']['HealthResource']; type HealthCheckResult = components['schemas']['HealthCheckResult']; type DiskSpace = components['schemas']['DiskSpaceResource']; type Task = components['schemas']['TaskResource']; type Log = components['schemas']['LogResource']; type LogFile = components['schemas']['LogFileResource']; type Update = components['schemas']['UpdateResource']; type HostConfig = components['schemas']['HostConfigResource']; type UiConfig = components['schemas']['UiConfigResource']; type NamingConfig = components['schemas']['NamingConfigResource']; type MediaManagementConfig = components['schemas']['MediaManagementConfigResource']; type DelayProfile = components['schemas']['DelayProfileResource']; type CustomFilter = components['schemas']['CustomFilterResource']; type Localization = components['schemas']['LocalizationResource']; type MediaCover = components['schemas']['MediaCover']; type MediaCoverTypes = components['schemas']['MediaCoverTypes']; type MediaInfo = components['schemas']['MediaInfoResource']; type Ratings = components['schemas']['Ratings']; type Rename = components['schemas']['RenameTrackResource']; type Retag = components['schemas']['RetagTrackResource']; type MonitorTypes = components['schemas']['MonitorTypes']; type NewItemMonitorTypes = components['schemas']['NewItemMonitorTypes']; type MonitoringOptions = components['schemas']['MonitoringOptions']; type ApplyTags = components['schemas']['ApplyTags']; type SortDirection = components['schemas']['SortDirection']; type Field = components['schemas']['Field']; type SelectOption = components['schemas']['SelectOption']; type ProviderMessage = components['schemas']['ProviderMessage']; type Links = components['schemas']['Links']; type BlocklistPagingResource = components['schemas']['BlocklistResourcePagingResource']; type HistoryPagingResource = components['schemas']['HistoryResourcePagingResource']; type QueuePagingResource = components['schemas']['QueueResourcePagingResource']; type LogPagingResource = components['schemas']['LogResourcePagingResource']; type AlbumPagingResource = components['schemas']['AlbumResourcePagingResource']; interface GetArtistOptions { mbId?: string; [key: string]: unknown; } interface DeleteArtistOptions { deleteFiles?: boolean; addImportListExclusion?: boolean; [key: string]: unknown; } declare class ArtistResource { private client; constructor(client: ClientMethods); getAll(options?: GetArtistOptions): Promise; getById(id: number): Promise; create(artist: Omit): Promise; update(id: number, artist: Partial & { id: number; }, moveFiles?: boolean): Promise; delete(id: number, options?: DeleteArtistOptions): Promise; lookup(term: string): Promise; bulkEdit(resource: ArtistEditor): Promise; bulkDelete(artistIds: number[], options?: DeleteArtistOptions): Promise; refresh(artistId?: number): Promise; } interface GetAlbumOptions { artistId?: number; albumIds?: number[]; foreignAlbumId?: string; includeAllArtistAlbums?: boolean; [key: string]: unknown; } interface DeleteAlbumOptions { deleteFiles?: boolean; addImportListExclusion?: boolean; [key: string]: unknown; } declare class AlbumResource { private client; constructor(client: ClientMethods); getAll(options?: GetAlbumOptions): Promise; getById(id: number): Promise; create(album: Omit & { addOptions?: AddAlbumOptions; }): Promise; update(id: number, album: Partial & { id: number; }): Promise; delete(id: number, options?: DeleteAlbumOptions): Promise; lookup(term: string): Promise; monitor(data: AlbumsMonitored): Promise; } interface GetTrackOptions { artistId?: number; albumId?: number; albumReleaseId?: number; trackIds?: number[]; [key: string]: unknown; } declare class TrackResource { private client; constructor(client: ClientMethods); getAll(options?: GetTrackOptions): Promise; getById(id: number): Promise; } declare class TrackFileResource { private client; constructor(client: ClientMethods); getAll(options?: { artistId?: number; albumId?: number; trackFileIds?: number[]; }): Promise; getById(id: number): Promise; update(id: number, trackFile: Partial & { id: number; }): Promise; delete(id: number): Promise; bulkDelete(trackFileIds: number[]): Promise; updateList(trackFiles: TrackFileList): Promise; } interface CalendarOptions { start?: string; end?: string; unmonitored?: boolean; includeArtist?: boolean; [key: string]: unknown; } interface CalendarFeedOptions { pastDays?: number; futureDays?: number; tags?: string; unmonitored?: boolean; [key: string]: unknown; } declare class CalendarResource { private client; constructor(client: ClientMethods); get(options?: CalendarOptions): Promise; getById(id: number): Promise; buildFeedUrl(baseUrl: string, apiKey: string, options?: CalendarFeedOptions): string; } /** * File entry for the ManualImport command */ interface LidarrManualImportFile { path: string; folderName?: string; downloadId?: string; quality?: QualityModel; releaseGroup?: string; indexerFlags?: number; artistId?: number; albumId?: number; albumReleaseId?: number; trackIds?: number[]; disableReleaseSwitching?: boolean; replaceExistingFiles?: boolean; } type LidarrCommand = { name: 'RefreshArtist'; artistId?: number; } | { name: 'RefreshAlbum'; albumId?: number; } | { name: 'RescanArtist'; artistId?: number; } | { name: 'ArtistSearch'; artistId: number; } | { name: 'AlbumSearch'; albumIds: number[]; } | { name: 'MissingAlbumSearch'; artistId?: number; } | { name: 'CutoffUnmetAlbumSearch'; artistId?: number; } | { name: 'ApplicationUpdateCheck'; } | { name: 'Backup'; } | { name: 'RefreshMonitoredDownloads'; } | { name: 'ClearBlocklist'; } | { name: 'CleanUpRecycleBin'; } | { name: 'DeleteLogFiles'; } | { name: 'DeleteUpdateLogFiles'; } | { name: 'DownloadedAlbumsScan'; path?: string; downloadClientId?: string; importMode?: 'Auto' | 'Move' | 'Copy'; } | { name: 'RssSync'; } | { name: 'Housekeeping'; } | { name: 'ManualImport'; files: LidarrManualImportFile[]; importMode?: 'Auto' | 'Move' | 'Copy'; }; declare class CommandResource_ { private client; constructor(client: ClientMethods); getAll(): Promise; getById(id: number): Promise; execute(command: LidarrCommand): Promise; cancel(id: number): Promise; refreshArtist(artistId?: number): Promise; refreshAlbum(albumId?: number): Promise; rescanArtist(artistId?: number): Promise; artistSearch(artistId: number): Promise; albumSearch(albumIds: number[]): Promise; missingAlbumSearch(artistId?: number): Promise; rssSync(): Promise; backup(): Promise; clearBlocklist(): Promise; downloadedAlbumsScan(options?: { path?: string; downloadClientId?: string; importMode?: 'Auto' | 'Move' | 'Copy'; }): Promise; manualImport(files: LidarrManualImportFile[], importMode?: 'Auto' | 'Move' | 'Copy'): Promise; } interface GetQueueOptions extends PaginationOptions { includeUnknownArtistItems?: boolean; includeArtist?: boolean; includeAlbum?: boolean; } interface GetQueueDetailsOptions { artistId?: number; albumIds?: number[]; includeArtist?: boolean; includeAlbum?: boolean; [key: string]: unknown; } interface DeleteQueueOptions { removeFromClient?: boolean; blocklist?: boolean; skipRedownload?: boolean; changeCategory?: boolean; [key: string]: unknown; } declare class QueueResource { private client; constructor(client: ClientMethods); get(options?: GetQueueOptions): Promise; getDetails(options?: GetQueueDetailsOptions): Promise; getStatus(): Promise; delete(id: number, options?: DeleteQueueOptions): Promise; bulkDelete(data: QueueBulk & DeleteQueueOptions): Promise; grab(ids: number[]): Promise; } type EventTypeInput = EntityHistoryEventType | number; type EventTypeFilter = EventTypeInput | EventTypeInput[]; interface GetHistoryOptions extends PaginationOptions { includeArtist?: boolean; includeAlbum?: boolean; includeTrack?: boolean; eventType?: EventTypeFilter; downloadId?: string; artistId?: number; albumId?: number; } declare class HistoryResource { private client; constructor(client: ClientMethods); get(options?: GetHistoryOptions): Promise; getSince(date: string, eventType?: EventTypeInput): Promise; getForArtist(artistId: number, albumId?: number, eventType?: EventTypeInput): Promise; markAsFailed(id: number): Promise; } interface GetManualImportOptions { folder?: string; downloadId?: string; artistId?: number; albumId?: number; filterExistingFiles?: boolean; replaceExistingFiles?: boolean; [key: string]: unknown; } declare class ManualImportResource { private client; constructor(client: ClientMethods); get(options?: GetManualImportOptions): Promise; process(imports: ManualImportUpdate[]): Promise; } declare class QualityProfileResource { private client; constructor(client: ClientMethods); getAll(): Promise; getById(id: number): Promise; create(profile: Omit): Promise; update(id: number, profile: Partial & { id: number; }): Promise; delete(id: number): Promise; } declare class QualityDefinitionResource { private client; constructor(client: ClientMethods); getAll(): Promise; getById(id: number): Promise; update(id: number, definition: Partial & { id: number; }): Promise; updateAll(definitions: QualityDefinition[]): Promise; } declare class MetadataProfileResource { private client; constructor(client: ClientMethods); getAll(): Promise; getById(id: number): Promise; create(profile: Omit): Promise; update(id: number, profile: Partial & { id: number; }): Promise; delete(id: number): Promise; } declare class TagResource { private client; constructor(client: ClientMethods); getAll(): Promise; getById(id: number): Promise; create(tag: Omit): Promise; update(id: number, tag: Partial & { id: number; }): Promise; delete(id: number): Promise; } declare class TagDetailsResource { private client; constructor(client: ClientMethods); getAll(): Promise; getById(id: number): Promise; } declare class RootFolderResource { private client; constructor(client: ClientMethods); getAll(): Promise; getById(id: number): Promise; create(rootFolder: Omit): Promise; delete(id: number): Promise; } interface GetWantedOptions extends PaginationOptions { includeArtist?: boolean; monitored?: boolean; } declare class WantedResource { private client; constructor(client: ClientMethods); getMissing(options?: GetWantedOptions): Promise; getCutoffUnmet(options?: GetWantedOptions): Promise; } declare class SystemInfoResource { private client; constructor(client: ClientMethods); /** * Get system status information. * Alias for getStatus() for consistency with Sonarr/Radarr SDK. */ get(): Promise; getStatus(): Promise; ping(): Promise<{ status: string; }>; restart(): Promise; shutdown(): Promise; } declare class HealthResource { private client; constructor(client: ClientMethods); get(): Promise; } declare class DiskSpaceResource { private client; constructor(client: ClientMethods); get(): Promise; } declare class TaskResource { private client; constructor(client: ClientMethods); getAll(): Promise; getById(id: number): Promise; } declare class BackupResource { private client; constructor(client: ClientMethods); getAll(): Promise; delete(id: number): Promise; restore(id: number): Promise; } interface GetLogOptions { page?: number; pageSize?: number; sortKey?: string; sortDirection?: SortDirection; level?: string; [key: string]: unknown; } declare class LogResource { private client; constructor(client: ClientMethods); get(options?: GetLogOptions): Promise; } declare class LogFileResource { private client; constructor(client: ClientMethods); getAll(): Promise; getUpdateLogs(): Promise; } declare class UpdateResource { private client; constructor(client: ClientMethods); get(): Promise; } declare class LidarrClient extends BaseClient { readonly artist: ArtistResource; readonly album: AlbumResource; readonly track: TrackResource; readonly trackFile: TrackFileResource; readonly calendar: CalendarResource; readonly command: CommandResource_; readonly queue: QueueResource; readonly history: HistoryResource; readonly manualImport: ManualImportResource; readonly qualityProfile: QualityProfileResource; readonly qualityDefinition: QualityDefinitionResource; readonly metadataProfile: MetadataProfileResource; readonly tag: TagResource; readonly tagDetails: TagDetailsResource; readonly rootFolder: RootFolderResource; readonly wanted: WantedResource; readonly system: SystemInfoResource; readonly health: HealthResource; readonly diskSpace: DiskSpaceResource; readonly task: TaskResource; readonly backup: BackupResource; readonly log: LogResource; readonly logFile: LogFileResource; readonly update: UpdateResource; constructor(config: ClientConfig); } export { type AddAlbumOptions, type AddArtistOptions, type Album, type AlbumAddType, type AlbumPagingResource, type AlbumRelease, type AlbumStatistics, type AlbumStudio, type AlbumStudioArtist, type AlbumsMonitored, type ApplyTags, type Artist, type ArtistEditor, type ArtistStatistics, type Backup, type BackupType, type Blocklist, type BlocklistBulk, type BlocklistPagingResource, type Calendar, type CalendarFeedOptions, type CalendarOptions, ClientConfig, type Command, type CommandPriority, type CommandResource, type CommandResult, type CommandStatus, type CommandTrigger, type CustomFilter, type CustomFormat, type CustomFormatBulk, type CustomFormatSpecificationSchema, type DelayProfile, type DeleteAlbumOptions, type DeleteArtistOptions, type DeleteQueueOptions, type DiskSpace, type DownloadClient, type DownloadClientBulk, type DownloadClientConfig, type DownloadProtocol, type EntityHistoryEventType, type Field, type GetAlbumOptions, type GetArtistOptions, type GetHistoryOptions, type GetLogOptions, type GetManualImportOptions, type GetQueueDetailsOptions, type GetQueueOptions, type GetTrackOptions, type GetWantedOptions, type Health, type HealthCheckResult, type History, type HistoryPagingResource, type HostConfig, type ImportExclusion, type ImportList, type ImportListBulk, type Indexer, type IndexerBulk, type IndexerConfig, type IndexerFlag, type Language, LidarrClient, type LidarrCommand, type LidarrManualImportFile, type Links, type Localization, type Log, type LogFile, type LogPagingResource, type ManualImport, type ManualImportUpdate, type MediaCover, type MediaCoverTypes, type MediaInfo, type MediaManagementConfig, type Medium, type Metadata, type MetadataProfile, type MetadataProfileElement, type MonitorTypes, type MonitoringOptions, type NamingConfig, type NewItemMonitorTypes, type Notification, type Parse, type ProviderMessage, type Quality, type QualityDefinition, type QualityModel, type QualityProfile, type QualityProfileQualityItem, type Queue, type QueueBulk, type QueuePagingResource, type QueueStatus, type Ratings, type Release, type RemotePathMapping, type Rename, type Retag, type RootFolder, type SelectOption, type SortDirection, type SystemResource, type Tag, type TagDetails, type Task, type Track, type TrackFile, type TrackFileList, type UiConfig, type Update };