import * as pulumi from "@pulumi/pulumi";
/**
 * A `Site` represents a Firebase Hosting site.
 *
 * To get more information about Site, see:
 *
 * * [API documentation](https://firebase.google.com/docs/reference/hosting/rest/v1beta1/projects.sites)
 * * How-to Guides
 *     * [Official Documentation](https://firebase.google.com/docs/hosting)
 *
 * ## Example Usage
 *
 * ### Firebasehosting Site Basic
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as gcp from "@pulumi/gcp";
 *
 * const _default = new gcp.firebase.HostingSite("default", {
 *     project: "my-project-name",
 *     siteId: "site-no-app",
 * });
 * ```
 * ### Firebasehosting Site Full
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as gcp from "@pulumi/gcp";
 *
 * const _default = new gcp.firebase.WebApp("default", {
 *     project: "my-project-name",
 *     displayName: "Test web app for Firebase Hosting",
 * });
 * const full = new gcp.firebase.HostingSite("full", {
 *     project: "my-project-name",
 *     siteId: "site-with-app",
 *     appId: _default.appId,
 * });
 * ```
 * ### Firebasehosting Site Default
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as gcp from "@pulumi/gcp";
 *
 * const _default = new gcp.firebase.HostingSite("default", {
 *     project: "my-project-name",
 *     siteId: "my-project-name",
 * });
 * ```
 *
 * ## Import
 *
 * Site can be imported using any of these accepted formats:
 *
 * * `projects/{{project}}/sites/{{site_id}}`
 *
 * * `{{project}}/{{site_id}}`
 *
 * * `sites/{{site_id}}`
 *
 * * `{{site_id}}`
 *
 * When using the `pulumi import` command, Site can be imported using one of the formats above. For example:
 *
 * ```sh
 * $ pulumi import gcp:firebase/hostingSite:HostingSite default projects/{{project}}/sites/{{site_id}}
 * ```
 *
 * ```sh
 * $ pulumi import gcp:firebase/hostingSite:HostingSite default {{project}}/{{site_id}}
 * ```
 *
 * ```sh
 * $ pulumi import gcp:firebase/hostingSite:HostingSite default sites/{{site_id}}
 * ```
 *
 * ```sh
 * $ pulumi import gcp:firebase/hostingSite:HostingSite default {{site_id}}
 * ```
 */
export declare class HostingSite extends pulumi.CustomResource {
    /**
     * Get an existing HostingSite 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<pulumi.ID>, state?: HostingSiteState, opts?: pulumi.CustomResourceOptions): HostingSite;
    /**
     * Returns true if the given object is an instance of HostingSite.  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 HostingSite;
    /**
     * Optional. The [ID of a Web App](https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/projects.webApps#WebApp.FIELDS.app_id)
     * associated with the Hosting site.
     */
    readonly appId: pulumi.Output<string | undefined>;
    /**
     * The default URL for the site in the form of https://{name}.web.app
     */
    readonly defaultUrl: pulumi.Output<string>;
    /**
     * Output only. The fully-qualified resource name of the Hosting site, in
     * the format: projects/PROJECT_IDENTIFIER/sites/SITE_ID PROJECT_IDENTIFIER: the
     * Firebase project's
     * [`ProjectNumber`](https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/projects#FirebaseProject.FIELDS.project_number) ***(recommended)*** or its
     * [`ProjectId`](https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/projects#FirebaseProject.FIELDS.project_id).
     * Learn more about using project identifiers in Google's
     * [AIP 2510 standard](https://google.aip.dev/cloud/2510).
     */
    readonly name: pulumi.Output<string>;
    /**
     * The ID of the project in which the resource belongs.
     * If it is not provided, the provider project is used.
     */
    readonly project: pulumi.Output<string>;
    /**
     * Required. Immutable. A globally unique identifier for the Hosting site. This identifier is
     * used to construct the Firebase-provisioned subdomains for the site, so it must also be a valid
     * domain name label.
     */
    readonly siteId: pulumi.Output<string | undefined>;
    /**
     * The type of Hosting site, either 'DEFAULT_SITE' or `USER_SITE`
     */
    readonly type: pulumi.Output<string>;
    /**
     * Create a HostingSite 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?: HostingSiteArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * Input properties used for looking up and filtering HostingSite resources.
 */
export interface HostingSiteState {
    /**
     * Optional. The [ID of a Web App](https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/projects.webApps#WebApp.FIELDS.app_id)
     * associated with the Hosting site.
     */
    appId?: pulumi.Input<string>;
    /**
     * The default URL for the site in the form of https://{name}.web.app
     */
    defaultUrl?: pulumi.Input<string>;
    /**
     * Output only. The fully-qualified resource name of the Hosting site, in
     * the format: projects/PROJECT_IDENTIFIER/sites/SITE_ID PROJECT_IDENTIFIER: the
     * Firebase project's
     * [`ProjectNumber`](https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/projects#FirebaseProject.FIELDS.project_number) ***(recommended)*** or its
     * [`ProjectId`](https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/projects#FirebaseProject.FIELDS.project_id).
     * Learn more about using project identifiers in Google's
     * [AIP 2510 standard](https://google.aip.dev/cloud/2510).
     */
    name?: pulumi.Input<string>;
    /**
     * The ID of the project in which the resource belongs.
     * If it is not provided, the provider project is used.
     */
    project?: pulumi.Input<string>;
    /**
     * Required. Immutable. A globally unique identifier for the Hosting site. This identifier is
     * used to construct the Firebase-provisioned subdomains for the site, so it must also be a valid
     * domain name label.
     */
    siteId?: pulumi.Input<string>;
    /**
     * The type of Hosting site, either 'DEFAULT_SITE' or `USER_SITE`
     */
    type?: pulumi.Input<string>;
}
/**
 * The set of arguments for constructing a HostingSite resource.
 */
export interface HostingSiteArgs {
    /**
     * Optional. The [ID of a Web App](https://firebase.google.com/docs/reference/firebase-management/rest/v1beta1/projects.webApps#WebApp.FIELDS.app_id)
     * associated with the Hosting site.
     */
    appId?: pulumi.Input<string>;
    /**
     * The ID of the project in which the resource belongs.
     * If it is not provided, the provider project is used.
     */
    project?: pulumi.Input<string>;
    /**
     * Required. Immutable. A globally unique identifier for the Hosting site. This identifier is
     * used to construct the Firebase-provisioned subdomains for the site, so it must also be a valid
     * domain name label.
     */
    siteId?: pulumi.Input<string>;
}
