text: # coding=utf-8
  # *** WARNING: this file was generated by the Pulumi SDK Generator. ***
  # *** Do not edit by hand unless you're certain you know what you are doing! ***
  
  import warnings
  import pulumi
  import pulumi.runtime
  from typing import Any, Mapping, Optional, Sequence, Union
  from ... import _utilities, _tables
  from . import outputs
  from ._enums import *
  
  __all__ = [
      'AzureFunctionEventSubscriptionDestinationResponse',
      'BoolEqualsAdvancedFilterResponse',
      'ConnectionStateResponse',
      'EventHubEventSubscriptionDestinationResponse',
      'EventSubscriptionFilterResponse',
      'HybridConnectionEventSubscriptionDestinationResponse',
      'InboundIpRuleResponse',
      'JsonFieldResponse',
      'JsonFieldWithDefaultResponse',
      'JsonInputSchemaMappingResponse',
      'NumberGreaterThanAdvancedFilterResponse',
      'NumberGreaterThanOrEqualsAdvancedFilterResponse',
      'NumberInAdvancedFilterResponse',
      'NumberLessThanAdvancedFilterResponse',
      'NumberLessThanOrEqualsAdvancedFilterResponse',
      'NumberNotInAdvancedFilterResponse',
      'PrivateEndpointConnectionResponse',
      'PrivateEndpointResponse',
      'RetryPolicyResponse',
      'ServiceBusQueueEventSubscriptionDestinationResponse',
      'ServiceBusTopicEventSubscriptionDestinationResponse',
      'StorageBlobDeadLetterDestinationResponse',
      'StorageQueueEventSubscriptionDestinationResponse',
      'StringBeginsWithAdvancedFilterResponse',
      'StringContainsAdvancedFilterResponse',
      'StringEndsWithAdvancedFilterResponse',
      'StringInAdvancedFilterResponse',
      'StringNotInAdvancedFilterResponse',
      'WebHookEventSubscriptionDestinationResponse',
  ]
  
  @pulumi.output_type
  class AzureFunctionEventSubscriptionDestinationResponse(dict):
      """
      Information about the azure function destination for an event subscription.
      """
      def __init__(__self__, *,
                   endpoint_type: str,
                   max_events_per_batch: Optional[int] = None,
                   preferred_batch_size_in_kilobytes: Optional[int] = None,
                   resource_id: Optional[str] = None):
          """
          Information about the azure function destination for an event subscription.
          :param str endpoint_type: Type of the endpoint for the event subscription destination.
                 Expected value is 'AzureFunction'.
          :param int max_events_per_batch: Maximum number of events per batch.
          :param int preferred_batch_size_in_kilobytes: Preferred batch size in Kilobytes.
          :param str resource_id: The Azure Resource Id that represents the endpoint of the Azure Function destination of an event subscription.
          """
          pulumi.set(__self__, "endpoint_type", 'AzureFunction')
          if max_events_per_batch is not None:
              pulumi.set(__self__, "max_events_per_batch", max_events_per_batch)
          if preferred_batch_size_in_kilobytes is not None:
              pulumi.set(__self__, "preferred_batch_size_in_kilobytes", preferred_batch_size_in_kilobytes)
          if resource_id is not None:
              pulumi.set(__self__, "resource_id", resource_id)
  
      @property
      @pulumi.getter(name="endpointType")
      def endpoint_type(self) -> str:
          """
          Type of the endpoint for the event subscription destination.
          Expected value is 'AzureFunction'.
          """
          return pulumi.get(self, "endpoint_type")
  
      @property
      @pulumi.getter(name="maxEventsPerBatch")
      def max_events_per_batch(self) -> Optional[int]:
          """
          Maximum number of events per batch.
          """
          return pulumi.get(self, "max_events_per_batch")
  
      @property
      @pulumi.getter(name="preferredBatchSizeInKilobytes")
      def preferred_batch_size_in_kilobytes(self) -> Optional[int]:
          """
          Preferred batch size in Kilobytes.
          """
          return pulumi.get(self, "preferred_batch_size_in_kilobytes")
  
      @property
      @pulumi.getter(name="resourceId")
      def resource_id(self) -> Optional[str]:
          """
          The Azure Resource Id that represents the endpoint of the Azure Function destination of an event subscription.
          """
          return pulumi.get(self, "resource_id")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  @pulumi.output_type
  class BoolEqualsAdvancedFilterResponse(dict):
      """
      BoolEquals Advanced Filter.
      """
      def __init__(__self__, *,
                   operator_type: str,
                   key: Optional[str] = None,
                   value: Optional[bool] = None):
          """
          BoolEquals Advanced Filter.
          :param str operator_type: The operator type used for filtering, e.g., NumberIn, StringContains, BoolEquals and others.
                 Expected value is 'BoolEquals'.
          :param str key: The field/property in the event based on which you want to filter.
          :param bool value: The boolean filter value.
          """
          pulumi.set(__self__, "operator_type", 'BoolEquals')
          if key is not None:
              pulumi.set(__self__, "key", key)
          if value is not None:
              pulumi.set(__self__, "value", value)
  
      @property
      @pulumi.getter(name="operatorType")
      def operator_type(self) -> str:
          """
          The operator type used for filtering, e.g., NumberIn, StringContains, BoolEquals and others.
          Expected value is 'BoolEquals'.
          """
          return pulumi.get(self, "operator_type")
  
      @property
      @pulumi.getter
      def key(self) -> Optional[str]:
          """
          The field/property in the event based on which you want to filter.
          """
          return pulumi.get(self, "key")
  
      @property
      @pulumi.getter
      def value(self) -> Optional[bool]:
          """
          The boolean filter value.
          """
          return pulumi.get(self, "value")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  @pulumi.output_type
  class ConnectionStateResponse(dict):
      """
      ConnectionState information.
      """
      def __init__(__self__, *,
                   actions_required: Optional[str] = None,
                   description: Optional[str] = None,
                   status: Optional[str] = None):
          """
          ConnectionState information.
          :param str actions_required: Actions required (if any).
          :param str description: Description of the connection state.
          :param str status: Status of the connection.
          """
          if actions_required is not None:
              pulumi.set(__self__, "actions_required", actions_required)
          if description is not None:
              pulumi.set(__self__, "description", description)
          if status is not None:
              pulumi.set(__self__, "status", status)
  
      @property
      @pulumi.getter(name="actionsRequired")
      def actions_required(self) -> Optional[str]:
          """
          Actions required (if any).
          """
          return pulumi.get(self, "actions_required")
  
      @property
      @pulumi.getter
      def description(self) -> Optional[str]:
          """
          Description of the connection state.
          """
          return pulumi.get(self, "description")
  
      @property
      @pulumi.getter
      def status(self) -> Optional[str]:
          """
          Status of the connection.
          """
          return pulumi.get(self, "status")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  @pulumi.output_type
  class EventHubEventSubscriptionDestinationResponse(dict):
      """
      Information about the event hub destination for an event subscription.
      """
      def __init__(__self__, *,
                   endpoint_type: str,
                   resource_id: Optional[str] = None):
          """
          Information about the event hub destination for an event subscription.
          :param str endpoint_type: Type of the endpoint for the event subscription destination.
                 Expected value is 'EventHub'.
          :param str resource_id: The Azure Resource Id that represents the endpoint of an Event Hub destination of an event subscription.
          """
          pulumi.set(__self__, "endpoint_type", 'EventHub')
          if resource_id is not None:
              pulumi.set(__self__, "resource_id", resource_id)
  
      @property
      @pulumi.getter(name="endpointType")
      def endpoint_type(self) -> str:
          """
          Type of the endpoint for the event subscription destination.
          Expected value is 'EventHub'.
          """
          return pulumi.get(self, "endpoint_type")
  
      @property
      @pulumi.getter(name="resourceId")
      def resource_id(self) -> Optional[str]:
          """
          The Azure Resource Id that represents the endpoint of an Event Hub destination of an event subscription.
          """
          return pulumi.get(self, "resource_id")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  @pulumi.output_type
  class EventSubscriptionFilterResponse(dict):
      """
      Filter for the Event Subscription.
      """
      def __init__(__self__, *,
                   advanced_filters: Optional[Sequence[Any]] = None,
                   included_event_types: Optional[Sequence[str]] = None,
                   is_subject_case_sensitive: Optional[bool] = None,
                   subject_begins_with: Optional[str] = None,
                   subject_ends_with: Optional[str] = None):
          """
          Filter for the Event Subscription.
          :param Sequence[Union['BoolEqualsAdvancedFilterResponseArgs', 'NumberGreaterThanAdvancedFilterResponseArgs', 'NumberGreaterThanOrEqualsAdvancedFilterResponseArgs', 'NumberInAdvancedFilterResponseArgs', 'NumberLessThanAdvancedFilterResponseArgs', 'NumberLessThanOrEqualsAdvancedFilterResponseArgs', 'NumberNotInAdvancedFilterResponseArgs', 'StringBeginsWithAdvancedFilterResponseArgs', 'StringContainsAdvancedFilterResponseArgs', 'StringEndsWithAdvancedFilterResponseArgs', 'StringInAdvancedFilterResponseArgs', 'StringNotInAdvancedFilterResponseArgs']] advanced_filters: An array of advanced filters that are used for filtering event subscriptions.
          :param Sequence[str] included_event_types: A list of applicable event types that need to be part of the event subscription. If it is desired to subscribe to all default event types, set the IncludedEventTypes to null.
          :param bool is_subject_case_sensitive: Specifies if the SubjectBeginsWith and SubjectEndsWith properties of the filter
                 should be compared in a case sensitive manner.
          :param str subject_begins_with: An optional string to filter events for an event subscription based on a resource path prefix.
                 The format of this depends on the publisher of the events.
                 Wildcard characters are not supported in this path.
          :param str subject_ends_with: An optional string to filter events for an event subscription based on a resource path suffix.
                 Wildcard characters are not supported in this path.
          """
          if advanced_filters is not None:
              pulumi.set(__self__, "advanced_filters", advanced_filters)
          if included_event_types is not None:
              pulumi.set(__self__, "included_event_types", included_event_types)
          if is_subject_case_sensitive is None:
              is_subject_case_sensitive = False
          if is_subject_case_sensitive is not None:
              pulumi.set(__self__, "is_subject_case_sensitive", is_subject_case_sensitive)
          if subject_begins_with is not None:
              pulumi.set(__self__, "subject_begins_with", subject_begins_with)
          if subject_ends_with is not None:
              pulumi.set(__self__, "subject_ends_with", subject_ends_with)
  
      @property
      @pulumi.getter(name="advancedFilters")
      def advanced_filters(self) -> Optional[Sequence[Any]]:
          """
          An array of advanced filters that are used for filtering event subscriptions.
          """
          return pulumi.get(self, "advanced_filters")
  
      @property
      @pulumi.getter(name="includedEventTypes")
      def included_event_types(self) -> Optional[Sequence[str]]:
          """
          A list of applicable event types that need to be part of the event subscription. If it is desired to subscribe to all default event types, set the IncludedEventTypes to null.
          """
          return pulumi.get(self, "included_event_types")
  
      @property
      @pulumi.getter(name="isSubjectCaseSensitive")
      def is_subject_case_sensitive(self) -> Optional[bool]:
          """
          Specifies if the SubjectBeginsWith and SubjectEndsWith properties of the filter
          should be compared in a case sensitive manner.
          """
          return pulumi.get(self, "is_subject_case_sensitive")
  
      @property
      @pulumi.getter(name="subjectBeginsWith")
      def subject_begins_with(self) -> Optional[str]:
          """
          An optional string to filter events for an event subscription based on a resource path prefix.
          The format of this depends on the publisher of the events.
          Wildcard characters are not supported in this path.
          """
          return pulumi.get(self, "subject_begins_with")
  
      @property
      @pulumi.getter(name="subjectEndsWith")
      def subject_ends_with(self) -> Optional[str]:
          """
          An optional string to filter events for an event subscription based on a resource path suffix.
          Wildcard characters are not supported in this path.
          """
          return pulumi.get(self, "subject_ends_with")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  @pulumi.output_type
  class HybridConnectionEventSubscriptionDestinationResponse(dict):
      """
      Information about the HybridConnection destination for an event subscription.
      """
      def __init__(__self__, *,
                   endpoint_type: str,
                   resource_id: Optional[str] = None):
          """
          Information about the HybridConnection destination for an event subscription.
          :param str endpoint_type: Type of the endpoint for the event subscription destination.
                 Expected value is 'HybridConnection'.
          :param str resource_id: The Azure Resource ID of an hybrid connection that is the destination of an event subscription.
          """
          pulumi.set(__self__, "endpoint_type", 'HybridConnection')
          if resource_id is not None:
              pulumi.set(__self__, "resource_id", resource_id)
  
      @property
      @pulumi.getter(name="endpointType")
      def endpoint_type(self) -> str:
          """
          Type of the endpoint for the event subscription destination.
          Expected value is 'HybridConnection'.
          """
          return pulumi.get(self, "endpoint_type")
  
      @property
      @pulumi.getter(name="resourceId")
      def resource_id(self) -> Optional[str]:
          """
          The Azure Resource ID of an hybrid connection that is the destination of an event subscription.
          """
          return pulumi.get(self, "resource_id")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  @pulumi.output_type
  class InboundIpRuleResponse(dict):
      def __init__(__self__, *,
                   action: Optional[str] = None,
                   ip_mask: Optional[str] = None):
          """
          :param str action: Action to perform based on the match or no match of the IpMask.
          :param str ip_mask: IP Address in CIDR notation e.g., 10.0.0.0/8.
          """
          if action is not None:
              pulumi.set(__self__, "action", action)
          if ip_mask is not None:
              pulumi.set(__self__, "ip_mask", ip_mask)
  
      @property
      @pulumi.getter
      def action(self) -> Optional[str]:
          """
          Action to perform based on the match or no match of the IpMask.
          """
          return pulumi.get(self, "action")
  
      @property
      @pulumi.getter(name="ipMask")
      def ip_mask(self) -> Optional[str]:
          """
          IP Address in CIDR notation e.g., 10.0.0.0/8.
          """
          return pulumi.get(self, "ip_mask")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  @pulumi.output_type
  class JsonFieldResponse(dict):
      """
      This is used to express the source of an input schema mapping for a single target field in the Event Grid Event schema. This is currently used in the mappings for the 'id', 'topic' and 'eventtime' properties. This represents a field in the input event schema.
      """
      def __init__(__self__, *,
                   source_field: Optional[str] = None):
          """
          This is used to express the source of an input schema mapping for a single target field in the Event Grid Event schema. This is currently used in the mappings for the 'id', 'topic' and 'eventtime' properties. This represents a field in the input event schema.
          :param str source_field: Name of a field in the input event schema that's to be used as the source of a mapping.
          """
          if source_field is not None:
              pulumi.set(__self__, "source_field", source_field)
  
      @property
      @pulumi.getter(name="sourceField")
      def source_field(self) -> Optional[str]:
          """
          Name of a field in the input event schema that's to be used as the source of a mapping.
          """
          return pulumi.get(self, "source_field")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  @pulumi.output_type
  class JsonFieldWithDefaultResponse(dict):
      """
      This is used to express the source of an input schema mapping for a single target field
      in the Event Grid Event schema. This is currently used in the mappings for the 'subject',
      'eventtype' and 'dataversion' properties. This represents a field in the input event schema
      along with a default value to be used, and at least one of these two properties should be provided.
      """
      def __init__(__self__, *,
                   default_value: Optional[str] = None,
                   source_field: Optional[str] = None):
          """
          This is used to express the source of an input schema mapping for a single target field
          in the Event Grid Event schema. This is currently used in the mappings for the 'subject',
          'eventtype' and 'dataversion' properties. This represents a field in the input event schema
          along with a default value to be used, and at least one of these two properties should be provided.
          :param str default_value: The default value to be used for mapping when a SourceField is not provided or if there's no property with the specified name in the published JSON event payload.
          :param str source_field: Name of a field in the input event schema that's to be used as the source of a mapping.
          """
          if default_value is not None:
              pulumi.set(__self__, "default_value", default_value)
          if source_field is not None:
              pulumi.set(__self__, "source_field", source_field)
  
      @property
      @pulumi.getter(name="defaultValue")
      def default_value(self) -> Optional[str]:
          """
          The default value to be used for mapping when a SourceField is not provided or if there's no property with the specified name in the published JSON event payload.
          """
          return pulumi.get(self, "default_value")
  
      @property
      @pulumi.getter(name="sourceField")
      def source_field(self) -> Optional[str]:
          """
          Name of a field in the input event schema that's to be used as the source of a mapping.
          """
          return pulumi.get(self, "source_field")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  @pulumi.output_type
  class JsonInputSchemaMappingResponse(dict):
      """
      This enables publishing to Event Grid using a custom input schema. This can be used to map properties from a custom input JSON schema to the Event Grid event schema.
      """
      def __init__(__self__, *,
                   input_schema_mapping_type: str,
                   data_version: Optional['outputs.JsonFieldWithDefaultResponse'] = None,
                   event_time: Optional['outputs.JsonFieldResponse'] = None,
                   event_type: Optional['outputs.JsonFieldWithDefaultResponse'] = None,
                   id: Optional['outputs.JsonFieldResponse'] = None,
                   subject: Optional['outputs.JsonFieldWithDefaultResponse'] = None,
                   topic: Optional['outputs.JsonFieldResponse'] = None):
          """
          This enables publishing to Event Grid using a custom input schema. This can be used to map properties from a custom input JSON schema to the Event Grid event schema.
          :param str input_schema_mapping_type: Type of the custom mapping
                 Expected value is 'Json'.
          :param 'JsonFieldWithDefaultResponseArgs' data_version: The mapping information for the DataVersion property of the Event Grid Event.
          :param 'JsonFieldResponseArgs' event_time: The mapping information for the EventTime property of the Event Grid Event.
          :param 'JsonFieldWithDefaultResponseArgs' event_type: The mapping information for the EventType property of the Event Grid Event.
          :param 'JsonFieldResponseArgs' id: The mapping information for the Id property of the Event Grid Event.
          :param 'JsonFieldWithDefaultResponseArgs' subject: The mapping information for the Subject property of the Event Grid Event.
          :param 'JsonFieldResponseArgs' topic: The mapping information for the Topic property of the Event Grid Event.
          """
          pulumi.set(__self__, "input_schema_mapping_type", 'Json')
          if data_version is not None:
              pulumi.set(__self__, "data_version", data_version)
          if event_time is not None:
              pulumi.set(__self__, "event_time", event_time)
          if event_type is not None:
              pulumi.set(__self__, "event_type", event_type)
          if id is not None:
              pulumi.set(__self__, "id", id)
          if subject is not None:
              pulumi.set(__self__, "subject", subject)
          if topic is not None:
              pulumi.set(__self__, "topic", topic)
  
      @property
      @pulumi.getter(name="inputSchemaMappingType")
      def input_schema_mapping_type(self) -> str:
          """
          Type of the custom mapping
          Expected value is 'Json'.
          """
          return pulumi.get(self, "input_schema_mapping_type")
  
      @property
      @pulumi.getter(name="dataVersion")
      def data_version(self) -> Optional['outputs.JsonFieldWithDefaultResponse']:
          """
          The mapping information for the DataVersion property of the Event Grid Event.
          """
          return pulumi.get(self, "data_version")
  
      @property
      @pulumi.getter(name="eventTime")
      def event_time(self) -> Optional['outputs.JsonFieldResponse']:
          """
          The mapping information for the EventTime property of the Event Grid Event.
          """
          return pulumi.get(self, "event_time")
  
      @property
      @pulumi.getter(name="eventType")
      def event_type(self) -> Optional['outputs.JsonFieldWithDefaultResponse']:
          """
          The mapping information for the EventType property of the Event Grid Event.
          """
          return pulumi.get(self, "event_type")
  
      @property
      @pulumi.getter
      def id(self) -> Optional['outputs.JsonFieldResponse']:
          """
          The mapping information for the Id property of the Event Grid Event.
          """
          return pulumi.get(self, "id")
  
      @property
      @pulumi.getter
      def subject(self) -> Optional['outputs.JsonFieldWithDefaultResponse']:
          """
          The mapping information for the Subject property of the Event Grid Event.
          """
          return pulumi.get(self, "subject")
  
      @property
      @pulumi.getter
      def topic(self) -> Optional['outputs.JsonFieldResponse']:
          """
          The mapping information for the Topic property of the Event Grid Event.
          """
          return pulumi.get(self, "topic")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  @pulumi.output_type
  class NumberGreaterThanAdvancedFilterResponse(dict):
      """
      NumberGreaterThan Advanced Filter.
      """
      def __init__(__self__, *,
                   operator_type: str,
                   key: Optional[str] = None,
                   value: Optional[float] = None):
          """
          NumberGreaterThan Advanced Filter.
          :param str operator_type: The operator type used for filtering, e.g., NumberIn, StringContains, BoolEquals and others.
                 Expected value is 'NumberGreaterThan'.
          :param str key: The field/property in the event based on which you want to filter.
          :param float value: The filter value.
          """
          pulumi.set(__self__, "operator_type", 'NumberGreaterThan')
          if key is not None:
              pulumi.set(__self__, "key", key)
          if value is not None:
              pulumi.set(__self__, "value", value)
  
      @property
      @pulumi.getter(name="operatorType")
      def operator_type(self) -> str:
          """
          The operator type used for filtering, e.g., NumberIn, StringContains, BoolEquals and others.
          Expected value is 'NumberGreaterThan'.
          """
          return pulumi.get(self, "operator_type")
  
      @property
      @pulumi.getter
      def key(self) -> Optional[str]:
          """
          The field/property in the event based on which you want to filter.
          """
          return pulumi.get(self, "key")
  
      @property
      @pulumi.getter
      def value(self) -> Optional[float]:
          """
          The filter value.
          """
          return pulumi.get(self, "value")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  @pulumi.output_type
  class NumberGreaterThanOrEqualsAdvancedFilterResponse(dict):
      """
      NumberGreaterThanOrEquals Advanced Filter.
      """
      def __init__(__self__, *,
                   operator_type: str,
                   key: Optional[str] = None,
                   value: Optional[float] = None):
          """
          NumberGreaterThanOrEquals Advanced Filter.
          :param str operator_type: The operator type used for filtering, e.g., NumberIn, StringContains, BoolEquals and others.
                 Expected value is 'NumberGreaterThanOrEquals'.
          :param str key: The field/property in the event based on which you want to filter.
          :param float value: The filter value.
          """
          pulumi.set(__self__, "operator_type", 'NumberGreaterThanOrEquals')
          if key is not None:
              pulumi.set(__self__, "key", key)
          if value is not None:
              pulumi.set(__self__, "value", value)
  
      @property
      @pulumi.getter(name="operatorType")
      def operator_type(self) -> str:
          """
          The operator type used for filtering, e.g., NumberIn, StringContains, BoolEquals and others.
          Expected value is 'NumberGreaterThanOrEquals'.
          """
          return pulumi.get(self, "operator_type")
  
      @property
      @pulumi.getter
      def key(self) -> Optional[str]:
          """
          The field/property in the event based on which you want to filter.
          """
          return pulumi.get(self, "key")
  
      @property
      @pulumi.getter
      def value(self) -> Optional[float]:
          """
          The filter value.
          """
          return pulumi.get(self, "value")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  @pulumi.output_type
  class NumberInAdvancedFilterResponse(dict):
      """
      NumberIn Advanced Filter.
      """
      def __init__(__self__, *,
                   operator_type: str,
                   key: Optional[str] = None,
                   values: Optional[Sequence[float]] = None):
          """
          NumberIn Advanced Filter.
          :param str operator_type: The operator type used for filtering, e.g., NumberIn, StringContains, BoolEquals and others.
                 Expected value is 'NumberIn'.
          :param str key: The field/property in the event based on which you want to filter.
          :param Sequence[float] values: The set of filter values.
          """
          pulumi.set(__self__, "operator_type", 'NumberIn')
          if key is not None:
              pulumi.set(__self__, "key", key)
          if values is not None:
              pulumi.set(__self__, "values", values)
  
      @property
      @pulumi.getter(name="operatorType")
      def operator_type(self) -> str:
          """
          The operator type used for filtering, e.g., NumberIn, StringContains, BoolEquals and others.
          Expected value is 'NumberIn'.
          """
          return pulumi.get(self, "operator_type")
  
      @property
      @pulumi.getter
      def key(self) -> Optional[str]:
          """
          The field/property in the event based on which you want to filter.
          """
          return pulumi.get(self, "key")
  
      @property
      @pulumi.getter
      def values(self) -> Optional[Sequence[float]]:
          """
          The set of filter values.
          """
          return pulumi.get(self, "values")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  @pulumi.output_type
  class NumberLessThanAdvancedFilterResponse(dict):
      """
      NumberLessThan Advanced Filter.
      """
      def __init__(__self__, *,
                   operator_type: str,
                   key: Optional[str] = None,
                   value: Optional[float] = None):
          """
          NumberLessThan Advanced Filter.
          :param str operator_type: The operator type used for filtering, e.g., NumberIn, StringContains, BoolEquals and others.
                 Expected value is 'NumberLessThan'.
          :param str key: The field/property in the event based on which you want to filter.
          :param float value: The filter value.
          """
          pulumi.set(__self__, "operator_type", 'NumberLessThan')
          if key is not None:
              pulumi.set(__self__, "key", key)
          if value is not None:
              pulumi.set(__self__, "value", value)
  
      @property
      @pulumi.getter(name="operatorType")
      def operator_type(self) -> str:
          """
          The operator type used for filtering, e.g., NumberIn, StringContains, BoolEquals and others.
          Expected value is 'NumberLessThan'.
          """
          return pulumi.get(self, "operator_type")
  
      @property
      @pulumi.getter
      def key(self) -> Optional[str]:
          """
          The field/property in the event based on which you want to filter.
          """
          return pulumi.get(self, "key")
  
      @property
      @pulumi.getter
      def value(self) -> Optional[float]:
          """
          The filter value.
          """
          return pulumi.get(self, "value")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  @pulumi.output_type
  class NumberLessThanOrEqualsAdvancedFilterResponse(dict):
      """
      NumberLessThanOrEquals Advanced Filter.
      """
      def __init__(__self__, *,
                   operator_type: str,
                   key: Optional[str] = None,
                   value: Optional[float] = None):
          """
          NumberLessThanOrEquals Advanced Filter.
          :param str operator_type: The operator type used for filtering, e.g., NumberIn, StringContains, BoolEquals and others.
                 Expected value is 'NumberLessThanOrEquals'.
          :param str key: The field/property in the event based on which you want to filter.
          :param float value: The filter value.
          """
          pulumi.set(__self__, "operator_type", 'NumberLessThanOrEquals')
          if key is not None:
              pulumi.set(__self__, "key", key)
          if value is not None:
              pulumi.set(__self__, "value", value)
  
      @property
      @pulumi.getter(name="operatorType")
      def operator_type(self) -> str:
          """
          The operator type used for filtering, e.g., NumberIn, StringContains, BoolEquals and others.
          Expected value is 'NumberLessThanOrEquals'.
          """
          return pulumi.get(self, "operator_type")
  
      @property
      @pulumi.getter
      def key(self) -> Optional[str]:
          """
          The field/property in the event based on which you want to filter.
          """
          return pulumi.get(self, "key")
  
      @property
      @pulumi.getter
      def value(self) -> Optional[float]:
          """
          The filter value.
          """
          return pulumi.get(self, "value")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  @pulumi.output_type
  class NumberNotInAdvancedFilterResponse(dict):
      """
      NumberNotIn Advanced Filter.
      """
      def __init__(__self__, *,
                   operator_type: str,
                   key: Optional[str] = None,
                   values: Optional[Sequence[float]] = None):
          """
          NumberNotIn Advanced Filter.
          :param str operator_type: The operator type used for filtering, e.g., NumberIn, StringContains, BoolEquals and others.
                 Expected value is 'NumberNotIn'.
          :param str key: The field/property in the event based on which you want to filter.
          :param Sequence[float] values: The set of filter values.
          """
          pulumi.set(__self__, "operator_type", 'NumberNotIn')
          if key is not None:
              pulumi.set(__self__, "key", key)
          if values is not None:
              pulumi.set(__self__, "values", values)
  
      @property
      @pulumi.getter(name="operatorType")
      def operator_type(self) -> str:
          """
          The operator type used for filtering, e.g., NumberIn, StringContains, BoolEquals and others.
          Expected value is 'NumberNotIn'.
          """
          return pulumi.get(self, "operator_type")
  
      @property
      @pulumi.getter
      def key(self) -> Optional[str]:
          """
          The field/property in the event based on which you want to filter.
          """
          return pulumi.get(self, "key")
  
      @property
      @pulumi.getter
      def values(self) -> Optional[Sequence[float]]:
          """
          The set of filter values.
          """
          return pulumi.get(self, "values")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  @pulumi.output_type
  class PrivateEndpointConnectionResponse(dict):
      def __init__(__self__, *,
                   id: str,
                   name: str,
                   type: str,
                   group_ids: Optional[Sequence[str]] = None,
                   private_endpoint: Optional['outputs.PrivateEndpointResponse'] = None,
                   private_link_service_connection_state: Optional['outputs.ConnectionStateResponse'] = None,
                   provisioning_state: Optional[str] = None):
          """
          :param str id: Fully qualified identifier of the resource.
          :param str name: Name of the resource.
          :param str type: Type of the resource.
          :param Sequence[str] group_ids: GroupIds from the private link service resource.
          :param 'PrivateEndpointResponseArgs' private_endpoint: The Private Endpoint resource for this Connection.
          :param 'ConnectionStateResponseArgs' private_link_service_connection_state: Details about the state of the connection.
          :param str provisioning_state: Provisioning state of the Private Endpoint Connection.
          """
          pulumi.set(__self__, "id", id)
          pulumi.set(__self__, "name", name)
          pulumi.set(__self__, "type", type)
          if group_ids is not None:
              pulumi.set(__self__, "group_ids", group_ids)
          if private_endpoint is not None:
              pulumi.set(__self__, "private_endpoint", private_endpoint)
          if private_link_service_connection_state is not None:
              pulumi.set(__self__, "private_link_service_connection_state", private_link_service_connection_state)
          if provisioning_state is not None:
              pulumi.set(__self__, "provisioning_state", provisioning_state)
  
      @property
      @pulumi.getter
      def id(self) -> str:
          """
          Fully qualified identifier of the resource.
          """
          return pulumi.get(self, "id")
  
      @property
      @pulumi.getter
      def name(self) -> str:
          """
          Name of the resource.
          """
          return pulumi.get(self, "name")
  
      @property
      @pulumi.getter
      def type(self) -> str:
          """
          Type of the resource.
          """
          return pulumi.get(self, "type")
  
      @property
      @pulumi.getter(name="groupIds")
      def group_ids(self) -> Optional[Sequence[str]]:
          """
          GroupIds from the private link service resource.
          """
          return pulumi.get(self, "group_ids")
  
      @property
      @pulumi.getter(name="privateEndpoint")
      def private_endpoint(self) -> Optional['outputs.PrivateEndpointResponse']:
          """
          The Private Endpoint resource for this Connection.
          """
          return pulumi.get(self, "private_endpoint")
  
      @property
      @pulumi.getter(name="privateLinkServiceConnectionState")
      def private_link_service_connection_state(self) -> Optional['outputs.ConnectionStateResponse']:
          """
          Details about the state of the connection.
          """
          return pulumi.get(self, "private_link_service_connection_state")
  
      @property
      @pulumi.getter(name="provisioningState")
      def provisioning_state(self) -> Optional[str]:
          """
          Provisioning state of the Private Endpoint Connection.
          """
          return pulumi.get(self, "provisioning_state")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  @pulumi.output_type
  class PrivateEndpointResponse(dict):
      """
      PrivateEndpoint information.
      """
      def __init__(__self__, *,
                   id: Optional[str] = None):
          """
          PrivateEndpoint information.
          :param str id: The ARM identifier for Private Endpoint.
          """
          if id is not None:
              pulumi.set(__self__, "id", id)
  
      @property
      @pulumi.getter
      def id(self) -> Optional[str]:
          """
          The ARM identifier for Private Endpoint.
          """
          return pulumi.get(self, "id")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  @pulumi.output_type
  class RetryPolicyResponse(dict):
      """
      Information about the retry policy for an event subscription.
      """
      def __init__(__self__, *,
                   event_time_to_live_in_minutes: Optional[int] = None,
                   max_delivery_attempts: Optional[int] = None):
          """
          Information about the retry policy for an event subscription.
          :param int event_time_to_live_in_minutes: Time To Live (in minutes) for events.
          :param int max_delivery_attempts: Maximum number of delivery retry attempts for events.
          """
          if event_time_to_live_in_minutes is not None:
              pulumi.set(__self__, "event_time_to_live_in_minutes", event_time_to_live_in_minutes)
          if max_delivery_attempts is not None:
              pulumi.set(__self__, "max_delivery_attempts", max_delivery_attempts)
  
      @property
      @pulumi.getter(name="eventTimeToLiveInMinutes")
      def event_time_to_live_in_minutes(self) -> Optional[int]:
          """
          Time To Live (in minutes) for events.
          """
          return pulumi.get(self, "event_time_to_live_in_minutes")
  
      @property
      @pulumi.getter(name="maxDeliveryAttempts")
      def max_delivery_attempts(self) -> Optional[int]:
          """
          Maximum number of delivery retry attempts for events.
          """
          return pulumi.get(self, "max_delivery_attempts")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  @pulumi.output_type
  class ServiceBusQueueEventSubscriptionDestinationResponse(dict):
      """
      Information about the service bus destination for an event subscription.
      """
      def __init__(__self__, *,
                   endpoint_type: str,
                   resource_id: Optional[str] = None):
          """
          Information about the service bus destination for an event subscription.
          :param str endpoint_type: Type of the endpoint for the event subscription destination.
                 Expected value is 'ServiceBusQueue'.
          :param str resource_id: The Azure Resource Id that represents the endpoint of the Service Bus destination of an event subscription.
          """
          pulumi.set(__self__, "endpoint_type", 'ServiceBusQueue')
          if resource_id is not None:
              pulumi.set(__self__, "resource_id", resource_id)
  
      @property
      @pulumi.getter(name="endpointType")
      def endpoint_type(self) -> str:
          """
          Type of the endpoint for the event subscription destination.
          Expected value is 'ServiceBusQueue'.
          """
          return pulumi.get(self, "endpoint_type")
  
      @property
      @pulumi.getter(name="resourceId")
      def resource_id(self) -> Optional[str]:
          """
          The Azure Resource Id that represents the endpoint of the Service Bus destination of an event subscription.
          """
          return pulumi.get(self, "resource_id")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  @pulumi.output_type
  class ServiceBusTopicEventSubscriptionDestinationResponse(dict):
      """
      Information about the service bus topic destination for an event subscription.
      """
      def __init__(__self__, *,
                   endpoint_type: str,
                   resource_id: Optional[str] = None):
          """
          Information about the service bus topic destination for an event subscription.
          :param str endpoint_type: Type of the endpoint for the event subscription destination.
                 Expected value is 'ServiceBusTopic'.
          :param str resource_id: The Azure Resource Id that represents the endpoint of the Service Bus Topic destination of an event subscription.
          """
          pulumi.set(__self__, "endpoint_type", 'ServiceBusTopic')
          if resource_id is not None:
              pulumi.set(__self__, "resource_id", resource_id)
  
      @property
      @pulumi.getter(name="endpointType")
      def endpoint_type(self) -> str:
          """
          Type of the endpoint for the event subscription destination.
          Expected value is 'ServiceBusTopic'.
          """
          return pulumi.get(self, "endpoint_type")
  
      @property
      @pulumi.getter(name="resourceId")
      def resource_id(self) -> Optional[str]:
          """
          The Azure Resource Id that represents the endpoint of the Service Bus Topic destination of an event subscription.
          """
          return pulumi.get(self, "resource_id")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  @pulumi.output_type
  class StorageBlobDeadLetterDestinationResponse(dict):
      """
      Information about the storage blob based dead letter destination.
      """
      def __init__(__self__, *,
                   endpoint_type: str,
                   blob_container_name: Optional[str] = None,
                   resource_id: Optional[str] = None):
          """
          Information about the storage blob based dead letter destination.
          :param str endpoint_type: Type of the endpoint for the dead letter destination
                 Expected value is 'StorageBlob'.
          :param str blob_container_name: The name of the Storage blob container that is the destination of the deadletter events
          :param str resource_id: The Azure Resource ID of the storage account that is the destination of the deadletter events
          """
          pulumi.set(__self__, "endpoint_type", 'StorageBlob')
          if blob_container_name is not None:
              pulumi.set(__self__, "blob_container_name", blob_container_name)
          if resource_id is not None:
              pulumi.set(__self__, "resource_id", resource_id)
  
      @property
      @pulumi.getter(name="endpointType")
      def endpoint_type(self) -> str:
          """
          Type of the endpoint for the dead letter destination
          Expected value is 'StorageBlob'.
          """
          return pulumi.get(self, "endpoint_type")
  
      @property
      @pulumi.getter(name="blobContainerName")
      def blob_container_name(self) -> Optional[str]:
          """
          The name of the Storage blob container that is the destination of the deadletter events
          """
          return pulumi.get(self, "blob_container_name")
  
      @property
      @pulumi.getter(name="resourceId")
      def resource_id(self) -> Optional[str]:
          """
          The Azure Resource ID of the storage account that is the destination of the deadletter events
          """
          return pulumi.get(self, "resource_id")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  @pulumi.output_type
  class StorageQueueEventSubscriptionDestinationResponse(dict):
      """
      Information about the storage queue destination for an event subscription.
      """
      def __init__(__self__, *,
                   endpoint_type: str,
                   queue_name: Optional[str] = None,
                   resource_id: Optional[str] = None):
          """
          Information about the storage queue destination for an event subscription.
          :param str endpoint_type: Type of the endpoint for the event subscription destination.
                 Expected value is 'StorageQueue'.
          :param str queue_name: The name of the Storage queue under a storage account that is the destination of an event subscription.
          :param str resource_id: The Azure Resource ID of the storage account that contains the queue that is the destination of an event subscription.
          """
          pulumi.set(__self__, "endpoint_type", 'StorageQueue')
          if queue_name is not None:
              pulumi.set(__self__, "queue_name", queue_name)
          if resource_id is not None:
              pulumi.set(__self__, "resource_id", resource_id)
  
      @property
      @pulumi.getter(name="endpointType")
      def endpoint_type(self) -> str:
          """
          Type of the endpoint for the event subscription destination.
          Expected value is 'StorageQueue'.
          """
          return pulumi.get(self, "endpoint_type")
  
      @property
      @pulumi.getter(name="queueName")
      def queue_name(self) -> Optional[str]:
          """
          The name of the Storage queue under a storage account that is the destination of an event subscription.
          """
          return pulumi.get(self, "queue_name")
  
      @property
      @pulumi.getter(name="resourceId")
      def resource_id(self) -> Optional[str]:
          """
          The Azure Resource ID of the storage account that contains the queue that is the destination of an event subscription.
          """
          return pulumi.get(self, "resource_id")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  @pulumi.output_type
  class StringBeginsWithAdvancedFilterResponse(dict):
      """
      StringBeginsWith Advanced Filter.
      """
      def __init__(__self__, *,
                   operator_type: str,
                   key: Optional[str] = None,
                   values: Optional[Sequence[str]] = None):
          """
          StringBeginsWith Advanced Filter.
          :param str operator_type: The operator type used for filtering, e.g., NumberIn, StringContains, BoolEquals and others.
                 Expected value is 'StringBeginsWith'.
          :param str key: The field/property in the event based on which you want to filter.
          :param Sequence[str] values: The set of filter values.
          """
          pulumi.set(__self__, "operator_type", 'StringBeginsWith')
          if key is not None:
              pulumi.set(__self__, "key", key)
          if values is not None:
              pulumi.set(__self__, "values", values)
  
      @property
      @pulumi.getter(name="operatorType")
      def operator_type(self) -> str:
          """
          The operator type used for filtering, e.g., NumberIn, StringContains, BoolEquals and others.
          Expected value is 'StringBeginsWith'.
          """
          return pulumi.get(self, "operator_type")
  
      @property
      @pulumi.getter
      def key(self) -> Optional[str]:
          """
          The field/property in the event based on which you want to filter.
          """
          return pulumi.get(self, "key")
  
      @property
      @pulumi.getter
      def values(self) -> Optional[Sequence[str]]:
          """
          The set of filter values.
          """
          return pulumi.get(self, "values")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  @pulumi.output_type
  class StringContainsAdvancedFilterResponse(dict):
      """
      StringContains Advanced Filter.
      """
      def __init__(__self__, *,
                   operator_type: str,
                   key: Optional[str] = None,
                   values: Optional[Sequence[str]] = None):
          """
          StringContains Advanced Filter.
          :param str operator_type: The operator type used for filtering, e.g., NumberIn, StringContains, BoolEquals and others.
                 Expected value is 'StringContains'.
          :param str key: The field/property in the event based on which you want to filter.
          :param Sequence[str] values: The set of filter values.
          """
          pulumi.set(__self__, "operator_type", 'StringContains')
          if key is not None:
              pulumi.set(__self__, "key", key)
          if values is not None:
              pulumi.set(__self__, "values", values)
  
      @property
      @pulumi.getter(name="operatorType")
      def operator_type(self) -> str:
          """
          The operator type used for filtering, e.g., NumberIn, StringContains, BoolEquals and others.
          Expected value is 'StringContains'.
          """
          return pulumi.get(self, "operator_type")
  
      @property
      @pulumi.getter
      def key(self) -> Optional[str]:
          """
          The field/property in the event based on which you want to filter.
          """
          return pulumi.get(self, "key")
  
      @property
      @pulumi.getter
      def values(self) -> Optional[Sequence[str]]:
          """
          The set of filter values.
          """
          return pulumi.get(self, "values")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  @pulumi.output_type
  class StringEndsWithAdvancedFilterResponse(dict):
      """
      StringEndsWith Advanced Filter.
      """
      def __init__(__self__, *,
                   operator_type: str,
                   key: Optional[str] = None,
                   values: Optional[Sequence[str]] = None):
          """
          StringEndsWith Advanced Filter.
          :param str operator_type: The operator type used for filtering, e.g., NumberIn, StringContains, BoolEquals and others.
                 Expected value is 'StringEndsWith'.
          :param str key: The field/property in the event based on which you want to filter.
          :param Sequence[str] values: The set of filter values.
          """
          pulumi.set(__self__, "operator_type", 'StringEndsWith')
          if key is not None:
              pulumi.set(__self__, "key", key)
          if values is not None:
              pulumi.set(__self__, "values", values)
  
      @property
      @pulumi.getter(name="operatorType")
      def operator_type(self) -> str:
          """
          The operator type used for filtering, e.g., NumberIn, StringContains, BoolEquals and others.
          Expected value is 'StringEndsWith'.
          """
          return pulumi.get(self, "operator_type")
  
      @property
      @pulumi.getter
      def key(self) -> Optional[str]:
          """
          The field/property in the event based on which you want to filter.
          """
          return pulumi.get(self, "key")
  
      @property
      @pulumi.getter
      def values(self) -> Optional[Sequence[str]]:
          """
          The set of filter values.
          """
          return pulumi.get(self, "values")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  @pulumi.output_type
  class StringInAdvancedFilterResponse(dict):
      """
      StringIn Advanced Filter.
      """
      def __init__(__self__, *,
                   operator_type: str,
                   key: Optional[str] = None,
                   values: Optional[Sequence[str]] = None):
          """
          StringIn Advanced Filter.
          :param str operator_type: The operator type used for filtering, e.g., NumberIn, StringContains, BoolEquals and others.
                 Expected value is 'StringIn'.
          :param str key: The field/property in the event based on which you want to filter.
          :param Sequence[str] values: The set of filter values.
          """
          pulumi.set(__self__, "operator_type", 'StringIn')
          if key is not None:
              pulumi.set(__self__, "key", key)
          if values is not None:
              pulumi.set(__self__, "values", values)
  
      @property
      @pulumi.getter(name="operatorType")
      def operator_type(self) -> str:
          """
          The operator type used for filtering, e.g., NumberIn, StringContains, BoolEquals and others.
          Expected value is 'StringIn'.
          """
          return pulumi.get(self, "operator_type")
  
      @property
      @pulumi.getter
      def key(self) -> Optional[str]:
          """
          The field/property in the event based on which you want to filter.
          """
          return pulumi.get(self, "key")
  
      @property
      @pulumi.getter
      def values(self) -> Optional[Sequence[str]]:
          """
          The set of filter values.
          """
          return pulumi.get(self, "values")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  @pulumi.output_type
  class StringNotInAdvancedFilterResponse(dict):
      """
      StringNotIn Advanced Filter.
      """
      def __init__(__self__, *,
                   operator_type: str,
                   key: Optional[str] = None,
                   values: Optional[Sequence[str]] = None):
          """
          StringNotIn Advanced Filter.
          :param str operator_type: The operator type used for filtering, e.g., NumberIn, StringContains, BoolEquals and others.
                 Expected value is 'StringNotIn'.
          :param str key: The field/property in the event based on which you want to filter.
          :param Sequence[str] values: The set of filter values.
          """
          pulumi.set(__self__, "operator_type", 'StringNotIn')
          if key is not None:
              pulumi.set(__self__, "key", key)
          if values is not None:
              pulumi.set(__self__, "values", values)
  
      @property
      @pulumi.getter(name="operatorType")
      def operator_type(self) -> str:
          """
          The operator type used for filtering, e.g., NumberIn, StringContains, BoolEquals and others.
          Expected value is 'StringNotIn'.
          """
          return pulumi.get(self, "operator_type")
  
      @property
      @pulumi.getter
      def key(self) -> Optional[str]:
          """
          The field/property in the event based on which you want to filter.
          """
          return pulumi.get(self, "key")
  
      @property
      @pulumi.getter
      def values(self) -> Optional[Sequence[str]]:
          """
          The set of filter values.
          """
          return pulumi.get(self, "values")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  @pulumi.output_type
  class WebHookEventSubscriptionDestinationResponse(dict):
      """
      Information about the webhook destination for an event subscription.
      """
      def __init__(__self__, *,
                   endpoint_base_url: str,
                   endpoint_type: str,
                   azure_active_directory_application_id_or_uri: Optional[str] = None,
                   azure_active_directory_tenant_id: Optional[str] = None,
                   endpoint_url: Optional[str] = None,
                   max_events_per_batch: Optional[int] = None,
                   preferred_batch_size_in_kilobytes: Optional[int] = None):
          """
          Information about the webhook destination for an event subscription.
          :param str endpoint_base_url: The base URL that represents the endpoint of the destination of an event subscription.
          :param str endpoint_type: Type of the endpoint for the event subscription destination.
                 Expected value is 'WebHook'.
          :param str azure_active_directory_application_id_or_uri: The Azure Active Directory Application ID or URI to get the access token that will be included as the bearer token in delivery requests.
          :param str azure_active_directory_tenant_id: The Azure Active Directory Tenant ID to get the access token that will be included as the bearer token in delivery requests.
          :param str endpoint_url: The URL that represents the endpoint of the destination of an event subscription.
          :param int max_events_per_batch: Maximum number of events per batch.
          :param int preferred_batch_size_in_kilobytes: Preferred batch size in Kilobytes.
          """
          pulumi.set(__self__, "endpoint_base_url", endpoint_base_url)
          pulumi.set(__self__, "endpoint_type", 'WebHook')
          if azure_active_directory_application_id_or_uri is not None:
              pulumi.set(__self__, "azure_active_directory_application_id_or_uri", azure_active_directory_application_id_or_uri)
          if azure_active_directory_tenant_id is not None:
              pulumi.set(__self__, "azure_active_directory_tenant_id", azure_active_directory_tenant_id)
          if endpoint_url is not None:
              pulumi.set(__self__, "endpoint_url", endpoint_url)
          if max_events_per_batch is not None:
              pulumi.set(__self__, "max_events_per_batch", max_events_per_batch)
          if preferred_batch_size_in_kilobytes is not None:
              pulumi.set(__self__, "preferred_batch_size_in_kilobytes", preferred_batch_size_in_kilobytes)
  
      @property
      @pulumi.getter(name="endpointBaseUrl")
      def endpoint_base_url(self) -> str:
          """
          The base URL that represents the endpoint of the destination of an event subscription.
          """
          return pulumi.get(self, "endpoint_base_url")
  
      @property
      @pulumi.getter(name="endpointType")
      def endpoint_type(self) -> str:
          """
          Type of the endpoint for the event subscription destination.
          Expected value is 'WebHook'.
          """
          return pulumi.get(self, "endpoint_type")
  
      @property
      @pulumi.getter(name="azureActiveDirectoryApplicationIdOrUri")
      def azure_active_directory_application_id_or_uri(self) -> Optional[str]:
          """
          The Azure Active Directory Application ID or URI to get the access token that will be included as the bearer token in delivery requests.
          """
          return pulumi.get(self, "azure_active_directory_application_id_or_uri")
  
      @property
      @pulumi.getter(name="azureActiveDirectoryTenantId")
      def azure_active_directory_tenant_id(self) -> Optional[str]:
          """
          The Azure Active Directory Tenant ID to get the access token that will be included as the bearer token in delivery requests.
          """
          return pulumi.get(self, "azure_active_directory_tenant_id")
  
      @property
      @pulumi.getter(name="endpointUrl")
      def endpoint_url(self) -> Optional[str]:
          """
          The URL that represents the endpoint of the destination of an event subscription.
          """
          return pulumi.get(self, "endpoint_url")
  
      @property
      @pulumi.getter(name="maxEventsPerBatch")
      def max_events_per_batch(self) -> Optional[int]:
          """
          Maximum number of events per batch.
          """
          return pulumi.get(self, "max_events_per_batch")
  
      @property
      @pulumi.getter(name="preferredBatchSizeInKilobytes")
      def preferred_batch_size_in_kilobytes(self) -> Optional[int]:
          """
          Preferred batch size in Kilobytes.
          """
          return pulumi.get(self, "preferred_batch_size_in_kilobytes")
  
      def _translate_property(self, prop):
          return _tables.CAMEL_TO_SNAKE_CASE_TABLE.get(prop) or prop
  
  
  