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 ovh from "@ovhcloud/pulumi-ovh"; * * const myaccount = ovh.Me.getMe({}); * const mycart = myaccount.then(myaccount => ovh.Order.getCart({ * ovhSubsidiary: myaccount.ovhSubsidiary, * })); * const zone = mycart.then(mycart => ovh.Order.getCartProductPlan({ * cartId: mycart.id, * priceCapacity: "renew", * product: "dns", * planCode: "zone", * })); * const zoneZone = new ovh.domain.Zone("zone", { * ovhSubsidiary: mycart.then(mycart => mycart.ovhSubsidiary), * plan: { * duration: zone.then(zone => zone.selectedPrices?.[0]?.duration), * planCode: zone.then(zone => zone.planCode), * pricingMode: zone.then(zone => zone.selectedPrices?.[0]?.pricingMode), * configurations: [ * { * label: "zone", * value: "myzone.mydomain.com", * }, * { * label: "template", * value: "minimized", * }, * ], * }, * }); * ``` * * ## Import * * Zone can be imported using its `name`. * * Using the following configuration: * * terraform * * import { * * to = ovh_domain_zone.zone * * id = "" * * } * * You can then run: * * bash * * $ pulumi preview -generate-config-out=zone.tf * * $ pulumi up * * The file `zone.tf` will then contain the imported resource's configuration, that can be copied next to the `import` block above. See https://developer.hashicorp.com/terraform/language/import/generating-configuration for more details. */ export declare class Zone extends pulumi.CustomResource { /** * Get an existing Zone 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?: ZoneState, opts?: pulumi.CustomResourceOptions): Zone; /** * Returns true if the given object is an instance of Zone. 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 Zone; /** * URN of the DNS Zone to be used inside an IAM policy */ readonly ZoneURN: pulumi.Output; /** * Is DNSSEC supported by this zone */ readonly dnssecSupported: pulumi.Output; /** * hasDnsAnycast flag of the DNS zone */ readonly hasDnsAnycast: pulumi.Output; /** * Last update date of the DNS zone */ readonly lastUpdate: pulumi.Output; /** * Zone name */ readonly name: pulumi.Output; /** * Name servers that host the DNS zone */ readonly nameServers: pulumi.Output; /** * Details about an Order */ readonly orders: pulumi.Output; /** * OVHcloud Subsidiary. Country of OVHcloud legal entity you'll be billed by. List of supported subsidiaries available on API at [/1.0/me.json under `models.nichandle.OvhSubsidiaryEnum`](https://eu.api.ovh.com/1.0/me.json) */ readonly ovhSubsidiary: pulumi.Output; /** * Ovh payment mode * * @deprecated This field is not anymore used since the API has been deprecated in favor of /payment/mean. Now, the default payment mean is used. */ readonly paymentMean: pulumi.Output; /** * Product Plan to order */ readonly plan: pulumi.Output; /** * Product Plan to order */ readonly planOptions: pulumi.Output; /** * Create a Zone 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?: ZoneArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering Zone resources. */ export interface ZoneState { /** * URN of the DNS Zone to be used inside an IAM policy */ ZoneURN?: pulumi.Input; /** * Is DNSSEC supported by this zone */ dnssecSupported?: pulumi.Input; /** * hasDnsAnycast flag of the DNS zone */ hasDnsAnycast?: pulumi.Input; /** * Last update date of the DNS zone */ lastUpdate?: pulumi.Input; /** * Zone name */ name?: pulumi.Input; /** * Name servers that host the DNS zone */ nameServers?: pulumi.Input[]>; /** * Details about an Order */ orders?: pulumi.Input[]>; /** * OVHcloud Subsidiary. Country of OVHcloud legal entity you'll be billed by. List of supported subsidiaries available on API at [/1.0/me.json under `models.nichandle.OvhSubsidiaryEnum`](https://eu.api.ovh.com/1.0/me.json) */ ovhSubsidiary?: pulumi.Input; /** * Ovh payment mode * * @deprecated This field is not anymore used since the API has been deprecated in favor of /payment/mean. Now, the default payment mean is used. */ paymentMean?: pulumi.Input; /** * Product Plan to order */ plan?: pulumi.Input; /** * Product Plan to order */ planOptions?: pulumi.Input[]>; } /** * The set of arguments for constructing a Zone resource. */ export interface ZoneArgs { /** * Details about an Order */ orders?: pulumi.Input[]>; /** * OVHcloud Subsidiary. Country of OVHcloud legal entity you'll be billed by. List of supported subsidiaries available on API at [/1.0/me.json under `models.nichandle.OvhSubsidiaryEnum`](https://eu.api.ovh.com/1.0/me.json) */ ovhSubsidiary?: pulumi.Input; /** * Ovh payment mode * * @deprecated This field is not anymore used since the API has been deprecated in favor of /payment/mean. Now, the default payment mean is used. */ paymentMean?: pulumi.Input; /** * Product Plan to order */ plan?: pulumi.Input; /** * Product Plan to order */ planOptions?: pulumi.Input[]>; }