typed-aws
Version:
Helps you write AWS CloudFormation in TypeScript
100 lines (99 loc) • 4.03 kB
TypeScript
import { CfnResource, Resolvable } from '../../base';
export declare type LoggingConfiguration_Type = 'AWS::WAFv2::LoggingConfiguration';
export declare const LoggingConfiguration_Type = "AWS::WAFv2::LoggingConfiguration";
/**
* A WAFv2 Logging Configuration Resource Provider {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-loggingconfiguration.html}
*/
export default function LoggingConfiguration(props: LoggingConfiguration_Properties): CfnResource<LoggingConfiguration_Properties>;
/**
* A WAFv2 Logging Configuration Resource Provider {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-loggingconfiguration.html}
*/
export declare type LoggingConfiguration_Properties = {
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-loggingconfiguration.html#cfn-wafv2-loggingconfiguration-resourcearn}
*/
ResourceArn: Resolvable<string>;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-loggingconfiguration.html#cfn-wafv2-loggingconfiguration-logdestinationconfigs}
*/
LogDestinationConfigs: Resolvable<string>[];
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-loggingconfiguration.html#cfn-wafv2-loggingconfiguration-redactedfields}
*/
RedactedFields?: FieldToMatch[];
ManagedByFirewallManager?: Resolvable<boolean>;
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-wafv2-loggingconfiguration.html#cfn-wafv2-loggingconfiguration-loggingfilter}
*/
LoggingFilter?: {
DefaultBehavior: Resolvable<'KEEP' | 'DROP'>;
Filters: Filter[];
};
};
export declare type Filter = {
Behavior: Resolvable<'KEEP' | 'DROP'>;
Conditions: Condition[];
Requirement: Resolvable<'MEETS_ALL' | 'MEETS_ANY'>;
};
export declare type Condition = {
ActionCondition?: {
Action: Resolvable<'ALLOW' | 'BLOCK' | 'COUNT'>;
};
LabelNameCondition?: {
LabelName: Resolvable<string>;
};
};
/**
* A key-value pair to associate with a resource. {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-loggingconfiguration-fieldtomatch.html}
*/
export declare type FieldToMatch = {
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-loggingconfiguration-fieldtomatch.html#cfn-wafv2-loggingconfiguration-fieldtomatch-jsonbody}
*/
JsonBody?: {
InvalidFallbackBehavior?: Resolvable<'MATCH' | 'NO_MATCH' | 'EVALUATE_AS_STRING'>;
MatchPattern: {
All?: {
[k: string]: unknown;
};
IncludedPaths?: Resolvable<string>[];
};
MatchScope: Resolvable<'ALL' | 'KEY' | 'VALUE'>;
};
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-loggingconfiguration-fieldtomatch.html#cfn-wafv2-loggingconfiguration-fieldtomatch-method}
*/
Method?: {
[k: string]: unknown;
};
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-loggingconfiguration-fieldtomatch.html#cfn-wafv2-loggingconfiguration-fieldtomatch-querystring}
*/
QueryString?: {
[k: string]: unknown;
};
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-loggingconfiguration-fieldtomatch.html#cfn-wafv2-loggingconfiguration-fieldtomatch-singleheader}
*/
SingleHeader?: {
Name: Resolvable<string>;
};
/**
* {@link
* http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-wafv2-loggingconfiguration-fieldtomatch.html#cfn-wafv2-loggingconfiguration-fieldtomatch-uripath}
*/
UriPath?: {
[k: string]: unknown;
};
};