def _build_schema_resource_type_registration_read()

in src/providerhub/azext_providerhub/aaz/latest/providerhub/resource_type_registration/_update.py [0:0]


    def _build_schema_resource_type_registration_read(cls, _schema):
        if cls._schema_resource_type_registration_read is not None:
            _schema.id = cls._schema_resource_type_registration_read.id
            _schema.kind = cls._schema_resource_type_registration_read.kind
            _schema.name = cls._schema_resource_type_registration_read.name
            _schema.properties = cls._schema_resource_type_registration_read.properties
            _schema.system_data = cls._schema_resource_type_registration_read.system_data
            _schema.type = cls._schema_resource_type_registration_read.type
            return

        cls._schema_resource_type_registration_read = _schema_resource_type_registration_read = AAZObjectType()

        resource_type_registration_read = _schema_resource_type_registration_read
        resource_type_registration_read.id = AAZStrType(
            flags={"read_only": True},
        )
        resource_type_registration_read.kind = AAZStrType()
        resource_type_registration_read.name = AAZStrType(
            flags={"read_only": True},
        )
        resource_type_registration_read.properties = AAZObjectType()
        resource_type_registration_read.system_data = AAZObjectType(
            serialized_name="systemData",
            flags={"read_only": True},
        )
        resource_type_registration_read.type = AAZStrType(
            flags={"read_only": True},
        )

        properties = _schema_resource_type_registration_read.properties
        properties.add_resource_list_target_locations = AAZBoolType(
            serialized_name="addResourceListTargetLocations",
        )
        properties.additional_options = AAZStrType(
            serialized_name="additionalOptions",
        )
        properties.allow_empty_role_assignments = AAZBoolType(
            serialized_name="allowEmptyRoleAssignments",
        )
        properties.allowed_resource_names = AAZListType(
            serialized_name="allowedResourceNames",
        )
        properties.allowed_template_deployment_reference_actions = AAZListType(
            serialized_name="allowedTemplateDeploymentReferenceActions",
        )
        properties.allowed_unauthorized_actions = AAZListType(
            serialized_name="allowedUnauthorizedActions",
        )
        properties.api_profiles = AAZListType(
            serialized_name="apiProfiles",
        )
        properties.async_operation_resource_type_name = AAZStrType(
            serialized_name="asyncOperationResourceTypeName",
        )
        properties.async_timeout_rules = AAZListType(
            serialized_name="asyncTimeoutRules",
        )
        properties.authorization_action_mappings = AAZListType(
            serialized_name="authorizationActionMappings",
        )
        properties.availability_zone_rule = AAZObjectType(
            serialized_name="availabilityZoneRule",
        )
        properties.capacity_rule = AAZObjectType(
            serialized_name="capacityRule",
        )
        properties.category = AAZStrType()
        properties.check_name_availability_specifications = AAZObjectType(
            serialized_name="checkNameAvailabilitySpecifications",
        )
        properties.common_api_versions = AAZListType(
            serialized_name="commonApiVersions",
        )
        properties.cross_tenant_token_validation = AAZStrType(
            serialized_name="crossTenantTokenValidation",
        )
        properties.default_api_version = AAZStrType(
            serialized_name="defaultApiVersion",
        )
        properties.disallowed_action_verbs = AAZListType(
            serialized_name="disallowedActionVerbs",
        )
        properties.disallowed_end_user_operations = AAZListType(
            serialized_name="disallowedEndUserOperations",
        )
        properties.dsts_configuration = AAZObjectType(
            serialized_name="dstsConfiguration",
        )
        properties.enable_async_operation = AAZBoolType(
            serialized_name="enableAsyncOperation",
        )
        properties.enable_third_party_s2_s = AAZBoolType(
            serialized_name="enableThirdPartyS2S",
        )
        properties.endpoints = AAZListType()
        properties.extended_locations = AAZListType(
            serialized_name="extendedLocations",
        )
        properties.extension_options = AAZObjectType(
            serialized_name="extensionOptions",
        )
        properties.features_rule = AAZObjectType(
            serialized_name="featuresRule",
        )
        properties.frontdoor_request_mode = AAZStrType(
            serialized_name="frontdoorRequestMode",
        )
        properties.grouping_tag = AAZStrType(
            serialized_name="groupingTag",
        )
        properties.identity_management = AAZObjectType(
            serialized_name="identityManagement",
        )
        properties.is_pure_proxy = AAZBoolType(
            serialized_name="isPureProxy",
        )
        properties.legacy_name = AAZStrType(
            serialized_name="legacyName",
        )
        properties.legacy_names = AAZListType(
            serialized_name="legacyNames",
        )
        properties.legacy_policy = AAZObjectType(
            serialized_name="legacyPolicy",
        )
        properties.linked_access_checks = AAZListType(
            serialized_name="linkedAccessChecks",
        )
        properties.linked_notification_rules = AAZListType(
            serialized_name="linkedNotificationRules",
        )
        properties.linked_operation_rules = AAZListType(
            serialized_name="linkedOperationRules",
        )
        properties.logging_rules = AAZListType(
            serialized_name="loggingRules",
        )
        properties.managed_resource_group_configuration = AAZObjectType(
            serialized_name="managedResourceGroupConfiguration",
        )
        properties.management = AAZObjectType()
        properties.manifest_link = AAZStrType(
            serialized_name="manifestLink",
        )
        properties.marketplace_options = AAZObjectType(
            serialized_name="marketplaceOptions",
        )
        properties.marketplace_type = AAZStrType(
            serialized_name="marketplaceType",
        )
        properties.metadata = AAZDictType()
        properties.notifications = AAZListType()
        properties.on_behalf_of_tokens = AAZObjectType(
            serialized_name="onBehalfOfTokens",
        )
        properties.open_api_configuration = AAZObjectType(
            serialized_name="openApiConfiguration",
        )
        properties.policy_execution_type = AAZStrType(
            serialized_name="policyExecutionType",
        )
        properties.private_endpoint_configuration = AAZObjectType(
            serialized_name="privateEndpointConfiguration",
        )
        properties.provisioning_state = AAZStrType(
            serialized_name="provisioningState",
            flags={"read_only": True},
        )
        properties.quota_rule = AAZObjectType(
            serialized_name="quotaRule",
        )
        properties.regionality = AAZStrType()
        properties.request_header_options = AAZObjectType(
            serialized_name="requestHeaderOptions",
        )
        properties.required_features = AAZListType(
            serialized_name="requiredFeatures",
        )
        properties.resource_cache = AAZObjectType(
            serialized_name="resourceCache",
        )
        properties.resource_concurrency_control_options = AAZDictType(
            serialized_name="resourceConcurrencyControlOptions",
        )
        properties.resource_deletion_policy = AAZStrType(
            serialized_name="resourceDeletionPolicy",
        )
        properties.resource_graph_configuration = AAZObjectType(
            serialized_name="resourceGraphConfiguration",
        )
        properties.resource_management_options = AAZObjectType(
            serialized_name="resourceManagementOptions",
        )
        properties.resource_move_policy = AAZObjectType(
            serialized_name="resourceMovePolicy",
        )
        properties.resource_provider_authorization_rules = AAZObjectType(
            serialized_name="resourceProviderAuthorizationRules",
        )
        properties.resource_query_management = AAZObjectType(
            serialized_name="resourceQueryManagement",
        )
        properties.resource_sub_type = AAZStrType(
            serialized_name="resourceSubType",
        )
        properties.resource_type_common_attribute_management = AAZObjectType(
            serialized_name="resourceTypeCommonAttributeManagement",
        )
        properties.resource_validation = AAZStrType(
            serialized_name="resourceValidation",
        )
        properties.routing_rule = AAZObjectType(
            serialized_name="routingRule",
        )
        properties.routing_type = AAZStrType(
            serialized_name="routingType",
        )
        properties.service_tree_infos = AAZListType(
            serialized_name="serviceTreeInfos",
        )
        properties.sku_link = AAZStrType(
            serialized_name="skuLink",
        )
        properties.subscription_lifecycle_notification_specifications = AAZObjectType(
            serialized_name="subscriptionLifecycleNotificationSpecifications",
        )
        properties.subscription_state_rules = AAZListType(
            serialized_name="subscriptionStateRules",
        )
        properties.supports_tags = AAZBoolType(
            serialized_name="supportsTags",
        )
        properties.swagger_specifications = AAZListType(
            serialized_name="swaggerSpecifications",
        )
        properties.template_deployment_options = AAZObjectType(
            serialized_name="templateDeploymentOptions",
        )
        properties.template_deployment_policy = AAZObjectType(
            serialized_name="templateDeploymentPolicy",
        )
        properties.throttling_rules = AAZListType(
            serialized_name="throttlingRules",
        )
        properties.token_auth_configuration = AAZObjectType(
            serialized_name="tokenAuthConfiguration",
        )
        cls._build_schema_token_auth_configuration_read(properties.token_auth_configuration)

        allowed_resource_names = _schema_resource_type_registration_read.properties.allowed_resource_names
        allowed_resource_names.Element = AAZObjectType()

        _element = _schema_resource_type_registration_read.properties.allowed_resource_names.Element
        _element.get_action_verb = AAZStrType(
            serialized_name="getActionVerb",
        )
        _element.name = AAZStrType()

        allowed_template_deployment_reference_actions = _schema_resource_type_registration_read.properties.allowed_template_deployment_reference_actions
        allowed_template_deployment_reference_actions.Element = AAZStrType()

        allowed_unauthorized_actions = _schema_resource_type_registration_read.properties.allowed_unauthorized_actions
        allowed_unauthorized_actions.Element = AAZStrType()

        api_profiles = _schema_resource_type_registration_read.properties.api_profiles
        api_profiles.Element = AAZObjectType()

        _element = _schema_resource_type_registration_read.properties.api_profiles.Element
        _element.api_version = AAZStrType(
            serialized_name="apiVersion",
        )
        _element.profile_version = AAZStrType(
            serialized_name="profileVersion",
        )

        async_timeout_rules = _schema_resource_type_registration_read.properties.async_timeout_rules
        async_timeout_rules.Element = AAZObjectType()

        _element = _schema_resource_type_registration_read.properties.async_timeout_rules.Element
        _element.action_name = AAZStrType(
            serialized_name="actionName",
        )
        _element.timeout = AAZStrType()

        authorization_action_mappings = _schema_resource_type_registration_read.properties.authorization_action_mappings
        authorization_action_mappings.Element = AAZObjectType()

        _element = _schema_resource_type_registration_read.properties.authorization_action_mappings.Element
        _element.desired = AAZStrType()
        _element.original = AAZStrType()

        availability_zone_rule = _schema_resource_type_registration_read.properties.availability_zone_rule
        availability_zone_rule.availability_zone_policy = AAZStrType(
            serialized_name="availabilityZonePolicy",
        )

        capacity_rule = _schema_resource_type_registration_read.properties.capacity_rule
        capacity_rule.capacity_policy = AAZStrType(
            serialized_name="capacityPolicy",
        )
        capacity_rule.sku_alias = AAZStrType(
            serialized_name="skuAlias",
        )

        check_name_availability_specifications = _schema_resource_type_registration_read.properties.check_name_availability_specifications
        check_name_availability_specifications.enable_default_validation = AAZBoolType(
            serialized_name="enableDefaultValidation",
        )
        check_name_availability_specifications.resource_types_with_custom_validation = AAZListType(
            serialized_name="resourceTypesWithCustomValidation",
        )

        resource_types_with_custom_validation = _schema_resource_type_registration_read.properties.check_name_availability_specifications.resource_types_with_custom_validation
        resource_types_with_custom_validation.Element = AAZStrType()

        common_api_versions = _schema_resource_type_registration_read.properties.common_api_versions
        common_api_versions.Element = AAZStrType()

        disallowed_action_verbs = _schema_resource_type_registration_read.properties.disallowed_action_verbs
        disallowed_action_verbs.Element = AAZStrType()

        disallowed_end_user_operations = _schema_resource_type_registration_read.properties.disallowed_end_user_operations
        disallowed_end_user_operations.Element = AAZStrType()

        dsts_configuration = _schema_resource_type_registration_read.properties.dsts_configuration
        dsts_configuration.service_dns_name = AAZStrType(
            serialized_name="serviceDnsName",
        )
        dsts_configuration.service_name = AAZStrType(
            serialized_name="serviceName",
            flags={"required": True},
        )

        endpoints = _schema_resource_type_registration_read.properties.endpoints
        endpoints.Element = AAZObjectType()

        _element = _schema_resource_type_registration_read.properties.endpoints.Element
        _element.api_version = AAZStrType(
            serialized_name="apiVersion",
        )
        _element.api_versions = AAZListType(
            serialized_name="apiVersions",
        )
        _element.data_boundary = AAZStrType(
            serialized_name="dataBoundary",
        )
        _element.dsts_configuration = AAZObjectType(
            serialized_name="dstsConfiguration",
        )
        _element.enabled = AAZBoolType()
        _element.endpoint_type = AAZStrType(
            serialized_name="endpointType",
        )
        _element.endpoint_uri = AAZStrType(
            serialized_name="endpointUri",
        )
        _element.extensions = AAZListType()
        _element.features_rule = AAZObjectType(
            serialized_name="featuresRule",
        )
        _element.kind = AAZStrType()
        _element.locations = AAZListType()
        _element.required_features = AAZListType(
            serialized_name="requiredFeatures",
        )
        _element.sku_link = AAZStrType(
            serialized_name="skuLink",
        )
        _element.timeout = AAZStrType()
        _element.token_auth_configuration = AAZObjectType(
            serialized_name="tokenAuthConfiguration",
        )
        cls._build_schema_token_auth_configuration_read(_element.token_auth_configuration)
        _element.zones = AAZListType()

        api_versions = _schema_resource_type_registration_read.properties.endpoints.Element.api_versions
        api_versions.Element = AAZStrType()

        dsts_configuration = _schema_resource_type_registration_read.properties.endpoints.Element.dsts_configuration
        dsts_configuration.service_dns_name = AAZStrType(
            serialized_name="serviceDnsName",
        )
        dsts_configuration.service_name = AAZStrType(
            serialized_name="serviceName",
            flags={"required": True},
        )

        extensions = _schema_resource_type_registration_read.properties.endpoints.Element.extensions
        extensions.Element = AAZObjectType()

        _element = _schema_resource_type_registration_read.properties.endpoints.Element.extensions.Element
        _element.endpoint_uri = AAZStrType(
            serialized_name="endpointUri",
        )
        _element.extension_categories = AAZListType(
            serialized_name="extensionCategories",
        )
        _element.timeout = AAZStrType()

        extension_categories = _schema_resource_type_registration_read.properties.endpoints.Element.extensions.Element.extension_categories
        extension_categories.Element = AAZStrType()

        features_rule = _schema_resource_type_registration_read.properties.endpoints.Element.features_rule
        features_rule.required_features_policy = AAZStrType(
            serialized_name="requiredFeaturesPolicy",
            flags={"required": True},
        )

        locations = _schema_resource_type_registration_read.properties.endpoints.Element.locations
        locations.Element = AAZStrType()

        required_features = _schema_resource_type_registration_read.properties.endpoints.Element.required_features
        required_features.Element = AAZStrType()

        zones = _schema_resource_type_registration_read.properties.endpoints.Element.zones
        zones.Element = AAZStrType()

        extended_locations = _schema_resource_type_registration_read.properties.extended_locations
        extended_locations.Element = AAZObjectType()

        _element = _schema_resource_type_registration_read.properties.extended_locations.Element
        _element.supported_policy = AAZStrType(
            serialized_name="supportedPolicy",
        )
        _element.type = AAZStrType()

        extension_options = _schema_resource_type_registration_read.properties.extension_options
        extension_options.resource_creation_begin = AAZObjectType(
            serialized_name="resourceCreationBegin",
        )

        resource_creation_begin = _schema_resource_type_registration_read.properties.extension_options.resource_creation_begin
        resource_creation_begin.request = AAZListType()
        resource_creation_begin.response = AAZListType()

        request = _schema_resource_type_registration_read.properties.extension_options.resource_creation_begin.request
        request.Element = AAZStrType()

        response = _schema_resource_type_registration_read.properties.extension_options.resource_creation_begin.response
        response.Element = AAZStrType()

        features_rule = _schema_resource_type_registration_read.properties.features_rule
        features_rule.required_features_policy = AAZStrType(
            serialized_name="requiredFeaturesPolicy",
            flags={"required": True},
        )

        identity_management = _schema_resource_type_registration_read.properties.identity_management
        identity_management.application_id = AAZStrType(
            serialized_name="applicationId",
        )
        identity_management.application_ids = AAZListType(
            serialized_name="applicationIds",
        )
        identity_management.delegation_app_ids = AAZListType(
            serialized_name="delegationAppIds",
        )
        identity_management.type = AAZStrType()

        application_ids = _schema_resource_type_registration_read.properties.identity_management.application_ids
        application_ids.Element = AAZStrType()

        delegation_app_ids = _schema_resource_type_registration_read.properties.identity_management.delegation_app_ids
        delegation_app_ids.Element = AAZStrType()

        legacy_names = _schema_resource_type_registration_read.properties.legacy_names
        legacy_names.Element = AAZStrType()

        legacy_policy = _schema_resource_type_registration_read.properties.legacy_policy
        legacy_policy.disallowed_conditions = AAZListType(
            serialized_name="disallowedConditions",
        )
        legacy_policy.disallowed_legacy_operations = AAZListType(
            serialized_name="disallowedLegacyOperations",
        )

        disallowed_conditions = _schema_resource_type_registration_read.properties.legacy_policy.disallowed_conditions
        disallowed_conditions.Element = AAZObjectType()

        _element = _schema_resource_type_registration_read.properties.legacy_policy.disallowed_conditions.Element
        _element.disallowed_legacy_operations = AAZListType(
            serialized_name="disallowedLegacyOperations",
        )
        _element.feature = AAZStrType()

        disallowed_legacy_operations = _schema_resource_type_registration_read.properties.legacy_policy.disallowed_conditions.Element.disallowed_legacy_operations
        disallowed_legacy_operations.Element = AAZStrType()

        disallowed_legacy_operations = _schema_resource_type_registration_read.properties.legacy_policy.disallowed_legacy_operations
        disallowed_legacy_operations.Element = AAZStrType()

        linked_access_checks = _schema_resource_type_registration_read.properties.linked_access_checks
        linked_access_checks.Element = AAZObjectType()

        _element = _schema_resource_type_registration_read.properties.linked_access_checks.Element
        _element.action_name = AAZStrType(
            serialized_name="actionName",
        )
        _element.linked_action = AAZStrType(
            serialized_name="linkedAction",
        )
        _element.linked_action_verb = AAZStrType(
            serialized_name="linkedActionVerb",
        )
        _element.linked_property = AAZStrType(
            serialized_name="linkedProperty",
        )
        _element.linked_type = AAZStrType(
            serialized_name="linkedType",
        )

        linked_notification_rules = _schema_resource_type_registration_read.properties.linked_notification_rules
        linked_notification_rules.Element = AAZObjectType()

        _element = _schema_resource_type_registration_read.properties.linked_notification_rules.Element
        _element.actions = AAZListType()
        _element.actions_on_failed_operation = AAZListType(
            serialized_name="actionsOnFailedOperation",
        )
        _element.fast_path_actions = AAZListType(
            serialized_name="fastPathActions",
        )
        _element.fast_path_actions_on_failed_operation = AAZListType(
            serialized_name="fastPathActionsOnFailedOperation",
        )
        _element.linked_notification_timeout = AAZStrType(
            serialized_name="linkedNotificationTimeout",
        )

        actions = _schema_resource_type_registration_read.properties.linked_notification_rules.Element.actions
        actions.Element = AAZStrType()

        actions_on_failed_operation = _schema_resource_type_registration_read.properties.linked_notification_rules.Element.actions_on_failed_operation
        actions_on_failed_operation.Element = AAZStrType()

        fast_path_actions = _schema_resource_type_registration_read.properties.linked_notification_rules.Element.fast_path_actions
        fast_path_actions.Element = AAZStrType()

        fast_path_actions_on_failed_operation = _schema_resource_type_registration_read.properties.linked_notification_rules.Element.fast_path_actions_on_failed_operation
        fast_path_actions_on_failed_operation.Element = AAZStrType()

        linked_operation_rules = _schema_resource_type_registration_read.properties.linked_operation_rules
        linked_operation_rules.Element = AAZObjectType()

        _element = _schema_resource_type_registration_read.properties.linked_operation_rules.Element
        _element.depends_on_types = AAZListType(
            serialized_name="dependsOnTypes",
        )
        _element.linked_action = AAZStrType(
            serialized_name="linkedAction",
            flags={"required": True},
        )
        _element.linked_operation = AAZStrType(
            serialized_name="linkedOperation",
            flags={"required": True},
        )

        depends_on_types = _schema_resource_type_registration_read.properties.linked_operation_rules.Element.depends_on_types
        depends_on_types.Element = AAZStrType()

        logging_rules = _schema_resource_type_registration_read.properties.logging_rules
        logging_rules.Element = AAZObjectType()

        _element = _schema_resource_type_registration_read.properties.logging_rules.Element
        _element.action = AAZStrType(
            flags={"required": True},
        )
        _element.detail_level = AAZStrType(
            serialized_name="detailLevel",
            flags={"required": True},
        )
        _element.direction = AAZStrType(
            flags={"required": True},
        )
        _element.hidden_property_paths = AAZObjectType(
            serialized_name="hiddenPropertyPaths",
        )

        hidden_property_paths = _schema_resource_type_registration_read.properties.logging_rules.Element.hidden_property_paths
        hidden_property_paths.hidden_paths_on_request = AAZListType(
            serialized_name="hiddenPathsOnRequest",
        )
        hidden_property_paths.hidden_paths_on_response = AAZListType(
            serialized_name="hiddenPathsOnResponse",
        )

        hidden_paths_on_request = _schema_resource_type_registration_read.properties.logging_rules.Element.hidden_property_paths.hidden_paths_on_request
        hidden_paths_on_request.Element = AAZStrType()

        hidden_paths_on_response = _schema_resource_type_registration_read.properties.logging_rules.Element.hidden_property_paths.hidden_paths_on_response
        hidden_paths_on_response.Element = AAZStrType()

        managed_resource_group_configuration = _schema_resource_type_registration_read.properties.managed_resource_group_configuration
        managed_resource_group_configuration.application_ids = AAZListType(
            serialized_name="applicationIds",
        )
        managed_resource_group_configuration.deny_assignment_configuration = AAZObjectType(
            serialized_name="denyAssignmentConfiguration",
        )
        managed_resource_group_configuration.enabled = AAZBoolType()
        managed_resource_group_configuration.resource_group_location_override = AAZStrType(
            serialized_name="resourceGroupLocationOverride",
        )

        application_ids = _schema_resource_type_registration_read.properties.managed_resource_group_configuration.application_ids
        application_ids.Element = AAZStrType()

        deny_assignment_configuration = _schema_resource_type_registration_read.properties.managed_resource_group_configuration.deny_assignment_configuration
        deny_assignment_configuration.enabled = AAZBoolType()
        deny_assignment_configuration.not_actions = AAZListType(
            serialized_name="notActions",
        )

        not_actions = _schema_resource_type_registration_read.properties.managed_resource_group_configuration.deny_assignment_configuration.not_actions
        not_actions.Element = AAZStrType()

        management = _schema_resource_type_registration_read.properties.management
        management.authorization_owners = AAZListType(
            serialized_name="authorizationOwners",
        )
        management.canary_manifest_owners = AAZListType(
            serialized_name="canaryManifestOwners",
        )
        management.error_response_message_options = AAZObjectType(
            serialized_name="errorResponseMessageOptions",
        )
        management.expedited_rollout_metadata = AAZObjectType(
            serialized_name="expeditedRolloutMetadata",
        )
        management.expedited_rollout_submitters = AAZListType(
            serialized_name="expeditedRolloutSubmitters",
        )
        management.incident_contact_email = AAZStrType(
            serialized_name="incidentContactEmail",
        )
        management.incident_routing_service = AAZStrType(
            serialized_name="incidentRoutingService",
        )
        management.incident_routing_team = AAZStrType(
            serialized_name="incidentRoutingTeam",
        )
        management.manifest_owners = AAZListType(
            serialized_name="manifestOwners",
        )
        management.pc_code = AAZStrType(
            serialized_name="pcCode",
        )
        management.profit_center_program_id = AAZStrType(
            serialized_name="profitCenterProgramId",
        )
        management.resource_access_policy = AAZStrType(
            serialized_name="resourceAccessPolicy",
        )
        management.resource_access_roles = AAZListType(
            serialized_name="resourceAccessRoles",
        )
        management.schema_owners = AAZListType(
            serialized_name="schemaOwners",
        )
        management.service_tree_infos = AAZListType(
            serialized_name="serviceTreeInfos",
        )

        authorization_owners = _schema_resource_type_registration_read.properties.management.authorization_owners
        authorization_owners.Element = AAZStrType()

        canary_manifest_owners = _schema_resource_type_registration_read.properties.management.canary_manifest_owners
        canary_manifest_owners.Element = AAZStrType()

        error_response_message_options = _schema_resource_type_registration_read.properties.management.error_response_message_options
        error_response_message_options.server_failure_response_message_type = AAZStrType(
            serialized_name="serverFailureResponseMessageType",
        )

        expedited_rollout_metadata = _schema_resource_type_registration_read.properties.management.expedited_rollout_metadata
        expedited_rollout_metadata.enabled = AAZBoolType()
        expedited_rollout_metadata.expedited_rollout_intent = AAZStrType(
            serialized_name="expeditedRolloutIntent",
        )

        expedited_rollout_submitters = _schema_resource_type_registration_read.properties.management.expedited_rollout_submitters
        expedited_rollout_submitters.Element = AAZStrType()

        manifest_owners = _schema_resource_type_registration_read.properties.management.manifest_owners
        manifest_owners.Element = AAZStrType()

        resource_access_roles = _schema_resource_type_registration_read.properties.management.resource_access_roles
        resource_access_roles.Element = AAZObjectType()

        _element = _schema_resource_type_registration_read.properties.management.resource_access_roles.Element
        _element.actions = AAZListType()
        _element.allowed_group_claims = AAZListType(
            serialized_name="allowedGroupClaims",
        )

        actions = _schema_resource_type_registration_read.properties.management.resource_access_roles.Element.actions
        actions.Element = AAZStrType()

        allowed_group_claims = _schema_resource_type_registration_read.properties.management.resource_access_roles.Element.allowed_group_claims
        allowed_group_claims.Element = AAZStrType()

        schema_owners = _schema_resource_type_registration_read.properties.management.schema_owners
        schema_owners.Element = AAZStrType()

        service_tree_infos = _schema_resource_type_registration_read.properties.management.service_tree_infos
        service_tree_infos.Element = AAZObjectType()
        cls._build_schema_service_tree_info_read(service_tree_infos.Element)

        marketplace_options = _schema_resource_type_registration_read.properties.marketplace_options
        marketplace_options.add_on_plan_conversion_allowed = AAZBoolType(
            serialized_name="addOnPlanConversionAllowed",
        )

        metadata = _schema_resource_type_registration_read.properties.metadata
        metadata.Element = AAZFreeFormDictType()

        notifications = _schema_resource_type_registration_read.properties.notifications
        notifications.Element = AAZObjectType()

        _element = _schema_resource_type_registration_read.properties.notifications.Element
        _element.notification_type = AAZStrType(
            serialized_name="notificationType",
        )
        _element.skip_notifications = AAZStrType(
            serialized_name="skipNotifications",
        )

        on_behalf_of_tokens = _schema_resource_type_registration_read.properties.on_behalf_of_tokens
        on_behalf_of_tokens.action_name = AAZStrType(
            serialized_name="actionName",
        )
        on_behalf_of_tokens.life_time = AAZStrType(
            serialized_name="lifeTime",
        )

        open_api_configuration = _schema_resource_type_registration_read.properties.open_api_configuration
        open_api_configuration.validation = AAZObjectType()

        validation = _schema_resource_type_registration_read.properties.open_api_configuration.validation
        validation.allow_noncompliant_collection_response = AAZBoolType(
            serialized_name="allowNoncompliantCollectionResponse",
        )

        private_endpoint_configuration = _schema_resource_type_registration_read.properties.private_endpoint_configuration
        private_endpoint_configuration.group_connectivity_information = AAZListType(
            serialized_name="groupConnectivityInformation",
            flags={"required": True},
        )
        private_endpoint_configuration.min_api_version = AAZStrType(
            serialized_name="minApiVersion",
            flags={"required": True},
        )

        group_connectivity_information = _schema_resource_type_registration_read.properties.private_endpoint_configuration.group_connectivity_information
        group_connectivity_information.Element = AAZObjectType()

        _element = _schema_resource_type_registration_read.properties.private_endpoint_configuration.group_connectivity_information.Element
        _element.group_id = AAZStrType(
            serialized_name="groupId",
            flags={"required": True},
        )
        _element.redirect_map_id = AAZStrType(
            serialized_name="redirectMapId",
        )
        _element.required_members = AAZListType(
            serialized_name="requiredMembers",
            flags={"required": True},
        )
        _element.required_zone_names = AAZListType(
            serialized_name="requiredZoneNames",
            flags={"required": True},
        )

        required_members = _schema_resource_type_registration_read.properties.private_endpoint_configuration.group_connectivity_information.Element.required_members
        required_members.Element = AAZStrType()

        required_zone_names = _schema_resource_type_registration_read.properties.private_endpoint_configuration.group_connectivity_information.Element.required_zone_names
        required_zone_names.Element = AAZStrType()

        quota_rule = _schema_resource_type_registration_read.properties.quota_rule
        quota_rule.location_rules = AAZListType(
            serialized_name="locationRules",
        )
        quota_rule.quota_policy = AAZStrType(
            serialized_name="quotaPolicy",
        )
        quota_rule.required_features = AAZListType(
            serialized_name="requiredFeatures",
        )

        location_rules = _schema_resource_type_registration_read.properties.quota_rule.location_rules
        location_rules.Element = AAZObjectType()

        _element = _schema_resource_type_registration_read.properties.quota_rule.location_rules.Element
        _element.location = AAZStrType()
        _element.policy = AAZStrType()
        _element.quota_id = AAZStrType(
            serialized_name="quotaId",
        )

        required_features = _schema_resource_type_registration_read.properties.quota_rule.required_features
        required_features.Element = AAZStrType()

        request_header_options = _schema_resource_type_registration_read.properties.request_header_options
        request_header_options.opt_in_headers = AAZStrType(
            serialized_name="optInHeaders",
        )
        request_header_options.opt_out_headers = AAZStrType(
            serialized_name="optOutHeaders",
        )

        required_features = _schema_resource_type_registration_read.properties.required_features
        required_features.Element = AAZStrType()

        resource_cache = _schema_resource_type_registration_read.properties.resource_cache
        resource_cache.enable_resource_cache = AAZBoolType(
            serialized_name="enableResourceCache",
        )
        resource_cache.resource_cache_expiration_timespan = AAZStrType(
            serialized_name="resourceCacheExpirationTimespan",
        )

        resource_concurrency_control_options = _schema_resource_type_registration_read.properties.resource_concurrency_control_options
        resource_concurrency_control_options.Element = AAZObjectType()

        _element = _schema_resource_type_registration_read.properties.resource_concurrency_control_options.Element
        _element.policy = AAZStrType()

        resource_graph_configuration = _schema_resource_type_registration_read.properties.resource_graph_configuration
        resource_graph_configuration.api_version = AAZStrType(
            serialized_name="apiVersion",
        )
        resource_graph_configuration.enabled = AAZBoolType()

        resource_management_options = _schema_resource_type_registration_read.properties.resource_management_options
        resource_management_options.batch_provisioning_support = AAZObjectType(
            serialized_name="batchProvisioningSupport",
        )
        resource_management_options.delete_dependencies = AAZListType(
            serialized_name="deleteDependencies",
        )
        resource_management_options.nested_provisioning_support = AAZObjectType(
            serialized_name="nestedProvisioningSupport",
        )

        batch_provisioning_support = _schema_resource_type_registration_read.properties.resource_management_options.batch_provisioning_support
        batch_provisioning_support.supported_operations = AAZStrType(
            serialized_name="supportedOperations",
        )

        delete_dependencies = _schema_resource_type_registration_read.properties.resource_management_options.delete_dependencies
        delete_dependencies.Element = AAZObjectType()

        _element = _schema_resource_type_registration_read.properties.resource_management_options.delete_dependencies.Element
        _element.linked_property = AAZStrType(
            serialized_name="linkedProperty",
        )
        _element.linked_type = AAZStrType(
            serialized_name="linkedType",
        )
        _element.required_features = AAZListType(
            serialized_name="requiredFeatures",
        )

        required_features = _schema_resource_type_registration_read.properties.resource_management_options.delete_dependencies.Element.required_features
        required_features.Element = AAZStrType()

        nested_provisioning_support = _schema_resource_type_registration_read.properties.resource_management_options.nested_provisioning_support
        nested_provisioning_support.minimum_api_version = AAZStrType(
            serialized_name="minimumApiVersion",
        )

        resource_move_policy = _schema_resource_type_registration_read.properties.resource_move_policy
        resource_move_policy.cross_resource_group_move_enabled = AAZBoolType(
            serialized_name="crossResourceGroupMoveEnabled",
        )
        resource_move_policy.cross_subscription_move_enabled = AAZBoolType(
            serialized_name="crossSubscriptionMoveEnabled",
        )
        resource_move_policy.validation_required = AAZBoolType(
            serialized_name="validationRequired",
        )

        resource_provider_authorization_rules = _schema_resource_type_registration_read.properties.resource_provider_authorization_rules
        resource_provider_authorization_rules.async_operation_polling_rules = AAZObjectType(
            serialized_name="asyncOperationPollingRules",
        )

        async_operation_polling_rules = _schema_resource_type_registration_read.properties.resource_provider_authorization_rules.async_operation_polling_rules
        async_operation_polling_rules.additional_options = AAZStrType(
            serialized_name="additionalOptions",
        )
        async_operation_polling_rules.authorization_actions = AAZListType(
            serialized_name="authorizationActions",
        )

        authorization_actions = _schema_resource_type_registration_read.properties.resource_provider_authorization_rules.async_operation_polling_rules.authorization_actions
        authorization_actions.Element = AAZStrType()

        resource_query_management = _schema_resource_type_registration_read.properties.resource_query_management
        resource_query_management.filter_option = AAZStrType(
            serialized_name="filterOption",
        )

        resource_type_common_attribute_management = _schema_resource_type_registration_read.properties.resource_type_common_attribute_management
        resource_type_common_attribute_management.common_api_versions_merge_mode = AAZStrType(
            serialized_name="commonApiVersionsMergeMode",
        )

        routing_rule = _schema_resource_type_registration_read.properties.routing_rule
        routing_rule.host_resource_type = AAZStrType(
            serialized_name="hostResourceType",
        )

        service_tree_infos = _schema_resource_type_registration_read.properties.service_tree_infos
        service_tree_infos.Element = AAZObjectType()
        cls._build_schema_service_tree_info_read(service_tree_infos.Element)

        subscription_lifecycle_notification_specifications = _schema_resource_type_registration_read.properties.subscription_lifecycle_notification_specifications
        subscription_lifecycle_notification_specifications.soft_delete_ttl = AAZStrType(
            serialized_name="softDeleteTTL",
        )
        subscription_lifecycle_notification_specifications.subscription_state_override_actions = AAZListType(
            serialized_name="subscriptionStateOverrideActions",
        )

        subscription_state_override_actions = _schema_resource_type_registration_read.properties.subscription_lifecycle_notification_specifications.subscription_state_override_actions
        subscription_state_override_actions.Element = AAZObjectType()

        _element = _schema_resource_type_registration_read.properties.subscription_lifecycle_notification_specifications.subscription_state_override_actions.Element
        _element.action = AAZStrType(
            flags={"required": True},
        )
        _element.state = AAZStrType(
            flags={"required": True},
        )

        subscription_state_rules = _schema_resource_type_registration_read.properties.subscription_state_rules
        subscription_state_rules.Element = AAZObjectType()

        _element = _schema_resource_type_registration_read.properties.subscription_state_rules.Element
        _element.allowed_actions = AAZListType(
            serialized_name="allowedActions",
        )
        _element.state = AAZStrType()

        allowed_actions = _schema_resource_type_registration_read.properties.subscription_state_rules.Element.allowed_actions
        allowed_actions.Element = AAZStrType()

        swagger_specifications = _schema_resource_type_registration_read.properties.swagger_specifications
        swagger_specifications.Element = AAZObjectType()

        _element = _schema_resource_type_registration_read.properties.swagger_specifications.Element
        _element.api_versions = AAZListType(
            serialized_name="apiVersions",
        )
        _element.swagger_spec_folder_uri = AAZStrType(
            serialized_name="swaggerSpecFolderUri",
        )

        api_versions = _schema_resource_type_registration_read.properties.swagger_specifications.Element.api_versions
        api_versions.Element = AAZStrType()

        template_deployment_options = _schema_resource_type_registration_read.properties.template_deployment_options
        template_deployment_options.preflight_options = AAZListType(
            serialized_name="preflightOptions",
        )
        template_deployment_options.preflight_supported = AAZBoolType(
            serialized_name="preflightSupported",
        )

        preflight_options = _schema_resource_type_registration_read.properties.template_deployment_options.preflight_options
        preflight_options.Element = AAZStrType()

        template_deployment_policy = _schema_resource_type_registration_read.properties.template_deployment_policy
        template_deployment_policy.capabilities = AAZStrType(
            flags={"required": True},
        )
        template_deployment_policy.preflight_notifications = AAZStrType(
            serialized_name="preflightNotifications",
        )
        template_deployment_policy.preflight_options = AAZStrType(
            serialized_name="preflightOptions",
            flags={"required": True},
        )

        throttling_rules = _schema_resource_type_registration_read.properties.throttling_rules
        throttling_rules.Element = AAZObjectType()

        _element = _schema_resource_type_registration_read.properties.throttling_rules.Element
        _element.action = AAZStrType(
            flags={"required": True},
        )
        _element.application_id = AAZListType(
            serialized_name="applicationId",
        )
        _element.metrics = AAZListType(
            flags={"required": True},
        )
        _element.required_features = AAZListType(
            serialized_name="requiredFeatures",
        )

        application_id = _schema_resource_type_registration_read.properties.throttling_rules.Element.application_id
        application_id.Element = AAZStrType()

        metrics = _schema_resource_type_registration_read.properties.throttling_rules.Element.metrics
        metrics.Element = AAZObjectType()

        _element = _schema_resource_type_registration_read.properties.throttling_rules.Element.metrics.Element
        _element.interval = AAZStrType()
        _element.limit = AAZIntType(
            flags={"required": True},
        )
        _element.type = AAZStrType(
            flags={"required": True},
        )

        required_features = _schema_resource_type_registration_read.properties.throttling_rules.Element.required_features
        required_features.Element = AAZStrType()

        system_data = _schema_resource_type_registration_read.system_data
        system_data.created_at = AAZStrType(
            serialized_name="createdAt",
        )
        system_data.created_by = AAZStrType(
            serialized_name="createdBy",
        )
        system_data.created_by_type = AAZStrType(
            serialized_name="createdByType",
        )
        system_data.last_modified_at = AAZStrType(
            serialized_name="lastModifiedAt",
        )
        system_data.last_modified_by = AAZStrType(
            serialized_name="lastModifiedBy",
        )
        system_data.last_modified_by_type = AAZStrType(
            serialized_name="lastModifiedByType",
        )

        _schema.id = cls._schema_resource_type_registration_read.id
        _schema.kind = cls._schema_resource_type_registration_read.kind
        _schema.name = cls._schema_resource_type_registration_read.name
        _schema.properties = cls._schema_resource_type_registration_read.properties
        _schema.system_data = cls._schema_resource_type_registration_read.system_data
        _schema.type = cls._schema_resource_type_registration_read.type