import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../../types/input"; import * as outputs from "../../types/output"; import * as enums from "../../types/enums"; /** * Creates a Control. If the Control to create already exists, an ALREADY_EXISTS error is returned. * Auto-naming is currently not supported for this resource. */ export declare class Control extends pulumi.CustomResource { /** * Get an existing Control 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 opts Optional settings to control the behavior of the CustomResource. */ static get(name: string, id: pulumi.Input, opts?: pulumi.CustomResourceOptions): Control; /** * Returns true if the given object is an instance of Control. 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 Control; /** * List of serving config ids that are associated with this control in the same Catalog. Note the association is managed via the ServingConfig, this is an output only denormalized view. */ readonly associatedServingConfigIds: pulumi.Output; readonly catalogId: pulumi.Output; /** * Required. The ID to use for the Control, which will become the final component of the Control's resource name. This value should be 4-63 characters, and valid characters are /a-z-_/. */ readonly controlId: pulumi.Output; /** * The human readable control display name. Used in Retail UI. This field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT error is thrown. */ readonly displayName: pulumi.Output; /** * A facet specification to perform faceted search. Note that this field is deprecated and will throw NOT_IMPLEMENTED if used for creating a control. */ readonly facetSpec: pulumi.Output; readonly location: pulumi.Output; /** * Immutable. Fully qualified name `projects/*/locations/global/catalogs/*/controls/*` */ readonly name: pulumi.Output; readonly project: pulumi.Output; /** * A rule control - a condition-action pair. Enacts a set action when the condition is triggered. For example: Boost "gShoe" when query full matches "Running Shoes". */ readonly rule: pulumi.Output; /** * Specifies the use case for the control. Affects what condition fields can be set. Only settable by search controls. Will default to SEARCH_SOLUTION_USE_CASE_SEARCH if not specified. Currently only allow one search_solution_use_case per control. */ readonly searchSolutionUseCase: pulumi.Output; /** * Immutable. The solution types that the control is used for. Currently we support setting only one type of solution at creation time. Only `SOLUTION_TYPE_SEARCH` value is supported at the moment. If no solution type is provided at creation time, will default to SOLUTION_TYPE_SEARCH. */ readonly solutionTypes: pulumi.Output; /** * Create a Control 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: ControlArgs, opts?: pulumi.CustomResourceOptions); } /** * The set of arguments for constructing a Control resource. */ export interface ControlArgs { catalogId: pulumi.Input; /** * Required. The ID to use for the Control, which will become the final component of the Control's resource name. This value should be 4-63 characters, and valid characters are /a-z-_/. */ controlId: pulumi.Input; /** * The human readable control display name. Used in Retail UI. This field must be a UTF-8 encoded string with a length limit of 128 characters. Otherwise, an INVALID_ARGUMENT error is thrown. */ displayName: pulumi.Input; /** * A facet specification to perform faceted search. Note that this field is deprecated and will throw NOT_IMPLEMENTED if used for creating a control. */ facetSpec?: pulumi.Input; location?: pulumi.Input; /** * Immutable. Fully qualified name `projects/*/locations/global/catalogs/*/controls/*` */ name?: pulumi.Input; project?: pulumi.Input; /** * A rule control - a condition-action pair. Enacts a set action when the condition is triggered. For example: Boost "gShoe" when query full matches "Running Shoes". */ rule?: pulumi.Input; /** * Specifies the use case for the control. Affects what condition fields can be set. Only settable by search controls. Will default to SEARCH_SOLUTION_USE_CASE_SEARCH if not specified. Currently only allow one search_solution_use_case per control. */ searchSolutionUseCase?: pulumi.Input[]>; /** * Immutable. The solution types that the control is used for. Currently we support setting only one type of solution at creation time. Only `SOLUTION_TYPE_SEARCH` value is supported at the moment. If no solution type is provided at creation time, will default to SOLUTION_TYPE_SEARCH. */ solutionTypes: pulumi.Input[]>; }