import { ChangeAction, ChangeTokenStatus, ComparisonOperator, GeoMatchConstraintType, GeoMatchConstraintValue, IPSetDescriptorType, MatchFieldType, PositionalConstraint, PredicateType, RateKey, ResourceType, TextTransformation, WafActionType, WafOverrideActionType, WafRuleType, } from "./enums"; export interface WafAction { Type: WafActionType | undefined; } export interface ExcludedRule { RuleId: string | undefined; } export interface WafOverrideAction { Type: WafOverrideActionType | undefined; } export interface ActivatedRule { Priority: number | undefined; RuleId: string | undefined; Action?: WafAction | undefined; OverrideAction?: WafOverrideAction | undefined; Type?: WafRuleType | undefined; ExcludedRules?: ExcludedRule[] | undefined; } export interface AssociateWebACLRequest { WebACLId: string | undefined; ResourceArn: string | undefined; } export interface AssociateWebACLResponse {} export interface CreateByteMatchSetRequest { Name: string | undefined; ChangeToken: string | undefined; } export interface FieldToMatch { Type: MatchFieldType | undefined; Data?: string | undefined; } export interface ByteMatchTuple { FieldToMatch: FieldToMatch | undefined; TargetString: Uint8Array | undefined; TextTransformation: TextTransformation | undefined; PositionalConstraint: PositionalConstraint | undefined; } export interface ByteMatchSet { ByteMatchSetId: string | undefined; Name?: string | undefined; ByteMatchTuples: ByteMatchTuple[] | undefined; } export interface CreateByteMatchSetResponse { ByteMatchSet?: ByteMatchSet | undefined; ChangeToken?: string | undefined; } export interface CreateGeoMatchSetRequest { Name: string | undefined; ChangeToken: string | undefined; } export interface GeoMatchConstraint { Type: GeoMatchConstraintType | undefined; Value: GeoMatchConstraintValue | undefined; } export interface GeoMatchSet { GeoMatchSetId: string | undefined; Name?: string | undefined; GeoMatchConstraints: GeoMatchConstraint[] | undefined; } export interface CreateGeoMatchSetResponse { GeoMatchSet?: GeoMatchSet | undefined; ChangeToken?: string | undefined; } export interface CreateIPSetRequest { Name: string | undefined; ChangeToken: string | undefined; } export interface IPSetDescriptor { Type: IPSetDescriptorType | undefined; Value: string | undefined; } export interface IPSet { IPSetId: string | undefined; Name?: string | undefined; IPSetDescriptors: IPSetDescriptor[] | undefined; } export interface CreateIPSetResponse { IPSet?: IPSet | undefined; ChangeToken?: string | undefined; } export interface Tag { Key: string | undefined; Value: string | undefined; } export interface CreateRateBasedRuleRequest { Name: string | undefined; MetricName: string | undefined; RateKey: RateKey | undefined; RateLimit: number | undefined; ChangeToken: string | undefined; Tags?: Tag[] | undefined; } export interface Predicate { Negated: boolean | undefined; Type: PredicateType | undefined; DataId: string | undefined; } export interface RateBasedRule { RuleId: string | undefined; Name?: string | undefined; MetricName?: string | undefined; MatchPredicates: Predicate[] | undefined; RateKey: RateKey | undefined; RateLimit: number | undefined; } export interface CreateRateBasedRuleResponse { Rule?: RateBasedRule | undefined; ChangeToken?: string | undefined; } export interface CreateRegexMatchSetRequest { Name: string | undefined; ChangeToken: string | undefined; } export interface RegexMatchTuple { FieldToMatch: FieldToMatch | undefined; TextTransformation: TextTransformation | undefined; RegexPatternSetId: string | undefined; } export interface RegexMatchSet { RegexMatchSetId?: string | undefined; Name?: string | undefined; RegexMatchTuples?: RegexMatchTuple[] | undefined; } export interface CreateRegexMatchSetResponse { RegexMatchSet?: RegexMatchSet | undefined; ChangeToken?: string | undefined; } export interface CreateRegexPatternSetRequest { Name: string | undefined; ChangeToken: string | undefined; } export interface RegexPatternSet { RegexPatternSetId: string | undefined; Name?: string | undefined; RegexPatternStrings: string[] | undefined; } export interface CreateRegexPatternSetResponse { RegexPatternSet?: RegexPatternSet | undefined; ChangeToken?: string | undefined; } export interface CreateRuleRequest { Name: string | undefined; MetricName: string | undefined; ChangeToken: string | undefined; Tags?: Tag[] | undefined; } export interface Rule { RuleId: string | undefined; Name?: string | undefined; MetricName?: string | undefined; Predicates: Predicate[] | undefined; } export interface CreateRuleResponse { Rule?: Rule | undefined; ChangeToken?: string | undefined; } export interface CreateRuleGroupRequest { Name: string | undefined; MetricName: string | undefined; ChangeToken: string | undefined; Tags?: Tag[] | undefined; } export interface RuleGroup { RuleGroupId: string | undefined; Name?: string | undefined; MetricName?: string | undefined; } export interface CreateRuleGroupResponse { RuleGroup?: RuleGroup | undefined; ChangeToken?: string | undefined; } export interface CreateSizeConstraintSetRequest { Name: string | undefined; ChangeToken: string | undefined; } export interface SizeConstraint { FieldToMatch: FieldToMatch | undefined; TextTransformation: TextTransformation | undefined; ComparisonOperator: ComparisonOperator | undefined; Size: number | undefined; } export interface SizeConstraintSet { SizeConstraintSetId: string | undefined; Name?: string | undefined; SizeConstraints: SizeConstraint[] | undefined; } export interface CreateSizeConstraintSetResponse { SizeConstraintSet?: SizeConstraintSet | undefined; ChangeToken?: string | undefined; } export interface CreateSqlInjectionMatchSetRequest { Name: string | undefined; ChangeToken: string | undefined; } export interface SqlInjectionMatchTuple { FieldToMatch: FieldToMatch | undefined; TextTransformation: TextTransformation | undefined; } export interface SqlInjectionMatchSet { SqlInjectionMatchSetId: string | undefined; Name?: string | undefined; SqlInjectionMatchTuples: SqlInjectionMatchTuple[] | undefined; } export interface CreateSqlInjectionMatchSetResponse { SqlInjectionMatchSet?: SqlInjectionMatchSet | undefined; ChangeToken?: string | undefined; } export interface CreateWebACLRequest { Name: string | undefined; MetricName: string | undefined; DefaultAction: WafAction | undefined; ChangeToken: string | undefined; Tags?: Tag[] | undefined; } export interface WebACL { WebACLId: string | undefined; Name?: string | undefined; MetricName?: string | undefined; DefaultAction: WafAction | undefined; Rules: ActivatedRule[] | undefined; WebACLArn?: string | undefined; } export interface CreateWebACLResponse { WebACL?: WebACL | undefined; ChangeToken?: string | undefined; } export interface CreateWebACLMigrationStackRequest { WebACLId: string | undefined; S3BucketName: string | undefined; IgnoreUnsupportedType: boolean | undefined; } export interface CreateWebACLMigrationStackResponse { S3ObjectUrl: string | undefined; } export interface CreateXssMatchSetRequest { Name: string | undefined; ChangeToken: string | undefined; } export interface XssMatchTuple { FieldToMatch: FieldToMatch | undefined; TextTransformation: TextTransformation | undefined; } export interface XssMatchSet { XssMatchSetId: string | undefined; Name?: string | undefined; XssMatchTuples: XssMatchTuple[] | undefined; } export interface CreateXssMatchSetResponse { XssMatchSet?: XssMatchSet | undefined; ChangeToken?: string | undefined; } export interface DeleteByteMatchSetRequest { ByteMatchSetId: string | undefined; ChangeToken: string | undefined; } export interface DeleteByteMatchSetResponse { ChangeToken?: string | undefined; } export interface DeleteGeoMatchSetRequest { GeoMatchSetId: string | undefined; ChangeToken: string | undefined; } export interface DeleteGeoMatchSetResponse { ChangeToken?: string | undefined; } export interface DeleteIPSetRequest { IPSetId: string | undefined; ChangeToken: string | undefined; } export interface DeleteIPSetResponse { ChangeToken?: string | undefined; } export interface DeleteLoggingConfigurationRequest { ResourceArn: string | undefined; } export interface DeleteLoggingConfigurationResponse {} export interface DeletePermissionPolicyRequest { ResourceArn: string | undefined; } export interface DeletePermissionPolicyResponse {} export interface DeleteRateBasedRuleRequest { RuleId: string | undefined; ChangeToken: string | undefined; } export interface DeleteRateBasedRuleResponse { ChangeToken?: string | undefined; } export interface DeleteRegexMatchSetRequest { RegexMatchSetId: string | undefined; ChangeToken: string | undefined; } export interface DeleteRegexMatchSetResponse { ChangeToken?: string | undefined; } export interface DeleteRegexPatternSetRequest { RegexPatternSetId: string | undefined; ChangeToken: string | undefined; } export interface DeleteRegexPatternSetResponse { ChangeToken?: string | undefined; } export interface DeleteRuleRequest { RuleId: string | undefined; ChangeToken: string | undefined; } export interface DeleteRuleResponse { ChangeToken?: string | undefined; } export interface DeleteRuleGroupRequest { RuleGroupId: string | undefined; ChangeToken: string | undefined; } export interface DeleteRuleGroupResponse { ChangeToken?: string | undefined; } export interface DeleteSizeConstraintSetRequest { SizeConstraintSetId: string | undefined; ChangeToken: string | undefined; } export interface DeleteSizeConstraintSetResponse { ChangeToken?: string | undefined; } export interface DeleteSqlInjectionMatchSetRequest { SqlInjectionMatchSetId: string | undefined; ChangeToken: string | undefined; } export interface DeleteSqlInjectionMatchSetResponse { ChangeToken?: string | undefined; } export interface DeleteWebACLRequest { WebACLId: string | undefined; ChangeToken: string | undefined; } export interface DeleteWebACLResponse { ChangeToken?: string | undefined; } export interface DeleteXssMatchSetRequest { XssMatchSetId: string | undefined; ChangeToken: string | undefined; } export interface DeleteXssMatchSetResponse { ChangeToken?: string | undefined; } export interface DisassociateWebACLRequest { ResourceArn: string | undefined; } export interface DisassociateWebACLResponse {} export interface GetByteMatchSetRequest { ByteMatchSetId: string | undefined; } export interface GetByteMatchSetResponse { ByteMatchSet?: ByteMatchSet | undefined; } export interface GetChangeTokenRequest {} export interface GetChangeTokenResponse { ChangeToken?: string | undefined; } export interface GetChangeTokenStatusRequest { ChangeToken: string | undefined; } export interface GetChangeTokenStatusResponse { ChangeTokenStatus?: ChangeTokenStatus | undefined; } export interface GetGeoMatchSetRequest { GeoMatchSetId: string | undefined; } export interface GetGeoMatchSetResponse { GeoMatchSet?: GeoMatchSet | undefined; } export interface GetIPSetRequest { IPSetId: string | undefined; } export interface GetIPSetResponse { IPSet?: IPSet | undefined; } export interface GetLoggingConfigurationRequest { ResourceArn: string | undefined; } export interface LoggingConfiguration { ResourceArn: string | undefined; LogDestinationConfigs: string[] | undefined; RedactedFields?: FieldToMatch[] | undefined; } export interface GetLoggingConfigurationResponse { LoggingConfiguration?: LoggingConfiguration | undefined; } export interface GetPermissionPolicyRequest { ResourceArn: string | undefined; } export interface GetPermissionPolicyResponse { Policy?: string | undefined; } export interface GetRateBasedRuleRequest { RuleId: string | undefined; } export interface GetRateBasedRuleResponse { Rule?: RateBasedRule | undefined; } export interface GetRateBasedRuleManagedKeysRequest { RuleId: string | undefined; NextMarker?: string | undefined; } export interface GetRateBasedRuleManagedKeysResponse { ManagedKeys?: string[] | undefined; NextMarker?: string | undefined; } export interface GetRegexMatchSetRequest { RegexMatchSetId: string | undefined; } export interface GetRegexMatchSetResponse { RegexMatchSet?: RegexMatchSet | undefined; } export interface GetRegexPatternSetRequest { RegexPatternSetId: string | undefined; } export interface GetRegexPatternSetResponse { RegexPatternSet?: RegexPatternSet | undefined; } export interface GetRuleRequest { RuleId: string | undefined; } export interface GetRuleResponse { Rule?: Rule | undefined; } export interface GetRuleGroupRequest { RuleGroupId: string | undefined; } export interface GetRuleGroupResponse { RuleGroup?: RuleGroup | undefined; } export interface TimeWindow { StartTime: Date | undefined; EndTime: Date | undefined; } export interface GetSampledRequestsRequest { WebAclId: string | undefined; RuleId: string | undefined; TimeWindow: TimeWindow | undefined; MaxItems: number | undefined; } export interface HTTPHeader { Name?: string | undefined; Value?: string | undefined; } export interface HTTPRequest { ClientIP?: string | undefined; Country?: string | undefined; URI?: string | undefined; Method?: string | undefined; HTTPVersion?: string | undefined; Headers?: HTTPHeader[] | undefined; } export interface SampledHTTPRequest { Request: HTTPRequest | undefined; Weight: number | undefined; Timestamp?: Date | undefined; Action?: string | undefined; RuleWithinRuleGroup?: string | undefined; } export interface GetSampledRequestsResponse { SampledRequests?: SampledHTTPRequest[] | undefined; PopulationSize?: number | undefined; TimeWindow?: TimeWindow | undefined; } export interface GetSizeConstraintSetRequest { SizeConstraintSetId: string | undefined; } export interface GetSizeConstraintSetResponse { SizeConstraintSet?: SizeConstraintSet | undefined; } export interface GetSqlInjectionMatchSetRequest { SqlInjectionMatchSetId: string | undefined; } export interface GetSqlInjectionMatchSetResponse { SqlInjectionMatchSet?: SqlInjectionMatchSet | undefined; } export interface GetWebACLRequest { WebACLId: string | undefined; } export interface GetWebACLResponse { WebACL?: WebACL | undefined; } export interface GetWebACLForResourceRequest { ResourceArn: string | undefined; } export interface WebACLSummary { WebACLId: string | undefined; Name: string | undefined; } export interface GetWebACLForResourceResponse { WebACLSummary?: WebACLSummary | undefined; } export interface GetXssMatchSetRequest { XssMatchSetId: string | undefined; } export interface GetXssMatchSetResponse { XssMatchSet?: XssMatchSet | undefined; } export interface ListActivatedRulesInRuleGroupRequest { RuleGroupId?: string | undefined; NextMarker?: string | undefined; Limit?: number | undefined; } export interface ListActivatedRulesInRuleGroupResponse { NextMarker?: string | undefined; ActivatedRules?: ActivatedRule[] | undefined; } export interface ListByteMatchSetsRequest { NextMarker?: string | undefined; Limit?: number | undefined; } export interface ByteMatchSetSummary { ByteMatchSetId: string | undefined; Name: string | undefined; } export interface ListByteMatchSetsResponse { NextMarker?: string | undefined; ByteMatchSets?: ByteMatchSetSummary[] | undefined; } export interface ListGeoMatchSetsRequest { NextMarker?: string | undefined; Limit?: number | undefined; } export interface GeoMatchSetSummary { GeoMatchSetId: string | undefined; Name: string | undefined; } export interface ListGeoMatchSetsResponse { NextMarker?: string | undefined; GeoMatchSets?: GeoMatchSetSummary[] | undefined; } export interface ListIPSetsRequest { NextMarker?: string | undefined; Limit?: number | undefined; } export interface IPSetSummary { IPSetId: string | undefined; Name: string | undefined; } export interface ListIPSetsResponse { NextMarker?: string | undefined; IPSets?: IPSetSummary[] | undefined; } export interface ListLoggingConfigurationsRequest { NextMarker?: string | undefined; Limit?: number | undefined; } export interface ListLoggingConfigurationsResponse { LoggingConfigurations?: LoggingConfiguration[] | undefined; NextMarker?: string | undefined; } export interface ListRateBasedRulesRequest { NextMarker?: string | undefined; Limit?: number | undefined; } export interface RuleSummary { RuleId: string | undefined; Name: string | undefined; } export interface ListRateBasedRulesResponse { NextMarker?: string | undefined; Rules?: RuleSummary[] | undefined; } export interface ListRegexMatchSetsRequest { NextMarker?: string | undefined; Limit?: number | undefined; } export interface RegexMatchSetSummary { RegexMatchSetId: string | undefined; Name: string | undefined; } export interface ListRegexMatchSetsResponse { NextMarker?: string | undefined; RegexMatchSets?: RegexMatchSetSummary[] | undefined; } export interface ListRegexPatternSetsRequest { NextMarker?: string | undefined; Limit?: number | undefined; } export interface RegexPatternSetSummary { RegexPatternSetId: string | undefined; Name: string | undefined; } export interface ListRegexPatternSetsResponse { NextMarker?: string | undefined; RegexPatternSets?: RegexPatternSetSummary[] | undefined; } export interface ListResourcesForWebACLRequest { WebACLId: string | undefined; ResourceType?: ResourceType | undefined; } export interface ListResourcesForWebACLResponse { ResourceArns?: string[] | undefined; } export interface ListRuleGroupsRequest { NextMarker?: string | undefined; Limit?: number | undefined; } export interface RuleGroupSummary { RuleGroupId: string | undefined; Name: string | undefined; } export interface ListRuleGroupsResponse { NextMarker?: string | undefined; RuleGroups?: RuleGroupSummary[] | undefined; } export interface ListRulesRequest { NextMarker?: string | undefined; Limit?: number | undefined; } export interface ListRulesResponse { NextMarker?: string | undefined; Rules?: RuleSummary[] | undefined; } export interface ListSizeConstraintSetsRequest { NextMarker?: string | undefined; Limit?: number | undefined; } export interface SizeConstraintSetSummary { SizeConstraintSetId: string | undefined; Name: string | undefined; } export interface ListSizeConstraintSetsResponse { NextMarker?: string | undefined; SizeConstraintSets?: SizeConstraintSetSummary[] | undefined; } export interface ListSqlInjectionMatchSetsRequest { NextMarker?: string | undefined; Limit?: number | undefined; } export interface SqlInjectionMatchSetSummary { SqlInjectionMatchSetId: string | undefined; Name: string | undefined; } export interface ListSqlInjectionMatchSetsResponse { NextMarker?: string | undefined; SqlInjectionMatchSets?: SqlInjectionMatchSetSummary[] | undefined; } export interface ListSubscribedRuleGroupsRequest { NextMarker?: string | undefined; Limit?: number | undefined; } export interface SubscribedRuleGroupSummary { RuleGroupId: string | undefined; Name: string | undefined; MetricName: string | undefined; } export interface ListSubscribedRuleGroupsResponse { NextMarker?: string | undefined; RuleGroups?: SubscribedRuleGroupSummary[] | undefined; } export interface ListTagsForResourceRequest { NextMarker?: string | undefined; Limit?: number | undefined; ResourceARN: string | undefined; } export interface TagInfoForResource { ResourceARN?: string | undefined; TagList?: Tag[] | undefined; } export interface ListTagsForResourceResponse { NextMarker?: string | undefined; TagInfoForResource?: TagInfoForResource | undefined; } export interface ListWebACLsRequest { NextMarker?: string | undefined; Limit?: number | undefined; } export interface ListWebACLsResponse { NextMarker?: string | undefined; WebACLs?: WebACLSummary[] | undefined; } export interface ListXssMatchSetsRequest { NextMarker?: string | undefined; Limit?: number | undefined; } export interface XssMatchSetSummary { XssMatchSetId: string | undefined; Name: string | undefined; } export interface ListXssMatchSetsResponse { NextMarker?: string | undefined; XssMatchSets?: XssMatchSetSummary[] | undefined; } export interface PutLoggingConfigurationRequest { LoggingConfiguration: LoggingConfiguration | undefined; } export interface PutLoggingConfigurationResponse { LoggingConfiguration?: LoggingConfiguration | undefined; } export interface PutPermissionPolicyRequest { ResourceArn: string | undefined; Policy: string | undefined; } export interface PutPermissionPolicyResponse {} export interface TagResourceRequest { ResourceARN: string | undefined; Tags: Tag[] | undefined; } export interface TagResourceResponse {} export interface UntagResourceRequest { ResourceARN: string | undefined; TagKeys: string[] | undefined; } export interface UntagResourceResponse {} export interface ByteMatchSetUpdate { Action: ChangeAction | undefined; ByteMatchTuple: ByteMatchTuple | undefined; } export interface UpdateByteMatchSetRequest { ByteMatchSetId: string | undefined; ChangeToken: string | undefined; Updates: ByteMatchSetUpdate[] | undefined; } export interface UpdateByteMatchSetResponse { ChangeToken?: string | undefined; } export interface GeoMatchSetUpdate { Action: ChangeAction | undefined; GeoMatchConstraint: GeoMatchConstraint | undefined; } export interface UpdateGeoMatchSetRequest { GeoMatchSetId: string | undefined; ChangeToken: string | undefined; Updates: GeoMatchSetUpdate[] | undefined; } export interface UpdateGeoMatchSetResponse { ChangeToken?: string | undefined; } export interface IPSetUpdate { Action: ChangeAction | undefined; IPSetDescriptor: IPSetDescriptor | undefined; } export interface UpdateIPSetRequest { IPSetId: string | undefined; ChangeToken: string | undefined; Updates: IPSetUpdate[] | undefined; } export interface UpdateIPSetResponse { ChangeToken?: string | undefined; } export interface RuleUpdate { Action: ChangeAction | undefined; Predicate: Predicate | undefined; } export interface UpdateRateBasedRuleRequest { RuleId: string | undefined; ChangeToken: string | undefined; Updates: RuleUpdate[] | undefined; RateLimit: number | undefined; } export interface UpdateRateBasedRuleResponse { ChangeToken?: string | undefined; } export interface RegexMatchSetUpdate { Action: ChangeAction | undefined; RegexMatchTuple: RegexMatchTuple | undefined; } export interface UpdateRegexMatchSetRequest { RegexMatchSetId: string | undefined; Updates: RegexMatchSetUpdate[] | undefined; ChangeToken: string | undefined; } export interface UpdateRegexMatchSetResponse { ChangeToken?: string | undefined; } export interface RegexPatternSetUpdate { Action: ChangeAction | undefined; RegexPatternString: string | undefined; } export interface UpdateRegexPatternSetRequest { RegexPatternSetId: string | undefined; Updates: RegexPatternSetUpdate[] | undefined; ChangeToken: string | undefined; } export interface UpdateRegexPatternSetResponse { ChangeToken?: string | undefined; } export interface UpdateRuleRequest { RuleId: string | undefined; ChangeToken: string | undefined; Updates: RuleUpdate[] | undefined; } export interface UpdateRuleResponse { ChangeToken?: string | undefined; } export interface RuleGroupUpdate { Action: ChangeAction | undefined; ActivatedRule: ActivatedRule | undefined; } export interface UpdateRuleGroupRequest { RuleGroupId: string | undefined; Updates: RuleGroupUpdate[] | undefined; ChangeToken: string | undefined; } export interface UpdateRuleGroupResponse { ChangeToken?: string | undefined; } export interface SizeConstraintSetUpdate { Action: ChangeAction | undefined; SizeConstraint: SizeConstraint | undefined; } export interface UpdateSizeConstraintSetRequest { SizeConstraintSetId: string | undefined; ChangeToken: string | undefined; Updates: SizeConstraintSetUpdate[] | undefined; } export interface UpdateSizeConstraintSetResponse { ChangeToken?: string | undefined; } export interface SqlInjectionMatchSetUpdate { Action: ChangeAction | undefined; SqlInjectionMatchTuple: SqlInjectionMatchTuple | undefined; } export interface UpdateSqlInjectionMatchSetRequest { SqlInjectionMatchSetId: string | undefined; ChangeToken: string | undefined; Updates: SqlInjectionMatchSetUpdate[] | undefined; } export interface UpdateSqlInjectionMatchSetResponse { ChangeToken?: string | undefined; } export interface WebACLUpdate { Action: ChangeAction | undefined; ActivatedRule: ActivatedRule | undefined; } export interface UpdateWebACLRequest { WebACLId: string | undefined; ChangeToken: string | undefined; Updates?: WebACLUpdate[] | undefined; DefaultAction?: WafAction | undefined; } export interface UpdateWebACLResponse { ChangeToken?: string | undefined; } export interface XssMatchSetUpdate { Action: ChangeAction | undefined; XssMatchTuple: XssMatchTuple | undefined; } export interface UpdateXssMatchSetRequest { XssMatchSetId: string | undefined; ChangeToken: string | undefined; Updates: XssMatchSetUpdate[] | undefined; } export interface UpdateXssMatchSetResponse { ChangeToken?: string | undefined; }