UNPKG

@maienm/pulumi-readarr

Version:

A Pulumi package for creating and managing Readarr resources. Based on terraform-provider-readarr: version v2.1.0

1,564 lines (1,563 loc) 32.4 kB
import * as outputs from "../types/output"; export declare namespace Authors { interface GetAuthorsAuthor { /** * Author name. */ authorName: string; /** * Foreign author ID. */ foreignAuthorId: string; /** * List genres. */ genres: string[]; /** * Author ID. */ id: number; /** * Monitored flag. */ monitored: boolean; /** * Overview. */ overview: string; /** * Full author path. */ path: string; /** * Quality profile ID. */ qualityProfileId: number; /** * Author status. */ status: string; /** * List of associated tags. */ tags: number[]; } } export declare namespace DownloadClients { interface GetDownloadClientsDownloadClient { /** * Add paused flag. */ addPaused: boolean; /** * Add stopped flag. */ addStopped: boolean; /** * Additional tags, `0` TitleSlug, `1` Quality, `2` Language, `3` ReleaseGroup, `4` Year, `5` Indexer, `6` Network. */ additionalTags: number[]; /** * API key. */ apiKey: string; /** * Book category. */ bookCategory: string; /** * Book directory. */ bookDirectory: string; /** * Book imported category. */ bookImportedCategory: string; /** * Book directory. */ bookdirectory: string; /** * Category. */ category: string; /** * DownloadClient configuration template. */ configContract: string; /** * Destination. */ destination: string; /** * Enable flag. */ enable: boolean; /** * Field tags. */ fieldTags: string[]; /** * First and last flag. */ firstAndLast: boolean; /** * host. */ host: string; /** * Download Client ID. */ id: number; /** * DownloadClient implementation name. */ implementation: string; /** * Initial state. `0` Start, `1` ForceStart, `2` Pause. */ initialState: number; /** * Initial state, with Stop support. `0` Start, `1` ForceStart, `2` Pause, `3` Stop. */ intialState: number; /** * Magnet file extension. */ magnetFileExtension: string; /** * Download Client name. */ name: string; /** * NZB folder. */ nzbFolder: string; /** * Older Book priority. `0` Last, `1` First. */ olderBookPriority: number; /** * Password. */ password: string; /** * Port. */ port: number; /** * Post import tags. */ postImportTags: string[]; /** * Priority. */ priority: number; /** * Protocol. Valid values are 'usenet' and 'torrent'. */ protocol: string; /** * Read only flag. */ readOnly: boolean; /** * Recent Book priority. `0` Last, `1` First. */ recentBookPriority: number; /** * Remove completed downloads flag. */ removeCompletedDownloads: boolean; /** * Remove failed downloads flag. */ removeFailedDownloads: boolean; /** * RPC path. */ rpcPath: string; /** * Save magnet files flag. */ saveMagnetFiles: boolean; /** * Secret token. */ secretToken: string; /** * Sequential order flag. */ sequentialOrder: boolean; /** * Start on add flag. */ startOnAdd: boolean; /** * STRM folder. */ strmFolder: string; /** * List of associated tags. */ tags: number[]; /** * Torrent folder. */ torrentFolder: string; /** * Base URL. */ urlBase: string; /** * Use SSL flag. */ useSsl: boolean; /** * Username. */ username: string; /** * Watch folder flag. */ watchFolder: string; } interface GetRemotePathMappingsRemotePathMapping { /** * Download Client host. */ host: string; /** * RemotePathMapping ID. */ id: number; /** * Local path. */ localPath: string; /** * Download Client remote path. */ remotePath: string; } } export declare namespace ImportLists { interface GetExclusionsImportListExclusion { /** * Author to be excluded. */ authorName: string; /** * Musicbrainz ID. */ foreignId: string; /** * ImportListExclusion ID. */ id: number; } interface GetImportListsImportList { /** * Access token. */ accessToken: string; /** * Access token secret. */ accessTokenSecret: string; /** * API key. */ apiKey: string; /** * Base URL. */ baseUrl: string; /** * Bookshelf IDs. */ bookshelfIds: string[]; /** * ImportList configuration template. */ configContract: string; /** * Enable automatic add flag. */ enableAutomaticAdd: boolean; /** * Import List ID. */ id: number; /** * ImportList implementation name. */ implementation: string; /** * List ID. */ listId: number; /** * List order. */ listOrder: number; /** * List type. */ listType: string; /** * Metadata profile ID. */ metadataProfileId: number; /** * Monitor new items. */ monitorNewItems: string; /** * Import List name. */ name: string; /** * Profile IDs. */ profileIds: number[]; /** * Quality profile ID. */ qualityProfileId: number; /** * Request token secret. */ requestTokenSecret: string; /** * Root folder path. */ rootFolderPath: string; /** * Series ID. */ seriesId: number; /** * Should monitor. */ shouldMonitor: string; /** * Should monitor existing flag. */ shouldMonitorExisting: boolean; /** * Should search flag. */ shouldSearch: boolean; /** * Tag IDs. */ tagIds: number[]; /** * List of associated tags. */ tags: number[]; /** * User ID. */ userId: string; /** * Username. */ username: string; } } export declare namespace Indexers { interface GetIndexersIndexer { /** * Additional parameters. */ additionalParameters: string; /** * Allow zero size files. */ allowZeroSize: boolean; /** * API key. */ apiKey: string; /** * API path. */ apiPath: string; /** * API User. */ apiUser: string; /** * Author seed time. */ authorSeedTime: number; /** * Base URL. */ baseUrl: string; /** * Captcha token. */ captchaToken: string; /** * Series list. */ categories: number[]; /** * Indexer configuration template. */ configContract: string; /** * Cookie. */ cookie: string; /** * Delay before grabbing. */ delay: number; /** * Early release limit. */ earlyReleaseLimit: number; /** * Enable automatic search flag. */ enableAutomaticSearch: boolean; /** * Enable interactive search flag. */ enableInteractiveSearch: boolean; /** * Enable RSS flag. */ enableRss: boolean; /** * Indexer ID. */ id: number; /** * Indexer implementation name. */ implementation: string; /** * Minimum seeders. */ minimumSeeders: number; /** * Indexer name. */ name: string; /** * Passkey. */ passkey: string; /** * Password. */ password: string; /** * Priority. */ priority: number; /** * Protocol. Valid values are 'usenet' and 'torrent'. */ protocol: string; /** * Allow ranked only. */ rankedOnly: boolean; /** * Seed ratio. */ seedRatio: number; /** * Seed time. */ seedTime: number; /** * List of associated tags. */ tags: number[]; /** * Username. */ username: string; } } export declare namespace MediaManagement { interface GetRootFoldersRootFolder { /** * Access flag. */ accessible: boolean; /** * Default metadata profile ID. */ defaultMetadataProfileId: number; /** * Default monitor new item option. */ defaultMonitorNewItemOption: string; /** * Default monitor option. */ defaultMonitorOption: string; /** * Default metadata profile ID. */ defaultQualityProfileId: number; /** * List of associated tags. */ defaultTags: number[]; /** * Calibre host. */ host: string; /** * Root Folder ID. */ id: number; /** * Is calibre library flag. */ isCalibreLibrary: boolean; /** * Calibre library. */ library: string; /** * Root Folder name. */ name: string; /** * Calibre output profile. */ outputProfile: string; /** * Calibre password. */ password: string; /** * Root Folder absolute path. */ path: string; /** * Calibre Port. */ port: number; /** * Use SSL for calibre connection. */ useSsl: boolean; /** * Calibre username. */ username: string; } } export declare namespace Metadata { interface GetProfilesMetadataProfile { /** * Allowed languages. Comma separated list of ISO 639-3 language codes. */ allowedLanguages: string; /** * Metadata Profile ID. */ id: number; /** * Terms to ignore. */ ignoreds: string[]; /** * Minimum pages. */ minPages: number; /** * Minimum popularity. */ minPopularity: number; /** * Metadata Profile name. */ name: string; /** * Skip missing date. */ skipMissingDate: boolean; /** * Skip missing ISBN. */ skipMissingIsbn: boolean; /** * Skip parts and sets. */ skipPartsAndSets: boolean; /** * Skip secondary series books. */ skipSeriesSecondary: boolean; } } export declare namespace Notifications { interface GetNotificationsNotification { /** * Access token. */ accessToken: string; /** * Access token secret. */ accessTokenSecret: string; /** * Add IDs. */ addIds: string[]; /** * API key. */ apiKey: string; /** * App token. */ appToken: string; /** * Arguments. */ arguments: string; /** * Attach files flag. */ attachFiles: boolean; /** * Auth user. */ authUser: string; /** * Author. */ author: string; /** * Avatar. */ avatar: string; /** * Bcc. */ bccs: string[]; /** * Bot token. */ botToken: string; /** * Cc. */ ccs: string[]; /** * Channel. */ channel: string; /** * Channel tags. */ channelTags: string[]; /** * Chat ID. */ chatId: string; /** * Click URL. */ clickUrl: string; /** * Condition. `10` BrandNew, `20` LikeNew, `30` VeryGood, `40` Good, `50` Acceptable, `60` Poor. */ condition: number; /** * Notification configuration template. */ configContract: string; /** * Consumer key. */ consumerKey: string; /** * Consumer secret. */ consumerSecret: string; /** * Condition description. */ description: string; /** * Device IDs. */ deviceIds: string[]; /** * Device names. */ deviceNames: string; /** * Devices. */ devices: string[]; /** * Direct message flag. */ directMessage: boolean; /** * Event. */ event: string; /** * Expire. */ expire: number; /** * Devices. */ fieldTags: string[]; /** * From. */ from: string; /** * Grab fields. `0` Overview, `1` Rating, `2` Genres, `3` Quality, `4` Group, `5` Size, `6` Links, `7` Release, `8` Poster, `9` Fanart, `10` CustomFormats, `11` CustomFormatScore. */ grabFields: number; /** * Host. */ host: string; /** * Icon. */ icon: string; /** * Notification ID. */ id: number; /** * Notification implementation name. */ implementation: string; /** * Import fields. `0` Overview, `1` Rating, `2` Genres, `3` Quality, `4` Codecs, `5` Group, `6` Size, `7` Languages, `8` Subtitles, `9` Links, `10` Release, `11` Poster, `12` Fanart. */ importFields: number; /** * Include health warnings. */ includeHealthWarnings: boolean; /** * Instance name. */ instanceName: string; /** * Key. */ key: string; /** * Purchase location. */ location: string; /** * Map From. */ mapFrom: string; /** * Map To. */ mapTo: string; /** * Mention. */ mention: string; /** * Method. `1` POST, `2` PUT. */ method: number; /** * Notification name. */ name: string; /** * Notify flag. */ notify: boolean; /** * On application update flag. */ onApplicationUpdate: boolean; /** * On author deleted flag. */ onAuthorDelete: boolean; /** * On book delete flag. */ onBookDelete: boolean; /** * On book file delete flag. */ onBookFileDelete: boolean; /** * On book file delete for upgrade flag. */ onBookFileDeleteForUpgrade: boolean; /** * On book retag flag. */ onBookRetag: boolean; /** * On download failure flag. */ onDownloadFailure: boolean; /** * On grab flag. */ onGrab: boolean; /** * On health issue flag. */ onHealthIssue: boolean; /** * On import failure flag. */ onImportFailure: boolean; /** * On release import flag. */ onReleaseImport: boolean; /** * On rename flag. */ onRename: boolean; /** * On upgrade flag. */ onUpgrade: boolean; /** * password. */ password: string; /** * Path. */ path: string; /** * Port. */ port: number; /** * Priority. */ priority: number; /** * Recipients. */ recipients: string[]; /** * Refresh token. */ refreshToken: string; /** * Remove IDs. */ removeIds: string[]; /** * Request token secret. */ requestTokenSecret: string; /** * Require encryption flag. */ requireEncryption: boolean; /** * Retry. */ retry: number; /** * Add silently flag. */ sendSilently: boolean; /** * Sender domain. */ senderDomain: string; /** * Sender ID. */ senderId: string; /** * server. */ server: string; /** * Server url. */ serverUrl: string; /** * Sign in. */ signIn: string; /** * Sound. */ sound: string; /** * List of associated tags. */ tags: number[]; /** * Token. */ token: string; /** * Devices. */ topics: string[]; /** * To. */ tos: string[]; /** * Update library flag. */ updateLibrary: boolean; /** * URL. */ url: string; /** * URL base. */ urlBase: string; /** * Use EU endpoint flag. */ useEuEndpoint: boolean; /** * Use SSL flag. */ useSsl: boolean; /** * User ID. */ userId: string; /** * User key. */ userKey: string; /** * Username. */ username: string; /** * Web hook url. */ webHookUrl: string; } } export declare namespace Profiles { interface CustomFormatSpecification { /** * Implementation. */ implementation: string; /** * Max. */ max: number; /** * Min. */ min: number; /** * Specification name. */ name: string; /** * Negate flag. */ negate: boolean; /** * Required flag. */ required: boolean; /** * Value. */ value: string; } interface GetCustomFormatSpecification { /** * Implementation. */ implementation: string; /** * Max. */ max: number; /** * Min. */ min: number; /** * Specification name. */ name: string; /** * Negate flag. */ negate: boolean; /** * Computed flag. */ required: boolean; /** * Value. */ value: string; } interface GetCustomFormatsCustomFormat { /** * Custom Format ID. */ id: number; /** * Include custom format when renaming flag. */ includeCustomFormatWhenRenaming: boolean; /** * Custom Format name. */ name: string; /** * Specifications. */ specifications: outputs.Profiles.GetCustomFormatsCustomFormatSpecification[]; } interface GetCustomFormatsCustomFormatSpecification { /** * Implementation. */ implementation: string; /** * Max. */ max: number; /** * Min. */ min: number; /** * Custom Format name. */ name: string; /** * Negate flag. */ negate: boolean; /** * Computed flag. */ required: boolean; /** * Value. */ value: string; } interface GetDelayProfilesDelayProfile { /** * Torrent allowed Flag. */ enableTorrent: boolean; /** * Usenet allowed Flag. */ enableUsenet: boolean; /** * Delay Profile ID. */ id: number; /** * Order. */ order: number; /** * Preferred protocol. */ preferredProtocol: string; /** * List of associated tags. */ tags: number[]; /** * Torrent Delay. */ torrentDelay: number; /** * Usenet delay. */ usenetDelay: number; } interface GetQualityDefinitionsQualityDefinition { /** * Quality Definition ID. */ id: number; /** * Maximum size MB/min. */ maxSize: number; /** * Minimum size MB/min. */ minSize: number; /** * Quality ID. */ qualityId: number; /** * Quality Name. */ qualityName: string; /** * Quality Definition Title. */ title: string; } interface GetQualityProfileFormatItem { /** * Format. */ format: number; /** * Name. */ name: string; /** * Score. */ score: number; } interface GetQualityProfileQualityGroup { /** * Quality group ID. */ id: number; /** * Quality group name. */ name: string; /** * Qualities in group. */ qualities: outputs.Profiles.GetQualityProfileQualityGroupQuality[]; } interface GetQualityProfileQualityGroupQuality { /** * Quality group ID. */ id: number; /** * Name. */ name: string; } interface GetQualityProfilesQualityProfile { /** * Quality ID to which cutoff. */ cutoff: number; /** * Cutoff format score. */ cutoffFormatScore: number; /** * Format items. */ formatItems: outputs.Profiles.GetQualityProfilesQualityProfileFormatItem[]; /** * Quality Profile ID. */ id: number; /** * Min format score. */ minFormatScore: number; /** * Quality Profile Name. */ name: string; /** * Quality groups. */ qualityGroups: outputs.Profiles.GetQualityProfilesQualityProfileQualityGroup[]; /** * Upgrade allowed flag. */ upgradeAllowed: boolean; } interface GetQualityProfilesQualityProfileFormatItem { /** * Format. */ format: number; /** * Name. */ name: string; /** * Score. */ score: number; } interface GetQualityProfilesQualityProfileQualityGroup { /** * Quality Profile ID. */ id: number; /** * Name. */ name: string; /** * Qualities in group. */ qualities: outputs.Profiles.GetQualityProfilesQualityProfileQualityGroupQuality[]; } interface GetQualityProfilesQualityProfileQualityGroupQuality { /** * Quality Profile ID. */ id: number; /** * Name. */ name: string; } interface GetReleaseProfilesReleaseProfile { /** * Enabled. */ enabled: boolean; /** * Release Profile ID. */ id: number; /** * Ignored terms. At least one of `required` and `ignored` must be set. */ ignoreds: string[]; /** * Indexer ID. Set `0` for all. */ indexerId: number; /** * Required terms. At least one of `required` and `ignored` must be set. */ requireds: string[]; /** * List of associated tags. */ tags: number[]; } interface QualityProfileFormatItem { /** * Format. */ format: number; /** * Name. */ name: string; /** * Score. */ score: number; } interface QualityProfileQualityGroup { /** * Quality group ID. */ id: number; /** * Quality group name. */ name: string; /** * Ordered list of qualities in group. */ qualities: outputs.Profiles.QualityProfileQualityGroupQuality[]; } interface QualityProfileQualityGroupQuality { /** * Quality group ID. */ id: number; /** * Name. */ name: string; } } export declare namespace System { interface GetHostAuthentication { /** * Needed for validation. */ encryptedPassword: string; /** * Authentication method. */ method: string; /** * Password. */ password: string; /** * Username. */ username: string; } interface GetHostBackup { /** * Backup folder. */ folder: string; /** * Backup interval. */ interval: number; /** * Backup retention. */ retention: number; } interface GetHostLogging { /** * Enable analytics flag. */ analyticsEnabled: boolean; /** * Console log level. */ consoleLogLevel: string; /** * Log level. */ logLevel: string; } interface GetHostProxy { /** * Bypass filder. */ bypassFilter: string; /** * Bypass for local addresses flag. */ bypassLocalAddresses: boolean; /** * Enabled. */ enabled: boolean; /** * Proxy hostname. */ hostname: string; /** * Proxy password. */ password: string; /** * Proxy port. */ port: number; /** * Proxy type. */ type: string; /** * Proxy username. */ username: string; } interface GetHostSsl { /** * Certificate Password. */ certPassword: string; /** * Certificate path. */ certPath: string; /** * Certificate validation. */ certificateValidation: string; /** * Enabled. */ enabled: boolean; /** * SSL port. */ port: number; } interface GetHostUpdate { /** * Branch reference. */ branch: string; /** * Update mechanism. */ mechanism: string; /** * Script path. */ scriptPath: string; /** * Update automatically flag. */ updateAutomatically: boolean; } interface HostAuthentication { /** * Needed for validation. */ encryptedPassword: string; /** * Authentication method. */ method: string; /** * Password. */ password: string; /** * Username. */ username: string; } interface HostBackup { /** * Backup folder. */ folder: string; /** * Backup interval. */ interval: number; /** * Backup retention. */ retention: number; } interface HostLogging { /** * Enable analytics flag. */ analyticsEnabled: boolean; /** * Console log level. */ consoleLogLevel: string; /** * Log level. */ logLevel: string; } interface HostProxy { /** * Bypass filder. */ bypassFilter: string; /** * Bypass for local addresses flag. */ bypassLocalAddresses: boolean; /** * Enabled. */ enabled: boolean; /** * Proxy hostname. */ hostname: string; /** * Proxy password. */ password: string; /** * Proxy port. */ port: number; /** * Proxy type. */ type: string; /** * Proxy username. */ username: string; } interface HostSsl { /** * Certificate Password. */ certPassword: string; /** * Certificate path. */ certPath: string; /** * Certificate validation. */ certificateValidation: string; /** * Enabled. */ enabled: boolean; /** * SSL port. */ port: number; } interface HostUpdate { /** * Branch reference. */ branch: string; /** * Update mechanism. */ mechanism: string; /** * Script path. */ scriptPath: string; /** * Update automatically flag. */ updateAutomatically: boolean; } } export declare namespace Tags { interface GetTagsTag { /** * Tag ID. */ id: number; /** * Tag label. */ label: string; } }