import * as pulumi from "@pulumi/pulumi"; import { input as inputs, output as outputs } from "./types"; /** * Provides a Cloudflare Device Posture Rule resource. Device posture rules configure security policies for device posture checks. * * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as pulumi_cloudflare from "@mapped/pulumi-cloudflare"; * * const corporateDevicesPostureRule = new cloudflare.DevicePostureRule("corporateDevicesPostureRule", { * accountId: "1d5fdc9e88c8a8c4518b068cd94331fe", * name: "Corporate devices posture rule", * type: "serial_number", * description: "Device posture rule for corporate devices.", * schedule: "24h", * expiration: "24h", * matches: [{ * platform: "mac", * }], * inputs: [{ * id: cloudflare_teams_list.corporate_devices.id, * }], * }); * ``` * * ## Import * * Device posture rules can be imported using a composite ID formed of account ID and device posture rule ID. * * ```sh * $ pulumi import cloudflare:index/devicePostureRule:DevicePostureRule corporate_devices cb029e245cfdd66dc8d2e570d5dd3322/d41d8cd98f00b204e9800998ecf8427e * ``` */ export declare class DevicePostureRule extends pulumi.CustomResource { /** * Get an existing DevicePostureRule 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?: DevicePostureRuleState, opts?: pulumi.CustomResourceOptions): DevicePostureRule; /** * Returns true if the given object is an instance of DevicePostureRule. 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 DevicePostureRule; /** * The account to which the device posture rule should be added. */ readonly accountId: pulumi.Output; /** * The description of the device posture rule. */ readonly description: pulumi.Output; /** * Expire posture results after the specified amount of time. * Must be in the format `"1h"` or `"30m"`. Valid units are `h` and `m`. */ readonly expiration: pulumi.Output; /** * The value to be checked against. See below for reference * structure. */ readonly inputs: pulumi.Output; /** * The conditions that the client must match to run the rule. See below for reference structure. */ readonly matches: pulumi.Output; /** * Name of the device posture rule. */ readonly name: pulumi.Output; /** * Tells the client when to run the device posture check. * Must be in the format `"1h"` or `"30m"`. Valid units are `h` and `m`. */ readonly schedule: pulumi.Output; /** * The device posture rule type. Valid values are `file`, `application`, and `serialNumber`. */ readonly type: pulumi.Output; /** * Create a DevicePostureRule 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: DevicePostureRuleArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering DevicePostureRule resources. */ export interface DevicePostureRuleState { /** * The account to which the device posture rule should be added. */ accountId?: pulumi.Input; /** * The description of the device posture rule. */ description?: pulumi.Input; /** * Expire posture results after the specified amount of time. * Must be in the format `"1h"` or `"30m"`. Valid units are `h` and `m`. */ expiration?: pulumi.Input; /** * The value to be checked against. See below for reference * structure. */ inputs?: pulumi.Input[]>; /** * The conditions that the client must match to run the rule. See below for reference structure. */ matches?: pulumi.Input[]>; /** * Name of the device posture rule. */ name?: pulumi.Input; /** * Tells the client when to run the device posture check. * Must be in the format `"1h"` or `"30m"`. Valid units are `h` and `m`. */ schedule?: pulumi.Input; /** * The device posture rule type. Valid values are `file`, `application`, and `serialNumber`. */ type?: pulumi.Input; } /** * The set of arguments for constructing a DevicePostureRule resource. */ export interface DevicePostureRuleArgs { /** * The account to which the device posture rule should be added. */ accountId: pulumi.Input; /** * The description of the device posture rule. */ description?: pulumi.Input; /** * Expire posture results after the specified amount of time. * Must be in the format `"1h"` or `"30m"`. Valid units are `h` and `m`. */ expiration?: pulumi.Input; /** * The value to be checked against. See below for reference * structure. */ inputs?: pulumi.Input[]>; /** * The conditions that the client must match to run the rule. See below for reference structure. */ matches?: pulumi.Input[]>; /** * Name of the device posture rule. */ name?: pulumi.Input; /** * Tells the client when to run the device posture check. * Must be in the format `"1h"` or `"30m"`. Valid units are `h` and `m`. */ schedule?: pulumi.Input; /** * The device posture rule type. Valid values are `file`, `application`, and `serialNumber`. */ type: pulumi.Input; }