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 cloudflare from "@pulumi/cloudflare"; * * const exampleZeroTrustDnsLocation = new cloudflare.ZeroTrustDnsLocation("example_zero_trust_dns_location", { * accountId: "699d98642c564d2e855e9661899b7252", * name: "Austin Office Location", * clientDefault: false, * dnsDestinationIpsId: "0e4a32c6-6fb8-4858-9296-98f51631e8e6", * ecsSupport: false, * endpoints: { * doh: { * enabled: true, * networks: [{ * network: "2001:85a3::/64", * }], * requireToken: true, * }, * dot: { * enabled: true, * networks: [{ * network: "2001:85a3::/64", * }], * }, * ipv4: { * enabled: true, * }, * ipv6: { * enabled: true, * networks: [{ * network: "2001:85a3::/64", * }], * }, * }, * networks: [{ * network: "192.0.2.1/32", * }], * }); * ``` * * ## Import * * ```sh * $ pulumi import cloudflare:index/zeroTrustDnsLocation:ZeroTrustDnsLocation example '/' * ``` */ export declare class ZeroTrustDnsLocation extends pulumi.CustomResource { /** * Get an existing ZeroTrustDnsLocation 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?: ZeroTrustDnsLocationState, opts?: pulumi.CustomResourceOptions): ZeroTrustDnsLocation; /** * Returns true if the given object is an instance of ZeroTrustDnsLocation. 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 ZeroTrustDnsLocation; readonly accountId: pulumi.Output; /** * Indicate whether this location is the default location. */ readonly clientDefault: pulumi.Output; readonly createdAt: pulumi.Output; /** * Specify the identifier of the pair of IPv4 addresses assigned to this location. When creating a location, if this field is absent or set to null, the pair of shared IPv4 addresses (0e4a32c6-6fb8-4858-9296-98f51631e8e6) is auto-assigned. When updating a location, if this field is absent or set to null, the pre-assigned pair remains unchanged. */ readonly dnsDestinationIpsId: pulumi.Output; /** * Specify the UUID of the IPv6 block brought to the gateway so that this location's IPv6 address is allocated from the Bring Your Own IPv6 (BYOIPv6) block rather than the standard Cloudflare IPv6 block. */ readonly dnsDestinationIpv6BlockId: pulumi.Output; /** * Specify the DNS over HTTPS domain that receives DNS requests. Gateway automatically generates this value. */ readonly dohSubdomain: pulumi.Output; /** * Indicate whether the location must resolve EDNS queries. */ readonly ecsSupport: pulumi.Output; /** * Configure the destination endpoints for this location. */ readonly endpoints: pulumi.Output; /** * Defines the automatically generated IPv6 destination IP assigned to this location. Gateway counts all DNS requests sent to this IP as requests under this location. */ readonly ip: pulumi.Output; /** * Show the primary destination IPv4 address from the pair identified dns*destination*ips_id. This field read-only. */ readonly ipv4Destination: pulumi.Output; /** * Show the backup destination IPv4 address from the pair identified dns*destination*ips_id. This field read-only. */ readonly ipv4DestinationBackup: pulumi.Output; /** * Specify the location name. */ readonly name: pulumi.Output; /** * Specify the list of network ranges from which requests at this location originate. The list takes effect only if it is non-empty and the IPv4 endpoint is enabled for this location. */ readonly networks: pulumi.Output; readonly updatedAt: pulumi.Output; /** * Create a ZeroTrustDnsLocation 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: ZeroTrustDnsLocationArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering ZeroTrustDnsLocation resources. */ export interface ZeroTrustDnsLocationState { accountId?: pulumi.Input; /** * Indicate whether this location is the default location. */ clientDefault?: pulumi.Input; createdAt?: pulumi.Input; /** * Specify the identifier of the pair of IPv4 addresses assigned to this location. When creating a location, if this field is absent or set to null, the pair of shared IPv4 addresses (0e4a32c6-6fb8-4858-9296-98f51631e8e6) is auto-assigned. When updating a location, if this field is absent or set to null, the pre-assigned pair remains unchanged. */ dnsDestinationIpsId?: pulumi.Input; /** * Specify the UUID of the IPv6 block brought to the gateway so that this location's IPv6 address is allocated from the Bring Your Own IPv6 (BYOIPv6) block rather than the standard Cloudflare IPv6 block. */ dnsDestinationIpv6BlockId?: pulumi.Input; /** * Specify the DNS over HTTPS domain that receives DNS requests. Gateway automatically generates this value. */ dohSubdomain?: pulumi.Input; /** * Indicate whether the location must resolve EDNS queries. */ ecsSupport?: pulumi.Input; /** * Configure the destination endpoints for this location. */ endpoints?: pulumi.Input; /** * Defines the automatically generated IPv6 destination IP assigned to this location. Gateway counts all DNS requests sent to this IP as requests under this location. */ ip?: pulumi.Input; /** * Show the primary destination IPv4 address from the pair identified dns*destination*ips_id. This field read-only. */ ipv4Destination?: pulumi.Input; /** * Show the backup destination IPv4 address from the pair identified dns*destination*ips_id. This field read-only. */ ipv4DestinationBackup?: pulumi.Input; /** * Specify the location name. */ name?: pulumi.Input; /** * Specify the list of network ranges from which requests at this location originate. The list takes effect only if it is non-empty and the IPv4 endpoint is enabled for this location. */ networks?: pulumi.Input[]>; updatedAt?: pulumi.Input; } /** * The set of arguments for constructing a ZeroTrustDnsLocation resource. */ export interface ZeroTrustDnsLocationArgs { accountId: pulumi.Input; /** * Indicate whether this location is the default location. */ clientDefault?: pulumi.Input; /** * Specify the identifier of the pair of IPv4 addresses assigned to this location. When creating a location, if this field is absent or set to null, the pair of shared IPv4 addresses (0e4a32c6-6fb8-4858-9296-98f51631e8e6) is auto-assigned. When updating a location, if this field is absent or set to null, the pre-assigned pair remains unchanged. */ dnsDestinationIpsId?: pulumi.Input; /** * Indicate whether the location must resolve EDNS queries. */ ecsSupport?: pulumi.Input; /** * Configure the destination endpoints for this location. */ endpoints?: pulumi.Input; /** * Specify the location name. */ name: pulumi.Input; /** * Specify the list of network ranges from which requests at this location originate. The list takes effect only if it is non-empty and the IPv4 endpoint is enabled for this location. */ networks?: pulumi.Input[]>; }