import * as pulumi from "@pulumi/pulumi"; import * as inputs from "../types/input"; import * as outputs from "../types/output"; /** * Model Armor floor settings define rules that dictate minimum requirements for all Model Armor templates created at a specific point in the Google Cloud resource hierarchy (that is, at an organization, folder, or project level). If there are * multiple floor settings that conflict with each other, the settings lower in the resource hierarchy take precedence * For more information, checkout https://cloud.google.com/security-command-center/docs/model_armor_floor_settings * * ## Example Usage * * ### Modelarmor Floorsetting Basic * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as gcp from "@pulumi/gcp"; * * const floorsetting_basic = new gcp.modelarmor.Floorsetting("floorsetting-basic", { * parent: "projects/my-project-name", * location: "global", * filterConfig: {}, * }); * ``` * ### Modelarmor Floorsetting Filter Config * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as gcp from "@pulumi/gcp"; * * const floorsetting_filter_config = new gcp.modelarmor.Floorsetting("floorsetting-filter-config", { * location: "global", * parent: "project/my-project-name", * filterConfig: { * raiSettings: { * raiFilters: [{ * filterType: "DANGEROUS", * confidenceLevel: "MEDIUM_AND_ABOVE", * }], * }, * sdpSettings: { * basicConfig: { * filterEnforcement: "ENABLED", * }, * }, * piAndJailbreakFilterSettings: { * filterEnforcement: "ENABLED", * confidenceLevel: "HIGH", * }, * maliciousUriFilterSettings: { * filterEnforcement: "ENABLED", * }, * }, * enableFloorSettingEnforcement: true, * }); * ``` * ### Modelarmor Floorsetting Ai Platform Metadata * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as gcp from "@pulumi/gcp"; * * const floorsetting_integrated_metadata = new gcp.modelarmor.Floorsetting("floorsetting-integrated-metadata", { * location: "global", * parent: "projects/my-project-name", * filterConfig: {}, * enableFloorSettingEnforcement: false, * aiPlatformFloorSetting: { * inspectOnly: true, * enableCloudLogging: true, * }, * floorSettingMetadata: { * multiLanguageDetection: { * enableMultiLanguageDetection: false, * }, * }, * }); * ``` * * ## Import * * Floorsetting can be imported using any of these accepted formats: * * * `{{parent}}/locations/{{location}}/floorSetting` * * `{{parent}}/{{location}}` * * When using the `pulumi import` command, Floorsetting can be imported using one of the formats above. For example: * * ```sh * $ pulumi import gcp:modelarmor/floorsetting:Floorsetting default {{parent}}/locations/{{location}}/floorSetting * $ pulumi import gcp:modelarmor/floorsetting:Floorsetting default {{parent}}/{{location}} * ``` */ export declare class Floorsetting extends pulumi.CustomResource { /** * Get an existing Floorsetting 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?: FloorsettingState, opts?: pulumi.CustomResourceOptions): Floorsetting; /** * Returns true if the given object is an instance of Floorsetting. 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 Floorsetting; /** * AI Platform floor setting. * Structure is documented below. */ readonly aiPlatformFloorSetting: pulumi.Output; /** * [Output only] Create timestamp */ readonly createTime: pulumi.Output; /** * Floor Settings enforcement status. */ readonly enableFloorSettingEnforcement: pulumi.Output; /** * Filters configuration. * Structure is documented below. */ readonly filterConfig: pulumi.Output; /** * Metadata to enable multi language detection via floor setting. * Structure is documented below. */ readonly floorSettingMetadata: pulumi.Output; /** * Google MCP Server floor setting. * Structure is documented below. */ readonly googleMcpServerFloorSetting: pulumi.Output; /** * List of integrated services for which the floor setting is applicable. */ readonly integratedServices: pulumi.Output; /** * Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. */ readonly location: pulumi.Output; /** * Identifier. The resource name. */ readonly name: pulumi.Output; /** * Will be any one of these: * * `projects/{project}` * * `folders/{folder}` * * `organizations/{organizationId}` */ readonly parent: pulumi.Output; /** * [Output only] Update timestamp */ readonly updateTime: pulumi.Output; /** * Create a Floorsetting 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: FloorsettingArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering Floorsetting resources. */ export interface FloorsettingState { /** * AI Platform floor setting. * Structure is documented below. */ aiPlatformFloorSetting?: pulumi.Input; /** * [Output only] Create timestamp */ createTime?: pulumi.Input; /** * Floor Settings enforcement status. */ enableFloorSettingEnforcement?: pulumi.Input; /** * Filters configuration. * Structure is documented below. */ filterConfig?: pulumi.Input; /** * Metadata to enable multi language detection via floor setting. * Structure is documented below. */ floorSettingMetadata?: pulumi.Input; /** * Google MCP Server floor setting. * Structure is documented below. */ googleMcpServerFloorSetting?: pulumi.Input; /** * List of integrated services for which the floor setting is applicable. */ integratedServices?: pulumi.Input[]>; /** * Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. */ location?: pulumi.Input; /** * Identifier. The resource name. */ name?: pulumi.Input; /** * Will be any one of these: * * `projects/{project}` * * `folders/{folder}` * * `organizations/{organizationId}` */ parent?: pulumi.Input; /** * [Output only] Update timestamp */ updateTime?: pulumi.Input; } /** * The set of arguments for constructing a Floorsetting resource. */ export interface FloorsettingArgs { /** * AI Platform floor setting. * Structure is documented below. */ aiPlatformFloorSetting?: pulumi.Input; /** * Floor Settings enforcement status. */ enableFloorSettingEnforcement?: pulumi.Input; /** * Filters configuration. * Structure is documented below. */ filterConfig: pulumi.Input; /** * Metadata to enable multi language detection via floor setting. * Structure is documented below. */ floorSettingMetadata?: pulumi.Input; /** * Google MCP Server floor setting. * Structure is documented below. */ googleMcpServerFloorSetting?: pulumi.Input; /** * List of integrated services for which the floor setting is applicable. */ integratedServices?: pulumi.Input[]>; /** * Resource ID segment making up resource `name`. It identifies the resource within its parent collection as described in https://google.aip.dev/122. */ location: pulumi.Input; /** * Will be any one of these: * * `projects/{project}` * * `folders/{folder}` * * `organizations/{organizationId}` */ parent: pulumi.Input; }