import * as core from "@terrascript/core"; export interface AllQueryArgumentsArgs extends core.SchemaArgs { } export declare class AllQueryArguments extends core.Schema { } export interface BodyArgs extends core.SchemaArgs { } export declare class Body extends core.Schema { } export interface MethodArgs extends core.SchemaArgs { } export declare class Method extends core.Schema { } export interface QueryStringArgs extends core.SchemaArgs { } export declare class QueryString extends core.Schema { } export interface SingleHeaderArgs extends core.SchemaArgs { name: string | core.StringOut; } export declare class SingleHeader extends core.Schema { name: string | core.StringOut; } export interface SingleQueryArgumentArgs extends core.SchemaArgs { name: string | core.StringOut; } export declare class SingleQueryArgument extends core.Schema { name: string | core.StringOut; } export interface UriPathArgs extends core.SchemaArgs { } export declare class UriPath extends core.Schema { } export interface RedactedFieldsArgs extends core.SchemaArgs { allQueryArguments?: AllQueryArguments; body?: Body; method?: Method; queryString?: QueryString; singleHeader?: SingleHeader; singleQueryArgument?: SingleQueryArgument; uriPath?: UriPath; } export declare class RedactedFields extends core.Schema { allQueryArguments?: AllQueryArguments; body?: Body; method?: Method; queryString?: QueryString; singleHeader?: SingleHeader; singleQueryArgument?: SingleQueryArgument; uriPath?: UriPath; } export interface ActionConditionArgs extends core.SchemaArgs { action: string | core.StringOut; } export declare class ActionCondition extends core.Schema { action: string | core.StringOut; } export interface LabelNameConditionArgs extends core.SchemaArgs { labelName: string | core.StringOut; } export declare class LabelNameCondition extends core.Schema { labelName: string | core.StringOut; } export interface ConditionArgs extends core.SchemaArgs { actionCondition?: ActionCondition; labelNameCondition?: LabelNameCondition; } export declare class Condition extends core.Schema { actionCondition?: ActionCondition; labelNameCondition?: LabelNameCondition; } export interface FilterArgs extends core.SchemaArgs { behavior: string | core.StringOut; condition: core.Array | core.ArrayOut; requirement: string | core.StringOut; } export declare class Filter extends core.Schema { behavior: string | core.StringOut; condition: core.Array | core.ArrayOut; requirement: string | core.StringOut; } export interface LoggingFilterArgs extends core.SchemaArgs { defaultBehavior: string | core.StringOut; filter: core.Array | core.ArrayOut; } export declare class LoggingFilter extends core.Schema { defaultBehavior: string | core.StringOut; filter: core.Array | core.ArrayOut; } export interface V2WebAclLoggingConfigurationArgs extends core.ResourceArgs { /** * (Required) The Amazon Kinesis Data Firehose, Cloudwatch Log log group, or S3 bucket Amazon Resource * Names (ARNs) that you want to associate with the web ACL. */ logDestinationConfigs: core.Array | core.ArrayOut; /** * (Optional) A configuration block that specifies which web requests are kept in the logs and which ar * e dropped. You can filter on the rule action and on the web request labels that were applied by matc * hing rules during web ACL evaluation. See [Logging Filter](#logging-filter) below for more details. */ loggingFilter?: LoggingFilter; /** * (Optional) The parts of the request that you want to keep out of the logs. Up to 100 `redacted_field * s` blocks are supported. See [Redacted Fields](#redacted-fields) below for more details. */ redactedFields?: core.Array | core.ArrayOut; /** * (Required) The Amazon Resource Name (ARN) of the web ACL that you want to associate with `log_destin * ation_configs`. */ resourceArn: string | core.StringOut; } export declare class V2WebAclLoggingConfiguration extends core.Resource { /** * The Amazon Resource Name (ARN) of the WAFv2 Web ACL. */ id: string | core.StringOut; /** * (Required) The Amazon Kinesis Data Firehose, Cloudwatch Log log group, or S3 bucket Amazon Resource * Names (ARNs) that you want to associate with the web ACL. */ logDestinationConfigs: core.Array | core.ArrayOut; /** * (Optional) A configuration block that specifies which web requests are kept in the logs and which ar * e dropped. You can filter on the rule action and on the web request labels that were applied by matc * hing rules during web ACL evaluation. See [Logging Filter](#logging-filter) below for more details. */ loggingFilter?: LoggingFilter; /** * (Optional) The parts of the request that you want to keep out of the logs. Up to 100 `redacted_field * s` blocks are supported. See [Redacted Fields](#redacted-fields) below for more details. */ redactedFields?: core.Array | core.ArrayOut; /** * (Required) The Amazon Resource Name (ARN) of the web ACL that you want to associate with `log_destin * ation_configs`. */ resourceArn: string | core.StringOut; constructor(name: string, args?: V2WebAclLoggingConfigurationArgs); getNamespace(): string; } //# sourceMappingURL=v2_web_acl_logging_configuration.d.ts.map