import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * License Configuration. * * To get more information about LicenseConfig, see: * * * [API documentation](https://cloud.google.com/generative-ai-app-builder/docs/reference/rest/v1/projects.locations.licenseConfigs) * * ## Example Usage * * ### Discoveryengine Licenseconfig Basic * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as gcp from "@pulumi/gcp"; * * const basic = new gcp.discoveryengine.LicenseConfig("basic", { * location: "global", * licenseConfigId: "license-config-id", * licenseCount: 50, * subscriptionTier: "SUBSCRIPTION_TIER_SEARCH_AND_ASSISTANT", * startDate: { * year: 2099, * month: 1, * day: 1, * }, * endDate: { * year: 2100, * month: 1, * day: 1, * }, * subscriptionTerm: "SUBSCRIPTION_TERM_ONE_YEAR", * }); * ``` * * ## Import * * LicenseConfig can be imported using any of these accepted formats: * * * `projects/{{project}}/locations/{{location}}/licenseConfigs/{{license_config_id}}` * * * `{{project}}/{{location}}/{{license_config_id}}` * * * `{{location}}/{{license_config_id}}` * * When using the `pulumi import` command, LicenseConfig can be imported using one of the formats above. For example: * * ```sh * $ pulumi import gcp:discoveryengine/licenseConfig:LicenseConfig default projects/{{project}}/locations/{{location}}/licenseConfigs/{{license_config_id}} * ``` * * ```sh * $ pulumi import gcp:discoveryengine/licenseConfig:LicenseConfig default {{project}}/{{location}}/{{license_config_id}} * ``` * * ```sh * $ pulumi import gcp:discoveryengine/licenseConfig:LicenseConfig default {{location}}/{{license_config_id}} * ``` */ export declare class LicenseConfig extends pulumi.CustomResource { /** * Get an existing LicenseConfig 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?: LicenseConfigState, opts?: pulumi.CustomResourceOptions): LicenseConfig; /** * Returns true if the given object is an instance of LicenseConfig. 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 LicenseConfig; /** * Whether the license config should be auto renewed when it reaches the end date. */ readonly autoRenew: pulumi.Output; /** * The planned end date. * Structure is documented below. */ readonly endDate: pulumi.Output; /** * Whether the license config is for free trial. */ readonly freeTrial: pulumi.Output; /** * The unique id of the license config. */ readonly licenseConfigId: pulumi.Output; /** * Number of licenses purchased. */ readonly licenseCount: pulumi.Output; /** * The geographic location where the data store should reside. The value can * only be one of "global", "us" and "eu". */ readonly location: pulumi.Output; /** * The unique full resource name of the license config. Values are of the format * `projects/{project}/locations/{location}/licenseConfigs/{license_config}`. */ readonly name: pulumi.Output; /** * The ID of the project in which the resource belongs. * If it is not provided, the provider project is used. */ readonly project: pulumi.Output; /** * The start date. * Structure is documented below. */ readonly startDate: pulumi.Output; /** * Subscription term. * Possible values are: `SUBSCRIPTION_TERM_UNSPECIFIED`, `SUBSCRIPTION_TERM_ONE_MONTH`, `SUBSCRIPTION_TERM_ONE_YEAR`, `SUBSCRIPTION_TERM_THREE_YEARS`, `SUBSCRIPTION_TERM_THREE_MONTHS`, `SUBSCRIPTION_TERM_FOURTEEN_DAYS`, `SUBSCRIPTION_TERM_CUSTOM`. */ readonly subscriptionTerm: pulumi.Output; /** * Subscription tier information for the license config. * Possible values are: `SUBSCRIPTION_TIER_UNSPECIFIED`, `SUBSCRIPTION_TIER_SEARCH`, `SUBSCRIPTION_TIER_SEARCH_AND_ASSISTANT`, `SUBSCRIPTION_TIER_NOTEBOOK_LM`, `SUBSCRIPTION_TIER_FRONTLINE_WORKER`, `SUBSCRIPTION_TIER_AGENTSPACE_STARTER`, `SUBSCRIPTION_TIER_AGENTSPACE_BUSINESS`, `SUBSCRIPTION_TIER_ENTERPRISE`, `SUBSCRIPTION_TIER_EDU`, `SUBSCRIPTION_TIER_EDU_PRO`. */ readonly subscriptionTier: pulumi.Output; /** * Create a LicenseConfig 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: LicenseConfigArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering LicenseConfig resources. */ export interface LicenseConfigState { /** * Whether the license config should be auto renewed when it reaches the end date. */ autoRenew?: pulumi.Input; /** * The planned end date. * Structure is documented below. */ endDate?: pulumi.Input; /** * Whether the license config is for free trial. */ freeTrial?: pulumi.Input; /** * The unique id of the license config. */ licenseConfigId?: pulumi.Input; /** * Number of licenses purchased. */ licenseCount?: pulumi.Input; /** * The geographic location where the data store should reside. The value can * only be one of "global", "us" and "eu". */ location?: pulumi.Input; /** * The unique full resource name of the license config. Values are of the format * `projects/{project}/locations/{location}/licenseConfigs/{license_config}`. */ name?: pulumi.Input; /** * The ID of the project in which the resource belongs. * If it is not provided, the provider project is used. */ project?: pulumi.Input; /** * The start date. * Structure is documented below. */ startDate?: pulumi.Input; /** * Subscription term. * Possible values are: `SUBSCRIPTION_TERM_UNSPECIFIED`, `SUBSCRIPTION_TERM_ONE_MONTH`, `SUBSCRIPTION_TERM_ONE_YEAR`, `SUBSCRIPTION_TERM_THREE_YEARS`, `SUBSCRIPTION_TERM_THREE_MONTHS`, `SUBSCRIPTION_TERM_FOURTEEN_DAYS`, `SUBSCRIPTION_TERM_CUSTOM`. */ subscriptionTerm?: pulumi.Input; /** * Subscription tier information for the license config. * Possible values are: `SUBSCRIPTION_TIER_UNSPECIFIED`, `SUBSCRIPTION_TIER_SEARCH`, `SUBSCRIPTION_TIER_SEARCH_AND_ASSISTANT`, `SUBSCRIPTION_TIER_NOTEBOOK_LM`, `SUBSCRIPTION_TIER_FRONTLINE_WORKER`, `SUBSCRIPTION_TIER_AGENTSPACE_STARTER`, `SUBSCRIPTION_TIER_AGENTSPACE_BUSINESS`, `SUBSCRIPTION_TIER_ENTERPRISE`, `SUBSCRIPTION_TIER_EDU`, `SUBSCRIPTION_TIER_EDU_PRO`. */ subscriptionTier?: pulumi.Input; } /** * The set of arguments for constructing a LicenseConfig resource. */ export interface LicenseConfigArgs { /** * Whether the license config should be auto renewed when it reaches the end date. */ autoRenew?: pulumi.Input; /** * The planned end date. * Structure is documented below. */ endDate?: pulumi.Input; /** * Whether the license config is for free trial. */ freeTrial?: pulumi.Input; /** * The unique id of the license config. */ licenseConfigId: pulumi.Input; /** * Number of licenses purchased. */ licenseCount: pulumi.Input; /** * The geographic location where the data store should reside. The value can * only be one of "global", "us" and "eu". */ location: pulumi.Input; /** * The ID of the project in which the resource belongs. * If it is not provided, the provider project is used. */ project?: pulumi.Input; /** * The start date. * Structure is documented below. */ startDate: pulumi.Input; /** * Subscription term. * Possible values are: `SUBSCRIPTION_TERM_UNSPECIFIED`, `SUBSCRIPTION_TERM_ONE_MONTH`, `SUBSCRIPTION_TERM_ONE_YEAR`, `SUBSCRIPTION_TERM_THREE_YEARS`, `SUBSCRIPTION_TERM_THREE_MONTHS`, `SUBSCRIPTION_TERM_FOURTEEN_DAYS`, `SUBSCRIPTION_TERM_CUSTOM`. */ subscriptionTerm: pulumi.Input; /** * Subscription tier information for the license config. * Possible values are: `SUBSCRIPTION_TIER_UNSPECIFIED`, `SUBSCRIPTION_TIER_SEARCH`, `SUBSCRIPTION_TIER_SEARCH_AND_ASSISTANT`, `SUBSCRIPTION_TIER_NOTEBOOK_LM`, `SUBSCRIPTION_TIER_FRONTLINE_WORKER`, `SUBSCRIPTION_TIER_AGENTSPACE_STARTER`, `SUBSCRIPTION_TIER_AGENTSPACE_BUSINESS`, `SUBSCRIPTION_TIER_ENTERPRISE`, `SUBSCRIPTION_TIER_EDU`, `SUBSCRIPTION_TIER_EDU_PRO`. */ subscriptionTier: pulumi.Input; }