"""
@generated by mypy-protobuf.  Do not edit manually!
isort:skip_file
"""
import builtins
import collections.abc
import google.protobuf.descriptor
import google.protobuf.internal.containers
import google.protobuf.message
import shared.shared_pb2
import sys

if sys.version_info >= (3, 8):
    import typing as typing_extensions
else:
    import typing_extensions

DESCRIPTOR: google.protobuf.descriptor.FileDescriptor

@typing_extensions.final
class ByteMatchSetFieldToMatch(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    DATA_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    data: builtins.str
    type: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        data: builtins.str = ...,
        type: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["data", b"data", "resource_info", b"resource_info", "type", b"type"]) -> None: ...

global___ByteMatchSetFieldToMatch = ByteMatchSetFieldToMatch

@typing_extensions.final
class ByteMatchSetByteMatchTuple(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    FIELD_TO_MATCH_FIELD_NUMBER: builtins.int
    POSITIONAL_CONSTRAINT_FIELD_NUMBER: builtins.int
    TARGET_STRING_FIELD_NUMBER: builtins.int
    TARGET_STRING_BASE64_FIELD_NUMBER: builtins.int
    TEXT_TRANSFORMATION_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def field_to_match(self) -> global___ByteMatchSetFieldToMatch: ...
    positional_constraint: builtins.str
    target_string: builtins.str
    target_string_base64: builtins.str
    text_transformation: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        field_to_match: global___ByteMatchSetFieldToMatch | None = ...,
        positional_constraint: builtins.str = ...,
        target_string: builtins.str = ...,
        target_string_base64: builtins.str = ...,
        text_transformation: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["field_to_match", b"field_to_match", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["field_to_match", b"field_to_match", "positional_constraint", b"positional_constraint", "resource_info", b"resource_info", "target_string", b"target_string", "target_string_base64", b"target_string_base64", "text_transformation", b"text_transformation"]) -> None: ...

global___ByteMatchSetByteMatchTuple = ByteMatchSetByteMatchTuple

@typing_extensions.final
class ByteMatchSet(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    BYTE_MATCH_TUPLES_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def byte_match_tuples(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ByteMatchSetByteMatchTuple]: ...
    name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        byte_match_tuples: collections.abc.Iterable[global___ByteMatchSetByteMatchTuple] | None = ...,
        name: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["byte_match_tuples", b"byte_match_tuples", "name", b"name", "resource_info", b"resource_info"]) -> None: ...

global___ByteMatchSet = ByteMatchSet

@typing_extensions.final
class WAF(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    BYTE_MATCH_SET_FIELD_NUMBER: builtins.int
    IP_SET_FIELD_NUMBER: builtins.int
    RULE_FIELD_NUMBER: builtins.int
    SIZE_CONSTRAINT_SET_FIELD_NUMBER: builtins.int
    SQL_INJECTION_MATCH_SET_FIELD_NUMBER: builtins.int
    WEB_A_C_L_FIELD_NUMBER: builtins.int
    XSS_MATCH_SET_FIELD_NUMBER: builtins.int
    @property
    def byte_match_set(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___ByteMatchSet]: ...
    @property
    def ip_set(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___IPSet]: ...
    @property
    def rule(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___Rule]: ...
    @property
    def size_constraint_set(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___SizeConstraintSet]: ...
    @property
    def sql_injection_match_set(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___SqlInjectionMatchSet]: ...
    @property
    def web_a_c_l(self) -> global___WebACL: ...
    @property
    def xss_match_set(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___XssMatchSet]: ...
    def __init__(
        self,
        *,
        byte_match_set: collections.abc.Iterable[global___ByteMatchSet] | None = ...,
        ip_set: collections.abc.Iterable[global___IPSet] | None = ...,
        rule: collections.abc.Iterable[global___Rule] | None = ...,
        size_constraint_set: collections.abc.Iterable[global___SizeConstraintSet] | None = ...,
        sql_injection_match_set: collections.abc.Iterable[global___SqlInjectionMatchSet] | None = ...,
        web_a_c_l: global___WebACL | None = ...,
        xss_match_set: collections.abc.Iterable[global___XssMatchSet] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["web_a_c_l", b"web_a_c_l"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["byte_match_set", b"byte_match_set", "ip_set", b"ip_set", "rule", b"rule", "size_constraint_set", b"size_constraint_set", "sql_injection_match_set", b"sql_injection_match_set", "web_a_c_l", b"web_a_c_l", "xss_match_set", b"xss_match_set"]) -> None: ...

global___WAF = WAF

@typing_extensions.final
class IPSetIPSetDescriptor(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    VALUE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    value: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        value: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "value", b"value"]) -> None: ...

global___IPSetIPSetDescriptor = IPSetIPSetDescriptor

@typing_extensions.final
class IPSet(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    IP_SET_DESCRIPTORS_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def ip_set_descriptors(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___IPSetIPSetDescriptor]: ...
    name: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        ip_set_descriptors: collections.abc.Iterable[global___IPSetIPSetDescriptor] | None = ...,
        name: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["ip_set_descriptors", b"ip_set_descriptors", "name", b"name", "resource_info", b"resource_info"]) -> None: ...

global___IPSet = IPSet

@typing_extensions.final
class RulePredicate(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    DATA_ID_FIELD_NUMBER: builtins.int
    NEGATED_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    data_id: builtins.str
    negated: builtins.bool
    type: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        data_id: builtins.str = ...,
        negated: builtins.bool = ...,
        type: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["data_id", b"data_id", "negated", b"negated", "resource_info", b"resource_info", "type", b"type"]) -> None: ...

global___RulePredicate = RulePredicate

@typing_extensions.final
class Rule(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    METRIC_NAME_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    PREDICATES_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    metric_name: builtins.str
    name: builtins.str
    @property
    def predicates(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___RulePredicate]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        metric_name: builtins.str = ...,
        name: builtins.str = ...,
        predicates: collections.abc.Iterable[global___RulePredicate] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["metric_name", b"metric_name", "name", b"name", "predicates", b"predicates", "resource_info", b"resource_info"]) -> None: ...

global___Rule = Rule

@typing_extensions.final
class SizeConstraintSetFieldToMatch(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    DATA_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    data: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        data: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["data", b"data", "resource_info", b"resource_info"]) -> None: ...

global___SizeConstraintSetFieldToMatch = SizeConstraintSetFieldToMatch

@typing_extensions.final
class SizeConstraintSetSizeConstraint(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    COMPARISON_OPERATOR_FIELD_NUMBER: builtins.int
    FIELD_TO_MATCH_FIELD_NUMBER: builtins.int
    SIZE_FIELD_NUMBER: builtins.int
    TEXT_TRANSFORMATION_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    comparison_operator: builtins.str
    @property
    def field_to_match(self) -> global___SizeConstraintSetFieldToMatch: ...
    size: builtins.int
    text_transformation: builtins.str
    type: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        comparison_operator: builtins.str = ...,
        field_to_match: global___SizeConstraintSetFieldToMatch | None = ...,
        size: builtins.int = ...,
        text_transformation: builtins.str = ...,
        type: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["field_to_match", b"field_to_match", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["comparison_operator", b"comparison_operator", "field_to_match", b"field_to_match", "resource_info", b"resource_info", "size", b"size", "text_transformation", b"text_transformation", "type", b"type"]) -> None: ...

global___SizeConstraintSetSizeConstraint = SizeConstraintSetSizeConstraint

@typing_extensions.final
class SizeConstraintSet(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    SIZE_CONSTRAINTS_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    name: builtins.str
    @property
    def size_constraints(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___SizeConstraintSetSizeConstraint]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        name: builtins.str = ...,
        size_constraints: collections.abc.Iterable[global___SizeConstraintSetSizeConstraint] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["name", b"name", "resource_info", b"resource_info", "size_constraints", b"size_constraints"]) -> None: ...

global___SizeConstraintSet = SizeConstraintSet

@typing_extensions.final
class SqlInjectionMatchSetFieldToMatch(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    DATA_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    data: builtins.str
    type: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        data: builtins.str = ...,
        type: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["data", b"data", "resource_info", b"resource_info", "type", b"type"]) -> None: ...

global___SqlInjectionMatchSetFieldToMatch = SqlInjectionMatchSetFieldToMatch

@typing_extensions.final
class SqlInjectionMatchSetSqlInjectionMatchTuple(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    FIELD_TO_MATCH_FIELD_NUMBER: builtins.int
    TEXT_TRANSFORMATION_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def field_to_match(self) -> global___SqlInjectionMatchSetFieldToMatch: ...
    text_transformation: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        field_to_match: global___SqlInjectionMatchSetFieldToMatch | None = ...,
        text_transformation: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["field_to_match", b"field_to_match", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["field_to_match", b"field_to_match", "resource_info", b"resource_info", "text_transformation", b"text_transformation"]) -> None: ...

global___SqlInjectionMatchSetSqlInjectionMatchTuple = SqlInjectionMatchSetSqlInjectionMatchTuple

@typing_extensions.final
class SqlInjectionMatchSet(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    SQL_INJECTION_MATCH_TUPLES_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    name: builtins.str
    @property
    def sql_injection_match_tuples(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___SqlInjectionMatchSetSqlInjectionMatchTuple]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        name: builtins.str = ...,
        sql_injection_match_tuples: collections.abc.Iterable[global___SqlInjectionMatchSetSqlInjectionMatchTuple] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["name", b"name", "resource_info", b"resource_info", "sql_injection_match_tuples", b"sql_injection_match_tuples"]) -> None: ...

global___SqlInjectionMatchSet = SqlInjectionMatchSet

@typing_extensions.final
class WebACLWafAction(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    TYPE_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    type: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        type: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info", "type", b"type"]) -> None: ...

global___WebACLWafAction = WebACLWafAction

@typing_extensions.final
class WebACLActivatedRule(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    ACTION_FIELD_NUMBER: builtins.int
    PRIORITY_FIELD_NUMBER: builtins.int
    RULE_ID_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def action(self) -> global___WebACLWafAction: ...
    priority: builtins.int
    rule_id: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        action: global___WebACLWafAction | None = ...,
        priority: builtins.int = ...,
        rule_id: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["action", b"action", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["action", b"action", "priority", b"priority", "resource_info", b"resource_info", "rule_id", b"rule_id"]) -> None: ...

global___WebACLActivatedRule = WebACLActivatedRule

@typing_extensions.final
class WebACL(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    DEFAULT_ACTION_FIELD_NUMBER: builtins.int
    METRIC_NAME_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    RULES_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def default_action(self) -> global___WebACLWafAction: ...
    metric_name: builtins.str
    name: builtins.str
    @property
    def rules(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___WebACLActivatedRule]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        default_action: global___WebACLWafAction | None = ...,
        metric_name: builtins.str = ...,
        name: builtins.str = ...,
        rules: collections.abc.Iterable[global___WebACLActivatedRule] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["default_action", b"default_action", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["default_action", b"default_action", "metric_name", b"metric_name", "name", b"name", "resource_info", b"resource_info", "rules", b"rules"]) -> None: ...

global___WebACL = WebACL

@typing_extensions.final
class XssMatchSetFieldToMatch(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    DATA_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    data: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        data: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["data", b"data", "resource_info", b"resource_info"]) -> None: ...

global___XssMatchSetFieldToMatch = XssMatchSetFieldToMatch

@typing_extensions.final
class XssMatchSetXssMatchTuple(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    FIELD_TO_MATCH_FIELD_NUMBER: builtins.int
    TEXT_TRANSFORMATION_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    @property
    def field_to_match(self) -> global___XssMatchSetFieldToMatch: ...
    text_transformation: builtins.str
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        field_to_match: global___XssMatchSetFieldToMatch | None = ...,
        text_transformation: builtins.str = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["field_to_match", b"field_to_match", "resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["field_to_match", b"field_to_match", "resource_info", b"resource_info", "text_transformation", b"text_transformation"]) -> None: ...

global___XssMatchSetXssMatchTuple = XssMatchSetXssMatchTuple

@typing_extensions.final
class XssMatchSet(google.protobuf.message.Message):
    DESCRIPTOR: google.protobuf.descriptor.Descriptor

    RESOURCE_INFO_FIELD_NUMBER: builtins.int
    NAME_FIELD_NUMBER: builtins.int
    XSS_MATCH_TUPLES_FIELD_NUMBER: builtins.int
    @property
    def resource_info(self) -> shared.shared_pb2.ResourceInfo: ...
    name: builtins.str
    @property
    def xss_match_tuples(self) -> google.protobuf.internal.containers.RepeatedCompositeFieldContainer[global___XssMatchSetXssMatchTuple]: ...
    def __init__(
        self,
        *,
        resource_info: shared.shared_pb2.ResourceInfo | None = ...,
        name: builtins.str = ...,
        xss_match_tuples: collections.abc.Iterable[global___XssMatchSetXssMatchTuple] | None = ...,
    ) -> None: ...
    def HasField(self, field_name: typing_extensions.Literal["resource_info", b"resource_info"]) -> builtins.bool: ...
    def ClearField(self, field_name: typing_extensions.Literal["name", b"name", "resource_info", b"resource_info", "xss_match_tuples", b"xss_match_tuples"]) -> None: ...

global___XssMatchSet = XssMatchSet
