import { b as ClientMethods, a as PaginationOptions, B as BaseClient, C as ClientConfig } from '../client-Me0HpgXr.cjs'; type components = { schemas: { AddAuthorOptions: { booksToMonitor?: string[] | null; monitor?: components["schemas"]["MonitorTypes"]; monitored?: boolean; searchForMissingBooks?: boolean; }; AddBookOptions: { addType?: components["schemas"]["BookAddType"]; searchForNewBook?: boolean; }; /** @enum {string} */ AllowFingerprinting: "never" | "newFiles" | "allFiles"; ApiInfoResource: { current?: string | null; deprecated?: string[] | null; }; /** @enum {string} */ ApplyTags: "add" | "remove" | "replace"; /** @enum {string} */ AuthenticationRequiredType: "enabled" | "disabledForLocalAddresses"; /** @enum {string} */ AuthenticationType: "none" | "basic" | "forms" | "external"; Author: { /** Format: date-time */ added?: string; addOptions?: components["schemas"]["AddAuthorOptions"]; /** Format: int32 */ authorMetadataId?: number; books?: components["schemas"]["BookListLazyLoaded"]; cleanName?: string | null; foreignAuthorId?: string | null; /** Format: int32 */ id?: number; /** Format: date-time */ lastInfoSync?: string | null; metadata?: components["schemas"]["AuthorMetadataLazyLoaded"]; metadataProfile?: components["schemas"]["MetadataProfileLazyLoaded"]; /** Format: int32 */ metadataProfileId?: number; monitored?: boolean; monitorNewItems?: components["schemas"]["NewItemMonitorTypes"]; name?: string | null; path?: string | null; qualityProfile?: components["schemas"]["QualityProfileLazyLoaded"]; /** Format: int32 */ qualityProfileId?: number; rootFolderPath?: string | null; series?: components["schemas"]["SeriesListLazyLoaded"]; tags?: number[] | null; }; AuthorEditorResource: { applyTags?: components["schemas"]["ApplyTags"]; authorIds?: 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; }; AuthorLazyLoaded: { readonly isLoaded?: boolean; value?: components["schemas"]["Author"]; }; AuthorMetadata: { aliases?: string[] | null; /** Format: date-time */ born?: string | null; /** Format: date-time */ died?: string | null; disambiguation?: string | null; foreignAuthorId?: string | null; gender?: string | null; genres?: string[] | null; hometown?: string | null; /** Format: int32 */ id?: number; images?: components["schemas"]["MediaCover"][] | null; links?: components["schemas"]["Links"][] | null; name?: string | null; nameLastFirst?: string | null; overview?: string | null; ratings?: components["schemas"]["Ratings"]; sortName?: string | null; sortNameLastFirst?: string | null; status?: components["schemas"]["AuthorStatusType"]; titleSlug?: string | null; }; AuthorMetadataLazyLoaded: { readonly isLoaded?: boolean; value?: components["schemas"]["AuthorMetadata"]; }; AuthorResource: { /** Format: date-time */ added?: string; addOptions?: components["schemas"]["AddAuthorOptions"]; /** Format: int32 */ authorMetadataId?: number; authorName?: string | null; authorNameLastFirst?: string | null; cleanName?: string | null; disambiguation?: string | null; readonly ended?: boolean; folder?: string | null; foreignAuthorId?: string | null; genres?: string[] | null; /** Format: int32 */ id?: number; images?: components["schemas"]["MediaCover"][] | null; lastBook?: components["schemas"]["Book"]; links?: components["schemas"]["Links"][] | null; /** Format: int32 */ metadataProfileId?: number; monitored?: boolean; monitorNewItems?: components["schemas"]["NewItemMonitorTypes"]; nextBook?: components["schemas"]["Book"]; overview?: string | null; path?: string | null; /** Format: int32 */ qualityProfileId?: number; ratings?: components["schemas"]["Ratings"]; remotePoster?: string | null; rootFolderPath?: string | null; sortName?: string | null; sortNameLastFirst?: string | null; statistics?: components["schemas"]["AuthorStatisticsResource"]; status?: components["schemas"]["AuthorStatusType"]; tags?: number[] | null; titleSlug?: string | null; }; AuthorStatisticsResource: { /** Format: int32 */ availableBookCount?: number; /** Format: int32 */ bookCount?: number; /** Format: int32 */ bookFileCount?: number; /** Format: double */ readonly percentOfBooks?: number; /** Format: int64 */ sizeOnDisk?: number; /** Format: int32 */ totalBookCount?: number; }; /** @enum {string} */ AuthorStatusType: "continuing" | "ended"; AuthorTitleInfo: { title?: string | null; titleWithoutYear?: string | null; /** Format: int32 */ year?: number; }; 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: { author?: components["schemas"]["AuthorResource"]; /** Format: int32 */ authorId?: number; bookIds?: number[] | null; 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; }; Book: { /** Format: date-time */ added?: string; addOptions?: components["schemas"]["AddBookOptions"]; anyEditionOk?: boolean; author?: components["schemas"]["AuthorLazyLoaded"]; authorMetadata?: components["schemas"]["AuthorMetadataLazyLoaded"]; /** Format: int32 */ authorMetadataId?: number; bookFiles?: components["schemas"]["BookFileListLazyLoaded"]; cleanTitle?: string | null; editions?: components["schemas"]["EditionListLazyLoaded"]; foreignBookId?: string | null; foreignEditionId?: string | null; genres?: string[] | null; /** Format: int32 */ id?: number; /** Format: date-time */ lastInfoSync?: string | null; /** Format: date-time */ lastSearchTime?: string | null; links?: components["schemas"]["Links"][] | null; monitored?: boolean; ratings?: components["schemas"]["Ratings"]; relatedBooks?: number[] | null; /** Format: date-time */ releaseDate?: string | null; seriesLinks?: components["schemas"]["SeriesBookLinkListLazyLoaded"]; title?: string | null; titleSlug?: string | null; }; /** @enum {string} */ BookAddType: "automatic" | "manual"; BookEditorResource: { addImportListExclusion?: boolean | null; bookIds?: number[] | null; deleteFiles?: boolean | null; monitored?: boolean | null; }; BookFile: { author?: components["schemas"]["AuthorLazyLoaded"]; /** Format: int32 */ calibreId?: number; /** Format: date-time */ dateAdded?: string; edition?: components["schemas"]["EditionLazyLoaded"]; /** Format: int32 */ editionId?: number; /** Format: int32 */ id?: number; indexerFlags?: components["schemas"]["IndexerFlags"]; mediaInfo?: components["schemas"]["MediaInfoModel"]; /** Format: date-time */ modified?: string; originalFilePath?: string | null; /** Format: int32 */ part?: number; /** Format: int32 */ partCount?: number; path?: string | null; quality?: components["schemas"]["QualityModel"]; releaseGroup?: string | null; sceneName?: string | null; /** Format: int64 */ size?: number; }; BookFileListLazyLoaded: { readonly isLoaded?: boolean; readonly value?: components["schemas"]["BookFile"][] | null; }; BookFileListResource: { bookFileIds?: number[] | null; quality?: components["schemas"]["QualityModel"]; }; BookFileResource: { audioTags?: components["schemas"]["ParsedTrackInfo"]; /** Format: int32 */ authorId?: number; /** Format: int32 */ bookId?: 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; /** Format: int64 */ size?: number; }; BookLazyLoaded: { readonly isLoaded?: boolean; value?: components["schemas"]["Book"]; }; BookListLazyLoaded: { readonly isLoaded?: boolean; readonly value?: components["schemas"]["Book"][] | null; }; BookResource: { /** Format: date-time */ added?: string | null; addOptions?: components["schemas"]["AddBookOptions"]; anyEditionOk?: boolean; author?: components["schemas"]["AuthorResource"]; /** Format: int32 */ authorId?: number; authorTitle?: string | null; disambiguation?: string | null; editions?: components["schemas"]["EditionResource"][] | null; foreignBookId?: string | null; foreignEditionId?: 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; monitored?: boolean; overview?: string | null; /** Format: int32 */ pageCount?: number; ratings?: components["schemas"]["Ratings"]; /** Format: date-time */ releaseDate?: string | null; remoteCover?: string | null; seriesTitle?: string | null; statistics?: components["schemas"]["BookStatisticsResource"]; title?: string | null; titleSlug?: string | null; }; BookResourcePagingResource: { /** Format: int32 */ page?: number; /** Format: int32 */ pageSize?: number; records?: components["schemas"]["BookResource"][] | null; sortDirection?: components["schemas"]["SortDirection"]; sortKey?: string | null; /** Format: int32 */ totalRecords?: number; }; BookshelfAuthorResource: { books?: components["schemas"]["BookResource"][] | null; /** Format: int32 */ id?: number; monitored?: boolean | null; }; BookshelfResource: { authors?: components["schemas"]["BookshelfAuthorResource"][] | null; monitoringOptions?: components["schemas"]["MonitoringOptions"]; monitorNewItems?: components["schemas"]["NewItemMonitorTypes"]; }; BooksMonitoredResource: { bookIds?: number[] | null; monitored?: boolean; }; BookStatisticsResource: { /** Format: int32 */ bookCount?: number; /** Format: int32 */ bookFileCount?: number; /** Format: double */ readonly percentOfBooks?: number; /** Format: int64 */ sizeOnDisk?: number; /** Format: int32 */ totalBookCount?: 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; }; CustomFormat: { /** Format: int32 */ id?: number; includeCustomFormatWhenRenaming?: boolean; name?: string | null; specifications?: components["schemas"]["ICustomFormatSpecification"][] | 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; }; DevelopmentConfigResource: { consoleLogLevel?: string | null; filterSentryEvents?: boolean; /** Format: int32 */ id?: number; /** Format: int32 */ logRotate?: number; logSql?: boolean; metadataSource?: string | null; }; 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"; Edition: { asin?: string | null; book?: components["schemas"]["BookLazyLoaded"]; bookFiles?: components["schemas"]["BookFileListLazyLoaded"]; /** Format: int32 */ bookId?: number; disambiguation?: string | null; foreignEditionId?: string | null; format?: string | null; /** Format: int32 */ id?: number; images?: components["schemas"]["MediaCover"][] | null; isbn13?: string | null; isEbook?: boolean; language?: string | null; links?: components["schemas"]["Links"][] | null; manualAdd?: boolean; monitored?: boolean; overview?: string | null; /** Format: int32 */ pageCount?: number; publisher?: string | null; ratings?: components["schemas"]["Ratings"]; /** Format: date-time */ releaseDate?: string | null; title?: string | null; titleSlug?: string | null; }; EditionLazyLoaded: { readonly isLoaded?: boolean; value?: components["schemas"]["Edition"]; }; EditionListLazyLoaded: { readonly isLoaded?: boolean; readonly value?: components["schemas"]["Edition"][] | null; }; EditionResource: { asin?: string | null; /** Format: int32 */ bookId?: number; disambiguation?: string | null; foreignEditionId?: string | null; format?: string | null; /** Format: int32 */ id?: number; images?: components["schemas"]["MediaCover"][] | null; isbn13?: string | null; isEbook?: boolean; language?: string | null; links?: components["schemas"]["Links"][] | null; manualAdd?: boolean; monitored?: boolean; overview?: string | null; /** Format: int32 */ pageCount?: number; publisher?: string | null; ratings?: components["schemas"]["Ratings"]; /** Format: date-time */ releaseDate?: string | null; remoteCover?: string | null; title?: string | null; titleSlug?: string | null; }; /** @enum {string} */ EntityHistoryEventType: "unknown" | "grabbed" | "bookFileImported" | "downloadFailed" | "bookFileDeleted" | "bookFileRenamed" | "bookImportIncomplete" | "downloadImported" | "bookFileRetagged" | "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; section?: string | null; selectOptions?: components["schemas"]["SelectOption"][] | null; selectOptionsProviderAction?: string | null; type?: string | null; unit?: string | null; value?: unknown; }; /** @enum {string} */ FileDateType: "none" | "bookReleaseDate"; /** @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: { author?: components["schemas"]["AuthorResource"]; /** Format: int32 */ authorId?: number; book?: components["schemas"]["BookResource"]; /** Format: int32 */ bookId?: 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; }; 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; 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; }; ICustomFormatSpecification: { readonly implementationName?: string | null; readonly infoLink?: string | null; name?: string | null; negate?: boolean; /** Format: int32 */ readonly order?: number; required?: boolean; }; ImportListBulkResource: { applyTags?: components["schemas"]["ApplyTags"]; enableAutomaticAdd?: boolean | null; ids?: number[] | null; /** Format: int32 */ metadataProfileId?: number | null; /** Format: int32 */ qualityProfileId?: number | null; rootFolderPath?: string | null; tags?: number[] | null; }; ImportListExclusionResource: { authorName?: string | null; foreignId?: string | null; /** Format: int32 */ id?: number; }; /** @enum {string} */ ImportListMonitorType: "none" | "specificBook" | "entireAuthor"; 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" | "goodreads" | "other"; 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; }; /** @enum {string} */ IndexerFlags: "freeleech" | "halfleech" | "doubleUpload" | "internal" | "scene" | "freeleech75" | "freeleech25"; 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; }; 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; audioTags?: components["schemas"]["ParsedTrackInfo"]; author?: components["schemas"]["AuthorResource"]; book?: components["schemas"]["BookResource"]; disableReleaseSwitching?: boolean; downloadId?: string | null; foreignEditionId?: 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; }; ManualImportUpdateResource: { additionalFile?: boolean; /** Format: int32 */ authorId?: number | null; /** Format: int32 */ bookId?: number | null; disableReleaseSwitching?: boolean; downloadId?: string | null; foreignEditionId?: 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; }; 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"]; autoUnmonitorPreviouslyDownloadedBooks?: boolean; chmodFolder?: string | null; chownGroup?: string | null; copyUsingHardlinks?: boolean; createEmptyAuthorFolders?: boolean; deleteEmptyFolders?: boolean; downloadPropersAndRepacks?: components["schemas"]["ProperDownloadTypes"]; 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"]; setPermissionsLinux?: boolean; skipFreeSpaceCheckWhenImporting?: boolean; watchLibraryForChanges?: boolean; }; MetadataProfile: { allowedLanguages?: string | null; /** Format: int32 */ id?: number; ignored?: string[] | null; /** Format: int32 */ minPages?: number; /** Format: double */ minPopularity?: number; name?: string | null; skipMissingDate?: boolean; skipMissingIsbn?: boolean; skipPartsAndSets?: boolean; skipSeriesSecondary?: boolean; }; MetadataProfileLazyLoaded: { readonly isLoaded?: boolean; value?: components["schemas"]["MetadataProfile"]; }; MetadataProfileResource: { allowedLanguages?: string | null; /** Format: int32 */ id?: number; ignored?: string[] | null; /** Format: int32 */ minPages?: number; /** Format: double */ minPopularity?: number; name?: string | null; skipMissingDate?: boolean; skipMissingIsbn?: boolean; skipPartsAndSets?: boolean; skipSeriesSecondary?: boolean; }; MetadataProviderConfigResource: { embedMetadata?: boolean; /** Format: int32 */ id?: number; scrubAudioTags?: boolean; updateCovers?: boolean; writeAudioTags?: components["schemas"]["WriteAudioTagsType"]; writeBookTags?: components["schemas"]["WriteBookTagsType"]; }; 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: { booksToMonitor?: string[] | null; monitor?: components["schemas"]["MonitorTypes"]; monitored?: boolean; }; /** @enum {string} */ MonitorTypes: "all" | "future" | "missing" | "existing" | "latest" | "first" | "none" | "unknown"; NamingConfigResource: { authorFolderFormat?: string | null; /** Format: int32 */ colonReplacementFormat?: number; /** Format: int32 */ id?: number; includeAuthorName?: boolean; includeBookTitle?: boolean; includeQuality?: boolean; numberStyle?: string | null; renameBooks?: boolean; replaceIllegalCharacters?: boolean; replaceSpaces?: boolean; separator?: string | null; standardBookFormat?: 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; onApplicationUpdate?: boolean; onAuthorAdded?: boolean; onAuthorDelete?: boolean; onBookDelete?: boolean; onBookFileDelete?: boolean; onBookFileDeleteForUpgrade?: boolean; onBookRetag?: boolean; onDownloadFailure?: boolean; onGrab?: boolean; onHealthIssue?: boolean; onImportFailure?: boolean; onReleaseImport?: boolean; onRename?: boolean; onUpgrade?: boolean; presets?: components["schemas"]["NotificationResource"][] | null; supportsOnApplicationUpdate?: boolean; supportsOnAuthorAdded?: boolean; supportsOnAuthorDelete?: boolean; supportsOnBookDelete?: boolean; supportsOnBookFileDelete?: boolean; supportsOnBookFileDeleteForUpgrade?: boolean; supportsOnBookRetag?: boolean; supportsOnDownloadFailure?: boolean; supportsOnGrab?: boolean; supportsOnHealthIssue?: boolean; supportsOnImportFailure?: boolean; supportsOnReleaseImport?: boolean; supportsOnRename?: boolean; supportsOnUpgrade?: boolean; tags?: number[] | null; testCommand?: string | null; }; ParsedBookInfo: { authorName?: string | null; authorTitleInfo?: components["schemas"]["AuthorTitleInfo"]; bookTitle?: string | null; 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: { asin?: string | null; authorMBId?: string | null; authors?: string[] | null; readonly authorTitle?: string | null; bookMBId?: string | null; bookTitle?: string | null; 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; goodreadsId?: string | null; isbn?: string | null; label?: string | null; language?: string | null; mediaInfo?: components["schemas"]["MediaInfoModel"]; publisher?: string | null; quality?: components["schemas"]["QualityModel"]; recordingMBId?: string | null; releaseGroup?: string | null; releaseHash?: string | null; releaseMBId?: string | null; seriesIndex?: string | null; seriesTitle?: string | null; source?: string | null; title?: string | null; trackMBId?: string | null; trackNumbers?: number[] | null; /** Format: int32 */ year?: number; }; ParseResource: { author?: components["schemas"]["AuthorResource"]; books?: components["schemas"]["BookResource"][] | null; /** Format: int32 */ id?: number; parsedBookInfo?: components["schemas"]["ParsedBookInfo"]; title?: string | null; }; PingResource: { status?: string | null; }; ProfileFormatItem: { format?: components["schemas"]["CustomFormat"]; /** Format: int32 */ score?: number; }; ProfileFormatItemResource: { /** Format: int32 */ format?: number; /** Format: int32 */ id?: number; name?: string | null; /** Format: int32 */ score?: 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; quality?: components["schemas"]["Quality"]; title?: string | null; /** Format: int32 */ weight?: number; }; QualityModel: { quality?: components["schemas"]["Quality"]; revision?: components["schemas"]["Revision"]; }; QualityProfile: { /** Format: int32 */ cutoff?: number; /** Format: int32 */ cutoffFormatScore?: number; formatItems?: components["schemas"]["ProfileFormatItem"][] | null; /** Format: int32 */ id?: number; items?: components["schemas"]["QualityProfileQualityItem"][] | null; /** Format: int32 */ minFormatScore?: number; name?: string | null; upgradeAllowed?: boolean; }; QualityProfileLazyLoaded: { readonly isLoaded?: boolean; value?: components["schemas"]["QualityProfile"]; }; QualityProfileQualityItem: { allowed?: boolean; /** Format: int32 */ id?: number; items?: components["schemas"]["QualityProfileQualityItem"][] | null; name?: string | null; quality?: components["schemas"]["Quality"]; }; 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: { author?: components["schemas"]["AuthorResource"]; /** Format: int32 */ authorId?: number | null; book?: components["schemas"]["BookResource"]; /** Format: int32 */ bookId?: 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"]; }; 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 */ readonly popularity?: number; /** 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; approved?: boolean; /** Format: int32 */ authorId?: number | null; authorName?: string | null; /** Format: int32 */ bookId?: number | null; bookTitle?: 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; }; RemotePathMappingResource: { host?: string | null; /** Format: int32 */ id?: number; localPath?: string | null; remotePath?: string | null; }; RenameBookResource: { /** Format: int32 */ authorId?: number; /** Format: int32 */ bookFileId?: number; /** Format: int32 */ bookId?: number; existingPath?: string | null; /** Format: int32 */ id?: number; newPath?: string | null; }; /** @enum {string} */ RescanAfterRefreshType: "always" | "afterManual" | "never"; RetagBookResource: { /** Format: int32 */ authorId?: number; /** Format: int32 */ bookFileId?: number; /** Format: int32 */ bookId?: number; changes?: components["schemas"]["TagDifference"][] | null; /** Format: int32 */ id?: number; path?: string | null; 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; host?: string | null; /** Format: int32 */ id?: number; isCalibreLibrary?: boolean; library?: string | null; name?: string | null; outputFormat?: string | null; outputProfile?: string | null; password?: string | null; path?: string | null; /** Format: int32 */ port?: number; /** Format: int64 */ totalSpace?: number | null; urlBase?: string | null; username?: string | null; useSsl?: boolean; }; /** @enum {string} */ RuntimeMode: "console" | "service" | "tray"; SelectOption: { hint?: string | null; name?: string | null; /** Format: int32 */ order?: number; /** Format: int32 */ value?: number; }; Series: { books?: components["schemas"]["BookListLazyLoaded"]; description?: string | null; foreignAuthorId?: string | null; foreignSeriesId?: string | null; /** Format: int32 */ id?: number; linkItems?: components["schemas"]["SeriesBookLinkListLazyLoaded"]; numbered?: boolean; /** Format: int32 */ primaryWorkCount?: number; title?: string | null; /** Format: int32 */ workCount?: number; }; SeriesBookLink: { book?: components["schemas"]["BookLazyLoaded"]; /** Format: int32 */ bookId?: number; /** Format: int32 */ id?: number; isPrimary?: boolean; position?: string | null; series?: components["schemas"]["SeriesLazyLoaded"]; /** Format: int32 */ seriesId?: number; /** Format: int32 */ seriesPosition?: number; }; SeriesBookLinkListLazyLoaded: { readonly isLoaded?: boolean; readonly value?: components["schemas"]["SeriesBookLink"][] | null; }; SeriesBookLinkResource: { /** Format: int32 */ bookId?: number; /** Format: int32 */ id?: number; position?: string | null; /** Format: int32 */ seriesId?: number; /** Format: int32 */ seriesPosition?: number; }; SeriesLazyLoaded: { readonly isLoaded?: boolean; value?: components["schemas"]["Series"]; }; SeriesListLazyLoaded: { readonly isLoaded?: boolean; readonly value?: components["schemas"]["Series"][] | null; }; SeriesResource: { description?: string | null; /** Format: int32 */ id?: number; links?: components["schemas"]["SeriesBookLinkResource"][] | null; title?: string | null; }; /** @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: { authorIds?: 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" | "importPending" | "importing" | "importFailed" | "imported" | "ignored"; /** @enum {string} */ TrackedDownloadStatus: "ok" | "warning" | "error"; TrackedDownloadStatusMessage: { messages?: string[] | null; title?: string | null; }; UiConfigResource: { calendarWeekColumnHeader?: string | null; enableColorImpairedMode?: 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"; /** @enum {string} */ WriteBookTagsType: "newFiles" | "allFiles" | "sync"; }; responses: never; parameters: never; requestBodies: never; headers: never; pathItems: never; }; type Author = components['schemas']['AuthorResource']; type AuthorEditor = components['schemas']['AuthorEditorResource']; type AuthorStatistics = components['schemas']['AuthorStatisticsResource']; type AddAuthorOptions = components['schemas']['AddAuthorOptions']; type Book = components['schemas']['BookResource']; type BookEditor = components['schemas']['BookEditorResource']; type BookStatistics = components['schemas']['BookStatisticsResource']; type BooksMonitored = components['schemas']['BooksMonitoredResource']; type Bookshelf = components['schemas']['BookshelfResource']; type BookshelfAuthor = components['schemas']['BookshelfAuthorResource']; type Edition = components['schemas']['EditionResource']; type BookFile = components['schemas']['BookFileResource']; type BookFileList = components['schemas']['BookFileListResource']; type Series = components['schemas']['SeriesResource']; type SeriesBookLink = components['schemas']['SeriesBookLinkResource']; 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 ProfileFormatItem = components['schemas']['ProfileFormatItemResource']; type MetadataProfile = components['schemas']['MetadataProfileResource']; type CustomFormat = components['schemas']['CustomFormatResource']; type Language = components['schemas']['LanguageResource']; type Release = components['schemas']['ReleaseResource']; type ReleaseProfile = components['schemas']['ReleaseProfileResource']; 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 = Book; 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 MetadataProviderConfig = components['schemas']['MetadataProviderConfigResource']; 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 DevelopmentConfig = components['schemas']['DevelopmentConfigResource']; type DelayProfile = components['schemas']['DelayProfileResource']; type CustomFilter = components['schemas']['CustomFilterResource']; type MediaCover = components['schemas']['MediaCover']; type MediaCoverTypes = components['schemas']['MediaCoverTypes']; type MediaInfo = components['schemas']['MediaInfoResource']; type Ratings = components['schemas']['Ratings']; type RenameBook = components['schemas']['RenameBookResource']; type RetagBook = components['schemas']['RetagBookResource']; 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 BookPagingResource = components['schemas']['BookResourcePagingResource']; interface GetAuthorOptions { includeMonitored?: boolean; } interface DeleteAuthorOptions { deleteFiles?: boolean; addImportListExclusion?: boolean; } declare class AuthorResource { private client; constructor(client: ClientMethods); getAll(options?: GetAuthorOptions): Promise; getById(id: number): Promise; create(author: Omit): Promise; update(id: number, author: Partial & { id: number; }, moveFiles?: boolean): Promise; delete(id: number, options?: DeleteAuthorOptions): Promise; lookup(term: string): Promise; bulkEdit(resource: AuthorEditor): Promise; bulkDelete(authorIds: number[], options?: DeleteAuthorOptions): Promise; } interface GetBookOptions { authorId?: number; bookIds?: number[]; titleSlug?: string; includeAllAuthorBooks?: boolean; } interface DeleteBookOptions { deleteFiles?: boolean; addImportListExclusion?: boolean; } declare class BookResource { private client; constructor(client: ClientMethods); getAll(options?: GetBookOptions): Promise; getById(id: number): Promise; getByAuthorId(authorId: number): Promise; create(book: Omit): Promise; update(id: number, book: Partial & { id: number; }): Promise; delete(id: number, options?: DeleteBookOptions): Promise; lookup(term: string): Promise; bulkEdit(resource: BookEditor): Promise; bulkDelete(bookIds: number[], options?: DeleteBookOptions): Promise; monitor(data: BooksMonitored): Promise; } declare class EditionResource { private client; constructor(client: ClientMethods); getById(id: number): Promise; } interface GetBookFileOptions { authorId?: number; bookId?: number; bookFileIds?: number[]; unmapped?: boolean; } declare class BookFileResource { private client; constructor(client: ClientMethods); getAll(options?: GetBookFileOptions): Promise; getById(id: number): Promise; update(id: number, bookFile: Partial & { id: number; }): Promise; bulkUpdate(bookFiles: BookFileList): Promise; delete(id: number): Promise; bulkDelete(bookFileIds: number[]): Promise; } interface GetCalendarOptions { start?: string; end?: string; unmonitored?: boolean; includeAuthor?: boolean; } declare class CalendarResource { private client; constructor(client: ClientMethods); get(options?: GetCalendarOptions): Promise; } /** * File entry for the ManualImport command */ interface ReadarrManualImportFile { path: string; folderName?: string; downloadId?: string; quality?: QualityModel; releaseGroup?: string; indexerFlags?: number; authorId?: number; bookId?: number; foreignEditionId?: string; disableReleaseSwitching?: boolean; replaceExistingFiles?: boolean; } type ReadarrCommand = { name: 'RefreshAuthor'; authorId?: number; } | { name: 'RefreshBook'; bookId?: number; } | { name: 'RenameAuthor'; authorIds: number[]; } | { name: 'RenameFiles'; authorId: number; files: number[]; } | { name: 'RescanFolders'; } | { name: 'RssSync'; } | { name: 'BookSearch'; bookIds: number[]; } | { name: 'AuthorSearch'; authorId: number; } | { name: 'MissingBookSearch'; filterKey?: string; filterValue?: string; } | { name: 'CutoffUnmetBookSearch'; filterKey?: string; filterValue?: string; } | { name: 'RetagAuthor'; authorId: number; } | { name: 'RetagFiles'; authorId: number; files: number[]; } | { name: 'ApplicationUpdateCheck'; } | { name: 'Backup'; } | { name: 'RefreshMonitoredDownloads'; } | { name: 'CheckHealth'; } | { name: 'CleanUpRecycleBin'; } | { name: 'ClearBlocklist'; } | { name: 'MessagingCleanup'; } | { name: 'ImportListSync'; } | { name: 'DownloadedBooksScan'; path?: string; downloadClientId?: string; importMode?: 'Auto' | 'Move' | 'Copy'; } | { name: 'ManualImport'; files: ReadarrManualImportFile[]; importMode?: 'Auto' | 'Move' | 'Copy'; }; declare class CommandResource_ { private client; constructor(client: ClientMethods); getAll(): Promise; getById(id: number): Promise; execute(command: ReadarrCommand): Promise; cancel(id: number): Promise; refreshAuthor(authorId?: number): Promise; refreshBook(bookId?: number): Promise; rescanFolders(): Promise; authorSearch(authorId: number): Promise; bookSearch(bookIds: number[]): Promise; missingBookSearch(filterKey?: string, filterValue?: string): Promise; rssSync(): Promise; backup(): Promise; clearBlocklist(): Promise; downloadedBooksScan(options?: { path?: string; downloadClientId?: string; importMode?: 'Auto' | 'Move' | 'Copy'; }): Promise; manualImport(files: ReadarrManualImportFile[], importMode?: 'Auto' | 'Move' | 'Copy'): Promise; } interface GetQueueOptions extends PaginationOptions { includeUnknownAuthorItems?: boolean; includeAuthor?: boolean; includeBook?: boolean; authorIds?: number[]; bookIds?: number[]; protocol?: string; quality?: number[]; } declare class QueueResource { private client; constructor(client: ClientMethods); get(options?: GetQueueOptions): Promise; getById(id: number): Promise; getStatus(): Promise; delete(id: number, options?: { removeFromClient?: boolean; blocklist?: boolean; skipRedownload?: boolean; changeCategory?: boolean; }): Promise; bulkDelete(ids: number[], options?: { removeFromClient?: boolean; blocklist?: boolean; skipRedownload?: boolean; changeCategory?: boolean; }): Promise; } type EventTypeInput = EntityHistoryEventType | number; type EventTypeFilter = EventTypeInput | EventTypeInput[]; interface GetHistoryOptions extends PaginationOptions { includeAuthor?: boolean; includeBook?: boolean; eventType?: EventTypeFilter; downloadId?: string; authorId?: number; bookId?: number; } declare class HistoryResource { private client; constructor(client: ClientMethods); get(options?: GetHistoryOptions): Promise; getByAuthorId(authorId: number): Promise; markAsFailed(id: number): Promise; getSince(date: string, eventType?: EventTypeInput): Promise; } interface GetManualImportOptions { folder?: string; downloadId?: string; authorId?: number; bookId?: 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: QualityProfile): Promise; delete(id: number): Promise; } declare class QualityDefinitionResource { private client; constructor(client: ClientMethods); getAll(): Promise; getById(id: number): Promise; update(id: number, definition: QualityDefinition): 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: MetadataProfile): 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: Tag): 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 { includeAuthor?: 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; } declare class HealthResource { private client; constructor(client: ClientMethods); getAll(): Promise; } declare class DiskSpaceResource { private client; constructor(client: ClientMethods); getAll(): 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; upload(file: Blob | ArrayBuffer): Promise; } interface GetLogOptions { page?: number; pageSize?: number; sortKey?: string; sortDirection?: SortDirection; level?: string; } 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); getAll(): Promise; } declare class ReadarrClient extends BaseClient { readonly author: AuthorResource; readonly book: BookResource; readonly edition: EditionResource; readonly bookFile: BookFileResource; 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 AddAuthorOptions, type ApplyTags, type Author, type AuthorEditor, type AuthorStatistics, type Backup, type BackupType, type Blocklist, type BlocklistBulk, type BlocklistPagingResource, type Book, type BookEditor, type BookFile, type BookFileList, type BookPagingResource, type BookStatistics, type BooksMonitored, type Bookshelf, type BookshelfAuthor, type Calendar, type Command, type CommandPriority, type CommandResource, type CommandResult, type CommandStatus, type CommandTrigger, type CustomFilter, type CustomFormat, type DelayProfile, type DeleteAuthorOptions, type DeleteBookOptions, type DevelopmentConfig, type DiskSpace, type DownloadClient, type DownloadClientBulk, type DownloadClientConfig, type DownloadProtocol, type Edition, type EntityHistoryEventType, type Field, type GetAuthorOptions, type GetBookFileOptions, type GetBookOptions, type GetCalendarOptions, type GetHistoryOptions, type GetLogOptions, type GetManualImportOptions, type GetQueueOptions, 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, type Links, type Log, type LogFile, type LogPagingResource, type ManualImport, type ManualImportUpdate, type MediaCover, type MediaCoverTypes, type MediaInfo, type MediaManagementConfig, type Metadata, type MetadataProfile, type MetadataProviderConfig, type MonitorTypes, type MonitoringOptions, type NamingConfig, type NewItemMonitorTypes, type Notification, type Parse, type ProfileFormatItem, type ProviderMessage, type Quality, type QualityDefinition, type QualityModel, type QualityProfile, type QualityProfileQualityItem, type Queue, type QueueBulk, type QueuePagingResource, type QueueStatus, type Ratings, ReadarrClient, type ReadarrCommand, type ReadarrManualImportFile, type Release, type ReleaseProfile, type RemotePathMapping, type RenameBook, type RetagBook, type RootFolder, type SelectOption, type Series, type SeriesBookLink, type SortDirection, type SystemResource, type Tag, type TagDetails, type Task, type UiConfig, type Update };