@maienm/pulumi-prowlarr
Version:
A Pulumi package for creating and managing Prowlarr resources. Based on terraform-provider-prowlarr: version v2.3.0
1,281 lines (1,280 loc) • 26.5 kB
TypeScript
import * as outputs from "../types/output";
export declare namespace Applications {
interface GetApplicationsApplication {
/**
* Anime sync categories.
*/
animeSyncCategories: number[];
/**
* API key.
*/
apiKey: string;
/**
* Base URL.
*/
baseUrl: string;
/**
* Application configuration template.
*/
configContract: string;
/**
* Application ID.
*/
id: number;
/**
* Application implementation name.
*/
implementation: string;
/**
* Application name.
*/
name: string;
/**
* Prowlarr URL.
*/
prowlarrUrl: string;
/**
* Sync categories.
*/
syncCategories: number[];
/**
* Sync level.
*/
syncLevel: string;
/**
* List of associated tags.
*/
tags: number[];
}
interface GetSyncProfilesSyncProfile {
/**
* Enable automatic search flag.
*/
enableAutomaticSearch: boolean;
/**
* Enable interactive search flag.
*/
enableInteractiveSearch: boolean;
/**
* Enable RSS flag.
*/
enableRss: boolean;
/**
* Sync Profile ID.
*/
id: number;
/**
* Minimum seeders.
*/
minimumSeeders: number;
/**
* Name.
*/
name: string;
}
}
export declare namespace DownloadClients {
interface Aria2Category {
/**
* List of categories.
*/
categories: number[];
/**
* Name of client category.
*/
name: string;
}
interface DelugeCategory {
/**
* List of categories.
*/
categories: number[];
/**
* Name of client category.
*/
name: string;
}
interface DownloadClientCategory {
/**
* List of categories.
*/
categories: number[];
/**
* Name of client category.
*/
name: string;
}
interface FloodCategory {
/**
* List of categories.
*/
categories: number[];
/**
* Name of client category.
*/
name: string;
}
interface FreeboxCategory {
/**
* List of categories.
*/
categories: number[];
/**
* Name of client category.
*/
name: string;
}
interface GetDownloadClientCategory {
/**
* List of categories.
*/
categories: number[];
/**
* Name of client category.
*/
name: string;
}
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;
/**
* API URL.
*/
apiUrl: string;
/**
* App ID.
*/
appId: string;
/**
* App Token.
*/
appToken: string;
/**
* List of mapped categories.
*/
categories: outputs.DownloadClients.GetDownloadClientsDownloadClientCategory[];
/**
* Category.
*/
category: string;
/**
* DownloadClient configuration template.
*/
configContract: string;
/**
* Destination.
*/
destination: string;
/**
* Movie directory.
*/
destinationDirectory: string;
/**
* Directory.
*/
directory: string;
/**
* Enable flag.
*/
enable: boolean;
/**
* Field tags.
*/
fieldTags: string[];
/**
* 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;
/**
* Priority. `0` Last, `1` First.
*/
itemPriority: number;
/**
* Magnet file extension.
*/
magnetFileExtension: string;
/**
* Download Client name.
*/
name: string;
/**
* NZB folder.
*/
nzbFolder: string;
/**
* Password.
*/
password: string;
/**
* Port.
*/
port: number;
/**
* Post import tags.
*/
postImTags: string[];
/**
* Priority.
*/
priority: number;
/**
* Protocol. Valid values are 'usenet' and 'torrent'.
*/
protocol: string;
/**
* Read only flag.
*/
readOnly: boolean;
/**
* RPC path.
*/
rpcPath: string;
/**
* Save magnet files flag.
*/
saveMagnetFiles: boolean;
/**
* Secret token.
*/
secretToken: string;
/**
* Start on add flag.
*/
startOnAdd: boolean;
/**
* Directory.
*/
stationDirectory: string;
/**
* STRM folder.
*/
strmFolder: string;
/**
* List of associated tags.
*/
tags: number[];
/**
* Torrent folder.
*/
torrentFolder: string;
/**
* TV imported category.
*/
tvImportedCategory: string;
/**
* Base URL.
*/
urlBase: string;
/**
* Use SSL flag.
*/
useSsl: boolean;
/**
* Username.
*/
username: string;
}
interface GetDownloadClientsDownloadClientCategory {
/**
* List of mapped categories.
*/
categories: number[];
/**
* Name of client category.
*/
name: string;
}
interface HadoukenCategory {
/**
* List of categories.
*/
categories: number[];
/**
* Name of client category.
*/
name: string;
}
interface NzbgetCategory {
/**
* List of categories.
*/
categories: number[];
/**
* Name of client category.
*/
name: string;
}
interface NzbvortexCategory {
/**
* List of categories.
*/
categories: number[];
/**
* Name of client category.
*/
name: string;
}
interface PneumaticCategory {
/**
* List of categories.
*/
categories: number[];
/**
* Name of client category.
*/
name: string;
}
interface QbittorrentCategory {
/**
* List of categories.
*/
categories: number[];
/**
* Name of client category.
*/
name: string;
}
interface RtorrentCategory {
/**
* List of categories.
*/
categories: number[];
/**
* Name of client category.
*/
name: string;
}
interface SabnzbdCategory {
/**
* List of categories.
*/
categories: number[];
/**
* Name of client category.
*/
name: string;
}
interface TorrentBlackholeCategory {
/**
* List of categories.
*/
categories: number[];
/**
* Name of client category.
*/
name: string;
}
interface TorrentDownloadStationCategory {
/**
* List of categories.
*/
categories: number[];
/**
* Name of client category.
*/
name: string;
}
interface TransmissionCategory {
/**
* List of categories.
*/
categories: number[];
/**
* Name of client category.
*/
name: string;
}
interface UsenetBlackholeCategory {
/**
* List of categories.
*/
categories: number[];
/**
* Name of client category.
*/
name: string;
}
interface UsenetDownloadStationCategory {
/**
* List of categories.
*/
categories: number[];
/**
* Name of client category.
*/
name: string;
}
interface UtorrentCategory {
/**
* List of categories.
*/
categories: number[];
/**
* Name of client category.
*/
name: string;
}
interface VuzeCategory {
/**
* List of categories.
*/
categories: number[];
/**
* Name of client category.
*/
name: string;
}
}
export declare namespace IndexerProxies {
interface GetIndexerProxiesIndexerProxy {
/**
* IndexerProxy configuration template.
*/
configContract: string;
/**
* host.
*/
host: string;
/**
* Indexer Proxy ID.
*/
id: number;
/**
* IndexerProxy implementation name.
*/
implementation: string;
/**
* Indexer Proxy name.
*/
name: string;
/**
* Password.
*/
password: string;
/**
* Port.
*/
port: number;
/**
* Request timeout.
*/
requestTimeout: number;
/**
* List of associated tags.
*/
tags: number[];
/**
* Username.
*/
username: string;
}
}
export declare namespace Indexers {
interface GetIndexerField {
/**
* Bool value.
*/
boolValue: boolean;
/**
* Field name.
*/
name: string;
/**
* Number value.
*/
numberValue: number;
/**
* Sensitive string value.
*/
sensitiveValue: string;
/**
* Set value.
*/
setValues: number[];
/**
* Text value.
*/
textValue: string;
}
interface GetIndexersIndexer {
/**
* Application profile ID.
*/
appProfileId: number;
/**
* Indexer configuration template.
*/
configContract: string;
/**
* Enable RSS flag.
*/
enable: boolean;
/**
* Set of configuration fields.
*/
fields: outputs.Indexers.GetIndexersIndexerField[];
/**
* Indexer ID.
*/
id: number;
/**
* Indexer implementation name.
*/
implementation: string;
/**
* Language.
*/
language: string;
/**
* Indexer name.
*/
name: string;
/**
* Priority.
*/
priority: number;
/**
* Privacy.
*/
privacy: string;
/**
* Protocol. Valid values are 'usenet' and 'torrent'.
*/
protocol: string;
/**
* List of associated tags.
*/
tags: number[];
}
interface GetIndexersIndexerField {
/**
* Bool value.
*/
boolValue: boolean;
/**
* Field name.
*/
name: string;
/**
* Number value.
*/
numberValue: number;
/**
* Sensitive string value.
*/
sensitiveValue: string;
/**
* Set value.
*/
setValues: number[];
/**
* Text value.
*/
textValue: string;
}
interface GetSchemaField {
/**
* Field description.
*/
description: string;
/**
* Field name.
*/
name: string;
/**
* Field type.
*/
type: string;
}
interface IndexerField {
/**
* Bool value. Only one value must be filled out.
*/
boolValue: boolean;
/**
* Field name.
* It must contain the whole field name comprehensive of its prefix (e.g. `baseSettings.`).
*/
name: string;
/**
* Number value. Only one value must be filled out.
*/
numberValue: number;
/**
* Sensitive string value. Only one value must be filled out. This must be used instead of `textValue`, for sensitive fields.
*/
sensitiveValue: string;
/**
* Set value. Only one value must be filled out.
*/
setValues: number[];
/**
* Text value. Only one value must be filled out.
*/
textValue: string;
}
}
export declare namespace Notifications {
interface GetNotificationsNotification {
/**
* Access token.
*/
accessToken: string;
/**
* Access token secret.
*/
accessTokenSecret: string;
/**
* Always update flag.
*/
alwaysUpdate: boolean;
/**
* API key.
*/
apiKey: string;
/**
* App token.
*/
appToken: string;
/**
* Arguments.
*/
arguments: string;
/**
* Auth password.
*/
authPassword: string;
/**
* Auth token.
*/
authToken: string;
/**
* Auth user.
*/
authUser: string;
/**
* Auth username.
*/
authUsername: string;
/**
* Author.
*/
author: string;
/**
* Avatar.
*/
avatar: string;
/**
* Base URL.
*/
baseUrl: string;
/**
* Bcc.
*/
bccs: string[];
/**
* Bot token.
*/
botToken: string;
/**
* Cc.
*/
ccs: string[];
/**
* Channel.
*/
channel: string;
/**
* Channel tags.
*/
channelTags: string[];
/**
* Chat ID.
*/
chatId: string;
/**
* Clean library flag.
*/
cleanLibrary: boolean;
/**
* Click URL.
*/
clickUrl: string;
/**
* Notification configuration template.
*/
configContract: string;
/**
* Configuration key.
*/
configurationKey: string;
/**
* Consumer key.
*/
consumerKey: string;
/**
* Consumer secret.
*/
consumerSecret: string;
/**
* Device IDs.
*/
deviceIds: number[];
/**
* Device names.
*/
deviceNames: string;
/**
* Devices.
*/
devices: string[];
/**
* Direct message flag.
*/
directMessage: boolean;
/**
* Display time.
*/
displayTime: number;
/**
* Event.
*/
event: string;
/**
* Expire.
*/
expire: number;
/**
* Expires.
*/
expires: string;
/**
* 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;
/**
* Include health warnings.
*/
includeHealthWarnings: boolean;
/**
* Include manual grab flag.
*/
includeManualGrabs: boolean;
/**
* Instance name.
*/
instanceName: string;
/**
* Key.
*/
key: string;
/**
* Map From.
*/
mapFrom: string;
/**
* Map To.
*/
mapTo: string;
/**
* Mention.
*/
mention: string;
/**
* Method. `1` POST, `2` PUT.
*/
method: number;
/**
* Notification name.
*/
name: string;
/**
* Notification type. `0` Info, `1` Success, `2` Warning, `3` Failure.
*/
notificationType: number;
/**
* Notify flag.
*/
notify: boolean;
/**
* On application update flag.
*/
onApplicationUpdate: boolean;
/**
* On release grab flag.
*/
onGrab: boolean;
/**
* On health issue flag.
*/
onHealthIssue: boolean;
/**
* On health restored flag.
*/
onHealthRestored: boolean;
/**
* password.
*/
password: string;
/**
* Path.
*/
path: string;
/**
* Port.
*/
port: number;
/**
* Priority.
*/
priority: number;
/**
* Receiver ID.
*/
receiverId: string;
/**
* Recipients.
*/
recipients: string[];
/**
* Refresh token.
*/
refreshToken: string;
/**
* Retry.
*/
retry: number;
/**
* Add silently flag.
*/
sendSilently: boolean;
/**
* Sender domain.
*/
senderDomain: string;
/**
* Sender ID.
*/
senderId: string;
/**
* Sender Number.
*/
senderNumber: string;
/**
* server.
*/
server: string;
/**
* Server url.
*/
serverUrl: string;
/**
* Sign in.
*/
signIn: string;
/**
* Sound.
*/
sound: string;
/**
* Comma separated stateless URLs.
*/
statelessUrls: string;
/**
* List of associated tags.
*/
tags: number[];
/**
* Token.
*/
token: string;
/**
* Topic ID.
*/
topicId: string;
/**
* Devices.
*/
topics: string[];
/**
* To.
*/
tos: string[];
/**
* Update library flag.
*/
updateLibrary: boolean;
/**
* URL.
*/
url: string;
/**
* Use Encryption. `0` Preferred, `1` Always, `2` Never.
*/
useEncryption: number;
/**
* Use EU endpoint flag.
*/
useEuEndpoint: boolean;
/**
* Use SSL flag.
*/
useSsl: boolean;
/**
* User key.
*/
userKey: string;
/**
* Username.
*/
username: string;
/**
* Web hook url.
*/
webHookUrl: string;
}
}
export declare namespace System {
interface GetHostAuthentication {
/**
* Needed for validation.
*/
encryptedPassword: string;
/**
* Authentication method.
*/
method: string;
/**
* Password.
*/
password: string;
/**
* Required for everyone or disabled for local addresses.
*/
required: 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;
/**
* Required for everyone or disabled for local addresses.
*/
required: 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 Tag {
interface GetTagsDetailsTag {
/**
* List of associated applications.
*/
applicationIds: number[];
/**
* Tags ID.
*/
id: number;
/**
* List of associated indexers.
*/
indexerIds: number[];
/**
* List of associated indexer proxies.
*/
indexerProxyIds: number[];
/**
* Tags label.
*/
label: string;
/**
* List of associated notifications.
*/
notificationIds: number[];
}
}
export declare namespace Tags {
interface GetTagsTag {
/**
* Tag ID.
*/
id: number;
/**
* Tag label.
*/
label: string;
}
}