import * as pulumi from "@pulumi/pulumi";
/**
 * Application management boundary.
 *
 * To get more information about Boundary, see:
 *
 * * [API documentation](https://docs.cloud.google.com/app-hub/docs/reference/rest/v1/Boundary)
 * * How-to Guides
 *     * [AppHub](https://docs.cloud.google.com/app-hub/docs/)
 *
 * ## Example Usage
 *
 * ### Apphub Boundary Basic
 *
 * ```typescript
 * import * as pulumi from "@pulumi/pulumi";
 * import * as gcp from "@pulumi/gcp";
 *
 * const example = new gcp.apphub.Boundary("example", {
 *     location: "global",
 *     crmNode: "projects/1111111111111",
 * });
 * ```
 *
 * ## Import
 *
 * Boundary can be imported using any of these accepted formats:
 *
 * * `projects/{{project}}/locations/{{location}}/boundary`
 *
 * * `{{project}}/{{location}}`
 *
 * * `{{location}}`
 *
 * When using the `pulumi import` command, Boundary can be imported using one of the formats above. For example:
 *
 * ```sh
 * $ pulumi import gcp:apphub/boundary:Boundary default projects/{{project}}/locations/{{location}}/boundary
 * ```
 *
 * ```sh
 * $ pulumi import gcp:apphub/boundary:Boundary default {{project}}/{{location}}
 * ```
 *
 * ```sh
 * $ pulumi import gcp:apphub/boundary:Boundary default {{location}}
 * ```
 */
export declare class Boundary extends pulumi.CustomResource {
    /**
     * Get an existing Boundary 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?: BoundaryState, opts?: pulumi.CustomResourceOptions): Boundary;
    /**
     * Returns true if the given object is an instance of Boundary.  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 Boundary;
    /**
     * Create time.
     */
    readonly createTime: pulumi.Output<string>;
    /**
     * Optional. The resource name of the CRM node being attached to the
     * boundary.
     * Format: `projects/{project-number}`
     */
    readonly crmNode: pulumi.Output<string | undefined>;
    /**
     * The location for the Boundary resource. Must be global.
     */
    readonly location: pulumi.Output<string>;
    /**
     * Identifier. The resource name of the boundary.
     * Format: "projects/{project}/locations/{{location}}/boundary"
     */
    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>;
    /**
     * Boundary type.
     */
    readonly type: pulumi.Output<string>;
    /**
     * Update time.
     */
    readonly updateTime: pulumi.Output<string>;
    /**
     * Create a Boundary 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: BoundaryArgs, opts?: pulumi.CustomResourceOptions);
}
/**
 * Input properties used for looking up and filtering Boundary resources.
 */
export interface BoundaryState {
    /**
     * Create time.
     */
    createTime?: pulumi.Input<string>;
    /**
     * Optional. The resource name of the CRM node being attached to the
     * boundary.
     * Format: `projects/{project-number}`
     */
    crmNode?: pulumi.Input<string>;
    /**
     * The location for the Boundary resource. Must be global.
     */
    location?: pulumi.Input<string>;
    /**
     * Identifier. The resource name of the boundary.
     * Format: "projects/{project}/locations/{{location}}/boundary"
     */
    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>;
    /**
     * Boundary type.
     */
    type?: pulumi.Input<string>;
    /**
     * Update time.
     */
    updateTime?: pulumi.Input<string>;
}
/**
 * The set of arguments for constructing a Boundary resource.
 */
export interface BoundaryArgs {
    /**
     * Optional. The resource name of the CRM node being attached to the
     * boundary.
     * Format: `projects/{project-number}`
     */
    crmNode?: pulumi.Input<string>;
    /**
     * The location for the Boundary resource. Must be global.
     */
    location: 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>;
}
