import * as pulumi from "@pulumi/pulumi"; import * as outputs from "../../types/output"; /** * Gets a Control. */ export declare function getControl(args: GetControlArgs, opts?: pulumi.InvokeOptions): Promise; export interface GetControlArgs { catalogId: string; controlId: string; location: string; project?: string; } export interface GetControlResult { /** * 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: string[]; /** * 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: string; /** * 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: outputs.retail.v2alpha.GoogleCloudRetailV2alphaSearchRequestFacetSpecResponse; /** * Immutable. Fully qualified name `projects/*/locations/global/catalogs/*/controls/*` */ readonly name: string; /** * 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: outputs.retail.v2alpha.GoogleCloudRetailV2alphaRuleResponse; /** * 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: string[]; /** * 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: string[]; } /** * Gets a Control. */ export declare function getControlOutput(args: GetControlOutputArgs, opts?: pulumi.InvokeOptions): pulumi.Output; export interface GetControlOutputArgs { catalogId: pulumi.Input; controlId: pulumi.Input; location: pulumi.Input; project?: pulumi.Input; }