import * as pulumi from "@pulumi/pulumi"; import * as inputs from "./types/input"; import * as outputs from "./types/output"; /** * ## Example Usage * * ```typescript * import * as pulumi from "@pulumi/pulumi"; * import * as cloudflare from "@pulumi/cloudflare"; * * const exampleTokenValidationRules = new cloudflare.TokenValidationRules("example_token_validation_rules", { * zoneId: "023e105f4ecef8ad9ca31a8372d0c353", * action: "log", * description: "Long description for Token Validation Rule", * enabled: true, * expression: "is_jwt_valid(\"52973293-cb04-4a97-8f55-e7d2ad1107dd\") or is_jwt_valid(\"46eab8d1-6376-45e3-968f-2c649d77d423\")", * selector: { * excludes: [{ * operationIds: [ * "f9c5615e-fe15-48ce-bec6-cfc1946f1bec", * "56828eae-035a-4396-ba07-51c66d680a04", * ], * }], * includes: [{ * host: [ * "v1.example.com", * "v2.example.com", * ], * }], * }, * title: "Example Token Validation Rule", * }); * ``` * * ## Import * * ```sh * $ pulumi import cloudflare:index/tokenValidationRules:TokenValidationRules example '/' * ``` */ export declare class TokenValidationRules extends pulumi.CustomResource { /** * Get an existing TokenValidationRules 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?: TokenValidationRulesState, opts?: pulumi.CustomResourceOptions): TokenValidationRules; /** * Returns true if the given object is an instance of TokenValidationRules. 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 TokenValidationRules; /** * Action to take on requests that match operations included in `selector` and fail `expression`. * Available values: "log", "block". */ readonly action: pulumi.Output; readonly createdAt: pulumi.Output; /** * A human-readable description that gives more details than `title`. */ readonly description: pulumi.Output; /** * Toggle rule on or off. */ readonly enabled: pulumi.Output; /** * Rule expression. Requests that fail to match this expression will be subject to `action`. */ readonly expression: pulumi.Output; readonly lastUpdated: pulumi.Output; /** * Update rule order among zone rules. */ readonly position: pulumi.Output; /** * Select operations covered by this rule. * * For details on selectors, see the [Cloudflare Docs](https://developers.cloudflare.com/api-shield/security/jwt-validation/). */ readonly selector: pulumi.Output; /** * A human-readable name for the rule. */ readonly title: pulumi.Output; /** * Identifier. */ readonly zoneId: pulumi.Output; /** * Create a TokenValidationRules 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: TokenValidationRulesArgs, opts?: pulumi.CustomResourceOptions); } /** * Input properties used for looking up and filtering TokenValidationRules resources. */ export interface TokenValidationRulesState { /** * Action to take on requests that match operations included in `selector` and fail `expression`. * Available values: "log", "block". */ action?: pulumi.Input; createdAt?: pulumi.Input; /** * A human-readable description that gives more details than `title`. */ description?: pulumi.Input; /** * Toggle rule on or off. */ enabled?: pulumi.Input; /** * Rule expression. Requests that fail to match this expression will be subject to `action`. */ expression?: pulumi.Input; lastUpdated?: pulumi.Input; /** * Update rule order among zone rules. */ position?: pulumi.Input; /** * Select operations covered by this rule. * * For details on selectors, see the [Cloudflare Docs](https://developers.cloudflare.com/api-shield/security/jwt-validation/). */ selector?: pulumi.Input; /** * A human-readable name for the rule. */ title?: pulumi.Input; /** * Identifier. */ zoneId?: pulumi.Input; } /** * The set of arguments for constructing a TokenValidationRules resource. */ export interface TokenValidationRulesArgs { /** * Action to take on requests that match operations included in `selector` and fail `expression`. * Available values: "log", "block". */ action: pulumi.Input; /** * A human-readable description that gives more details than `title`. */ description: pulumi.Input; /** * Toggle rule on or off. */ enabled: pulumi.Input; /** * Rule expression. Requests that fail to match this expression will be subject to `action`. */ expression: pulumi.Input; /** * Update rule order among zone rules. */ position?: pulumi.Input; /** * Select operations covered by this rule. * * For details on selectors, see the [Cloudflare Docs](https://developers.cloudflare.com/api-shield/security/jwt-validation/). */ selector: pulumi.Input; /** * A human-readable name for the rule. */ title: pulumi.Input; /** * Identifier. */ zoneId: pulumi.Input; }