import type * as WAFV2 from "@distilled.cloud/aws/wafv2"; import type * as Effect from "effect/Effect"; import * as Binding from "../../Binding.ts"; /** * Runtime binding for `wafv2:DescribeManagedRuleGroup` — read the rules, * labels, and WCU capacity of a vendor managed rule group. * * Provide `WAFv2.DescribeManagedRuleGroupHttp` on the hosting Lambda * Function to satisfy the requirement. * ### Managed Rule Group Catalog * **Example:** Describe the AWS Common Rule Set * ```typescript * // init — grants wafv2:DescribeManagedRuleGroup * const describeManagedRuleGroup = yield* AWS.WAFv2.DescribeManagedRuleGroup(); * * // runtime * const { Capacity, Rules } = yield* describeManagedRuleGroup({ * VendorName: "AWS", * Name: "AWSManagedRulesCommonRuleSet", * Scope: "REGIONAL", * }); * ``` * * @binding */ export interface DescribeManagedRuleGroup extends Binding.Service Effect.Effect<(request: WAFV2.DescribeManagedRuleGroupRequest) => Effect.Effect>> { } export declare const DescribeManagedRuleGroup: DescribeManagedRuleGroup; /** * Runtime binding for `wafv2:ListAvailableManagedRuleGroups` — list the * vendor managed rule groups available to the account (AWS Managed Rules + * subscribed Marketplace groups). * * Provide `WAFv2.ListAvailableManagedRuleGroupsHttp` on the hosting Lambda * Function to satisfy the requirement. * ### Managed Rule Group Catalog * **Example:** List Available Managed Rule Groups * ```typescript * // init — grants wafv2:ListAvailableManagedRuleGroups * const listManagedRuleGroups = yield* AWS.WAFv2.ListAvailableManagedRuleGroups(); * * // runtime * const { ManagedRuleGroups } = yield* listManagedRuleGroups({ * Scope: "REGIONAL", * }); * ``` * * @binding */ export interface ListAvailableManagedRuleGroups extends Binding.Service Effect.Effect<(request: WAFV2.ListAvailableManagedRuleGroupsRequest) => Effect.Effect>> { } export declare const ListAvailableManagedRuleGroups: ListAvailableManagedRuleGroups; /** * Runtime binding for `wafv2:ListAvailableManagedRuleGroupVersions` — list * the published versions of a vendor managed rule group. * * Provide `WAFv2.ListAvailableManagedRuleGroupVersionsHttp` on the hosting * Lambda Function to satisfy the requirement. * ### Managed Rule Group Catalog * **Example:** List Versions of the Common Rule Set * ```typescript * // init — grants wafv2:ListAvailableManagedRuleGroupVersions * const listVersions = yield* AWS.WAFv2.ListAvailableManagedRuleGroupVersions(); * * // runtime * const { Versions, CurrentDefaultVersion } = yield* listVersions({ * VendorName: "AWS", * Name: "AWSManagedRulesCommonRuleSet", * Scope: "REGIONAL", * }); * ``` * * @binding */ export interface ListAvailableManagedRuleGroupVersions extends Binding.Service Effect.Effect<(request: WAFV2.ListAvailableManagedRuleGroupVersionsRequest) => Effect.Effect>> { } export declare const ListAvailableManagedRuleGroupVersions: ListAvailableManagedRuleGroupVersions; /** * Runtime binding for `wafv2:DescribeAllManagedProducts` — read the * catalog of managed rule group products from AWS and Marketplace vendors. * * Provide `WAFv2.DescribeAllManagedProductsHttp` on the hosting Lambda * Function to satisfy the requirement. * ### Managed Rule Group Catalog * **Example:** List All Managed Products * ```typescript * // init — grants wafv2:DescribeAllManagedProducts * const describeAllManagedProducts = yield* AWS.WAFv2.DescribeAllManagedProducts(); * * // runtime * const { ManagedProducts } = yield* describeAllManagedProducts({ * Scope: "REGIONAL", * }); * ``` * * @binding */ export interface DescribeAllManagedProducts extends Binding.Service Effect.Effect<(request: WAFV2.DescribeAllManagedProductsRequest) => Effect.Effect>> { } export declare const DescribeAllManagedProducts: DescribeAllManagedProducts; /** * Runtime binding for `wafv2:DescribeManagedProductsByVendor` — read the * managed rule group products of a single vendor. * * Provide `WAFv2.DescribeManagedProductsByVendorHttp` on the hosting * Lambda Function to satisfy the requirement. * ### Managed Rule Group Catalog * **Example:** List AWS-Vended Managed Products * ```typescript * // init — grants wafv2:DescribeManagedProductsByVendor * const describeByVendor = yield* AWS.WAFv2.DescribeManagedProductsByVendor(); * * // runtime * const { ManagedProducts } = yield* describeByVendor({ * VendorName: "AWS", * Scope: "REGIONAL", * }); * ``` * * @binding */ export interface DescribeManagedProductsByVendor extends Binding.Service Effect.Effect<(request: WAFV2.DescribeManagedProductsByVendorRequest) => Effect.Effect>> { } export declare const DescribeManagedProductsByVendor: DescribeManagedProductsByVendor; //# sourceMappingURL=ManagedRuleGroups.d.ts.map