import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../../types/input"; import * as outputs from "../../types/output"; import * as enums from "../../types/enums"; /** * Registers a new domain name and creates a corresponding `Registration` resource. Call `RetrieveRegisterParameters` first to check availability of the domain name and determine parameters like price that are needed to build a call to this method. A successful call creates a `Registration` resource in state `REGISTRATION_PENDING`, which resolves to `ACTIVE` within 1-2 minutes, indicating that the domain was successfully registered. If the resource ends up in state `REGISTRATION_FAILED`, it indicates that the domain was not registered successfully, and you can safely delete the resource and retry registration. * Auto-naming is currently not supported for this resource. */ export declare class Registration extends pulumi.CustomResource { /** * Get an existing Registration 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 opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): Registration; /** * Returns true if the given object is an instance of Registration. 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 Registration; /** * Settings for contact information linked to the `Registration`. You cannot update these with the `UpdateRegistration` method. To update these settings, use the `ConfigureContactSettings` method. */ readonly contactSettings: pulumi.Output; /** * The creation timestamp of the `Registration` resource. */ readonly createTime: pulumi.Output; /** * Settings controlling the DNS configuration of the `Registration`. You cannot update these with the `UpdateRegistration` method. To update these settings, use the `ConfigureDnsSettings` method. */ readonly dnsSettings: pulumi.Output; /** * Immutable. The domain name. Unicode domain names must be expressed in Punycode format. */ readonly domainName: pulumi.Output; /** * The expiration timestamp of the `Registration`. */ readonly expireTime: pulumi.Output; /** * The set of issues with the `Registration` that require attention. */ readonly issues: pulumi.Output; /** * Set of labels associated with the `Registration`. */ readonly labels: pulumi.Output<{ [key: string]: string; }>; readonly location: pulumi.Output; /** * Settings for management of the `Registration`, including renewal, billing, and transfer. You cannot update these with the `UpdateRegistration` method. To update these settings, use the `ConfigureManagementSettings` method. */ readonly managementSettings: pulumi.Output; /** * Name of the `Registration` resource, in the format `projects/*/locations/*/registrations/`. */ readonly name: pulumi.Output; /** * Pending contact settings for the `Registration`. Updates to the `contact_settings` field that change its `registrant_contact` or `privacy` fields require email confirmation by the `registrant_contact` before taking effect. This field is set only if there are pending updates to the `contact_settings` that have not been confirmed. To confirm the changes, the `registrant_contact` must follow the instructions in the email they receive. */ readonly pendingContactSettings: pulumi.Output; readonly project: pulumi.Output; /** * The reason the domain registration failed. Only set for domains in REGISTRATION_FAILED state. */ readonly registerFailureReason: pulumi.Output; /** * The state of the `Registration` */ readonly state: pulumi.Output; /** * Set of options for the `contact_settings.privacy` field that this `Registration` supports. */ readonly supportedPrivacy: pulumi.Output; /** * Deprecated: For more information, see [Cloud Domains feature deprecation](https://cloud.google.com/domains/docs/deprecations/feature-deprecations) The reason the domain transfer failed. Only set for domains in TRANSFER_FAILED state. * * @deprecated Output only. Deprecated: For more information, see [Cloud Domains feature deprecation](https://cloud.google.com/domains/docs/deprecations/feature-deprecations) The reason the domain transfer failed. Only set for domains in TRANSFER_FAILED state. */ readonly transferFailureReason: pulumi.Output; /** * Create a Registration 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: RegistrationArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a Registration resource. */ export interface RegistrationArgs { /** * The list of contact notices that the caller acknowledges. The notices needed here depend on the values specified in `registration.contact_settings`. */ contactNotices?: pulumi.Input[]>; /** * Settings for contact information linked to the `Registration`. You cannot update these with the `UpdateRegistration` method. To update these settings, use the `ConfigureContactSettings` method. */ contactSettings: pulumi.Input; /** * Settings controlling the DNS configuration of the `Registration`. You cannot update these with the `UpdateRegistration` method. To update these settings, use the `ConfigureDnsSettings` method. */ dnsSettings?: pulumi.Input; /** * Immutable. The domain name. Unicode domain names must be expressed in Punycode format. */ domainName: pulumi.Input; /** * The list of domain notices that you acknowledge. Call `RetrieveRegisterParameters` to see the notices that need acknowledgement. */ domainNotices?: pulumi.Input[]>; /** * Set of labels associated with the `Registration`. */ labels?: pulumi.Input<{ [key: string]: pulumi.Input; }>; location?: pulumi.Input; /** * Settings for management of the `Registration`, including renewal, billing, and transfer. You cannot update these with the `UpdateRegistration` method. To update these settings, use the `ConfigureManagementSettings` method. */ managementSettings?: pulumi.Input; project?: pulumi.Input; /** * When true, only validation is performed, without actually registering the domain. Follows: https://cloud.google.com/apis/design/design_patterns#request_validation */ validateOnly?: pulumi.Input; /** * Yearly price to register or renew the domain. The value that should be put here can be obtained from RetrieveRegisterParameters or SearchDomains calls. */ yearlyPrice: pulumi.Input; }