import * as pulumi from "@pulumi/pulumi";
/**
* Use this resource to manage resource distribution pool records in UltraDNS
*
* ## Example Usage
* ### Create RD pool record of type A (1)
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as ultradns from "@pulumi/ultradns";
*
* const rdPool = new ultradns.RdPool("a", {
* order: "RANDOM",
* ownerName: "a",
* recordDatas: ["192.168.1.1"],
* recordType: "1",
* ttl: 120,
* zoneName: "example.com.",
* });
* ```
* ### Create RD pool record of type AAAA (28)
*
* ```typescript
* import * as pulumi from "@pulumi/pulumi";
* import * as ultradns from "@pulumi/ultradns";
*
* const aaaa = new ultradns.RdPool("aaaa", {
* order: "ROUND_ROBIN",
* ownerName: "aaaa",
* recordDatas: ["2001:db8:85a3:0:0:8a2e:370:7334"],
* recordType: "AAAA",
* ttl: 120,
* zoneName: "example.com.",
* });
* ```
*
* ## Import
*
* Resource Distribution (RD) pool records can be imported by combining their `owner_name`, `zone_name`, and `record_type`, separated by a colon.
Example `www.example.com.:example.com.:A (1)`. -> For import, the `owner_name` and `zone_name` must be a FQDN, and `record_type` should have the type as well as the corresponding number as shown in the example above. Exampleterraform
*
* ```sh
* $ pulumi import ultradns:index/rdPool:RdPool example "www.example.com.:example.com.:A (1)"
* ```
*/
export declare class RdPool extends pulumi.CustomResource {
/**
* Get an existing RdPool 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?: RdPoolState, opts?: pulumi.CustomResourceOptions): RdPool;
/**
* Returns true if the given object is an instance of RdPool. 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 RdPool;
/**
* (String) An optional description of the RD pool.
*/
readonly description: pulumi.Output;
/**
* (String) The order of the records will be returned in. Valid values are `FIXED`, `RANDOM`, `ROUND_ROBIN`.
*/
readonly order: pulumi.Output;
/**
* (String) The domain name of the owner of the RRSet. Can be either a fully qualified domain name (FQDN) or a relative domain name. If provided as a FQDN, it must be contained within the zone name's FQDN.
*/
readonly ownerName: pulumi.Output;
/**
* (String List) The list of IPv4 or IPv6 addresses.
*/
readonly recordDatas: pulumi.Output;
/**
* (String) Must be formatted as the well-known resource record type (A or AAAA) or the corresponding number for the type (1 or 28).
* Below are the supported resource record types with the corresponding number::
* `A (1)`
* `AAAA (28)`
*/
readonly recordType: pulumi.Output;
/**
* (Integer) The time to live (in seconds) for the record. Must be a value between 0 and 2147483647, inclusive.
*/
readonly ttl: pulumi.Output;
/**
* (String) Name of the zone.
*/
readonly zoneName: pulumi.Output;
/**
* Create a RdPool 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: RdPoolArgs, opts?: pulumi.CustomResourceOptions);
}
/**
* Input properties used for looking up and filtering RdPool resources.
*/
export interface RdPoolState {
/**
* (String) An optional description of the RD pool.
*/
description?: pulumi.Input;
/**
* (String) The order of the records will be returned in. Valid values are `FIXED`, `RANDOM`, `ROUND_ROBIN`.
*/
order?: pulumi.Input;
/**
* (String) The domain name of the owner of the RRSet. Can be either a fully qualified domain name (FQDN) or a relative domain name. If provided as a FQDN, it must be contained within the zone name's FQDN.
*/
ownerName?: pulumi.Input;
/**
* (String List) The list of IPv4 or IPv6 addresses.
*/
recordDatas?: pulumi.Input[]>;
/**
* (String) Must be formatted as the well-known resource record type (A or AAAA) or the corresponding number for the type (1 or 28).
* Below are the supported resource record types with the corresponding number::
* `A (1)`
* `AAAA (28)`
*/
recordType?: pulumi.Input;
/**
* (Integer) The time to live (in seconds) for the record. Must be a value between 0 and 2147483647, inclusive.
*/
ttl?: pulumi.Input;
/**
* (String) Name of the zone.
*/
zoneName?: pulumi.Input;
}
/**
* The set of arguments for constructing a RdPool resource.
*/
export interface RdPoolArgs {
/**
* (String) An optional description of the RD pool.
*/
description?: pulumi.Input;
/**
* (String) The order of the records will be returned in. Valid values are `FIXED`, `RANDOM`, `ROUND_ROBIN`.
*/
order: pulumi.Input;
/**
* (String) The domain name of the owner of the RRSet. Can be either a fully qualified domain name (FQDN) or a relative domain name. If provided as a FQDN, it must be contained within the zone name's FQDN.
*/
ownerName: pulumi.Input;
/**
* (String List) The list of IPv4 or IPv6 addresses.
*/
recordDatas: pulumi.Input[]>;
/**
* (String) Must be formatted as the well-known resource record type (A or AAAA) or the corresponding number for the type (1 or 28).
* Below are the supported resource record types with the corresponding number::
* `A (1)`
* `AAAA (28)`
*/
recordType: pulumi.Input;
/**
* (Integer) The time to live (in seconds) for the record. Must be a value between 0 and 2147483647, inclusive.
*/
ttl?: pulumi.Input;
/**
* (String) Name of the zone.
*/
zoneName: pulumi.Input;
}