UNPKG

@nolanrigo/cloudformation

Version:

TypeScript-based imperative way to define AWS CloudFormation templates

223 lines (222 loc) 8.37 kB
import { ResourceBase, ResourceTag as Inner_ResourceTag } from "../../resource"; import { Value, List, MapOf } from "../../data-types"; export declare class RegexPatternSetReferenceStatement { Arn: Value<string>; FieldToMatch: FieldToMatch; TextTransformations: List<TextTransformation>; constructor(properties: RegexPatternSetReferenceStatement); } export declare class SqliMatchStatement { FieldToMatch: FieldToMatch; TextTransformations: List<TextTransformation>; constructor(properties: SqliMatchStatement); } export declare class IPSetReferenceStatement { Arn: Value<string>; constructor(properties: IPSetReferenceStatement); } export declare class ExcludedRule { Name: Value<string>; constructor(properties: ExcludedRule); } export declare class XssMatchStatement { FieldToMatch: FieldToMatch; TextTransformations: List<TextTransformation>; constructor(properties: XssMatchStatement); } export declare class RuleGroupReferenceStatement { Arn: Value<string>; ExcludedRules?: List<ExcludedRule>; constructor(properties: RuleGroupReferenceStatement); } export declare class StatementThree { XssMatchStatement?: XssMatchStatement; SqliMatchStatement?: SqliMatchStatement; RuleGroupReferenceStatement?: RuleGroupReferenceStatement; ManagedRuleGroupStatement?: ManagedRuleGroupStatement; SizeConstraintStatement?: SizeConstraintStatement; ByteMatchStatement?: ByteMatchStatement; GeoMatchStatement?: GeoMatchStatement; RegexPatternSetReferenceStatement?: RegexPatternSetReferenceStatement; IPSetReferenceStatement?: IPSetReferenceStatement; constructor(properties: StatementThree); } export declare class RateBasedStatementOne { Limit: Value<number>; AggregateKeyType: Value<string>; ScopeDownStatement?: StatementTwo; constructor(properties: RateBasedStatementOne); } export declare class FieldToMatch { SingleHeader?: MapOf<any>; SingleQueryArgument?: MapOf<any>; AllQueryArguments?: MapOf<any>; UriPath?: MapOf<any>; QueryString?: MapOf<any>; Body?: MapOf<any>; Method?: MapOf<any>; constructor(properties: FieldToMatch); } export declare class NotStatementOne { Statement: StatementTwo; constructor(properties: NotStatementOne); } export declare class ManagedRuleGroupStatement { Name: Value<string>; VendorName: Value<string>; ExcludedRules?: List<ExcludedRule>; constructor(properties: ManagedRuleGroupStatement); } export declare class RuleAction { Allow?: MapOf<any>; Block?: MapOf<any>; Count?: MapOf<any>; constructor(properties: RuleAction); } export declare class ByteMatchStatement { SearchString: Value<string>; SearchStringBase64?: Value<string>; FieldToMatch: FieldToMatch; TextTransformations: List<TextTransformation>; PositionalConstraint: Value<string>; constructor(properties: ByteMatchStatement); } export declare class AndStatementOne { Statements: List<StatementTwo>; constructor(properties: AndStatementOne); } export declare class VisibilityConfig { SampledRequestsEnabled: Value<boolean>; CloudWatchMetricsEnabled: Value<boolean>; MetricName: Value<string>; constructor(properties: VisibilityConfig); } export declare class TextTransformation { Priority: Value<number>; Type: Value<string>; constructor(properties: TextTransformation); } export declare class RateBasedStatementTwo { Limit: Value<number>; AggregateKeyType: Value<string>; ScopeDownStatement?: StatementThree; constructor(properties: RateBasedStatementTwo); } export declare class NotStatementTwo { Statement: StatementThree; constructor(properties: NotStatementTwo); } export declare class SizeConstraintStatement { FieldToMatch: FieldToMatch; ComparisonOperator: Value<string>; Size: Value<number>; TextTransformations: List<TextTransformation>; constructor(properties: SizeConstraintStatement); } export declare class StatementOne { XssMatchStatement?: XssMatchStatement; SqliMatchStatement?: SqliMatchStatement; RuleGroupReferenceStatement?: RuleGroupReferenceStatement; ManagedRuleGroupStatement?: ManagedRuleGroupStatement; OrStatement?: OrStatementOne; SizeConstraintStatement?: SizeConstraintStatement; ByteMatchStatement?: ByteMatchStatement; AndStatement?: AndStatementOne; GeoMatchStatement?: GeoMatchStatement; RateBasedStatement?: RateBasedStatementOne; NotStatement?: NotStatementOne; RegexPatternSetReferenceStatement?: RegexPatternSetReferenceStatement; IPSetReferenceStatement?: IPSetReferenceStatement; constructor(properties: StatementOne); } export declare class AndStatementTwo { Statements: List<StatementThree>; constructor(properties: AndStatementTwo); } export declare class OrStatementOne { Statements: List<StatementTwo>; constructor(properties: OrStatementOne); } export declare class Rule { Name: Value<string>; Priority: Value<number>; Statement: StatementOne; Action?: RuleAction; OverrideAction?: OverrideAction; VisibilityConfig: VisibilityConfig; constructor(properties: Rule); } export declare class StatementTwo { XssMatchStatement?: XssMatchStatement; SqliMatchStatement?: SqliMatchStatement; RuleGroupReferenceStatement?: RuleGroupReferenceStatement; ManagedRuleGroupStatement?: ManagedRuleGroupStatement; OrStatement?: OrStatementTwo; SizeConstraintStatement?: SizeConstraintStatement; ByteMatchStatement?: ByteMatchStatement; AndStatement?: AndStatementTwo; GeoMatchStatement?: GeoMatchStatement; RateBasedStatement?: RateBasedStatementTwo; NotStatement?: NotStatementTwo; RegexPatternSetReferenceStatement?: RegexPatternSetReferenceStatement; IPSetReferenceStatement?: IPSetReferenceStatement; constructor(properties: StatementTwo); } export declare class DefaultAction { Allow?: MapOf<any>; Block?: MapOf<any>; constructor(properties: DefaultAction); } export declare class OrStatementTwo { Statements: List<StatementThree>; constructor(properties: OrStatementTwo); } export declare class GeoMatchStatement { CountryCodes?: List<Value<string>>; constructor(properties: GeoMatchStatement); } export declare class OverrideAction { Count?: MapOf<any>; None?: MapOf<any>; constructor(properties: OverrideAction); } export interface WebACLProperties { DefaultAction: DefaultAction; Description?: Value<string>; Name?: Value<string>; Scope: Value<string>; Rules?: List<Rule>; VisibilityConfig: VisibilityConfig; Tags?: List<Inner_ResourceTag>; } export default class Inner_WebACL extends ResourceBase<WebACLProperties> { static RegexPatternSetReferenceStatement: typeof RegexPatternSetReferenceStatement; static SqliMatchStatement: typeof SqliMatchStatement; static IPSetReferenceStatement: typeof IPSetReferenceStatement; static ExcludedRule: typeof ExcludedRule; static XssMatchStatement: typeof XssMatchStatement; static RuleGroupReferenceStatement: typeof RuleGroupReferenceStatement; static StatementThree: typeof StatementThree; static RateBasedStatementOne: typeof RateBasedStatementOne; static FieldToMatch: typeof FieldToMatch; static NotStatementOne: typeof NotStatementOne; static ManagedRuleGroupStatement: typeof ManagedRuleGroupStatement; static RuleAction: typeof RuleAction; static ByteMatchStatement: typeof ByteMatchStatement; static AndStatementOne: typeof AndStatementOne; static VisibilityConfig: typeof VisibilityConfig; static TextTransformation: typeof TextTransformation; static RateBasedStatementTwo: typeof RateBasedStatementTwo; static NotStatementTwo: typeof NotStatementTwo; static SizeConstraintStatement: typeof SizeConstraintStatement; static StatementOne: typeof StatementOne; static AndStatementTwo: typeof AndStatementTwo; static OrStatementOne: typeof OrStatementOne; static Rule: typeof Rule; static StatementTwo: typeof StatementTwo; static DefaultAction: typeof DefaultAction; static OrStatementTwo: typeof OrStatementTwo; static GeoMatchStatement: typeof GeoMatchStatement; static OverrideAction: typeof OverrideAction; constructor(properties: WebACLProperties); }