@azure/arm-frontdoor 5.2.0 → 5.2.1-alpha.20230530.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../src/pagingHelper.ts","../src/models/index.ts","../src/models/mappers.ts","../src/models/parameters.ts","../src/lroImpl.ts","../src/operations/policies.ts","../src/operations/managedRuleSets.ts","../src/operations/frontDoorNameAvailability.ts","../src/operations/frontDoorNameAvailabilityWithSubscription.ts","../src/operations/frontDoors.ts","../src/operations/frontendEndpoints.ts","../src/operations/endpoints.ts","../src/operations/rulesEngines.ts","../src/operations/networkExperimentProfiles.ts","../src/operations/preconfiguredEndpoints.ts","../src/operations/experiments.ts","../src/operations/reports.ts","../src/frontDoorManagementClient.ts"],"sourcesContent":["/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nexport interface PageInfo {\n continuationToken?: string;\n}\n\nconst pageMap = new WeakMap<object, PageInfo>();\n\n/**\n * Given the last `.value` produced by the `byPage` iterator,\n * returns a continuation token that can be used to begin paging from\n * that point later.\n * @param page An object from accessing `value` on the IteratorResult from a `byPage` iterator.\n * @returns The continuation token that can be passed into byPage() during future calls.\n */\nexport function getContinuationToken(page: unknown): string | undefined {\n if (typeof page !== \"object\" || page === null) {\n return undefined;\n }\n return pageMap.get(page)?.continuationToken;\n}\n\nexport function setContinuationToken(\n page: unknown,\n continuationToken: string | undefined\n): void {\n if (typeof page !== \"object\" || page === null || !continuationToken) {\n return;\n }\n const pageInfo = pageMap.get(page) ?? {};\n pageInfo.continuationToken = continuationToken;\n pageMap.set(page, pageInfo);\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport * as coreClient from \"@azure/core-client\";\n\nexport type RouteConfigurationUnion =\n | RouteConfiguration\n | ForwardingConfiguration\n | RedirectConfiguration;\n\n/** Defines a list of WebApplicationFirewallPolicies. It contains a list of WebApplicationFirewallPolicy objects and a URL link to get the next set of results. */\nexport interface WebApplicationFirewallPolicyList {\n /**\n * List of WebApplicationFirewallPolicies within a resource group.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly value?: WebApplicationFirewallPolicy[];\n /** URL to get the next set of WebApplicationFirewallPolicy objects if there are any. */\n nextLink?: string;\n}\n\n/** Defines top-level WebApplicationFirewallPolicy configuration settings. */\nexport interface PolicySettings {\n /** Describes if the policy is in enabled or disabled state. Defaults to Enabled if not specified. */\n enabledState?: PolicyEnabledState;\n /** Describes if it is in detection mode or prevention mode at policy level. */\n mode?: PolicyMode;\n /** If action type is redirect, this field represents redirect URL for the client. */\n redirectUrl?: string;\n /** If the action type is block, customer can override the response status code. */\n customBlockResponseStatusCode?: number;\n /** If the action type is block, customer can override the response body. The body must be specified in base64 encoding. */\n customBlockResponseBody?: string;\n /** Describes if policy managed rules will inspect the request body content. */\n requestBodyCheck?: PolicyRequestBodyCheck;\n}\n\n/** Defines contents of custom rules */\nexport interface CustomRuleList {\n /** List of rules */\n rules?: CustomRule[];\n}\n\n/** Defines contents of a web application rule */\nexport interface CustomRule {\n /** Describes the name of the rule. */\n name?: string;\n /** Describes priority of the rule. Rules with a lower value will be evaluated before rules with a higher value. */\n priority: number;\n /** Describes if the custom rule is in enabled or disabled state. Defaults to Enabled if not specified. */\n enabledState?: CustomRuleEnabledState;\n /** Describes type of rule. */\n ruleType: RuleType;\n /** Time window for resetting the rate limit count. Default is 1 minute. */\n rateLimitDurationInMinutes?: number;\n /** Number of allowed requests per client within the time window. */\n rateLimitThreshold?: number;\n /** List of match conditions. */\n matchConditions: MatchCondition[];\n /** Describes what action to be applied when rule matches. */\n action: ActionType;\n}\n\n/** Define a match condition. */\nexport interface MatchCondition {\n /** Request variable to compare with. */\n matchVariable: MatchVariable;\n /** Match against a specific key from the QueryString, PostArgs, RequestHeader or Cookies variables. Default is null. */\n selector?: string;\n /** Comparison type to use for matching with the variable value. */\n operator: Operator;\n /** Describes if the result of this condition should be negated. */\n negateCondition?: boolean;\n /** List of possible match values. */\n matchValue: string[];\n /** List of transforms. */\n transforms?: TransformType[];\n}\n\n/** Defines the list of managed rule sets for the policy. */\nexport interface ManagedRuleSetList {\n /** List of rule sets. */\n managedRuleSets?: ManagedRuleSet[];\n}\n\n/** Defines a managed rule set. */\nexport interface ManagedRuleSet {\n /** Defines the rule set type to use. */\n ruleSetType: string;\n /** Defines the version of the rule set to use. */\n ruleSetVersion: string;\n /** Defines the rule set action. */\n ruleSetAction?: ManagedRuleSetActionType;\n /** Describes the exclusions that are applied to all rules in the set. */\n exclusions?: ManagedRuleExclusion[];\n /** Defines the rule group overrides to apply to the rule set. */\n ruleGroupOverrides?: ManagedRuleGroupOverride[];\n}\n\n/** Exclude variables from managed rule evaluation. */\nexport interface ManagedRuleExclusion {\n /** The variable type to be excluded. */\n matchVariable: ManagedRuleExclusionMatchVariable;\n /** Comparison operator to apply to the selector when specifying which elements in the collection this exclusion applies to. */\n selectorMatchOperator: ManagedRuleExclusionSelectorMatchOperator;\n /** Selector value for which elements in the collection this exclusion applies to. */\n selector: string;\n}\n\n/** Defines a managed rule group override setting. */\nexport interface ManagedRuleGroupOverride {\n /** Describes the managed rule group to override. */\n ruleGroupName: string;\n /** Describes the exclusions that are applied to all rules in the group. */\n exclusions?: ManagedRuleExclusion[];\n /** List of rules that will be disabled. If none specified, all rules in the group will be disabled. */\n rules?: ManagedRuleOverride[];\n}\n\n/** Defines a managed rule group override setting. */\nexport interface ManagedRuleOverride {\n /** Identifier for the managed rule. */\n ruleId: string;\n /** Describes if the managed rule is in enabled or disabled state. Defaults to Disabled if not specified. */\n enabledState?: ManagedRuleEnabledState;\n /** Describes the override action to be applied when rule matches. */\n action?: ActionType;\n /** Describes the exclusions that are applied to this specific rule. */\n exclusions?: ManagedRuleExclusion[];\n}\n\n/** Defines the Resource ID for a Frontend Endpoint. */\nexport interface FrontendEndpointLink {\n /** Resource ID. */\n id?: string;\n}\n\n/** Defines the Resource ID for a Routing Rule. */\nexport interface RoutingRuleLink {\n /** Resource ID. */\n id?: string;\n}\n\n/** Defines the Resource ID for a Security Policy. */\nexport interface SecurityPolicyLink {\n /** Resource ID. */\n id?: string;\n}\n\n/** The pricing tier of the web application firewall policy. */\nexport interface Sku {\n /** Name of the pricing tier. */\n name?: SkuName;\n}\n\n/** Common resource representation. */\nexport interface Resource {\n /**\n * Resource ID.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly id?: string;\n /**\n * Resource name.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly name?: string;\n /**\n * Resource type.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly type?: string;\n /** Resource location. */\n location?: string;\n /** Resource tags. */\n tags?: { [propertyName: string]: string };\n}\n\n/** Error response indicates Front Door service is not able to process the incoming request. The reason is provided in the error message. */\nexport interface ErrorResponse {\n /**\n * Error code.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly code?: string;\n /**\n * Error message indicating why the operation failed.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly message?: string;\n}\n\n/** Error response indicates Front Door service is not able to process the incoming request. The reason is provided in the error message. */\nexport interface DefaultErrorResponse {\n /** Error model. */\n error?: DefaultErrorResponseError;\n}\n\n/** Error model. */\nexport interface DefaultErrorResponseError {\n /**\n * Error code.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly code?: string;\n /**\n * Error message indicating why the operation failed.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly message?: string;\n}\n\n/** Tags object for patch operations. */\nexport interface TagsObject {\n /** Resource tags. */\n tags?: { [propertyName: string]: string };\n}\n\n/** List of managed rule set definitions available for use in a policy. */\nexport interface ManagedRuleSetDefinitionList {\n /**\n * List of managed rule set definitions.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly value?: ManagedRuleSetDefinition[];\n /** URL to retrieve next set of managed rule set definitions. */\n nextLink?: string;\n}\n\n/** Describes a managed rule group. */\nexport interface ManagedRuleGroupDefinition {\n /**\n * Name of the managed rule group.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly ruleGroupName?: string;\n /**\n * Description of the managed rule group.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly description?: string;\n /**\n * List of rules within the managed rule group.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly rules?: ManagedRuleDefinition[];\n}\n\n/** Describes a managed rule definition. */\nexport interface ManagedRuleDefinition {\n /**\n * Identifier for the managed rule.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly ruleId?: string;\n /**\n * Describes the default state for the managed rule.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly defaultState?: ManagedRuleEnabledState;\n /**\n * Describes the default action to be applied when the managed rule matches.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly defaultAction?: ActionType;\n /**\n * Describes the functionality of the managed rule.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly description?: string;\n}\n\n/** Input of CheckNameAvailability API. */\nexport interface CheckNameAvailabilityInput {\n /** The resource name to validate. */\n name: string;\n /** The type of the resource whose name is to be validated. */\n type: ResourceType;\n}\n\n/** Output of check name availability API. */\nexport interface CheckNameAvailabilityOutput {\n /**\n * Indicates whether the name is available.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly nameAvailability?: Availability;\n /**\n * The reason why the name is not available.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly reason?: string;\n /**\n * The detailed error message describing why the name is not available.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly message?: string;\n}\n\n/** Result of the request to list Front Doors. It contains a list of Front Door objects and a URL link to get the next set of results. */\nexport interface FrontDoorListResult {\n /**\n * List of Front Doors within a resource group.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly value?: FrontDoor[];\n /** URL to get the next set of Front Door objects if there are any. */\n nextLink?: string;\n}\n\n/** A rules engine configuration containing a list of rules that will run to modify the runtime behavior of the request and response. */\nexport interface RulesEngine {\n /**\n * Resource name.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly name?: string;\n /**\n * Resource type.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly type?: string;\n /**\n * Resource ID.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly id?: string;\n /** A list of rules that define a particular Rules Engine Configuration. */\n rules?: RulesEngineRule[];\n /**\n * Resource status.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: FrontDoorResourceState;\n}\n\n/** Rules Engine Configuration to apply to a Routing Rule. */\nexport interface RulesEngineUpdateParameters {\n /** A list of rules that define a particular Rules Engine Configuration. */\n rules?: RulesEngineRule[];\n}\n\n/** Contains a list of match conditions, and an action on how to modify the request/response. If multiple rules match, the actions from one rule that conflict with a previous rule overwrite for a singular action, or append in the case of headers manipulation. */\nexport interface RulesEngineRule {\n /** A name to refer to this specific rule. */\n name: string;\n /** A priority assigned to this rule. */\n priority: number;\n /** Actions to perform on the request and response if all of the match conditions are met. */\n action: RulesEngineAction;\n /** A list of match conditions that must meet in order for the actions of this rule to run. Having no match conditions means the actions will always run. */\n matchConditions?: RulesEngineMatchCondition[];\n /** If this rule is a match should the rules engine continue running the remaining rules or stop. If not present, defaults to Continue. */\n matchProcessingBehavior?: MatchProcessingBehavior;\n}\n\n/** One or more actions that will execute, modifying the request and/or response. */\nexport interface RulesEngineAction {\n /** A list of header actions to apply from the request from AFD to the origin. */\n requestHeaderActions?: HeaderAction[];\n /** A list of header actions to apply from the response from AFD to the client. */\n responseHeaderActions?: HeaderAction[];\n /** Override the route configuration. */\n routeConfigurationOverride?: RouteConfigurationUnion;\n}\n\n/** An action that can manipulate an http header. */\nexport interface HeaderAction {\n /** Which type of manipulation to apply to the header. */\n headerActionType: HeaderActionType;\n /** The name of the header this action will apply to. */\n headerName: string;\n /** The value to update the given header name with. This value is not used if the actionType is Delete. */\n value?: string;\n}\n\n/** Base class for all types of Route. */\nexport interface RouteConfiguration {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odataType:\n | \"#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration\"\n | \"#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration\";\n}\n\n/** Define a match condition */\nexport interface RulesEngineMatchCondition {\n /** Match Variable */\n rulesEngineMatchVariable: RulesEngineMatchVariable;\n /** Name of selector in RequestHeader or RequestBody to be matched */\n selector?: string;\n /** Describes operator to apply to the match condition. */\n rulesEngineOperator: RulesEngineOperator;\n /** Describes if this is negate condition or not */\n negateCondition?: boolean;\n /** Match values to match against. The operator will apply to each value in here with OR semantics. If any of them match the variable with the given operator this match condition is considered a match. */\n rulesEngineMatchValue: string[];\n /** List of transforms */\n transforms?: Transform[];\n}\n\n/** The properties needed to update a Front Door */\nexport interface FrontDoorUpdateParameters {\n /** A friendly name for the frontDoor */\n friendlyName?: string;\n /** Routing rules associated with this Front Door. */\n routingRules?: RoutingRule[];\n /** Load balancing settings associated with this Front Door instance. */\n loadBalancingSettings?: LoadBalancingSettingsModel[];\n /** Health probe settings associated with this Front Door instance. */\n healthProbeSettings?: HealthProbeSettingsModel[];\n /** Backend pools available to routing rules. */\n backendPools?: BackendPool[];\n /** Frontend endpoints available to routing rules. */\n frontendEndpoints?: FrontendEndpoint[];\n /** Settings for all backendPools */\n backendPoolsSettings?: BackendPoolsSettings;\n /** Operational status of the Front Door load balancer. Permitted values are 'Enabled' or 'Disabled' */\n enabledState?: FrontDoorEnabledState;\n}\n\n/** Routing rules to apply to an endpoint */\nexport interface RoutingRuleUpdateParameters {\n /** Frontend endpoints associated with this rule */\n frontendEndpoints?: SubResource[];\n /** Protocol schemes to match for this rule */\n acceptedProtocols?: FrontDoorProtocol[];\n /** The route patterns of the rule. */\n patternsToMatch?: string[];\n /** Whether to enable use of this rule. Permitted values are 'Enabled' or 'Disabled' */\n enabledState?: RoutingRuleEnabledState;\n /** A reference to the routing configuration. */\n routeConfiguration?: RouteConfigurationUnion;\n /** A reference to a specific Rules Engine Configuration to apply to this route. */\n rulesEngine?: SubResource;\n /** Defines the Web Application Firewall policy for each routing rule (if applicable) */\n webApplicationFirewallPolicyLink?: RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink;\n}\n\n/** Reference to another subresource. */\nexport interface SubResource {\n /** Resource ID. */\n id?: string;\n}\n\n/** Defines the Web Application Firewall policy for each routing rule (if applicable) */\nexport interface RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink {\n /** Resource ID. */\n id?: string;\n}\n\n/** Round-Robin load balancing settings for a backend pool */\nexport interface LoadBalancingSettingsUpdateParameters {\n /** The number of samples to consider for load balancing decisions */\n sampleSize?: number;\n /** The number of samples within the sample period that must succeed */\n successfulSamplesRequired?: number;\n /** The additional latency in milliseconds for probes to fall into the lowest latency bucket */\n additionalLatencyMilliseconds?: number;\n}\n\n/** L7 health probe settings for a backend pool */\nexport interface HealthProbeSettingsUpdateParameters {\n /** The path to use for the health probe. Default is / */\n path?: string;\n /** Protocol scheme to use for this probe */\n protocol?: FrontDoorProtocol;\n /** The number of seconds between health probes. */\n intervalInSeconds?: number;\n /** Configures which HTTP method to use to probe the backends defined under backendPools. */\n healthProbeMethod?: FrontDoorHealthProbeMethod;\n /** Whether to enable health probes to be made against backends defined under backendPools. Health probes can only be disabled if there is a single enabled backend in single enabled backend pool. */\n enabledState?: HealthProbeEnabled;\n}\n\n/** A collection of backends that can be routed to. */\nexport interface BackendPoolUpdateParameters {\n /** The set of backends for this pool */\n backends?: Backend[];\n /** Load balancing settings for a backend pool */\n loadBalancingSettings?: SubResource;\n /** L7 health probe settings for a backend pool */\n healthProbeSettings?: SubResource;\n}\n\n/** Backend address of a frontDoor load balancer. */\nexport interface Backend {\n /** Location of the backend (IP address or FQDN) */\n address?: string;\n /** The Alias of the Private Link resource. Populating this optional field indicates that this backend is 'Private' */\n privateLinkAlias?: string;\n /** The Resource Id of the Private Link resource. Populating this optional field indicates that this backend is 'Private' */\n privateLinkResourceId?: string;\n /** The location of the Private Link resource. Required only if 'privateLinkResourceId' is populated */\n privateLinkLocation?: string;\n /**\n * The Approval status for the connection to the Private Link\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly privateEndpointStatus?: PrivateEndpointStatus;\n /** A custom message to be included in the approval request to connect to the Private Link */\n privateLinkApprovalMessage?: string;\n /** The HTTP TCP port number. Must be between 1 and 65535. */\n httpPort?: number;\n /** The HTTPS TCP port number. Must be between 1 and 65535. */\n httpsPort?: number;\n /** Whether to enable use of this backend. Permitted values are 'Enabled' or 'Disabled' */\n enabledState?: BackendEnabledState;\n /** Priority to use for load balancing. Higher priorities will not be used for load balancing if any lower priority backend is healthy. */\n priority?: number;\n /** Weight of this endpoint for load balancing purposes. */\n weight?: number;\n /** The value to use as the host header sent to the backend. If blank or unspecified, this defaults to the incoming host. */\n backendHostHeader?: string;\n}\n\n/** Https settings for a domain */\nexport interface CustomHttpsConfiguration {\n /** Defines the source of the SSL certificate */\n certificateSource: FrontDoorCertificateSource;\n /** Defines the TLS extension protocol that is used for secure delivery */\n protocolType: FrontDoorTlsProtocolType;\n /** The minimum TLS version required from the clients to establish an SSL handshake with Front Door. */\n minimumTlsVersion: MinimumTLSVersion;\n /** Defines the type of the certificate used for secure connections to a frontendEndpoint */\n certificateType?: FrontDoorCertificateType;\n /** The Key Vault containing the SSL certificate */\n vault?: KeyVaultCertificateSourceParametersVault;\n /** The name of the Key Vault secret representing the full certificate PFX */\n secretName?: string;\n /** The version of the Key Vault secret representing the full certificate PFX */\n secretVersion?: string;\n}\n\n/** The Key Vault containing the SSL certificate */\nexport interface KeyVaultCertificateSourceParametersVault {\n /** Resource ID. */\n id?: string;\n}\n\n/** Frontend endpoint used in routing rule */\nexport interface FrontendEndpointUpdateParameters {\n /** The host name of the frontendEndpoint. Must be a domain name. */\n hostName?: string;\n /** Whether to allow session affinity on this host. Valid options are 'Enabled' or 'Disabled' */\n sessionAffinityEnabledState?: SessionAffinityEnabledState;\n /** UNUSED. This field will be ignored. The TTL to use in seconds for session affinity, if applicable. */\n sessionAffinityTtlSeconds?: number;\n /** Defines the Web Application Firewall policy for each host (if applicable) */\n webApplicationFirewallPolicyLink?: FrontendEndpointUpdateParametersWebApplicationFirewallPolicyLink;\n}\n\n/** Defines the Web Application Firewall policy for each host (if applicable) */\nexport interface FrontendEndpointUpdateParametersWebApplicationFirewallPolicyLink {\n /** Resource ID. */\n id?: string;\n}\n\n/** Settings that apply to all backend pools. */\nexport interface BackendPoolsSettings {\n /** Whether to enforce certificate name check on HTTPS requests to all backend pools. No effect on non-HTTPS requests. */\n enforceCertificateNameCheck?: EnforceCertificateNameCheckEnabledState;\n /** Send and receive timeout on forwarding request to the backend. When timeout is reached, the request fails and returns. */\n sendRecvTimeoutSeconds?: number;\n}\n\n/** Result of the request to list frontend endpoints. It contains a list of Frontend endpoint objects and a URL link to get the next set of results. */\nexport interface FrontendEndpointsListResult {\n /**\n * List of Frontend endpoints within a Front Door.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly value?: FrontendEndpoint[];\n /** URL to get the next set of frontend endpoints if there are any. */\n nextLink?: string;\n}\n\n/** Parameters required for content purge. */\nexport interface PurgeParameters {\n /** The path to the content to be purged. Can describe a file path or a wild card directory. */\n contentPaths: string[];\n}\n\n/** Input of the custom domain to be validated for DNS mapping. */\nexport interface ValidateCustomDomainInput {\n /** The host name of the custom domain. Must be a domain name. */\n hostName: string;\n}\n\n/** Output of custom domain validation. */\nexport interface ValidateCustomDomainOutput {\n /**\n * Indicates whether the custom domain is valid or not.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly customDomainValidated?: boolean;\n /**\n * The reason why the custom domain is not valid.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly reason?: string;\n /**\n * Error message describing why the custom domain is not valid.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly message?: string;\n}\n\n/** Result of the request to list Rules Engine Configurations. It contains a list of RulesEngine objects and a URL link to get the next set of results. */\nexport interface RulesEngineListResult {\n /**\n * List of rulesEngines within a Front Door.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly value?: RulesEngine[];\n /** URL to get the next set of RulesEngine objects if there are any. */\n nextLink?: string;\n}\n\n/** Defines a list of Profiles. It contains a list of Profile objects and a URL link to get the next set of results. */\nexport interface ProfileList {\n /**\n * List of Profiles within a resource group.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly value?: Profile[];\n /** URL to get the next set of Profile objects if there are any. */\n nextLink?: string;\n}\n\n/** Defines modifiable attributes of a Profile */\nexport interface ProfileUpdateModel {\n /** Resource tags. */\n tags?: { [propertyName: string]: string };\n /** The enabled state of the Profile */\n enabledState?: State;\n}\n\n/** Defines a list of preconfigured endpoints. */\nexport interface PreconfiguredEndpointList {\n /**\n * List of PreconfiguredEndpoints supported by NetworkExperiment.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly value?: PreconfiguredEndpoint[];\n /** URL to get the next set of PreconfiguredEndpoints if there are any. */\n nextLink?: string;\n}\n\n/** Defines a list of Experiments. It contains a list of Experiment objects and a URL link to get the next set of results. */\nexport interface ExperimentList {\n /**\n * List of Experiments within a resource group.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly value?: Experiment[];\n /** URL to get the next set of Experiment objects if there are any. */\n nextLink?: string;\n}\n\n/** Defines the endpoint properties */\nexport interface Endpoint {\n /** The name of the endpoint */\n name?: string;\n /** The endpoint URL */\n endpoint?: string;\n}\n\n/** Defines modifiable attributes of an Experiment */\nexport interface ExperimentUpdateModel {\n /** Resource tags. */\n tags?: { [propertyName: string]: string };\n /** The description of the intent or details of the Experiment */\n description?: string;\n /** The state of the Experiment */\n enabledState?: State;\n}\n\n/** Defines the properties of a latency metric used in the latency scorecard */\nexport interface LatencyMetric {\n /**\n * The name of the Latency Metric\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly name?: string;\n /**\n * The end time of the Latency Scorecard in UTC\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly endDateTimeUTC?: string;\n /**\n * The metric value of the A endpoint\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly aValue?: number;\n /**\n * The metric value of the B endpoint\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly bValue?: number;\n /**\n * The difference in value between endpoint A and B\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly delta?: number;\n /**\n * The percent difference between endpoint A and B\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly deltaPercent?: number;\n /**\n * The lower end of the 95% confidence interval for endpoint A\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly aCLower95CI?: number;\n /**\n * The upper end of the 95% confidence interval for endpoint A\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly aHUpper95CI?: number;\n /**\n * The lower end of the 95% confidence interval for endpoint B\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly bCLower95CI?: number;\n /**\n * The upper end of the 95% confidence interval for endpoint B\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly bUpper95CI?: number;\n}\n\n/** Defines a timeseries datapoint used in a timeseries */\nexport interface TimeseriesDataPoint {\n /** The DateTime of the Timeseries data point in UTC */\n dateTimeUTC?: string;\n /** The Value of the Timeseries data point */\n value?: number;\n}\n\nexport interface ErrorDetails {\n code?: string;\n target?: string;\n message?: string;\n}\n\nexport interface ErrorModel {\n code?: string;\n message?: string;\n target?: string;\n details?: ErrorDetails[];\n innerError?: string;\n}\n\n/** The response body contains the status of the specified asynchronous operation, indicating whether it has succeeded, is in progress, or has failed. Note that this status is distinct from the HTTP status code returned for the Get Operation Status operation itself. If the asynchronous operation succeeded, the response body includes the HTTP status code for the successful request. If the asynchronous operation failed, the response body includes the HTTP status code for the failed request and error information regarding the failure. */\nexport interface AzureAsyncOperationResult {\n /** Status of the Azure async operation. */\n status?: NetworkOperationStatus;\n error?: ErrorModel;\n}\n\n/** Result of the request to list Routing Rules. It contains a list of Routing Rule objects and a URL link to get the next set of results. */\nexport interface RoutingRuleListResult {\n /**\n * List of Routing Rules within a Front Door.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly value?: RoutingRule[];\n /** URL to get the next set of RoutingRule objects if there are any. */\n nextLink?: string;\n}\n\n/** Caching settings for a caching-type route. To disable caching, do not provide a cacheConfiguration object. */\nexport interface CacheConfiguration {\n /** Treatment of URL query terms when forming the cache key. */\n queryParameterStripDirective?: FrontDoorQuery;\n /** query parameters to include or exclude (comma separated). */\n queryParameters?: string;\n /** Whether to use dynamic compression for cached content */\n dynamicCompression?: DynamicCompressionEnabled;\n /** The duration for which the content needs to be cached. Allowed format is in ISO 8601 format (http://en.wikipedia.org/wiki/ISO_8601#Durations). HTTP requires the value to be no more than a year */\n cacheDuration?: string;\n}\n\n/** Result of the request to list load balancing settings. It contains a list of load balancing settings objects and a URL link to get the next set of results. */\nexport interface LoadBalancingSettingsListResult {\n /**\n * List of Backend Pools within a Front Door.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly value?: LoadBalancingSettingsModel[];\n /** URL to get the next set of LoadBalancingSettings objects if there are any. */\n nextLink?: string;\n}\n\n/** Result of the request to list HealthProbeSettings. It contains a list of HealthProbeSettings objects and a URL link to get the next set of results. */\nexport interface HealthProbeSettingsListResult {\n /**\n * List of HealthProbeSettings within a Front Door.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly value?: HealthProbeSettingsModel[];\n /** URL to get the next set of HealthProbeSettings objects if there are any. */\n nextLink?: string;\n}\n\n/** Result of the request to list Backend Pools. It contains a list of Backend Pools objects and a URL link to get the next set of results. */\nexport interface BackendPoolListResult {\n /**\n * List of Backend Pools within a Front Door.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly value?: BackendPool[];\n /** URL to get the next set of BackendPool objects if there are any. */\n nextLink?: string;\n}\n\n/** Defines web application firewall policy. */\nexport interface WebApplicationFirewallPolicy extends Resource {\n /** Gets a unique read-only string that changes whenever the resource is updated. */\n etag?: string;\n /** The pricing tier of web application firewall policy. Defaults to Classic_AzureFrontDoor if not specified. */\n sku?: Sku;\n /** Describes settings for the policy. */\n policySettings?: PolicySettings;\n /** Describes custom rules inside the policy. */\n customRules?: CustomRuleList;\n /** Describes managed rules inside the policy. */\n managedRules?: ManagedRuleSetList;\n /**\n * Describes Frontend Endpoints associated with this Web Application Firewall policy.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly frontendEndpointLinks?: FrontendEndpointLink[];\n /**\n * Describes Routing Rules associated with this Web Application Firewall policy.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly routingRuleLinks?: RoutingRuleLink[];\n /**\n * Describes Security Policy associated with this Web Application Firewall policy.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly securityPolicyLinks?: SecurityPolicyLink[];\n /**\n * Provisioning state of the policy.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly provisioningState?: string;\n /**\n * Resource status of the policy.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: PolicyResourceState;\n}\n\n/** Describes the a managed rule set definition. */\nexport interface ManagedRuleSetDefinition extends Resource {\n /**\n * Provisioning state of the managed rule set.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly provisioningState?: string;\n /**\n * Id of the managed rule set.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly ruleSetId?: string;\n /**\n * Type of the managed rule set.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly ruleSetType?: string;\n /**\n * Version of the managed rule set type.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly ruleSetVersion?: string;\n /**\n * Rule groups of the managed rule set.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly ruleGroups?: ManagedRuleGroupDefinition[];\n}\n\n/** Front Door represents a collection of backend endpoints to route traffic to along with rules that specify how traffic is sent there. */\nexport interface FrontDoor extends Resource {\n /** A friendly name for the frontDoor */\n friendlyName?: string;\n /** Routing rules associated with this Front Door. */\n routingRules?: RoutingRule[];\n /** Load balancing settings associated with this Front Door instance. */\n loadBalancingSettings?: LoadBalancingSettingsModel[];\n /** Health probe settings associated with this Front Door instance. */\n healthProbeSettings?: HealthProbeSettingsModel[];\n /** Backend pools available to routing rules. */\n backendPools?: BackendPool[];\n /** Frontend endpoints available to routing rules. */\n frontendEndpoints?: FrontendEndpoint[];\n /** Settings for all backendPools */\n backendPoolsSettings?: BackendPoolsSettings;\n /** Operational status of the Front Door load balancer. Permitted values are 'Enabled' or 'Disabled' */\n enabledState?: FrontDoorEnabledState;\n /**\n * Resource status of the Front Door.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: FrontDoorResourceState;\n /**\n * Provisioning state of the Front Door.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly provisioningState?: string;\n /**\n * The host that each frontendEndpoint must CNAME to.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly cname?: string;\n /**\n * The Id of the frontdoor.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly frontdoorId?: string;\n /**\n * Rules Engine Configurations available to routing rules.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly rulesEngines?: RulesEngine[];\n /**\n * Key-Value pair representing additional properties for frontdoor.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly extendedProperties?: { [propertyName: string]: string };\n}\n\n/** Defines an Network Experiment Profile and lists of Experiments */\nexport interface Profile extends Resource {\n /** Gets a unique read-only string that changes whenever the resource is updated. */\n etag?: string;\n /**\n * Resource status.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: NetworkExperimentResourceState;\n /** The state of the Experiment */\n enabledState?: State;\n}\n\n/** Defines the properties of a preconfigured endpoint */\nexport interface PreconfiguredEndpoint extends Resource {\n /** The description of the endpoint */\n description?: string;\n /** The endpoint that is preconfigured */\n endpoint?: string;\n /** The type of endpoint */\n endpointType?: EndpointType;\n /** The preconfigured endpoint backend */\n backend?: string;\n}\n\n/** Defines the properties of an Experiment */\nexport interface Experiment extends Resource {\n /** The description of the details or intents of the Experiment */\n description?: string;\n /** The endpoint A of an experiment */\n endpointA?: Endpoint;\n /** The endpoint B of an experiment */\n endpointB?: Endpoint;\n /** The state of the Experiment */\n enabledState?: State;\n /**\n * Resource status.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: NetworkExperimentResourceState;\n /**\n * The description of Experiment status from the server side\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly status?: string;\n /**\n * The uri to the Script used in the Experiment\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly scriptFileUri?: string;\n}\n\n/** Defines the LatencyScorecard */\nexport interface LatencyScorecard extends Resource {\n /**\n * The unique identifier of the Latency Scorecard\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly idPropertiesId?: string;\n /**\n * The name of the Latency Scorecard\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly namePropertiesName?: string;\n /**\n * The description of the Latency Scorecard\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly description?: string;\n /**\n * The A endpoint in the scorecard\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly endpointA?: string;\n /**\n * The B endpoint in the scorecard\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly endpointB?: string;\n /**\n * The start time of the Latency Scorecard in UTC\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly startDateTimeUTC?: Date;\n /**\n * The end time of the Latency Scorecard in UTC\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly endDateTimeUTC?: Date;\n /**\n * The country associated with the Latency Scorecard. Values are country ISO codes as specified here- https://www.iso.org/iso-3166-country-codes.html\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly country?: string;\n /** The latency metrics of the Latency Scorecard */\n latencyMetrics?: LatencyMetric[];\n}\n\n/** Defines the Timeseries */\nexport interface Timeseries extends Resource {\n /** The endpoint associated with the Timeseries data point */\n endpoint?: string;\n /** The start DateTime of the Timeseries in UTC */\n startDateTimeUTC?: string;\n /** The end DateTime of the Timeseries in UTC */\n endDateTimeUTC?: string;\n /** The aggregation interval of the Timeseries */\n aggregationInterval?: AggregationInterval;\n /** The type of Timeseries */\n timeseriesType?: TimeseriesType;\n /** The country associated with the Timeseries. Values are country ISO codes as specified here- https://www.iso.org/iso-3166-country-codes.html */\n country?: string;\n /** The set of data points for the timeseries */\n timeseriesData?: TimeseriesDataPoint[];\n}\n\n/** The JSON object that contains the properties required to create a Rules Engine Configuration. */\nexport interface RulesEngineProperties extends RulesEngineUpdateParameters {\n /**\n * Resource status.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: FrontDoorResourceState;\n}\n\n/** Describes Forwarding Route. */\nexport interface ForwardingConfiguration extends RouteConfiguration {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odataType: \"#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration\";\n /** A custom path used to rewrite resource paths matched by this rule. Leave empty to use incoming path. */\n customForwardingPath?: string;\n /** Protocol this rule will use when forwarding traffic to backends. */\n forwardingProtocol?: FrontDoorForwardingProtocol;\n /** The caching configuration associated with this rule. */\n cacheConfiguration?: CacheConfiguration;\n /** A reference to the BackendPool which this rule routes to. */\n backendPool?: SubResource;\n}\n\n/** Describes Redirect Route. */\nexport interface RedirectConfiguration extends RouteConfiguration {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odataType: \"#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration\";\n /** The redirect type the rule will use when redirecting traffic. */\n redirectType?: FrontDoorRedirectType;\n /** The protocol of the destination to where the traffic is redirected */\n redirectProtocol?: FrontDoorRedirectProtocol;\n /** Host to redirect. Leave empty to use the incoming host as the destination host. */\n customHost?: string;\n /** The full path to redirect. Path cannot be empty and must start with /. Leave empty to use the incoming path as destination path. */\n customPath?: string;\n /** Fragment to add to the redirect URL. Fragment is the part of the URL that comes after #. Do not include the #. */\n customFragment?: string;\n /** The set of query strings to be placed in the redirect URL. Setting this value would replace any existing query string; leave empty to preserve the incoming query string. Query string must be in <key>=<value> format. The first ? and & will be added automatically so do not include them in the front, but do separate multiple query strings with &. */\n customQueryString?: string;\n}\n\n/** The JSON object that contains the properties required to create an endpoint. */\nexport interface FrontDoorProperties extends FrontDoorUpdateParameters {\n /**\n * Resource status of the Front Door.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: FrontDoorResourceState;\n /**\n * Provisioning state of the Front Door.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly provisioningState?: string;\n /**\n * The host that each frontendEndpoint must CNAME to.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly cname?: string;\n /**\n * The Id of the frontdoor.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly frontdoorId?: string;\n /**\n * Rules Engine Configurations available to routing rules.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly rulesEngines?: RulesEngine[];\n /**\n * Key-Value pair representing additional properties for frontdoor.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly extendedProperties?: { [propertyName: string]: string };\n}\n\n/** The JSON object that contains the properties required to create a routing rule. */\nexport interface RoutingRuleProperties extends RoutingRuleUpdateParameters {\n /**\n * Resource status.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: FrontDoorResourceState;\n}\n\n/** A routing rule represents a specification for traffic to treat and where to send it, along with health probe information. */\nexport interface RoutingRule extends SubResource {\n /** Resource name. */\n name?: string;\n /**\n * Resource type.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly type?: string;\n /** Frontend endpoints associated with this rule */\n frontendEndpoints?: SubResource[];\n /** Protocol schemes to match for this rule */\n acceptedProtocols?: FrontDoorProtocol[];\n /** The route patterns of the rule. */\n patternsToMatch?: string[];\n /** Whether to enable use of this rule. Permitted values are 'Enabled' or 'Disabled' */\n enabledState?: RoutingRuleEnabledState;\n /** A reference to the routing configuration. */\n routeConfiguration?: RouteConfigurationUnion;\n /** A reference to a specific Rules Engine Configuration to apply to this route. */\n rulesEngine?: SubResource;\n /** Defines the Web Application Firewall policy for each routing rule (if applicable) */\n webApplicationFirewallPolicyLink?: RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink;\n /**\n * Resource status.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: FrontDoorResourceState;\n}\n\n/** Load balancing settings for a backend pool */\nexport interface LoadBalancingSettingsModel extends SubResource {\n /** Resource name. */\n name?: string;\n /**\n * Resource type.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly type?: string;\n /** The number of samples to consider for load balancing decisions */\n sampleSize?: number;\n /** The number of samples within the sample period that must succeed */\n successfulSamplesRequired?: number;\n /** The additional latency in milliseconds for probes to fall into the lowest latency bucket */\n additionalLatencyMilliseconds?: number;\n /**\n * Resource status.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: FrontDoorResourceState;\n}\n\n/** Load balancing settings for a backend pool */\nexport interface HealthProbeSettingsModel extends SubResource {\n /** Resource name. */\n name?: string;\n /**\n * Resource type.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly type?: string;\n /** The path to use for the health probe. Default is / */\n path?: string;\n /** Protocol scheme to use for this probe */\n protocol?: FrontDoorProtocol;\n /** The number of seconds between health probes. */\n intervalInSeconds?: number;\n /** Configures which HTTP method to use to probe the backends defined under backendPools. */\n healthProbeMethod?: FrontDoorHealthProbeMethod;\n /** Whether to enable health probes to be made against backends defined under backendPools. Health probes can only be disabled if there is a single enabled backend in single enabled backend pool. */\n enabledState?: HealthProbeEnabled;\n /**\n * Resource status.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: FrontDoorResourceState;\n}\n\n/** A backend pool is a collection of backends that can be routed to. */\nexport interface BackendPool extends SubResource {\n /** Resource name. */\n name?: string;\n /**\n * Resource type.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly type?: string;\n /** The set of backends for this pool */\n backends?: Backend[];\n /** Load balancing settings for a backend pool */\n loadBalancingSettings?: SubResource;\n /** L7 health probe settings for a backend pool */\n healthProbeSettings?: SubResource;\n /**\n * Resource status.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: FrontDoorResourceState;\n}\n\n/** A frontend endpoint used for routing. */\nexport interface FrontendEndpoint extends SubResource {\n /** Resource name. */\n name?: string;\n /**\n * Resource type.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly type?: string;\n /** The host name of the frontendEndpoint. Must be a domain name. */\n hostName?: string;\n /** Whether to allow session affinity on this host. Valid options are 'Enabled' or 'Disabled' */\n sessionAffinityEnabledState?: SessionAffinityEnabledState;\n /** UNUSED. This field will be ignored. The TTL to use in seconds for session affinity, if applicable. */\n sessionAffinityTtlSeconds?: number;\n /** Defines the Web Application Firewall policy for each host (if applicable) */\n webApplicationFirewallPolicyLink?: FrontendEndpointUpdateParametersWebApplicationFirewallPolicyLink;\n /**\n * Resource status.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: FrontDoorResourceState;\n /**\n * Provisioning status of Custom Https of the frontendEndpoint.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly customHttpsProvisioningState?: CustomHttpsProvisioningState;\n /**\n * Provisioning substate shows the progress of custom HTTPS enabling/disabling process step by step.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly customHttpsProvisioningSubstate?: CustomHttpsProvisioningSubstate;\n /**\n * The configuration specifying how to enable HTTPS\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly customHttpsConfiguration?: CustomHttpsConfiguration;\n}\n\n/** The JSON object that contains the properties required to create load balancing settings */\nexport interface LoadBalancingSettingsProperties\n extends LoadBalancingSettingsUpdateParameters {\n /**\n * Resource status.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: FrontDoorResourceState;\n}\n\n/** The JSON object that contains the properties required to create a health probe settings. */\nexport interface HealthProbeSettingsProperties\n extends HealthProbeSettingsUpdateParameters {\n /**\n * Resource status.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: FrontDoorResourceState;\n}\n\n/** The JSON object that contains the properties required to create a Backend Pool. */\nexport interface BackendPoolProperties extends BackendPoolUpdateParameters {\n /**\n * Resource status.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: FrontDoorResourceState;\n}\n\n/** The JSON object that contains the properties required to create a frontend endpoint. */\nexport interface FrontendEndpointProperties\n extends FrontendEndpointUpdateParameters {\n /**\n * Resource status.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: FrontDoorResourceState;\n /**\n * Provisioning status of Custom Https of the frontendEndpoint.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly customHttpsProvisioningState?: CustomHttpsProvisioningState;\n /**\n * Provisioning substate shows the progress of custom HTTPS enabling/disabling process step by step.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly customHttpsProvisioningSubstate?: CustomHttpsProvisioningSubstate;\n /**\n * The configuration specifying how to enable HTTPS\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly customHttpsConfiguration?: CustomHttpsConfiguration;\n}\n\n/** Known values of {@link PolicyEnabledState} that the service accepts. */\nexport enum KnownPolicyEnabledState {\n /** Disabled */\n Disabled = \"Disabled\",\n /** Enabled */\n Enabled = \"Enabled\"\n}\n\n/**\n * Defines values for PolicyEnabledState. \\\n * {@link KnownPolicyEnabledState} can be used interchangeably with PolicyEnabledState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Disabled** \\\n * **Enabled**\n */\nexport type PolicyEnabledState = string;\n\n/** Known values of {@link PolicyMode} that the service accepts. */\nexport enum KnownPolicyMode {\n /** Prevention */\n Prevention = \"Prevention\",\n /** Detection */\n Detection = \"Detection\"\n}\n\n/**\n * Defines values for PolicyMode. \\\n * {@link KnownPolicyMode} can be used interchangeably with PolicyMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Prevention** \\\n * **Detection**\n */\nexport type PolicyMode = string;\n\n/** Known values of {@link PolicyRequestBodyCheck} that the service accepts. */\nexport enum KnownPolicyRequestBodyCheck {\n /** Disabled */\n Disabled = \"Disabled\",\n /** Enabled */\n Enabled = \"Enabled\"\n}\n\n/**\n * Defines values for PolicyRequestBodyCheck. \\\n * {@link KnownPolicyRequestBodyCheck} can be used interchangeably with PolicyRequestBodyCheck,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Disabled** \\\n * **Enabled**\n */\nexport type PolicyRequestBodyCheck = string;\n\n/** Known values of {@link CustomRuleEnabledState} that the service accepts. */\nexport enum KnownCustomRuleEnabledState {\n /** Disabled */\n Disabled = \"Disabled\",\n /** Enabled */\n Enabled = \"Enabled\"\n}\n\n/**\n * Defines values for CustomRuleEnabledState. \\\n * {@link KnownCustomRuleEnabledState} can be used interchangeably with CustomRuleEnabledState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Disabled** \\\n * **Enabled**\n */\nexport type CustomRuleEnabledState = string;\n\n/** Known values of {@link RuleType} that the service accepts. */\nexport enum KnownRuleType {\n /** MatchRule */\n MatchRule = \"MatchRule\",\n /** RateLimitRule */\n RateLimitRule = \"RateLimitRule\"\n}\n\n/**\n * Defines values for RuleType. \\\n * {@link KnownRuleType} can be used interchangeably with RuleType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **MatchRule** \\\n * **RateLimitRule**\n */\nexport type RuleType = string;\n\n/** Known values of {@link MatchVariable} that the service accepts. */\nexport enum KnownMatchVariable {\n /** RemoteAddr */\n RemoteAddr = \"RemoteAddr\",\n /** RequestMethod */\n RequestMethod = \"RequestMethod\",\n /** QueryString */\n QueryString = \"QueryString\",\n /** PostArgs */\n PostArgs = \"PostArgs\",\n /** RequestUri */\n RequestUri = \"RequestUri\",\n /** RequestHeader */\n RequestHeader = \"RequestHeader\",\n /** RequestBody */\n RequestBody = \"RequestBody\",\n /** Cookies */\n Cookies = \"Cookies\",\n /** SocketAddr */\n SocketAddr = \"SocketAddr\"\n}\n\n/**\n * Defines values for MatchVariable. \\\n * {@link KnownMatchVariable} can be used interchangeably with MatchVariable,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **RemoteAddr** \\\n * **RequestMethod** \\\n * **QueryString** \\\n * **PostArgs** \\\n * **RequestUri** \\\n * **RequestHeader** \\\n * **RequestBody** \\\n * **Cookies** \\\n * **SocketAddr**\n */\nexport type MatchVariable = string;\n\n/** Known values of {@link Operator} that the service accepts. */\nexport enum KnownOperator {\n /** Any */\n Any = \"Any\",\n /** IPMatch */\n IPMatch = \"IPMatch\",\n /** GeoMatch */\n GeoMatch = \"GeoMatch\",\n /** Equal */\n Equal = \"Equal\",\n /** Contains */\n Contains = \"Contains\",\n /** LessThan */\n LessThan = \"LessThan\",\n /** GreaterThan */\n GreaterThan = \"GreaterThan\",\n /** LessThanOrEqual */\n LessThanOrEqual = \"LessThanOrEqual\",\n /** GreaterThanOrEqual */\n GreaterThanOrEqual = \"GreaterThanOrEqual\",\n /** BeginsWith */\n BeginsWith = \"BeginsWith\",\n /** EndsWith */\n EndsWith = \"EndsWith\",\n /** RegEx */\n RegEx = \"RegEx\"\n}\n\n/**\n * Defines values for Operator. \\\n * {@link KnownOperator} can be used interchangeably with Operator,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Any** \\\n * **IPMatch** \\\n * **GeoMatch** \\\n * **Equal** \\\n * **Contains** \\\n * **LessThan** \\\n * **GreaterThan** \\\n * **LessThanOrEqual** \\\n * **GreaterThanOrEqual** \\\n * **BeginsWith** \\\n * **EndsWith** \\\n * **RegEx**\n */\nexport type Operator = string;\n\n/** Known values of {@link TransformType} that the service accepts. */\nexport enum KnownTransformType {\n /** Lowercase */\n Lowercase = \"Lowercase\",\n /** Uppercase */\n Uppercase = \"Uppercase\",\n /** Trim */\n Trim = \"Trim\",\n /** UrlDecode */\n UrlDecode = \"UrlDecode\",\n /** UrlEncode */\n UrlEncode = \"UrlEncode\",\n /** RemoveNulls */\n RemoveNulls = \"RemoveNulls\"\n}\n\n/**\n * Defines values for TransformType. \\\n * {@link KnownTransformType} can be used interchangeably with TransformType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Lowercase** \\\n * **Uppercase** \\\n * **Trim** \\\n * **UrlDecode** \\\n * **UrlEncode** \\\n * **RemoveNulls**\n */\nexport type TransformType = string;\n\n/** Known values of {@link ActionType} that the service accepts. */\nexport enum KnownActionType {\n /** Allow */\n Allow = \"Allow\",\n /** Block */\n Block = \"Block\",\n /** Log */\n Log = \"Log\",\n /** Redirect */\n Redirect = \"Redirect\",\n /** AnomalyScoring */\n AnomalyScoring = \"AnomalyScoring\"\n}\n\n/**\n * Defines values for ActionType. \\\n * {@link KnownActionType} can be used interchangeably with ActionType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Allow** \\\n * **Block** \\\n * **Log** \\\n * **Redirect** \\\n * **AnomalyScoring**\n */\nexport type ActionType = string;\n\n/** Known values of {@link ManagedRuleSetActionType} that the service accepts. */\nexport enum KnownManagedRuleSetActionType {\n /** Block */\n Block = \"Block\",\n /** Log */\n Log = \"Log\",\n /** Redirect */\n Redirect = \"Redirect\"\n}\n\n/**\n * Defines values for ManagedRuleSetActionType. \\\n * {@link KnownManagedRuleSetActionType} can be used interchangeably with ManagedRuleSetActionType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Block** \\\n * **Log** \\\n * **Redirect**\n */\nexport type ManagedRuleSetActionType = string;\n\n/** Known values of {@link ManagedRuleExclusionMatchVariable} that the service accepts. */\nexport enum KnownManagedRuleExclusionMatchVariable {\n /** RequestHeaderNames */\n RequestHeaderNames = \"RequestHeaderNames\",\n /** RequestCookieNames */\n RequestCookieNames = \"RequestCookieNames\",\n /** QueryStringArgNames */\n QueryStringArgNames = \"QueryStringArgNames\",\n /** RequestBodyPostArgNames */\n RequestBodyPostArgNames = \"RequestBodyPostArgNames\",\n /** RequestBodyJsonArgNames */\n RequestBodyJsonArgNames = \"RequestBodyJsonArgNames\"\n}\n\n/**\n * Defines values for ManagedRuleExclusionMatchVariable. \\\n * {@link KnownManagedRuleExclusionMatchVariable} can be used interchangeably with ManagedRuleExclusionMatchVariable,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **RequestHeaderNames** \\\n * **RequestCookieNames** \\\n * **QueryStringArgNames** \\\n * **RequestBodyPostArgNames** \\\n * **RequestBodyJsonArgNames**\n */\nexport type ManagedRuleExclusionMatchVariable = string;\n\n/** Known values of {@link ManagedRuleExclusionSelectorMatchOperator} that the service accepts. */\nexport enum KnownManagedRuleExclusionSelectorMatchOperator {\n /** Equals */\n Equals = \"Equals\",\n /** Contains */\n Contains = \"Contains\",\n /** StartsWith */\n StartsWith = \"StartsWith\",\n /** EndsWith */\n EndsWith = \"EndsWith\",\n /** EqualsAny */\n EqualsAny = \"EqualsAny\"\n}\n\n/**\n * Defines values for ManagedRuleExclusionSelectorMatchOperator. \\\n * {@link KnownManagedRuleExclusionSelectorMatchOperator} can be used interchangeably with ManagedRuleExclusionSelectorMatchOperator,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Equals** \\\n * **Contains** \\\n * **StartsWith** \\\n * **EndsWith** \\\n * **EqualsAny**\n */\nexport type ManagedRuleExclusionSelectorMatchOperator = string;\n\n/** Known values of {@link ManagedRuleEnabledState} that the service accepts. */\nexport enum KnownManagedRuleEnabledState {\n /** Disabled */\n Disabled = \"Disabled\",\n /** Enabled */\n Enabled = \"Enabled\"\n}\n\n/**\n * Defines values for ManagedRuleEnabledState. \\\n * {@link KnownManagedRuleEnabledState} can be used interchangeably with ManagedRuleEnabledState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Disabled** \\\n * **Enabled**\n */\nexport type ManagedRuleEnabledState = string;\n\n/** Known values of {@link PolicyResourceState} that the service accepts. */\nexport enum KnownPolicyResourceState {\n /** Creating */\n Creating = \"Creating\",\n /** Enabling */\n Enabling = \"Enabling\",\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabling */\n Disabling = \"Disabling\",\n /** Disabled */\n Disabled = \"Disabled\",\n /** Deleting */\n Deleting = \"Deleting\"\n}\n\n/**\n * Defines values for PolicyResourceState. \\\n * {@link KnownPolicyResourceState} can be used interchangeably with PolicyResourceState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Creating** \\\n * **Enabling** \\\n * **Enabled** \\\n * **Disabling** \\\n * **Disabled** \\\n * **Deleting**\n */\nexport type PolicyResourceState = string;\n\n/** Known values of {@link SkuName} that the service accepts. */\nexport enum KnownSkuName {\n /** ClassicAzureFrontDoor */\n ClassicAzureFrontDoor = \"Classic_AzureFrontDoor\",\n /** StandardAzureFrontDoor */\n StandardAzureFrontDoor = \"Standard_AzureFrontDoor\",\n /** PremiumAzureFrontDoor */\n PremiumAzureFrontDoor = \"Premium_AzureFrontDoor\"\n}\n\n/**\n * Defines values for SkuName. \\\n * {@link KnownSkuName} can be used interchangeably with SkuName,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Classic_AzureFrontDoor** \\\n * **Standard_AzureFrontDoor** \\\n * **Premium_AzureFrontDoor**\n */\nexport type SkuName = string;\n\n/** Known values of {@link Availability} that the service accepts. */\nexport enum KnownAvailability {\n /** Available */\n Available = \"Available\",\n /** Unavailable */\n Unavailable = \"Unavailable\"\n}\n\n/**\n * Defines values for Availability. \\\n * {@link KnownAvailability} can be used interchangeably with Availability,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Available** \\\n * **Unavailable**\n */\nexport type Availability = string;\n\n/** Known values of {@link FrontDoorResourceState} that the service accepts. */\nexport enum KnownFrontDoorResourceState {\n /** Creating */\n Creating = \"Creating\",\n /** Enabling */\n Enabling = \"Enabling\",\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabling */\n Disabling = \"Disabling\",\n /** Disabled */\n Disabled = \"Disabled\",\n /** Deleting */\n Deleting = \"Deleting\",\n /** Migrating */\n Migrating = \"Migrating\",\n /** Migrated */\n Migrated = \"Migrated\"\n}\n\n/**\n * Defines values for FrontDoorResourceState. \\\n * {@link KnownFrontDoorResourceState} can be used interchangeably with FrontDoorResourceState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Creating** \\\n * **Enabling** \\\n * **Enabled** \\\n * **Disabling** \\\n * **Disabled** \\\n * **Deleting** \\\n * **Migrating** \\\n * **Migrated**\n */\nexport type FrontDoorResourceState = string;\n\n/** Known values of {@link HeaderActionType} that the service accepts. */\nexport enum KnownHeaderActionType {\n /** Append */\n Append = \"Append\",\n /** Delete */\n Delete = \"Delete\",\n /** Overwrite */\n Overwrite = \"Overwrite\"\n}\n\n/**\n * Defines values for HeaderActionType. \\\n * {@link KnownHeaderActionType} can be used interchangeably with HeaderActionType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Append** \\\n * **Delete** \\\n * **Overwrite**\n */\nexport type HeaderActionType = string;\n\n/** Known values of {@link RulesEngineMatchVariable} that the service accepts. */\nexport enum KnownRulesEngineMatchVariable {\n /** IsMobile */\n IsMobile = \"IsMobile\",\n /** RemoteAddr */\n RemoteAddr = \"RemoteAddr\",\n /** RequestMethod */\n RequestMethod = \"RequestMethod\",\n /** QueryString */\n QueryString = \"QueryString\",\n /** PostArgs */\n PostArgs = \"PostArgs\",\n /** RequestUri */\n RequestUri = \"RequestUri\",\n /** RequestPath */\n RequestPath = \"RequestPath\",\n /** RequestFilename */\n RequestFilename = \"RequestFilename\",\n /** RequestFilenameExtension */\n RequestFilenameExtension = \"RequestFilenameExtension\",\n /** RequestHeader */\n RequestHeader = \"RequestHeader\",\n /** RequestBody */\n RequestBody = \"RequestBody\",\n /** RequestScheme */\n RequestScheme = \"RequestScheme\"\n}\n\n/**\n * Defines values for RulesEngineMatchVariable. \\\n * {@link KnownRulesEngineMatchVariable} can be used interchangeably with RulesEngineMatchVariable,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **IsMobile** \\\n * **RemoteAddr** \\\n * **RequestMethod** \\\n * **QueryString** \\\n * **PostArgs** \\\n * **RequestUri** \\\n * **RequestPath** \\\n * **RequestFilename** \\\n * **RequestFilenameExtension** \\\n * **RequestHeader** \\\n * **RequestBody** \\\n * **RequestScheme**\n */\nexport type RulesEngineMatchVariable = string;\n\n/** Known values of {@link RulesEngineOperator} that the service accepts. */\nexport enum KnownRulesEngineOperator {\n /** Any */\n Any = \"Any\",\n /** IPMatch */\n IPMatch = \"IPMatch\",\n /** GeoMatch */\n GeoMatch = \"GeoMatch\",\n /** Equal */\n Equal = \"Equal\",\n /** Contains */\n Contains = \"Contains\",\n /** LessThan */\n LessThan = \"LessThan\",\n /** GreaterThan */\n GreaterThan = \"GreaterThan\",\n /** LessThanOrEqual */\n LessThanOrEqual = \"LessThanOrEqual\",\n /** GreaterThanOrEqual */\n GreaterThanOrEqual = \"GreaterThanOrEqual\",\n /** BeginsWith */\n BeginsWith = \"BeginsWith\",\n /** EndsWith */\n EndsWith = \"EndsWith\"\n}\n\n/**\n * Defines values for RulesEngineOperator. \\\n * {@link KnownRulesEngineOperator} can be used interchangeably with RulesEngineOperator,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Any** \\\n * **IPMatch** \\\n * **GeoMatch** \\\n * **Equal** \\\n * **Contains** \\\n * **LessThan** \\\n * **GreaterThan** \\\n * **LessThanOrEqual** \\\n * **GreaterThanOrEqual** \\\n * **BeginsWith** \\\n * **EndsWith**\n */\nexport type RulesEngineOperator = string;\n\n/** Known values of {@link Transform} that the service accepts. */\nexport enum KnownTransform {\n /** Lowercase */\n Lowercase = \"Lowercase\",\n /** Uppercase */\n Uppercase = \"Uppercase\",\n /** Trim */\n Trim = \"Trim\",\n /** UrlDecode */\n UrlDecode = \"UrlDecode\",\n /** UrlEncode */\n UrlEncode = \"UrlEncode\",\n /** RemoveNulls */\n RemoveNulls = \"RemoveNulls\"\n}\n\n/**\n * Defines values for Transform. \\\n * {@link KnownTransform} can be used interchangeably with Transform,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Lowercase** \\\n * **Uppercase** \\\n * **Trim** \\\n * **UrlDecode** \\\n * **UrlEncode** \\\n * **RemoveNulls**\n */\nexport type Transform = string;\n\n/** Known values of {@link MatchProcessingBehavior} that the service accepts. */\nexport enum KnownMatchProcessingBehavior {\n /** Continue */\n Continue = \"Continue\",\n /** Stop */\n Stop = \"Stop\"\n}\n\n/**\n * Defines values for MatchProcessingBehavior. \\\n * {@link KnownMatchProcessingBehavior} can be used interchangeably with MatchProcessingBehavior,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Continue** \\\n * **Stop**\n */\nexport type MatchProcessingBehavior = string;\n\n/** Known values of {@link FrontDoorProtocol} that the service accepts. */\nexport enum KnownFrontDoorProtocol {\n /** Http */\n Http = \"Http\",\n /** Https */\n Https = \"Https\"\n}\n\n/**\n * Defines values for FrontDoorProtocol. \\\n * {@link KnownFrontDoorProtocol} can be used interchangeably with FrontDoorProtocol,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Http** \\\n * **Https**\n */\nexport type FrontDoorProtocol = string;\n\n/** Known values of {@link RoutingRuleEnabledState} that the service accepts. */\nexport enum KnownRoutingRuleEnabledState {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\"\n}\n\n/**\n * Defines values for RoutingRuleEnabledState. \\\n * {@link KnownRoutingRuleEnabledState} can be used interchangeably with RoutingRuleEnabledState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled** \\\n * **Disabled**\n */\nexport type RoutingRuleEnabledState = string;\n\n/** Known values of {@link FrontDoorHealthProbeMethod} that the service accepts. */\nexport enum KnownFrontDoorHealthProbeMethod {\n /** GET */\n GET = \"GET\",\n /** Head */\n Head = \"HEAD\"\n}\n\n/**\n * Defines values for FrontDoorHealthProbeMethod. \\\n * {@link KnownFrontDoorHealthProbeMethod} can be used interchangeably with FrontDoorHealthProbeMethod,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **GET** \\\n * **HEAD**\n */\nexport type FrontDoorHealthProbeMethod = string;\n\n/** Known values of {@link HealthProbeEnabled} that the service accepts. */\nexport enum KnownHealthProbeEnabled {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\"\n}\n\n/**\n * Defines values for HealthProbeEnabled. \\\n * {@link KnownHealthProbeEnabled} can be used interchangeably with HealthProbeEnabled,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled** \\\n * **Disabled**\n */\nexport type HealthProbeEnabled = string;\n\n/** Known values of {@link PrivateEndpointStatus} that the service accepts. */\nexport enum KnownPrivateEndpointStatus {\n /** Pending */\n Pending = \"Pending\",\n /** Approved */\n Approved = \"Approved\",\n /** Rejected */\n Rejected = \"Rejected\",\n /** Disconnected */\n Disconnected = \"Disconnected\",\n /** Timeout */\n Timeout = \"Timeout\"\n}\n\n/**\n * Defines values for PrivateEndpointStatus. \\\n * {@link KnownPrivateEndpointStatus} can be used interchangeably with PrivateEndpointStatus,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Pending** \\\n * **Approved** \\\n * **Rejected** \\\n * **Disconnected** \\\n * **Timeout**\n */\nexport type PrivateEndpointStatus = string;\n\n/** Known values of {@link BackendEnabledState} that the service accepts. */\nexport enum KnownBackendEnabledState {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\"\n}\n\n/**\n * Defines values for BackendEnabledState. \\\n * {@link KnownBackendEnabledState} can be used interchangeably with BackendEnabledState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled** \\\n * **Disabled**\n */\nexport type BackendEnabledState = string;\n\n/** Known values of {@link CustomHttpsProvisioningState} that the service accepts. */\nexport enum KnownCustomHttpsProvisioningState {\n /** Enabling */\n Enabling = \"Enabling\",\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabling */\n Disabling = \"Disabling\",\n /** Disabled */\n Disabled = \"Disabled\",\n /** Failed */\n Failed = \"Failed\"\n}\n\n/**\n * Defines values for CustomHttpsProvisioningState. \\\n * {@link KnownCustomHttpsProvisioningState} can be used interchangeably with CustomHttpsProvisioningState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabling** \\\n * **Enabled** \\\n * **Disabling** \\\n * **Disabled** \\\n * **Failed**\n */\nexport type CustomHttpsProvisioningState = string;\n\n/** Known values of {@link CustomHttpsProvisioningSubstate} that the service accepts. */\nexport enum KnownCustomHttpsProvisioningSubstate {\n /** SubmittingDomainControlValidationRequest */\n SubmittingDomainControlValidationRequest = \"SubmittingDomainControlValidationRequest\",\n /** PendingDomainControlValidationREquestApproval */\n PendingDomainControlValidationREquestApproval = \"PendingDomainControlValidationREquestApproval\",\n /** DomainControlValidationRequestApproved */\n DomainControlValidationRequestApproved = \"DomainControlValidationRequestApproved\",\n /** DomainControlValidationRequestRejected */\n DomainControlValidationRequestRejected = \"DomainControlValidationRequestRejected\",\n /** DomainControlValidationRequestTimedOut */\n DomainControlValidationRequestTimedOut = \"DomainControlValidationRequestTimedOut\",\n /** IssuingCertificate */\n IssuingCertificate = \"IssuingCertificate\",\n /** DeployingCertificate */\n DeployingCertificate = \"DeployingCertificate\",\n /** CertificateDeployed */\n CertificateDeployed = \"CertificateDeployed\",\n /** DeletingCertificate */\n DeletingCertificate = \"DeletingCertificate\",\n /** CertificateDeleted */\n CertificateDeleted = \"CertificateDeleted\"\n}\n\n/**\n * Defines values for CustomHttpsProvisioningSubstate. \\\n * {@link KnownCustomHttpsProvisioningSubstate} can be used interchangeably with CustomHttpsProvisioningSubstate,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **SubmittingDomainControlValidationRequest** \\\n * **PendingDomainControlValidationREquestApproval** \\\n * **DomainControlValidationRequestApproved** \\\n * **DomainControlValidationRequestRejected** \\\n * **DomainControlValidationRequestTimedOut** \\\n * **IssuingCertificate** \\\n * **DeployingCertificate** \\\n * **CertificateDeployed** \\\n * **DeletingCertificate** \\\n * **CertificateDeleted**\n */\nexport type CustomHttpsProvisioningSubstate = string;\n\n/** Known values of {@link FrontDoorCertificateSource} that the service accepts. */\nexport enum KnownFrontDoorCertificateSource {\n /** AzureKeyVault */\n AzureKeyVault = \"AzureKeyVault\",\n /** FrontDoor */\n FrontDoor = \"FrontDoor\"\n}\n\n/**\n * Defines values for FrontDoorCertificateSource. \\\n * {@link KnownFrontDoorCertificateSource} can be used interchangeably with FrontDoorCertificateSource,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **AzureKeyVault** \\\n * **FrontDoor**\n */\nexport type FrontDoorCertificateSource = string;\n\n/** Known values of {@link FrontDoorTlsProtocolType} that the service accepts. */\nexport enum KnownFrontDoorTlsProtocolType {\n /** ServerNameIndication */\n ServerNameIndication = \"ServerNameIndication\"\n}\n\n/**\n * Defines values for FrontDoorTlsProtocolType. \\\n * {@link KnownFrontDoorTlsProtocolType} can be used interchangeably with FrontDoorTlsProtocolType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **ServerNameIndication**\n */\nexport type FrontDoorTlsProtocolType = string;\n\n/** Known values of {@link MinimumTLSVersion} that the service accepts. */\nexport enum KnownMinimumTLSVersion {\n /** One0 */\n One0 = \"1.0\",\n /** One2 */\n One2 = \"1.2\"\n}\n\n/**\n * Defines values for MinimumTLSVersion. \\\n * {@link KnownMinimumTLSVersion} can be used interchangeably with MinimumTLSVersion,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **1.0** \\\n * **1.2**\n */\nexport type MinimumTLSVersion = string;\n\n/** Known values of {@link FrontDoorCertificateType} that the service accepts. */\nexport enum KnownFrontDoorCertificateType {\n /** Dedicated */\n Dedicated = \"Dedicated\"\n}\n\n/**\n * Defines values for FrontDoorCertificateType. \\\n * {@link KnownFrontDoorCertificateType} can be used interchangeably with FrontDoorCertificateType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Dedicated**\n */\nexport type FrontDoorCertificateType = string;\n\n/** Known values of {@link SessionAffinityEnabledState} that the service accepts. */\nexport enum KnownSessionAffinityEnabledState {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\"\n}\n\n/**\n * Defines values for SessionAffinityEnabledState. \\\n * {@link KnownSessionAffinityEnabledState} can be used interchangeably with SessionAffinityEnabledState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled** \\\n * **Disabled**\n */\nexport type SessionAffinityEnabledState = string;\n\n/** Known values of {@link EnforceCertificateNameCheckEnabledState} that the service accepts. */\nexport enum KnownEnforceCertificateNameCheckEnabledState {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\"\n}\n\n/**\n * Defines values for EnforceCertificateNameCheckEnabledState. \\\n * {@link KnownEnforceCertificateNameCheckEnabledState} can be used interchangeably with EnforceCertificateNameCheckEnabledState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled** \\\n * **Disabled**\n */\nexport type EnforceCertificateNameCheckEnabledState = string;\n\n/** Known values of {@link FrontDoorEnabledState} that the service accepts. */\nexport enum KnownFrontDoorEnabledState {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\"\n}\n\n/**\n * Defines values for FrontDoorEnabledState. \\\n * {@link KnownFrontDoorEnabledState} can be used interchangeably with FrontDoorEnabledState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled** \\\n * **Disabled**\n */\nexport type FrontDoorEnabledState = string;\n\n/** Known values of {@link NetworkExperimentResourceState} that the service accepts. */\nexport enum KnownNetworkExperimentResourceState {\n /** Creating */\n Creating = \"Creating\",\n /** Enabling */\n Enabling = \"Enabling\",\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabling */\n Disabling = \"Disabling\",\n /** Disabled */\n Disabled = \"Disabled\",\n /** Deleting */\n Deleting = \"Deleting\"\n}\n\n/**\n * Defines values for NetworkExperimentResourceState. \\\n * {@link KnownNetworkExperimentResourceState} can be used interchangeably with NetworkExperimentResourceState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Creating** \\\n * **Enabling** \\\n * **Enabled** \\\n * **Disabling** \\\n * **Disabled** \\\n * **Deleting**\n */\nexport type NetworkExperimentResourceState = string;\n\n/** Known values of {@link State} that the service accepts. */\nexport enum KnownState {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\"\n}\n\n/**\n * Defines values for State. \\\n * {@link KnownState} can be used interchangeably with State,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled** \\\n * **Disabled**\n */\nexport type State = string;\n\n/** Known values of {@link EndpointType} that the service accepts. */\nexport enum KnownEndpointType {\n /** AFD */\n AFD = \"AFD\",\n /** AzureRegion */\n AzureRegion = \"AzureRegion\",\n /** CDN */\n CDN = \"CDN\",\n /** ATM */\n ATM = \"ATM\"\n}\n\n/**\n * Defines values for EndpointType. \\\n * {@link KnownEndpointType} can be used interchangeably with EndpointType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **AFD** \\\n * **AzureRegion** \\\n * **CDN** \\\n * **ATM**\n */\nexport type EndpointType = string;\n\n/** Known values of {@link LatencyScorecardAggregationInterval} that the service accepts. */\nexport enum KnownLatencyScorecardAggregationInterval {\n /** Daily */\n Daily = \"Daily\",\n /** Weekly */\n Weekly = \"Weekly\",\n /** Monthly */\n Monthly = \"Monthly\"\n}\n\n/**\n * Defines values for LatencyScorecardAggregationInterval. \\\n * {@link KnownLatencyScorecardAggregationInterval} can be used interchangeably with LatencyScorecardAggregationInterval,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Daily** \\\n * **Weekly** \\\n * **Monthly**\n */\nexport type LatencyScorecardAggregationInterval = string;\n\n/** Known values of {@link TimeseriesAggregationInterval} that the service accepts. */\nexport enum KnownTimeseriesAggregationInterval {\n /** Hourly */\n Hourly = \"Hourly\",\n /** Daily */\n Daily = \"Daily\"\n}\n\n/**\n * Defines values for TimeseriesAggregationInterval. \\\n * {@link KnownTimeseriesAggregationInterval} can be used interchangeably with TimeseriesAggregationInterval,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Hourly** \\\n * **Daily**\n */\nexport type TimeseriesAggregationInterval = string;\n\n/** Known values of {@link TimeseriesType} that the service accepts. */\nexport enum KnownTimeseriesType {\n /** MeasurementCounts */\n MeasurementCounts = \"MeasurementCounts\",\n /** LatencyP50 */\n LatencyP50 = \"LatencyP50\",\n /** LatencyP75 */\n LatencyP75 = \"LatencyP75\",\n /** LatencyP95 */\n LatencyP95 = \"LatencyP95\"\n}\n\n/**\n * Defines values for TimeseriesType. \\\n * {@link KnownTimeseriesType} can be used interchangeably with TimeseriesType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **MeasurementCounts** \\\n * **LatencyP50** \\\n * **LatencyP75** \\\n * **LatencyP95**\n */\nexport type TimeseriesType = string;\n\n/** Known values of {@link AggregationInterval} that the service accepts. */\nexport enum KnownAggregationInterval {\n /** Hourly */\n Hourly = \"Hourly\",\n /** Daily */\n Daily = \"Daily\"\n}\n\n/**\n * Defines values for AggregationInterval. \\\n * {@link KnownAggregationInterval} can be used interchangeably with AggregationInterval,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Hourly** \\\n * **Daily**\n */\nexport type AggregationInterval = string;\n\n/** Known values of {@link NetworkOperationStatus} that the service accepts. */\nexport enum KnownNetworkOperationStatus {\n /** InProgress */\n InProgress = \"InProgress\",\n /** Succeeded */\n Succeeded = \"Succeeded\",\n /** Failed */\n Failed = \"Failed\"\n}\n\n/**\n * Defines values for NetworkOperationStatus. \\\n * {@link KnownNetworkOperationStatus} can be used interchangeably with NetworkOperationStatus,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **InProgress** \\\n * **Succeeded** \\\n * **Failed**\n */\nexport type NetworkOperationStatus = string;\n\n/** Known values of {@link FrontDoorForwardingProtocol} that the service accepts. */\nexport enum KnownFrontDoorForwardingProtocol {\n /** HttpOnly */\n HttpOnly = \"HttpOnly\",\n /** HttpsOnly */\n HttpsOnly = \"HttpsOnly\",\n /** MatchRequest */\n MatchRequest = \"MatchRequest\"\n}\n\n/**\n * Defines values for FrontDoorForwardingProtocol. \\\n * {@link KnownFrontDoorForwardingProtocol} can be used interchangeably with FrontDoorForwardingProtocol,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **HttpOnly** \\\n * **HttpsOnly** \\\n * **MatchRequest**\n */\nexport type FrontDoorForwardingProtocol = string;\n\n/** Known values of {@link FrontDoorQuery} that the service accepts. */\nexport enum KnownFrontDoorQuery {\n /** StripNone */\n StripNone = \"StripNone\",\n /** StripAll */\n StripAll = \"StripAll\",\n /** StripOnly */\n StripOnly = \"StripOnly\",\n /** StripAllExcept */\n StripAllExcept = \"StripAllExcept\"\n}\n\n/**\n * Defines values for FrontDoorQuery. \\\n * {@link KnownFrontDoorQuery} can be used interchangeably with FrontDoorQuery,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **StripNone** \\\n * **StripAll** \\\n * **StripOnly** \\\n * **StripAllExcept**\n */\nexport type FrontDoorQuery = string;\n\n/** Known values of {@link DynamicCompressionEnabled} that the service accepts. */\nexport enum KnownDynamicCompressionEnabled {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\"\n}\n\n/**\n * Defines values for DynamicCompressionEnabled. \\\n * {@link KnownDynamicCompressionEnabled} can be used interchangeably with DynamicCompressionEnabled,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled** \\\n * **Disabled**\n */\nexport type DynamicCompressionEnabled = string;\n\n/** Known values of {@link FrontDoorRedirectType} that the service accepts. */\nexport enum KnownFrontDoorRedirectType {\n /** Moved */\n Moved = \"Moved\",\n /** Found */\n Found = \"Found\",\n /** TemporaryRedirect */\n TemporaryRedirect = \"TemporaryRedirect\",\n /** PermanentRedirect */\n PermanentRedirect = \"PermanentRedirect\"\n}\n\n/**\n * Defines values for FrontDoorRedirectType. \\\n * {@link KnownFrontDoorRedirectType} can be used interchangeably with FrontDoorRedirectType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Moved** \\\n * **Found** \\\n * **TemporaryRedirect** \\\n * **PermanentRedirect**\n */\nexport type FrontDoorRedirectType = string;\n\n/** Known values of {@link FrontDoorRedirectProtocol} that the service accepts. */\nexport enum KnownFrontDoorRedirectProtocol {\n /** HttpOnly */\n HttpOnly = \"HttpOnly\",\n /** HttpsOnly */\n HttpsOnly = \"HttpsOnly\",\n /** MatchRequest */\n MatchRequest = \"MatchRequest\"\n}\n\n/**\n * Defines values for FrontDoorRedirectProtocol. \\\n * {@link KnownFrontDoorRedirectProtocol} can be used interchangeably with FrontDoorRedirectProtocol,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **HttpOnly** \\\n * **HttpsOnly** \\\n * **MatchRequest**\n */\nexport type FrontDoorRedirectProtocol = string;\n/** Defines values for ResourceType. */\nexport type ResourceType =\n | \"Microsoft.Network/frontDoors\"\n | \"Microsoft.Network/frontDoors/frontendEndpoints\";\n\n/** Optional parameters. */\nexport interface PoliciesListOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the list operation. */\nexport type PoliciesListResponse = WebApplicationFirewallPolicyList;\n\n/** Optional parameters. */\nexport interface PoliciesListBySubscriptionOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listBySubscription operation. */\nexport type PoliciesListBySubscriptionResponse = WebApplicationFirewallPolicyList;\n\n/** Optional parameters. */\nexport interface PoliciesGetOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the get operation. */\nexport type PoliciesGetResponse = WebApplicationFirewallPolicy;\n\n/** Optional parameters. */\nexport interface PoliciesCreateOrUpdateOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the createOrUpdate operation. */\nexport type PoliciesCreateOrUpdateResponse = WebApplicationFirewallPolicy;\n\n/** Optional parameters. */\nexport interface PoliciesUpdateOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the update operation. */\nexport type PoliciesUpdateResponse = WebApplicationFirewallPolicy;\n\n/** Optional parameters. */\nexport interface PoliciesDeleteOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface PoliciesListNextOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listNext operation. */\nexport type PoliciesListNextResponse = WebApplicationFirewallPolicyList;\n\n/** Optional parameters. */\nexport interface PoliciesListBySubscriptionNextOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listBySubscriptionNext operation. */\nexport type PoliciesListBySubscriptionNextResponse = WebApplicationFirewallPolicyList;\n\n/** Optional parameters. */\nexport interface ManagedRuleSetsListOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the list operation. */\nexport type ManagedRuleSetsListResponse = ManagedRuleSetDefinitionList;\n\n/** Optional parameters. */\nexport interface ManagedRuleSetsListNextOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listNext operation. */\nexport type ManagedRuleSetsListNextResponse = ManagedRuleSetDefinitionList;\n\n/** Optional parameters. */\nexport interface FrontDoorNameAvailabilityCheckOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the check operation. */\nexport type FrontDoorNameAvailabilityCheckResponse = CheckNameAvailabilityOutput;\n\n/** Optional parameters. */\nexport interface FrontDoorNameAvailabilityWithSubscriptionCheckOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the check operation. */\nexport type FrontDoorNameAvailabilityWithSubscriptionCheckResponse = CheckNameAvailabilityOutput;\n\n/** Optional parameters. */\nexport interface FrontDoorsListOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the list operation. */\nexport type FrontDoorsListResponse = FrontDoorListResult;\n\n/** Optional parameters. */\nexport interface FrontDoorsListByResourceGroupOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listByResourceGroup operation. */\nexport type FrontDoorsListByResourceGroupResponse = FrontDoorListResult;\n\n/** Optional parameters. */\nexport interface FrontDoorsGetOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the get operation. */\nexport type FrontDoorsGetResponse = FrontDoor;\n\n/** Optional parameters. */\nexport interface FrontDoorsCreateOrUpdateOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the createOrUpdate operation. */\nexport type FrontDoorsCreateOrUpdateResponse = FrontDoor;\n\n/** Optional parameters. */\nexport interface FrontDoorsDeleteOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface FrontDoorsValidateCustomDomainOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the validateCustomDomain operation. */\nexport type FrontDoorsValidateCustomDomainResponse = ValidateCustomDomainOutput;\n\n/** Optional parameters. */\nexport interface FrontDoorsListNextOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listNext operation. */\nexport type FrontDoorsListNextResponse = FrontDoorListResult;\n\n/** Optional parameters. */\nexport interface FrontDoorsListByResourceGroupNextOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listByResourceGroupNext operation. */\nexport type FrontDoorsListByResourceGroupNextResponse = FrontDoorListResult;\n\n/** Optional parameters. */\nexport interface FrontendEndpointsListByFrontDoorOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listByFrontDoor operation. */\nexport type FrontendEndpointsListByFrontDoorResponse = FrontendEndpointsListResult;\n\n/** Optional parameters. */\nexport interface FrontendEndpointsGetOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the get operation. */\nexport type FrontendEndpointsGetResponse = FrontendEndpoint;\n\n/** Optional parameters. */\nexport interface FrontendEndpointsEnableHttpsOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface FrontendEndpointsDisableHttpsOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface FrontendEndpointsListByFrontDoorNextOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listByFrontDoorNext operation. */\nexport type FrontendEndpointsListByFrontDoorNextResponse = FrontendEndpointsListResult;\n\n/** Optional parameters. */\nexport interface EndpointsPurgeContentOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface RulesEnginesListByFrontDoorOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listByFrontDoor operation. */\nexport type RulesEnginesListByFrontDoorResponse = RulesEngineListResult;\n\n/** Optional parameters. */\nexport interface RulesEnginesGetOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the get operation. */\nexport type RulesEnginesGetResponse = RulesEngine;\n\n/** Optional parameters. */\nexport interface RulesEnginesCreateOrUpdateOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the createOrUpdate operation. */\nexport type RulesEnginesCreateOrUpdateResponse = RulesEngine;\n\n/** Optional parameters. */\nexport interface RulesEnginesDeleteOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface RulesEnginesListByFrontDoorNextOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listByFrontDoorNext operation. */\nexport type RulesEnginesListByFrontDoorNextResponse = RulesEngineListResult;\n\n/** Optional parameters. */\nexport interface NetworkExperimentProfilesListOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the list operation. */\nexport type NetworkExperimentProfilesListResponse = ProfileList;\n\n/** Optional parameters. */\nexport interface NetworkExperimentProfilesListByResourceGroupOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listByResourceGroup operation. */\nexport type NetworkExperimentProfilesListByResourceGroupResponse = ProfileList;\n\n/** Optional parameters. */\nexport interface NetworkExperimentProfilesGetOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the get operation. */\nexport type NetworkExperimentProfilesGetResponse = Profile;\n\n/** Optional parameters. */\nexport interface NetworkExperimentProfilesCreateOrUpdateOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the createOrUpdate operation. */\nexport type NetworkExperimentProfilesCreateOrUpdateResponse = Profile;\n\n/** Optional parameters. */\nexport interface NetworkExperimentProfilesUpdateOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the update operation. */\nexport type NetworkExperimentProfilesUpdateResponse = Profile;\n\n/** Optional parameters. */\nexport interface NetworkExperimentProfilesDeleteOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface NetworkExperimentProfilesListNextOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listNext operation. */\nexport type NetworkExperimentProfilesListNextResponse = ProfileList;\n\n/** Optional parameters. */\nexport interface NetworkExperimentProfilesListByResourceGroupNextOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listByResourceGroupNext operation. */\nexport type NetworkExperimentProfilesListByResourceGroupNextResponse = ProfileList;\n\n/** Optional parameters. */\nexport interface PreconfiguredEndpointsListOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the list operation. */\nexport type PreconfiguredEndpointsListResponse = PreconfiguredEndpointList;\n\n/** Optional parameters. */\nexport interface PreconfiguredEndpointsListNextOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listNext operation. */\nexport type PreconfiguredEndpointsListNextResponse = PreconfiguredEndpointList;\n\n/** Optional parameters. */\nexport interface ExperimentsListByProfileOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listByProfile operation. */\nexport type ExperimentsListByProfileResponse = ExperimentList;\n\n/** Optional parameters. */\nexport interface ExperimentsGetOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the get operation. */\nexport type ExperimentsGetResponse = Experiment;\n\n/** Optional parameters. */\nexport interface ExperimentsCreateOrUpdateOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the createOrUpdate operation. */\nexport type ExperimentsCreateOrUpdateResponse = Experiment;\n\n/** Optional parameters. */\nexport interface ExperimentsUpdateOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the update operation. */\nexport type ExperimentsUpdateResponse = Experiment;\n\n/** Optional parameters. */\nexport interface ExperimentsDeleteOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface ExperimentsListByProfileNextOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listByProfileNext operation. */\nexport type ExperimentsListByProfileNextResponse = ExperimentList;\n\n/** Optional parameters. */\nexport interface ReportsGetLatencyScorecardsOptionalParams\n extends coreClient.OperationOptions {\n /** The end DateTime of the Latency Scorecard in UTC */\n endDateTimeUTC?: string;\n /** The country associated with the Latency Scorecard. Values are country ISO codes as specified here- https://www.iso.org/iso-3166-country-codes.html */\n country?: string;\n}\n\n/** Contains response data for the getLatencyScorecards operation. */\nexport type ReportsGetLatencyScorecardsResponse = LatencyScorecard;\n\n/** Optional parameters. */\nexport interface ReportsGetTimeseriesOptionalParams\n extends coreClient.OperationOptions {\n /** The country associated with the Timeseries. Values are country ISO codes as specified here- https://www.iso.org/iso-3166-country-codes.html */\n country?: string;\n /** The specific endpoint */\n endpoint?: string;\n}\n\n/** Contains response data for the getTimeseries operation. */\nexport type ReportsGetTimeseriesResponse = Timeseries;\n\n/** Optional parameters. */\nexport interface FrontDoorManagementClientOptionalParams\n extends coreClient.ServiceClientOptions {\n /** server parameter */\n $host?: string;\n /** Overrides client endpoint. */\n endpoint?: string;\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport * as coreClient from \"@azure/core-client\";\n\nexport const WebApplicationFirewallPolicyList: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"WebApplicationFirewallPolicyList\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"WebApplicationFirewallPolicy\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const PolicySettings: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PolicySettings\",\n modelProperties: {\n enabledState: {\n serializedName: \"enabledState\",\n type: {\n name: \"String\"\n }\n },\n mode: {\n serializedName: \"mode\",\n type: {\n name: \"String\"\n }\n },\n redirectUrl: {\n serializedName: \"redirectUrl\",\n type: {\n name: \"String\"\n }\n },\n customBlockResponseStatusCode: {\n serializedName: \"customBlockResponseStatusCode\",\n type: {\n name: \"Number\"\n }\n },\n customBlockResponseBody: {\n constraints: {\n Pattern: new RegExp(\n \"^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{4})$\"\n )\n },\n serializedName: \"customBlockResponseBody\",\n type: {\n name: \"String\"\n }\n },\n requestBodyCheck: {\n serializedName: \"requestBodyCheck\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const CustomRuleList: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"CustomRuleList\",\n modelProperties: {\n rules: {\n serializedName: \"rules\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"CustomRule\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const CustomRule: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"CustomRule\",\n modelProperties: {\n name: {\n constraints: {\n MaxLength: 128\n },\n serializedName: \"name\",\n type: {\n name: \"String\"\n }\n },\n priority: {\n serializedName: \"priority\",\n required: true,\n type: {\n name: \"Number\"\n }\n },\n enabledState: {\n serializedName: \"enabledState\",\n type: {\n name: \"String\"\n }\n },\n ruleType: {\n serializedName: \"ruleType\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n rateLimitDurationInMinutes: {\n constraints: {\n InclusiveMaximum: 5,\n InclusiveMinimum: 0\n },\n serializedName: \"rateLimitDurationInMinutes\",\n type: {\n name: \"Number\"\n }\n },\n rateLimitThreshold: {\n constraints: {\n InclusiveMinimum: 0\n },\n serializedName: \"rateLimitThreshold\",\n type: {\n name: \"Number\"\n }\n },\n matchConditions: {\n serializedName: \"matchConditions\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"MatchCondition\"\n }\n }\n }\n },\n action: {\n serializedName: \"action\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const MatchCondition: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"MatchCondition\",\n modelProperties: {\n matchVariable: {\n serializedName: \"matchVariable\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n selector: {\n serializedName: \"selector\",\n type: {\n name: \"String\"\n }\n },\n operator: {\n serializedName: \"operator\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n negateCondition: {\n serializedName: \"negateCondition\",\n type: {\n name: \"Boolean\"\n }\n },\n matchValue: {\n serializedName: \"matchValue\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n },\n transforms: {\n serializedName: \"transforms\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const ManagedRuleSetList: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleSetList\",\n modelProperties: {\n managedRuleSets: {\n serializedName: \"managedRuleSets\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleSet\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const ManagedRuleSet: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleSet\",\n modelProperties: {\n ruleSetType: {\n serializedName: \"ruleSetType\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n ruleSetVersion: {\n serializedName: \"ruleSetVersion\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n ruleSetAction: {\n serializedName: \"ruleSetAction\",\n type: {\n name: \"String\"\n }\n },\n exclusions: {\n serializedName: \"exclusions\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleExclusion\"\n }\n }\n }\n },\n ruleGroupOverrides: {\n serializedName: \"ruleGroupOverrides\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleGroupOverride\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const ManagedRuleExclusion: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleExclusion\",\n modelProperties: {\n matchVariable: {\n serializedName: \"matchVariable\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n selectorMatchOperator: {\n serializedName: \"selectorMatchOperator\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n selector: {\n serializedName: \"selector\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ManagedRuleGroupOverride: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleGroupOverride\",\n modelProperties: {\n ruleGroupName: {\n serializedName: \"ruleGroupName\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n exclusions: {\n serializedName: \"exclusions\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleExclusion\"\n }\n }\n }\n },\n rules: {\n serializedName: \"rules\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleOverride\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const ManagedRuleOverride: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleOverride\",\n modelProperties: {\n ruleId: {\n serializedName: \"ruleId\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n enabledState: {\n serializedName: \"enabledState\",\n type: {\n name: \"String\"\n }\n },\n action: {\n serializedName: \"action\",\n type: {\n name: \"String\"\n }\n },\n exclusions: {\n serializedName: \"exclusions\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleExclusion\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const FrontendEndpointLink: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"FrontendEndpointLink\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const RoutingRuleLink: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"RoutingRuleLink\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const SecurityPolicyLink: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SecurityPolicyLink\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const Sku: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Sku\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const Resource: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Resource\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n name: {\n serializedName: \"name\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n location: {\n serializedName: \"location\",\n type: {\n name: \"String\"\n }\n },\n tags: {\n serializedName: \"tags\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n }\n }\n }\n};\n\nexport const ErrorResponse: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ErrorResponse\",\n modelProperties: {\n code: {\n serializedName: \"code\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n message: {\n serializedName: \"message\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const DefaultErrorResponse: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DefaultErrorResponse\",\n modelProperties: {\n error: {\n serializedName: \"error\",\n type: {\n name: \"Composite\",\n className: \"DefaultErrorResponseError\"\n }\n }\n }\n }\n};\n\nexport const DefaultErrorResponseError: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DefaultErrorResponseError\",\n modelProperties: {\n code: {\n serializedName: \"code\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n message: {\n serializedName: \"message\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const TagsObject: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"TagsObject\",\n modelProperties: {\n tags: {\n serializedName: \"tags\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n }\n }\n }\n};\n\nexport const ManagedRuleSetDefinitionList: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleSetDefinitionList\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleSetDefinition\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ManagedRuleGroupDefinition: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleGroupDefinition\",\n modelProperties: {\n ruleGroupName: {\n serializedName: \"ruleGroupName\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n description: {\n serializedName: \"description\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n rules: {\n serializedName: \"rules\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleDefinition\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const ManagedRuleDefinition: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleDefinition\",\n modelProperties: {\n ruleId: {\n serializedName: \"ruleId\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n defaultState: {\n serializedName: \"defaultState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n defaultAction: {\n serializedName: \"defaultAction\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n description: {\n serializedName: \"description\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const CheckNameAvailabilityInput: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"CheckNameAvailabilityInput\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n required: true,\n type: {\n name: \"Enum\",\n allowedValues: [\n \"Microsoft.Network/frontDoors\",\n \"Microsoft.Network/frontDoors/frontendEndpoints\"\n ]\n }\n }\n }\n }\n};\n\nexport const CheckNameAvailabilityOutput: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"CheckNameAvailabilityOutput\",\n modelProperties: {\n nameAvailability: {\n serializedName: \"nameAvailability\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n reason: {\n serializedName: \"reason\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n message: {\n serializedName: \"message\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const FrontDoorListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"FrontDoorListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"FrontDoor\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const RulesEngine: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"RulesEngine\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n id: {\n serializedName: \"id\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n rules: {\n serializedName: \"properties.rules\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"RulesEngineRule\"\n }\n }\n }\n },\n resourceState: {\n serializedName: \"properties.resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const RulesEngineUpdateParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"RulesEngineUpdateParameters\",\n modelProperties: {\n rules: {\n serializedName: \"rules\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"RulesEngineRule\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const RulesEngineRule: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"RulesEngineRule\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n priority: {\n serializedName: \"priority\",\n required: true,\n type: {\n name: \"Number\"\n }\n },\n action: {\n serializedName: \"action\",\n type: {\n name: \"Composite\",\n className: \"RulesEngineAction\"\n }\n },\n matchConditions: {\n serializedName: \"matchConditions\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"RulesEngineMatchCondition\"\n }\n }\n }\n },\n matchProcessingBehavior: {\n serializedName: \"matchProcessingBehavior\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const RulesEngineAction: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"RulesEngineAction\",\n modelProperties: {\n requestHeaderActions: {\n serializedName: \"requestHeaderActions\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"HeaderAction\"\n }\n }\n }\n },\n responseHeaderActions: {\n serializedName: \"responseHeaderActions\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"HeaderAction\"\n }\n }\n }\n },\n routeConfigurationOverride: {\n serializedName: \"routeConfigurationOverride\",\n type: {\n name: \"Composite\",\n className: \"RouteConfiguration\"\n }\n }\n }\n }\n};\n\nexport const HeaderAction: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"HeaderAction\",\n modelProperties: {\n headerActionType: {\n serializedName: \"headerActionType\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n headerName: {\n serializedName: \"headerName\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n value: {\n serializedName: \"value\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const RouteConfiguration: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"RouteConfiguration\",\n uberParent: \"RouteConfiguration\",\n polymorphicDiscriminator: {\n serializedName: \"@odata\\\\.type\",\n clientName: \"odataType\"\n },\n modelProperties: {\n odataType: {\n serializedName: \"@odata\\\\.type\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const RulesEngineMatchCondition: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"RulesEngineMatchCondition\",\n modelProperties: {\n rulesEngineMatchVariable: {\n serializedName: \"rulesEngineMatchVariable\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n selector: {\n serializedName: \"selector\",\n type: {\n name: \"String\"\n }\n },\n rulesEngineOperator: {\n serializedName: \"rulesEngineOperator\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n negateCondition: {\n serializedName: \"negateCondition\",\n type: {\n name: \"Boolean\"\n }\n },\n rulesEngineMatchValue: {\n serializedName: \"rulesEngineMatchValue\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n },\n transforms: {\n serializedName: \"transforms\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const FrontDoorUpdateParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"FrontDoorUpdateParameters\",\n modelProperties: {\n friendlyName: {\n serializedName: \"friendlyName\",\n type: {\n name: \"String\"\n }\n },\n routingRules: {\n serializedName: \"routingRules\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"RoutingRule\"\n }\n }\n }\n },\n loadBalancingSettings: {\n serializedName: \"loadBalancingSettings\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"LoadBalancingSettingsModel\"\n }\n }\n }\n },\n healthProbeSettings: {\n serializedName: \"healthProbeSettings\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"HealthProbeSettingsModel\"\n }\n }\n }\n },\n backendPools: {\n serializedName: \"backendPools\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"BackendPool\"\n }\n }\n }\n },\n frontendEndpoints: {\n serializedName: \"frontendEndpoints\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"FrontendEndpoint\"\n }\n }\n }\n },\n backendPoolsSettings: {\n serializedName: \"backendPoolsSettings\",\n type: {\n name: \"Composite\",\n className: \"BackendPoolsSettings\"\n }\n },\n enabledState: {\n serializedName: \"enabledState\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const RoutingRuleUpdateParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"RoutingRuleUpdateParameters\",\n modelProperties: {\n frontendEndpoints: {\n serializedName: \"frontendEndpoints\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SubResource\"\n }\n }\n }\n },\n acceptedProtocols: {\n serializedName: \"acceptedProtocols\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n },\n patternsToMatch: {\n serializedName: \"patternsToMatch\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n },\n enabledState: {\n serializedName: \"enabledState\",\n type: {\n name: \"String\"\n }\n },\n routeConfiguration: {\n serializedName: \"routeConfiguration\",\n type: {\n name: \"Composite\",\n className: \"RouteConfiguration\"\n }\n },\n rulesEngine: {\n serializedName: \"rulesEngine\",\n type: {\n name: \"Composite\",\n className: \"SubResource\"\n }\n },\n webApplicationFirewallPolicyLink: {\n serializedName: \"webApplicationFirewallPolicyLink\",\n type: {\n name: \"Composite\",\n className:\n \"RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink\"\n }\n }\n }\n }\n};\n\nexport const SubResource: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SubResource\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const LoadBalancingSettingsUpdateParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"LoadBalancingSettingsUpdateParameters\",\n modelProperties: {\n sampleSize: {\n serializedName: \"sampleSize\",\n type: {\n name: \"Number\"\n }\n },\n successfulSamplesRequired: {\n serializedName: \"successfulSamplesRequired\",\n type: {\n name: \"Number\"\n }\n },\n additionalLatencyMilliseconds: {\n serializedName: \"additionalLatencyMilliseconds\",\n type: {\n name: \"Number\"\n }\n }\n }\n }\n};\n\nexport const HealthProbeSettingsUpdateParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"HealthProbeSettingsUpdateParameters\",\n modelProperties: {\n path: {\n serializedName: \"path\",\n type: {\n name: \"String\"\n }\n },\n protocol: {\n serializedName: \"protocol\",\n type: {\n name: \"String\"\n }\n },\n intervalInSeconds: {\n serializedName: \"intervalInSeconds\",\n type: {\n name: \"Number\"\n }\n },\n healthProbeMethod: {\n defaultValue: \"HEAD\",\n serializedName: \"healthProbeMethod\",\n type: {\n name: \"String\"\n }\n },\n enabledState: {\n serializedName: \"enabledState\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const BackendPoolUpdateParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"BackendPoolUpdateParameters\",\n modelProperties: {\n backends: {\n serializedName: \"backends\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"Backend\"\n }\n }\n }\n },\n loadBalancingSettings: {\n serializedName: \"loadBalancingSettings\",\n type: {\n name: \"Composite\",\n className: \"SubResource\"\n }\n },\n healthProbeSettings: {\n serializedName: \"healthProbeSettings\",\n type: {\n name: \"Composite\",\n className: \"SubResource\"\n }\n }\n }\n }\n};\n\nexport const Backend: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Backend\",\n modelProperties: {\n address: {\n serializedName: \"address\",\n type: {\n name: \"String\"\n }\n },\n privateLinkAlias: {\n serializedName: \"privateLinkAlias\",\n type: {\n name: \"String\"\n }\n },\n privateLinkResourceId: {\n serializedName: \"privateLinkResourceId\",\n type: {\n name: \"String\"\n }\n },\n privateLinkLocation: {\n serializedName: \"privateLinkLocation\",\n type: {\n name: \"String\"\n }\n },\n privateEndpointStatus: {\n serializedName: \"privateEndpointStatus\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n privateLinkApprovalMessage: {\n serializedName: \"privateLinkApprovalMessage\",\n type: {\n name: \"String\"\n }\n },\n httpPort: {\n constraints: {\n InclusiveMaximum: 65535,\n InclusiveMinimum: 1\n },\n serializedName: \"httpPort\",\n type: {\n name: \"Number\"\n }\n },\n httpsPort: {\n constraints: {\n InclusiveMaximum: 65535,\n InclusiveMinimum: 1\n },\n serializedName: \"httpsPort\",\n type: {\n name: \"Number\"\n }\n },\n enabledState: {\n serializedName: \"enabledState\",\n type: {\n name: \"String\"\n }\n },\n priority: {\n constraints: {\n InclusiveMaximum: 5,\n InclusiveMinimum: 1\n },\n serializedName: \"priority\",\n type: {\n name: \"Number\"\n }\n },\n weight: {\n constraints: {\n InclusiveMaximum: 1000,\n InclusiveMinimum: 1\n },\n serializedName: \"weight\",\n type: {\n name: \"Number\"\n }\n },\n backendHostHeader: {\n serializedName: \"backendHostHeader\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const CustomHttpsConfiguration: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"CustomHttpsConfiguration\",\n modelProperties: {\n certificateSource: {\n serializedName: \"certificateSource\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n protocolType: {\n serializedName: \"protocolType\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n minimumTlsVersion: {\n serializedName: \"minimumTlsVersion\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n certificateType: {\n serializedName: \"frontDoorCertificateSourceParameters.certificateType\",\n type: {\n name: \"String\"\n }\n },\n vault: {\n serializedName: \"keyVaultCertificateSourceParameters.vault\",\n type: {\n name: \"Composite\",\n className: \"KeyVaultCertificateSourceParametersVault\"\n }\n },\n secretName: {\n serializedName: \"keyVaultCertificateSourceParameters.secretName\",\n type: {\n name: \"String\"\n }\n },\n secretVersion: {\n serializedName: \"keyVaultCertificateSourceParameters.secretVersion\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const KeyVaultCertificateSourceParametersVault: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"KeyVaultCertificateSourceParametersVault\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const FrontendEndpointUpdateParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"FrontendEndpointUpdateParameters\",\n modelProperties: {\n hostName: {\n serializedName: \"hostName\",\n type: {\n name: \"String\"\n }\n },\n sessionAffinityEnabledState: {\n serializedName: \"sessionAffinityEnabledState\",\n type: {\n name: \"String\"\n }\n },\n sessionAffinityTtlSeconds: {\n serializedName: \"sessionAffinityTtlSeconds\",\n type: {\n name: \"Number\"\n }\n },\n webApplicationFirewallPolicyLink: {\n serializedName: \"webApplicationFirewallPolicyLink\",\n type: {\n name: \"Composite\",\n className:\n \"FrontendEndpointUpdateParametersWebApplicationFirewallPolicyLink\"\n }\n }\n }\n }\n};\n\nexport const FrontendEndpointUpdateParametersWebApplicationFirewallPolicyLink: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className:\n \"FrontendEndpointUpdateParametersWebApplicationFirewallPolicyLink\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const BackendPoolsSettings: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"BackendPoolsSettings\",\n modelProperties: {\n enforceCertificateNameCheck: {\n defaultValue: \"Enabled\",\n serializedName: \"enforceCertificateNameCheck\",\n type: {\n name: \"String\"\n }\n },\n sendRecvTimeoutSeconds: {\n constraints: {\n InclusiveMinimum: 16\n },\n serializedName: \"sendRecvTimeoutSeconds\",\n type: {\n name: \"Number\"\n }\n }\n }\n }\n};\n\nexport const FrontendEndpointsListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"FrontendEndpointsListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"FrontendEndpoint\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const PurgeParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PurgeParameters\",\n modelProperties: {\n contentPaths: {\n serializedName: \"contentPaths\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const ValidateCustomDomainInput: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ValidateCustomDomainInput\",\n modelProperties: {\n hostName: {\n serializedName: \"hostName\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ValidateCustomDomainOutput: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ValidateCustomDomainOutput\",\n modelProperties: {\n customDomainValidated: {\n serializedName: \"customDomainValidated\",\n readOnly: true,\n type: {\n name: \"Boolean\"\n }\n },\n reason: {\n serializedName: \"reason\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n message: {\n serializedName: \"message\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const RulesEngineListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"RulesEngineListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"RulesEngine\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ProfileList: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ProfileList\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"Profile\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ProfileUpdateModel: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ProfileUpdateModel\",\n modelProperties: {\n tags: {\n serializedName: \"tags\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n },\n enabledState: {\n serializedName: \"properties.enabledState\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const PreconfiguredEndpointList: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PreconfiguredEndpointList\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"PreconfiguredEndpoint\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ExperimentList: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ExperimentList\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"Experiment\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const Endpoint: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Endpoint\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n type: {\n name: \"String\"\n }\n },\n endpoint: {\n serializedName: \"endpoint\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ExperimentUpdateModel: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ExperimentUpdateModel\",\n modelProperties: {\n tags: {\n serializedName: \"tags\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n },\n description: {\n serializedName: \"properties.description\",\n type: {\n name: \"String\"\n }\n },\n enabledState: {\n serializedName: \"properties.enabledState\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const LatencyMetric: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"LatencyMetric\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n endDateTimeUTC: {\n serializedName: \"endDateTimeUTC\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n aValue: {\n serializedName: \"aValue\",\n readOnly: true,\n type: {\n name: \"Number\"\n }\n },\n bValue: {\n serializedName: \"bValue\",\n readOnly: true,\n type: {\n name: \"Number\"\n }\n },\n delta: {\n serializedName: \"delta\",\n readOnly: true,\n type: {\n name: \"Number\"\n }\n },\n deltaPercent: {\n serializedName: \"deltaPercent\",\n readOnly: true,\n type: {\n name: \"Number\"\n }\n },\n aCLower95CI: {\n serializedName: \"aCLower95CI\",\n readOnly: true,\n type: {\n name: \"Number\"\n }\n },\n aHUpper95CI: {\n serializedName: \"aHUpper95CI\",\n readOnly: true,\n type: {\n name: \"Number\"\n }\n },\n bCLower95CI: {\n serializedName: \"bCLower95CI\",\n readOnly: true,\n type: {\n name: \"Number\"\n }\n },\n bUpper95CI: {\n serializedName: \"bUpper95CI\",\n readOnly: true,\n type: {\n name: \"Number\"\n }\n }\n }\n }\n};\n\nexport const TimeseriesDataPoint: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"TimeseriesDataPoint\",\n modelProperties: {\n dateTimeUTC: {\n serializedName: \"dateTimeUTC\",\n type: {\n name: \"String\"\n }\n },\n value: {\n serializedName: \"value\",\n type: {\n name: \"Number\"\n }\n }\n }\n }\n};\n\nexport const ErrorDetails: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ErrorDetails\",\n modelProperties: {\n code: {\n serializedName: \"code\",\n type: {\n name: \"String\"\n }\n },\n target: {\n serializedName: \"target\",\n type: {\n name: \"String\"\n }\n },\n message: {\n serializedName: \"message\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ErrorModel: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ErrorModel\",\n modelProperties: {\n code: {\n serializedName: \"code\",\n type: {\n name: \"String\"\n }\n },\n message: {\n serializedName: \"message\",\n type: {\n name: \"String\"\n }\n },\n target: {\n serializedName: \"target\",\n type: {\n name: \"String\"\n }\n },\n details: {\n serializedName: \"details\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ErrorDetails\"\n }\n }\n }\n },\n innerError: {\n serializedName: \"innerError\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const AzureAsyncOperationResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"AzureAsyncOperationResult\",\n modelProperties: {\n status: {\n serializedName: \"status\",\n type: {\n name: \"String\"\n }\n },\n error: {\n serializedName: \"error\",\n type: {\n name: \"Composite\",\n className: \"ErrorModel\"\n }\n }\n }\n }\n};\n\nexport const RoutingRuleListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"RoutingRuleListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"RoutingRule\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const CacheConfiguration: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"CacheConfiguration\",\n modelProperties: {\n queryParameterStripDirective: {\n serializedName: \"queryParameterStripDirective\",\n type: {\n name: \"String\"\n }\n },\n queryParameters: {\n serializedName: \"queryParameters\",\n type: {\n name: \"String\"\n }\n },\n dynamicCompression: {\n serializedName: \"dynamicCompression\",\n type: {\n name: \"String\"\n }\n },\n cacheDuration: {\n serializedName: \"cacheDuration\",\n type: {\n name: \"TimeSpan\"\n }\n }\n }\n }\n};\n\nexport const LoadBalancingSettingsListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"LoadBalancingSettingsListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"LoadBalancingSettingsModel\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const HealthProbeSettingsListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"HealthProbeSettingsListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"HealthProbeSettingsModel\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const BackendPoolListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"BackendPoolListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"BackendPool\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const WebApplicationFirewallPolicy: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"WebApplicationFirewallPolicy\",\n modelProperties: {\n ...Resource.type.modelProperties,\n etag: {\n serializedName: \"etag\",\n type: {\n name: \"String\"\n }\n },\n sku: {\n serializedName: \"sku\",\n type: {\n name: \"Composite\",\n className: \"Sku\"\n }\n },\n policySettings: {\n serializedName: \"properties.policySettings\",\n type: {\n name: \"Composite\",\n className: \"PolicySettings\"\n }\n },\n customRules: {\n serializedName: \"properties.customRules\",\n type: {\n name: \"Composite\",\n className: \"CustomRuleList\"\n }\n },\n managedRules: {\n serializedName: \"properties.managedRules\",\n type: {\n name: \"Composite\",\n className: \"ManagedRuleSetList\"\n }\n },\n frontendEndpointLinks: {\n serializedName: \"properties.frontendEndpointLinks\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"FrontendEndpointLink\"\n }\n }\n }\n },\n routingRuleLinks: {\n serializedName: \"properties.routingRuleLinks\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"RoutingRuleLink\"\n }\n }\n }\n },\n securityPolicyLinks: {\n serializedName: \"properties.securityPolicyLinks\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SecurityPolicyLink\"\n }\n }\n }\n },\n provisioningState: {\n serializedName: \"properties.provisioningState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n resourceState: {\n serializedName: \"properties.resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ManagedRuleSetDefinition: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleSetDefinition\",\n modelProperties: {\n ...Resource.type.modelProperties,\n provisioningState: {\n serializedName: \"properties.provisioningState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n ruleSetId: {\n serializedName: \"properties.ruleSetId\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n ruleSetType: {\n serializedName: \"properties.ruleSetType\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n ruleSetVersion: {\n serializedName: \"properties.ruleSetVersion\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n ruleGroups: {\n serializedName: \"properties.ruleGroups\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleGroupDefinition\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const FrontDoor: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"FrontDoor\",\n modelProperties: {\n ...Resource.type.modelProperties,\n friendlyName: {\n serializedName: \"properties.friendlyName\",\n type: {\n name: \"String\"\n }\n },\n routingRules: {\n serializedName: \"properties.routingRules\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"RoutingRule\"\n }\n }\n }\n },\n loadBalancingSettings: {\n serializedName: \"properties.loadBalancingSettings\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"LoadBalancingSettingsModel\"\n }\n }\n }\n },\n healthProbeSettings: {\n serializedName: \"properties.healthProbeSettings\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"HealthProbeSettingsModel\"\n }\n }\n }\n },\n backendPools: {\n serializedName: \"properties.backendPools\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"BackendPool\"\n }\n }\n }\n },\n frontendEndpoints: {\n serializedName: \"properties.frontendEndpoints\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"FrontendEndpoint\"\n }\n }\n }\n },\n backendPoolsSettings: {\n serializedName: \"properties.backendPoolsSettings\",\n type: {\n name: \"Composite\",\n className: \"BackendPoolsSettings\"\n }\n },\n enabledState: {\n serializedName: \"properties.enabledState\",\n type: {\n name: \"String\"\n }\n },\n resourceState: {\n serializedName: \"properties.resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n provisioningState: {\n serializedName: \"properties.provisioningState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n cname: {\n serializedName: \"properties.cname\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n frontdoorId: {\n serializedName: \"properties.frontdoorId\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n rulesEngines: {\n serializedName: \"properties.rulesEngines\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"RulesEngine\"\n }\n }\n }\n },\n extendedProperties: {\n serializedName: \"properties.extendedProperties\",\n readOnly: true,\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n }\n }\n }\n};\n\nexport const Profile: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Profile\",\n modelProperties: {\n ...Resource.type.modelProperties,\n etag: {\n serializedName: \"etag\",\n type: {\n name: \"String\"\n }\n },\n resourceState: {\n serializedName: \"properties.resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n enabledState: {\n serializedName: \"properties.enabledState\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const PreconfiguredEndpoint: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PreconfiguredEndpoint\",\n modelProperties: {\n ...Resource.type.modelProperties,\n description: {\n serializedName: \"properties.description\",\n type: {\n name: \"String\"\n }\n },\n endpoint: {\n serializedName: \"properties.endpoint\",\n type: {\n name: \"String\"\n }\n },\n endpointType: {\n serializedName: \"properties.endpointType\",\n type: {\n name: \"String\"\n }\n },\n backend: {\n serializedName: \"properties.backend\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const Experiment: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Experiment\",\n modelProperties: {\n ...Resource.type.modelProperties,\n description: {\n serializedName: \"properties.description\",\n type: {\n name: \"String\"\n }\n },\n endpointA: {\n serializedName: \"properties.endpointA\",\n type: {\n name: \"Composite\",\n className: \"Endpoint\"\n }\n },\n endpointB: {\n serializedName: \"properties.endpointB\",\n type: {\n name: \"Composite\",\n className: \"Endpoint\"\n }\n },\n enabledState: {\n serializedName: \"properties.enabledState\",\n type: {\n name: \"String\"\n }\n },\n resourceState: {\n serializedName: \"properties.resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n status: {\n serializedName: \"properties.status\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n scriptFileUri: {\n serializedName: \"properties.scriptFileUri\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const LatencyScorecard: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"LatencyScorecard\",\n modelProperties: {\n ...Resource.type.modelProperties,\n idPropertiesId: {\n serializedName: \"properties.id\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n namePropertiesName: {\n serializedName: \"properties.name\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n description: {\n serializedName: \"properties.description\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n endpointA: {\n serializedName: \"properties.endpointA\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n endpointB: {\n serializedName: \"properties.endpointB\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n startDateTimeUTC: {\n serializedName: \"properties.startDateTimeUTC\",\n readOnly: true,\n type: {\n name: \"DateTime\"\n }\n },\n endDateTimeUTC: {\n serializedName: \"properties.endDateTimeUTC\",\n readOnly: true,\n type: {\n name: \"DateTime\"\n }\n },\n country: {\n serializedName: \"properties.country\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n latencyMetrics: {\n serializedName: \"properties.latencyMetrics\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"LatencyMetric\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const Timeseries: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Timeseries\",\n modelProperties: {\n ...Resource.type.modelProperties,\n endpoint: {\n serializedName: \"properties.endpoint\",\n type: {\n name: \"String\"\n }\n },\n startDateTimeUTC: {\n serializedName: \"properties.startDateTimeUTC\",\n type: {\n name: \"String\"\n }\n },\n endDateTimeUTC: {\n serializedName: \"properties.endDateTimeUTC\",\n type: {\n name: \"String\"\n }\n },\n aggregationInterval: {\n serializedName: \"properties.aggregationInterval\",\n type: {\n name: \"String\"\n }\n },\n timeseriesType: {\n serializedName: \"properties.timeseriesType\",\n type: {\n name: \"String\"\n }\n },\n country: {\n serializedName: \"properties.country\",\n type: {\n name: \"String\"\n }\n },\n timeseriesData: {\n serializedName: \"properties.timeseriesData\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"TimeseriesDataPoint\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const RulesEngineProperties: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"RulesEngineProperties\",\n modelProperties: {\n ...RulesEngineUpdateParameters.type.modelProperties,\n resourceState: {\n serializedName: \"resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ForwardingConfiguration: coreClient.CompositeMapper = {\n serializedName:\n \"#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration\",\n type: {\n name: \"Composite\",\n className: \"ForwardingConfiguration\",\n uberParent: \"RouteConfiguration\",\n polymorphicDiscriminator: RouteConfiguration.type.polymorphicDiscriminator,\n modelProperties: {\n ...RouteConfiguration.type.modelProperties,\n customForwardingPath: {\n serializedName: \"customForwardingPath\",\n type: {\n name: \"String\"\n }\n },\n forwardingProtocol: {\n serializedName: \"forwardingProtocol\",\n type: {\n name: \"String\"\n }\n },\n cacheConfiguration: {\n serializedName: \"cacheConfiguration\",\n type: {\n name: \"Composite\",\n className: \"CacheConfiguration\"\n }\n },\n backendPool: {\n serializedName: \"backendPool\",\n type: {\n name: \"Composite\",\n className: \"SubResource\"\n }\n }\n }\n }\n};\n\nexport const RedirectConfiguration: coreClient.CompositeMapper = {\n serializedName:\n \"#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration\",\n type: {\n name: \"Composite\",\n className: \"RedirectConfiguration\",\n uberParent: \"RouteConfiguration\",\n polymorphicDiscriminator: RouteConfiguration.type.polymorphicDiscriminator,\n modelProperties: {\n ...RouteConfiguration.type.modelProperties,\n redirectType: {\n serializedName: \"redirectType\",\n type: {\n name: \"String\"\n }\n },\n redirectProtocol: {\n serializedName: \"redirectProtocol\",\n type: {\n name: \"String\"\n }\n },\n customHost: {\n serializedName: \"customHost\",\n type: {\n name: \"String\"\n }\n },\n customPath: {\n serializedName: \"customPath\",\n type: {\n name: \"String\"\n }\n },\n customFragment: {\n serializedName: \"customFragment\",\n type: {\n name: \"String\"\n }\n },\n customQueryString: {\n serializedName: \"customQueryString\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const FrontDoorProperties: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"FrontDoorProperties\",\n modelProperties: {\n ...FrontDoorUpdateParameters.type.modelProperties,\n resourceState: {\n serializedName: \"resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n provisioningState: {\n serializedName: \"provisioningState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n cname: {\n serializedName: \"cname\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n frontdoorId: {\n serializedName: \"frontdoorId\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n rulesEngines: {\n serializedName: \"rulesEngines\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"RulesEngine\"\n }\n }\n }\n },\n extendedProperties: {\n serializedName: \"extendedProperties\",\n readOnly: true,\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n }\n }\n }\n};\n\nexport const RoutingRuleProperties: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"RoutingRuleProperties\",\n modelProperties: {\n ...RoutingRuleUpdateParameters.type.modelProperties,\n resourceState: {\n serializedName: \"resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const RoutingRule: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"RoutingRule\",\n modelProperties: {\n ...SubResource.type.modelProperties,\n name: {\n serializedName: \"name\",\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n frontendEndpoints: {\n serializedName: \"properties.frontendEndpoints\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SubResource\"\n }\n }\n }\n },\n acceptedProtocols: {\n serializedName: \"properties.acceptedProtocols\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n },\n patternsToMatch: {\n serializedName: \"properties.patternsToMatch\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n },\n enabledState: {\n serializedName: \"properties.enabledState\",\n type: {\n name: \"String\"\n }\n },\n routeConfiguration: {\n serializedName: \"properties.routeConfiguration\",\n type: {\n name: \"Composite\",\n className: \"RouteConfiguration\"\n }\n },\n rulesEngine: {\n serializedName: \"properties.rulesEngine\",\n type: {\n name: \"Composite\",\n className: \"SubResource\"\n }\n },\n webApplicationFirewallPolicyLink: {\n serializedName: \"properties.webApplicationFirewallPolicyLink\",\n type: {\n name: \"Composite\",\n className:\n \"RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink\"\n }\n },\n resourceState: {\n serializedName: \"properties.resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const LoadBalancingSettingsModel: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"LoadBalancingSettingsModel\",\n modelProperties: {\n ...SubResource.type.modelProperties,\n name: {\n serializedName: \"name\",\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n sampleSize: {\n serializedName: \"properties.sampleSize\",\n type: {\n name: \"Number\"\n }\n },\n successfulSamplesRequired: {\n serializedName: \"properties.successfulSamplesRequired\",\n type: {\n name: \"Number\"\n }\n },\n additionalLatencyMilliseconds: {\n serializedName: \"properties.additionalLatencyMilliseconds\",\n type: {\n name: \"Number\"\n }\n },\n resourceState: {\n serializedName: \"properties.resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const HealthProbeSettingsModel: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"HealthProbeSettingsModel\",\n modelProperties: {\n ...SubResource.type.modelProperties,\n name: {\n serializedName: \"name\",\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n path: {\n serializedName: \"properties.path\",\n type: {\n name: \"String\"\n }\n },\n protocol: {\n serializedName: \"properties.protocol\",\n type: {\n name: \"String\"\n }\n },\n intervalInSeconds: {\n serializedName: \"properties.intervalInSeconds\",\n type: {\n name: \"Number\"\n }\n },\n healthProbeMethod: {\n defaultValue: \"HEAD\",\n serializedName: \"properties.healthProbeMethod\",\n type: {\n name: \"String\"\n }\n },\n enabledState: {\n serializedName: \"properties.enabledState\",\n type: {\n name: \"String\"\n }\n },\n resourceState: {\n serializedName: \"properties.resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const BackendPool: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"BackendPool\",\n modelProperties: {\n ...SubResource.type.modelProperties,\n name: {\n serializedName: \"name\",\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n backends: {\n serializedName: \"properties.backends\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"Backend\"\n }\n }\n }\n },\n loadBalancingSettings: {\n serializedName: \"properties.loadBalancingSettings\",\n type: {\n name: \"Composite\",\n className: \"SubResource\"\n }\n },\n healthProbeSettings: {\n serializedName: \"properties.healthProbeSettings\",\n type: {\n name: \"Composite\",\n className: \"SubResource\"\n }\n },\n resourceState: {\n serializedName: \"properties.resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const FrontendEndpoint: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"FrontendEndpoint\",\n modelProperties: {\n ...SubResource.type.modelProperties,\n name: {\n serializedName: \"name\",\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n hostName: {\n serializedName: \"properties.hostName\",\n type: {\n name: \"String\"\n }\n },\n sessionAffinityEnabledState: {\n serializedName: \"properties.sessionAffinityEnabledState\",\n type: {\n name: \"String\"\n }\n },\n sessionAffinityTtlSeconds: {\n serializedName: \"properties.sessionAffinityTtlSeconds\",\n type: {\n name: \"Number\"\n }\n },\n webApplicationFirewallPolicyLink: {\n serializedName: \"properties.webApplicationFirewallPolicyLink\",\n type: {\n name: \"Composite\",\n className:\n \"FrontendEndpointUpdateParametersWebApplicationFirewallPolicyLink\"\n }\n },\n resourceState: {\n serializedName: \"properties.resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n customHttpsProvisioningState: {\n serializedName: \"properties.customHttpsProvisioningState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n customHttpsProvisioningSubstate: {\n serializedName: \"properties.customHttpsProvisioningSubstate\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n customHttpsConfiguration: {\n serializedName: \"properties.customHttpsConfiguration\",\n type: {\n name: \"Composite\",\n className: \"CustomHttpsConfiguration\"\n }\n }\n }\n }\n};\n\nexport const LoadBalancingSettingsProperties: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"LoadBalancingSettingsProperties\",\n modelProperties: {\n ...LoadBalancingSettingsUpdateParameters.type.modelProperties,\n resourceState: {\n serializedName: \"resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const HealthProbeSettingsProperties: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"HealthProbeSettingsProperties\",\n modelProperties: {\n ...HealthProbeSettingsUpdateParameters.type.modelProperties,\n resourceState: {\n serializedName: \"resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const BackendPoolProperties: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"BackendPoolProperties\",\n modelProperties: {\n ...BackendPoolUpdateParameters.type.modelProperties,\n resourceState: {\n serializedName: \"resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const FrontendEndpointProperties: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"FrontendEndpointProperties\",\n modelProperties: {\n ...FrontendEndpointUpdateParameters.type.modelProperties,\n resourceState: {\n serializedName: \"resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n customHttpsProvisioningState: {\n serializedName: \"customHttpsProvisioningState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n customHttpsProvisioningSubstate: {\n serializedName: \"customHttpsProvisioningSubstate\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n customHttpsConfiguration: {\n serializedName: \"customHttpsConfiguration\",\n type: {\n name: \"Composite\",\n className: \"CustomHttpsConfiguration\"\n }\n }\n }\n }\n};\n\nexport let discriminators = {\n RouteConfiguration: RouteConfiguration,\n \"RouteConfiguration.#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration\": ForwardingConfiguration,\n \"RouteConfiguration.#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration\": RedirectConfiguration\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport {\n OperationParameter,\n OperationURLParameter,\n OperationQueryParameter\n} from \"@azure/core-client\";\nimport {\n WebApplicationFirewallPolicy as WebApplicationFirewallPolicyMapper,\n TagsObject as TagsObjectMapper,\n CheckNameAvailabilityInput as CheckNameAvailabilityInputMapper,\n FrontDoor as FrontDoorMapper,\n ValidateCustomDomainInput as ValidateCustomDomainInputMapper,\n CustomHttpsConfiguration as CustomHttpsConfigurationMapper,\n PurgeParameters as PurgeParametersMapper,\n RulesEngine as RulesEngineMapper,\n Profile as ProfileMapper,\n ProfileUpdateModel as ProfileUpdateModelMapper,\n Experiment as ExperimentMapper,\n ExperimentUpdateModel as ExperimentUpdateModelMapper\n} from \"../models/mappers\";\n\nexport const accept: OperationParameter = {\n parameterPath: \"accept\",\n mapper: {\n defaultValue: \"application/json\",\n isConstant: true,\n serializedName: \"Accept\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const $host: OperationURLParameter = {\n parameterPath: \"$host\",\n mapper: {\n serializedName: \"$host\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n skipEncoding: true\n};\n\nexport const resourceGroupName: OperationURLParameter = {\n parameterPath: \"resourceGroupName\",\n mapper: {\n constraints: {\n Pattern: new RegExp(\"^[a-zA-Z0-9_\\\\-\\\\(\\\\)\\\\.]*[^\\\\.]$\"),\n MaxLength: 80,\n MinLength: 1\n },\n serializedName: \"resourceGroupName\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const subscriptionId: OperationURLParameter = {\n parameterPath: \"subscriptionId\",\n mapper: {\n serializedName: \"subscriptionId\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const apiVersion: OperationQueryParameter = {\n parameterPath: \"apiVersion\",\n mapper: {\n defaultValue: \"2022-05-01\",\n isConstant: true,\n serializedName: \"api-version\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const policyName: OperationURLParameter = {\n parameterPath: \"policyName\",\n mapper: {\n constraints: {\n MaxLength: 128\n },\n serializedName: \"policyName\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const contentType: OperationParameter = {\n parameterPath: [\"options\", \"contentType\"],\n mapper: {\n defaultValue: \"application/json\",\n isConstant: true,\n serializedName: \"Content-Type\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const parameters: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: WebApplicationFirewallPolicyMapper\n};\n\nexport const parameters1: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: TagsObjectMapper\n};\n\nexport const nextLink: OperationURLParameter = {\n parameterPath: \"nextLink\",\n mapper: {\n serializedName: \"nextLink\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n skipEncoding: true\n};\n\nexport const checkFrontDoorNameAvailabilityInput: OperationParameter = {\n parameterPath: \"checkFrontDoorNameAvailabilityInput\",\n mapper: CheckNameAvailabilityInputMapper\n};\n\nexport const apiVersion1: OperationQueryParameter = {\n parameterPath: \"apiVersion\",\n mapper: {\n defaultValue: \"2021-06-01\",\n isConstant: true,\n serializedName: \"api-version\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const frontDoorName: OperationURLParameter = {\n parameterPath: \"frontDoorName\",\n mapper: {\n constraints: {\n Pattern: new RegExp(\"^[a-zA-Z0-9]+([-a-zA-Z0-9]?[a-zA-Z0-9])*$\"),\n MaxLength: 64,\n MinLength: 5\n },\n serializedName: \"frontDoorName\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const frontDoorParameters: OperationParameter = {\n parameterPath: \"frontDoorParameters\",\n mapper: FrontDoorMapper\n};\n\nexport const customDomainProperties: OperationParameter = {\n parameterPath: \"customDomainProperties\",\n mapper: ValidateCustomDomainInputMapper\n};\n\nexport const frontendEndpointName: OperationURLParameter = {\n parameterPath: \"frontendEndpointName\",\n mapper: {\n constraints: {\n Pattern: new RegExp(\"^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$\"),\n MaxLength: 255,\n MinLength: 1\n },\n serializedName: \"frontendEndpointName\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const customHttpsConfiguration: OperationParameter = {\n parameterPath: \"customHttpsConfiguration\",\n mapper: CustomHttpsConfigurationMapper\n};\n\nexport const contentFilePaths: OperationParameter = {\n parameterPath: \"contentFilePaths\",\n mapper: PurgeParametersMapper\n};\n\nexport const rulesEngineName: OperationURLParameter = {\n parameterPath: \"rulesEngineName\",\n mapper: {\n constraints: {\n Pattern: new RegExp(\"^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$\"),\n MaxLength: 90,\n MinLength: 1\n },\n serializedName: \"rulesEngineName\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const rulesEngineParameters: OperationParameter = {\n parameterPath: \"rulesEngineParameters\",\n mapper: RulesEngineMapper\n};\n\nexport const apiVersion2: OperationQueryParameter = {\n parameterPath: \"apiVersion\",\n mapper: {\n defaultValue: \"2019-11-01\",\n isConstant: true,\n serializedName: \"api-version\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const profileName: OperationURLParameter = {\n parameterPath: \"profileName\",\n mapper: {\n constraints: {\n Pattern: new RegExp(\"^[a-zA-Z0-9_\\\\-\\\\(\\\\)\\\\.]*[^\\\\.]$\")\n },\n serializedName: \"profileName\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const parameters2: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: ProfileMapper\n};\n\nexport const parameters3: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: ProfileUpdateModelMapper\n};\n\nexport const experimentName: OperationURLParameter = {\n parameterPath: \"experimentName\",\n mapper: {\n constraints: {\n Pattern: new RegExp(\"^[a-zA-Z0-9_\\\\-\\\\(\\\\)\\\\.]*[^\\\\.]$\")\n },\n serializedName: \"experimentName\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const parameters4: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: ExperimentMapper\n};\n\nexport const parameters5: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: ExperimentUpdateModelMapper\n};\n\nexport const endDateTimeUTC: OperationQueryParameter = {\n parameterPath: [\"options\", \"endDateTimeUTC\"],\n mapper: {\n serializedName: \"endDateTimeUTC\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const country: OperationQueryParameter = {\n parameterPath: [\"options\", \"country\"],\n mapper: {\n serializedName: \"country\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const aggregationInterval: OperationQueryParameter = {\n parameterPath: \"aggregationInterval\",\n mapper: {\n serializedName: \"aggregationInterval\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const startDateTimeUTC: OperationQueryParameter = {\n parameterPath: \"startDateTimeUTC\",\n mapper: {\n serializedName: \"startDateTimeUTC\",\n required: true,\n type: {\n name: \"DateTime\"\n }\n }\n};\n\nexport const endDateTimeUTC1: OperationQueryParameter = {\n parameterPath: \"endDateTimeUTC\",\n mapper: {\n serializedName: \"endDateTimeUTC\",\n required: true,\n type: {\n name: \"DateTime\"\n }\n }\n};\n\nexport const aggregationInterval1: OperationQueryParameter = {\n parameterPath: \"aggregationInterval\",\n mapper: {\n serializedName: \"aggregationInterval\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const timeseriesType: OperationQueryParameter = {\n parameterPath: \"timeseriesType\",\n mapper: {\n serializedName: \"timeseriesType\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const endpoint: OperationQueryParameter = {\n parameterPath: [\"options\", \"endpoint\"],\n mapper: {\n serializedName: \"endpoint\",\n type: {\n name: \"String\"\n }\n }\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\n// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { AbortSignalLike } from \"@azure/abort-controller\";\nimport { LongRunningOperation, LroResponse } from \"@azure/core-lro\";\n\nexport function createLroSpec<T>(inputs: {\n sendOperationFn: (args: any, spec: any) => Promise<LroResponse<T>>;\n args: Record<string, unknown>;\n spec: {\n readonly requestBody?: unknown;\n readonly path?: string;\n readonly httpMethod: string;\n } & Record<string, any>;\n}): LongRunningOperation<T> {\n const { args, spec, sendOperationFn } = inputs;\n return {\n requestMethod: spec.httpMethod,\n requestPath: spec.path!,\n sendInitialRequest: () => sendOperationFn(args, spec),\n sendPollRequest: (\n path: string,\n options?: { abortSignal?: AbortSignalLike }\n ) => {\n const { requestBody, ...restSpec } = spec;\n return sendOperationFn(args, {\n ...restSpec,\n httpMethod: \"GET\",\n path,\n abortSignal: options?.abortSignal\n });\n }\n };\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport { PagedAsyncIterableIterator, PageSettings } from \"@azure/core-paging\";\nimport { setContinuationToken } from \"../pagingHelper\";\nimport { Policies } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { FrontDoorManagementClient } from \"../frontDoorManagementClient\";\nimport {\n SimplePollerLike,\n OperationState,\n createHttpPoller\n} from \"@azure/core-lro\";\nimport { createLroSpec } from \"../lroImpl\";\nimport {\n WebApplicationFirewallPolicy,\n PoliciesListNextOptionalParams,\n PoliciesListOptionalParams,\n PoliciesListResponse,\n PoliciesListBySubscriptionNextOptionalParams,\n PoliciesListBySubscriptionOptionalParams,\n PoliciesListBySubscriptionResponse,\n PoliciesGetOptionalParams,\n PoliciesGetResponse,\n PoliciesCreateOrUpdateOptionalParams,\n PoliciesCreateOrUpdateResponse,\n TagsObject,\n PoliciesUpdateOptionalParams,\n PoliciesUpdateResponse,\n PoliciesDeleteOptionalParams,\n PoliciesListNextResponse,\n PoliciesListBySubscriptionNextResponse\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class containing Policies operations. */\nexport class PoliciesImpl implements Policies {\n private readonly client: FrontDoorManagementClient;\n\n /**\n * Initialize a new instance of the class Policies class.\n * @param client Reference to the service client\n */\n constructor(client: FrontDoorManagementClient) {\n this.client = client;\n }\n\n /**\n * Lists all of the protection policies within a resource group.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param options The options parameters.\n */\n public list(\n resourceGroupName: string,\n options?: PoliciesListOptionalParams\n ): PagedAsyncIterableIterator<WebApplicationFirewallPolicy> {\n const iter = this.listPagingAll(resourceGroupName, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings?: PageSettings) => {\n if (settings?.maxPageSize) {\n throw new Error(\"maxPageSize is not supported by this operation.\");\n }\n return this.listPagingPage(resourceGroupName, options, settings);\n }\n };\n }\n\n private async *listPagingPage(\n resourceGroupName: string,\n options?: PoliciesListOptionalParams,\n settings?: PageSettings\n ): AsyncIterableIterator<WebApplicationFirewallPolicy[]> {\n let result: PoliciesListResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._list(resourceGroupName, options);\n let page = result.value || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listNext(\n resourceGroupName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n let page = result.value || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listPagingAll(\n resourceGroupName: string,\n options?: PoliciesListOptionalParams\n ): AsyncIterableIterator<WebApplicationFirewallPolicy> {\n for await (const page of this.listPagingPage(resourceGroupName, options)) {\n yield* page;\n }\n }\n\n /**\n * Lists all of the protection policies within a subscription.\n * @param options The options parameters.\n */\n public listBySubscription(\n options?: PoliciesListBySubscriptionOptionalParams\n ): PagedAsyncIterableIterator<WebApplicationFirewallPolicy> {\n const iter = this.listBySubscriptionPagingAll(options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings?: PageSettings) => {\n if (settings?.maxPageSize) {\n throw new Error(\"maxPageSize is not supported by this operation.\");\n }\n return this.listBySubscriptionPagingPage(options, settings);\n }\n };\n }\n\n private async *listBySubscriptionPagingPage(\n options?: PoliciesListBySubscriptionOptionalParams,\n settings?: PageSettings\n ): AsyncIterableIterator<WebApplicationFirewallPolicy[]> {\n let result: PoliciesListBySubscriptionResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listBySubscription(options);\n let page = result.value || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listBySubscriptionNext(continuationToken, options);\n continuationToken = result.nextLink;\n let page = result.value || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listBySubscriptionPagingAll(\n options?: PoliciesListBySubscriptionOptionalParams\n ): AsyncIterableIterator<WebApplicationFirewallPolicy> {\n for await (const page of this.listBySubscriptionPagingPage(options)) {\n yield* page;\n }\n }\n\n /**\n * Lists all of the protection policies within a resource group.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param options The options parameters.\n */\n private _list(\n resourceGroupName: string,\n options?: PoliciesListOptionalParams\n ): Promise<PoliciesListResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, options },\n listOperationSpec\n );\n }\n\n /**\n * Lists all of the protection policies within a subscription.\n * @param options The options parameters.\n */\n private _listBySubscription(\n options?: PoliciesListBySubscriptionOptionalParams\n ): Promise<PoliciesListBySubscriptionResponse> {\n return this.client.sendOperationRequest(\n { options },\n listBySubscriptionOperationSpec\n );\n }\n\n /**\n * Retrieve protection policy with specified name within a resource group.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param policyName The name of the Web Application Firewall Policy.\n * @param options The options parameters.\n */\n get(\n resourceGroupName: string,\n policyName: string,\n options?: PoliciesGetOptionalParams\n ): Promise<PoliciesGetResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, policyName, options },\n getOperationSpec\n );\n }\n\n /**\n * Create or update policy with specified rule set name within a resource group.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param policyName The name of the Web Application Firewall Policy.\n * @param parameters Policy to be created.\n * @param options The options parameters.\n */\n async beginCreateOrUpdate(\n resourceGroupName: string,\n policyName: string,\n parameters: WebApplicationFirewallPolicy,\n options?: PoliciesCreateOrUpdateOptionalParams\n ): Promise<\n SimplePollerLike<\n OperationState<PoliciesCreateOrUpdateResponse>,\n PoliciesCreateOrUpdateResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<PoliciesCreateOrUpdateResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: { resourceGroupName, policyName, parameters, options },\n spec: createOrUpdateOperationSpec\n });\n const poller = await createHttpPoller<\n PoliciesCreateOrUpdateResponse,\n OperationState<PoliciesCreateOrUpdateResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Create or update policy with specified rule set name within a resource group.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param policyName The name of the Web Application Firewall Policy.\n * @param parameters Policy to be created.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateAndWait(\n resourceGroupName: string,\n policyName: string,\n parameters: WebApplicationFirewallPolicy,\n options?: PoliciesCreateOrUpdateOptionalParams\n ): Promise<PoliciesCreateOrUpdateResponse> {\n const poller = await this.beginCreateOrUpdate(\n resourceGroupName,\n policyName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Patch a specific frontdoor webApplicationFirewall policy for tags update under the specified\n * subscription and resource group.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param policyName The name of the Web Application Firewall Policy.\n * @param parameters FrontdoorWebApplicationFirewallPolicy parameters to be patched.\n * @param options The options parameters.\n */\n async beginUpdate(\n resourceGroupName: string,\n policyName: string,\n parameters: TagsObject,\n options?: PoliciesUpdateOptionalParams\n ): Promise<\n SimplePollerLike<\n OperationState<PoliciesUpdateResponse>,\n PoliciesUpdateResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<PoliciesUpdateResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: { resourceGroupName, policyName, parameters, options },\n spec: updateOperationSpec\n });\n const poller = await createHttpPoller<\n PoliciesUpdateResponse,\n OperationState<PoliciesUpdateResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Patch a specific frontdoor webApplicationFirewall policy for tags update under the specified\n * subscription and resource group.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param policyName The name of the Web Application Firewall Policy.\n * @param parameters FrontdoorWebApplicationFirewallPolicy parameters to be patched.\n * @param options The options parameters.\n */\n async beginUpdateAndWait(\n resourceGroupName: string,\n policyName: string,\n parameters: TagsObject,\n options?: PoliciesUpdateOptionalParams\n ): Promise<PoliciesUpdateResponse> {\n const poller = await this.beginUpdate(\n resourceGroupName,\n policyName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Deletes Policy\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param policyName The name of the Web Application Firewall Policy.\n * @param options The options parameters.\n */\n async beginDelete(\n resourceGroupName: string,\n policyName: string,\n options?: PoliciesDeleteOptionalParams\n ): Promise<SimplePollerLike<OperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: { resourceGroupName, policyName, options },\n spec: deleteOperationSpec\n });\n const poller = await createHttpPoller<void, OperationState<void>>(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Deletes Policy\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param policyName The name of the Web Application Firewall Policy.\n * @param options The options parameters.\n */\n async beginDeleteAndWait(\n resourceGroupName: string,\n policyName: string,\n options?: PoliciesDeleteOptionalParams\n ): Promise<void> {\n const poller = await this.beginDelete(\n resourceGroupName,\n policyName,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * ListNext\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n private _listNext(\n resourceGroupName: string,\n nextLink: string,\n options?: PoliciesListNextOptionalParams\n ): Promise<PoliciesListNextResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, nextLink, options },\n listNextOperationSpec\n );\n }\n\n /**\n * ListBySubscriptionNext\n * @param nextLink The nextLink from the previous successful call to the ListBySubscription method.\n * @param options The options parameters.\n */\n private _listBySubscriptionNext(\n nextLink: string,\n options?: PoliciesListBySubscriptionNextOptionalParams\n ): Promise<PoliciesListBySubscriptionNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listBySubscriptionNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst listOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoorWebApplicationFirewallPolicies\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.WebApplicationFirewallPolicyList\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listBySubscriptionOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Network/frontDoorWebApplicationFirewallPolicies\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.WebApplicationFirewallPolicyList\n },\n default: {\n bodyMapper: Mappers.DefaultErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.subscriptionId],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/FrontDoorWebApplicationFirewallPolicies/{policyName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.WebApplicationFirewallPolicy\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.policyName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/FrontDoorWebApplicationFirewallPolicies/{policyName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.WebApplicationFirewallPolicy\n },\n 201: {\n bodyMapper: Mappers.WebApplicationFirewallPolicy\n },\n 202: {\n bodyMapper: Mappers.WebApplicationFirewallPolicy\n },\n 204: {\n bodyMapper: Mappers.WebApplicationFirewallPolicy\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n requestBody: Parameters.parameters,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.policyName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst updateOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/FrontDoorWebApplicationFirewallPolicies/{policyName}\",\n httpMethod: \"PATCH\",\n responses: {\n 200: {\n bodyMapper: Mappers.WebApplicationFirewallPolicy\n },\n 201: {\n bodyMapper: Mappers.WebApplicationFirewallPolicy\n },\n 202: {\n bodyMapper: Mappers.WebApplicationFirewallPolicy\n },\n 204: {\n bodyMapper: Mappers.WebApplicationFirewallPolicy\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n requestBody: Parameters.parameters1,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.policyName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst deleteOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/FrontDoorWebApplicationFirewallPolicies/{policyName}\",\n httpMethod: \"DELETE\",\n responses: { 200: {}, 201: {}, 202: {}, 204: {} },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.policyName\n ],\n serializer\n};\nconst listNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.WebApplicationFirewallPolicyList\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.nextLink\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listBySubscriptionNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.WebApplicationFirewallPolicyList\n },\n default: {\n bodyMapper: Mappers.DefaultErrorResponse\n }\n },\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.nextLink\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport { PagedAsyncIterableIterator, PageSettings } from \"@azure/core-paging\";\nimport { setContinuationToken } from \"../pagingHelper\";\nimport { ManagedRuleSets } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { FrontDoorManagementClient } from \"../frontDoorManagementClient\";\nimport {\n ManagedRuleSetDefinition,\n ManagedRuleSetsListNextOptionalParams,\n ManagedRuleSetsListOptionalParams,\n ManagedRuleSetsListResponse,\n ManagedRuleSetsListNextResponse\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class containing ManagedRuleSets operations. */\nexport class ManagedRuleSetsImpl implements ManagedRuleSets {\n private readonly client: FrontDoorManagementClient;\n\n /**\n * Initialize a new instance of the class ManagedRuleSets class.\n * @param client Reference to the service client\n */\n constructor(client: FrontDoorManagementClient) {\n this.client = client;\n }\n\n /**\n * Lists all available managed rule sets.\n * @param options The options parameters.\n */\n public list(\n options?: ManagedRuleSetsListOptionalParams\n ): PagedAsyncIterableIterator<ManagedRuleSetDefinition> {\n const iter = this.listPagingAll(options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings?: PageSettings) => {\n if (settings?.maxPageSize) {\n throw new Error(\"maxPageSize is not supported by this operation.\");\n }\n return this.listPagingPage(options, settings);\n }\n };\n }\n\n private async *listPagingPage(\n options?: ManagedRuleSetsListOptionalParams,\n settings?: PageSettings\n ): AsyncIterableIterator<ManagedRuleSetDefinition[]> {\n let result: ManagedRuleSetsListResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._list(options);\n let page = result.value || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listNext(continuationToken, options);\n continuationToken = result.nextLink;\n let page = result.value || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listPagingAll(\n options?: ManagedRuleSetsListOptionalParams\n ): AsyncIterableIterator<ManagedRuleSetDefinition> {\n for await (const page of this.listPagingPage(options)) {\n yield* page;\n }\n }\n\n /**\n * Lists all available managed rule sets.\n * @param options The options parameters.\n */\n private _list(\n options?: ManagedRuleSetsListOptionalParams\n ): Promise<ManagedRuleSetsListResponse> {\n return this.client.sendOperationRequest({ options }, listOperationSpec);\n }\n\n /**\n * ListNext\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n private _listNext(\n nextLink: string,\n options?: ManagedRuleSetsListNextOptionalParams\n ): Promise<ManagedRuleSetsListNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst listOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Network/FrontDoorWebApplicationFirewallManagedRuleSets\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ManagedRuleSetDefinitionList\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.subscriptionId],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ManagedRuleSetDefinitionList\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.nextLink\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport { FrontDoorNameAvailability } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { FrontDoorManagementClient } from \"../frontDoorManagementClient\";\nimport {\n CheckNameAvailabilityInput,\n FrontDoorNameAvailabilityCheckOptionalParams,\n FrontDoorNameAvailabilityCheckResponse\n} from \"../models\";\n\n/** Class containing FrontDoorNameAvailability operations. */\nexport class FrontDoorNameAvailabilityImpl\n implements FrontDoorNameAvailability {\n private readonly client: FrontDoorManagementClient;\n\n /**\n * Initialize a new instance of the class FrontDoorNameAvailability class.\n * @param client Reference to the service client\n */\n constructor(client: FrontDoorManagementClient) {\n this.client = client;\n }\n\n /**\n * Check the availability of a Front Door resource name.\n * @param checkFrontDoorNameAvailabilityInput Input to check.\n * @param options The options parameters.\n */\n check(\n checkFrontDoorNameAvailabilityInput: CheckNameAvailabilityInput,\n options?: FrontDoorNameAvailabilityCheckOptionalParams\n ): Promise<FrontDoorNameAvailabilityCheckResponse> {\n return this.client.sendOperationRequest(\n { checkFrontDoorNameAvailabilityInput, options },\n checkOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst checkOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Network/checkFrontDoorNameAvailability\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.CheckNameAvailabilityOutput\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n requestBody: Parameters.checkFrontDoorNameAvailabilityInput,\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [Parameters.$host],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport { FrontDoorNameAvailabilityWithSubscription } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { FrontDoorManagementClient } from \"../frontDoorManagementClient\";\nimport {\n CheckNameAvailabilityInput,\n FrontDoorNameAvailabilityWithSubscriptionCheckOptionalParams,\n FrontDoorNameAvailabilityWithSubscriptionCheckResponse\n} from \"../models\";\n\n/** Class containing FrontDoorNameAvailabilityWithSubscription operations. */\nexport class FrontDoorNameAvailabilityWithSubscriptionImpl\n implements FrontDoorNameAvailabilityWithSubscription {\n private readonly client: FrontDoorManagementClient;\n\n /**\n * Initialize a new instance of the class FrontDoorNameAvailabilityWithSubscription class.\n * @param client Reference to the service client\n */\n constructor(client: FrontDoorManagementClient) {\n this.client = client;\n }\n\n /**\n * Check the availability of a Front Door subdomain.\n * @param checkFrontDoorNameAvailabilityInput Input to check.\n * @param options The options parameters.\n */\n check(\n checkFrontDoorNameAvailabilityInput: CheckNameAvailabilityInput,\n options?: FrontDoorNameAvailabilityWithSubscriptionCheckOptionalParams\n ): Promise<FrontDoorNameAvailabilityWithSubscriptionCheckResponse> {\n return this.client.sendOperationRequest(\n { checkFrontDoorNameAvailabilityInput, options },\n checkOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst checkOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Network/checkFrontDoorNameAvailability\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.CheckNameAvailabilityOutput\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n requestBody: Parameters.checkFrontDoorNameAvailabilityInput,\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [Parameters.$host, Parameters.subscriptionId],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport { PagedAsyncIterableIterator, PageSettings } from \"@azure/core-paging\";\nimport { setContinuationToken } from \"../pagingHelper\";\nimport { FrontDoors } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { FrontDoorManagementClient } from \"../frontDoorManagementClient\";\nimport {\n SimplePollerLike,\n OperationState,\n createHttpPoller\n} from \"@azure/core-lro\";\nimport { createLroSpec } from \"../lroImpl\";\nimport {\n FrontDoor,\n FrontDoorsListNextOptionalParams,\n FrontDoorsListOptionalParams,\n FrontDoorsListResponse,\n FrontDoorsListByResourceGroupNextOptionalParams,\n FrontDoorsListByResourceGroupOptionalParams,\n FrontDoorsListByResourceGroupResponse,\n FrontDoorsGetOptionalParams,\n FrontDoorsGetResponse,\n FrontDoorsCreateOrUpdateOptionalParams,\n FrontDoorsCreateOrUpdateResponse,\n FrontDoorsDeleteOptionalParams,\n ValidateCustomDomainInput,\n FrontDoorsValidateCustomDomainOptionalParams,\n FrontDoorsValidateCustomDomainResponse,\n FrontDoorsListNextResponse,\n FrontDoorsListByResourceGroupNextResponse\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class containing FrontDoors operations. */\nexport class FrontDoorsImpl implements FrontDoors {\n private readonly client: FrontDoorManagementClient;\n\n /**\n * Initialize a new instance of the class FrontDoors class.\n * @param client Reference to the service client\n */\n constructor(client: FrontDoorManagementClient) {\n this.client = client;\n }\n\n /**\n * Lists all of the Front Doors within an Azure subscription.\n * @param options The options parameters.\n */\n public list(\n options?: FrontDoorsListOptionalParams\n ): PagedAsyncIterableIterator<FrontDoor> {\n const iter = this.listPagingAll(options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings?: PageSettings) => {\n if (settings?.maxPageSize) {\n throw new Error(\"maxPageSize is not supported by this operation.\");\n }\n return this.listPagingPage(options, settings);\n }\n };\n }\n\n private async *listPagingPage(\n options?: FrontDoorsListOptionalParams,\n settings?: PageSettings\n ): AsyncIterableIterator<FrontDoor[]> {\n let result: FrontDoorsListResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._list(options);\n let page = result.value || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listNext(continuationToken, options);\n continuationToken = result.nextLink;\n let page = result.value || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listPagingAll(\n options?: FrontDoorsListOptionalParams\n ): AsyncIterableIterator<FrontDoor> {\n for await (const page of this.listPagingPage(options)) {\n yield* page;\n }\n }\n\n /**\n * Lists all of the Front Doors within a resource group under a subscription.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param options The options parameters.\n */\n public listByResourceGroup(\n resourceGroupName: string,\n options?: FrontDoorsListByResourceGroupOptionalParams\n ): PagedAsyncIterableIterator<FrontDoor> {\n const iter = this.listByResourceGroupPagingAll(resourceGroupName, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings?: PageSettings) => {\n if (settings?.maxPageSize) {\n throw new Error(\"maxPageSize is not supported by this operation.\");\n }\n return this.listByResourceGroupPagingPage(\n resourceGroupName,\n options,\n settings\n );\n }\n };\n }\n\n private async *listByResourceGroupPagingPage(\n resourceGroupName: string,\n options?: FrontDoorsListByResourceGroupOptionalParams,\n settings?: PageSettings\n ): AsyncIterableIterator<FrontDoor[]> {\n let result: FrontDoorsListByResourceGroupResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listByResourceGroup(resourceGroupName, options);\n let page = result.value || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listByResourceGroupNext(\n resourceGroupName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n let page = result.value || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listByResourceGroupPagingAll(\n resourceGroupName: string,\n options?: FrontDoorsListByResourceGroupOptionalParams\n ): AsyncIterableIterator<FrontDoor> {\n for await (const page of this.listByResourceGroupPagingPage(\n resourceGroupName,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * Lists all of the Front Doors within an Azure subscription.\n * @param options The options parameters.\n */\n private _list(\n options?: FrontDoorsListOptionalParams\n ): Promise<FrontDoorsListResponse> {\n return this.client.sendOperationRequest({ options }, listOperationSpec);\n }\n\n /**\n * Lists all of the Front Doors within a resource group under a subscription.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param options The options parameters.\n */\n private _listByResourceGroup(\n resourceGroupName: string,\n options?: FrontDoorsListByResourceGroupOptionalParams\n ): Promise<FrontDoorsListByResourceGroupResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, options },\n listByResourceGroupOperationSpec\n );\n }\n\n /**\n * Gets a Front Door with the specified Front Door name under the specified subscription and resource\n * group.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param options The options parameters.\n */\n get(\n resourceGroupName: string,\n frontDoorName: string,\n options?: FrontDoorsGetOptionalParams\n ): Promise<FrontDoorsGetResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, frontDoorName, options },\n getOperationSpec\n );\n }\n\n /**\n * Creates a new Front Door with a Front Door name under the specified subscription and resource group.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param frontDoorParameters Front Door properties needed to create a new Front Door.\n * @param options The options parameters.\n */\n async beginCreateOrUpdate(\n resourceGroupName: string,\n frontDoorName: string,\n frontDoorParameters: FrontDoor,\n options?: FrontDoorsCreateOrUpdateOptionalParams\n ): Promise<\n SimplePollerLike<\n OperationState<FrontDoorsCreateOrUpdateResponse>,\n FrontDoorsCreateOrUpdateResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<FrontDoorsCreateOrUpdateResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: { resourceGroupName, frontDoorName, frontDoorParameters, options },\n spec: createOrUpdateOperationSpec\n });\n const poller = await createHttpPoller<\n FrontDoorsCreateOrUpdateResponse,\n OperationState<FrontDoorsCreateOrUpdateResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"azure-async-operation\"\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Creates a new Front Door with a Front Door name under the specified subscription and resource group.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param frontDoorParameters Front Door properties needed to create a new Front Door.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateAndWait(\n resourceGroupName: string,\n frontDoorName: string,\n frontDoorParameters: FrontDoor,\n options?: FrontDoorsCreateOrUpdateOptionalParams\n ): Promise<FrontDoorsCreateOrUpdateResponse> {\n const poller = await this.beginCreateOrUpdate(\n resourceGroupName,\n frontDoorName,\n frontDoorParameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Deletes an existing Front Door with the specified parameters.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param options The options parameters.\n */\n async beginDelete(\n resourceGroupName: string,\n frontDoorName: string,\n options?: FrontDoorsDeleteOptionalParams\n ): Promise<SimplePollerLike<OperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: { resourceGroupName, frontDoorName, options },\n spec: deleteOperationSpec\n });\n const poller = await createHttpPoller<void, OperationState<void>>(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"azure-async-operation\"\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Deletes an existing Front Door with the specified parameters.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param options The options parameters.\n */\n async beginDeleteAndWait(\n resourceGroupName: string,\n frontDoorName: string,\n options?: FrontDoorsDeleteOptionalParams\n ): Promise<void> {\n const poller = await this.beginDelete(\n resourceGroupName,\n frontDoorName,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Validates the custom domain mapping to ensure it maps to the correct Front Door endpoint in DNS.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param customDomainProperties Custom domain to be validated.\n * @param options The options parameters.\n */\n validateCustomDomain(\n resourceGroupName: string,\n frontDoorName: string,\n customDomainProperties: ValidateCustomDomainInput,\n options?: FrontDoorsValidateCustomDomainOptionalParams\n ): Promise<FrontDoorsValidateCustomDomainResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, frontDoorName, customDomainProperties, options },\n validateCustomDomainOperationSpec\n );\n }\n\n /**\n * ListNext\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n private _listNext(\n nextLink: string,\n options?: FrontDoorsListNextOptionalParams\n ): Promise<FrontDoorsListNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listNextOperationSpec\n );\n }\n\n /**\n * ListByResourceGroupNext\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param nextLink The nextLink from the previous successful call to the ListByResourceGroup method.\n * @param options The options parameters.\n */\n private _listByResourceGroupNext(\n resourceGroupName: string,\n nextLink: string,\n options?: FrontDoorsListByResourceGroupNextOptionalParams\n ): Promise<FrontDoorsListByResourceGroupNextResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, nextLink, options },\n listByResourceGroupNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst listOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Network/frontDoors\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.FrontDoorListResult\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [Parameters.$host, Parameters.subscriptionId],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listByResourceGroupOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.FrontDoorListResult\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.FrontDoor\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.frontDoorName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.FrontDoor\n },\n 201: {\n bodyMapper: Mappers.FrontDoor\n },\n 202: {\n bodyMapper: Mappers.FrontDoor\n },\n 204: {\n bodyMapper: Mappers.FrontDoor\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n requestBody: Parameters.frontDoorParameters,\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.frontDoorName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst deleteOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.frontDoorName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst validateCustomDomainOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/validateCustomDomain\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.ValidateCustomDomainOutput\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n requestBody: Parameters.customDomainProperties,\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.frontDoorName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst listNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.FrontDoorListResult\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.nextLink\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listByResourceGroupNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.FrontDoorListResult\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.nextLink\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport { PagedAsyncIterableIterator, PageSettings } from \"@azure/core-paging\";\nimport { setContinuationToken } from \"../pagingHelper\";\nimport { FrontendEndpoints } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { FrontDoorManagementClient } from \"../frontDoorManagementClient\";\nimport {\n SimplePollerLike,\n OperationState,\n createHttpPoller\n} from \"@azure/core-lro\";\nimport { createLroSpec } from \"../lroImpl\";\nimport {\n FrontendEndpoint,\n FrontendEndpointsListByFrontDoorNextOptionalParams,\n FrontendEndpointsListByFrontDoorOptionalParams,\n FrontendEndpointsListByFrontDoorResponse,\n FrontendEndpointsGetOptionalParams,\n FrontendEndpointsGetResponse,\n CustomHttpsConfiguration,\n FrontendEndpointsEnableHttpsOptionalParams,\n FrontendEndpointsDisableHttpsOptionalParams,\n FrontendEndpointsListByFrontDoorNextResponse\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class containing FrontendEndpoints operations. */\nexport class FrontendEndpointsImpl implements FrontendEndpoints {\n private readonly client: FrontDoorManagementClient;\n\n /**\n * Initialize a new instance of the class FrontendEndpoints class.\n * @param client Reference to the service client\n */\n constructor(client: FrontDoorManagementClient) {\n this.client = client;\n }\n\n /**\n * Lists all of the frontend endpoints within a Front Door.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param options The options parameters.\n */\n public listByFrontDoor(\n resourceGroupName: string,\n frontDoorName: string,\n options?: FrontendEndpointsListByFrontDoorOptionalParams\n ): PagedAsyncIterableIterator<FrontendEndpoint> {\n const iter = this.listByFrontDoorPagingAll(\n resourceGroupName,\n frontDoorName,\n options\n );\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings?: PageSettings) => {\n if (settings?.maxPageSize) {\n throw new Error(\"maxPageSize is not supported by this operation.\");\n }\n return this.listByFrontDoorPagingPage(\n resourceGroupName,\n frontDoorName,\n options,\n settings\n );\n }\n };\n }\n\n private async *listByFrontDoorPagingPage(\n resourceGroupName: string,\n frontDoorName: string,\n options?: FrontendEndpointsListByFrontDoorOptionalParams,\n settings?: PageSettings\n ): AsyncIterableIterator<FrontendEndpoint[]> {\n let result: FrontendEndpointsListByFrontDoorResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listByFrontDoor(\n resourceGroupName,\n frontDoorName,\n options\n );\n let page = result.value || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listByFrontDoorNext(\n resourceGroupName,\n frontDoorName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n let page = result.value || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listByFrontDoorPagingAll(\n resourceGroupName: string,\n frontDoorName: string,\n options?: FrontendEndpointsListByFrontDoorOptionalParams\n ): AsyncIterableIterator<FrontendEndpoint> {\n for await (const page of this.listByFrontDoorPagingPage(\n resourceGroupName,\n frontDoorName,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * Lists all of the frontend endpoints within a Front Door.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param options The options parameters.\n */\n private _listByFrontDoor(\n resourceGroupName: string,\n frontDoorName: string,\n options?: FrontendEndpointsListByFrontDoorOptionalParams\n ): Promise<FrontendEndpointsListByFrontDoorResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, frontDoorName, options },\n listByFrontDoorOperationSpec\n );\n }\n\n /**\n * Gets a Frontend endpoint with the specified name within the specified Front Door.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param frontendEndpointName Name of the Frontend endpoint which is unique within the Front Door.\n * @param options The options parameters.\n */\n get(\n resourceGroupName: string,\n frontDoorName: string,\n frontendEndpointName: string,\n options?: FrontendEndpointsGetOptionalParams\n ): Promise<FrontendEndpointsGetResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, frontDoorName, frontendEndpointName, options },\n getOperationSpec\n );\n }\n\n /**\n * Enables a frontendEndpoint for HTTPS traffic\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param frontendEndpointName Name of the Frontend endpoint which is unique within the Front Door.\n * @param customHttpsConfiguration The configuration specifying how to enable HTTPS\n * @param options The options parameters.\n */\n async beginEnableHttps(\n resourceGroupName: string,\n frontDoorName: string,\n frontendEndpointName: string,\n customHttpsConfiguration: CustomHttpsConfiguration,\n options?: FrontendEndpointsEnableHttpsOptionalParams\n ): Promise<SimplePollerLike<OperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: {\n resourceGroupName,\n frontDoorName,\n frontendEndpointName,\n customHttpsConfiguration,\n options\n },\n spec: enableHttpsOperationSpec\n });\n const poller = await createHttpPoller<void, OperationState<void>>(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"azure-async-operation\"\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Enables a frontendEndpoint for HTTPS traffic\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param frontendEndpointName Name of the Frontend endpoint which is unique within the Front Door.\n * @param customHttpsConfiguration The configuration specifying how to enable HTTPS\n * @param options The options parameters.\n */\n async beginEnableHttpsAndWait(\n resourceGroupName: string,\n frontDoorName: string,\n frontendEndpointName: string,\n customHttpsConfiguration: CustomHttpsConfiguration,\n options?: FrontendEndpointsEnableHttpsOptionalParams\n ): Promise<void> {\n const poller = await this.beginEnableHttps(\n resourceGroupName,\n frontDoorName,\n frontendEndpointName,\n customHttpsConfiguration,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Disables a frontendEndpoint for HTTPS traffic\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param frontendEndpointName Name of the Frontend endpoint which is unique within the Front Door.\n * @param options The options parameters.\n */\n async beginDisableHttps(\n resourceGroupName: string,\n frontDoorName: string,\n frontendEndpointName: string,\n options?: FrontendEndpointsDisableHttpsOptionalParams\n ): Promise<SimplePollerLike<OperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: { resourceGroupName, frontDoorName, frontendEndpointName, options },\n spec: disableHttpsOperationSpec\n });\n const poller = await createHttpPoller<void, OperationState<void>>(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"azure-async-operation\"\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Disables a frontendEndpoint for HTTPS traffic\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param frontendEndpointName Name of the Frontend endpoint which is unique within the Front Door.\n * @param options The options parameters.\n */\n async beginDisableHttpsAndWait(\n resourceGroupName: string,\n frontDoorName: string,\n frontendEndpointName: string,\n options?: FrontendEndpointsDisableHttpsOptionalParams\n ): Promise<void> {\n const poller = await this.beginDisableHttps(\n resourceGroupName,\n frontDoorName,\n frontendEndpointName,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * ListByFrontDoorNext\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param nextLink The nextLink from the previous successful call to the ListByFrontDoor method.\n * @param options The options parameters.\n */\n private _listByFrontDoorNext(\n resourceGroupName: string,\n frontDoorName: string,\n nextLink: string,\n options?: FrontendEndpointsListByFrontDoorNextOptionalParams\n ): Promise<FrontendEndpointsListByFrontDoorNextResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, frontDoorName, nextLink, options },\n listByFrontDoorNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst listByFrontDoorOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/frontendEndpoints\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.FrontendEndpointsListResult\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.frontDoorName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/frontendEndpoints/{frontendEndpointName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.FrontendEndpoint\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.frontDoorName,\n Parameters.frontendEndpointName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst enableHttpsOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/frontendEndpoints/{frontendEndpointName}/enableHttps\",\n httpMethod: \"POST\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n requestBody: Parameters.customHttpsConfiguration,\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.frontDoorName,\n Parameters.frontendEndpointName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst disableHttpsOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/frontendEndpoints/{frontendEndpointName}/disableHttps\",\n httpMethod: \"POST\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.frontDoorName,\n Parameters.frontendEndpointName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listByFrontDoorNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.FrontendEndpointsListResult\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.nextLink,\n Parameters.frontDoorName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport { Endpoints } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { FrontDoorManagementClient } from \"../frontDoorManagementClient\";\nimport {\n SimplePollerLike,\n OperationState,\n createHttpPoller\n} from \"@azure/core-lro\";\nimport { createLroSpec } from \"../lroImpl\";\nimport {\n PurgeParameters,\n EndpointsPurgeContentOptionalParams\n} from \"../models\";\n\n/** Class containing Endpoints operations. */\nexport class EndpointsImpl implements Endpoints {\n private readonly client: FrontDoorManagementClient;\n\n /**\n * Initialize a new instance of the class Endpoints class.\n * @param client Reference to the service client\n */\n constructor(client: FrontDoorManagementClient) {\n this.client = client;\n }\n\n /**\n * Removes a content from Front Door.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param contentFilePaths The path to the content to be purged. Path can be a full URL, e.g.\n * '/pictures/city.png' which removes a single file, or a directory with a wildcard, e.g. '/pictures/*'\n * which removes all folders and files in the directory.\n * @param options The options parameters.\n */\n async beginPurgeContent(\n resourceGroupName: string,\n frontDoorName: string,\n contentFilePaths: PurgeParameters,\n options?: EndpointsPurgeContentOptionalParams\n ): Promise<SimplePollerLike<OperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: { resourceGroupName, frontDoorName, contentFilePaths, options },\n spec: purgeContentOperationSpec\n });\n const poller = await createHttpPoller<void, OperationState<void>>(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"azure-async-operation\"\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Removes a content from Front Door.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param contentFilePaths The path to the content to be purged. Path can be a full URL, e.g.\n * '/pictures/city.png' which removes a single file, or a directory with a wildcard, e.g. '/pictures/*'\n * which removes all folders and files in the directory.\n * @param options The options parameters.\n */\n async beginPurgeContentAndWait(\n resourceGroupName: string,\n frontDoorName: string,\n contentFilePaths: PurgeParameters,\n options?: EndpointsPurgeContentOptionalParams\n ): Promise<void> {\n const poller = await this.beginPurgeContent(\n resourceGroupName,\n frontDoorName,\n contentFilePaths,\n options\n );\n return poller.pollUntilDone();\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst purgeContentOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/purge\",\n httpMethod: \"POST\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n requestBody: Parameters.contentFilePaths,\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.frontDoorName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport { PagedAsyncIterableIterator, PageSettings } from \"@azure/core-paging\";\nimport { setContinuationToken } from \"../pagingHelper\";\nimport { RulesEngines } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { FrontDoorManagementClient } from \"../frontDoorManagementClient\";\nimport {\n SimplePollerLike,\n OperationState,\n createHttpPoller\n} from \"@azure/core-lro\";\nimport { createLroSpec } from \"../lroImpl\";\nimport {\n RulesEngine,\n RulesEnginesListByFrontDoorNextOptionalParams,\n RulesEnginesListByFrontDoorOptionalParams,\n RulesEnginesListByFrontDoorResponse,\n RulesEnginesGetOptionalParams,\n RulesEnginesGetResponse,\n RulesEnginesCreateOrUpdateOptionalParams,\n RulesEnginesCreateOrUpdateResponse,\n RulesEnginesDeleteOptionalParams,\n RulesEnginesListByFrontDoorNextResponse\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class containing RulesEngines operations. */\nexport class RulesEnginesImpl implements RulesEngines {\n private readonly client: FrontDoorManagementClient;\n\n /**\n * Initialize a new instance of the class RulesEngines class.\n * @param client Reference to the service client\n */\n constructor(client: FrontDoorManagementClient) {\n this.client = client;\n }\n\n /**\n * Lists all of the Rules Engine Configurations within a Front Door.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param options The options parameters.\n */\n public listByFrontDoor(\n resourceGroupName: string,\n frontDoorName: string,\n options?: RulesEnginesListByFrontDoorOptionalParams\n ): PagedAsyncIterableIterator<RulesEngine> {\n const iter = this.listByFrontDoorPagingAll(\n resourceGroupName,\n frontDoorName,\n options\n );\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings?: PageSettings) => {\n if (settings?.maxPageSize) {\n throw new Error(\"maxPageSize is not supported by this operation.\");\n }\n return this.listByFrontDoorPagingPage(\n resourceGroupName,\n frontDoorName,\n options,\n settings\n );\n }\n };\n }\n\n private async *listByFrontDoorPagingPage(\n resourceGroupName: string,\n frontDoorName: string,\n options?: RulesEnginesListByFrontDoorOptionalParams,\n settings?: PageSettings\n ): AsyncIterableIterator<RulesEngine[]> {\n let result: RulesEnginesListByFrontDoorResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listByFrontDoor(\n resourceGroupName,\n frontDoorName,\n options\n );\n let page = result.value || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listByFrontDoorNext(\n resourceGroupName,\n frontDoorName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n let page = result.value || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listByFrontDoorPagingAll(\n resourceGroupName: string,\n frontDoorName: string,\n options?: RulesEnginesListByFrontDoorOptionalParams\n ): AsyncIterableIterator<RulesEngine> {\n for await (const page of this.listByFrontDoorPagingPage(\n resourceGroupName,\n frontDoorName,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * Lists all of the Rules Engine Configurations within a Front Door.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param options The options parameters.\n */\n private _listByFrontDoor(\n resourceGroupName: string,\n frontDoorName: string,\n options?: RulesEnginesListByFrontDoorOptionalParams\n ): Promise<RulesEnginesListByFrontDoorResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, frontDoorName, options },\n listByFrontDoorOperationSpec\n );\n }\n\n /**\n * Gets a Rules Engine Configuration with the specified name within the specified Front Door.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param rulesEngineName Name of the Rules Engine which is unique within the Front Door.\n * @param options The options parameters.\n */\n get(\n resourceGroupName: string,\n frontDoorName: string,\n rulesEngineName: string,\n options?: RulesEnginesGetOptionalParams\n ): Promise<RulesEnginesGetResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, frontDoorName, rulesEngineName, options },\n getOperationSpec\n );\n }\n\n /**\n * Creates a new Rules Engine Configuration with the specified name within the specified Front Door.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param rulesEngineName Name of the Rules Engine which is unique within the Front Door.\n * @param rulesEngineParameters Rules Engine Configuration properties needed to create a new Rules\n * Engine Configuration.\n * @param options The options parameters.\n */\n async beginCreateOrUpdate(\n resourceGroupName: string,\n frontDoorName: string,\n rulesEngineName: string,\n rulesEngineParameters: RulesEngine,\n options?: RulesEnginesCreateOrUpdateOptionalParams\n ): Promise<\n SimplePollerLike<\n OperationState<RulesEnginesCreateOrUpdateResponse>,\n RulesEnginesCreateOrUpdateResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<RulesEnginesCreateOrUpdateResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: {\n resourceGroupName,\n frontDoorName,\n rulesEngineName,\n rulesEngineParameters,\n options\n },\n spec: createOrUpdateOperationSpec\n });\n const poller = await createHttpPoller<\n RulesEnginesCreateOrUpdateResponse,\n OperationState<RulesEnginesCreateOrUpdateResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"azure-async-operation\"\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Creates a new Rules Engine Configuration with the specified name within the specified Front Door.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param rulesEngineName Name of the Rules Engine which is unique within the Front Door.\n * @param rulesEngineParameters Rules Engine Configuration properties needed to create a new Rules\n * Engine Configuration.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateAndWait(\n resourceGroupName: string,\n frontDoorName: string,\n rulesEngineName: string,\n rulesEngineParameters: RulesEngine,\n options?: RulesEnginesCreateOrUpdateOptionalParams\n ): Promise<RulesEnginesCreateOrUpdateResponse> {\n const poller = await this.beginCreateOrUpdate(\n resourceGroupName,\n frontDoorName,\n rulesEngineName,\n rulesEngineParameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Deletes an existing Rules Engine Configuration with the specified parameters.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param rulesEngineName Name of the Rules Engine which is unique within the Front Door.\n * @param options The options parameters.\n */\n async beginDelete(\n resourceGroupName: string,\n frontDoorName: string,\n rulesEngineName: string,\n options?: RulesEnginesDeleteOptionalParams\n ): Promise<SimplePollerLike<OperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: { resourceGroupName, frontDoorName, rulesEngineName, options },\n spec: deleteOperationSpec\n });\n const poller = await createHttpPoller<void, OperationState<void>>(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"azure-async-operation\"\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Deletes an existing Rules Engine Configuration with the specified parameters.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param rulesEngineName Name of the Rules Engine which is unique within the Front Door.\n * @param options The options parameters.\n */\n async beginDeleteAndWait(\n resourceGroupName: string,\n frontDoorName: string,\n rulesEngineName: string,\n options?: RulesEnginesDeleteOptionalParams\n ): Promise<void> {\n const poller = await this.beginDelete(\n resourceGroupName,\n frontDoorName,\n rulesEngineName,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * ListByFrontDoorNext\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param nextLink The nextLink from the previous successful call to the ListByFrontDoor method.\n * @param options The options parameters.\n */\n private _listByFrontDoorNext(\n resourceGroupName: string,\n frontDoorName: string,\n nextLink: string,\n options?: RulesEnginesListByFrontDoorNextOptionalParams\n ): Promise<RulesEnginesListByFrontDoorNextResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, frontDoorName, nextLink, options },\n listByFrontDoorNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst listByFrontDoorOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/rulesEngines\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.RulesEngineListResult\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.frontDoorName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/rulesEngines/{rulesEngineName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.RulesEngine\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.frontDoorName,\n Parameters.rulesEngineName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/rulesEngines/{rulesEngineName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.RulesEngine\n },\n 201: {\n bodyMapper: Mappers.RulesEngine\n },\n 202: {\n bodyMapper: Mappers.RulesEngine\n },\n 204: {\n bodyMapper: Mappers.RulesEngine\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n requestBody: Parameters.rulesEngineParameters,\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.frontDoorName,\n Parameters.rulesEngineName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst deleteOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/rulesEngines/{rulesEngineName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.frontDoorName,\n Parameters.rulesEngineName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listByFrontDoorNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.RulesEngineListResult\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.nextLink,\n Parameters.frontDoorName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport { PagedAsyncIterableIterator, PageSettings } from \"@azure/core-paging\";\nimport { setContinuationToken } from \"../pagingHelper\";\nimport { NetworkExperimentProfiles } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { FrontDoorManagementClient } from \"../frontDoorManagementClient\";\nimport {\n SimplePollerLike,\n OperationState,\n createHttpPoller\n} from \"@azure/core-lro\";\nimport { createLroSpec } from \"../lroImpl\";\nimport {\n Profile,\n NetworkExperimentProfilesListNextOptionalParams,\n NetworkExperimentProfilesListOptionalParams,\n NetworkExperimentProfilesListResponse,\n NetworkExperimentProfilesListByResourceGroupNextOptionalParams,\n NetworkExperimentProfilesListByResourceGroupOptionalParams,\n NetworkExperimentProfilesListByResourceGroupResponse,\n NetworkExperimentProfilesGetOptionalParams,\n NetworkExperimentProfilesGetResponse,\n NetworkExperimentProfilesCreateOrUpdateOptionalParams,\n NetworkExperimentProfilesCreateOrUpdateResponse,\n ProfileUpdateModel,\n NetworkExperimentProfilesUpdateOptionalParams,\n NetworkExperimentProfilesUpdateResponse,\n NetworkExperimentProfilesDeleteOptionalParams,\n NetworkExperimentProfilesListNextResponse,\n NetworkExperimentProfilesListByResourceGroupNextResponse\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class containing NetworkExperimentProfiles operations. */\nexport class NetworkExperimentProfilesImpl\n implements NetworkExperimentProfiles {\n private readonly client: FrontDoorManagementClient;\n\n /**\n * Initialize a new instance of the class NetworkExperimentProfiles class.\n * @param client Reference to the service client\n */\n constructor(client: FrontDoorManagementClient) {\n this.client = client;\n }\n\n /**\n * Gets a list of Network Experiment Profiles under a subscription\n * @param options The options parameters.\n */\n public list(\n options?: NetworkExperimentProfilesListOptionalParams\n ): PagedAsyncIterableIterator<Profile> {\n const iter = this.listPagingAll(options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings?: PageSettings) => {\n if (settings?.maxPageSize) {\n throw new Error(\"maxPageSize is not supported by this operation.\");\n }\n return this.listPagingPage(options, settings);\n }\n };\n }\n\n private async *listPagingPage(\n options?: NetworkExperimentProfilesListOptionalParams,\n settings?: PageSettings\n ): AsyncIterableIterator<Profile[]> {\n let result: NetworkExperimentProfilesListResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._list(options);\n let page = result.value || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listNext(continuationToken, options);\n continuationToken = result.nextLink;\n let page = result.value || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listPagingAll(\n options?: NetworkExperimentProfilesListOptionalParams\n ): AsyncIterableIterator<Profile> {\n for await (const page of this.listPagingPage(options)) {\n yield* page;\n }\n }\n\n /**\n * Gets a list of Network Experiment Profiles within a resource group under a subscription\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param options The options parameters.\n */\n public listByResourceGroup(\n resourceGroupName: string,\n options?: NetworkExperimentProfilesListByResourceGroupOptionalParams\n ): PagedAsyncIterableIterator<Profile> {\n const iter = this.listByResourceGroupPagingAll(resourceGroupName, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings?: PageSettings) => {\n if (settings?.maxPageSize) {\n throw new Error(\"maxPageSize is not supported by this operation.\");\n }\n return this.listByResourceGroupPagingPage(\n resourceGroupName,\n options,\n settings\n );\n }\n };\n }\n\n private async *listByResourceGroupPagingPage(\n resourceGroupName: string,\n options?: NetworkExperimentProfilesListByResourceGroupOptionalParams,\n settings?: PageSettings\n ): AsyncIterableIterator<Profile[]> {\n let result: NetworkExperimentProfilesListByResourceGroupResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listByResourceGroup(resourceGroupName, options);\n let page = result.value || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listByResourceGroupNext(\n resourceGroupName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n let page = result.value || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listByResourceGroupPagingAll(\n resourceGroupName: string,\n options?: NetworkExperimentProfilesListByResourceGroupOptionalParams\n ): AsyncIterableIterator<Profile> {\n for await (const page of this.listByResourceGroupPagingPage(\n resourceGroupName,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * Gets a list of Network Experiment Profiles under a subscription\n * @param options The options parameters.\n */\n private _list(\n options?: NetworkExperimentProfilesListOptionalParams\n ): Promise<NetworkExperimentProfilesListResponse> {\n return this.client.sendOperationRequest({ options }, listOperationSpec);\n }\n\n /**\n * Gets a list of Network Experiment Profiles within a resource group under a subscription\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param options The options parameters.\n */\n private _listByResourceGroup(\n resourceGroupName: string,\n options?: NetworkExperimentProfilesListByResourceGroupOptionalParams\n ): Promise<NetworkExperimentProfilesListByResourceGroupResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, options },\n listByResourceGroupOperationSpec\n );\n }\n\n /**\n * Gets an NetworkExperiment Profile by ProfileName\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param options The options parameters.\n */\n get(\n resourceGroupName: string,\n profileName: string,\n options?: NetworkExperimentProfilesGetOptionalParams\n ): Promise<NetworkExperimentProfilesGetResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, profileName, options },\n getOperationSpec\n );\n }\n\n /**\n * Creates an NetworkExperiment Profile\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param parameters An Network Experiment Profile\n * @param options The options parameters.\n */\n async beginCreateOrUpdate(\n profileName: string,\n resourceGroupName: string,\n parameters: Profile,\n options?: NetworkExperimentProfilesCreateOrUpdateOptionalParams\n ): Promise<\n SimplePollerLike<\n OperationState<NetworkExperimentProfilesCreateOrUpdateResponse>,\n NetworkExperimentProfilesCreateOrUpdateResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<NetworkExperimentProfilesCreateOrUpdateResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: { profileName, resourceGroupName, parameters, options },\n spec: createOrUpdateOperationSpec\n });\n const poller = await createHttpPoller<\n NetworkExperimentProfilesCreateOrUpdateResponse,\n OperationState<NetworkExperimentProfilesCreateOrUpdateResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Creates an NetworkExperiment Profile\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param parameters An Network Experiment Profile\n * @param options The options parameters.\n */\n async beginCreateOrUpdateAndWait(\n profileName: string,\n resourceGroupName: string,\n parameters: Profile,\n options?: NetworkExperimentProfilesCreateOrUpdateOptionalParams\n ): Promise<NetworkExperimentProfilesCreateOrUpdateResponse> {\n const poller = await this.beginCreateOrUpdate(\n profileName,\n resourceGroupName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Updates an NetworkExperimentProfiles\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param parameters The Profile Update Model\n * @param options The options parameters.\n */\n async beginUpdate(\n resourceGroupName: string,\n profileName: string,\n parameters: ProfileUpdateModel,\n options?: NetworkExperimentProfilesUpdateOptionalParams\n ): Promise<\n SimplePollerLike<\n OperationState<NetworkExperimentProfilesUpdateResponse>,\n NetworkExperimentProfilesUpdateResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<NetworkExperimentProfilesUpdateResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: { resourceGroupName, profileName, parameters, options },\n spec: updateOperationSpec\n });\n const poller = await createHttpPoller<\n NetworkExperimentProfilesUpdateResponse,\n OperationState<NetworkExperimentProfilesUpdateResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Updates an NetworkExperimentProfiles\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param parameters The Profile Update Model\n * @param options The options parameters.\n */\n async beginUpdateAndWait(\n resourceGroupName: string,\n profileName: string,\n parameters: ProfileUpdateModel,\n options?: NetworkExperimentProfilesUpdateOptionalParams\n ): Promise<NetworkExperimentProfilesUpdateResponse> {\n const poller = await this.beginUpdate(\n resourceGroupName,\n profileName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Deletes an NetworkExperiment Profile by ProfileName\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param options The options parameters.\n */\n async beginDelete(\n resourceGroupName: string,\n profileName: string,\n options?: NetworkExperimentProfilesDeleteOptionalParams\n ): Promise<SimplePollerLike<OperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: { resourceGroupName, profileName, options },\n spec: deleteOperationSpec\n });\n const poller = await createHttpPoller<void, OperationState<void>>(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Deletes an NetworkExperiment Profile by ProfileName\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param options The options parameters.\n */\n async beginDeleteAndWait(\n resourceGroupName: string,\n profileName: string,\n options?: NetworkExperimentProfilesDeleteOptionalParams\n ): Promise<void> {\n const poller = await this.beginDelete(\n resourceGroupName,\n profileName,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * ListNext\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n private _listNext(\n nextLink: string,\n options?: NetworkExperimentProfilesListNextOptionalParams\n ): Promise<NetworkExperimentProfilesListNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listNextOperationSpec\n );\n }\n\n /**\n * ListByResourceGroupNext\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param nextLink The nextLink from the previous successful call to the ListByResourceGroup method.\n * @param options The options parameters.\n */\n private _listByResourceGroupNext(\n resourceGroupName: string,\n nextLink: string,\n options?: NetworkExperimentProfilesListByResourceGroupNextOptionalParams\n ): Promise<NetworkExperimentProfilesListByResourceGroupNextResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, nextLink, options },\n listByResourceGroupNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst listOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Network/NetworkExperimentProfiles\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ProfileList\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion2],\n urlParameters: [Parameters.$host, Parameters.subscriptionId],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listByResourceGroupOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ProfileList\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion2],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.Profile\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion2],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.profileName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.Profile\n },\n 201: {\n bodyMapper: Mappers.Profile\n },\n 202: {\n bodyMapper: Mappers.Profile\n },\n 204: {\n bodyMapper: Mappers.Profile\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n requestBody: Parameters.parameters2,\n queryParameters: [Parameters.apiVersion2],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.profileName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst updateOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}\",\n httpMethod: \"PATCH\",\n responses: {\n 200: {\n bodyMapper: Mappers.Profile\n },\n 201: {\n bodyMapper: Mappers.Profile\n },\n 202: {\n bodyMapper: Mappers.Profile\n },\n 204: {\n bodyMapper: Mappers.Profile\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n requestBody: Parameters.parameters3,\n queryParameters: [Parameters.apiVersion2],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.profileName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst deleteOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion2],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.profileName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ProfileList\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.nextLink\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listByResourceGroupNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ProfileList\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.nextLink\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport { PagedAsyncIterableIterator, PageSettings } from \"@azure/core-paging\";\nimport { setContinuationToken } from \"../pagingHelper\";\nimport { PreconfiguredEndpoints } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { FrontDoorManagementClient } from \"../frontDoorManagementClient\";\nimport {\n PreconfiguredEndpoint,\n PreconfiguredEndpointsListNextOptionalParams,\n PreconfiguredEndpointsListOptionalParams,\n PreconfiguredEndpointsListResponse,\n PreconfiguredEndpointsListNextResponse\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class containing PreconfiguredEndpoints operations. */\nexport class PreconfiguredEndpointsImpl implements PreconfiguredEndpoints {\n private readonly client: FrontDoorManagementClient;\n\n /**\n * Initialize a new instance of the class PreconfiguredEndpoints class.\n * @param client Reference to the service client\n */\n constructor(client: FrontDoorManagementClient) {\n this.client = client;\n }\n\n /**\n * Gets a list of Preconfigured Endpoints\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param options The options parameters.\n */\n public list(\n resourceGroupName: string,\n profileName: string,\n options?: PreconfiguredEndpointsListOptionalParams\n ): PagedAsyncIterableIterator<PreconfiguredEndpoint> {\n const iter = this.listPagingAll(resourceGroupName, profileName, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings?: PageSettings) => {\n if (settings?.maxPageSize) {\n throw new Error(\"maxPageSize is not supported by this operation.\");\n }\n return this.listPagingPage(\n resourceGroupName,\n profileName,\n options,\n settings\n );\n }\n };\n }\n\n private async *listPagingPage(\n resourceGroupName: string,\n profileName: string,\n options?: PreconfiguredEndpointsListOptionalParams,\n settings?: PageSettings\n ): AsyncIterableIterator<PreconfiguredEndpoint[]> {\n let result: PreconfiguredEndpointsListResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._list(resourceGroupName, profileName, options);\n let page = result.value || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listNext(\n resourceGroupName,\n profileName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n let page = result.value || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listPagingAll(\n resourceGroupName: string,\n profileName: string,\n options?: PreconfiguredEndpointsListOptionalParams\n ): AsyncIterableIterator<PreconfiguredEndpoint> {\n for await (const page of this.listPagingPage(\n resourceGroupName,\n profileName,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * Gets a list of Preconfigured Endpoints\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param options The options parameters.\n */\n private _list(\n resourceGroupName: string,\n profileName: string,\n options?: PreconfiguredEndpointsListOptionalParams\n ): Promise<PreconfiguredEndpointsListResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, profileName, options },\n listOperationSpec\n );\n }\n\n /**\n * ListNext\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n private _listNext(\n resourceGroupName: string,\n profileName: string,\n nextLink: string,\n options?: PreconfiguredEndpointsListNextOptionalParams\n ): Promise<PreconfiguredEndpointsListNextResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, profileName, nextLink, options },\n listNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst listOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}/PreconfiguredEndpoints\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.PreconfiguredEndpointList\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion2],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.profileName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.PreconfiguredEndpointList\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.nextLink,\n Parameters.profileName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport { PagedAsyncIterableIterator, PageSettings } from \"@azure/core-paging\";\nimport { setContinuationToken } from \"../pagingHelper\";\nimport { Experiments } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { FrontDoorManagementClient } from \"../frontDoorManagementClient\";\nimport {\n SimplePollerLike,\n OperationState,\n createHttpPoller\n} from \"@azure/core-lro\";\nimport { createLroSpec } from \"../lroImpl\";\nimport {\n Experiment,\n ExperimentsListByProfileNextOptionalParams,\n ExperimentsListByProfileOptionalParams,\n ExperimentsListByProfileResponse,\n ExperimentsGetOptionalParams,\n ExperimentsGetResponse,\n ExperimentsCreateOrUpdateOptionalParams,\n ExperimentsCreateOrUpdateResponse,\n ExperimentUpdateModel,\n ExperimentsUpdateOptionalParams,\n ExperimentsUpdateResponse,\n ExperimentsDeleteOptionalParams,\n ExperimentsListByProfileNextResponse\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class containing Experiments operations. */\nexport class ExperimentsImpl implements Experiments {\n private readonly client: FrontDoorManagementClient;\n\n /**\n * Initialize a new instance of the class Experiments class.\n * @param client Reference to the service client\n */\n constructor(client: FrontDoorManagementClient) {\n this.client = client;\n }\n\n /**\n * Gets a list of Experiments\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param options The options parameters.\n */\n public listByProfile(\n resourceGroupName: string,\n profileName: string,\n options?: ExperimentsListByProfileOptionalParams\n ): PagedAsyncIterableIterator<Experiment> {\n const iter = this.listByProfilePagingAll(\n resourceGroupName,\n profileName,\n options\n );\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings?: PageSettings) => {\n if (settings?.maxPageSize) {\n throw new Error(\"maxPageSize is not supported by this operation.\");\n }\n return this.listByProfilePagingPage(\n resourceGroupName,\n profileName,\n options,\n settings\n );\n }\n };\n }\n\n private async *listByProfilePagingPage(\n resourceGroupName: string,\n profileName: string,\n options?: ExperimentsListByProfileOptionalParams,\n settings?: PageSettings\n ): AsyncIterableIterator<Experiment[]> {\n let result: ExperimentsListByProfileResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listByProfile(\n resourceGroupName,\n profileName,\n options\n );\n let page = result.value || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listByProfileNext(\n resourceGroupName,\n profileName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n let page = result.value || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listByProfilePagingAll(\n resourceGroupName: string,\n profileName: string,\n options?: ExperimentsListByProfileOptionalParams\n ): AsyncIterableIterator<Experiment> {\n for await (const page of this.listByProfilePagingPage(\n resourceGroupName,\n profileName,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * Gets a list of Experiments\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param options The options parameters.\n */\n private _listByProfile(\n resourceGroupName: string,\n profileName: string,\n options?: ExperimentsListByProfileOptionalParams\n ): Promise<ExperimentsListByProfileResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, profileName, options },\n listByProfileOperationSpec\n );\n }\n\n /**\n * Gets an Experiment by ExperimentName\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param experimentName The Experiment identifier associated with the Experiment\n * @param options The options parameters.\n */\n get(\n resourceGroupName: string,\n profileName: string,\n experimentName: string,\n options?: ExperimentsGetOptionalParams\n ): Promise<ExperimentsGetResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, profileName, experimentName, options },\n getOperationSpec\n );\n }\n\n /**\n * Creates or updates an Experiment\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param experimentName The Experiment identifier associated with the Experiment\n * @param parameters The Experiment resource\n * @param options The options parameters.\n */\n async beginCreateOrUpdate(\n resourceGroupName: string,\n profileName: string,\n experimentName: string,\n parameters: Experiment,\n options?: ExperimentsCreateOrUpdateOptionalParams\n ): Promise<\n SimplePollerLike<\n OperationState<ExperimentsCreateOrUpdateResponse>,\n ExperimentsCreateOrUpdateResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<ExperimentsCreateOrUpdateResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: {\n resourceGroupName,\n profileName,\n experimentName,\n parameters,\n options\n },\n spec: createOrUpdateOperationSpec\n });\n const poller = await createHttpPoller<\n ExperimentsCreateOrUpdateResponse,\n OperationState<ExperimentsCreateOrUpdateResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Creates or updates an Experiment\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param experimentName The Experiment identifier associated with the Experiment\n * @param parameters The Experiment resource\n * @param options The options parameters.\n */\n async beginCreateOrUpdateAndWait(\n resourceGroupName: string,\n profileName: string,\n experimentName: string,\n parameters: Experiment,\n options?: ExperimentsCreateOrUpdateOptionalParams\n ): Promise<ExperimentsCreateOrUpdateResponse> {\n const poller = await this.beginCreateOrUpdate(\n resourceGroupName,\n profileName,\n experimentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Updates an Experiment\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param experimentName The Experiment identifier associated with the Experiment\n * @param parameters The Experiment Update Model\n * @param options The options parameters.\n */\n async beginUpdate(\n resourceGroupName: string,\n profileName: string,\n experimentName: string,\n parameters: ExperimentUpdateModel,\n options?: ExperimentsUpdateOptionalParams\n ): Promise<\n SimplePollerLike<\n OperationState<ExperimentsUpdateResponse>,\n ExperimentsUpdateResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<ExperimentsUpdateResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: {\n resourceGroupName,\n profileName,\n experimentName,\n parameters,\n options\n },\n spec: updateOperationSpec\n });\n const poller = await createHttpPoller<\n ExperimentsUpdateResponse,\n OperationState<ExperimentsUpdateResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Updates an Experiment\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param experimentName The Experiment identifier associated with the Experiment\n * @param parameters The Experiment Update Model\n * @param options The options parameters.\n */\n async beginUpdateAndWait(\n resourceGroupName: string,\n profileName: string,\n experimentName: string,\n parameters: ExperimentUpdateModel,\n options?: ExperimentsUpdateOptionalParams\n ): Promise<ExperimentsUpdateResponse> {\n const poller = await this.beginUpdate(\n resourceGroupName,\n profileName,\n experimentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Deletes an Experiment\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param experimentName The Experiment identifier associated with the Experiment\n * @param options The options parameters.\n */\n async beginDelete(\n resourceGroupName: string,\n profileName: string,\n experimentName: string,\n options?: ExperimentsDeleteOptionalParams\n ): Promise<SimplePollerLike<OperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: { resourceGroupName, profileName, experimentName, options },\n spec: deleteOperationSpec\n });\n const poller = await createHttpPoller<void, OperationState<void>>(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Deletes an Experiment\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param experimentName The Experiment identifier associated with the Experiment\n * @param options The options parameters.\n */\n async beginDeleteAndWait(\n resourceGroupName: string,\n profileName: string,\n experimentName: string,\n options?: ExperimentsDeleteOptionalParams\n ): Promise<void> {\n const poller = await this.beginDelete(\n resourceGroupName,\n profileName,\n experimentName,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * ListByProfileNext\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param nextLink The nextLink from the previous successful call to the ListByProfile method.\n * @param options The options parameters.\n */\n private _listByProfileNext(\n resourceGroupName: string,\n profileName: string,\n nextLink: string,\n options?: ExperimentsListByProfileNextOptionalParams\n ): Promise<ExperimentsListByProfileNextResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, profileName, nextLink, options },\n listByProfileNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst listByProfileOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}/Experiments\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ExperimentList\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion2],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.profileName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}/Experiments/{experimentName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.Experiment\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion2],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.profileName,\n Parameters.experimentName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}/Experiments/{experimentName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.Experiment\n },\n 201: {\n bodyMapper: Mappers.Experiment\n },\n 202: {\n bodyMapper: Mappers.Experiment\n },\n 204: {\n bodyMapper: Mappers.Experiment\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n requestBody: Parameters.parameters4,\n queryParameters: [Parameters.apiVersion2],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.profileName,\n Parameters.experimentName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst updateOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}/Experiments/{experimentName}\",\n httpMethod: \"PATCH\",\n responses: {\n 200: {\n bodyMapper: Mappers.Experiment\n },\n 201: {\n bodyMapper: Mappers.Experiment\n },\n 202: {\n bodyMapper: Mappers.Experiment\n },\n 204: {\n bodyMapper: Mappers.Experiment\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n requestBody: Parameters.parameters5,\n queryParameters: [Parameters.apiVersion2],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.profileName,\n Parameters.experimentName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst deleteOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}/Experiments/{experimentName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion2],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.profileName,\n Parameters.experimentName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listByProfileNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ExperimentList\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.nextLink,\n Parameters.profileName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport { Reports } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { FrontDoorManagementClient } from \"../frontDoorManagementClient\";\nimport {\n LatencyScorecardAggregationInterval,\n ReportsGetLatencyScorecardsOptionalParams,\n ReportsGetLatencyScorecardsResponse,\n TimeseriesAggregationInterval,\n TimeseriesType,\n ReportsGetTimeseriesOptionalParams,\n ReportsGetTimeseriesResponse\n} from \"../models\";\n\n/** Class containing Reports operations. */\nexport class ReportsImpl implements Reports {\n private readonly client: FrontDoorManagementClient;\n\n /**\n * Initialize a new instance of the class Reports class.\n * @param client Reference to the service client\n */\n constructor(client: FrontDoorManagementClient) {\n this.client = client;\n }\n\n /**\n * Gets a Latency Scorecard for a given Experiment\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param experimentName The Experiment identifier associated with the Experiment\n * @param aggregationInterval The aggregation interval of the Latency Scorecard\n * @param options The options parameters.\n */\n getLatencyScorecards(\n resourceGroupName: string,\n profileName: string,\n experimentName: string,\n aggregationInterval: LatencyScorecardAggregationInterval,\n options?: ReportsGetLatencyScorecardsOptionalParams\n ): Promise<ReportsGetLatencyScorecardsResponse> {\n return this.client.sendOperationRequest(\n {\n resourceGroupName,\n profileName,\n experimentName,\n aggregationInterval,\n options\n },\n getLatencyScorecardsOperationSpec\n );\n }\n\n /**\n * Gets a Timeseries for a given Experiment\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param experimentName The Experiment identifier associated with the Experiment\n * @param startDateTimeUTC The start DateTime of the Timeseries in UTC\n * @param endDateTimeUTC The end DateTime of the Timeseries in UTC\n * @param aggregationInterval The aggregation interval of the Timeseries\n * @param timeseriesType The type of Timeseries\n * @param options The options parameters.\n */\n getTimeseries(\n resourceGroupName: string,\n profileName: string,\n experimentName: string,\n startDateTimeUTC: Date,\n endDateTimeUTC: Date,\n aggregationInterval: TimeseriesAggregationInterval,\n timeseriesType: TimeseriesType,\n options?: ReportsGetTimeseriesOptionalParams\n ): Promise<ReportsGetTimeseriesResponse> {\n return this.client.sendOperationRequest(\n {\n resourceGroupName,\n profileName,\n experimentName,\n startDateTimeUTC,\n endDateTimeUTC,\n aggregationInterval,\n timeseriesType,\n options\n },\n getTimeseriesOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst getLatencyScorecardsOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}/Experiments/{experimentName}/LatencyScorecard\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.LatencyScorecard\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [\n Parameters.apiVersion2,\n Parameters.endDateTimeUTC,\n Parameters.country,\n Parameters.aggregationInterval\n ],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.profileName,\n Parameters.experimentName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getTimeseriesOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}/Experiments/{experimentName}/Timeseries\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.Timeseries\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [\n Parameters.apiVersion2,\n Parameters.country,\n Parameters.startDateTimeUTC,\n Parameters.endDateTimeUTC1,\n Parameters.aggregationInterval1,\n Parameters.timeseriesType,\n Parameters.endpoint\n ],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.profileName,\n Parameters.experimentName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport * as coreClient from \"@azure/core-client\";\nimport * as coreRestPipeline from \"@azure/core-rest-pipeline\";\nimport * as coreAuth from \"@azure/core-auth\";\nimport {\n PoliciesImpl,\n ManagedRuleSetsImpl,\n FrontDoorNameAvailabilityImpl,\n FrontDoorNameAvailabilityWithSubscriptionImpl,\n FrontDoorsImpl,\n FrontendEndpointsImpl,\n EndpointsImpl,\n RulesEnginesImpl,\n NetworkExperimentProfilesImpl,\n PreconfiguredEndpointsImpl,\n ExperimentsImpl,\n ReportsImpl\n} from \"./operations\";\nimport {\n Policies,\n ManagedRuleSets,\n FrontDoorNameAvailability,\n FrontDoorNameAvailabilityWithSubscription,\n FrontDoors,\n FrontendEndpoints,\n Endpoints,\n RulesEngines,\n NetworkExperimentProfiles,\n PreconfiguredEndpoints,\n Experiments,\n Reports\n} from \"./operationsInterfaces\";\nimport { FrontDoorManagementClientOptionalParams } from \"./models\";\n\nexport class FrontDoorManagementClient extends coreClient.ServiceClient {\n $host: string;\n subscriptionId: string;\n\n /**\n * Initializes a new instance of the FrontDoorManagementClient class.\n * @param credentials Subscription credentials which uniquely identify client subscription.\n * @param subscriptionId The subscription credentials which uniquely identify the Microsoft Azure\n * subscription. The subscription ID forms part of the URI for every service call.\n * @param options The parameter options\n */\n constructor(\n credentials: coreAuth.TokenCredential,\n subscriptionId: string,\n options?: FrontDoorManagementClientOptionalParams\n ) {\n if (credentials === undefined) {\n throw new Error(\"'credentials' cannot be null\");\n }\n if (subscriptionId === undefined) {\n throw new Error(\"'subscriptionId' cannot be null\");\n }\n\n // Initializing default values for options\n if (!options) {\n options = {};\n }\n const defaults: FrontDoorManagementClientOptionalParams = {\n requestContentType: \"application/json; charset=utf-8\",\n credential: credentials\n };\n\n const packageDetails = `azsdk-js-arm-frontdoor/5.2.0`;\n const userAgentPrefix =\n options.userAgentOptions && options.userAgentOptions.userAgentPrefix\n ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}`\n : `${packageDetails}`;\n\n const optionsWithDefaults = {\n ...defaults,\n ...options,\n userAgentOptions: {\n userAgentPrefix\n },\n endpoint:\n options.endpoint ?? options.baseUri ?? \"https://management.azure.com\"\n };\n super(optionsWithDefaults);\n\n let bearerTokenAuthenticationPolicyFound: boolean = false;\n if (options?.pipeline && options.pipeline.getOrderedPolicies().length > 0) {\n const pipelinePolicies: coreRestPipeline.PipelinePolicy[] = options.pipeline.getOrderedPolicies();\n bearerTokenAuthenticationPolicyFound = pipelinePolicies.some(\n (pipelinePolicy) =>\n pipelinePolicy.name ===\n coreRestPipeline.bearerTokenAuthenticationPolicyName\n );\n }\n if (\n !options ||\n !options.pipeline ||\n options.pipeline.getOrderedPolicies().length == 0 ||\n !bearerTokenAuthenticationPolicyFound\n ) {\n this.pipeline.removePolicy({\n name: coreRestPipeline.bearerTokenAuthenticationPolicyName\n });\n this.pipeline.addPolicy(\n coreRestPipeline.bearerTokenAuthenticationPolicy({\n credential: credentials,\n scopes:\n optionsWithDefaults.credentialScopes ??\n `${optionsWithDefaults.endpoint}/.default`,\n challengeCallbacks: {\n authorizeRequestOnChallenge:\n coreClient.authorizeRequestOnClaimChallenge\n }\n })\n );\n }\n // Parameter assignments\n this.subscriptionId = subscriptionId;\n\n // Assigning values to Constant parameters\n this.$host = options.$host || \"https://management.azure.com\";\n this.policies = new PoliciesImpl(this);\n this.managedRuleSets = new ManagedRuleSetsImpl(this);\n this.frontDoorNameAvailability = new FrontDoorNameAvailabilityImpl(this);\n this.frontDoorNameAvailabilityWithSubscription = new FrontDoorNameAvailabilityWithSubscriptionImpl(\n this\n );\n this.frontDoors = new FrontDoorsImpl(this);\n this.frontendEndpoints = new FrontendEndpointsImpl(this);\n this.endpoints = new EndpointsImpl(this);\n this.rulesEngines = new RulesEnginesImpl(this);\n this.networkExperimentProfiles = new NetworkExperimentProfilesImpl(this);\n this.preconfiguredEndpoints = new PreconfiguredEndpointsImpl(this);\n this.experiments = new ExperimentsImpl(this);\n this.reports = new ReportsImpl(this);\n }\n\n policies: Policies;\n managedRuleSets: ManagedRuleSets;\n frontDoorNameAvailability: FrontDoorNameAvailability;\n frontDoorNameAvailabilityWithSubscription: FrontDoorNameAvailabilityWithSubscription;\n frontDoors: FrontDoors;\n frontendEndpoints: FrontendEndpoints;\n endpoints: Endpoints;\n rulesEngines: RulesEngines;\n networkExperimentProfiles: NetworkExperimentProfiles;\n preconfiguredEndpoints: PreconfiguredEndpoints;\n experiments: Experiments;\n reports: Reports;\n}\n"],"names":["KnownPolicyEnabledState","KnownPolicyMode","KnownPolicyRequestBodyCheck","KnownCustomRuleEnabledState","KnownRuleType","KnownMatchVariable","KnownOperator","KnownTransformType","KnownActionType","KnownManagedRuleSetActionType","KnownManagedRuleExclusionMatchVariable","KnownManagedRuleExclusionSelectorMatchOperator","KnownManagedRuleEnabledState","KnownPolicyResourceState","KnownSkuName","KnownAvailability","KnownFrontDoorResourceState","KnownHeaderActionType","KnownRulesEngineMatchVariable","KnownRulesEngineOperator","KnownTransform","KnownMatchProcessingBehavior","KnownFrontDoorProtocol","KnownRoutingRuleEnabledState","KnownFrontDoorHealthProbeMethod","KnownHealthProbeEnabled","KnownPrivateEndpointStatus","KnownBackendEnabledState","KnownCustomHttpsProvisioningState","KnownCustomHttpsProvisioningSubstate","KnownFrontDoorCertificateSource","KnownFrontDoorTlsProtocolType","KnownMinimumTLSVersion","KnownFrontDoorCertificateType","KnownSessionAffinityEnabledState","KnownEnforceCertificateNameCheckEnabledState","KnownFrontDoorEnabledState","KnownNetworkExperimentResourceState","KnownState","KnownEndpointType","KnownLatencyScorecardAggregationInterval","KnownTimeseriesAggregationInterval","KnownTimeseriesType","KnownAggregationInterval","KnownNetworkOperationStatus","KnownFrontDoorForwardingProtocol","KnownFrontDoorQuery","KnownDynamicCompressionEnabled","KnownFrontDoorRedirectType","KnownFrontDoorRedirectProtocol","WebApplicationFirewallPolicyMapper","TagsObjectMapper","CheckNameAvailabilityInputMapper","FrontDoorMapper","ValidateCustomDomainInputMapper","CustomHttpsConfigurationMapper","PurgeParametersMapper","RulesEngineMapper","ProfileMapper","ProfileUpdateModelMapper","ExperimentMapper","ExperimentUpdateModelMapper","__rest","__await","__asyncValues","__asyncDelegator","listOperationSpec","getOperationSpec","__awaiter","createOrUpdateOperationSpec","createHttpPoller","updateOperationSpec","deleteOperationSpec","listNextOperationSpec","serializer","coreClient","Mappers.WebApplicationFirewallPolicyList","Mappers.ErrorResponse","Parameters.apiVersion","Parameters.$host","Parameters.resourceGroupName","Parameters.subscriptionId","Parameters.accept","Mappers.DefaultErrorResponse","Mappers.WebApplicationFirewallPolicy","Parameters.policyName","Parameters.parameters","Parameters.contentType","Parameters.parameters1","Parameters.nextLink","Mappers.ManagedRuleSetDefinitionList","checkOperationSpec","Mappers.CheckNameAvailabilityOutput","Parameters.checkFrontDoorNameAvailabilityInput","Parameters.apiVersion1","listByResourceGroupOperationSpec","listByResourceGroupNextOperationSpec","Mappers.FrontDoorListResult","Mappers.FrontDoor","Parameters.frontDoorName","Parameters.frontDoorParameters","Mappers.ValidateCustomDomainOutput","Parameters.customDomainProperties","listByFrontDoorOperationSpec","listByFrontDoorNextOperationSpec","Mappers.FrontendEndpointsListResult","Mappers.FrontendEndpoint","Parameters.frontendEndpointName","Parameters.customHttpsConfiguration","Parameters.contentFilePaths","Mappers.RulesEngineListResult","Mappers.RulesEngine","Parameters.rulesEngineName","Parameters.rulesEngineParameters","Mappers.ProfileList","Parameters.apiVersion2","Mappers.Profile","Parameters.profileName","Parameters.parameters2","Parameters.parameters3","Mappers.PreconfiguredEndpointList","Mappers.ExperimentList","Mappers.Experiment","Parameters.experimentName","Parameters.parameters4","Parameters.parameters5","Mappers.LatencyScorecard","Parameters.endDateTimeUTC","Parameters.country","Parameters.aggregationInterval","Mappers.Timeseries","Parameters.startDateTimeUTC","Parameters.endDateTimeUTC1","Parameters.aggregationInterval1","Parameters.timeseriesType","Parameters.endpoint","coreRestPipeline"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../src/pagingHelper.ts","../src/models/index.ts","../src/models/mappers.ts","../src/models/parameters.ts","../src/lroImpl.ts","../src/operations/policies.ts","../src/operations/managedRuleSets.ts","../src/operations/frontDoorNameAvailability.ts","../src/operations/frontDoorNameAvailabilityWithSubscription.ts","../src/operations/frontDoors.ts","../src/operations/frontendEndpoints.ts","../src/operations/endpoints.ts","../src/operations/rulesEngines.ts","../src/operations/networkExperimentProfiles.ts","../src/operations/preconfiguredEndpoints.ts","../src/operations/experiments.ts","../src/operations/reports.ts","../src/frontDoorManagementClient.ts"],"sourcesContent":["/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nexport interface PageInfo {\n continuationToken?: string;\n}\n\nconst pageMap = new WeakMap<object, PageInfo>();\n\n/**\n * Given the last `.value` produced by the `byPage` iterator,\n * returns a continuation token that can be used to begin paging from\n * that point later.\n * @param page An object from accessing `value` on the IteratorResult from a `byPage` iterator.\n * @returns The continuation token that can be passed into byPage() during future calls.\n */\nexport function getContinuationToken(page: unknown): string | undefined {\n if (typeof page !== \"object\" || page === null) {\n return undefined;\n }\n return pageMap.get(page)?.continuationToken;\n}\n\nexport function setContinuationToken(\n page: unknown,\n continuationToken: string | undefined\n): void {\n if (typeof page !== \"object\" || page === null || !continuationToken) {\n return;\n }\n const pageInfo = pageMap.get(page) ?? {};\n pageInfo.continuationToken = continuationToken;\n pageMap.set(page, pageInfo);\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport * as coreClient from \"@azure/core-client\";\n\nexport type RouteConfigurationUnion =\n | RouteConfiguration\n | ForwardingConfiguration\n | RedirectConfiguration;\n\n/** Defines a list of WebApplicationFirewallPolicies. It contains a list of WebApplicationFirewallPolicy objects and a URL link to get the next set of results. */\nexport interface WebApplicationFirewallPolicyList {\n /**\n * List of WebApplicationFirewallPolicies within a resource group.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly value?: WebApplicationFirewallPolicy[];\n /** URL to get the next set of WebApplicationFirewallPolicy objects if there are any. */\n nextLink?: string;\n}\n\n/** Defines top-level WebApplicationFirewallPolicy configuration settings. */\nexport interface PolicySettings {\n /** Describes if the policy is in enabled or disabled state. Defaults to Enabled if not specified. */\n enabledState?: PolicyEnabledState;\n /** Describes if it is in detection mode or prevention mode at policy level. */\n mode?: PolicyMode;\n /** If action type is redirect, this field represents redirect URL for the client. */\n redirectUrl?: string;\n /** If the action type is block, customer can override the response status code. */\n customBlockResponseStatusCode?: number;\n /** If the action type is block, customer can override the response body. The body must be specified in base64 encoding. */\n customBlockResponseBody?: string;\n /** Describes if policy managed rules will inspect the request body content. */\n requestBodyCheck?: PolicyRequestBodyCheck;\n}\n\n/** Defines contents of custom rules */\nexport interface CustomRuleList {\n /** List of rules */\n rules?: CustomRule[];\n}\n\n/** Defines contents of a web application rule */\nexport interface CustomRule {\n /** Describes the name of the rule. */\n name?: string;\n /** Describes priority of the rule. Rules with a lower value will be evaluated before rules with a higher value. */\n priority: number;\n /** Describes if the custom rule is in enabled or disabled state. Defaults to Enabled if not specified. */\n enabledState?: CustomRuleEnabledState;\n /** Describes type of rule. */\n ruleType: RuleType;\n /** Time window for resetting the rate limit count. Default is 1 minute. */\n rateLimitDurationInMinutes?: number;\n /** Number of allowed requests per client within the time window. */\n rateLimitThreshold?: number;\n /** List of match conditions. */\n matchConditions: MatchCondition[];\n /** Describes what action to be applied when rule matches. */\n action: ActionType;\n}\n\n/** Define a match condition. */\nexport interface MatchCondition {\n /** Request variable to compare with. */\n matchVariable: MatchVariable;\n /** Match against a specific key from the QueryString, PostArgs, RequestHeader or Cookies variables. Default is null. */\n selector?: string;\n /** Comparison type to use for matching with the variable value. */\n operator: Operator;\n /** Describes if the result of this condition should be negated. */\n negateCondition?: boolean;\n /** List of possible match values. */\n matchValue: string[];\n /** List of transforms. */\n transforms?: TransformType[];\n}\n\n/** Defines the list of managed rule sets for the policy. */\nexport interface ManagedRuleSetList {\n /** List of rule sets. */\n managedRuleSets?: ManagedRuleSet[];\n}\n\n/** Defines a managed rule set. */\nexport interface ManagedRuleSet {\n /** Defines the rule set type to use. */\n ruleSetType: string;\n /** Defines the version of the rule set to use. */\n ruleSetVersion: string;\n /** Defines the rule set action. */\n ruleSetAction?: ManagedRuleSetActionType;\n /** Describes the exclusions that are applied to all rules in the set. */\n exclusions?: ManagedRuleExclusion[];\n /** Defines the rule group overrides to apply to the rule set. */\n ruleGroupOverrides?: ManagedRuleGroupOverride[];\n}\n\n/** Exclude variables from managed rule evaluation. */\nexport interface ManagedRuleExclusion {\n /** The variable type to be excluded. */\n matchVariable: ManagedRuleExclusionMatchVariable;\n /** Comparison operator to apply to the selector when specifying which elements in the collection this exclusion applies to. */\n selectorMatchOperator: ManagedRuleExclusionSelectorMatchOperator;\n /** Selector value for which elements in the collection this exclusion applies to. */\n selector: string;\n}\n\n/** Defines a managed rule group override setting. */\nexport interface ManagedRuleGroupOverride {\n /** Describes the managed rule group to override. */\n ruleGroupName: string;\n /** Describes the exclusions that are applied to all rules in the group. */\n exclusions?: ManagedRuleExclusion[];\n /** List of rules that will be disabled. If none specified, all rules in the group will be disabled. */\n rules?: ManagedRuleOverride[];\n}\n\n/** Defines a managed rule group override setting. */\nexport interface ManagedRuleOverride {\n /** Identifier for the managed rule. */\n ruleId: string;\n /** Describes if the managed rule is in enabled or disabled state. Defaults to Disabled if not specified. */\n enabledState?: ManagedRuleEnabledState;\n /** Describes the override action to be applied when rule matches. */\n action?: ActionType;\n /** Describes the exclusions that are applied to this specific rule. */\n exclusions?: ManagedRuleExclusion[];\n}\n\n/** Defines the Resource ID for a Frontend Endpoint. */\nexport interface FrontendEndpointLink {\n /** Resource ID. */\n id?: string;\n}\n\n/** Defines the Resource ID for a Routing Rule. */\nexport interface RoutingRuleLink {\n /** Resource ID. */\n id?: string;\n}\n\n/** Defines the Resource ID for a Security Policy. */\nexport interface SecurityPolicyLink {\n /** Resource ID. */\n id?: string;\n}\n\n/** The pricing tier of the web application firewall policy. */\nexport interface Sku {\n /** Name of the pricing tier. */\n name?: SkuName;\n}\n\n/** Common resource representation. */\nexport interface Resource {\n /**\n * Resource ID.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly id?: string;\n /**\n * Resource name.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly name?: string;\n /**\n * Resource type.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly type?: string;\n /** Resource location. */\n location?: string;\n /** Resource tags. */\n tags?: { [propertyName: string]: string };\n}\n\n/** Error response indicates Front Door service is not able to process the incoming request. The reason is provided in the error message. */\nexport interface ErrorResponse {\n /**\n * Error code.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly code?: string;\n /**\n * Error message indicating why the operation failed.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly message?: string;\n}\n\n/** Error response indicates Front Door service is not able to process the incoming request. The reason is provided in the error message. */\nexport interface DefaultErrorResponse {\n /** Error model. */\n error?: DefaultErrorResponseError;\n}\n\n/** Error model. */\nexport interface DefaultErrorResponseError {\n /**\n * Error code.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly code?: string;\n /**\n * Error message indicating why the operation failed.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly message?: string;\n}\n\n/** Tags object for patch operations. */\nexport interface TagsObject {\n /** Resource tags. */\n tags?: { [propertyName: string]: string };\n}\n\n/** List of managed rule set definitions available for use in a policy. */\nexport interface ManagedRuleSetDefinitionList {\n /**\n * List of managed rule set definitions.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly value?: ManagedRuleSetDefinition[];\n /** URL to retrieve next set of managed rule set definitions. */\n nextLink?: string;\n}\n\n/** Describes a managed rule group. */\nexport interface ManagedRuleGroupDefinition {\n /**\n * Name of the managed rule group.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly ruleGroupName?: string;\n /**\n * Description of the managed rule group.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly description?: string;\n /**\n * List of rules within the managed rule group.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly rules?: ManagedRuleDefinition[];\n}\n\n/** Describes a managed rule definition. */\nexport interface ManagedRuleDefinition {\n /**\n * Identifier for the managed rule.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly ruleId?: string;\n /**\n * Describes the default state for the managed rule.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly defaultState?: ManagedRuleEnabledState;\n /**\n * Describes the default action to be applied when the managed rule matches.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly defaultAction?: ActionType;\n /**\n * Describes the functionality of the managed rule.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly description?: string;\n}\n\n/** Input of CheckNameAvailability API. */\nexport interface CheckNameAvailabilityInput {\n /** The resource name to validate. */\n name: string;\n /** The type of the resource whose name is to be validated. */\n type: ResourceType;\n}\n\n/** Output of check name availability API. */\nexport interface CheckNameAvailabilityOutput {\n /**\n * Indicates whether the name is available.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly nameAvailability?: Availability;\n /**\n * The reason why the name is not available.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly reason?: string;\n /**\n * The detailed error message describing why the name is not available.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly message?: string;\n}\n\n/** Result of the request to list Front Doors. It contains a list of Front Door objects and a URL link to get the next set of results. */\nexport interface FrontDoorListResult {\n /**\n * List of Front Doors within a resource group.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly value?: FrontDoor[];\n /** URL to get the next set of Front Door objects if there are any. */\n nextLink?: string;\n}\n\n/** A rules engine configuration containing a list of rules that will run to modify the runtime behavior of the request and response. */\nexport interface RulesEngine {\n /**\n * Resource name.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly name?: string;\n /**\n * Resource type.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly type?: string;\n /**\n * Resource ID.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly id?: string;\n /** A list of rules that define a particular Rules Engine Configuration. */\n rules?: RulesEngineRule[];\n /**\n * Resource status.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: FrontDoorResourceState;\n}\n\n/** Rules Engine Configuration to apply to a Routing Rule. */\nexport interface RulesEngineUpdateParameters {\n /** A list of rules that define a particular Rules Engine Configuration. */\n rules?: RulesEngineRule[];\n}\n\n/** Contains a list of match conditions, and an action on how to modify the request/response. If multiple rules match, the actions from one rule that conflict with a previous rule overwrite for a singular action, or append in the case of headers manipulation. */\nexport interface RulesEngineRule {\n /** A name to refer to this specific rule. */\n name: string;\n /** A priority assigned to this rule. */\n priority: number;\n /** Actions to perform on the request and response if all of the match conditions are met. */\n action: RulesEngineAction;\n /** A list of match conditions that must meet in order for the actions of this rule to run. Having no match conditions means the actions will always run. */\n matchConditions?: RulesEngineMatchCondition[];\n /** If this rule is a match should the rules engine continue running the remaining rules or stop. If not present, defaults to Continue. */\n matchProcessingBehavior?: MatchProcessingBehavior;\n}\n\n/** One or more actions that will execute, modifying the request and/or response. */\nexport interface RulesEngineAction {\n /** A list of header actions to apply from the request from AFD to the origin. */\n requestHeaderActions?: HeaderAction[];\n /** A list of header actions to apply from the response from AFD to the client. */\n responseHeaderActions?: HeaderAction[];\n /** Override the route configuration. */\n routeConfigurationOverride?: RouteConfigurationUnion;\n}\n\n/** An action that can manipulate an http header. */\nexport interface HeaderAction {\n /** Which type of manipulation to apply to the header. */\n headerActionType: HeaderActionType;\n /** The name of the header this action will apply to. */\n headerName: string;\n /** The value to update the given header name with. This value is not used if the actionType is Delete. */\n value?: string;\n}\n\n/** Base class for all types of Route. */\nexport interface RouteConfiguration {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odataType:\n | \"#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration\"\n | \"#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration\";\n}\n\n/** Define a match condition */\nexport interface RulesEngineMatchCondition {\n /** Match Variable */\n rulesEngineMatchVariable: RulesEngineMatchVariable;\n /** Name of selector in RequestHeader or RequestBody to be matched */\n selector?: string;\n /** Describes operator to apply to the match condition. */\n rulesEngineOperator: RulesEngineOperator;\n /** Describes if this is negate condition or not */\n negateCondition?: boolean;\n /** Match values to match against. The operator will apply to each value in here with OR semantics. If any of them match the variable with the given operator this match condition is considered a match. */\n rulesEngineMatchValue: string[];\n /** List of transforms */\n transforms?: Transform[];\n}\n\n/** The properties needed to update a Front Door */\nexport interface FrontDoorUpdateParameters {\n /** A friendly name for the frontDoor */\n friendlyName?: string;\n /** Routing rules associated with this Front Door. */\n routingRules?: RoutingRule[];\n /** Load balancing settings associated with this Front Door instance. */\n loadBalancingSettings?: LoadBalancingSettingsModel[];\n /** Health probe settings associated with this Front Door instance. */\n healthProbeSettings?: HealthProbeSettingsModel[];\n /** Backend pools available to routing rules. */\n backendPools?: BackendPool[];\n /** Frontend endpoints available to routing rules. */\n frontendEndpoints?: FrontendEndpoint[];\n /** Settings for all backendPools */\n backendPoolsSettings?: BackendPoolsSettings;\n /** Operational status of the Front Door load balancer. Permitted values are 'Enabled' or 'Disabled' */\n enabledState?: FrontDoorEnabledState;\n}\n\n/** Routing rules to apply to an endpoint */\nexport interface RoutingRuleUpdateParameters {\n /** Frontend endpoints associated with this rule */\n frontendEndpoints?: SubResource[];\n /** Protocol schemes to match for this rule */\n acceptedProtocols?: FrontDoorProtocol[];\n /** The route patterns of the rule. */\n patternsToMatch?: string[];\n /** Whether to enable use of this rule. Permitted values are 'Enabled' or 'Disabled' */\n enabledState?: RoutingRuleEnabledState;\n /** A reference to the routing configuration. */\n routeConfiguration?: RouteConfigurationUnion;\n /** A reference to a specific Rules Engine Configuration to apply to this route. */\n rulesEngine?: SubResource;\n /** Defines the Web Application Firewall policy for each routing rule (if applicable) */\n webApplicationFirewallPolicyLink?: RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink;\n}\n\n/** Reference to another subresource. */\nexport interface SubResource {\n /** Resource ID. */\n id?: string;\n}\n\n/** Defines the Web Application Firewall policy for each routing rule (if applicable) */\nexport interface RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink {\n /** Resource ID. */\n id?: string;\n}\n\n/** Round-Robin load balancing settings for a backend pool */\nexport interface LoadBalancingSettingsUpdateParameters {\n /** The number of samples to consider for load balancing decisions */\n sampleSize?: number;\n /** The number of samples within the sample period that must succeed */\n successfulSamplesRequired?: number;\n /** The additional latency in milliseconds for probes to fall into the lowest latency bucket */\n additionalLatencyMilliseconds?: number;\n}\n\n/** L7 health probe settings for a backend pool */\nexport interface HealthProbeSettingsUpdateParameters {\n /** The path to use for the health probe. Default is / */\n path?: string;\n /** Protocol scheme to use for this probe */\n protocol?: FrontDoorProtocol;\n /** The number of seconds between health probes. */\n intervalInSeconds?: number;\n /** Configures which HTTP method to use to probe the backends defined under backendPools. */\n healthProbeMethod?: FrontDoorHealthProbeMethod;\n /** Whether to enable health probes to be made against backends defined under backendPools. Health probes can only be disabled if there is a single enabled backend in single enabled backend pool. */\n enabledState?: HealthProbeEnabled;\n}\n\n/** A collection of backends that can be routed to. */\nexport interface BackendPoolUpdateParameters {\n /** The set of backends for this pool */\n backends?: Backend[];\n /** Load balancing settings for a backend pool */\n loadBalancingSettings?: SubResource;\n /** L7 health probe settings for a backend pool */\n healthProbeSettings?: SubResource;\n}\n\n/** Backend address of a frontDoor load balancer. */\nexport interface Backend {\n /** Location of the backend (IP address or FQDN) */\n address?: string;\n /** The Alias of the Private Link resource. Populating this optional field indicates that this backend is 'Private' */\n privateLinkAlias?: string;\n /** The Resource Id of the Private Link resource. Populating this optional field indicates that this backend is 'Private' */\n privateLinkResourceId?: string;\n /** The location of the Private Link resource. Required only if 'privateLinkResourceId' is populated */\n privateLinkLocation?: string;\n /**\n * The Approval status for the connection to the Private Link\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly privateEndpointStatus?: PrivateEndpointStatus;\n /** A custom message to be included in the approval request to connect to the Private Link */\n privateLinkApprovalMessage?: string;\n /** The HTTP TCP port number. Must be between 1 and 65535. */\n httpPort?: number;\n /** The HTTPS TCP port number. Must be between 1 and 65535. */\n httpsPort?: number;\n /** Whether to enable use of this backend. Permitted values are 'Enabled' or 'Disabled' */\n enabledState?: BackendEnabledState;\n /** Priority to use for load balancing. Higher priorities will not be used for load balancing if any lower priority backend is healthy. */\n priority?: number;\n /** Weight of this endpoint for load balancing purposes. */\n weight?: number;\n /** The value to use as the host header sent to the backend. If blank or unspecified, this defaults to the incoming host. */\n backendHostHeader?: string;\n}\n\n/** Https settings for a domain */\nexport interface CustomHttpsConfiguration {\n /** Defines the source of the SSL certificate */\n certificateSource: FrontDoorCertificateSource;\n /** Defines the TLS extension protocol that is used for secure delivery */\n protocolType: FrontDoorTlsProtocolType;\n /** The minimum TLS version required from the clients to establish an SSL handshake with Front Door. */\n minimumTlsVersion: MinimumTLSVersion;\n /** Defines the type of the certificate used for secure connections to a frontendEndpoint */\n certificateType?: FrontDoorCertificateType;\n /** The Key Vault containing the SSL certificate */\n vault?: KeyVaultCertificateSourceParametersVault;\n /** The name of the Key Vault secret representing the full certificate PFX */\n secretName?: string;\n /** The version of the Key Vault secret representing the full certificate PFX */\n secretVersion?: string;\n}\n\n/** The Key Vault containing the SSL certificate */\nexport interface KeyVaultCertificateSourceParametersVault {\n /** Resource ID. */\n id?: string;\n}\n\n/** Frontend endpoint used in routing rule */\nexport interface FrontendEndpointUpdateParameters {\n /** The host name of the frontendEndpoint. Must be a domain name. */\n hostName?: string;\n /** Whether to allow session affinity on this host. Valid options are 'Enabled' or 'Disabled' */\n sessionAffinityEnabledState?: SessionAffinityEnabledState;\n /** UNUSED. This field will be ignored. The TTL to use in seconds for session affinity, if applicable. */\n sessionAffinityTtlSeconds?: number;\n /** Defines the Web Application Firewall policy for each host (if applicable) */\n webApplicationFirewallPolicyLink?: FrontendEndpointUpdateParametersWebApplicationFirewallPolicyLink;\n}\n\n/** Defines the Web Application Firewall policy for each host (if applicable) */\nexport interface FrontendEndpointUpdateParametersWebApplicationFirewallPolicyLink {\n /** Resource ID. */\n id?: string;\n}\n\n/** Settings that apply to all backend pools. */\nexport interface BackendPoolsSettings {\n /** Whether to enforce certificate name check on HTTPS requests to all backend pools. No effect on non-HTTPS requests. */\n enforceCertificateNameCheck?: EnforceCertificateNameCheckEnabledState;\n /** Send and receive timeout on forwarding request to the backend. When timeout is reached, the request fails and returns. */\n sendRecvTimeoutSeconds?: number;\n}\n\n/** Result of the request to list frontend endpoints. It contains a list of Frontend endpoint objects and a URL link to get the next set of results. */\nexport interface FrontendEndpointsListResult {\n /**\n * List of Frontend endpoints within a Front Door.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly value?: FrontendEndpoint[];\n /** URL to get the next set of frontend endpoints if there are any. */\n nextLink?: string;\n}\n\n/** Parameters required for content purge. */\nexport interface PurgeParameters {\n /** The path to the content to be purged. Can describe a file path or a wild card directory. */\n contentPaths: string[];\n}\n\n/** Input of the custom domain to be validated for DNS mapping. */\nexport interface ValidateCustomDomainInput {\n /** The host name of the custom domain. Must be a domain name. */\n hostName: string;\n}\n\n/** Output of custom domain validation. */\nexport interface ValidateCustomDomainOutput {\n /**\n * Indicates whether the custom domain is valid or not.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly customDomainValidated?: boolean;\n /**\n * The reason why the custom domain is not valid.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly reason?: string;\n /**\n * Error message describing why the custom domain is not valid.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly message?: string;\n}\n\n/** Result of the request to list Rules Engine Configurations. It contains a list of RulesEngine objects and a URL link to get the next set of results. */\nexport interface RulesEngineListResult {\n /**\n * List of rulesEngines within a Front Door.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly value?: RulesEngine[];\n /** URL to get the next set of RulesEngine objects if there are any. */\n nextLink?: string;\n}\n\n/** Defines a list of Profiles. It contains a list of Profile objects and a URL link to get the next set of results. */\nexport interface ProfileList {\n /**\n * List of Profiles within a resource group.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly value?: Profile[];\n /** URL to get the next set of Profile objects if there are any. */\n nextLink?: string;\n}\n\n/** Defines modifiable attributes of a Profile */\nexport interface ProfileUpdateModel {\n /** Resource tags. */\n tags?: { [propertyName: string]: string };\n /** The enabled state of the Profile */\n enabledState?: State;\n}\n\n/** Defines a list of preconfigured endpoints. */\nexport interface PreconfiguredEndpointList {\n /**\n * List of PreconfiguredEndpoints supported by NetworkExperiment.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly value?: PreconfiguredEndpoint[];\n /** URL to get the next set of PreconfiguredEndpoints if there are any. */\n nextLink?: string;\n}\n\n/** Defines a list of Experiments. It contains a list of Experiment objects and a URL link to get the next set of results. */\nexport interface ExperimentList {\n /**\n * List of Experiments within a resource group.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly value?: Experiment[];\n /** URL to get the next set of Experiment objects if there are any. */\n nextLink?: string;\n}\n\n/** Defines the endpoint properties */\nexport interface Endpoint {\n /** The name of the endpoint */\n name?: string;\n /** The endpoint URL */\n endpoint?: string;\n}\n\n/** Defines modifiable attributes of an Experiment */\nexport interface ExperimentUpdateModel {\n /** Resource tags. */\n tags?: { [propertyName: string]: string };\n /** The description of the intent or details of the Experiment */\n description?: string;\n /** The state of the Experiment */\n enabledState?: State;\n}\n\n/** Defines the properties of a latency metric used in the latency scorecard */\nexport interface LatencyMetric {\n /**\n * The name of the Latency Metric\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly name?: string;\n /**\n * The end time of the Latency Scorecard in UTC\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly endDateTimeUTC?: string;\n /**\n * The metric value of the A endpoint\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly aValue?: number;\n /**\n * The metric value of the B endpoint\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly bValue?: number;\n /**\n * The difference in value between endpoint A and B\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly delta?: number;\n /**\n * The percent difference between endpoint A and B\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly deltaPercent?: number;\n /**\n * The lower end of the 95% confidence interval for endpoint A\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly aCLower95CI?: number;\n /**\n * The upper end of the 95% confidence interval for endpoint A\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly aHUpper95CI?: number;\n /**\n * The lower end of the 95% confidence interval for endpoint B\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly bCLower95CI?: number;\n /**\n * The upper end of the 95% confidence interval for endpoint B\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly bUpper95CI?: number;\n}\n\n/** Defines a timeseries datapoint used in a timeseries */\nexport interface TimeseriesDataPoint {\n /** The DateTime of the Timeseries data point in UTC */\n dateTimeUTC?: string;\n /** The Value of the Timeseries data point */\n value?: number;\n}\n\nexport interface ErrorDetails {\n code?: string;\n target?: string;\n message?: string;\n}\n\nexport interface ErrorModel {\n code?: string;\n message?: string;\n target?: string;\n details?: ErrorDetails[];\n innerError?: string;\n}\n\n/** The response body contains the status of the specified asynchronous operation, indicating whether it has succeeded, is in progress, or has failed. Note that this status is distinct from the HTTP status code returned for the Get Operation Status operation itself. If the asynchronous operation succeeded, the response body includes the HTTP status code for the successful request. If the asynchronous operation failed, the response body includes the HTTP status code for the failed request and error information regarding the failure. */\nexport interface AzureAsyncOperationResult {\n /** Status of the Azure async operation. */\n status?: NetworkOperationStatus;\n error?: ErrorModel;\n}\n\n/** Result of the request to list Routing Rules. It contains a list of Routing Rule objects and a URL link to get the next set of results. */\nexport interface RoutingRuleListResult {\n /**\n * List of Routing Rules within a Front Door.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly value?: RoutingRule[];\n /** URL to get the next set of RoutingRule objects if there are any. */\n nextLink?: string;\n}\n\n/** Caching settings for a caching-type route. To disable caching, do not provide a cacheConfiguration object. */\nexport interface CacheConfiguration {\n /** Treatment of URL query terms when forming the cache key. */\n queryParameterStripDirective?: FrontDoorQuery;\n /** query parameters to include or exclude (comma separated). */\n queryParameters?: string;\n /** Whether to use dynamic compression for cached content */\n dynamicCompression?: DynamicCompressionEnabled;\n /** The duration for which the content needs to be cached. Allowed format is in ISO 8601 format (http://en.wikipedia.org/wiki/ISO_8601#Durations). HTTP requires the value to be no more than a year */\n cacheDuration?: string;\n}\n\n/** Result of the request to list load balancing settings. It contains a list of load balancing settings objects and a URL link to get the next set of results. */\nexport interface LoadBalancingSettingsListResult {\n /**\n * List of Backend Pools within a Front Door.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly value?: LoadBalancingSettingsModel[];\n /** URL to get the next set of LoadBalancingSettings objects if there are any. */\n nextLink?: string;\n}\n\n/** Result of the request to list HealthProbeSettings. It contains a list of HealthProbeSettings objects and a URL link to get the next set of results. */\nexport interface HealthProbeSettingsListResult {\n /**\n * List of HealthProbeSettings within a Front Door.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly value?: HealthProbeSettingsModel[];\n /** URL to get the next set of HealthProbeSettings objects if there are any. */\n nextLink?: string;\n}\n\n/** Result of the request to list Backend Pools. It contains a list of Backend Pools objects and a URL link to get the next set of results. */\nexport interface BackendPoolListResult {\n /**\n * List of Backend Pools within a Front Door.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly value?: BackendPool[];\n /** URL to get the next set of BackendPool objects if there are any. */\n nextLink?: string;\n}\n\n/** Defines web application firewall policy. */\nexport interface WebApplicationFirewallPolicy extends Resource {\n /** Gets a unique read-only string that changes whenever the resource is updated. */\n etag?: string;\n /** The pricing tier of web application firewall policy. Defaults to Classic_AzureFrontDoor if not specified. */\n sku?: Sku;\n /** Describes settings for the policy. */\n policySettings?: PolicySettings;\n /** Describes custom rules inside the policy. */\n customRules?: CustomRuleList;\n /** Describes managed rules inside the policy. */\n managedRules?: ManagedRuleSetList;\n /**\n * Describes Frontend Endpoints associated with this Web Application Firewall policy.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly frontendEndpointLinks?: FrontendEndpointLink[];\n /**\n * Describes Routing Rules associated with this Web Application Firewall policy.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly routingRuleLinks?: RoutingRuleLink[];\n /**\n * Describes Security Policy associated with this Web Application Firewall policy.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly securityPolicyLinks?: SecurityPolicyLink[];\n /**\n * Provisioning state of the policy.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly provisioningState?: string;\n /**\n * Resource status of the policy.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: PolicyResourceState;\n}\n\n/** Describes the a managed rule set definition. */\nexport interface ManagedRuleSetDefinition extends Resource {\n /**\n * Provisioning state of the managed rule set.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly provisioningState?: string;\n /**\n * Id of the managed rule set.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly ruleSetId?: string;\n /**\n * Type of the managed rule set.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly ruleSetType?: string;\n /**\n * Version of the managed rule set type.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly ruleSetVersion?: string;\n /**\n * Rule groups of the managed rule set.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly ruleGroups?: ManagedRuleGroupDefinition[];\n}\n\n/** Front Door represents a collection of backend endpoints to route traffic to along with rules that specify how traffic is sent there. */\nexport interface FrontDoor extends Resource {\n /** A friendly name for the frontDoor */\n friendlyName?: string;\n /** Routing rules associated with this Front Door. */\n routingRules?: RoutingRule[];\n /** Load balancing settings associated with this Front Door instance. */\n loadBalancingSettings?: LoadBalancingSettingsModel[];\n /** Health probe settings associated with this Front Door instance. */\n healthProbeSettings?: HealthProbeSettingsModel[];\n /** Backend pools available to routing rules. */\n backendPools?: BackendPool[];\n /** Frontend endpoints available to routing rules. */\n frontendEndpoints?: FrontendEndpoint[];\n /** Settings for all backendPools */\n backendPoolsSettings?: BackendPoolsSettings;\n /** Operational status of the Front Door load balancer. Permitted values are 'Enabled' or 'Disabled' */\n enabledState?: FrontDoorEnabledState;\n /**\n * Resource status of the Front Door.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: FrontDoorResourceState;\n /**\n * Provisioning state of the Front Door.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly provisioningState?: string;\n /**\n * The host that each frontendEndpoint must CNAME to.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly cname?: string;\n /**\n * The Id of the frontdoor.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly frontdoorId?: string;\n /**\n * Rules Engine Configurations available to routing rules.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly rulesEngines?: RulesEngine[];\n /**\n * Key-Value pair representing additional properties for frontdoor.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly extendedProperties?: { [propertyName: string]: string };\n}\n\n/** Defines an Network Experiment Profile and lists of Experiments */\nexport interface Profile extends Resource {\n /** Gets a unique read-only string that changes whenever the resource is updated. */\n etag?: string;\n /**\n * Resource status.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: NetworkExperimentResourceState;\n /** The state of the Experiment */\n enabledState?: State;\n}\n\n/** Defines the properties of a preconfigured endpoint */\nexport interface PreconfiguredEndpoint extends Resource {\n /** The description of the endpoint */\n description?: string;\n /** The endpoint that is preconfigured */\n endpoint?: string;\n /** The type of endpoint */\n endpointType?: EndpointType;\n /** The preconfigured endpoint backend */\n backend?: string;\n}\n\n/** Defines the properties of an Experiment */\nexport interface Experiment extends Resource {\n /** The description of the details or intents of the Experiment */\n description?: string;\n /** The endpoint A of an experiment */\n endpointA?: Endpoint;\n /** The endpoint B of an experiment */\n endpointB?: Endpoint;\n /** The state of the Experiment */\n enabledState?: State;\n /**\n * Resource status.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: NetworkExperimentResourceState;\n /**\n * The description of Experiment status from the server side\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly status?: string;\n /**\n * The uri to the Script used in the Experiment\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly scriptFileUri?: string;\n}\n\n/** Defines the LatencyScorecard */\nexport interface LatencyScorecard extends Resource {\n /**\n * The unique identifier of the Latency Scorecard\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly idPropertiesId?: string;\n /**\n * The name of the Latency Scorecard\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly namePropertiesName?: string;\n /**\n * The description of the Latency Scorecard\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly description?: string;\n /**\n * The A endpoint in the scorecard\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly endpointA?: string;\n /**\n * The B endpoint in the scorecard\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly endpointB?: string;\n /**\n * The start time of the Latency Scorecard in UTC\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly startDateTimeUTC?: Date;\n /**\n * The end time of the Latency Scorecard in UTC\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly endDateTimeUTC?: Date;\n /**\n * The country associated with the Latency Scorecard. Values are country ISO codes as specified here- https://www.iso.org/iso-3166-country-codes.html\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly country?: string;\n /** The latency metrics of the Latency Scorecard */\n latencyMetrics?: LatencyMetric[];\n}\n\n/** Defines the Timeseries */\nexport interface Timeseries extends Resource {\n /** The endpoint associated with the Timeseries data point */\n endpoint?: string;\n /** The start DateTime of the Timeseries in UTC */\n startDateTimeUTC?: string;\n /** The end DateTime of the Timeseries in UTC */\n endDateTimeUTC?: string;\n /** The aggregation interval of the Timeseries */\n aggregationInterval?: AggregationInterval;\n /** The type of Timeseries */\n timeseriesType?: TimeseriesType;\n /** The country associated with the Timeseries. Values are country ISO codes as specified here- https://www.iso.org/iso-3166-country-codes.html */\n country?: string;\n /** The set of data points for the timeseries */\n timeseriesData?: TimeseriesDataPoint[];\n}\n\n/** The JSON object that contains the properties required to create a Rules Engine Configuration. */\nexport interface RulesEngineProperties extends RulesEngineUpdateParameters {\n /**\n * Resource status.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: FrontDoorResourceState;\n}\n\n/** Describes Forwarding Route. */\nexport interface ForwardingConfiguration extends RouteConfiguration {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odataType: \"#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration\";\n /** A custom path used to rewrite resource paths matched by this rule. Leave empty to use incoming path. */\n customForwardingPath?: string;\n /** Protocol this rule will use when forwarding traffic to backends. */\n forwardingProtocol?: FrontDoorForwardingProtocol;\n /** The caching configuration associated with this rule. */\n cacheConfiguration?: CacheConfiguration;\n /** A reference to the BackendPool which this rule routes to. */\n backendPool?: SubResource;\n}\n\n/** Describes Redirect Route. */\nexport interface RedirectConfiguration extends RouteConfiguration {\n /** Polymorphic discriminator, which specifies the different types this object can be */\n odataType: \"#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration\";\n /** The redirect type the rule will use when redirecting traffic. */\n redirectType?: FrontDoorRedirectType;\n /** The protocol of the destination to where the traffic is redirected */\n redirectProtocol?: FrontDoorRedirectProtocol;\n /** Host to redirect. Leave empty to use the incoming host as the destination host. */\n customHost?: string;\n /** The full path to redirect. Path cannot be empty and must start with /. Leave empty to use the incoming path as destination path. */\n customPath?: string;\n /** Fragment to add to the redirect URL. Fragment is the part of the URL that comes after #. Do not include the #. */\n customFragment?: string;\n /** The set of query strings to be placed in the redirect URL. Setting this value would replace any existing query string; leave empty to preserve the incoming query string. Query string must be in <key>=<value> format. The first ? and & will be added automatically so do not include them in the front, but do separate multiple query strings with &. */\n customQueryString?: string;\n}\n\n/** The JSON object that contains the properties required to create an endpoint. */\nexport interface FrontDoorProperties extends FrontDoorUpdateParameters {\n /**\n * Resource status of the Front Door.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: FrontDoorResourceState;\n /**\n * Provisioning state of the Front Door.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly provisioningState?: string;\n /**\n * The host that each frontendEndpoint must CNAME to.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly cname?: string;\n /**\n * The Id of the frontdoor.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly frontdoorId?: string;\n /**\n * Rules Engine Configurations available to routing rules.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly rulesEngines?: RulesEngine[];\n /**\n * Key-Value pair representing additional properties for frontdoor.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly extendedProperties?: { [propertyName: string]: string };\n}\n\n/** The JSON object that contains the properties required to create a routing rule. */\nexport interface RoutingRuleProperties extends RoutingRuleUpdateParameters {\n /**\n * Resource status.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: FrontDoorResourceState;\n}\n\n/** A routing rule represents a specification for traffic to treat and where to send it, along with health probe information. */\nexport interface RoutingRule extends SubResource {\n /** Resource name. */\n name?: string;\n /**\n * Resource type.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly type?: string;\n /** Frontend endpoints associated with this rule */\n frontendEndpoints?: SubResource[];\n /** Protocol schemes to match for this rule */\n acceptedProtocols?: FrontDoorProtocol[];\n /** The route patterns of the rule. */\n patternsToMatch?: string[];\n /** Whether to enable use of this rule. Permitted values are 'Enabled' or 'Disabled' */\n enabledState?: RoutingRuleEnabledState;\n /** A reference to the routing configuration. */\n routeConfiguration?: RouteConfigurationUnion;\n /** A reference to a specific Rules Engine Configuration to apply to this route. */\n rulesEngine?: SubResource;\n /** Defines the Web Application Firewall policy for each routing rule (if applicable) */\n webApplicationFirewallPolicyLink?: RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink;\n /**\n * Resource status.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: FrontDoorResourceState;\n}\n\n/** Load balancing settings for a backend pool */\nexport interface LoadBalancingSettingsModel extends SubResource {\n /** Resource name. */\n name?: string;\n /**\n * Resource type.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly type?: string;\n /** The number of samples to consider for load balancing decisions */\n sampleSize?: number;\n /** The number of samples within the sample period that must succeed */\n successfulSamplesRequired?: number;\n /** The additional latency in milliseconds for probes to fall into the lowest latency bucket */\n additionalLatencyMilliseconds?: number;\n /**\n * Resource status.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: FrontDoorResourceState;\n}\n\n/** Load balancing settings for a backend pool */\nexport interface HealthProbeSettingsModel extends SubResource {\n /** Resource name. */\n name?: string;\n /**\n * Resource type.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly type?: string;\n /** The path to use for the health probe. Default is / */\n path?: string;\n /** Protocol scheme to use for this probe */\n protocol?: FrontDoorProtocol;\n /** The number of seconds between health probes. */\n intervalInSeconds?: number;\n /** Configures which HTTP method to use to probe the backends defined under backendPools. */\n healthProbeMethod?: FrontDoorHealthProbeMethod;\n /** Whether to enable health probes to be made against backends defined under backendPools. Health probes can only be disabled if there is a single enabled backend in single enabled backend pool. */\n enabledState?: HealthProbeEnabled;\n /**\n * Resource status.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: FrontDoorResourceState;\n}\n\n/** A backend pool is a collection of backends that can be routed to. */\nexport interface BackendPool extends SubResource {\n /** Resource name. */\n name?: string;\n /**\n * Resource type.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly type?: string;\n /** The set of backends for this pool */\n backends?: Backend[];\n /** Load balancing settings for a backend pool */\n loadBalancingSettings?: SubResource;\n /** L7 health probe settings for a backend pool */\n healthProbeSettings?: SubResource;\n /**\n * Resource status.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: FrontDoorResourceState;\n}\n\n/** A frontend endpoint used for routing. */\nexport interface FrontendEndpoint extends SubResource {\n /** Resource name. */\n name?: string;\n /**\n * Resource type.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly type?: string;\n /** The host name of the frontendEndpoint. Must be a domain name. */\n hostName?: string;\n /** Whether to allow session affinity on this host. Valid options are 'Enabled' or 'Disabled' */\n sessionAffinityEnabledState?: SessionAffinityEnabledState;\n /** UNUSED. This field will be ignored. The TTL to use in seconds for session affinity, if applicable. */\n sessionAffinityTtlSeconds?: number;\n /** Defines the Web Application Firewall policy for each host (if applicable) */\n webApplicationFirewallPolicyLink?: FrontendEndpointUpdateParametersWebApplicationFirewallPolicyLink;\n /**\n * Resource status.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: FrontDoorResourceState;\n /**\n * Provisioning status of Custom Https of the frontendEndpoint.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly customHttpsProvisioningState?: CustomHttpsProvisioningState;\n /**\n * Provisioning substate shows the progress of custom HTTPS enabling/disabling process step by step.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly customHttpsProvisioningSubstate?: CustomHttpsProvisioningSubstate;\n /**\n * The configuration specifying how to enable HTTPS\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly customHttpsConfiguration?: CustomHttpsConfiguration;\n}\n\n/** The JSON object that contains the properties required to create load balancing settings */\nexport interface LoadBalancingSettingsProperties\n extends LoadBalancingSettingsUpdateParameters {\n /**\n * Resource status.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: FrontDoorResourceState;\n}\n\n/** The JSON object that contains the properties required to create a health probe settings. */\nexport interface HealthProbeSettingsProperties\n extends HealthProbeSettingsUpdateParameters {\n /**\n * Resource status.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: FrontDoorResourceState;\n}\n\n/** The JSON object that contains the properties required to create a Backend Pool. */\nexport interface BackendPoolProperties extends BackendPoolUpdateParameters {\n /**\n * Resource status.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: FrontDoorResourceState;\n}\n\n/** The JSON object that contains the properties required to create a frontend endpoint. */\nexport interface FrontendEndpointProperties\n extends FrontendEndpointUpdateParameters {\n /**\n * Resource status.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly resourceState?: FrontDoorResourceState;\n /**\n * Provisioning status of Custom Https of the frontendEndpoint.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly customHttpsProvisioningState?: CustomHttpsProvisioningState;\n /**\n * Provisioning substate shows the progress of custom HTTPS enabling/disabling process step by step.\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly customHttpsProvisioningSubstate?: CustomHttpsProvisioningSubstate;\n /**\n * The configuration specifying how to enable HTTPS\n * NOTE: This property will not be serialized. It can only be populated by the server.\n */\n readonly customHttpsConfiguration?: CustomHttpsConfiguration;\n}\n\n/** Known values of {@link PolicyEnabledState} that the service accepts. */\nexport enum KnownPolicyEnabledState {\n /** Disabled */\n Disabled = \"Disabled\",\n /** Enabled */\n Enabled = \"Enabled\"\n}\n\n/**\n * Defines values for PolicyEnabledState. \\\n * {@link KnownPolicyEnabledState} can be used interchangeably with PolicyEnabledState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Disabled** \\\n * **Enabled**\n */\nexport type PolicyEnabledState = string;\n\n/** Known values of {@link PolicyMode} that the service accepts. */\nexport enum KnownPolicyMode {\n /** Prevention */\n Prevention = \"Prevention\",\n /** Detection */\n Detection = \"Detection\"\n}\n\n/**\n * Defines values for PolicyMode. \\\n * {@link KnownPolicyMode} can be used interchangeably with PolicyMode,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Prevention** \\\n * **Detection**\n */\nexport type PolicyMode = string;\n\n/** Known values of {@link PolicyRequestBodyCheck} that the service accepts. */\nexport enum KnownPolicyRequestBodyCheck {\n /** Disabled */\n Disabled = \"Disabled\",\n /** Enabled */\n Enabled = \"Enabled\"\n}\n\n/**\n * Defines values for PolicyRequestBodyCheck. \\\n * {@link KnownPolicyRequestBodyCheck} can be used interchangeably with PolicyRequestBodyCheck,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Disabled** \\\n * **Enabled**\n */\nexport type PolicyRequestBodyCheck = string;\n\n/** Known values of {@link CustomRuleEnabledState} that the service accepts. */\nexport enum KnownCustomRuleEnabledState {\n /** Disabled */\n Disabled = \"Disabled\",\n /** Enabled */\n Enabled = \"Enabled\"\n}\n\n/**\n * Defines values for CustomRuleEnabledState. \\\n * {@link KnownCustomRuleEnabledState} can be used interchangeably with CustomRuleEnabledState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Disabled** \\\n * **Enabled**\n */\nexport type CustomRuleEnabledState = string;\n\n/** Known values of {@link RuleType} that the service accepts. */\nexport enum KnownRuleType {\n /** MatchRule */\n MatchRule = \"MatchRule\",\n /** RateLimitRule */\n RateLimitRule = \"RateLimitRule\"\n}\n\n/**\n * Defines values for RuleType. \\\n * {@link KnownRuleType} can be used interchangeably with RuleType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **MatchRule** \\\n * **RateLimitRule**\n */\nexport type RuleType = string;\n\n/** Known values of {@link MatchVariable} that the service accepts. */\nexport enum KnownMatchVariable {\n /** RemoteAddr */\n RemoteAddr = \"RemoteAddr\",\n /** RequestMethod */\n RequestMethod = \"RequestMethod\",\n /** QueryString */\n QueryString = \"QueryString\",\n /** PostArgs */\n PostArgs = \"PostArgs\",\n /** RequestUri */\n RequestUri = \"RequestUri\",\n /** RequestHeader */\n RequestHeader = \"RequestHeader\",\n /** RequestBody */\n RequestBody = \"RequestBody\",\n /** Cookies */\n Cookies = \"Cookies\",\n /** SocketAddr */\n SocketAddr = \"SocketAddr\"\n}\n\n/**\n * Defines values for MatchVariable. \\\n * {@link KnownMatchVariable} can be used interchangeably with MatchVariable,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **RemoteAddr** \\\n * **RequestMethod** \\\n * **QueryString** \\\n * **PostArgs** \\\n * **RequestUri** \\\n * **RequestHeader** \\\n * **RequestBody** \\\n * **Cookies** \\\n * **SocketAddr**\n */\nexport type MatchVariable = string;\n\n/** Known values of {@link Operator} that the service accepts. */\nexport enum KnownOperator {\n /** Any */\n Any = \"Any\",\n /** IPMatch */\n IPMatch = \"IPMatch\",\n /** GeoMatch */\n GeoMatch = \"GeoMatch\",\n /** Equal */\n Equal = \"Equal\",\n /** Contains */\n Contains = \"Contains\",\n /** LessThan */\n LessThan = \"LessThan\",\n /** GreaterThan */\n GreaterThan = \"GreaterThan\",\n /** LessThanOrEqual */\n LessThanOrEqual = \"LessThanOrEqual\",\n /** GreaterThanOrEqual */\n GreaterThanOrEqual = \"GreaterThanOrEqual\",\n /** BeginsWith */\n BeginsWith = \"BeginsWith\",\n /** EndsWith */\n EndsWith = \"EndsWith\",\n /** RegEx */\n RegEx = \"RegEx\"\n}\n\n/**\n * Defines values for Operator. \\\n * {@link KnownOperator} can be used interchangeably with Operator,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Any** \\\n * **IPMatch** \\\n * **GeoMatch** \\\n * **Equal** \\\n * **Contains** \\\n * **LessThan** \\\n * **GreaterThan** \\\n * **LessThanOrEqual** \\\n * **GreaterThanOrEqual** \\\n * **BeginsWith** \\\n * **EndsWith** \\\n * **RegEx**\n */\nexport type Operator = string;\n\n/** Known values of {@link TransformType} that the service accepts. */\nexport enum KnownTransformType {\n /** Lowercase */\n Lowercase = \"Lowercase\",\n /** Uppercase */\n Uppercase = \"Uppercase\",\n /** Trim */\n Trim = \"Trim\",\n /** UrlDecode */\n UrlDecode = \"UrlDecode\",\n /** UrlEncode */\n UrlEncode = \"UrlEncode\",\n /** RemoveNulls */\n RemoveNulls = \"RemoveNulls\"\n}\n\n/**\n * Defines values for TransformType. \\\n * {@link KnownTransformType} can be used interchangeably with TransformType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Lowercase** \\\n * **Uppercase** \\\n * **Trim** \\\n * **UrlDecode** \\\n * **UrlEncode** \\\n * **RemoveNulls**\n */\nexport type TransformType = string;\n\n/** Known values of {@link ActionType} that the service accepts. */\nexport enum KnownActionType {\n /** Allow */\n Allow = \"Allow\",\n /** Block */\n Block = \"Block\",\n /** Log */\n Log = \"Log\",\n /** Redirect */\n Redirect = \"Redirect\",\n /** AnomalyScoring */\n AnomalyScoring = \"AnomalyScoring\"\n}\n\n/**\n * Defines values for ActionType. \\\n * {@link KnownActionType} can be used interchangeably with ActionType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Allow** \\\n * **Block** \\\n * **Log** \\\n * **Redirect** \\\n * **AnomalyScoring**\n */\nexport type ActionType = string;\n\n/** Known values of {@link ManagedRuleSetActionType} that the service accepts. */\nexport enum KnownManagedRuleSetActionType {\n /** Block */\n Block = \"Block\",\n /** Log */\n Log = \"Log\",\n /** Redirect */\n Redirect = \"Redirect\"\n}\n\n/**\n * Defines values for ManagedRuleSetActionType. \\\n * {@link KnownManagedRuleSetActionType} can be used interchangeably with ManagedRuleSetActionType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Block** \\\n * **Log** \\\n * **Redirect**\n */\nexport type ManagedRuleSetActionType = string;\n\n/** Known values of {@link ManagedRuleExclusionMatchVariable} that the service accepts. */\nexport enum KnownManagedRuleExclusionMatchVariable {\n /** RequestHeaderNames */\n RequestHeaderNames = \"RequestHeaderNames\",\n /** RequestCookieNames */\n RequestCookieNames = \"RequestCookieNames\",\n /** QueryStringArgNames */\n QueryStringArgNames = \"QueryStringArgNames\",\n /** RequestBodyPostArgNames */\n RequestBodyPostArgNames = \"RequestBodyPostArgNames\",\n /** RequestBodyJsonArgNames */\n RequestBodyJsonArgNames = \"RequestBodyJsonArgNames\"\n}\n\n/**\n * Defines values for ManagedRuleExclusionMatchVariable. \\\n * {@link KnownManagedRuleExclusionMatchVariable} can be used interchangeably with ManagedRuleExclusionMatchVariable,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **RequestHeaderNames** \\\n * **RequestCookieNames** \\\n * **QueryStringArgNames** \\\n * **RequestBodyPostArgNames** \\\n * **RequestBodyJsonArgNames**\n */\nexport type ManagedRuleExclusionMatchVariable = string;\n\n/** Known values of {@link ManagedRuleExclusionSelectorMatchOperator} that the service accepts. */\nexport enum KnownManagedRuleExclusionSelectorMatchOperator {\n /** Equals */\n Equals = \"Equals\",\n /** Contains */\n Contains = \"Contains\",\n /** StartsWith */\n StartsWith = \"StartsWith\",\n /** EndsWith */\n EndsWith = \"EndsWith\",\n /** EqualsAny */\n EqualsAny = \"EqualsAny\"\n}\n\n/**\n * Defines values for ManagedRuleExclusionSelectorMatchOperator. \\\n * {@link KnownManagedRuleExclusionSelectorMatchOperator} can be used interchangeably with ManagedRuleExclusionSelectorMatchOperator,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Equals** \\\n * **Contains** \\\n * **StartsWith** \\\n * **EndsWith** \\\n * **EqualsAny**\n */\nexport type ManagedRuleExclusionSelectorMatchOperator = string;\n\n/** Known values of {@link ManagedRuleEnabledState} that the service accepts. */\nexport enum KnownManagedRuleEnabledState {\n /** Disabled */\n Disabled = \"Disabled\",\n /** Enabled */\n Enabled = \"Enabled\"\n}\n\n/**\n * Defines values for ManagedRuleEnabledState. \\\n * {@link KnownManagedRuleEnabledState} can be used interchangeably with ManagedRuleEnabledState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Disabled** \\\n * **Enabled**\n */\nexport type ManagedRuleEnabledState = string;\n\n/** Known values of {@link PolicyResourceState} that the service accepts. */\nexport enum KnownPolicyResourceState {\n /** Creating */\n Creating = \"Creating\",\n /** Enabling */\n Enabling = \"Enabling\",\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabling */\n Disabling = \"Disabling\",\n /** Disabled */\n Disabled = \"Disabled\",\n /** Deleting */\n Deleting = \"Deleting\"\n}\n\n/**\n * Defines values for PolicyResourceState. \\\n * {@link KnownPolicyResourceState} can be used interchangeably with PolicyResourceState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Creating** \\\n * **Enabling** \\\n * **Enabled** \\\n * **Disabling** \\\n * **Disabled** \\\n * **Deleting**\n */\nexport type PolicyResourceState = string;\n\n/** Known values of {@link SkuName} that the service accepts. */\nexport enum KnownSkuName {\n /** ClassicAzureFrontDoor */\n ClassicAzureFrontDoor = \"Classic_AzureFrontDoor\",\n /** StandardAzureFrontDoor */\n StandardAzureFrontDoor = \"Standard_AzureFrontDoor\",\n /** PremiumAzureFrontDoor */\n PremiumAzureFrontDoor = \"Premium_AzureFrontDoor\"\n}\n\n/**\n * Defines values for SkuName. \\\n * {@link KnownSkuName} can be used interchangeably with SkuName,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Classic_AzureFrontDoor** \\\n * **Standard_AzureFrontDoor** \\\n * **Premium_AzureFrontDoor**\n */\nexport type SkuName = string;\n\n/** Known values of {@link Availability} that the service accepts. */\nexport enum KnownAvailability {\n /** Available */\n Available = \"Available\",\n /** Unavailable */\n Unavailable = \"Unavailable\"\n}\n\n/**\n * Defines values for Availability. \\\n * {@link KnownAvailability} can be used interchangeably with Availability,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Available** \\\n * **Unavailable**\n */\nexport type Availability = string;\n\n/** Known values of {@link FrontDoorResourceState} that the service accepts. */\nexport enum KnownFrontDoorResourceState {\n /** Creating */\n Creating = \"Creating\",\n /** Enabling */\n Enabling = \"Enabling\",\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabling */\n Disabling = \"Disabling\",\n /** Disabled */\n Disabled = \"Disabled\",\n /** Deleting */\n Deleting = \"Deleting\",\n /** Migrating */\n Migrating = \"Migrating\",\n /** Migrated */\n Migrated = \"Migrated\"\n}\n\n/**\n * Defines values for FrontDoorResourceState. \\\n * {@link KnownFrontDoorResourceState} can be used interchangeably with FrontDoorResourceState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Creating** \\\n * **Enabling** \\\n * **Enabled** \\\n * **Disabling** \\\n * **Disabled** \\\n * **Deleting** \\\n * **Migrating** \\\n * **Migrated**\n */\nexport type FrontDoorResourceState = string;\n\n/** Known values of {@link HeaderActionType} that the service accepts. */\nexport enum KnownHeaderActionType {\n /** Append */\n Append = \"Append\",\n /** Delete */\n Delete = \"Delete\",\n /** Overwrite */\n Overwrite = \"Overwrite\"\n}\n\n/**\n * Defines values for HeaderActionType. \\\n * {@link KnownHeaderActionType} can be used interchangeably with HeaderActionType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Append** \\\n * **Delete** \\\n * **Overwrite**\n */\nexport type HeaderActionType = string;\n\n/** Known values of {@link RulesEngineMatchVariable} that the service accepts. */\nexport enum KnownRulesEngineMatchVariable {\n /** IsMobile */\n IsMobile = \"IsMobile\",\n /** RemoteAddr */\n RemoteAddr = \"RemoteAddr\",\n /** RequestMethod */\n RequestMethod = \"RequestMethod\",\n /** QueryString */\n QueryString = \"QueryString\",\n /** PostArgs */\n PostArgs = \"PostArgs\",\n /** RequestUri */\n RequestUri = \"RequestUri\",\n /** RequestPath */\n RequestPath = \"RequestPath\",\n /** RequestFilename */\n RequestFilename = \"RequestFilename\",\n /** RequestFilenameExtension */\n RequestFilenameExtension = \"RequestFilenameExtension\",\n /** RequestHeader */\n RequestHeader = \"RequestHeader\",\n /** RequestBody */\n RequestBody = \"RequestBody\",\n /** RequestScheme */\n RequestScheme = \"RequestScheme\"\n}\n\n/**\n * Defines values for RulesEngineMatchVariable. \\\n * {@link KnownRulesEngineMatchVariable} can be used interchangeably with RulesEngineMatchVariable,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **IsMobile** \\\n * **RemoteAddr** \\\n * **RequestMethod** \\\n * **QueryString** \\\n * **PostArgs** \\\n * **RequestUri** \\\n * **RequestPath** \\\n * **RequestFilename** \\\n * **RequestFilenameExtension** \\\n * **RequestHeader** \\\n * **RequestBody** \\\n * **RequestScheme**\n */\nexport type RulesEngineMatchVariable = string;\n\n/** Known values of {@link RulesEngineOperator} that the service accepts. */\nexport enum KnownRulesEngineOperator {\n /** Any */\n Any = \"Any\",\n /** IPMatch */\n IPMatch = \"IPMatch\",\n /** GeoMatch */\n GeoMatch = \"GeoMatch\",\n /** Equal */\n Equal = \"Equal\",\n /** Contains */\n Contains = \"Contains\",\n /** LessThan */\n LessThan = \"LessThan\",\n /** GreaterThan */\n GreaterThan = \"GreaterThan\",\n /** LessThanOrEqual */\n LessThanOrEqual = \"LessThanOrEqual\",\n /** GreaterThanOrEqual */\n GreaterThanOrEqual = \"GreaterThanOrEqual\",\n /** BeginsWith */\n BeginsWith = \"BeginsWith\",\n /** EndsWith */\n EndsWith = \"EndsWith\"\n}\n\n/**\n * Defines values for RulesEngineOperator. \\\n * {@link KnownRulesEngineOperator} can be used interchangeably with RulesEngineOperator,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Any** \\\n * **IPMatch** \\\n * **GeoMatch** \\\n * **Equal** \\\n * **Contains** \\\n * **LessThan** \\\n * **GreaterThan** \\\n * **LessThanOrEqual** \\\n * **GreaterThanOrEqual** \\\n * **BeginsWith** \\\n * **EndsWith**\n */\nexport type RulesEngineOperator = string;\n\n/** Known values of {@link Transform} that the service accepts. */\nexport enum KnownTransform {\n /** Lowercase */\n Lowercase = \"Lowercase\",\n /** Uppercase */\n Uppercase = \"Uppercase\",\n /** Trim */\n Trim = \"Trim\",\n /** UrlDecode */\n UrlDecode = \"UrlDecode\",\n /** UrlEncode */\n UrlEncode = \"UrlEncode\",\n /** RemoveNulls */\n RemoveNulls = \"RemoveNulls\"\n}\n\n/**\n * Defines values for Transform. \\\n * {@link KnownTransform} can be used interchangeably with Transform,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Lowercase** \\\n * **Uppercase** \\\n * **Trim** \\\n * **UrlDecode** \\\n * **UrlEncode** \\\n * **RemoveNulls**\n */\nexport type Transform = string;\n\n/** Known values of {@link MatchProcessingBehavior} that the service accepts. */\nexport enum KnownMatchProcessingBehavior {\n /** Continue */\n Continue = \"Continue\",\n /** Stop */\n Stop = \"Stop\"\n}\n\n/**\n * Defines values for MatchProcessingBehavior. \\\n * {@link KnownMatchProcessingBehavior} can be used interchangeably with MatchProcessingBehavior,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Continue** \\\n * **Stop**\n */\nexport type MatchProcessingBehavior = string;\n\n/** Known values of {@link FrontDoorProtocol} that the service accepts. */\nexport enum KnownFrontDoorProtocol {\n /** Http */\n Http = \"Http\",\n /** Https */\n Https = \"Https\"\n}\n\n/**\n * Defines values for FrontDoorProtocol. \\\n * {@link KnownFrontDoorProtocol} can be used interchangeably with FrontDoorProtocol,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Http** \\\n * **Https**\n */\nexport type FrontDoorProtocol = string;\n\n/** Known values of {@link RoutingRuleEnabledState} that the service accepts. */\nexport enum KnownRoutingRuleEnabledState {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\"\n}\n\n/**\n * Defines values for RoutingRuleEnabledState. \\\n * {@link KnownRoutingRuleEnabledState} can be used interchangeably with RoutingRuleEnabledState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled** \\\n * **Disabled**\n */\nexport type RoutingRuleEnabledState = string;\n\n/** Known values of {@link FrontDoorHealthProbeMethod} that the service accepts. */\nexport enum KnownFrontDoorHealthProbeMethod {\n /** GET */\n GET = \"GET\",\n /** Head */\n Head = \"HEAD\"\n}\n\n/**\n * Defines values for FrontDoorHealthProbeMethod. \\\n * {@link KnownFrontDoorHealthProbeMethod} can be used interchangeably with FrontDoorHealthProbeMethod,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **GET** \\\n * **HEAD**\n */\nexport type FrontDoorHealthProbeMethod = string;\n\n/** Known values of {@link HealthProbeEnabled} that the service accepts. */\nexport enum KnownHealthProbeEnabled {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\"\n}\n\n/**\n * Defines values for HealthProbeEnabled. \\\n * {@link KnownHealthProbeEnabled} can be used interchangeably with HealthProbeEnabled,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled** \\\n * **Disabled**\n */\nexport type HealthProbeEnabled = string;\n\n/** Known values of {@link PrivateEndpointStatus} that the service accepts. */\nexport enum KnownPrivateEndpointStatus {\n /** Pending */\n Pending = \"Pending\",\n /** Approved */\n Approved = \"Approved\",\n /** Rejected */\n Rejected = \"Rejected\",\n /** Disconnected */\n Disconnected = \"Disconnected\",\n /** Timeout */\n Timeout = \"Timeout\"\n}\n\n/**\n * Defines values for PrivateEndpointStatus. \\\n * {@link KnownPrivateEndpointStatus} can be used interchangeably with PrivateEndpointStatus,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Pending** \\\n * **Approved** \\\n * **Rejected** \\\n * **Disconnected** \\\n * **Timeout**\n */\nexport type PrivateEndpointStatus = string;\n\n/** Known values of {@link BackendEnabledState} that the service accepts. */\nexport enum KnownBackendEnabledState {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\"\n}\n\n/**\n * Defines values for BackendEnabledState. \\\n * {@link KnownBackendEnabledState} can be used interchangeably with BackendEnabledState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled** \\\n * **Disabled**\n */\nexport type BackendEnabledState = string;\n\n/** Known values of {@link CustomHttpsProvisioningState} that the service accepts. */\nexport enum KnownCustomHttpsProvisioningState {\n /** Enabling */\n Enabling = \"Enabling\",\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabling */\n Disabling = \"Disabling\",\n /** Disabled */\n Disabled = \"Disabled\",\n /** Failed */\n Failed = \"Failed\"\n}\n\n/**\n * Defines values for CustomHttpsProvisioningState. \\\n * {@link KnownCustomHttpsProvisioningState} can be used interchangeably with CustomHttpsProvisioningState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabling** \\\n * **Enabled** \\\n * **Disabling** \\\n * **Disabled** \\\n * **Failed**\n */\nexport type CustomHttpsProvisioningState = string;\n\n/** Known values of {@link CustomHttpsProvisioningSubstate} that the service accepts. */\nexport enum KnownCustomHttpsProvisioningSubstate {\n /** SubmittingDomainControlValidationRequest */\n SubmittingDomainControlValidationRequest = \"SubmittingDomainControlValidationRequest\",\n /** PendingDomainControlValidationREquestApproval */\n PendingDomainControlValidationREquestApproval = \"PendingDomainControlValidationREquestApproval\",\n /** DomainControlValidationRequestApproved */\n DomainControlValidationRequestApproved = \"DomainControlValidationRequestApproved\",\n /** DomainControlValidationRequestRejected */\n DomainControlValidationRequestRejected = \"DomainControlValidationRequestRejected\",\n /** DomainControlValidationRequestTimedOut */\n DomainControlValidationRequestTimedOut = \"DomainControlValidationRequestTimedOut\",\n /** IssuingCertificate */\n IssuingCertificate = \"IssuingCertificate\",\n /** DeployingCertificate */\n DeployingCertificate = \"DeployingCertificate\",\n /** CertificateDeployed */\n CertificateDeployed = \"CertificateDeployed\",\n /** DeletingCertificate */\n DeletingCertificate = \"DeletingCertificate\",\n /** CertificateDeleted */\n CertificateDeleted = \"CertificateDeleted\"\n}\n\n/**\n * Defines values for CustomHttpsProvisioningSubstate. \\\n * {@link KnownCustomHttpsProvisioningSubstate} can be used interchangeably with CustomHttpsProvisioningSubstate,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **SubmittingDomainControlValidationRequest** \\\n * **PendingDomainControlValidationREquestApproval** \\\n * **DomainControlValidationRequestApproved** \\\n * **DomainControlValidationRequestRejected** \\\n * **DomainControlValidationRequestTimedOut** \\\n * **IssuingCertificate** \\\n * **DeployingCertificate** \\\n * **CertificateDeployed** \\\n * **DeletingCertificate** \\\n * **CertificateDeleted**\n */\nexport type CustomHttpsProvisioningSubstate = string;\n\n/** Known values of {@link FrontDoorCertificateSource} that the service accepts. */\nexport enum KnownFrontDoorCertificateSource {\n /** AzureKeyVault */\n AzureKeyVault = \"AzureKeyVault\",\n /** FrontDoor */\n FrontDoor = \"FrontDoor\"\n}\n\n/**\n * Defines values for FrontDoorCertificateSource. \\\n * {@link KnownFrontDoorCertificateSource} can be used interchangeably with FrontDoorCertificateSource,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **AzureKeyVault** \\\n * **FrontDoor**\n */\nexport type FrontDoorCertificateSource = string;\n\n/** Known values of {@link FrontDoorTlsProtocolType} that the service accepts. */\nexport enum KnownFrontDoorTlsProtocolType {\n /** ServerNameIndication */\n ServerNameIndication = \"ServerNameIndication\"\n}\n\n/**\n * Defines values for FrontDoorTlsProtocolType. \\\n * {@link KnownFrontDoorTlsProtocolType} can be used interchangeably with FrontDoorTlsProtocolType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **ServerNameIndication**\n */\nexport type FrontDoorTlsProtocolType = string;\n\n/** Known values of {@link MinimumTLSVersion} that the service accepts. */\nexport enum KnownMinimumTLSVersion {\n /** One0 */\n One0 = \"1.0\",\n /** One2 */\n One2 = \"1.2\"\n}\n\n/**\n * Defines values for MinimumTLSVersion. \\\n * {@link KnownMinimumTLSVersion} can be used interchangeably with MinimumTLSVersion,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **1.0** \\\n * **1.2**\n */\nexport type MinimumTLSVersion = string;\n\n/** Known values of {@link FrontDoorCertificateType} that the service accepts. */\nexport enum KnownFrontDoorCertificateType {\n /** Dedicated */\n Dedicated = \"Dedicated\"\n}\n\n/**\n * Defines values for FrontDoorCertificateType. \\\n * {@link KnownFrontDoorCertificateType} can be used interchangeably with FrontDoorCertificateType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Dedicated**\n */\nexport type FrontDoorCertificateType = string;\n\n/** Known values of {@link SessionAffinityEnabledState} that the service accepts. */\nexport enum KnownSessionAffinityEnabledState {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\"\n}\n\n/**\n * Defines values for SessionAffinityEnabledState. \\\n * {@link KnownSessionAffinityEnabledState} can be used interchangeably with SessionAffinityEnabledState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled** \\\n * **Disabled**\n */\nexport type SessionAffinityEnabledState = string;\n\n/** Known values of {@link EnforceCertificateNameCheckEnabledState} that the service accepts. */\nexport enum KnownEnforceCertificateNameCheckEnabledState {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\"\n}\n\n/**\n * Defines values for EnforceCertificateNameCheckEnabledState. \\\n * {@link KnownEnforceCertificateNameCheckEnabledState} can be used interchangeably with EnforceCertificateNameCheckEnabledState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled** \\\n * **Disabled**\n */\nexport type EnforceCertificateNameCheckEnabledState = string;\n\n/** Known values of {@link FrontDoorEnabledState} that the service accepts. */\nexport enum KnownFrontDoorEnabledState {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\"\n}\n\n/**\n * Defines values for FrontDoorEnabledState. \\\n * {@link KnownFrontDoorEnabledState} can be used interchangeably with FrontDoorEnabledState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled** \\\n * **Disabled**\n */\nexport type FrontDoorEnabledState = string;\n\n/** Known values of {@link NetworkExperimentResourceState} that the service accepts. */\nexport enum KnownNetworkExperimentResourceState {\n /** Creating */\n Creating = \"Creating\",\n /** Enabling */\n Enabling = \"Enabling\",\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabling */\n Disabling = \"Disabling\",\n /** Disabled */\n Disabled = \"Disabled\",\n /** Deleting */\n Deleting = \"Deleting\"\n}\n\n/**\n * Defines values for NetworkExperimentResourceState. \\\n * {@link KnownNetworkExperimentResourceState} can be used interchangeably with NetworkExperimentResourceState,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Creating** \\\n * **Enabling** \\\n * **Enabled** \\\n * **Disabling** \\\n * **Disabled** \\\n * **Deleting**\n */\nexport type NetworkExperimentResourceState = string;\n\n/** Known values of {@link State} that the service accepts. */\nexport enum KnownState {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\"\n}\n\n/**\n * Defines values for State. \\\n * {@link KnownState} can be used interchangeably with State,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled** \\\n * **Disabled**\n */\nexport type State = string;\n\n/** Known values of {@link EndpointType} that the service accepts. */\nexport enum KnownEndpointType {\n /** AFD */\n AFD = \"AFD\",\n /** AzureRegion */\n AzureRegion = \"AzureRegion\",\n /** CDN */\n CDN = \"CDN\",\n /** ATM */\n ATM = \"ATM\"\n}\n\n/**\n * Defines values for EndpointType. \\\n * {@link KnownEndpointType} can be used interchangeably with EndpointType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **AFD** \\\n * **AzureRegion** \\\n * **CDN** \\\n * **ATM**\n */\nexport type EndpointType = string;\n\n/** Known values of {@link LatencyScorecardAggregationInterval} that the service accepts. */\nexport enum KnownLatencyScorecardAggregationInterval {\n /** Daily */\n Daily = \"Daily\",\n /** Weekly */\n Weekly = \"Weekly\",\n /** Monthly */\n Monthly = \"Monthly\"\n}\n\n/**\n * Defines values for LatencyScorecardAggregationInterval. \\\n * {@link KnownLatencyScorecardAggregationInterval} can be used interchangeably with LatencyScorecardAggregationInterval,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Daily** \\\n * **Weekly** \\\n * **Monthly**\n */\nexport type LatencyScorecardAggregationInterval = string;\n\n/** Known values of {@link TimeseriesAggregationInterval} that the service accepts. */\nexport enum KnownTimeseriesAggregationInterval {\n /** Hourly */\n Hourly = \"Hourly\",\n /** Daily */\n Daily = \"Daily\"\n}\n\n/**\n * Defines values for TimeseriesAggregationInterval. \\\n * {@link KnownTimeseriesAggregationInterval} can be used interchangeably with TimeseriesAggregationInterval,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Hourly** \\\n * **Daily**\n */\nexport type TimeseriesAggregationInterval = string;\n\n/** Known values of {@link TimeseriesType} that the service accepts. */\nexport enum KnownTimeseriesType {\n /** MeasurementCounts */\n MeasurementCounts = \"MeasurementCounts\",\n /** LatencyP50 */\n LatencyP50 = \"LatencyP50\",\n /** LatencyP75 */\n LatencyP75 = \"LatencyP75\",\n /** LatencyP95 */\n LatencyP95 = \"LatencyP95\"\n}\n\n/**\n * Defines values for TimeseriesType. \\\n * {@link KnownTimeseriesType} can be used interchangeably with TimeseriesType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **MeasurementCounts** \\\n * **LatencyP50** \\\n * **LatencyP75** \\\n * **LatencyP95**\n */\nexport type TimeseriesType = string;\n\n/** Known values of {@link AggregationInterval} that the service accepts. */\nexport enum KnownAggregationInterval {\n /** Hourly */\n Hourly = \"Hourly\",\n /** Daily */\n Daily = \"Daily\"\n}\n\n/**\n * Defines values for AggregationInterval. \\\n * {@link KnownAggregationInterval} can be used interchangeably with AggregationInterval,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Hourly** \\\n * **Daily**\n */\nexport type AggregationInterval = string;\n\n/** Known values of {@link NetworkOperationStatus} that the service accepts. */\nexport enum KnownNetworkOperationStatus {\n /** InProgress */\n InProgress = \"InProgress\",\n /** Succeeded */\n Succeeded = \"Succeeded\",\n /** Failed */\n Failed = \"Failed\"\n}\n\n/**\n * Defines values for NetworkOperationStatus. \\\n * {@link KnownNetworkOperationStatus} can be used interchangeably with NetworkOperationStatus,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **InProgress** \\\n * **Succeeded** \\\n * **Failed**\n */\nexport type NetworkOperationStatus = string;\n\n/** Known values of {@link FrontDoorForwardingProtocol} that the service accepts. */\nexport enum KnownFrontDoorForwardingProtocol {\n /** HttpOnly */\n HttpOnly = \"HttpOnly\",\n /** HttpsOnly */\n HttpsOnly = \"HttpsOnly\",\n /** MatchRequest */\n MatchRequest = \"MatchRequest\"\n}\n\n/**\n * Defines values for FrontDoorForwardingProtocol. \\\n * {@link KnownFrontDoorForwardingProtocol} can be used interchangeably with FrontDoorForwardingProtocol,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **HttpOnly** \\\n * **HttpsOnly** \\\n * **MatchRequest**\n */\nexport type FrontDoorForwardingProtocol = string;\n\n/** Known values of {@link FrontDoorQuery} that the service accepts. */\nexport enum KnownFrontDoorQuery {\n /** StripNone */\n StripNone = \"StripNone\",\n /** StripAll */\n StripAll = \"StripAll\",\n /** StripOnly */\n StripOnly = \"StripOnly\",\n /** StripAllExcept */\n StripAllExcept = \"StripAllExcept\"\n}\n\n/**\n * Defines values for FrontDoorQuery. \\\n * {@link KnownFrontDoorQuery} can be used interchangeably with FrontDoorQuery,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **StripNone** \\\n * **StripAll** \\\n * **StripOnly** \\\n * **StripAllExcept**\n */\nexport type FrontDoorQuery = string;\n\n/** Known values of {@link DynamicCompressionEnabled} that the service accepts. */\nexport enum KnownDynamicCompressionEnabled {\n /** Enabled */\n Enabled = \"Enabled\",\n /** Disabled */\n Disabled = \"Disabled\"\n}\n\n/**\n * Defines values for DynamicCompressionEnabled. \\\n * {@link KnownDynamicCompressionEnabled} can be used interchangeably with DynamicCompressionEnabled,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Enabled** \\\n * **Disabled**\n */\nexport type DynamicCompressionEnabled = string;\n\n/** Known values of {@link FrontDoorRedirectType} that the service accepts. */\nexport enum KnownFrontDoorRedirectType {\n /** Moved */\n Moved = \"Moved\",\n /** Found */\n Found = \"Found\",\n /** TemporaryRedirect */\n TemporaryRedirect = \"TemporaryRedirect\",\n /** PermanentRedirect */\n PermanentRedirect = \"PermanentRedirect\"\n}\n\n/**\n * Defines values for FrontDoorRedirectType. \\\n * {@link KnownFrontDoorRedirectType} can be used interchangeably with FrontDoorRedirectType,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **Moved** \\\n * **Found** \\\n * **TemporaryRedirect** \\\n * **PermanentRedirect**\n */\nexport type FrontDoorRedirectType = string;\n\n/** Known values of {@link FrontDoorRedirectProtocol} that the service accepts. */\nexport enum KnownFrontDoorRedirectProtocol {\n /** HttpOnly */\n HttpOnly = \"HttpOnly\",\n /** HttpsOnly */\n HttpsOnly = \"HttpsOnly\",\n /** MatchRequest */\n MatchRequest = \"MatchRequest\"\n}\n\n/**\n * Defines values for FrontDoorRedirectProtocol. \\\n * {@link KnownFrontDoorRedirectProtocol} can be used interchangeably with FrontDoorRedirectProtocol,\n * this enum contains the known values that the service supports.\n * ### Known values supported by the service\n * **HttpOnly** \\\n * **HttpsOnly** \\\n * **MatchRequest**\n */\nexport type FrontDoorRedirectProtocol = string;\n/** Defines values for ResourceType. */\nexport type ResourceType =\n | \"Microsoft.Network/frontDoors\"\n | \"Microsoft.Network/frontDoors/frontendEndpoints\";\n\n/** Optional parameters. */\nexport interface PoliciesListOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the list operation. */\nexport type PoliciesListResponse = WebApplicationFirewallPolicyList;\n\n/** Optional parameters. */\nexport interface PoliciesListBySubscriptionOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listBySubscription operation. */\nexport type PoliciesListBySubscriptionResponse = WebApplicationFirewallPolicyList;\n\n/** Optional parameters. */\nexport interface PoliciesGetOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the get operation. */\nexport type PoliciesGetResponse = WebApplicationFirewallPolicy;\n\n/** Optional parameters. */\nexport interface PoliciesCreateOrUpdateOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the createOrUpdate operation. */\nexport type PoliciesCreateOrUpdateResponse = WebApplicationFirewallPolicy;\n\n/** Optional parameters. */\nexport interface PoliciesUpdateOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the update operation. */\nexport type PoliciesUpdateResponse = WebApplicationFirewallPolicy;\n\n/** Optional parameters. */\nexport interface PoliciesDeleteOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface PoliciesListNextOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listNext operation. */\nexport type PoliciesListNextResponse = WebApplicationFirewallPolicyList;\n\n/** Optional parameters. */\nexport interface PoliciesListBySubscriptionNextOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listBySubscriptionNext operation. */\nexport type PoliciesListBySubscriptionNextResponse = WebApplicationFirewallPolicyList;\n\n/** Optional parameters. */\nexport interface ManagedRuleSetsListOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the list operation. */\nexport type ManagedRuleSetsListResponse = ManagedRuleSetDefinitionList;\n\n/** Optional parameters. */\nexport interface ManagedRuleSetsListNextOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listNext operation. */\nexport type ManagedRuleSetsListNextResponse = ManagedRuleSetDefinitionList;\n\n/** Optional parameters. */\nexport interface FrontDoorNameAvailabilityCheckOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the check operation. */\nexport type FrontDoorNameAvailabilityCheckResponse = CheckNameAvailabilityOutput;\n\n/** Optional parameters. */\nexport interface FrontDoorNameAvailabilityWithSubscriptionCheckOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the check operation. */\nexport type FrontDoorNameAvailabilityWithSubscriptionCheckResponse = CheckNameAvailabilityOutput;\n\n/** Optional parameters. */\nexport interface FrontDoorsListOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the list operation. */\nexport type FrontDoorsListResponse = FrontDoorListResult;\n\n/** Optional parameters. */\nexport interface FrontDoorsListByResourceGroupOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listByResourceGroup operation. */\nexport type FrontDoorsListByResourceGroupResponse = FrontDoorListResult;\n\n/** Optional parameters. */\nexport interface FrontDoorsGetOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the get operation. */\nexport type FrontDoorsGetResponse = FrontDoor;\n\n/** Optional parameters. */\nexport interface FrontDoorsCreateOrUpdateOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the createOrUpdate operation. */\nexport type FrontDoorsCreateOrUpdateResponse = FrontDoor;\n\n/** Optional parameters. */\nexport interface FrontDoorsDeleteOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface FrontDoorsValidateCustomDomainOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the validateCustomDomain operation. */\nexport type FrontDoorsValidateCustomDomainResponse = ValidateCustomDomainOutput;\n\n/** Optional parameters. */\nexport interface FrontDoorsListNextOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listNext operation. */\nexport type FrontDoorsListNextResponse = FrontDoorListResult;\n\n/** Optional parameters. */\nexport interface FrontDoorsListByResourceGroupNextOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listByResourceGroupNext operation. */\nexport type FrontDoorsListByResourceGroupNextResponse = FrontDoorListResult;\n\n/** Optional parameters. */\nexport interface FrontendEndpointsListByFrontDoorOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listByFrontDoor operation. */\nexport type FrontendEndpointsListByFrontDoorResponse = FrontendEndpointsListResult;\n\n/** Optional parameters. */\nexport interface FrontendEndpointsGetOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the get operation. */\nexport type FrontendEndpointsGetResponse = FrontendEndpoint;\n\n/** Optional parameters. */\nexport interface FrontendEndpointsEnableHttpsOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface FrontendEndpointsDisableHttpsOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface FrontendEndpointsListByFrontDoorNextOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listByFrontDoorNext operation. */\nexport type FrontendEndpointsListByFrontDoorNextResponse = FrontendEndpointsListResult;\n\n/** Optional parameters. */\nexport interface EndpointsPurgeContentOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface RulesEnginesListByFrontDoorOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listByFrontDoor operation. */\nexport type RulesEnginesListByFrontDoorResponse = RulesEngineListResult;\n\n/** Optional parameters. */\nexport interface RulesEnginesGetOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the get operation. */\nexport type RulesEnginesGetResponse = RulesEngine;\n\n/** Optional parameters. */\nexport interface RulesEnginesCreateOrUpdateOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the createOrUpdate operation. */\nexport type RulesEnginesCreateOrUpdateResponse = RulesEngine;\n\n/** Optional parameters. */\nexport interface RulesEnginesDeleteOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface RulesEnginesListByFrontDoorNextOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listByFrontDoorNext operation. */\nexport type RulesEnginesListByFrontDoorNextResponse = RulesEngineListResult;\n\n/** Optional parameters. */\nexport interface NetworkExperimentProfilesListOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the list operation. */\nexport type NetworkExperimentProfilesListResponse = ProfileList;\n\n/** Optional parameters. */\nexport interface NetworkExperimentProfilesListByResourceGroupOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listByResourceGroup operation. */\nexport type NetworkExperimentProfilesListByResourceGroupResponse = ProfileList;\n\n/** Optional parameters. */\nexport interface NetworkExperimentProfilesGetOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the get operation. */\nexport type NetworkExperimentProfilesGetResponse = Profile;\n\n/** Optional parameters. */\nexport interface NetworkExperimentProfilesCreateOrUpdateOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the createOrUpdate operation. */\nexport type NetworkExperimentProfilesCreateOrUpdateResponse = Profile;\n\n/** Optional parameters. */\nexport interface NetworkExperimentProfilesUpdateOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the update operation. */\nexport type NetworkExperimentProfilesUpdateResponse = Profile;\n\n/** Optional parameters. */\nexport interface NetworkExperimentProfilesDeleteOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface NetworkExperimentProfilesListNextOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listNext operation. */\nexport type NetworkExperimentProfilesListNextResponse = ProfileList;\n\n/** Optional parameters. */\nexport interface NetworkExperimentProfilesListByResourceGroupNextOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listByResourceGroupNext operation. */\nexport type NetworkExperimentProfilesListByResourceGroupNextResponse = ProfileList;\n\n/** Optional parameters. */\nexport interface PreconfiguredEndpointsListOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the list operation. */\nexport type PreconfiguredEndpointsListResponse = PreconfiguredEndpointList;\n\n/** Optional parameters. */\nexport interface PreconfiguredEndpointsListNextOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listNext operation. */\nexport type PreconfiguredEndpointsListNextResponse = PreconfiguredEndpointList;\n\n/** Optional parameters. */\nexport interface ExperimentsListByProfileOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listByProfile operation. */\nexport type ExperimentsListByProfileResponse = ExperimentList;\n\n/** Optional parameters. */\nexport interface ExperimentsGetOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the get operation. */\nexport type ExperimentsGetResponse = Experiment;\n\n/** Optional parameters. */\nexport interface ExperimentsCreateOrUpdateOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the createOrUpdate operation. */\nexport type ExperimentsCreateOrUpdateResponse = Experiment;\n\n/** Optional parameters. */\nexport interface ExperimentsUpdateOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Contains response data for the update operation. */\nexport type ExperimentsUpdateResponse = Experiment;\n\n/** Optional parameters. */\nexport interface ExperimentsDeleteOptionalParams\n extends coreClient.OperationOptions {\n /** Delay to wait until next poll, in milliseconds. */\n updateIntervalInMs?: number;\n /** A serialized poller which can be used to resume an existing paused Long-Running-Operation. */\n resumeFrom?: string;\n}\n\n/** Optional parameters. */\nexport interface ExperimentsListByProfileNextOptionalParams\n extends coreClient.OperationOptions {}\n\n/** Contains response data for the listByProfileNext operation. */\nexport type ExperimentsListByProfileNextResponse = ExperimentList;\n\n/** Optional parameters. */\nexport interface ReportsGetLatencyScorecardsOptionalParams\n extends coreClient.OperationOptions {\n /** The end DateTime of the Latency Scorecard in UTC */\n endDateTimeUTC?: string;\n /** The country associated with the Latency Scorecard. Values are country ISO codes as specified here- https://www.iso.org/iso-3166-country-codes.html */\n country?: string;\n}\n\n/** Contains response data for the getLatencyScorecards operation. */\nexport type ReportsGetLatencyScorecardsResponse = LatencyScorecard;\n\n/** Optional parameters. */\nexport interface ReportsGetTimeseriesOptionalParams\n extends coreClient.OperationOptions {\n /** The country associated with the Timeseries. Values are country ISO codes as specified here- https://www.iso.org/iso-3166-country-codes.html */\n country?: string;\n /** The specific endpoint */\n endpoint?: string;\n}\n\n/** Contains response data for the getTimeseries operation. */\nexport type ReportsGetTimeseriesResponse = Timeseries;\n\n/** Optional parameters. */\nexport interface FrontDoorManagementClientOptionalParams\n extends coreClient.ServiceClientOptions {\n /** server parameter */\n $host?: string;\n /** Overrides client endpoint. */\n endpoint?: string;\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport * as coreClient from \"@azure/core-client\";\n\nexport const WebApplicationFirewallPolicyList: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"WebApplicationFirewallPolicyList\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"WebApplicationFirewallPolicy\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const PolicySettings: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PolicySettings\",\n modelProperties: {\n enabledState: {\n serializedName: \"enabledState\",\n type: {\n name: \"String\"\n }\n },\n mode: {\n serializedName: \"mode\",\n type: {\n name: \"String\"\n }\n },\n redirectUrl: {\n serializedName: \"redirectUrl\",\n type: {\n name: \"String\"\n }\n },\n customBlockResponseStatusCode: {\n serializedName: \"customBlockResponseStatusCode\",\n type: {\n name: \"Number\"\n }\n },\n customBlockResponseBody: {\n constraints: {\n Pattern: new RegExp(\n \"^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{4})$\"\n )\n },\n serializedName: \"customBlockResponseBody\",\n type: {\n name: \"String\"\n }\n },\n requestBodyCheck: {\n serializedName: \"requestBodyCheck\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const CustomRuleList: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"CustomRuleList\",\n modelProperties: {\n rules: {\n serializedName: \"rules\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"CustomRule\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const CustomRule: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"CustomRule\",\n modelProperties: {\n name: {\n constraints: {\n MaxLength: 128\n },\n serializedName: \"name\",\n type: {\n name: \"String\"\n }\n },\n priority: {\n serializedName: \"priority\",\n required: true,\n type: {\n name: \"Number\"\n }\n },\n enabledState: {\n serializedName: \"enabledState\",\n type: {\n name: \"String\"\n }\n },\n ruleType: {\n serializedName: \"ruleType\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n rateLimitDurationInMinutes: {\n constraints: {\n InclusiveMaximum: 5,\n InclusiveMinimum: 0\n },\n serializedName: \"rateLimitDurationInMinutes\",\n type: {\n name: \"Number\"\n }\n },\n rateLimitThreshold: {\n constraints: {\n InclusiveMinimum: 0\n },\n serializedName: \"rateLimitThreshold\",\n type: {\n name: \"Number\"\n }\n },\n matchConditions: {\n serializedName: \"matchConditions\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"MatchCondition\"\n }\n }\n }\n },\n action: {\n serializedName: \"action\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const MatchCondition: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"MatchCondition\",\n modelProperties: {\n matchVariable: {\n serializedName: \"matchVariable\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n selector: {\n serializedName: \"selector\",\n type: {\n name: \"String\"\n }\n },\n operator: {\n serializedName: \"operator\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n negateCondition: {\n serializedName: \"negateCondition\",\n type: {\n name: \"Boolean\"\n }\n },\n matchValue: {\n serializedName: \"matchValue\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n },\n transforms: {\n serializedName: \"transforms\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const ManagedRuleSetList: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleSetList\",\n modelProperties: {\n managedRuleSets: {\n serializedName: \"managedRuleSets\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleSet\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const ManagedRuleSet: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleSet\",\n modelProperties: {\n ruleSetType: {\n serializedName: \"ruleSetType\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n ruleSetVersion: {\n serializedName: \"ruleSetVersion\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n ruleSetAction: {\n serializedName: \"ruleSetAction\",\n type: {\n name: \"String\"\n }\n },\n exclusions: {\n serializedName: \"exclusions\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleExclusion\"\n }\n }\n }\n },\n ruleGroupOverrides: {\n serializedName: \"ruleGroupOverrides\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleGroupOverride\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const ManagedRuleExclusion: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleExclusion\",\n modelProperties: {\n matchVariable: {\n serializedName: \"matchVariable\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n selectorMatchOperator: {\n serializedName: \"selectorMatchOperator\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n selector: {\n serializedName: \"selector\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ManagedRuleGroupOverride: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleGroupOverride\",\n modelProperties: {\n ruleGroupName: {\n serializedName: \"ruleGroupName\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n exclusions: {\n serializedName: \"exclusions\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleExclusion\"\n }\n }\n }\n },\n rules: {\n serializedName: \"rules\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleOverride\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const ManagedRuleOverride: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleOverride\",\n modelProperties: {\n ruleId: {\n serializedName: \"ruleId\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n enabledState: {\n serializedName: \"enabledState\",\n type: {\n name: \"String\"\n }\n },\n action: {\n serializedName: \"action\",\n type: {\n name: \"String\"\n }\n },\n exclusions: {\n serializedName: \"exclusions\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleExclusion\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const FrontendEndpointLink: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"FrontendEndpointLink\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const RoutingRuleLink: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"RoutingRuleLink\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const SecurityPolicyLink: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SecurityPolicyLink\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const Sku: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Sku\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const Resource: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Resource\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n name: {\n serializedName: \"name\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n location: {\n serializedName: \"location\",\n type: {\n name: \"String\"\n }\n },\n tags: {\n serializedName: \"tags\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n }\n }\n }\n};\n\nexport const ErrorResponse: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ErrorResponse\",\n modelProperties: {\n code: {\n serializedName: \"code\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n message: {\n serializedName: \"message\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const DefaultErrorResponse: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DefaultErrorResponse\",\n modelProperties: {\n error: {\n serializedName: \"error\",\n type: {\n name: \"Composite\",\n className: \"DefaultErrorResponseError\"\n }\n }\n }\n }\n};\n\nexport const DefaultErrorResponseError: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"DefaultErrorResponseError\",\n modelProperties: {\n code: {\n serializedName: \"code\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n message: {\n serializedName: \"message\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const TagsObject: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"TagsObject\",\n modelProperties: {\n tags: {\n serializedName: \"tags\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n }\n }\n }\n};\n\nexport const ManagedRuleSetDefinitionList: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleSetDefinitionList\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleSetDefinition\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ManagedRuleGroupDefinition: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleGroupDefinition\",\n modelProperties: {\n ruleGroupName: {\n serializedName: \"ruleGroupName\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n description: {\n serializedName: \"description\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n rules: {\n serializedName: \"rules\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleDefinition\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const ManagedRuleDefinition: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleDefinition\",\n modelProperties: {\n ruleId: {\n serializedName: \"ruleId\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n defaultState: {\n serializedName: \"defaultState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n defaultAction: {\n serializedName: \"defaultAction\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n description: {\n serializedName: \"description\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const CheckNameAvailabilityInput: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"CheckNameAvailabilityInput\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n required: true,\n type: {\n name: \"Enum\",\n allowedValues: [\n \"Microsoft.Network/frontDoors\",\n \"Microsoft.Network/frontDoors/frontendEndpoints\"\n ]\n }\n }\n }\n }\n};\n\nexport const CheckNameAvailabilityOutput: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"CheckNameAvailabilityOutput\",\n modelProperties: {\n nameAvailability: {\n serializedName: \"nameAvailability\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n reason: {\n serializedName: \"reason\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n message: {\n serializedName: \"message\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const FrontDoorListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"FrontDoorListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"FrontDoor\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const RulesEngine: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"RulesEngine\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n id: {\n serializedName: \"id\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n rules: {\n serializedName: \"properties.rules\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"RulesEngineRule\"\n }\n }\n }\n },\n resourceState: {\n serializedName: \"properties.resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const RulesEngineUpdateParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"RulesEngineUpdateParameters\",\n modelProperties: {\n rules: {\n serializedName: \"rules\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"RulesEngineRule\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const RulesEngineRule: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"RulesEngineRule\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n priority: {\n serializedName: \"priority\",\n required: true,\n type: {\n name: \"Number\"\n }\n },\n action: {\n serializedName: \"action\",\n type: {\n name: \"Composite\",\n className: \"RulesEngineAction\"\n }\n },\n matchConditions: {\n serializedName: \"matchConditions\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"RulesEngineMatchCondition\"\n }\n }\n }\n },\n matchProcessingBehavior: {\n serializedName: \"matchProcessingBehavior\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const RulesEngineAction: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"RulesEngineAction\",\n modelProperties: {\n requestHeaderActions: {\n serializedName: \"requestHeaderActions\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"HeaderAction\"\n }\n }\n }\n },\n responseHeaderActions: {\n serializedName: \"responseHeaderActions\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"HeaderAction\"\n }\n }\n }\n },\n routeConfigurationOverride: {\n serializedName: \"routeConfigurationOverride\",\n type: {\n name: \"Composite\",\n className: \"RouteConfiguration\"\n }\n }\n }\n }\n};\n\nexport const HeaderAction: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"HeaderAction\",\n modelProperties: {\n headerActionType: {\n serializedName: \"headerActionType\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n headerName: {\n serializedName: \"headerName\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n value: {\n serializedName: \"value\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const RouteConfiguration: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"RouteConfiguration\",\n uberParent: \"RouteConfiguration\",\n polymorphicDiscriminator: {\n serializedName: \"@odata\\\\.type\",\n clientName: \"odataType\"\n },\n modelProperties: {\n odataType: {\n serializedName: \"@odata\\\\.type\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const RulesEngineMatchCondition: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"RulesEngineMatchCondition\",\n modelProperties: {\n rulesEngineMatchVariable: {\n serializedName: \"rulesEngineMatchVariable\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n selector: {\n serializedName: \"selector\",\n type: {\n name: \"String\"\n }\n },\n rulesEngineOperator: {\n serializedName: \"rulesEngineOperator\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n negateCondition: {\n serializedName: \"negateCondition\",\n type: {\n name: \"Boolean\"\n }\n },\n rulesEngineMatchValue: {\n serializedName: \"rulesEngineMatchValue\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n },\n transforms: {\n serializedName: \"transforms\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const FrontDoorUpdateParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"FrontDoorUpdateParameters\",\n modelProperties: {\n friendlyName: {\n serializedName: \"friendlyName\",\n type: {\n name: \"String\"\n }\n },\n routingRules: {\n serializedName: \"routingRules\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"RoutingRule\"\n }\n }\n }\n },\n loadBalancingSettings: {\n serializedName: \"loadBalancingSettings\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"LoadBalancingSettingsModel\"\n }\n }\n }\n },\n healthProbeSettings: {\n serializedName: \"healthProbeSettings\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"HealthProbeSettingsModel\"\n }\n }\n }\n },\n backendPools: {\n serializedName: \"backendPools\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"BackendPool\"\n }\n }\n }\n },\n frontendEndpoints: {\n serializedName: \"frontendEndpoints\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"FrontendEndpoint\"\n }\n }\n }\n },\n backendPoolsSettings: {\n serializedName: \"backendPoolsSettings\",\n type: {\n name: \"Composite\",\n className: \"BackendPoolsSettings\"\n }\n },\n enabledState: {\n serializedName: \"enabledState\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const RoutingRuleUpdateParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"RoutingRuleUpdateParameters\",\n modelProperties: {\n frontendEndpoints: {\n serializedName: \"frontendEndpoints\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SubResource\"\n }\n }\n }\n },\n acceptedProtocols: {\n serializedName: \"acceptedProtocols\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n },\n patternsToMatch: {\n serializedName: \"patternsToMatch\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n },\n enabledState: {\n serializedName: \"enabledState\",\n type: {\n name: \"String\"\n }\n },\n routeConfiguration: {\n serializedName: \"routeConfiguration\",\n type: {\n name: \"Composite\",\n className: \"RouteConfiguration\"\n }\n },\n rulesEngine: {\n serializedName: \"rulesEngine\",\n type: {\n name: \"Composite\",\n className: \"SubResource\"\n }\n },\n webApplicationFirewallPolicyLink: {\n serializedName: \"webApplicationFirewallPolicyLink\",\n type: {\n name: \"Composite\",\n className:\n \"RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink\"\n }\n }\n }\n }\n};\n\nexport const SubResource: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SubResource\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const LoadBalancingSettingsUpdateParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"LoadBalancingSettingsUpdateParameters\",\n modelProperties: {\n sampleSize: {\n serializedName: \"sampleSize\",\n type: {\n name: \"Number\"\n }\n },\n successfulSamplesRequired: {\n serializedName: \"successfulSamplesRequired\",\n type: {\n name: \"Number\"\n }\n },\n additionalLatencyMilliseconds: {\n serializedName: \"additionalLatencyMilliseconds\",\n type: {\n name: \"Number\"\n }\n }\n }\n }\n};\n\nexport const HealthProbeSettingsUpdateParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"HealthProbeSettingsUpdateParameters\",\n modelProperties: {\n path: {\n serializedName: \"path\",\n type: {\n name: \"String\"\n }\n },\n protocol: {\n serializedName: \"protocol\",\n type: {\n name: \"String\"\n }\n },\n intervalInSeconds: {\n serializedName: \"intervalInSeconds\",\n type: {\n name: \"Number\"\n }\n },\n healthProbeMethod: {\n defaultValue: \"HEAD\",\n serializedName: \"healthProbeMethod\",\n type: {\n name: \"String\"\n }\n },\n enabledState: {\n serializedName: \"enabledState\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const BackendPoolUpdateParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"BackendPoolUpdateParameters\",\n modelProperties: {\n backends: {\n serializedName: \"backends\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"Backend\"\n }\n }\n }\n },\n loadBalancingSettings: {\n serializedName: \"loadBalancingSettings\",\n type: {\n name: \"Composite\",\n className: \"SubResource\"\n }\n },\n healthProbeSettings: {\n serializedName: \"healthProbeSettings\",\n type: {\n name: \"Composite\",\n className: \"SubResource\"\n }\n }\n }\n }\n};\n\nexport const Backend: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Backend\",\n modelProperties: {\n address: {\n serializedName: \"address\",\n type: {\n name: \"String\"\n }\n },\n privateLinkAlias: {\n serializedName: \"privateLinkAlias\",\n type: {\n name: \"String\"\n }\n },\n privateLinkResourceId: {\n serializedName: \"privateLinkResourceId\",\n type: {\n name: \"String\"\n }\n },\n privateLinkLocation: {\n serializedName: \"privateLinkLocation\",\n type: {\n name: \"String\"\n }\n },\n privateEndpointStatus: {\n serializedName: \"privateEndpointStatus\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n privateLinkApprovalMessage: {\n serializedName: \"privateLinkApprovalMessage\",\n type: {\n name: \"String\"\n }\n },\n httpPort: {\n constraints: {\n InclusiveMaximum: 65535,\n InclusiveMinimum: 1\n },\n serializedName: \"httpPort\",\n type: {\n name: \"Number\"\n }\n },\n httpsPort: {\n constraints: {\n InclusiveMaximum: 65535,\n InclusiveMinimum: 1\n },\n serializedName: \"httpsPort\",\n type: {\n name: \"Number\"\n }\n },\n enabledState: {\n serializedName: \"enabledState\",\n type: {\n name: \"String\"\n }\n },\n priority: {\n constraints: {\n InclusiveMaximum: 5,\n InclusiveMinimum: 1\n },\n serializedName: \"priority\",\n type: {\n name: \"Number\"\n }\n },\n weight: {\n constraints: {\n InclusiveMaximum: 1000,\n InclusiveMinimum: 1\n },\n serializedName: \"weight\",\n type: {\n name: \"Number\"\n }\n },\n backendHostHeader: {\n serializedName: \"backendHostHeader\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const CustomHttpsConfiguration: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"CustomHttpsConfiguration\",\n modelProperties: {\n certificateSource: {\n serializedName: \"certificateSource\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n protocolType: {\n serializedName: \"protocolType\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n minimumTlsVersion: {\n serializedName: \"minimumTlsVersion\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n certificateType: {\n serializedName: \"frontDoorCertificateSourceParameters.certificateType\",\n type: {\n name: \"String\"\n }\n },\n vault: {\n serializedName: \"keyVaultCertificateSourceParameters.vault\",\n type: {\n name: \"Composite\",\n className: \"KeyVaultCertificateSourceParametersVault\"\n }\n },\n secretName: {\n serializedName: \"keyVaultCertificateSourceParameters.secretName\",\n type: {\n name: \"String\"\n }\n },\n secretVersion: {\n serializedName: \"keyVaultCertificateSourceParameters.secretVersion\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const KeyVaultCertificateSourceParametersVault: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"KeyVaultCertificateSourceParametersVault\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const FrontendEndpointUpdateParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"FrontendEndpointUpdateParameters\",\n modelProperties: {\n hostName: {\n serializedName: \"hostName\",\n type: {\n name: \"String\"\n }\n },\n sessionAffinityEnabledState: {\n serializedName: \"sessionAffinityEnabledState\",\n type: {\n name: \"String\"\n }\n },\n sessionAffinityTtlSeconds: {\n serializedName: \"sessionAffinityTtlSeconds\",\n type: {\n name: \"Number\"\n }\n },\n webApplicationFirewallPolicyLink: {\n serializedName: \"webApplicationFirewallPolicyLink\",\n type: {\n name: \"Composite\",\n className:\n \"FrontendEndpointUpdateParametersWebApplicationFirewallPolicyLink\"\n }\n }\n }\n }\n};\n\nexport const FrontendEndpointUpdateParametersWebApplicationFirewallPolicyLink: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className:\n \"FrontendEndpointUpdateParametersWebApplicationFirewallPolicyLink\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const BackendPoolsSettings: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"BackendPoolsSettings\",\n modelProperties: {\n enforceCertificateNameCheck: {\n defaultValue: \"Enabled\",\n serializedName: \"enforceCertificateNameCheck\",\n type: {\n name: \"String\"\n }\n },\n sendRecvTimeoutSeconds: {\n constraints: {\n InclusiveMinimum: 16\n },\n serializedName: \"sendRecvTimeoutSeconds\",\n type: {\n name: \"Number\"\n }\n }\n }\n }\n};\n\nexport const FrontendEndpointsListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"FrontendEndpointsListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"FrontendEndpoint\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const PurgeParameters: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PurgeParameters\",\n modelProperties: {\n contentPaths: {\n serializedName: \"contentPaths\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const ValidateCustomDomainInput: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ValidateCustomDomainInput\",\n modelProperties: {\n hostName: {\n serializedName: \"hostName\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ValidateCustomDomainOutput: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ValidateCustomDomainOutput\",\n modelProperties: {\n customDomainValidated: {\n serializedName: \"customDomainValidated\",\n readOnly: true,\n type: {\n name: \"Boolean\"\n }\n },\n reason: {\n serializedName: \"reason\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n message: {\n serializedName: \"message\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const RulesEngineListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"RulesEngineListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"RulesEngine\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ProfileList: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ProfileList\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"Profile\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ProfileUpdateModel: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ProfileUpdateModel\",\n modelProperties: {\n tags: {\n serializedName: \"tags\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n },\n enabledState: {\n serializedName: \"properties.enabledState\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const PreconfiguredEndpointList: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PreconfiguredEndpointList\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"PreconfiguredEndpoint\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ExperimentList: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ExperimentList\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"Experiment\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const Endpoint: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Endpoint\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n type: {\n name: \"String\"\n }\n },\n endpoint: {\n serializedName: \"endpoint\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ExperimentUpdateModel: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ExperimentUpdateModel\",\n modelProperties: {\n tags: {\n serializedName: \"tags\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n },\n description: {\n serializedName: \"properties.description\",\n type: {\n name: \"String\"\n }\n },\n enabledState: {\n serializedName: \"properties.enabledState\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const LatencyMetric: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"LatencyMetric\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n endDateTimeUTC: {\n serializedName: \"endDateTimeUTC\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n aValue: {\n serializedName: \"aValue\",\n readOnly: true,\n type: {\n name: \"Number\"\n }\n },\n bValue: {\n serializedName: \"bValue\",\n readOnly: true,\n type: {\n name: \"Number\"\n }\n },\n delta: {\n serializedName: \"delta\",\n readOnly: true,\n type: {\n name: \"Number\"\n }\n },\n deltaPercent: {\n serializedName: \"deltaPercent\",\n readOnly: true,\n type: {\n name: \"Number\"\n }\n },\n aCLower95CI: {\n serializedName: \"aCLower95CI\",\n readOnly: true,\n type: {\n name: \"Number\"\n }\n },\n aHUpper95CI: {\n serializedName: \"aHUpper95CI\",\n readOnly: true,\n type: {\n name: \"Number\"\n }\n },\n bCLower95CI: {\n serializedName: \"bCLower95CI\",\n readOnly: true,\n type: {\n name: \"Number\"\n }\n },\n bUpper95CI: {\n serializedName: \"bUpper95CI\",\n readOnly: true,\n type: {\n name: \"Number\"\n }\n }\n }\n }\n};\n\nexport const TimeseriesDataPoint: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"TimeseriesDataPoint\",\n modelProperties: {\n dateTimeUTC: {\n serializedName: \"dateTimeUTC\",\n type: {\n name: \"String\"\n }\n },\n value: {\n serializedName: \"value\",\n type: {\n name: \"Number\"\n }\n }\n }\n }\n};\n\nexport const ErrorDetails: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ErrorDetails\",\n modelProperties: {\n code: {\n serializedName: \"code\",\n type: {\n name: \"String\"\n }\n },\n target: {\n serializedName: \"target\",\n type: {\n name: \"String\"\n }\n },\n message: {\n serializedName: \"message\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ErrorModel: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ErrorModel\",\n modelProperties: {\n code: {\n serializedName: \"code\",\n type: {\n name: \"String\"\n }\n },\n message: {\n serializedName: \"message\",\n type: {\n name: \"String\"\n }\n },\n target: {\n serializedName: \"target\",\n type: {\n name: \"String\"\n }\n },\n details: {\n serializedName: \"details\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ErrorDetails\"\n }\n }\n }\n },\n innerError: {\n serializedName: \"innerError\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const AzureAsyncOperationResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"AzureAsyncOperationResult\",\n modelProperties: {\n status: {\n serializedName: \"status\",\n type: {\n name: \"String\"\n }\n },\n error: {\n serializedName: \"error\",\n type: {\n name: \"Composite\",\n className: \"ErrorModel\"\n }\n }\n }\n }\n};\n\nexport const RoutingRuleListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"RoutingRuleListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"RoutingRule\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const CacheConfiguration: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"CacheConfiguration\",\n modelProperties: {\n queryParameterStripDirective: {\n serializedName: \"queryParameterStripDirective\",\n type: {\n name: \"String\"\n }\n },\n queryParameters: {\n serializedName: \"queryParameters\",\n type: {\n name: \"String\"\n }\n },\n dynamicCompression: {\n serializedName: \"dynamicCompression\",\n type: {\n name: \"String\"\n }\n },\n cacheDuration: {\n serializedName: \"cacheDuration\",\n type: {\n name: \"TimeSpan\"\n }\n }\n }\n }\n};\n\nexport const LoadBalancingSettingsListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"LoadBalancingSettingsListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"LoadBalancingSettingsModel\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const HealthProbeSettingsListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"HealthProbeSettingsListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"HealthProbeSettingsModel\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const BackendPoolListResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"BackendPoolListResult\",\n modelProperties: {\n value: {\n serializedName: \"value\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"BackendPool\"\n }\n }\n }\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const WebApplicationFirewallPolicy: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"WebApplicationFirewallPolicy\",\n modelProperties: {\n ...Resource.type.modelProperties,\n etag: {\n serializedName: \"etag\",\n type: {\n name: \"String\"\n }\n },\n sku: {\n serializedName: \"sku\",\n type: {\n name: \"Composite\",\n className: \"Sku\"\n }\n },\n policySettings: {\n serializedName: \"properties.policySettings\",\n type: {\n name: \"Composite\",\n className: \"PolicySettings\"\n }\n },\n customRules: {\n serializedName: \"properties.customRules\",\n type: {\n name: \"Composite\",\n className: \"CustomRuleList\"\n }\n },\n managedRules: {\n serializedName: \"properties.managedRules\",\n type: {\n name: \"Composite\",\n className: \"ManagedRuleSetList\"\n }\n },\n frontendEndpointLinks: {\n serializedName: \"properties.frontendEndpointLinks\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"FrontendEndpointLink\"\n }\n }\n }\n },\n routingRuleLinks: {\n serializedName: \"properties.routingRuleLinks\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"RoutingRuleLink\"\n }\n }\n }\n },\n securityPolicyLinks: {\n serializedName: \"properties.securityPolicyLinks\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SecurityPolicyLink\"\n }\n }\n }\n },\n provisioningState: {\n serializedName: \"properties.provisioningState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n resourceState: {\n serializedName: \"properties.resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ManagedRuleSetDefinition: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleSetDefinition\",\n modelProperties: {\n ...Resource.type.modelProperties,\n provisioningState: {\n serializedName: \"properties.provisioningState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n ruleSetId: {\n serializedName: \"properties.ruleSetId\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n ruleSetType: {\n serializedName: \"properties.ruleSetType\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n ruleSetVersion: {\n serializedName: \"properties.ruleSetVersion\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n ruleGroups: {\n serializedName: \"properties.ruleGroups\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"ManagedRuleGroupDefinition\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const FrontDoor: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"FrontDoor\",\n modelProperties: {\n ...Resource.type.modelProperties,\n friendlyName: {\n serializedName: \"properties.friendlyName\",\n type: {\n name: \"String\"\n }\n },\n routingRules: {\n serializedName: \"properties.routingRules\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"RoutingRule\"\n }\n }\n }\n },\n loadBalancingSettings: {\n serializedName: \"properties.loadBalancingSettings\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"LoadBalancingSettingsModel\"\n }\n }\n }\n },\n healthProbeSettings: {\n serializedName: \"properties.healthProbeSettings\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"HealthProbeSettingsModel\"\n }\n }\n }\n },\n backendPools: {\n serializedName: \"properties.backendPools\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"BackendPool\"\n }\n }\n }\n },\n frontendEndpoints: {\n serializedName: \"properties.frontendEndpoints\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"FrontendEndpoint\"\n }\n }\n }\n },\n backendPoolsSettings: {\n serializedName: \"properties.backendPoolsSettings\",\n type: {\n name: \"Composite\",\n className: \"BackendPoolsSettings\"\n }\n },\n enabledState: {\n serializedName: \"properties.enabledState\",\n type: {\n name: \"String\"\n }\n },\n resourceState: {\n serializedName: \"properties.resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n provisioningState: {\n serializedName: \"properties.provisioningState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n cname: {\n serializedName: \"properties.cname\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n frontdoorId: {\n serializedName: \"properties.frontdoorId\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n rulesEngines: {\n serializedName: \"properties.rulesEngines\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"RulesEngine\"\n }\n }\n }\n },\n extendedProperties: {\n serializedName: \"properties.extendedProperties\",\n readOnly: true,\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n }\n }\n }\n};\n\nexport const Profile: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Profile\",\n modelProperties: {\n ...Resource.type.modelProperties,\n etag: {\n serializedName: \"etag\",\n type: {\n name: \"String\"\n }\n },\n resourceState: {\n serializedName: \"properties.resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n enabledState: {\n serializedName: \"properties.enabledState\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const PreconfiguredEndpoint: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PreconfiguredEndpoint\",\n modelProperties: {\n ...Resource.type.modelProperties,\n description: {\n serializedName: \"properties.description\",\n type: {\n name: \"String\"\n }\n },\n endpoint: {\n serializedName: \"properties.endpoint\",\n type: {\n name: \"String\"\n }\n },\n endpointType: {\n serializedName: \"properties.endpointType\",\n type: {\n name: \"String\"\n }\n },\n backend: {\n serializedName: \"properties.backend\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const Experiment: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Experiment\",\n modelProperties: {\n ...Resource.type.modelProperties,\n description: {\n serializedName: \"properties.description\",\n type: {\n name: \"String\"\n }\n },\n endpointA: {\n serializedName: \"properties.endpointA\",\n type: {\n name: \"Composite\",\n className: \"Endpoint\"\n }\n },\n endpointB: {\n serializedName: \"properties.endpointB\",\n type: {\n name: \"Composite\",\n className: \"Endpoint\"\n }\n },\n enabledState: {\n serializedName: \"properties.enabledState\",\n type: {\n name: \"String\"\n }\n },\n resourceState: {\n serializedName: \"properties.resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n status: {\n serializedName: \"properties.status\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n scriptFileUri: {\n serializedName: \"properties.scriptFileUri\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const LatencyScorecard: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"LatencyScorecard\",\n modelProperties: {\n ...Resource.type.modelProperties,\n idPropertiesId: {\n serializedName: \"properties.id\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n namePropertiesName: {\n serializedName: \"properties.name\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n description: {\n serializedName: \"properties.description\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n endpointA: {\n serializedName: \"properties.endpointA\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n endpointB: {\n serializedName: \"properties.endpointB\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n startDateTimeUTC: {\n serializedName: \"properties.startDateTimeUTC\",\n readOnly: true,\n type: {\n name: \"DateTime\"\n }\n },\n endDateTimeUTC: {\n serializedName: \"properties.endDateTimeUTC\",\n readOnly: true,\n type: {\n name: \"DateTime\"\n }\n },\n country: {\n serializedName: \"properties.country\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n latencyMetrics: {\n serializedName: \"properties.latencyMetrics\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"LatencyMetric\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const Timeseries: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"Timeseries\",\n modelProperties: {\n ...Resource.type.modelProperties,\n endpoint: {\n serializedName: \"properties.endpoint\",\n type: {\n name: \"String\"\n }\n },\n startDateTimeUTC: {\n serializedName: \"properties.startDateTimeUTC\",\n type: {\n name: \"String\"\n }\n },\n endDateTimeUTC: {\n serializedName: \"properties.endDateTimeUTC\",\n type: {\n name: \"String\"\n }\n },\n aggregationInterval: {\n serializedName: \"properties.aggregationInterval\",\n type: {\n name: \"String\"\n }\n },\n timeseriesType: {\n serializedName: \"properties.timeseriesType\",\n type: {\n name: \"String\"\n }\n },\n country: {\n serializedName: \"properties.country\",\n type: {\n name: \"String\"\n }\n },\n timeseriesData: {\n serializedName: \"properties.timeseriesData\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"TimeseriesDataPoint\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const RulesEngineProperties: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"RulesEngineProperties\",\n modelProperties: {\n ...RulesEngineUpdateParameters.type.modelProperties,\n resourceState: {\n serializedName: \"resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const ForwardingConfiguration: coreClient.CompositeMapper = {\n serializedName:\n \"#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration\",\n type: {\n name: \"Composite\",\n className: \"ForwardingConfiguration\",\n uberParent: \"RouteConfiguration\",\n polymorphicDiscriminator: RouteConfiguration.type.polymorphicDiscriminator,\n modelProperties: {\n ...RouteConfiguration.type.modelProperties,\n customForwardingPath: {\n serializedName: \"customForwardingPath\",\n type: {\n name: \"String\"\n }\n },\n forwardingProtocol: {\n serializedName: \"forwardingProtocol\",\n type: {\n name: \"String\"\n }\n },\n cacheConfiguration: {\n serializedName: \"cacheConfiguration\",\n type: {\n name: \"Composite\",\n className: \"CacheConfiguration\"\n }\n },\n backendPool: {\n serializedName: \"backendPool\",\n type: {\n name: \"Composite\",\n className: \"SubResource\"\n }\n }\n }\n }\n};\n\nexport const RedirectConfiguration: coreClient.CompositeMapper = {\n serializedName:\n \"#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration\",\n type: {\n name: \"Composite\",\n className: \"RedirectConfiguration\",\n uberParent: \"RouteConfiguration\",\n polymorphicDiscriminator: RouteConfiguration.type.polymorphicDiscriminator,\n modelProperties: {\n ...RouteConfiguration.type.modelProperties,\n redirectType: {\n serializedName: \"redirectType\",\n type: {\n name: \"String\"\n }\n },\n redirectProtocol: {\n serializedName: \"redirectProtocol\",\n type: {\n name: \"String\"\n }\n },\n customHost: {\n serializedName: \"customHost\",\n type: {\n name: \"String\"\n }\n },\n customPath: {\n serializedName: \"customPath\",\n type: {\n name: \"String\"\n }\n },\n customFragment: {\n serializedName: \"customFragment\",\n type: {\n name: \"String\"\n }\n },\n customQueryString: {\n serializedName: \"customQueryString\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const FrontDoorProperties: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"FrontDoorProperties\",\n modelProperties: {\n ...FrontDoorUpdateParameters.type.modelProperties,\n resourceState: {\n serializedName: \"resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n provisioningState: {\n serializedName: \"provisioningState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n cname: {\n serializedName: \"cname\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n frontdoorId: {\n serializedName: \"frontdoorId\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n rulesEngines: {\n serializedName: \"rulesEngines\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"RulesEngine\"\n }\n }\n }\n },\n extendedProperties: {\n serializedName: \"extendedProperties\",\n readOnly: true,\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"String\" } }\n }\n }\n }\n }\n};\n\nexport const RoutingRuleProperties: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"RoutingRuleProperties\",\n modelProperties: {\n ...RoutingRuleUpdateParameters.type.modelProperties,\n resourceState: {\n serializedName: \"resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const RoutingRule: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"RoutingRule\",\n modelProperties: {\n ...SubResource.type.modelProperties,\n name: {\n serializedName: \"name\",\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n frontendEndpoints: {\n serializedName: \"properties.frontendEndpoints\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SubResource\"\n }\n }\n }\n },\n acceptedProtocols: {\n serializedName: \"properties.acceptedProtocols\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n },\n patternsToMatch: {\n serializedName: \"properties.patternsToMatch\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n },\n enabledState: {\n serializedName: \"properties.enabledState\",\n type: {\n name: \"String\"\n }\n },\n routeConfiguration: {\n serializedName: \"properties.routeConfiguration\",\n type: {\n name: \"Composite\",\n className: \"RouteConfiguration\"\n }\n },\n rulesEngine: {\n serializedName: \"properties.rulesEngine\",\n type: {\n name: \"Composite\",\n className: \"SubResource\"\n }\n },\n webApplicationFirewallPolicyLink: {\n serializedName: \"properties.webApplicationFirewallPolicyLink\",\n type: {\n name: \"Composite\",\n className:\n \"RoutingRuleUpdateParametersWebApplicationFirewallPolicyLink\"\n }\n },\n resourceState: {\n serializedName: \"properties.resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const LoadBalancingSettingsModel: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"LoadBalancingSettingsModel\",\n modelProperties: {\n ...SubResource.type.modelProperties,\n name: {\n serializedName: \"name\",\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n sampleSize: {\n serializedName: \"properties.sampleSize\",\n type: {\n name: \"Number\"\n }\n },\n successfulSamplesRequired: {\n serializedName: \"properties.successfulSamplesRequired\",\n type: {\n name: \"Number\"\n }\n },\n additionalLatencyMilliseconds: {\n serializedName: \"properties.additionalLatencyMilliseconds\",\n type: {\n name: \"Number\"\n }\n },\n resourceState: {\n serializedName: \"properties.resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const HealthProbeSettingsModel: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"HealthProbeSettingsModel\",\n modelProperties: {\n ...SubResource.type.modelProperties,\n name: {\n serializedName: \"name\",\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n path: {\n serializedName: \"properties.path\",\n type: {\n name: \"String\"\n }\n },\n protocol: {\n serializedName: \"properties.protocol\",\n type: {\n name: \"String\"\n }\n },\n intervalInSeconds: {\n serializedName: \"properties.intervalInSeconds\",\n type: {\n name: \"Number\"\n }\n },\n healthProbeMethod: {\n defaultValue: \"HEAD\",\n serializedName: \"properties.healthProbeMethod\",\n type: {\n name: \"String\"\n }\n },\n enabledState: {\n serializedName: \"properties.enabledState\",\n type: {\n name: \"String\"\n }\n },\n resourceState: {\n serializedName: \"properties.resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const BackendPool: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"BackendPool\",\n modelProperties: {\n ...SubResource.type.modelProperties,\n name: {\n serializedName: \"name\",\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n backends: {\n serializedName: \"properties.backends\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"Backend\"\n }\n }\n }\n },\n loadBalancingSettings: {\n serializedName: \"properties.loadBalancingSettings\",\n type: {\n name: \"Composite\",\n className: \"SubResource\"\n }\n },\n healthProbeSettings: {\n serializedName: \"properties.healthProbeSettings\",\n type: {\n name: \"Composite\",\n className: \"SubResource\"\n }\n },\n resourceState: {\n serializedName: \"properties.resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const FrontendEndpoint: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"FrontendEndpoint\",\n modelProperties: {\n ...SubResource.type.modelProperties,\n name: {\n serializedName: \"name\",\n type: {\n name: \"String\"\n }\n },\n type: {\n serializedName: \"type\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n hostName: {\n serializedName: \"properties.hostName\",\n type: {\n name: \"String\"\n }\n },\n sessionAffinityEnabledState: {\n serializedName: \"properties.sessionAffinityEnabledState\",\n type: {\n name: \"String\"\n }\n },\n sessionAffinityTtlSeconds: {\n serializedName: \"properties.sessionAffinityTtlSeconds\",\n type: {\n name: \"Number\"\n }\n },\n webApplicationFirewallPolicyLink: {\n serializedName: \"properties.webApplicationFirewallPolicyLink\",\n type: {\n name: \"Composite\",\n className:\n \"FrontendEndpointUpdateParametersWebApplicationFirewallPolicyLink\"\n }\n },\n resourceState: {\n serializedName: \"properties.resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n customHttpsProvisioningState: {\n serializedName: \"properties.customHttpsProvisioningState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n customHttpsProvisioningSubstate: {\n serializedName: \"properties.customHttpsProvisioningSubstate\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n customHttpsConfiguration: {\n serializedName: \"properties.customHttpsConfiguration\",\n type: {\n name: \"Composite\",\n className: \"CustomHttpsConfiguration\"\n }\n }\n }\n }\n};\n\nexport const LoadBalancingSettingsProperties: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"LoadBalancingSettingsProperties\",\n modelProperties: {\n ...LoadBalancingSettingsUpdateParameters.type.modelProperties,\n resourceState: {\n serializedName: \"resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const HealthProbeSettingsProperties: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"HealthProbeSettingsProperties\",\n modelProperties: {\n ...HealthProbeSettingsUpdateParameters.type.modelProperties,\n resourceState: {\n serializedName: \"resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const BackendPoolProperties: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"BackendPoolProperties\",\n modelProperties: {\n ...BackendPoolUpdateParameters.type.modelProperties,\n resourceState: {\n serializedName: \"resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const FrontendEndpointProperties: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"FrontendEndpointProperties\",\n modelProperties: {\n ...FrontendEndpointUpdateParameters.type.modelProperties,\n resourceState: {\n serializedName: \"resourceState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n customHttpsProvisioningState: {\n serializedName: \"customHttpsProvisioningState\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n customHttpsProvisioningSubstate: {\n serializedName: \"customHttpsProvisioningSubstate\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n customHttpsConfiguration: {\n serializedName: \"customHttpsConfiguration\",\n type: {\n name: \"Composite\",\n className: \"CustomHttpsConfiguration\"\n }\n }\n }\n }\n};\n\nexport let discriminators = {\n RouteConfiguration: RouteConfiguration,\n \"RouteConfiguration.#Microsoft.Azure.FrontDoor.Models.FrontdoorForwardingConfiguration\": ForwardingConfiguration,\n \"RouteConfiguration.#Microsoft.Azure.FrontDoor.Models.FrontdoorRedirectConfiguration\": RedirectConfiguration\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport {\n OperationParameter,\n OperationURLParameter,\n OperationQueryParameter\n} from \"@azure/core-client\";\nimport {\n WebApplicationFirewallPolicy as WebApplicationFirewallPolicyMapper,\n TagsObject as TagsObjectMapper,\n CheckNameAvailabilityInput as CheckNameAvailabilityInputMapper,\n FrontDoor as FrontDoorMapper,\n ValidateCustomDomainInput as ValidateCustomDomainInputMapper,\n CustomHttpsConfiguration as CustomHttpsConfigurationMapper,\n PurgeParameters as PurgeParametersMapper,\n RulesEngine as RulesEngineMapper,\n Profile as ProfileMapper,\n ProfileUpdateModel as ProfileUpdateModelMapper,\n Experiment as ExperimentMapper,\n ExperimentUpdateModel as ExperimentUpdateModelMapper\n} from \"../models/mappers\";\n\nexport const accept: OperationParameter = {\n parameterPath: \"accept\",\n mapper: {\n defaultValue: \"application/json\",\n isConstant: true,\n serializedName: \"Accept\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const $host: OperationURLParameter = {\n parameterPath: \"$host\",\n mapper: {\n serializedName: \"$host\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n skipEncoding: true\n};\n\nexport const resourceGroupName: OperationURLParameter = {\n parameterPath: \"resourceGroupName\",\n mapper: {\n constraints: {\n Pattern: new RegExp(\"^[a-zA-Z0-9_\\\\-\\\\(\\\\)\\\\.]*[^\\\\.]$\"),\n MaxLength: 80,\n MinLength: 1\n },\n serializedName: \"resourceGroupName\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const subscriptionId: OperationURLParameter = {\n parameterPath: \"subscriptionId\",\n mapper: {\n serializedName: \"subscriptionId\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const apiVersion: OperationQueryParameter = {\n parameterPath: \"apiVersion\",\n mapper: {\n defaultValue: \"2022-05-01\",\n isConstant: true,\n serializedName: \"api-version\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const policyName: OperationURLParameter = {\n parameterPath: \"policyName\",\n mapper: {\n constraints: {\n MaxLength: 128\n },\n serializedName: \"policyName\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const contentType: OperationParameter = {\n parameterPath: [\"options\", \"contentType\"],\n mapper: {\n defaultValue: \"application/json\",\n isConstant: true,\n serializedName: \"Content-Type\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const parameters: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: WebApplicationFirewallPolicyMapper\n};\n\nexport const parameters1: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: TagsObjectMapper\n};\n\nexport const nextLink: OperationURLParameter = {\n parameterPath: \"nextLink\",\n mapper: {\n serializedName: \"nextLink\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n skipEncoding: true\n};\n\nexport const checkFrontDoorNameAvailabilityInput: OperationParameter = {\n parameterPath: \"checkFrontDoorNameAvailabilityInput\",\n mapper: CheckNameAvailabilityInputMapper\n};\n\nexport const apiVersion1: OperationQueryParameter = {\n parameterPath: \"apiVersion\",\n mapper: {\n defaultValue: \"2021-06-01\",\n isConstant: true,\n serializedName: \"api-version\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const frontDoorName: OperationURLParameter = {\n parameterPath: \"frontDoorName\",\n mapper: {\n constraints: {\n Pattern: new RegExp(\"^[a-zA-Z0-9]+([-a-zA-Z0-9]?[a-zA-Z0-9])*$\"),\n MaxLength: 64,\n MinLength: 5\n },\n serializedName: \"frontDoorName\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const frontDoorParameters: OperationParameter = {\n parameterPath: \"frontDoorParameters\",\n mapper: FrontDoorMapper\n};\n\nexport const customDomainProperties: OperationParameter = {\n parameterPath: \"customDomainProperties\",\n mapper: ValidateCustomDomainInputMapper\n};\n\nexport const frontendEndpointName: OperationURLParameter = {\n parameterPath: \"frontendEndpointName\",\n mapper: {\n constraints: {\n Pattern: new RegExp(\"^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$\"),\n MaxLength: 255,\n MinLength: 1\n },\n serializedName: \"frontendEndpointName\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const customHttpsConfiguration: OperationParameter = {\n parameterPath: \"customHttpsConfiguration\",\n mapper: CustomHttpsConfigurationMapper\n};\n\nexport const contentFilePaths: OperationParameter = {\n parameterPath: \"contentFilePaths\",\n mapper: PurgeParametersMapper\n};\n\nexport const rulesEngineName: OperationURLParameter = {\n parameterPath: \"rulesEngineName\",\n mapper: {\n constraints: {\n Pattern: new RegExp(\"^[a-zA-Z0-9]+(-*[a-zA-Z0-9])*$\"),\n MaxLength: 90,\n MinLength: 1\n },\n serializedName: \"rulesEngineName\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const rulesEngineParameters: OperationParameter = {\n parameterPath: \"rulesEngineParameters\",\n mapper: RulesEngineMapper\n};\n\nexport const apiVersion2: OperationQueryParameter = {\n parameterPath: \"apiVersion\",\n mapper: {\n defaultValue: \"2019-11-01\",\n isConstant: true,\n serializedName: \"api-version\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const profileName: OperationURLParameter = {\n parameterPath: \"profileName\",\n mapper: {\n constraints: {\n Pattern: new RegExp(\"^[a-zA-Z0-9_\\\\-\\\\(\\\\)\\\\.]*[^\\\\.]$\")\n },\n serializedName: \"profileName\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const parameters2: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: ProfileMapper\n};\n\nexport const parameters3: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: ProfileUpdateModelMapper\n};\n\nexport const experimentName: OperationURLParameter = {\n parameterPath: \"experimentName\",\n mapper: {\n constraints: {\n Pattern: new RegExp(\"^[a-zA-Z0-9_\\\\-\\\\(\\\\)\\\\.]*[^\\\\.]$\")\n },\n serializedName: \"experimentName\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const parameters4: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: ExperimentMapper\n};\n\nexport const parameters5: OperationParameter = {\n parameterPath: \"parameters\",\n mapper: ExperimentUpdateModelMapper\n};\n\nexport const endDateTimeUTC: OperationQueryParameter = {\n parameterPath: [\"options\", \"endDateTimeUTC\"],\n mapper: {\n serializedName: \"endDateTimeUTC\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const country: OperationQueryParameter = {\n parameterPath: [\"options\", \"country\"],\n mapper: {\n serializedName: \"country\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const aggregationInterval: OperationQueryParameter = {\n parameterPath: \"aggregationInterval\",\n mapper: {\n serializedName: \"aggregationInterval\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const startDateTimeUTC: OperationQueryParameter = {\n parameterPath: \"startDateTimeUTC\",\n mapper: {\n serializedName: \"startDateTimeUTC\",\n required: true,\n type: {\n name: \"DateTime\"\n }\n }\n};\n\nexport const endDateTimeUTC1: OperationQueryParameter = {\n parameterPath: \"endDateTimeUTC\",\n mapper: {\n serializedName: \"endDateTimeUTC\",\n required: true,\n type: {\n name: \"DateTime\"\n }\n }\n};\n\nexport const aggregationInterval1: OperationQueryParameter = {\n parameterPath: \"aggregationInterval\",\n mapper: {\n serializedName: \"aggregationInterval\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const timeseriesType: OperationQueryParameter = {\n parameterPath: \"timeseriesType\",\n mapper: {\n serializedName: \"timeseriesType\",\n required: true,\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const endpoint: OperationQueryParameter = {\n parameterPath: [\"options\", \"endpoint\"],\n mapper: {\n serializedName: \"endpoint\",\n type: {\n name: \"String\"\n }\n }\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\n// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { AbortSignalLike } from \"@azure/abort-controller\";\nimport { LongRunningOperation, LroResponse } from \"@azure/core-lro\";\n\nexport function createLroSpec<T>(inputs: {\n sendOperationFn: (args: any, spec: any) => Promise<LroResponse<T>>;\n args: Record<string, unknown>;\n spec: {\n readonly requestBody?: unknown;\n readonly path?: string;\n readonly httpMethod: string;\n } & Record<string, any>;\n}): LongRunningOperation<T> {\n const { args, spec, sendOperationFn } = inputs;\n return {\n requestMethod: spec.httpMethod,\n requestPath: spec.path!,\n sendInitialRequest: () => sendOperationFn(args, spec),\n sendPollRequest: (\n path: string,\n options?: { abortSignal?: AbortSignalLike }\n ) => {\n const { requestBody, ...restSpec } = spec;\n return sendOperationFn(args, {\n ...restSpec,\n httpMethod: \"GET\",\n path,\n abortSignal: options?.abortSignal\n });\n }\n };\n}\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport { PagedAsyncIterableIterator, PageSettings } from \"@azure/core-paging\";\nimport { setContinuationToken } from \"../pagingHelper\";\nimport { Policies } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { FrontDoorManagementClient } from \"../frontDoorManagementClient\";\nimport {\n SimplePollerLike,\n OperationState,\n createHttpPoller\n} from \"@azure/core-lro\";\nimport { createLroSpec } from \"../lroImpl\";\nimport {\n WebApplicationFirewallPolicy,\n PoliciesListNextOptionalParams,\n PoliciesListOptionalParams,\n PoliciesListResponse,\n PoliciesListBySubscriptionNextOptionalParams,\n PoliciesListBySubscriptionOptionalParams,\n PoliciesListBySubscriptionResponse,\n PoliciesGetOptionalParams,\n PoliciesGetResponse,\n PoliciesCreateOrUpdateOptionalParams,\n PoliciesCreateOrUpdateResponse,\n TagsObject,\n PoliciesUpdateOptionalParams,\n PoliciesUpdateResponse,\n PoliciesDeleteOptionalParams,\n PoliciesListNextResponse,\n PoliciesListBySubscriptionNextResponse\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class containing Policies operations. */\nexport class PoliciesImpl implements Policies {\n private readonly client: FrontDoorManagementClient;\n\n /**\n * Initialize a new instance of the class Policies class.\n * @param client Reference to the service client\n */\n constructor(client: FrontDoorManagementClient) {\n this.client = client;\n }\n\n /**\n * Lists all of the protection policies within a resource group.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param options The options parameters.\n */\n public list(\n resourceGroupName: string,\n options?: PoliciesListOptionalParams\n ): PagedAsyncIterableIterator<WebApplicationFirewallPolicy> {\n const iter = this.listPagingAll(resourceGroupName, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings?: PageSettings) => {\n if (settings?.maxPageSize) {\n throw new Error(\"maxPageSize is not supported by this operation.\");\n }\n return this.listPagingPage(resourceGroupName, options, settings);\n }\n };\n }\n\n private async *listPagingPage(\n resourceGroupName: string,\n options?: PoliciesListOptionalParams,\n settings?: PageSettings\n ): AsyncIterableIterator<WebApplicationFirewallPolicy[]> {\n let result: PoliciesListResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._list(resourceGroupName, options);\n let page = result.value || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listNext(\n resourceGroupName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n let page = result.value || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listPagingAll(\n resourceGroupName: string,\n options?: PoliciesListOptionalParams\n ): AsyncIterableIterator<WebApplicationFirewallPolicy> {\n for await (const page of this.listPagingPage(resourceGroupName, options)) {\n yield* page;\n }\n }\n\n /**\n * Lists all of the protection policies within a subscription.\n * @param options The options parameters.\n */\n public listBySubscription(\n options?: PoliciesListBySubscriptionOptionalParams\n ): PagedAsyncIterableIterator<WebApplicationFirewallPolicy> {\n const iter = this.listBySubscriptionPagingAll(options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings?: PageSettings) => {\n if (settings?.maxPageSize) {\n throw new Error(\"maxPageSize is not supported by this operation.\");\n }\n return this.listBySubscriptionPagingPage(options, settings);\n }\n };\n }\n\n private async *listBySubscriptionPagingPage(\n options?: PoliciesListBySubscriptionOptionalParams,\n settings?: PageSettings\n ): AsyncIterableIterator<WebApplicationFirewallPolicy[]> {\n let result: PoliciesListBySubscriptionResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listBySubscription(options);\n let page = result.value || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listBySubscriptionNext(continuationToken, options);\n continuationToken = result.nextLink;\n let page = result.value || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listBySubscriptionPagingAll(\n options?: PoliciesListBySubscriptionOptionalParams\n ): AsyncIterableIterator<WebApplicationFirewallPolicy> {\n for await (const page of this.listBySubscriptionPagingPage(options)) {\n yield* page;\n }\n }\n\n /**\n * Lists all of the protection policies within a resource group.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param options The options parameters.\n */\n private _list(\n resourceGroupName: string,\n options?: PoliciesListOptionalParams\n ): Promise<PoliciesListResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, options },\n listOperationSpec\n );\n }\n\n /**\n * Lists all of the protection policies within a subscription.\n * @param options The options parameters.\n */\n private _listBySubscription(\n options?: PoliciesListBySubscriptionOptionalParams\n ): Promise<PoliciesListBySubscriptionResponse> {\n return this.client.sendOperationRequest(\n { options },\n listBySubscriptionOperationSpec\n );\n }\n\n /**\n * Retrieve protection policy with specified name within a resource group.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param policyName The name of the Web Application Firewall Policy.\n * @param options The options parameters.\n */\n get(\n resourceGroupName: string,\n policyName: string,\n options?: PoliciesGetOptionalParams\n ): Promise<PoliciesGetResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, policyName, options },\n getOperationSpec\n );\n }\n\n /**\n * Create or update policy with specified rule set name within a resource group.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param policyName The name of the Web Application Firewall Policy.\n * @param parameters Policy to be created.\n * @param options The options parameters.\n */\n async beginCreateOrUpdate(\n resourceGroupName: string,\n policyName: string,\n parameters: WebApplicationFirewallPolicy,\n options?: PoliciesCreateOrUpdateOptionalParams\n ): Promise<\n SimplePollerLike<\n OperationState<PoliciesCreateOrUpdateResponse>,\n PoliciesCreateOrUpdateResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<PoliciesCreateOrUpdateResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: { resourceGroupName, policyName, parameters, options },\n spec: createOrUpdateOperationSpec\n });\n const poller = await createHttpPoller<\n PoliciesCreateOrUpdateResponse,\n OperationState<PoliciesCreateOrUpdateResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Create or update policy with specified rule set name within a resource group.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param policyName The name of the Web Application Firewall Policy.\n * @param parameters Policy to be created.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateAndWait(\n resourceGroupName: string,\n policyName: string,\n parameters: WebApplicationFirewallPolicy,\n options?: PoliciesCreateOrUpdateOptionalParams\n ): Promise<PoliciesCreateOrUpdateResponse> {\n const poller = await this.beginCreateOrUpdate(\n resourceGroupName,\n policyName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Patch a specific frontdoor webApplicationFirewall policy for tags update under the specified\n * subscription and resource group.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param policyName The name of the Web Application Firewall Policy.\n * @param parameters FrontdoorWebApplicationFirewallPolicy parameters to be patched.\n * @param options The options parameters.\n */\n async beginUpdate(\n resourceGroupName: string,\n policyName: string,\n parameters: TagsObject,\n options?: PoliciesUpdateOptionalParams\n ): Promise<\n SimplePollerLike<\n OperationState<PoliciesUpdateResponse>,\n PoliciesUpdateResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<PoliciesUpdateResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: { resourceGroupName, policyName, parameters, options },\n spec: updateOperationSpec\n });\n const poller = await createHttpPoller<\n PoliciesUpdateResponse,\n OperationState<PoliciesUpdateResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Patch a specific frontdoor webApplicationFirewall policy for tags update under the specified\n * subscription and resource group.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param policyName The name of the Web Application Firewall Policy.\n * @param parameters FrontdoorWebApplicationFirewallPolicy parameters to be patched.\n * @param options The options parameters.\n */\n async beginUpdateAndWait(\n resourceGroupName: string,\n policyName: string,\n parameters: TagsObject,\n options?: PoliciesUpdateOptionalParams\n ): Promise<PoliciesUpdateResponse> {\n const poller = await this.beginUpdate(\n resourceGroupName,\n policyName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Deletes Policy\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param policyName The name of the Web Application Firewall Policy.\n * @param options The options parameters.\n */\n async beginDelete(\n resourceGroupName: string,\n policyName: string,\n options?: PoliciesDeleteOptionalParams\n ): Promise<SimplePollerLike<OperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: { resourceGroupName, policyName, options },\n spec: deleteOperationSpec\n });\n const poller = await createHttpPoller<void, OperationState<void>>(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Deletes Policy\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param policyName The name of the Web Application Firewall Policy.\n * @param options The options parameters.\n */\n async beginDeleteAndWait(\n resourceGroupName: string,\n policyName: string,\n options?: PoliciesDeleteOptionalParams\n ): Promise<void> {\n const poller = await this.beginDelete(\n resourceGroupName,\n policyName,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * ListNext\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n private _listNext(\n resourceGroupName: string,\n nextLink: string,\n options?: PoliciesListNextOptionalParams\n ): Promise<PoliciesListNextResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, nextLink, options },\n listNextOperationSpec\n );\n }\n\n /**\n * ListBySubscriptionNext\n * @param nextLink The nextLink from the previous successful call to the ListBySubscription method.\n * @param options The options parameters.\n */\n private _listBySubscriptionNext(\n nextLink: string,\n options?: PoliciesListBySubscriptionNextOptionalParams\n ): Promise<PoliciesListBySubscriptionNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listBySubscriptionNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst listOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoorWebApplicationFirewallPolicies\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.WebApplicationFirewallPolicyList\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listBySubscriptionOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Network/frontDoorWebApplicationFirewallPolicies\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.WebApplicationFirewallPolicyList\n },\n default: {\n bodyMapper: Mappers.DefaultErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.subscriptionId],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/FrontDoorWebApplicationFirewallPolicies/{policyName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.WebApplicationFirewallPolicy\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.policyName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/FrontDoorWebApplicationFirewallPolicies/{policyName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.WebApplicationFirewallPolicy\n },\n 201: {\n bodyMapper: Mappers.WebApplicationFirewallPolicy\n },\n 202: {\n bodyMapper: Mappers.WebApplicationFirewallPolicy\n },\n 204: {\n bodyMapper: Mappers.WebApplicationFirewallPolicy\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n requestBody: Parameters.parameters,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.policyName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst updateOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/FrontDoorWebApplicationFirewallPolicies/{policyName}\",\n httpMethod: \"PATCH\",\n responses: {\n 200: {\n bodyMapper: Mappers.WebApplicationFirewallPolicy\n },\n 201: {\n bodyMapper: Mappers.WebApplicationFirewallPolicy\n },\n 202: {\n bodyMapper: Mappers.WebApplicationFirewallPolicy\n },\n 204: {\n bodyMapper: Mappers.WebApplicationFirewallPolicy\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n requestBody: Parameters.parameters1,\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.policyName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst deleteOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/FrontDoorWebApplicationFirewallPolicies/{policyName}\",\n httpMethod: \"DELETE\",\n responses: { 200: {}, 201: {}, 202: {}, 204: {} },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.policyName\n ],\n serializer\n};\nconst listNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.WebApplicationFirewallPolicyList\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.nextLink\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listBySubscriptionNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.WebApplicationFirewallPolicyList\n },\n default: {\n bodyMapper: Mappers.DefaultErrorResponse\n }\n },\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.nextLink\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport { PagedAsyncIterableIterator, PageSettings } from \"@azure/core-paging\";\nimport { setContinuationToken } from \"../pagingHelper\";\nimport { ManagedRuleSets } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { FrontDoorManagementClient } from \"../frontDoorManagementClient\";\nimport {\n ManagedRuleSetDefinition,\n ManagedRuleSetsListNextOptionalParams,\n ManagedRuleSetsListOptionalParams,\n ManagedRuleSetsListResponse,\n ManagedRuleSetsListNextResponse\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class containing ManagedRuleSets operations. */\nexport class ManagedRuleSetsImpl implements ManagedRuleSets {\n private readonly client: FrontDoorManagementClient;\n\n /**\n * Initialize a new instance of the class ManagedRuleSets class.\n * @param client Reference to the service client\n */\n constructor(client: FrontDoorManagementClient) {\n this.client = client;\n }\n\n /**\n * Lists all available managed rule sets.\n * @param options The options parameters.\n */\n public list(\n options?: ManagedRuleSetsListOptionalParams\n ): PagedAsyncIterableIterator<ManagedRuleSetDefinition> {\n const iter = this.listPagingAll(options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings?: PageSettings) => {\n if (settings?.maxPageSize) {\n throw new Error(\"maxPageSize is not supported by this operation.\");\n }\n return this.listPagingPage(options, settings);\n }\n };\n }\n\n private async *listPagingPage(\n options?: ManagedRuleSetsListOptionalParams,\n settings?: PageSettings\n ): AsyncIterableIterator<ManagedRuleSetDefinition[]> {\n let result: ManagedRuleSetsListResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._list(options);\n let page = result.value || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listNext(continuationToken, options);\n continuationToken = result.nextLink;\n let page = result.value || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listPagingAll(\n options?: ManagedRuleSetsListOptionalParams\n ): AsyncIterableIterator<ManagedRuleSetDefinition> {\n for await (const page of this.listPagingPage(options)) {\n yield* page;\n }\n }\n\n /**\n * Lists all available managed rule sets.\n * @param options The options parameters.\n */\n private _list(\n options?: ManagedRuleSetsListOptionalParams\n ): Promise<ManagedRuleSetsListResponse> {\n return this.client.sendOperationRequest({ options }, listOperationSpec);\n }\n\n /**\n * ListNext\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n private _listNext(\n nextLink: string,\n options?: ManagedRuleSetsListNextOptionalParams\n ): Promise<ManagedRuleSetsListNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst listOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Network/FrontDoorWebApplicationFirewallManagedRuleSets\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ManagedRuleSetDefinitionList\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.$host, Parameters.subscriptionId],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ManagedRuleSetDefinitionList\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.nextLink\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport { FrontDoorNameAvailability } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { FrontDoorManagementClient } from \"../frontDoorManagementClient\";\nimport {\n CheckNameAvailabilityInput,\n FrontDoorNameAvailabilityCheckOptionalParams,\n FrontDoorNameAvailabilityCheckResponse\n} from \"../models\";\n\n/** Class containing FrontDoorNameAvailability operations. */\nexport class FrontDoorNameAvailabilityImpl\n implements FrontDoorNameAvailability {\n private readonly client: FrontDoorManagementClient;\n\n /**\n * Initialize a new instance of the class FrontDoorNameAvailability class.\n * @param client Reference to the service client\n */\n constructor(client: FrontDoorManagementClient) {\n this.client = client;\n }\n\n /**\n * Check the availability of a Front Door resource name.\n * @param checkFrontDoorNameAvailabilityInput Input to check.\n * @param options The options parameters.\n */\n check(\n checkFrontDoorNameAvailabilityInput: CheckNameAvailabilityInput,\n options?: FrontDoorNameAvailabilityCheckOptionalParams\n ): Promise<FrontDoorNameAvailabilityCheckResponse> {\n return this.client.sendOperationRequest(\n { checkFrontDoorNameAvailabilityInput, options },\n checkOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst checkOperationSpec: coreClient.OperationSpec = {\n path: \"/providers/Microsoft.Network/checkFrontDoorNameAvailability\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.CheckNameAvailabilityOutput\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n requestBody: Parameters.checkFrontDoorNameAvailabilityInput,\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [Parameters.$host],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport { FrontDoorNameAvailabilityWithSubscription } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { FrontDoorManagementClient } from \"../frontDoorManagementClient\";\nimport {\n CheckNameAvailabilityInput,\n FrontDoorNameAvailabilityWithSubscriptionCheckOptionalParams,\n FrontDoorNameAvailabilityWithSubscriptionCheckResponse\n} from \"../models\";\n\n/** Class containing FrontDoorNameAvailabilityWithSubscription operations. */\nexport class FrontDoorNameAvailabilityWithSubscriptionImpl\n implements FrontDoorNameAvailabilityWithSubscription {\n private readonly client: FrontDoorManagementClient;\n\n /**\n * Initialize a new instance of the class FrontDoorNameAvailabilityWithSubscription class.\n * @param client Reference to the service client\n */\n constructor(client: FrontDoorManagementClient) {\n this.client = client;\n }\n\n /**\n * Check the availability of a Front Door subdomain.\n * @param checkFrontDoorNameAvailabilityInput Input to check.\n * @param options The options parameters.\n */\n check(\n checkFrontDoorNameAvailabilityInput: CheckNameAvailabilityInput,\n options?: FrontDoorNameAvailabilityWithSubscriptionCheckOptionalParams\n ): Promise<FrontDoorNameAvailabilityWithSubscriptionCheckResponse> {\n return this.client.sendOperationRequest(\n { checkFrontDoorNameAvailabilityInput, options },\n checkOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst checkOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Network/checkFrontDoorNameAvailability\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.CheckNameAvailabilityOutput\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n requestBody: Parameters.checkFrontDoorNameAvailabilityInput,\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [Parameters.$host, Parameters.subscriptionId],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport { PagedAsyncIterableIterator, PageSettings } from \"@azure/core-paging\";\nimport { setContinuationToken } from \"../pagingHelper\";\nimport { FrontDoors } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { FrontDoorManagementClient } from \"../frontDoorManagementClient\";\nimport {\n SimplePollerLike,\n OperationState,\n createHttpPoller\n} from \"@azure/core-lro\";\nimport { createLroSpec } from \"../lroImpl\";\nimport {\n FrontDoor,\n FrontDoorsListNextOptionalParams,\n FrontDoorsListOptionalParams,\n FrontDoorsListResponse,\n FrontDoorsListByResourceGroupNextOptionalParams,\n FrontDoorsListByResourceGroupOptionalParams,\n FrontDoorsListByResourceGroupResponse,\n FrontDoorsGetOptionalParams,\n FrontDoorsGetResponse,\n FrontDoorsCreateOrUpdateOptionalParams,\n FrontDoorsCreateOrUpdateResponse,\n FrontDoorsDeleteOptionalParams,\n ValidateCustomDomainInput,\n FrontDoorsValidateCustomDomainOptionalParams,\n FrontDoorsValidateCustomDomainResponse,\n FrontDoorsListNextResponse,\n FrontDoorsListByResourceGroupNextResponse\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class containing FrontDoors operations. */\nexport class FrontDoorsImpl implements FrontDoors {\n private readonly client: FrontDoorManagementClient;\n\n /**\n * Initialize a new instance of the class FrontDoors class.\n * @param client Reference to the service client\n */\n constructor(client: FrontDoorManagementClient) {\n this.client = client;\n }\n\n /**\n * Lists all of the Front Doors within an Azure subscription.\n * @param options The options parameters.\n */\n public list(\n options?: FrontDoorsListOptionalParams\n ): PagedAsyncIterableIterator<FrontDoor> {\n const iter = this.listPagingAll(options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings?: PageSettings) => {\n if (settings?.maxPageSize) {\n throw new Error(\"maxPageSize is not supported by this operation.\");\n }\n return this.listPagingPage(options, settings);\n }\n };\n }\n\n private async *listPagingPage(\n options?: FrontDoorsListOptionalParams,\n settings?: PageSettings\n ): AsyncIterableIterator<FrontDoor[]> {\n let result: FrontDoorsListResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._list(options);\n let page = result.value || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listNext(continuationToken, options);\n continuationToken = result.nextLink;\n let page = result.value || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listPagingAll(\n options?: FrontDoorsListOptionalParams\n ): AsyncIterableIterator<FrontDoor> {\n for await (const page of this.listPagingPage(options)) {\n yield* page;\n }\n }\n\n /**\n * Lists all of the Front Doors within a resource group under a subscription.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param options The options parameters.\n */\n public listByResourceGroup(\n resourceGroupName: string,\n options?: FrontDoorsListByResourceGroupOptionalParams\n ): PagedAsyncIterableIterator<FrontDoor> {\n const iter = this.listByResourceGroupPagingAll(resourceGroupName, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings?: PageSettings) => {\n if (settings?.maxPageSize) {\n throw new Error(\"maxPageSize is not supported by this operation.\");\n }\n return this.listByResourceGroupPagingPage(\n resourceGroupName,\n options,\n settings\n );\n }\n };\n }\n\n private async *listByResourceGroupPagingPage(\n resourceGroupName: string,\n options?: FrontDoorsListByResourceGroupOptionalParams,\n settings?: PageSettings\n ): AsyncIterableIterator<FrontDoor[]> {\n let result: FrontDoorsListByResourceGroupResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listByResourceGroup(resourceGroupName, options);\n let page = result.value || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listByResourceGroupNext(\n resourceGroupName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n let page = result.value || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listByResourceGroupPagingAll(\n resourceGroupName: string,\n options?: FrontDoorsListByResourceGroupOptionalParams\n ): AsyncIterableIterator<FrontDoor> {\n for await (const page of this.listByResourceGroupPagingPage(\n resourceGroupName,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * Lists all of the Front Doors within an Azure subscription.\n * @param options The options parameters.\n */\n private _list(\n options?: FrontDoorsListOptionalParams\n ): Promise<FrontDoorsListResponse> {\n return this.client.sendOperationRequest({ options }, listOperationSpec);\n }\n\n /**\n * Lists all of the Front Doors within a resource group under a subscription.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param options The options parameters.\n */\n private _listByResourceGroup(\n resourceGroupName: string,\n options?: FrontDoorsListByResourceGroupOptionalParams\n ): Promise<FrontDoorsListByResourceGroupResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, options },\n listByResourceGroupOperationSpec\n );\n }\n\n /**\n * Gets a Front Door with the specified Front Door name under the specified subscription and resource\n * group.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param options The options parameters.\n */\n get(\n resourceGroupName: string,\n frontDoorName: string,\n options?: FrontDoorsGetOptionalParams\n ): Promise<FrontDoorsGetResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, frontDoorName, options },\n getOperationSpec\n );\n }\n\n /**\n * Creates a new Front Door with a Front Door name under the specified subscription and resource group.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param frontDoorParameters Front Door properties needed to create a new Front Door.\n * @param options The options parameters.\n */\n async beginCreateOrUpdate(\n resourceGroupName: string,\n frontDoorName: string,\n frontDoorParameters: FrontDoor,\n options?: FrontDoorsCreateOrUpdateOptionalParams\n ): Promise<\n SimplePollerLike<\n OperationState<FrontDoorsCreateOrUpdateResponse>,\n FrontDoorsCreateOrUpdateResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<FrontDoorsCreateOrUpdateResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: { resourceGroupName, frontDoorName, frontDoorParameters, options },\n spec: createOrUpdateOperationSpec\n });\n const poller = await createHttpPoller<\n FrontDoorsCreateOrUpdateResponse,\n OperationState<FrontDoorsCreateOrUpdateResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"azure-async-operation\"\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Creates a new Front Door with a Front Door name under the specified subscription and resource group.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param frontDoorParameters Front Door properties needed to create a new Front Door.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateAndWait(\n resourceGroupName: string,\n frontDoorName: string,\n frontDoorParameters: FrontDoor,\n options?: FrontDoorsCreateOrUpdateOptionalParams\n ): Promise<FrontDoorsCreateOrUpdateResponse> {\n const poller = await this.beginCreateOrUpdate(\n resourceGroupName,\n frontDoorName,\n frontDoorParameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Deletes an existing Front Door with the specified parameters.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param options The options parameters.\n */\n async beginDelete(\n resourceGroupName: string,\n frontDoorName: string,\n options?: FrontDoorsDeleteOptionalParams\n ): Promise<SimplePollerLike<OperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: { resourceGroupName, frontDoorName, options },\n spec: deleteOperationSpec\n });\n const poller = await createHttpPoller<void, OperationState<void>>(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"azure-async-operation\"\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Deletes an existing Front Door with the specified parameters.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param options The options parameters.\n */\n async beginDeleteAndWait(\n resourceGroupName: string,\n frontDoorName: string,\n options?: FrontDoorsDeleteOptionalParams\n ): Promise<void> {\n const poller = await this.beginDelete(\n resourceGroupName,\n frontDoorName,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Validates the custom domain mapping to ensure it maps to the correct Front Door endpoint in DNS.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param customDomainProperties Custom domain to be validated.\n * @param options The options parameters.\n */\n validateCustomDomain(\n resourceGroupName: string,\n frontDoorName: string,\n customDomainProperties: ValidateCustomDomainInput,\n options?: FrontDoorsValidateCustomDomainOptionalParams\n ): Promise<FrontDoorsValidateCustomDomainResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, frontDoorName, customDomainProperties, options },\n validateCustomDomainOperationSpec\n );\n }\n\n /**\n * ListNext\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n private _listNext(\n nextLink: string,\n options?: FrontDoorsListNextOptionalParams\n ): Promise<FrontDoorsListNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listNextOperationSpec\n );\n }\n\n /**\n * ListByResourceGroupNext\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param nextLink The nextLink from the previous successful call to the ListByResourceGroup method.\n * @param options The options parameters.\n */\n private _listByResourceGroupNext(\n resourceGroupName: string,\n nextLink: string,\n options?: FrontDoorsListByResourceGroupNextOptionalParams\n ): Promise<FrontDoorsListByResourceGroupNextResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, nextLink, options },\n listByResourceGroupNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst listOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Network/frontDoors\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.FrontDoorListResult\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [Parameters.$host, Parameters.subscriptionId],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listByResourceGroupOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.FrontDoorListResult\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.FrontDoor\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.frontDoorName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.FrontDoor\n },\n 201: {\n bodyMapper: Mappers.FrontDoor\n },\n 202: {\n bodyMapper: Mappers.FrontDoor\n },\n 204: {\n bodyMapper: Mappers.FrontDoor\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n requestBody: Parameters.frontDoorParameters,\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.frontDoorName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst deleteOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.frontDoorName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst validateCustomDomainOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/validateCustomDomain\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.ValidateCustomDomainOutput\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n requestBody: Parameters.customDomainProperties,\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.frontDoorName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst listNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.FrontDoorListResult\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.nextLink\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listByResourceGroupNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.FrontDoorListResult\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.nextLink\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport { PagedAsyncIterableIterator, PageSettings } from \"@azure/core-paging\";\nimport { setContinuationToken } from \"../pagingHelper\";\nimport { FrontendEndpoints } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { FrontDoorManagementClient } from \"../frontDoorManagementClient\";\nimport {\n SimplePollerLike,\n OperationState,\n createHttpPoller\n} from \"@azure/core-lro\";\nimport { createLroSpec } from \"../lroImpl\";\nimport {\n FrontendEndpoint,\n FrontendEndpointsListByFrontDoorNextOptionalParams,\n FrontendEndpointsListByFrontDoorOptionalParams,\n FrontendEndpointsListByFrontDoorResponse,\n FrontendEndpointsGetOptionalParams,\n FrontendEndpointsGetResponse,\n CustomHttpsConfiguration,\n FrontendEndpointsEnableHttpsOptionalParams,\n FrontendEndpointsDisableHttpsOptionalParams,\n FrontendEndpointsListByFrontDoorNextResponse\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class containing FrontendEndpoints operations. */\nexport class FrontendEndpointsImpl implements FrontendEndpoints {\n private readonly client: FrontDoorManagementClient;\n\n /**\n * Initialize a new instance of the class FrontendEndpoints class.\n * @param client Reference to the service client\n */\n constructor(client: FrontDoorManagementClient) {\n this.client = client;\n }\n\n /**\n * Lists all of the frontend endpoints within a Front Door.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param options The options parameters.\n */\n public listByFrontDoor(\n resourceGroupName: string,\n frontDoorName: string,\n options?: FrontendEndpointsListByFrontDoorOptionalParams\n ): PagedAsyncIterableIterator<FrontendEndpoint> {\n const iter = this.listByFrontDoorPagingAll(\n resourceGroupName,\n frontDoorName,\n options\n );\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings?: PageSettings) => {\n if (settings?.maxPageSize) {\n throw new Error(\"maxPageSize is not supported by this operation.\");\n }\n return this.listByFrontDoorPagingPage(\n resourceGroupName,\n frontDoorName,\n options,\n settings\n );\n }\n };\n }\n\n private async *listByFrontDoorPagingPage(\n resourceGroupName: string,\n frontDoorName: string,\n options?: FrontendEndpointsListByFrontDoorOptionalParams,\n settings?: PageSettings\n ): AsyncIterableIterator<FrontendEndpoint[]> {\n let result: FrontendEndpointsListByFrontDoorResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listByFrontDoor(\n resourceGroupName,\n frontDoorName,\n options\n );\n let page = result.value || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listByFrontDoorNext(\n resourceGroupName,\n frontDoorName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n let page = result.value || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listByFrontDoorPagingAll(\n resourceGroupName: string,\n frontDoorName: string,\n options?: FrontendEndpointsListByFrontDoorOptionalParams\n ): AsyncIterableIterator<FrontendEndpoint> {\n for await (const page of this.listByFrontDoorPagingPage(\n resourceGroupName,\n frontDoorName,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * Lists all of the frontend endpoints within a Front Door.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param options The options parameters.\n */\n private _listByFrontDoor(\n resourceGroupName: string,\n frontDoorName: string,\n options?: FrontendEndpointsListByFrontDoorOptionalParams\n ): Promise<FrontendEndpointsListByFrontDoorResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, frontDoorName, options },\n listByFrontDoorOperationSpec\n );\n }\n\n /**\n * Gets a Frontend endpoint with the specified name within the specified Front Door.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param frontendEndpointName Name of the Frontend endpoint which is unique within the Front Door.\n * @param options The options parameters.\n */\n get(\n resourceGroupName: string,\n frontDoorName: string,\n frontendEndpointName: string,\n options?: FrontendEndpointsGetOptionalParams\n ): Promise<FrontendEndpointsGetResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, frontDoorName, frontendEndpointName, options },\n getOperationSpec\n );\n }\n\n /**\n * Enables a frontendEndpoint for HTTPS traffic\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param frontendEndpointName Name of the Frontend endpoint which is unique within the Front Door.\n * @param customHttpsConfiguration The configuration specifying how to enable HTTPS\n * @param options The options parameters.\n */\n async beginEnableHttps(\n resourceGroupName: string,\n frontDoorName: string,\n frontendEndpointName: string,\n customHttpsConfiguration: CustomHttpsConfiguration,\n options?: FrontendEndpointsEnableHttpsOptionalParams\n ): Promise<SimplePollerLike<OperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: {\n resourceGroupName,\n frontDoorName,\n frontendEndpointName,\n customHttpsConfiguration,\n options\n },\n spec: enableHttpsOperationSpec\n });\n const poller = await createHttpPoller<void, OperationState<void>>(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"azure-async-operation\"\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Enables a frontendEndpoint for HTTPS traffic\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param frontendEndpointName Name of the Frontend endpoint which is unique within the Front Door.\n * @param customHttpsConfiguration The configuration specifying how to enable HTTPS\n * @param options The options parameters.\n */\n async beginEnableHttpsAndWait(\n resourceGroupName: string,\n frontDoorName: string,\n frontendEndpointName: string,\n customHttpsConfiguration: CustomHttpsConfiguration,\n options?: FrontendEndpointsEnableHttpsOptionalParams\n ): Promise<void> {\n const poller = await this.beginEnableHttps(\n resourceGroupName,\n frontDoorName,\n frontendEndpointName,\n customHttpsConfiguration,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Disables a frontendEndpoint for HTTPS traffic\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param frontendEndpointName Name of the Frontend endpoint which is unique within the Front Door.\n * @param options The options parameters.\n */\n async beginDisableHttps(\n resourceGroupName: string,\n frontDoorName: string,\n frontendEndpointName: string,\n options?: FrontendEndpointsDisableHttpsOptionalParams\n ): Promise<SimplePollerLike<OperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: { resourceGroupName, frontDoorName, frontendEndpointName, options },\n spec: disableHttpsOperationSpec\n });\n const poller = await createHttpPoller<void, OperationState<void>>(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"azure-async-operation\"\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Disables a frontendEndpoint for HTTPS traffic\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param frontendEndpointName Name of the Frontend endpoint which is unique within the Front Door.\n * @param options The options parameters.\n */\n async beginDisableHttpsAndWait(\n resourceGroupName: string,\n frontDoorName: string,\n frontendEndpointName: string,\n options?: FrontendEndpointsDisableHttpsOptionalParams\n ): Promise<void> {\n const poller = await this.beginDisableHttps(\n resourceGroupName,\n frontDoorName,\n frontendEndpointName,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * ListByFrontDoorNext\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param nextLink The nextLink from the previous successful call to the ListByFrontDoor method.\n * @param options The options parameters.\n */\n private _listByFrontDoorNext(\n resourceGroupName: string,\n frontDoorName: string,\n nextLink: string,\n options?: FrontendEndpointsListByFrontDoorNextOptionalParams\n ): Promise<FrontendEndpointsListByFrontDoorNextResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, frontDoorName, nextLink, options },\n listByFrontDoorNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst listByFrontDoorOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/frontendEndpoints\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.FrontendEndpointsListResult\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.frontDoorName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/frontendEndpoints/{frontendEndpointName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.FrontendEndpoint\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.frontDoorName,\n Parameters.frontendEndpointName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst enableHttpsOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/frontendEndpoints/{frontendEndpointName}/enableHttps\",\n httpMethod: \"POST\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n requestBody: Parameters.customHttpsConfiguration,\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.frontDoorName,\n Parameters.frontendEndpointName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst disableHttpsOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/frontendEndpoints/{frontendEndpointName}/disableHttps\",\n httpMethod: \"POST\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.frontDoorName,\n Parameters.frontendEndpointName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listByFrontDoorNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.FrontendEndpointsListResult\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.nextLink,\n Parameters.frontDoorName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport { Endpoints } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { FrontDoorManagementClient } from \"../frontDoorManagementClient\";\nimport {\n SimplePollerLike,\n OperationState,\n createHttpPoller\n} from \"@azure/core-lro\";\nimport { createLroSpec } from \"../lroImpl\";\nimport {\n PurgeParameters,\n EndpointsPurgeContentOptionalParams\n} from \"../models\";\n\n/** Class containing Endpoints operations. */\nexport class EndpointsImpl implements Endpoints {\n private readonly client: FrontDoorManagementClient;\n\n /**\n * Initialize a new instance of the class Endpoints class.\n * @param client Reference to the service client\n */\n constructor(client: FrontDoorManagementClient) {\n this.client = client;\n }\n\n /**\n * Removes a content from Front Door.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param contentFilePaths The path to the content to be purged. Path can be a full URL, e.g.\n * '/pictures/city.png' which removes a single file, or a directory with a wildcard, e.g. '/pictures/*'\n * which removes all folders and files in the directory.\n * @param options The options parameters.\n */\n async beginPurgeContent(\n resourceGroupName: string,\n frontDoorName: string,\n contentFilePaths: PurgeParameters,\n options?: EndpointsPurgeContentOptionalParams\n ): Promise<SimplePollerLike<OperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: { resourceGroupName, frontDoorName, contentFilePaths, options },\n spec: purgeContentOperationSpec\n });\n const poller = await createHttpPoller<void, OperationState<void>>(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"azure-async-operation\"\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Removes a content from Front Door.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param contentFilePaths The path to the content to be purged. Path can be a full URL, e.g.\n * '/pictures/city.png' which removes a single file, or a directory with a wildcard, e.g. '/pictures/*'\n * which removes all folders and files in the directory.\n * @param options The options parameters.\n */\n async beginPurgeContentAndWait(\n resourceGroupName: string,\n frontDoorName: string,\n contentFilePaths: PurgeParameters,\n options?: EndpointsPurgeContentOptionalParams\n ): Promise<void> {\n const poller = await this.beginPurgeContent(\n resourceGroupName,\n frontDoorName,\n contentFilePaths,\n options\n );\n return poller.pollUntilDone();\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst purgeContentOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/purge\",\n httpMethod: \"POST\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n requestBody: Parameters.contentFilePaths,\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.frontDoorName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport { PagedAsyncIterableIterator, PageSettings } from \"@azure/core-paging\";\nimport { setContinuationToken } from \"../pagingHelper\";\nimport { RulesEngines } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { FrontDoorManagementClient } from \"../frontDoorManagementClient\";\nimport {\n SimplePollerLike,\n OperationState,\n createHttpPoller\n} from \"@azure/core-lro\";\nimport { createLroSpec } from \"../lroImpl\";\nimport {\n RulesEngine,\n RulesEnginesListByFrontDoorNextOptionalParams,\n RulesEnginesListByFrontDoorOptionalParams,\n RulesEnginesListByFrontDoorResponse,\n RulesEnginesGetOptionalParams,\n RulesEnginesGetResponse,\n RulesEnginesCreateOrUpdateOptionalParams,\n RulesEnginesCreateOrUpdateResponse,\n RulesEnginesDeleteOptionalParams,\n RulesEnginesListByFrontDoorNextResponse\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class containing RulesEngines operations. */\nexport class RulesEnginesImpl implements RulesEngines {\n private readonly client: FrontDoorManagementClient;\n\n /**\n * Initialize a new instance of the class RulesEngines class.\n * @param client Reference to the service client\n */\n constructor(client: FrontDoorManagementClient) {\n this.client = client;\n }\n\n /**\n * Lists all of the Rules Engine Configurations within a Front Door.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param options The options parameters.\n */\n public listByFrontDoor(\n resourceGroupName: string,\n frontDoorName: string,\n options?: RulesEnginesListByFrontDoorOptionalParams\n ): PagedAsyncIterableIterator<RulesEngine> {\n const iter = this.listByFrontDoorPagingAll(\n resourceGroupName,\n frontDoorName,\n options\n );\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings?: PageSettings) => {\n if (settings?.maxPageSize) {\n throw new Error(\"maxPageSize is not supported by this operation.\");\n }\n return this.listByFrontDoorPagingPage(\n resourceGroupName,\n frontDoorName,\n options,\n settings\n );\n }\n };\n }\n\n private async *listByFrontDoorPagingPage(\n resourceGroupName: string,\n frontDoorName: string,\n options?: RulesEnginesListByFrontDoorOptionalParams,\n settings?: PageSettings\n ): AsyncIterableIterator<RulesEngine[]> {\n let result: RulesEnginesListByFrontDoorResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listByFrontDoor(\n resourceGroupName,\n frontDoorName,\n options\n );\n let page = result.value || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listByFrontDoorNext(\n resourceGroupName,\n frontDoorName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n let page = result.value || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listByFrontDoorPagingAll(\n resourceGroupName: string,\n frontDoorName: string,\n options?: RulesEnginesListByFrontDoorOptionalParams\n ): AsyncIterableIterator<RulesEngine> {\n for await (const page of this.listByFrontDoorPagingPage(\n resourceGroupName,\n frontDoorName,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * Lists all of the Rules Engine Configurations within a Front Door.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param options The options parameters.\n */\n private _listByFrontDoor(\n resourceGroupName: string,\n frontDoorName: string,\n options?: RulesEnginesListByFrontDoorOptionalParams\n ): Promise<RulesEnginesListByFrontDoorResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, frontDoorName, options },\n listByFrontDoorOperationSpec\n );\n }\n\n /**\n * Gets a Rules Engine Configuration with the specified name within the specified Front Door.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param rulesEngineName Name of the Rules Engine which is unique within the Front Door.\n * @param options The options parameters.\n */\n get(\n resourceGroupName: string,\n frontDoorName: string,\n rulesEngineName: string,\n options?: RulesEnginesGetOptionalParams\n ): Promise<RulesEnginesGetResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, frontDoorName, rulesEngineName, options },\n getOperationSpec\n );\n }\n\n /**\n * Creates a new Rules Engine Configuration with the specified name within the specified Front Door.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param rulesEngineName Name of the Rules Engine which is unique within the Front Door.\n * @param rulesEngineParameters Rules Engine Configuration properties needed to create a new Rules\n * Engine Configuration.\n * @param options The options parameters.\n */\n async beginCreateOrUpdate(\n resourceGroupName: string,\n frontDoorName: string,\n rulesEngineName: string,\n rulesEngineParameters: RulesEngine,\n options?: RulesEnginesCreateOrUpdateOptionalParams\n ): Promise<\n SimplePollerLike<\n OperationState<RulesEnginesCreateOrUpdateResponse>,\n RulesEnginesCreateOrUpdateResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<RulesEnginesCreateOrUpdateResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: {\n resourceGroupName,\n frontDoorName,\n rulesEngineName,\n rulesEngineParameters,\n options\n },\n spec: createOrUpdateOperationSpec\n });\n const poller = await createHttpPoller<\n RulesEnginesCreateOrUpdateResponse,\n OperationState<RulesEnginesCreateOrUpdateResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"azure-async-operation\"\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Creates a new Rules Engine Configuration with the specified name within the specified Front Door.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param rulesEngineName Name of the Rules Engine which is unique within the Front Door.\n * @param rulesEngineParameters Rules Engine Configuration properties needed to create a new Rules\n * Engine Configuration.\n * @param options The options parameters.\n */\n async beginCreateOrUpdateAndWait(\n resourceGroupName: string,\n frontDoorName: string,\n rulesEngineName: string,\n rulesEngineParameters: RulesEngine,\n options?: RulesEnginesCreateOrUpdateOptionalParams\n ): Promise<RulesEnginesCreateOrUpdateResponse> {\n const poller = await this.beginCreateOrUpdate(\n resourceGroupName,\n frontDoorName,\n rulesEngineName,\n rulesEngineParameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Deletes an existing Rules Engine Configuration with the specified parameters.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param rulesEngineName Name of the Rules Engine which is unique within the Front Door.\n * @param options The options parameters.\n */\n async beginDelete(\n resourceGroupName: string,\n frontDoorName: string,\n rulesEngineName: string,\n options?: RulesEnginesDeleteOptionalParams\n ): Promise<SimplePollerLike<OperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: { resourceGroupName, frontDoorName, rulesEngineName, options },\n spec: deleteOperationSpec\n });\n const poller = await createHttpPoller<void, OperationState<void>>(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n resourceLocationConfig: \"azure-async-operation\"\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Deletes an existing Rules Engine Configuration with the specified parameters.\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param rulesEngineName Name of the Rules Engine which is unique within the Front Door.\n * @param options The options parameters.\n */\n async beginDeleteAndWait(\n resourceGroupName: string,\n frontDoorName: string,\n rulesEngineName: string,\n options?: RulesEnginesDeleteOptionalParams\n ): Promise<void> {\n const poller = await this.beginDelete(\n resourceGroupName,\n frontDoorName,\n rulesEngineName,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * ListByFrontDoorNext\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param frontDoorName Name of the Front Door which is globally unique.\n * @param nextLink The nextLink from the previous successful call to the ListByFrontDoor method.\n * @param options The options parameters.\n */\n private _listByFrontDoorNext(\n resourceGroupName: string,\n frontDoorName: string,\n nextLink: string,\n options?: RulesEnginesListByFrontDoorNextOptionalParams\n ): Promise<RulesEnginesListByFrontDoorNextResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, frontDoorName, nextLink, options },\n listByFrontDoorNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst listByFrontDoorOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/rulesEngines\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.RulesEngineListResult\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.frontDoorName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/rulesEngines/{rulesEngineName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.RulesEngine\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.frontDoorName,\n Parameters.rulesEngineName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/rulesEngines/{rulesEngineName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.RulesEngine\n },\n 201: {\n bodyMapper: Mappers.RulesEngine\n },\n 202: {\n bodyMapper: Mappers.RulesEngine\n },\n 204: {\n bodyMapper: Mappers.RulesEngine\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n requestBody: Parameters.rulesEngineParameters,\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.frontDoorName,\n Parameters.rulesEngineName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst deleteOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/frontDoors/{frontDoorName}/rulesEngines/{rulesEngineName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion1],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.frontDoorName,\n Parameters.rulesEngineName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listByFrontDoorNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.RulesEngineListResult\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.nextLink,\n Parameters.frontDoorName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport { PagedAsyncIterableIterator, PageSettings } from \"@azure/core-paging\";\nimport { setContinuationToken } from \"../pagingHelper\";\nimport { NetworkExperimentProfiles } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { FrontDoorManagementClient } from \"../frontDoorManagementClient\";\nimport {\n SimplePollerLike,\n OperationState,\n createHttpPoller\n} from \"@azure/core-lro\";\nimport { createLroSpec } from \"../lroImpl\";\nimport {\n Profile,\n NetworkExperimentProfilesListNextOptionalParams,\n NetworkExperimentProfilesListOptionalParams,\n NetworkExperimentProfilesListResponse,\n NetworkExperimentProfilesListByResourceGroupNextOptionalParams,\n NetworkExperimentProfilesListByResourceGroupOptionalParams,\n NetworkExperimentProfilesListByResourceGroupResponse,\n NetworkExperimentProfilesGetOptionalParams,\n NetworkExperimentProfilesGetResponse,\n NetworkExperimentProfilesCreateOrUpdateOptionalParams,\n NetworkExperimentProfilesCreateOrUpdateResponse,\n ProfileUpdateModel,\n NetworkExperimentProfilesUpdateOptionalParams,\n NetworkExperimentProfilesUpdateResponse,\n NetworkExperimentProfilesDeleteOptionalParams,\n NetworkExperimentProfilesListNextResponse,\n NetworkExperimentProfilesListByResourceGroupNextResponse\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class containing NetworkExperimentProfiles operations. */\nexport class NetworkExperimentProfilesImpl\n implements NetworkExperimentProfiles {\n private readonly client: FrontDoorManagementClient;\n\n /**\n * Initialize a new instance of the class NetworkExperimentProfiles class.\n * @param client Reference to the service client\n */\n constructor(client: FrontDoorManagementClient) {\n this.client = client;\n }\n\n /**\n * Gets a list of Network Experiment Profiles under a subscription\n * @param options The options parameters.\n */\n public list(\n options?: NetworkExperimentProfilesListOptionalParams\n ): PagedAsyncIterableIterator<Profile> {\n const iter = this.listPagingAll(options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings?: PageSettings) => {\n if (settings?.maxPageSize) {\n throw new Error(\"maxPageSize is not supported by this operation.\");\n }\n return this.listPagingPage(options, settings);\n }\n };\n }\n\n private async *listPagingPage(\n options?: NetworkExperimentProfilesListOptionalParams,\n settings?: PageSettings\n ): AsyncIterableIterator<Profile[]> {\n let result: NetworkExperimentProfilesListResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._list(options);\n let page = result.value || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listNext(continuationToken, options);\n continuationToken = result.nextLink;\n let page = result.value || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listPagingAll(\n options?: NetworkExperimentProfilesListOptionalParams\n ): AsyncIterableIterator<Profile> {\n for await (const page of this.listPagingPage(options)) {\n yield* page;\n }\n }\n\n /**\n * Gets a list of Network Experiment Profiles within a resource group under a subscription\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param options The options parameters.\n */\n public listByResourceGroup(\n resourceGroupName: string,\n options?: NetworkExperimentProfilesListByResourceGroupOptionalParams\n ): PagedAsyncIterableIterator<Profile> {\n const iter = this.listByResourceGroupPagingAll(resourceGroupName, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings?: PageSettings) => {\n if (settings?.maxPageSize) {\n throw new Error(\"maxPageSize is not supported by this operation.\");\n }\n return this.listByResourceGroupPagingPage(\n resourceGroupName,\n options,\n settings\n );\n }\n };\n }\n\n private async *listByResourceGroupPagingPage(\n resourceGroupName: string,\n options?: NetworkExperimentProfilesListByResourceGroupOptionalParams,\n settings?: PageSettings\n ): AsyncIterableIterator<Profile[]> {\n let result: NetworkExperimentProfilesListByResourceGroupResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listByResourceGroup(resourceGroupName, options);\n let page = result.value || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listByResourceGroupNext(\n resourceGroupName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n let page = result.value || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listByResourceGroupPagingAll(\n resourceGroupName: string,\n options?: NetworkExperimentProfilesListByResourceGroupOptionalParams\n ): AsyncIterableIterator<Profile> {\n for await (const page of this.listByResourceGroupPagingPage(\n resourceGroupName,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * Gets a list of Network Experiment Profiles under a subscription\n * @param options The options parameters.\n */\n private _list(\n options?: NetworkExperimentProfilesListOptionalParams\n ): Promise<NetworkExperimentProfilesListResponse> {\n return this.client.sendOperationRequest({ options }, listOperationSpec);\n }\n\n /**\n * Gets a list of Network Experiment Profiles within a resource group under a subscription\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param options The options parameters.\n */\n private _listByResourceGroup(\n resourceGroupName: string,\n options?: NetworkExperimentProfilesListByResourceGroupOptionalParams\n ): Promise<NetworkExperimentProfilesListByResourceGroupResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, options },\n listByResourceGroupOperationSpec\n );\n }\n\n /**\n * Gets an NetworkExperiment Profile by ProfileName\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param options The options parameters.\n */\n get(\n resourceGroupName: string,\n profileName: string,\n options?: NetworkExperimentProfilesGetOptionalParams\n ): Promise<NetworkExperimentProfilesGetResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, profileName, options },\n getOperationSpec\n );\n }\n\n /**\n * Creates an NetworkExperiment Profile\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param parameters An Network Experiment Profile\n * @param options The options parameters.\n */\n async beginCreateOrUpdate(\n profileName: string,\n resourceGroupName: string,\n parameters: Profile,\n options?: NetworkExperimentProfilesCreateOrUpdateOptionalParams\n ): Promise<\n SimplePollerLike<\n OperationState<NetworkExperimentProfilesCreateOrUpdateResponse>,\n NetworkExperimentProfilesCreateOrUpdateResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<NetworkExperimentProfilesCreateOrUpdateResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: { profileName, resourceGroupName, parameters, options },\n spec: createOrUpdateOperationSpec\n });\n const poller = await createHttpPoller<\n NetworkExperimentProfilesCreateOrUpdateResponse,\n OperationState<NetworkExperimentProfilesCreateOrUpdateResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Creates an NetworkExperiment Profile\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param parameters An Network Experiment Profile\n * @param options The options parameters.\n */\n async beginCreateOrUpdateAndWait(\n profileName: string,\n resourceGroupName: string,\n parameters: Profile,\n options?: NetworkExperimentProfilesCreateOrUpdateOptionalParams\n ): Promise<NetworkExperimentProfilesCreateOrUpdateResponse> {\n const poller = await this.beginCreateOrUpdate(\n profileName,\n resourceGroupName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Updates an NetworkExperimentProfiles\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param parameters The Profile Update Model\n * @param options The options parameters.\n */\n async beginUpdate(\n resourceGroupName: string,\n profileName: string,\n parameters: ProfileUpdateModel,\n options?: NetworkExperimentProfilesUpdateOptionalParams\n ): Promise<\n SimplePollerLike<\n OperationState<NetworkExperimentProfilesUpdateResponse>,\n NetworkExperimentProfilesUpdateResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<NetworkExperimentProfilesUpdateResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: { resourceGroupName, profileName, parameters, options },\n spec: updateOperationSpec\n });\n const poller = await createHttpPoller<\n NetworkExperimentProfilesUpdateResponse,\n OperationState<NetworkExperimentProfilesUpdateResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Updates an NetworkExperimentProfiles\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param parameters The Profile Update Model\n * @param options The options parameters.\n */\n async beginUpdateAndWait(\n resourceGroupName: string,\n profileName: string,\n parameters: ProfileUpdateModel,\n options?: NetworkExperimentProfilesUpdateOptionalParams\n ): Promise<NetworkExperimentProfilesUpdateResponse> {\n const poller = await this.beginUpdate(\n resourceGroupName,\n profileName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Deletes an NetworkExperiment Profile by ProfileName\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param options The options parameters.\n */\n async beginDelete(\n resourceGroupName: string,\n profileName: string,\n options?: NetworkExperimentProfilesDeleteOptionalParams\n ): Promise<SimplePollerLike<OperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: { resourceGroupName, profileName, options },\n spec: deleteOperationSpec\n });\n const poller = await createHttpPoller<void, OperationState<void>>(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Deletes an NetworkExperiment Profile by ProfileName\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param options The options parameters.\n */\n async beginDeleteAndWait(\n resourceGroupName: string,\n profileName: string,\n options?: NetworkExperimentProfilesDeleteOptionalParams\n ): Promise<void> {\n const poller = await this.beginDelete(\n resourceGroupName,\n profileName,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * ListNext\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n private _listNext(\n nextLink: string,\n options?: NetworkExperimentProfilesListNextOptionalParams\n ): Promise<NetworkExperimentProfilesListNextResponse> {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listNextOperationSpec\n );\n }\n\n /**\n * ListByResourceGroupNext\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param nextLink The nextLink from the previous successful call to the ListByResourceGroup method.\n * @param options The options parameters.\n */\n private _listByResourceGroupNext(\n resourceGroupName: string,\n nextLink: string,\n options?: NetworkExperimentProfilesListByResourceGroupNextOptionalParams\n ): Promise<NetworkExperimentProfilesListByResourceGroupNextResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, nextLink, options },\n listByResourceGroupNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst listOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/providers/Microsoft.Network/NetworkExperimentProfiles\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ProfileList\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion2],\n urlParameters: [Parameters.$host, Parameters.subscriptionId],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listByResourceGroupOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ProfileList\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion2],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.Profile\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion2],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.profileName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.Profile\n },\n 201: {\n bodyMapper: Mappers.Profile\n },\n 202: {\n bodyMapper: Mappers.Profile\n },\n 204: {\n bodyMapper: Mappers.Profile\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n requestBody: Parameters.parameters2,\n queryParameters: [Parameters.apiVersion2],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.profileName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst updateOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}\",\n httpMethod: \"PATCH\",\n responses: {\n 200: {\n bodyMapper: Mappers.Profile\n },\n 201: {\n bodyMapper: Mappers.Profile\n },\n 202: {\n bodyMapper: Mappers.Profile\n },\n 204: {\n bodyMapper: Mappers.Profile\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n requestBody: Parameters.parameters3,\n queryParameters: [Parameters.apiVersion2],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.profileName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst deleteOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion2],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.profileName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ProfileList\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n urlParameters: [\n Parameters.$host,\n Parameters.subscriptionId,\n Parameters.nextLink\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listByResourceGroupNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ProfileList\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.nextLink\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport { PagedAsyncIterableIterator, PageSettings } from \"@azure/core-paging\";\nimport { setContinuationToken } from \"../pagingHelper\";\nimport { PreconfiguredEndpoints } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { FrontDoorManagementClient } from \"../frontDoorManagementClient\";\nimport {\n PreconfiguredEndpoint,\n PreconfiguredEndpointsListNextOptionalParams,\n PreconfiguredEndpointsListOptionalParams,\n PreconfiguredEndpointsListResponse,\n PreconfiguredEndpointsListNextResponse\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class containing PreconfiguredEndpoints operations. */\nexport class PreconfiguredEndpointsImpl implements PreconfiguredEndpoints {\n private readonly client: FrontDoorManagementClient;\n\n /**\n * Initialize a new instance of the class PreconfiguredEndpoints class.\n * @param client Reference to the service client\n */\n constructor(client: FrontDoorManagementClient) {\n this.client = client;\n }\n\n /**\n * Gets a list of Preconfigured Endpoints\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param options The options parameters.\n */\n public list(\n resourceGroupName: string,\n profileName: string,\n options?: PreconfiguredEndpointsListOptionalParams\n ): PagedAsyncIterableIterator<PreconfiguredEndpoint> {\n const iter = this.listPagingAll(resourceGroupName, profileName, options);\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings?: PageSettings) => {\n if (settings?.maxPageSize) {\n throw new Error(\"maxPageSize is not supported by this operation.\");\n }\n return this.listPagingPage(\n resourceGroupName,\n profileName,\n options,\n settings\n );\n }\n };\n }\n\n private async *listPagingPage(\n resourceGroupName: string,\n profileName: string,\n options?: PreconfiguredEndpointsListOptionalParams,\n settings?: PageSettings\n ): AsyncIterableIterator<PreconfiguredEndpoint[]> {\n let result: PreconfiguredEndpointsListResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._list(resourceGroupName, profileName, options);\n let page = result.value || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listNext(\n resourceGroupName,\n profileName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n let page = result.value || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listPagingAll(\n resourceGroupName: string,\n profileName: string,\n options?: PreconfiguredEndpointsListOptionalParams\n ): AsyncIterableIterator<PreconfiguredEndpoint> {\n for await (const page of this.listPagingPage(\n resourceGroupName,\n profileName,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * Gets a list of Preconfigured Endpoints\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param options The options parameters.\n */\n private _list(\n resourceGroupName: string,\n profileName: string,\n options?: PreconfiguredEndpointsListOptionalParams\n ): Promise<PreconfiguredEndpointsListResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, profileName, options },\n listOperationSpec\n );\n }\n\n /**\n * ListNext\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param nextLink The nextLink from the previous successful call to the List method.\n * @param options The options parameters.\n */\n private _listNext(\n resourceGroupName: string,\n profileName: string,\n nextLink: string,\n options?: PreconfiguredEndpointsListNextOptionalParams\n ): Promise<PreconfiguredEndpointsListNextResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, profileName, nextLink, options },\n listNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst listOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}/PreconfiguredEndpoints\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.PreconfiguredEndpointList\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion2],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.profileName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.PreconfiguredEndpointList\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.nextLink,\n Parameters.profileName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport { PagedAsyncIterableIterator, PageSettings } from \"@azure/core-paging\";\nimport { setContinuationToken } from \"../pagingHelper\";\nimport { Experiments } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { FrontDoorManagementClient } from \"../frontDoorManagementClient\";\nimport {\n SimplePollerLike,\n OperationState,\n createHttpPoller\n} from \"@azure/core-lro\";\nimport { createLroSpec } from \"../lroImpl\";\nimport {\n Experiment,\n ExperimentsListByProfileNextOptionalParams,\n ExperimentsListByProfileOptionalParams,\n ExperimentsListByProfileResponse,\n ExperimentsGetOptionalParams,\n ExperimentsGetResponse,\n ExperimentsCreateOrUpdateOptionalParams,\n ExperimentsCreateOrUpdateResponse,\n ExperimentUpdateModel,\n ExperimentsUpdateOptionalParams,\n ExperimentsUpdateResponse,\n ExperimentsDeleteOptionalParams,\n ExperimentsListByProfileNextResponse\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class containing Experiments operations. */\nexport class ExperimentsImpl implements Experiments {\n private readonly client: FrontDoorManagementClient;\n\n /**\n * Initialize a new instance of the class Experiments class.\n * @param client Reference to the service client\n */\n constructor(client: FrontDoorManagementClient) {\n this.client = client;\n }\n\n /**\n * Gets a list of Experiments\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param options The options parameters.\n */\n public listByProfile(\n resourceGroupName: string,\n profileName: string,\n options?: ExperimentsListByProfileOptionalParams\n ): PagedAsyncIterableIterator<Experiment> {\n const iter = this.listByProfilePagingAll(\n resourceGroupName,\n profileName,\n options\n );\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: (settings?: PageSettings) => {\n if (settings?.maxPageSize) {\n throw new Error(\"maxPageSize is not supported by this operation.\");\n }\n return this.listByProfilePagingPage(\n resourceGroupName,\n profileName,\n options,\n settings\n );\n }\n };\n }\n\n private async *listByProfilePagingPage(\n resourceGroupName: string,\n profileName: string,\n options?: ExperimentsListByProfileOptionalParams,\n settings?: PageSettings\n ): AsyncIterableIterator<Experiment[]> {\n let result: ExperimentsListByProfileResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listByProfile(\n resourceGroupName,\n profileName,\n options\n );\n let page = result.value || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listByProfileNext(\n resourceGroupName,\n profileName,\n continuationToken,\n options\n );\n continuationToken = result.nextLink;\n let page = result.value || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listByProfilePagingAll(\n resourceGroupName: string,\n profileName: string,\n options?: ExperimentsListByProfileOptionalParams\n ): AsyncIterableIterator<Experiment> {\n for await (const page of this.listByProfilePagingPage(\n resourceGroupName,\n profileName,\n options\n )) {\n yield* page;\n }\n }\n\n /**\n * Gets a list of Experiments\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param options The options parameters.\n */\n private _listByProfile(\n resourceGroupName: string,\n profileName: string,\n options?: ExperimentsListByProfileOptionalParams\n ): Promise<ExperimentsListByProfileResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, profileName, options },\n listByProfileOperationSpec\n );\n }\n\n /**\n * Gets an Experiment by ExperimentName\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param experimentName The Experiment identifier associated with the Experiment\n * @param options The options parameters.\n */\n get(\n resourceGroupName: string,\n profileName: string,\n experimentName: string,\n options?: ExperimentsGetOptionalParams\n ): Promise<ExperimentsGetResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, profileName, experimentName, options },\n getOperationSpec\n );\n }\n\n /**\n * Creates or updates an Experiment\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param experimentName The Experiment identifier associated with the Experiment\n * @param parameters The Experiment resource\n * @param options The options parameters.\n */\n async beginCreateOrUpdate(\n resourceGroupName: string,\n profileName: string,\n experimentName: string,\n parameters: Experiment,\n options?: ExperimentsCreateOrUpdateOptionalParams\n ): Promise<\n SimplePollerLike<\n OperationState<ExperimentsCreateOrUpdateResponse>,\n ExperimentsCreateOrUpdateResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<ExperimentsCreateOrUpdateResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: {\n resourceGroupName,\n profileName,\n experimentName,\n parameters,\n options\n },\n spec: createOrUpdateOperationSpec\n });\n const poller = await createHttpPoller<\n ExperimentsCreateOrUpdateResponse,\n OperationState<ExperimentsCreateOrUpdateResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Creates or updates an Experiment\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param experimentName The Experiment identifier associated with the Experiment\n * @param parameters The Experiment resource\n * @param options The options parameters.\n */\n async beginCreateOrUpdateAndWait(\n resourceGroupName: string,\n profileName: string,\n experimentName: string,\n parameters: Experiment,\n options?: ExperimentsCreateOrUpdateOptionalParams\n ): Promise<ExperimentsCreateOrUpdateResponse> {\n const poller = await this.beginCreateOrUpdate(\n resourceGroupName,\n profileName,\n experimentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Updates an Experiment\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param experimentName The Experiment identifier associated with the Experiment\n * @param parameters The Experiment Update Model\n * @param options The options parameters.\n */\n async beginUpdate(\n resourceGroupName: string,\n profileName: string,\n experimentName: string,\n parameters: ExperimentUpdateModel,\n options?: ExperimentsUpdateOptionalParams\n ): Promise<\n SimplePollerLike<\n OperationState<ExperimentsUpdateResponse>,\n ExperimentsUpdateResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<ExperimentsUpdateResponse> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: {\n resourceGroupName,\n profileName,\n experimentName,\n parameters,\n options\n },\n spec: updateOperationSpec\n });\n const poller = await createHttpPoller<\n ExperimentsUpdateResponse,\n OperationState<ExperimentsUpdateResponse>\n >(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Updates an Experiment\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param experimentName The Experiment identifier associated with the Experiment\n * @param parameters The Experiment Update Model\n * @param options The options parameters.\n */\n async beginUpdateAndWait(\n resourceGroupName: string,\n profileName: string,\n experimentName: string,\n parameters: ExperimentUpdateModel,\n options?: ExperimentsUpdateOptionalParams\n ): Promise<ExperimentsUpdateResponse> {\n const poller = await this.beginUpdate(\n resourceGroupName,\n profileName,\n experimentName,\n parameters,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Deletes an Experiment\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param experimentName The Experiment identifier associated with the Experiment\n * @param options The options parameters.\n */\n async beginDelete(\n resourceGroupName: string,\n profileName: string,\n experimentName: string,\n options?: ExperimentsDeleteOptionalParams\n ): Promise<SimplePollerLike<OperationState<void>, void>> {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ): Promise<void> => {\n return this.client.sendOperationRequest(args, spec);\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec\n ) => {\n let currentRawResponse:\n | coreClient.FullOperationResponse\n | undefined = undefined;\n const providedCallback = args.options?.onResponse;\n const callback: coreClient.RawResponseCallback = (\n rawResponse: coreClient.FullOperationResponse,\n flatResponse: unknown\n ) => {\n currentRawResponse = rawResponse;\n providedCallback?.(rawResponse, flatResponse);\n };\n const updatedArgs = {\n ...args,\n options: {\n ...args.options,\n onResponse: callback\n }\n };\n const flatResponse = await directSendOperation(updatedArgs, spec);\n return {\n flatResponse,\n rawResponse: {\n statusCode: currentRawResponse!.status,\n body: currentRawResponse!.parsedBody,\n headers: currentRawResponse!.headers.toJSON()\n }\n };\n };\n\n const lro = createLroSpec({\n sendOperationFn,\n args: { resourceGroupName, profileName, experimentName, options },\n spec: deleteOperationSpec\n });\n const poller = await createHttpPoller<void, OperationState<void>>(lro, {\n restoreFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Deletes an Experiment\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param experimentName The Experiment identifier associated with the Experiment\n * @param options The options parameters.\n */\n async beginDeleteAndWait(\n resourceGroupName: string,\n profileName: string,\n experimentName: string,\n options?: ExperimentsDeleteOptionalParams\n ): Promise<void> {\n const poller = await this.beginDelete(\n resourceGroupName,\n profileName,\n experimentName,\n options\n );\n return poller.pollUntilDone();\n }\n\n /**\n * ListByProfileNext\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param nextLink The nextLink from the previous successful call to the ListByProfile method.\n * @param options The options parameters.\n */\n private _listByProfileNext(\n resourceGroupName: string,\n profileName: string,\n nextLink: string,\n options?: ExperimentsListByProfileNextOptionalParams\n ): Promise<ExperimentsListByProfileNextResponse> {\n return this.client.sendOperationRequest(\n { resourceGroupName, profileName, nextLink, options },\n listByProfileNextOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst listByProfileOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}/Experiments\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ExperimentList\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion2],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.profileName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}/Experiments/{experimentName}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.Experiment\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion2],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.profileName,\n Parameters.experimentName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst createOrUpdateOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}/Experiments/{experimentName}\",\n httpMethod: \"PUT\",\n responses: {\n 200: {\n bodyMapper: Mappers.Experiment\n },\n 201: {\n bodyMapper: Mappers.Experiment\n },\n 202: {\n bodyMapper: Mappers.Experiment\n },\n 204: {\n bodyMapper: Mappers.Experiment\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n requestBody: Parameters.parameters4,\n queryParameters: [Parameters.apiVersion2],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.profileName,\n Parameters.experimentName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst updateOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}/Experiments/{experimentName}\",\n httpMethod: \"PATCH\",\n responses: {\n 200: {\n bodyMapper: Mappers.Experiment\n },\n 201: {\n bodyMapper: Mappers.Experiment\n },\n 202: {\n bodyMapper: Mappers.Experiment\n },\n 204: {\n bodyMapper: Mappers.Experiment\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n requestBody: Parameters.parameters5,\n queryParameters: [Parameters.apiVersion2],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.profileName,\n Parameters.experimentName\n ],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer\n};\nconst deleteOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}/Experiments/{experimentName}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {},\n 201: {},\n 202: {},\n 204: {},\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [Parameters.apiVersion2],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.profileName,\n Parameters.experimentName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst listByProfileNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.ExperimentList\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.nextLink,\n Parameters.profileName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport { Reports } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { FrontDoorManagementClient } from \"../frontDoorManagementClient\";\nimport {\n LatencyScorecardAggregationInterval,\n ReportsGetLatencyScorecardsOptionalParams,\n ReportsGetLatencyScorecardsResponse,\n TimeseriesAggregationInterval,\n TimeseriesType,\n ReportsGetTimeseriesOptionalParams,\n ReportsGetTimeseriesResponse\n} from \"../models\";\n\n/** Class containing Reports operations. */\nexport class ReportsImpl implements Reports {\n private readonly client: FrontDoorManagementClient;\n\n /**\n * Initialize a new instance of the class Reports class.\n * @param client Reference to the service client\n */\n constructor(client: FrontDoorManagementClient) {\n this.client = client;\n }\n\n /**\n * Gets a Latency Scorecard for a given Experiment\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param experimentName The Experiment identifier associated with the Experiment\n * @param aggregationInterval The aggregation interval of the Latency Scorecard\n * @param options The options parameters.\n */\n getLatencyScorecards(\n resourceGroupName: string,\n profileName: string,\n experimentName: string,\n aggregationInterval: LatencyScorecardAggregationInterval,\n options?: ReportsGetLatencyScorecardsOptionalParams\n ): Promise<ReportsGetLatencyScorecardsResponse> {\n return this.client.sendOperationRequest(\n {\n resourceGroupName,\n profileName,\n experimentName,\n aggregationInterval,\n options\n },\n getLatencyScorecardsOperationSpec\n );\n }\n\n /**\n * Gets a Timeseries for a given Experiment\n * @param resourceGroupName Name of the Resource group within the Azure subscription.\n * @param profileName The Profile identifier associated with the Tenant and Partner\n * @param experimentName The Experiment identifier associated with the Experiment\n * @param startDateTimeUTC The start DateTime of the Timeseries in UTC\n * @param endDateTimeUTC The end DateTime of the Timeseries in UTC\n * @param aggregationInterval The aggregation interval of the Timeseries\n * @param timeseriesType The type of Timeseries\n * @param options The options parameters.\n */\n getTimeseries(\n resourceGroupName: string,\n profileName: string,\n experimentName: string,\n startDateTimeUTC: Date,\n endDateTimeUTC: Date,\n aggregationInterval: TimeseriesAggregationInterval,\n timeseriesType: TimeseriesType,\n options?: ReportsGetTimeseriesOptionalParams\n ): Promise<ReportsGetTimeseriesResponse> {\n return this.client.sendOperationRequest(\n {\n resourceGroupName,\n profileName,\n experimentName,\n startDateTimeUTC,\n endDateTimeUTC,\n aggregationInterval,\n timeseriesType,\n options\n },\n getTimeseriesOperationSpec\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst getLatencyScorecardsOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}/Experiments/{experimentName}/LatencyScorecard\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.LatencyScorecard\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [\n Parameters.apiVersion2,\n Parameters.endDateTimeUTC,\n Parameters.country,\n Parameters.aggregationInterval\n ],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.profileName,\n Parameters.experimentName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst getTimeseriesOperationSpec: coreClient.OperationSpec = {\n path:\n \"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Network/NetworkExperimentProfiles/{profileName}/Experiments/{experimentName}/Timeseries\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.Timeseries\n },\n default: {\n bodyMapper: Mappers.ErrorResponse\n }\n },\n queryParameters: [\n Parameters.apiVersion2,\n Parameters.country,\n Parameters.startDateTimeUTC,\n Parameters.endDateTimeUTC1,\n Parameters.aggregationInterval1,\n Parameters.timeseriesType,\n Parameters.endpoint\n ],\n urlParameters: [\n Parameters.$host,\n Parameters.resourceGroupName,\n Parameters.subscriptionId,\n Parameters.profileName,\n Parameters.experimentName\n ],\n headerParameters: [Parameters.accept],\n serializer\n};\n","/*\n * Copyright (c) Microsoft Corporation.\n * Licensed under the MIT License.\n *\n * Code generated by Microsoft (R) AutoRest Code Generator.\n * Changes may cause incorrect behavior and will be lost if the code is regenerated.\n */\n\nimport * as coreClient from \"@azure/core-client\";\nimport * as coreRestPipeline from \"@azure/core-rest-pipeline\";\nimport * as coreAuth from \"@azure/core-auth\";\nimport {\n PoliciesImpl,\n ManagedRuleSetsImpl,\n FrontDoorNameAvailabilityImpl,\n FrontDoorNameAvailabilityWithSubscriptionImpl,\n FrontDoorsImpl,\n FrontendEndpointsImpl,\n EndpointsImpl,\n RulesEnginesImpl,\n NetworkExperimentProfilesImpl,\n PreconfiguredEndpointsImpl,\n ExperimentsImpl,\n ReportsImpl\n} from \"./operations\";\nimport {\n Policies,\n ManagedRuleSets,\n FrontDoorNameAvailability,\n FrontDoorNameAvailabilityWithSubscription,\n FrontDoors,\n FrontendEndpoints,\n Endpoints,\n RulesEngines,\n NetworkExperimentProfiles,\n PreconfiguredEndpoints,\n Experiments,\n Reports\n} from \"./operationsInterfaces\";\nimport { FrontDoorManagementClientOptionalParams } from \"./models\";\n\nexport class FrontDoorManagementClient extends coreClient.ServiceClient {\n $host: string;\n subscriptionId: string;\n\n /**\n * Initializes a new instance of the FrontDoorManagementClient class.\n * @param credentials Subscription credentials which uniquely identify client subscription.\n * @param subscriptionId The subscription credentials which uniquely identify the Microsoft Azure\n * subscription. The subscription ID forms part of the URI for every service call.\n * @param options The parameter options\n */\n constructor(\n credentials: coreAuth.TokenCredential,\n subscriptionId: string,\n options?: FrontDoorManagementClientOptionalParams\n ) {\n if (credentials === undefined) {\n throw new Error(\"'credentials' cannot be null\");\n }\n if (subscriptionId === undefined) {\n throw new Error(\"'subscriptionId' cannot be null\");\n }\n\n // Initializing default values for options\n if (!options) {\n options = {};\n }\n const defaults: FrontDoorManagementClientOptionalParams = {\n requestContentType: \"application/json; charset=utf-8\",\n credential: credentials\n };\n\n const packageDetails = `azsdk-js-arm-frontdoor/5.2.1`;\n const userAgentPrefix =\n options.userAgentOptions && options.userAgentOptions.userAgentPrefix\n ? `${options.userAgentOptions.userAgentPrefix} ${packageDetails}`\n : `${packageDetails}`;\n\n const optionsWithDefaults = {\n ...defaults,\n ...options,\n userAgentOptions: {\n userAgentPrefix\n },\n endpoint:\n options.endpoint ?? options.baseUri ?? \"https://management.azure.com\"\n };\n super(optionsWithDefaults);\n\n let bearerTokenAuthenticationPolicyFound: boolean = false;\n if (options?.pipeline && options.pipeline.getOrderedPolicies().length > 0) {\n const pipelinePolicies: coreRestPipeline.PipelinePolicy[] = options.pipeline.getOrderedPolicies();\n bearerTokenAuthenticationPolicyFound = pipelinePolicies.some(\n (pipelinePolicy) =>\n pipelinePolicy.name ===\n coreRestPipeline.bearerTokenAuthenticationPolicyName\n );\n }\n if (\n !options ||\n !options.pipeline ||\n options.pipeline.getOrderedPolicies().length == 0 ||\n !bearerTokenAuthenticationPolicyFound\n ) {\n this.pipeline.removePolicy({\n name: coreRestPipeline.bearerTokenAuthenticationPolicyName\n });\n this.pipeline.addPolicy(\n coreRestPipeline.bearerTokenAuthenticationPolicy({\n credential: credentials,\n scopes:\n optionsWithDefaults.credentialScopes ??\n `${optionsWithDefaults.endpoint}/.default`,\n challengeCallbacks: {\n authorizeRequestOnChallenge:\n coreClient.authorizeRequestOnClaimChallenge\n }\n })\n );\n }\n // Parameter assignments\n this.subscriptionId = subscriptionId;\n\n // Assigning values to Constant parameters\n this.$host = options.$host || \"https://management.azure.com\";\n this.policies = new PoliciesImpl(this);\n this.managedRuleSets = new ManagedRuleSetsImpl(this);\n this.frontDoorNameAvailability = new FrontDoorNameAvailabilityImpl(this);\n this.frontDoorNameAvailabilityWithSubscription = new FrontDoorNameAvailabilityWithSubscriptionImpl(\n this\n );\n this.frontDoors = new FrontDoorsImpl(this);\n this.frontendEndpoints = new FrontendEndpointsImpl(this);\n this.endpoints = new EndpointsImpl(this);\n this.rulesEngines = new RulesEnginesImpl(this);\n this.networkExperimentProfiles = new NetworkExperimentProfilesImpl(this);\n this.preconfiguredEndpoints = new PreconfiguredEndpointsImpl(this);\n this.experiments = new ExperimentsImpl(this);\n this.reports = new ReportsImpl(this);\n }\n\n policies: Policies;\n managedRuleSets: ManagedRuleSets;\n frontDoorNameAvailability: FrontDoorNameAvailability;\n frontDoorNameAvailabilityWithSubscription: FrontDoorNameAvailabilityWithSubscription;\n frontDoors: FrontDoors;\n frontendEndpoints: FrontendEndpoints;\n endpoints: Endpoints;\n rulesEngines: RulesEngines;\n networkExperimentProfiles: NetworkExperimentProfiles;\n preconfiguredEndpoints: PreconfiguredEndpoints;\n experiments: Experiments;\n reports: Reports;\n}\n"],"names":["KnownPolicyEnabledState","KnownPolicyMode","KnownPolicyRequestBodyCheck","KnownCustomRuleEnabledState","KnownRuleType","KnownMatchVariable","KnownOperator","KnownTransformType","KnownActionType","KnownManagedRuleSetActionType","KnownManagedRuleExclusionMatchVariable","KnownManagedRuleExclusionSelectorMatchOperator","KnownManagedRuleEnabledState","KnownPolicyResourceState","KnownSkuName","KnownAvailability","KnownFrontDoorResourceState","KnownHeaderActionType","KnownRulesEngineMatchVariable","KnownRulesEngineOperator","KnownTransform","KnownMatchProcessingBehavior","KnownFrontDoorProtocol","KnownRoutingRuleEnabledState","KnownFrontDoorHealthProbeMethod","KnownHealthProbeEnabled","KnownPrivateEndpointStatus","KnownBackendEnabledState","KnownCustomHttpsProvisioningState","KnownCustomHttpsProvisioningSubstate","KnownFrontDoorCertificateSource","KnownFrontDoorTlsProtocolType","KnownMinimumTLSVersion","KnownFrontDoorCertificateType","KnownSessionAffinityEnabledState","KnownEnforceCertificateNameCheckEnabledState","KnownFrontDoorEnabledState","KnownNetworkExperimentResourceState","KnownState","KnownEndpointType","KnownLatencyScorecardAggregationInterval","KnownTimeseriesAggregationInterval","KnownTimeseriesType","KnownAggregationInterval","KnownNetworkOperationStatus","KnownFrontDoorForwardingProtocol","KnownFrontDoorQuery","KnownDynamicCompressionEnabled","KnownFrontDoorRedirectType","KnownFrontDoorRedirectProtocol","WebApplicationFirewallPolicyMapper","TagsObjectMapper","CheckNameAvailabilityInputMapper","FrontDoorMapper","ValidateCustomDomainInputMapper","CustomHttpsConfigurationMapper","PurgeParametersMapper","RulesEngineMapper","ProfileMapper","ProfileUpdateModelMapper","ExperimentMapper","ExperimentUpdateModelMapper","__rest","__await","__asyncValues","__asyncDelegator","listOperationSpec","getOperationSpec","__awaiter","createOrUpdateOperationSpec","createHttpPoller","updateOperationSpec","deleteOperationSpec","listNextOperationSpec","serializer","coreClient","Mappers.WebApplicationFirewallPolicyList","Mappers.ErrorResponse","Parameters.apiVersion","Parameters.$host","Parameters.resourceGroupName","Parameters.subscriptionId","Parameters.accept","Mappers.DefaultErrorResponse","Mappers.WebApplicationFirewallPolicy","Parameters.policyName","Parameters.parameters","Parameters.contentType","Parameters.parameters1","Parameters.nextLink","Mappers.ManagedRuleSetDefinitionList","checkOperationSpec","Mappers.CheckNameAvailabilityOutput","Parameters.checkFrontDoorNameAvailabilityInput","Parameters.apiVersion1","listByResourceGroupOperationSpec","listByResourceGroupNextOperationSpec","Mappers.FrontDoorListResult","Mappers.FrontDoor","Parameters.frontDoorName","Parameters.frontDoorParameters","Mappers.ValidateCustomDomainOutput","Parameters.customDomainProperties","listByFrontDoorOperationSpec","listByFrontDoorNextOperationSpec","Mappers.FrontendEndpointsListResult","Mappers.FrontendEndpoint","Parameters.frontendEndpointName","Parameters.customHttpsConfiguration","Parameters.contentFilePaths","Mappers.RulesEngineListResult","Mappers.RulesEngine","Parameters.rulesEngineName","Parameters.rulesEngineParameters","Mappers.ProfileList","Parameters.apiVersion2","Mappers.Profile","Parameters.profileName","Parameters.parameters2","Parameters.parameters3","Mappers.PreconfiguredEndpointList","Mappers.ExperimentList","Mappers.Experiment","Parameters.experimentName","Parameters.parameters4","Parameters.parameters5","Mappers.LatencyScorecard","Parameters.endDateTimeUTC","Parameters.country","Parameters.aggregationInterval","Mappers.Timeseries","Parameters.startDateTimeUTC","Parameters.endDateTimeUTC1","Parameters.aggregationInterval1","Parameters.timeseriesType","Parameters.endpoint","coreRestPipeline"],"mappings":"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"}
|