import * as pulumi from "@pulumi/pulumi"; import { input as inputs, output as outputs } from "./types"; /** * Provides a Cloudflare custom hostname (also known as SSL for SaaS) resource. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as cloudflare from "@pulumi/cloudflare"; * * const exampleHostname = new cloudflare.CustomHostname("example_hostname", { * hostname: "hostname.example.com", * ssls: [{ * method: "txt", * }], * zoneId: "d41d8cd98f00b204e9800998ecf8427e", * }); * ``` * * ## Import * * Custom hostname certificates can be imported using a composite ID formed of the zone ID and [hostname ID](https://api.cloudflare.com/#custom-hostname-for-a-zone-properties), separated by a "/" e.g. * * ```sh * $ pulumi import cloudflare:index/customHostname:CustomHostname example d41d8cd98f00b204e9800998ecf8427e/0d89c70d-ad9f-4843-b99f-6cc0252067e9 * ``` */ export declare class CustomHostname extends pulumi.CustomResource { /** * Get an existing CustomHostname 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?: CustomHostnameState, opts?: pulumi.CustomResourceOptions): CustomHostname; /** * Returns true if the given object is an instance of CustomHostname. 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 CustomHostname; /** * The custom origin server used for certificates. */ readonly customOriginServer: pulumi.Output; /** * The [custom origin SNI](https://developers.cloudflare.com/ssl/ssl-for-saas/hostname-specific-behavior/custom-origin) used for certificates. */ readonly customOriginSni: pulumi.Output; /** * Hostname you intend to request a certificate for. */ readonly hostname: pulumi.Output; readonly ownershipVerification: pulumi.Output<{ [key: string]: string; }>; readonly ownershipVerificationHttp: pulumi.Output<{ [key: string]: string; }>; /** * SSL configuration of the certificate. See further notes below. */ readonly ssls: pulumi.Output; readonly status: pulumi.Output; /** * The DNS zone ID where the custom hostname should be assigned. */ readonly zoneId: pulumi.Output; /** * Create a CustomHostname 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: CustomHostnameArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering CustomHostname resources. */ export interface CustomHostnameState { /** * The custom origin server used for certificates. */ customOriginServer?: pulumi.Input; /** * The [custom origin SNI](https://developers.cloudflare.com/ssl/ssl-for-saas/hostname-specific-behavior/custom-origin) used for certificates. */ customOriginSni?: pulumi.Input; /** * Hostname you intend to request a certificate for. */ hostname?: pulumi.Input; ownershipVerification?: pulumi.Input<{ [key: string]: pulumi.Input; }>; ownershipVerificationHttp?: pulumi.Input<{ [key: string]: pulumi.Input; }>; /** * SSL configuration of the certificate. See further notes below. */ ssls?: pulumi.Input[]>; status?: pulumi.Input; /** * The DNS zone ID where the custom hostname should be assigned. */ zoneId?: pulumi.Input; } /** * The set of arguments for constructing a CustomHostname resource. */ export interface CustomHostnameArgs { /** * The custom origin server used for certificates. */ customOriginServer?: pulumi.Input; /** * The [custom origin SNI](https://developers.cloudflare.com/ssl/ssl-for-saas/hostname-specific-behavior/custom-origin) used for certificates. */ customOriginSni?: pulumi.Input; /** * Hostname you intend to request a certificate for. */ hostname: pulumi.Input; /** * SSL configuration of the certificate. See further notes below. */ ssls?: pulumi.Input[]>; /** * The DNS zone ID where the custom hostname should be assigned. */ zoneId: pulumi.Input; }