/* eslint-disable */ /** * This file was automatically generated by json-schema-to-typescript. * DO NOT MODIFY IT BY HAND. Instead, modify the source JSONSchema file, * and run json-schema-to-typescript to regenerate this file. */ /** * A resource ARN. */ export type ResourceArn = string; export type Priority = number; export type OverrideAction = "DROP_TO_ALERT"; export type RuleOrder = "DEFAULT_ACTION_ORDER" | "STRICT_ORDER"; export type StreamExceptionPolicy = "DROP" | "CONTINUE"; /** * Resource type definition for AWS::NetworkFirewall::FirewallPolicy */ export interface AwsNetworkfirewallFirewallpolicy { FirewallPolicyName: string; FirewallPolicyArn?: ResourceArn; FirewallPolicy: FirewallPolicy; FirewallPolicyId?: string; Description?: string; Tags?: Tag[]; } export interface FirewallPolicy { StatelessDefaultActions: string[]; StatelessFragmentDefaultActions: string[]; StatelessCustomActions?: CustomAction[]; StatelessRuleGroupReferences?: StatelessRuleGroupReference[]; StatefulRuleGroupReferences?: StatefulRuleGroupReference[]; StatefulDefaultActions?: string[]; StatefulEngineOptions?: StatefulEngineOptions; } export interface CustomAction { ActionName: string; ActionDefinition: ActionDefinition; } export interface ActionDefinition { PublishMetricAction?: PublishMetricAction; } export interface PublishMetricAction { Dimensions: Dimension[]; } export interface Dimension { Value: string; } export interface StatelessRuleGroupReference { ResourceArn: ResourceArn; Priority: Priority; } export interface StatefulRuleGroupReference { ResourceArn: ResourceArn; Priority?: Priority; Override?: StatefulRuleGroupOverride; } export interface StatefulRuleGroupOverride { Action?: OverrideAction; } export interface StatefulEngineOptions { RuleOrder?: RuleOrder; StreamExceptionPolicy?: StreamExceptionPolicy; } export interface Tag { Key: string; Value: string; }