import * as pulumi from "@pulumi/pulumi"; import * as inputs from "./types/input"; import * as outputs from "./types/output"; /** * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as rediscloud from "@pulumi/rediscloud"; * import * as rediscloud from "@rediscloud/pulumi-rediscloud"; * * const card = rediscloud.getPaymentMethod({ * cardType: "Visa", * }); * const subscription_resource = new rediscloud.Subscription("subscription-resource", { * paymentMethod: "credit-card", * paymentMethodId: card.then(card => card.id), * memoryStorage: "ram", * cloudProvider: { * provider: data.rediscloud_cloud_account.account.provider_type, * regions: [{ * region: "eu-west-1", * multipleAvailabilityZones: true, * networkingDeploymentCidr: "10.0.0.0/24", * preferredAvailabilityZones: ["euw1-az1, euw1-az2, euw1-az3"], * }], * }, * creationPlan: { * memoryLimitInGb: 15, * quantity: 1, * replication: true, * throughputMeasurementBy: "operations-per-second", * throughputMeasurementValue: 20000, * modules: ["RedisJSON"], * }, * }); * ``` * * ## Import * * `rediscloud_subscription` can be imported using the ID of the subscription, e.g. * * ```sh * $ pulumi import rediscloud:index/subscription:Subscription subscription-resource 12345678 * ``` * ~> __Note:__ the creation_plan block will be ignored during imports. */ export declare class Subscription extends pulumi.CustomResource { /** * Get an existing Subscription resource's state with the given name, ID, and optional extra * properties used to qualify the lookup. * * @param name The _unique_ name of the resulting resource. * @param id The _unique_ provider ID of the resource to lookup. * @param state Any extra arguments used during the lookup. * @param opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, state?: SubscriptionState, opts?: pulumi.CustomResourceOptions): Subscription; /** * Returns true if the given object is an instance of Subscription. This is designed to work even * when multiple copies of the Pulumi SDK have been loaded into the same process. */ static isInstance(obj: any): obj is Subscription; /** * An allowlist object, documented below */ readonly allowlist: pulumi.Output; /** * A cloud provider object, documented below. **Modifying this attribute will force creation of a new resource.** */ readonly cloudProvider: pulumi.Output; /** * A creation plan object, documented below */ readonly creationPlan: pulumi.Output; /** * Memory storage preference: either ‘ram’ or a combination of ‘ram-and-flash’. Default: ‘ram’. **Modifying this attribute will force creation of a new resource.** */ readonly memoryStorage: pulumi.Output; /** * A meaningful name to identify the subscription */ readonly name: pulumi.Output; /** * The payment method for the requested subscription, (either `credit-card` or `marketplace`). If `credit-card` is specified, `paymentMethodId` must be defined. Default: 'credit-card'. **Modifying this attribute will force creation of a new resource.** */ readonly paymentMethod: pulumi.Output; /** * A valid payment method pre-defined in the current account. This value is __Optional__ for AWS/GCP Marketplace accounts, but __Required__ for all other account types */ readonly paymentMethodId: pulumi.Output; /** * Create a Subscription resource with the given unique name, arguments, and options. * * @param name The _unique_ name of the resource. * @param args The arguments to use to populate this resource's properties. * @param opts A bag of options that control this resource's behavior. */ constructor(name: string, args: SubscriptionArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering Subscription resources. */ export interface SubscriptionState { /** * An allowlist object, documented below */ allowlist?: pulumi.Input; /** * A cloud provider object, documented below. **Modifying this attribute will force creation of a new resource.** */ cloudProvider?: pulumi.Input; /** * A creation plan object, documented below */ creationPlan?: pulumi.Input; /** * Memory storage preference: either ‘ram’ or a combination of ‘ram-and-flash’. Default: ‘ram’. **Modifying this attribute will force creation of a new resource.** */ memoryStorage?: pulumi.Input; /** * A meaningful name to identify the subscription */ name?: pulumi.Input; /** * The payment method for the requested subscription, (either `credit-card` or `marketplace`). If `credit-card` is specified, `paymentMethodId` must be defined. Default: 'credit-card'. **Modifying this attribute will force creation of a new resource.** */ paymentMethod?: pulumi.Input; /** * A valid payment method pre-defined in the current account. This value is __Optional__ for AWS/GCP Marketplace accounts, but __Required__ for all other account types */ paymentMethodId?: pulumi.Input; } /** * The set of arguments for constructing a Subscription resource. */ export interface SubscriptionArgs { /** * An allowlist object, documented below */ allowlist?: pulumi.Input; /** * A cloud provider object, documented below. **Modifying this attribute will force creation of a new resource.** */ cloudProvider: pulumi.Input; /** * A creation plan object, documented below */ creationPlan?: pulumi.Input; /** * Memory storage preference: either ‘ram’ or a combination of ‘ram-and-flash’. Default: ‘ram’. **Modifying this attribute will force creation of a new resource.** */ memoryStorage?: pulumi.Input; /** * A meaningful name to identify the subscription */ name?: pulumi.Input; /** * The payment method for the requested subscription, (either `credit-card` or `marketplace`). If `credit-card` is specified, `paymentMethodId` must be defined. Default: 'credit-card'. **Modifying this attribute will force creation of a new resource.** */ paymentMethod?: pulumi.Input; /** * A valid payment method pre-defined in the current account. This value is __Optional__ for AWS/GCP Marketplace accounts, but __Required__ for all other account types */ paymentMethodId?: pulumi.Input; }