@azure/communication-phone-numbers 1.3.0-beta.3 → 1.3.0-beta.4

Sign up to get free protection for your applications and to get access to all the features.
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/generated/src/pagingHelper.ts","../src/generated/src/tracing.ts","../src/generated/src/models/mappers.ts","../src/generated/src/models/parameters.ts","../src/generated/src/lroImpl.ts","../src/generated/src/operations/phoneNumbers.ts","../src/generated/src/phoneNumbersClient.ts","../src/utils/customPipelinePolicies.ts","../src/utils/logger.ts","../src/phoneNumbersClient.ts","../src/generated/src/siprouting/models/mappers.ts","../src/generated/src/siprouting/models/parameters.ts","../src/generated/src/siprouting/operations/sipRouting.ts","../src/generated/src/siprouting/sipRoutingClientContext.ts","../src/generated/src/siprouting/sipRoutingClient.ts","../src/mappers.ts","../src/sipRoutingClient.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 { createTracingClient } from \"@azure/core-tracing\";\n\nexport const tracingClient = createTracingClient({\n namespace: \"Microsoft.Communication\",\n packageName: \"@azure/communication-phone-numbers\",\n packageVersion: \"1.3.0-beta.3\",\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 PhoneNumberAreaCodes: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberAreaCodes\",\n modelProperties: {\n areaCodes: {\n serializedName: \"areaCodes\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberAreaCode\",\n },\n },\n },\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumberAreaCode: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberAreaCode\",\n modelProperties: {\n areaCode: {\n serializedName: \"areaCode\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const CommunicationErrorResponse: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"CommunicationErrorResponse\",\n modelProperties: {\n error: {\n serializedName: \"error\",\n type: {\n name: \"Composite\",\n className: \"CommunicationError\",\n },\n },\n },\n },\n};\n\nexport const CommunicationError: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"CommunicationError\",\n modelProperties: {\n code: {\n serializedName: \"code\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n message: {\n serializedName: \"message\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n target: {\n serializedName: \"target\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n details: {\n serializedName: \"details\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"CommunicationError\",\n },\n },\n },\n },\n innerError: {\n serializedName: \"innererror\",\n type: {\n name: \"Composite\",\n className: \"CommunicationError\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumberCountries: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberCountries\",\n modelProperties: {\n countries: {\n serializedName: \"countries\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberCountry\",\n },\n },\n },\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumberCountry: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberCountry\",\n modelProperties: {\n localizedName: {\n serializedName: \"localizedName\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n countryCode: {\n serializedName: \"countryCode\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumberLocalities: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberLocalities\",\n modelProperties: {\n phoneNumberLocalities: {\n serializedName: \"phoneNumberLocalities\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberLocality\",\n },\n },\n },\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumberLocality: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberLocality\",\n modelProperties: {\n localizedName: {\n serializedName: \"localizedName\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n administrativeDivision: {\n serializedName: \"administrativeDivision\",\n type: {\n name: \"Composite\",\n className: \"PhoneNumberAdministrativeDivision\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumberAdministrativeDivision: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberAdministrativeDivision\",\n modelProperties: {\n localizedName: {\n serializedName: \"localizedName\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n abbreviatedName: {\n serializedName: \"abbreviatedName\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const OfferingsResponse: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"OfferingsResponse\",\n modelProperties: {\n phoneNumberOfferings: {\n serializedName: \"phoneNumberOfferings\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberOffering\",\n },\n },\n },\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumberOffering: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberOffering\",\n modelProperties: {\n phoneNumberType: {\n serializedName: \"phoneNumberType\",\n type: {\n name: \"String\",\n },\n },\n assignmentType: {\n serializedName: \"assignmentType\",\n type: {\n name: \"String\",\n },\n },\n availableCapabilities: {\n serializedName: \"availableCapabilities\",\n type: {\n name: \"Composite\",\n className: \"PhoneNumberCapabilities\",\n },\n },\n cost: {\n serializedName: \"cost\",\n type: {\n name: \"Composite\",\n className: \"PhoneNumberCost\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumberCapabilities: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberCapabilities\",\n modelProperties: {\n calling: {\n serializedName: \"calling\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n sms: {\n serializedName: \"sms\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumberCost: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberCost\",\n modelProperties: {\n amount: {\n serializedName: \"amount\",\n required: true,\n type: {\n name: \"Number\",\n },\n },\n currencyCode: {\n serializedName: \"currencyCode\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n billingFrequency: {\n defaultValue: \"monthly\",\n isConstant: true,\n serializedName: \"billingFrequency\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumberSearchRequest: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberSearchRequest\",\n modelProperties: {\n phoneNumberType: {\n serializedName: \"phoneNumberType\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n assignmentType: {\n serializedName: \"assignmentType\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n capabilities: {\n serializedName: \"capabilities\",\n type: {\n name: \"Composite\",\n className: \"PhoneNumberCapabilities\",\n },\n },\n areaCode: {\n serializedName: \"areaCode\",\n type: {\n name: \"String\",\n },\n },\n quantity: {\n defaultValue: 1,\n constraints: {\n InclusiveMaximum: 2147483647,\n InclusiveMinimum: 1,\n },\n serializedName: \"quantity\",\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumberSearchResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberSearchResult\",\n modelProperties: {\n searchId: {\n serializedName: \"searchId\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n phoneNumbers: {\n serializedName: \"phoneNumbers\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n phoneNumberType: {\n serializedName: \"phoneNumberType\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n assignmentType: {\n serializedName: \"assignmentType\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n capabilities: {\n serializedName: \"capabilities\",\n type: {\n name: \"Composite\",\n className: \"PhoneNumberCapabilities\",\n },\n },\n cost: {\n serializedName: \"cost\",\n type: {\n name: \"Composite\",\n className: \"PhoneNumberCost\",\n },\n },\n searchExpiresBy: {\n serializedName: \"searchExpiresBy\",\n required: true,\n type: {\n name: \"DateTime\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumberPurchaseRequest: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberPurchaseRequest\",\n modelProperties: {\n searchId: {\n serializedName: \"searchId\",\n type: {\n name: \"String\",\n },\n },\n consentToNotResellNumbers: {\n serializedName: \"consentToNotResellNumbers\",\n type: {\n name: \"Boolean\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumberOperation: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberOperation\",\n modelProperties: {\n operationType: {\n serializedName: \"operationType\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n status: {\n serializedName: \"status\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n resourceLocation: {\n serializedName: \"resourceLocation\",\n type: {\n name: \"String\",\n },\n },\n createdDateTime: {\n serializedName: \"createdDateTime\",\n required: true,\n type: {\n name: \"DateTime\",\n },\n },\n error: {\n serializedName: \"error\",\n type: {\n name: \"Composite\",\n className: \"CommunicationError\",\n },\n },\n id: {\n serializedName: \"id\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n lastActionDateTime: {\n serializedName: \"lastActionDateTime\",\n readOnly: true,\n type: {\n name: \"DateTime\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumberCapabilitiesRequest: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberCapabilitiesRequest\",\n modelProperties: {\n calling: {\n serializedName: \"calling\",\n type: {\n name: \"String\",\n },\n },\n sms: {\n serializedName: \"sms\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const PurchasedPhoneNumber: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PurchasedPhoneNumber\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n phoneNumber: {\n serializedName: \"phoneNumber\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n countryCode: {\n serializedName: \"countryCode\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n phoneNumberType: {\n serializedName: \"phoneNumberType\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n capabilities: {\n serializedName: \"capabilities\",\n type: {\n name: \"Composite\",\n className: \"PhoneNumberCapabilities\",\n },\n },\n assignmentType: {\n serializedName: \"assignmentType\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n purchaseDate: {\n serializedName: \"purchaseDate\",\n required: true,\n type: {\n name: \"DateTime\",\n },\n },\n cost: {\n serializedName: \"cost\",\n type: {\n name: \"Composite\",\n className: \"PhoneNumberCost\",\n },\n },\n operatorId: {\n serializedName: \"operatorId\",\n type: {\n name: \"String\",\n },\n },\n operatorName: {\n serializedName: \"operatorName\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const PurchasedPhoneNumbers: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PurchasedPhoneNumbers\",\n modelProperties: {\n phoneNumbers: {\n serializedName: \"phoneNumbers\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"PurchasedPhoneNumber\",\n },\n },\n },\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const OperatorInformationRequest: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"OperatorInformationRequest\",\n modelProperties: {\n phoneNumbers: {\n serializedName: \"phoneNumbers\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const OperatorInformationResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"OperatorInformationResult\",\n modelProperties: {\n values: {\n serializedName: \"values\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"OperatorInformation\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const OperatorInformation: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"OperatorInformation\",\n modelProperties: {\n phoneNumber: {\n serializedName: \"phoneNumber\",\n type: {\n name: \"String\",\n },\n },\n numberType: {\n serializedName: \"numberType\",\n type: {\n name: \"String\",\n },\n },\n isoCountryCode: {\n serializedName: \"isoCountryCode\",\n type: {\n name: \"String\",\n },\n },\n operatorDetails: {\n serializedName: \"operatorDetails\",\n type: {\n name: \"Composite\",\n className: \"OperatorDetails\",\n },\n },\n },\n },\n};\n\nexport const OperatorDetails: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"OperatorDetails\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n type: {\n name: \"String\",\n },\n },\n mobileNetworkCode: {\n serializedName: \"mobileNetworkCode\",\n type: {\n name: \"String\",\n },\n },\n mobileCountryCode: {\n serializedName: \"mobileCountryCode\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumbersSearchAvailablePhoneNumbersHeaders: coreClient.CompositeMapper =\n {\n type: {\n name: \"Composite\",\n className: \"PhoneNumbersSearchAvailablePhoneNumbersHeaders\",\n modelProperties: {\n location: {\n serializedName: \"location\",\n type: {\n name: \"String\",\n },\n },\n operationLocation: {\n serializedName: \"operation-location\",\n type: {\n name: \"String\",\n },\n },\n operationId: {\n serializedName: \"operation-id\",\n type: {\n name: \"String\",\n },\n },\n searchId: {\n serializedName: \"search-id\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n };\n\nexport const PhoneNumbersPurchasePhoneNumbersHeaders: coreClient.CompositeMapper =\n {\n type: {\n name: \"Composite\",\n className: \"PhoneNumbersPurchasePhoneNumbersHeaders\",\n modelProperties: {\n operationLocation: {\n serializedName: \"operation-location\",\n type: {\n name: \"String\",\n },\n },\n operationId: {\n serializedName: \"operation-id\",\n type: {\n name: \"String\",\n },\n },\n purchaseId: {\n serializedName: \"purchase-id\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n };\n\nexport const PhoneNumbersGetOperationHeaders: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumbersGetOperationHeaders\",\n modelProperties: {\n location: {\n serializedName: \"location\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumbersUpdateCapabilitiesHeaders: coreClient.CompositeMapper =\n {\n type: {\n name: \"Composite\",\n className: \"PhoneNumbersUpdateCapabilitiesHeaders\",\n modelProperties: {\n location: {\n serializedName: \"location\",\n type: {\n name: \"String\",\n },\n },\n operationLocation: {\n serializedName: \"operation-location\",\n type: {\n name: \"String\",\n },\n },\n operationId: {\n serializedName: \"operation-id\",\n type: {\n name: \"String\",\n },\n },\n capabilitiesId: {\n serializedName: \"capabilities-id\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n };\n\nexport const PhoneNumbersReleasePhoneNumberHeaders: coreClient.CompositeMapper =\n {\n type: {\n name: \"Composite\",\n className: \"PhoneNumbersReleasePhoneNumberHeaders\",\n modelProperties: {\n operationLocation: {\n serializedName: \"operation-location\",\n type: {\n name: \"String\",\n },\n },\n operationId: {\n serializedName: \"operation-id\",\n type: {\n name: \"String\",\n },\n },\n releaseId: {\n serializedName: \"release-id\",\n type: {\n name: \"String\",\n },\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 {\n OperationParameter,\n OperationURLParameter,\n OperationQueryParameter,\n} from \"@azure/core-client\";\nimport {\n PhoneNumberSearchRequest as PhoneNumberSearchRequestMapper,\n PhoneNumberPurchaseRequest as PhoneNumberPurchaseRequestMapper,\n PhoneNumberCapabilitiesRequest as PhoneNumberCapabilitiesRequestMapper,\n OperatorInformationRequest as OperatorInformationRequestMapper,\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 endpoint: OperationURLParameter = {\n parameterPath: \"endpoint\",\n mapper: {\n serializedName: \"endpoint\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n skipEncoding: true,\n};\n\nexport const countryCode: OperationURLParameter = {\n parameterPath: \"countryCode\",\n mapper: {\n serializedName: \"countryCode\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const phoneNumberType: OperationQueryParameter = {\n parameterPath: \"phoneNumberType\",\n mapper: {\n serializedName: \"phoneNumberType\",\n required: true,\n type: {\n name: \"Enum\",\n allowedValues: [\"geographic\", \"tollFree\"],\n },\n },\n};\n\nexport const skip: OperationQueryParameter = {\n parameterPath: [\"options\", \"skip\"],\n mapper: {\n defaultValue: 0,\n serializedName: \"skip\",\n type: {\n name: \"Number\",\n },\n },\n};\n\nexport const maxPageSize: OperationQueryParameter = {\n parameterPath: [\"options\", \"maxPageSize\"],\n mapper: {\n defaultValue: 100,\n serializedName: \"maxPageSize\",\n type: {\n name: \"Number\",\n },\n },\n};\n\nexport const assignmentType: OperationQueryParameter = {\n parameterPath: [\"options\", \"assignmentType\"],\n mapper: {\n serializedName: \"assignmentType\",\n type: {\n name: \"Enum\",\n allowedValues: [\"person\", \"application\"],\n },\n },\n};\n\nexport const locality: OperationQueryParameter = {\n parameterPath: [\"options\", \"locality\"],\n mapper: {\n serializedName: \"locality\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const administrativeDivision: OperationQueryParameter = {\n parameterPath: [\"options\", \"administrativeDivision\"],\n mapper: {\n serializedName: \"administrativeDivision\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const apiVersion: OperationQueryParameter = {\n parameterPath: \"apiVersion\",\n mapper: {\n defaultValue: \"2023-10-01-preview\",\n isConstant: true,\n serializedName: \"api-version\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const acceptLanguage: OperationParameter = {\n parameterPath: [\"options\", \"acceptLanguage\"],\n mapper: {\n serializedName: \"accept-language\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const phoneNumberType1: OperationQueryParameter = {\n parameterPath: [\"options\", \"phoneNumberType\"],\n mapper: {\n serializedName: \"phoneNumberType\",\n type: {\n name: \"Enum\",\n allowedValues: [\"geographic\", \"tollFree\"],\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 phoneNumberType2: OperationParameter = {\n parameterPath: \"phoneNumberType\",\n mapper: PhoneNumberSearchRequestMapper,\n};\n\nexport const assignmentType1: OperationParameter = {\n parameterPath: \"assignmentType\",\n mapper: PhoneNumberSearchRequestMapper,\n};\n\nexport const capabilities: OperationParameter = {\n parameterPath: \"capabilities\",\n mapper: PhoneNumberSearchRequestMapper,\n};\n\nexport const areaCode: OperationParameter = {\n parameterPath: [\"options\", \"areaCode\"],\n mapper: PhoneNumberSearchRequestMapper,\n};\n\nexport const quantity: OperationParameter = {\n parameterPath: [\"options\", \"quantity\"],\n mapper: PhoneNumberSearchRequestMapper,\n};\n\nexport const searchId: OperationURLParameter = {\n parameterPath: \"searchId\",\n mapper: {\n serializedName: \"searchId\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const searchId1: OperationParameter = {\n parameterPath: [\"options\", \"searchId\"],\n mapper: PhoneNumberPurchaseRequestMapper,\n};\n\nexport const consentToNotResellNumbers: OperationParameter = {\n parameterPath: [\"options\", \"consentToNotResellNumbers\"],\n mapper: PhoneNumberPurchaseRequestMapper,\n};\n\nexport const operationId: OperationURLParameter = {\n parameterPath: \"operationId\",\n mapper: {\n serializedName: \"operationId\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const contentType1: OperationParameter = {\n parameterPath: [\"options\", \"contentType\"],\n mapper: {\n defaultValue: \"application/merge-patch+json\",\n isConstant: true,\n serializedName: \"Content-Type\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const calling: OperationParameter = {\n parameterPath: [\"options\", \"calling\"],\n mapper: PhoneNumberCapabilitiesRequestMapper,\n};\n\nexport const sms: OperationParameter = {\n parameterPath: [\"options\", \"sms\"],\n mapper: PhoneNumberCapabilitiesRequestMapper,\n};\n\nexport const phoneNumber: OperationURLParameter = {\n parameterPath: \"phoneNumber\",\n mapper: {\n serializedName: \"phoneNumber\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const top: OperationQueryParameter = {\n parameterPath: [\"options\", \"top\"],\n mapper: {\n defaultValue: 100,\n serializedName: \"top\",\n type: {\n name: \"Number\",\n },\n },\n};\n\nexport const phoneNumbers: OperationParameter = {\n parameterPath: [\"options\", \"phoneNumbers\"],\n mapper: OperatorInformationRequestMapper,\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","/*\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 { tracingClient } from \"../tracing\";\nimport { PagedAsyncIterableIterator, PageSettings } from \"@azure/core-paging\";\nimport { setContinuationToken } from \"../pagingHelper\";\nimport { PhoneNumbers } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { PhoneNumbersClient } from \"../phoneNumbersClient\";\nimport { PollerLike, PollOperationState, LroEngine } from \"@azure/core-lro\";\nimport { createLroSpec } from \"../lroImpl\";\nimport {\n PhoneNumberAreaCode,\n PhoneNumbersListAreaCodesNextOptionalParams,\n PhoneNumberType,\n PhoneNumbersListAreaCodesOptionalParams,\n PhoneNumbersListAreaCodesResponse,\n PhoneNumberCountry,\n PhoneNumbersListAvailableCountriesNextOptionalParams,\n PhoneNumbersListAvailableCountriesOptionalParams,\n PhoneNumbersListAvailableCountriesResponse,\n PhoneNumberLocality,\n PhoneNumbersListAvailableLocalitiesNextOptionalParams,\n PhoneNumbersListAvailableLocalitiesOptionalParams,\n PhoneNumbersListAvailableLocalitiesResponse,\n PhoneNumberOffering,\n PhoneNumbersListOfferingsNextOptionalParams,\n PhoneNumbersListOfferingsOptionalParams,\n PhoneNumbersListOfferingsResponse,\n PurchasedPhoneNumber,\n PhoneNumbersListPhoneNumbersNextOptionalParams,\n PhoneNumbersListPhoneNumbersOptionalParams,\n PhoneNumbersListPhoneNumbersResponse,\n PhoneNumberAssignmentType,\n PhoneNumberCapabilities,\n PhoneNumbersSearchAvailablePhoneNumbersOptionalParams,\n PhoneNumbersSearchAvailablePhoneNumbersResponse,\n PhoneNumbersGetSearchResultOptionalParams,\n PhoneNumbersGetSearchResultResponse,\n PhoneNumbersPurchasePhoneNumbersOptionalParams,\n PhoneNumbersPurchasePhoneNumbersResponse,\n PhoneNumbersGetOperationOptionalParams,\n PhoneNumbersGetOperationResponse,\n PhoneNumbersCancelOperationOptionalParams,\n PhoneNumbersUpdateCapabilitiesOptionalParams,\n PhoneNumbersUpdateCapabilitiesResponse,\n PhoneNumbersGetByNumberOptionalParams,\n PhoneNumbersGetByNumberResponse,\n PhoneNumbersReleasePhoneNumberOptionalParams,\n PhoneNumbersReleasePhoneNumberResponse,\n PhoneNumbersOperatorInformationSearchOptionalParams,\n PhoneNumbersOperatorInformationSearchResponse,\n PhoneNumbersListAreaCodesNextResponse,\n PhoneNumbersListAvailableCountriesNextResponse,\n PhoneNumbersListAvailableLocalitiesNextResponse,\n PhoneNumbersListOfferingsNextResponse,\n PhoneNumbersListPhoneNumbersNextResponse,\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class containing PhoneNumbers operations. */\nexport class PhoneNumbersImpl implements PhoneNumbers {\n private readonly client: PhoneNumbersClient;\n\n /**\n * Initialize a new instance of the class PhoneNumbers class.\n * @param client Reference to the service client\n */\n constructor(client: PhoneNumbersClient) {\n this.client = client;\n }\n\n /**\n * Gets the list of available area codes.\n * @param countryCode The ISO 3166-2 country code, e.g. US.\n * @param phoneNumberType Filter by numberType, e.g. Geographic, TollFree.\n * @param options The options parameters.\n */\n public listAreaCodes(\n countryCode: string,\n phoneNumberType: PhoneNumberType,\n options?: PhoneNumbersListAreaCodesOptionalParams,\n ): PagedAsyncIterableIterator<PhoneNumberAreaCode> {\n const iter = this.listAreaCodesPagingAll(\n countryCode,\n phoneNumberType,\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.listAreaCodesPagingPage(\n countryCode,\n phoneNumberType,\n options,\n settings,\n );\n },\n };\n }\n\n private async *listAreaCodesPagingPage(\n countryCode: string,\n phoneNumberType: PhoneNumberType,\n options?: PhoneNumbersListAreaCodesOptionalParams,\n settings?: PageSettings,\n ): AsyncIterableIterator<PhoneNumberAreaCode[]> {\n let result: PhoneNumbersListAreaCodesResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listAreaCodes(countryCode, phoneNumberType, options);\n let page = result.areaCodes || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listAreaCodesNext(\n countryCode,\n continuationToken,\n options,\n );\n continuationToken = result.nextLink;\n let page = result.areaCodes || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listAreaCodesPagingAll(\n countryCode: string,\n phoneNumberType: PhoneNumberType,\n options?: PhoneNumbersListAreaCodesOptionalParams,\n ): AsyncIterableIterator<PhoneNumberAreaCode> {\n for await (const page of this.listAreaCodesPagingPage(\n countryCode,\n phoneNumberType,\n options,\n )) {\n yield* page;\n }\n }\n\n /**\n * Gets the list of supported countries.\n * @param options The options parameters.\n */\n public listAvailableCountries(\n options?: PhoneNumbersListAvailableCountriesOptionalParams,\n ): PagedAsyncIterableIterator<PhoneNumberCountry> {\n const iter = this.listAvailableCountriesPagingAll(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.listAvailableCountriesPagingPage(options, settings);\n },\n };\n }\n\n private async *listAvailableCountriesPagingPage(\n options?: PhoneNumbersListAvailableCountriesOptionalParams,\n settings?: PageSettings,\n ): AsyncIterableIterator<PhoneNumberCountry[]> {\n let result: PhoneNumbersListAvailableCountriesResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listAvailableCountries(options);\n let page = result.countries || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listAvailableCountriesNext(\n continuationToken,\n options,\n );\n continuationToken = result.nextLink;\n let page = result.countries || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listAvailableCountriesPagingAll(\n options?: PhoneNumbersListAvailableCountriesOptionalParams,\n ): AsyncIterableIterator<PhoneNumberCountry> {\n for await (const page of this.listAvailableCountriesPagingPage(options)) {\n yield* page;\n }\n }\n\n /**\n * Gets the list of cities or towns with available phone numbers.\n * @param countryCode The ISO 3166-2 country code, e.g. US.\n * @param options The options parameters.\n */\n public listAvailableLocalities(\n countryCode: string,\n options?: PhoneNumbersListAvailableLocalitiesOptionalParams,\n ): PagedAsyncIterableIterator<PhoneNumberLocality> {\n const iter = this.listAvailableLocalitiesPagingAll(countryCode, 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.listAvailableLocalitiesPagingPage(\n countryCode,\n options,\n settings,\n );\n },\n };\n }\n\n private async *listAvailableLocalitiesPagingPage(\n countryCode: string,\n options?: PhoneNumbersListAvailableLocalitiesOptionalParams,\n settings?: PageSettings,\n ): AsyncIterableIterator<PhoneNumberLocality[]> {\n let result: PhoneNumbersListAvailableLocalitiesResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listAvailableLocalities(countryCode, options);\n let page = result.phoneNumberLocalities || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listAvailableLocalitiesNext(\n countryCode,\n continuationToken,\n options,\n );\n continuationToken = result.nextLink;\n let page = result.phoneNumberLocalities || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listAvailableLocalitiesPagingAll(\n countryCode: string,\n options?: PhoneNumbersListAvailableLocalitiesOptionalParams,\n ): AsyncIterableIterator<PhoneNumberLocality> {\n for await (const page of this.listAvailableLocalitiesPagingPage(\n countryCode,\n options,\n )) {\n yield* page;\n }\n }\n\n /**\n * List available offerings of capabilities with rates for the given country.\n * @param countryCode The ISO 3166-2 country code, e.g. US.\n * @param options The options parameters.\n */\n public listOfferings(\n countryCode: string,\n options?: PhoneNumbersListOfferingsOptionalParams,\n ): PagedAsyncIterableIterator<PhoneNumberOffering> {\n const iter = this.listOfferingsPagingAll(countryCode, 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.listOfferingsPagingPage(countryCode, options, settings);\n },\n };\n }\n\n private async *listOfferingsPagingPage(\n countryCode: string,\n options?: PhoneNumbersListOfferingsOptionalParams,\n settings?: PageSettings,\n ): AsyncIterableIterator<PhoneNumberOffering[]> {\n let result: PhoneNumbersListOfferingsResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listOfferings(countryCode, options);\n let page = result.phoneNumberOfferings || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listOfferingsNext(\n countryCode,\n continuationToken,\n options,\n );\n continuationToken = result.nextLink;\n let page = result.phoneNumberOfferings || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listOfferingsPagingAll(\n countryCode: string,\n options?: PhoneNumbersListOfferingsOptionalParams,\n ): AsyncIterableIterator<PhoneNumberOffering> {\n for await (const page of this.listOfferingsPagingPage(\n countryCode,\n options,\n )) {\n yield* page;\n }\n }\n\n /**\n * Gets the list of all purchased phone numbers.\n * @param options The options parameters.\n */\n public listPhoneNumbers(\n options?: PhoneNumbersListPhoneNumbersOptionalParams,\n ): PagedAsyncIterableIterator<PurchasedPhoneNumber> {\n const iter = this.listPhoneNumbersPagingAll(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.listPhoneNumbersPagingPage(options, settings);\n },\n };\n }\n\n private async *listPhoneNumbersPagingPage(\n options?: PhoneNumbersListPhoneNumbersOptionalParams,\n settings?: PageSettings,\n ): AsyncIterableIterator<PurchasedPhoneNumber[]> {\n let result: PhoneNumbersListPhoneNumbersResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listPhoneNumbers(options);\n let page = result.phoneNumbers || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listPhoneNumbersNext(continuationToken, options);\n continuationToken = result.nextLink;\n let page = result.phoneNumbers || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listPhoneNumbersPagingAll(\n options?: PhoneNumbersListPhoneNumbersOptionalParams,\n ): AsyncIterableIterator<PurchasedPhoneNumber> {\n for await (const page of this.listPhoneNumbersPagingPage(options)) {\n yield* page;\n }\n }\n\n /**\n * Gets the list of available area codes.\n * @param countryCode The ISO 3166-2 country code, e.g. US.\n * @param phoneNumberType Filter by numberType, e.g. Geographic, TollFree.\n * @param options The options parameters.\n */\n private async _listAreaCodes(\n countryCode: string,\n phoneNumberType: PhoneNumberType,\n options?: PhoneNumbersListAreaCodesOptionalParams,\n ): Promise<PhoneNumbersListAreaCodesResponse> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient._listAreaCodes\",\n options ?? {},\n async (options) => {\n return this.client.sendOperationRequest(\n { countryCode, phoneNumberType, options },\n listAreaCodesOperationSpec,\n ) as Promise<PhoneNumbersListAreaCodesResponse>;\n },\n );\n }\n\n /**\n * Gets the list of supported countries.\n * @param options The options parameters.\n */\n private async _listAvailableCountries(\n options?: PhoneNumbersListAvailableCountriesOptionalParams,\n ): Promise<PhoneNumbersListAvailableCountriesResponse> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient._listAvailableCountries\",\n options ?? {},\n async (options) => {\n return this.client.sendOperationRequest(\n { options },\n listAvailableCountriesOperationSpec,\n ) as Promise<PhoneNumbersListAvailableCountriesResponse>;\n },\n );\n }\n\n /**\n * Gets the list of cities or towns with available phone numbers.\n * @param countryCode The ISO 3166-2 country code, e.g. US.\n * @param options The options parameters.\n */\n private async _listAvailableLocalities(\n countryCode: string,\n options?: PhoneNumbersListAvailableLocalitiesOptionalParams,\n ): Promise<PhoneNumbersListAvailableLocalitiesResponse> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient._listAvailableLocalities\",\n options ?? {},\n async (options) => {\n return this.client.sendOperationRequest(\n { countryCode, options },\n listAvailableLocalitiesOperationSpec,\n ) as Promise<PhoneNumbersListAvailableLocalitiesResponse>;\n },\n );\n }\n\n /**\n * List available offerings of capabilities with rates for the given country.\n * @param countryCode The ISO 3166-2 country code, e.g. US.\n * @param options The options parameters.\n */\n private async _listOfferings(\n countryCode: string,\n options?: PhoneNumbersListOfferingsOptionalParams,\n ): Promise<PhoneNumbersListOfferingsResponse> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient._listOfferings\",\n options ?? {},\n async (options) => {\n return this.client.sendOperationRequest(\n { countryCode, options },\n listOfferingsOperationSpec,\n ) as Promise<PhoneNumbersListOfferingsResponse>;\n },\n );\n }\n\n /**\n * Search for available phone numbers to purchase.\n * @param countryCode The ISO 3166-2 country code, e.g. US.\n * @param phoneNumberType The type of phone numbers to search for, e.g. geographic, or tollFree.\n * @param assignmentType The assignment type of the phone numbers to search for. A phone number can be\n * assigned to a person, or to an application.\n * @param capabilities Capabilities of a phone number.\n * @param options The options parameters.\n */\n async beginSearchAvailablePhoneNumbers(\n countryCode: string,\n phoneNumberType: PhoneNumberType,\n assignmentType: PhoneNumberAssignmentType,\n capabilities: PhoneNumberCapabilities,\n options?: PhoneNumbersSearchAvailablePhoneNumbersOptionalParams,\n ): Promise<\n PollerLike<\n PollOperationState<PhoneNumbersSearchAvailablePhoneNumbersResponse>,\n PhoneNumbersSearchAvailablePhoneNumbersResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<PhoneNumbersSearchAvailablePhoneNumbersResponse> => {\n return tracingClient.withSpan(\n \"PhoneNumbersClient.beginSearchAvailablePhoneNumbers\",\n options ?? {},\n async () => {\n return this.client.sendOperationRequest(\n args,\n spec,\n ) as Promise<PhoneNumbersSearchAvailablePhoneNumbersResponse>;\n },\n );\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ) => {\n let currentRawResponse: coreClient.FullOperationResponse | undefined =\n 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 countryCode,\n phoneNumberType,\n assignmentType,\n capabilities,\n options,\n },\n spec: searchAvailablePhoneNumbersOperationSpec,\n });\n const poller = new LroEngine(lro, {\n resumeFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n lroResourceLocationConfig: \"location\",\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Search for available phone numbers to purchase.\n * @param countryCode The ISO 3166-2 country code, e.g. US.\n * @param phoneNumberType The type of phone numbers to search for, e.g. geographic, or tollFree.\n * @param assignmentType The assignment type of the phone numbers to search for. A phone number can be\n * assigned to a person, or to an application.\n * @param capabilities Capabilities of a phone number.\n * @param options The options parameters.\n */\n async beginSearchAvailablePhoneNumbersAndWait(\n countryCode: string,\n phoneNumberType: PhoneNumberType,\n assignmentType: PhoneNumberAssignmentType,\n capabilities: PhoneNumberCapabilities,\n options?: PhoneNumbersSearchAvailablePhoneNumbersOptionalParams,\n ): Promise<PhoneNumbersSearchAvailablePhoneNumbersResponse> {\n const poller = await this.beginSearchAvailablePhoneNumbers(\n countryCode,\n phoneNumberType,\n assignmentType,\n capabilities,\n options,\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Gets a phone number search result by search id.\n * @param searchId The search Id.\n * @param options The options parameters.\n */\n async getSearchResult(\n searchId: string,\n options?: PhoneNumbersGetSearchResultOptionalParams,\n ): Promise<PhoneNumbersGetSearchResultResponse> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient.getSearchResult\",\n options ?? {},\n async (options) => {\n return this.client.sendOperationRequest(\n { searchId, options },\n getSearchResultOperationSpec,\n ) as Promise<PhoneNumbersGetSearchResultResponse>;\n },\n );\n }\n\n /**\n * Purchases phone numbers.\n * @param options The options parameters.\n */\n async beginPurchasePhoneNumbers(\n options?: PhoneNumbersPurchasePhoneNumbersOptionalParams,\n ): Promise<\n PollerLike<\n PollOperationState<PhoneNumbersPurchasePhoneNumbersResponse>,\n PhoneNumbersPurchasePhoneNumbersResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<PhoneNumbersPurchasePhoneNumbersResponse> => {\n return tracingClient.withSpan(\n \"PhoneNumbersClient.beginPurchasePhoneNumbers\",\n options ?? {},\n async () => {\n return this.client.sendOperationRequest(\n args,\n spec,\n ) as Promise<PhoneNumbersPurchasePhoneNumbersResponse>;\n },\n );\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ) => {\n let currentRawResponse: coreClient.FullOperationResponse | undefined =\n 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: { options },\n spec: purchasePhoneNumbersOperationSpec,\n });\n const poller = new LroEngine(lro, {\n resumeFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Purchases phone numbers.\n * @param options The options parameters.\n */\n async beginPurchasePhoneNumbersAndWait(\n options?: PhoneNumbersPurchasePhoneNumbersOptionalParams,\n ): Promise<PhoneNumbersPurchasePhoneNumbersResponse> {\n const poller = await this.beginPurchasePhoneNumbers(options);\n return poller.pollUntilDone();\n }\n\n /**\n * Gets an operation by its id.\n * @param operationId The id of the operation\n * @param options The options parameters.\n */\n async getOperation(\n operationId: string,\n options?: PhoneNumbersGetOperationOptionalParams,\n ): Promise<PhoneNumbersGetOperationResponse> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient.getOperation\",\n options ?? {},\n async (options) => {\n return this.client.sendOperationRequest(\n { operationId, options },\n getOperationOperationSpec,\n ) as Promise<PhoneNumbersGetOperationResponse>;\n },\n );\n }\n\n /**\n * Cancels an operation by its id.\n * @param operationId The id of the operation\n * @param options The options parameters.\n */\n async cancelOperation(\n operationId: string,\n options?: PhoneNumbersCancelOperationOptionalParams,\n ): Promise<void> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient.cancelOperation\",\n options ?? {},\n async (options) => {\n return this.client.sendOperationRequest(\n { operationId, options },\n cancelOperationOperationSpec,\n ) as Promise<void>;\n },\n );\n }\n\n /**\n * Updates the capabilities of a phone number.\n * @param phoneNumber The phone number id in E.164 format. The leading plus can be either + or encoded\n * as %2B, e.g. +11234567890.\n * @param options The options parameters.\n */\n async beginUpdateCapabilities(\n phoneNumber: string,\n options?: PhoneNumbersUpdateCapabilitiesOptionalParams,\n ): Promise<\n PollerLike<\n PollOperationState<PhoneNumbersUpdateCapabilitiesResponse>,\n PhoneNumbersUpdateCapabilitiesResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<PhoneNumbersUpdateCapabilitiesResponse> => {\n return tracingClient.withSpan(\n \"PhoneNumbersClient.beginUpdateCapabilities\",\n options ?? {},\n async () => {\n return this.client.sendOperationRequest(\n args,\n spec,\n ) as Promise<PhoneNumbersUpdateCapabilitiesResponse>;\n },\n );\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ) => {\n let currentRawResponse: coreClient.FullOperationResponse | undefined =\n 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: { phoneNumber, options },\n spec: updateCapabilitiesOperationSpec,\n });\n const poller = new LroEngine(lro, {\n resumeFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n lroResourceLocationConfig: \"location\",\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Updates the capabilities of a phone number.\n * @param phoneNumber The phone number id in E.164 format. The leading plus can be either + or encoded\n * as %2B, e.g. +11234567890.\n * @param options The options parameters.\n */\n async beginUpdateCapabilitiesAndWait(\n phoneNumber: string,\n options?: PhoneNumbersUpdateCapabilitiesOptionalParams,\n ): Promise<PhoneNumbersUpdateCapabilitiesResponse> {\n const poller = await this.beginUpdateCapabilities(phoneNumber, options);\n return poller.pollUntilDone();\n }\n\n /**\n * Gets the details of the given purchased phone number.\n * @param phoneNumber The purchased phone number whose details are to be fetched in E.164 format, e.g.\n * +11234567890.\n * @param options The options parameters.\n */\n async getByNumber(\n phoneNumber: string,\n options?: PhoneNumbersGetByNumberOptionalParams,\n ): Promise<PhoneNumbersGetByNumberResponse> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient.getByNumber\",\n options ?? {},\n async (options) => {\n return this.client.sendOperationRequest(\n { phoneNumber, options },\n getByNumberOperationSpec,\n ) as Promise<PhoneNumbersGetByNumberResponse>;\n },\n );\n }\n\n /**\n * Releases a purchased phone number.\n * @param phoneNumber Phone number to be released, e.g. +11234567890.\n * @param options The options parameters.\n */\n async beginReleasePhoneNumber(\n phoneNumber: string,\n options?: PhoneNumbersReleasePhoneNumberOptionalParams,\n ): Promise<\n PollerLike<\n PollOperationState<PhoneNumbersReleasePhoneNumberResponse>,\n PhoneNumbersReleasePhoneNumberResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<PhoneNumbersReleasePhoneNumberResponse> => {\n return tracingClient.withSpan(\n \"PhoneNumbersClient.beginReleasePhoneNumber\",\n options ?? {},\n async () => {\n return this.client.sendOperationRequest(\n args,\n spec,\n ) as Promise<PhoneNumbersReleasePhoneNumberResponse>;\n },\n );\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ) => {\n let currentRawResponse: coreClient.FullOperationResponse | undefined =\n 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: { phoneNumber, options },\n spec: releasePhoneNumberOperationSpec,\n });\n const poller = new LroEngine(lro, {\n resumeFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Releases a purchased phone number.\n * @param phoneNumber Phone number to be released, e.g. +11234567890.\n * @param options The options parameters.\n */\n async beginReleasePhoneNumberAndWait(\n phoneNumber: string,\n options?: PhoneNumbersReleasePhoneNumberOptionalParams,\n ): Promise<PhoneNumbersReleasePhoneNumberResponse> {\n const poller = await this.beginReleasePhoneNumber(phoneNumber, options);\n return poller.pollUntilDone();\n }\n\n /**\n * Gets the list of all purchased phone numbers.\n * @param options The options parameters.\n */\n private async _listPhoneNumbers(\n options?: PhoneNumbersListPhoneNumbersOptionalParams,\n ): Promise<PhoneNumbersListPhoneNumbersResponse> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient._listPhoneNumbers\",\n options ?? {},\n async (options) => {\n return this.client.sendOperationRequest(\n { options },\n listPhoneNumbersOperationSpec,\n ) as Promise<PhoneNumbersListPhoneNumbersResponse>;\n },\n );\n }\n\n /**\n * Searches for operator information for a given list of phone numbers.\n * @param options The options parameters.\n */\n async operatorInformationSearch(\n options?: PhoneNumbersOperatorInformationSearchOptionalParams,\n ): Promise<PhoneNumbersOperatorInformationSearchResponse> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient.operatorInformationSearch\",\n options ?? {},\n async (options) => {\n return this.client.sendOperationRequest(\n { options },\n operatorInformationSearchOperationSpec,\n ) as Promise<PhoneNumbersOperatorInformationSearchResponse>;\n },\n );\n }\n\n /**\n * ListAreaCodesNext\n * @param countryCode The ISO 3166-2 country code, e.g. US.\n * @param nextLink The nextLink from the previous successful call to the ListAreaCodes method.\n * @param options The options parameters.\n */\n private async _listAreaCodesNext(\n countryCode: string,\n nextLink: string,\n options?: PhoneNumbersListAreaCodesNextOptionalParams,\n ): Promise<PhoneNumbersListAreaCodesNextResponse> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient._listAreaCodesNext\",\n options ?? {},\n async (options) => {\n return this.client.sendOperationRequest(\n { countryCode, nextLink, options },\n listAreaCodesNextOperationSpec,\n ) as Promise<PhoneNumbersListAreaCodesNextResponse>;\n },\n );\n }\n\n /**\n * ListAvailableCountriesNext\n * @param nextLink The nextLink from the previous successful call to the ListAvailableCountries method.\n * @param options The options parameters.\n */\n private async _listAvailableCountriesNext(\n nextLink: string,\n options?: PhoneNumbersListAvailableCountriesNextOptionalParams,\n ): Promise<PhoneNumbersListAvailableCountriesNextResponse> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient._listAvailableCountriesNext\",\n options ?? {},\n async (options) => {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listAvailableCountriesNextOperationSpec,\n ) as Promise<PhoneNumbersListAvailableCountriesNextResponse>;\n },\n );\n }\n\n /**\n * ListAvailableLocalitiesNext\n * @param countryCode The ISO 3166-2 country code, e.g. US.\n * @param nextLink The nextLink from the previous successful call to the ListAvailableLocalities\n * method.\n * @param options The options parameters.\n */\n private async _listAvailableLocalitiesNext(\n countryCode: string,\n nextLink: string,\n options?: PhoneNumbersListAvailableLocalitiesNextOptionalParams,\n ): Promise<PhoneNumbersListAvailableLocalitiesNextResponse> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient._listAvailableLocalitiesNext\",\n options ?? {},\n async (options) => {\n return this.client.sendOperationRequest(\n { countryCode, nextLink, options },\n listAvailableLocalitiesNextOperationSpec,\n ) as Promise<PhoneNumbersListAvailableLocalitiesNextResponse>;\n },\n );\n }\n\n /**\n * ListOfferingsNext\n * @param countryCode The ISO 3166-2 country code, e.g. US.\n * @param nextLink The nextLink from the previous successful call to the ListOfferings method.\n * @param options The options parameters.\n */\n private async _listOfferingsNext(\n countryCode: string,\n nextLink: string,\n options?: PhoneNumbersListOfferingsNextOptionalParams,\n ): Promise<PhoneNumbersListOfferingsNextResponse> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient._listOfferingsNext\",\n options ?? {},\n async (options) => {\n return this.client.sendOperationRequest(\n { countryCode, nextLink, options },\n listOfferingsNextOperationSpec,\n ) as Promise<PhoneNumbersListOfferingsNextResponse>;\n },\n );\n }\n\n /**\n * ListPhoneNumbersNext\n * @param nextLink The nextLink from the previous successful call to the ListPhoneNumbers method.\n * @param options The options parameters.\n */\n private async _listPhoneNumbersNext(\n nextLink: string,\n options?: PhoneNumbersListPhoneNumbersNextOptionalParams,\n ): Promise<PhoneNumbersListPhoneNumbersNextResponse> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient._listPhoneNumbersNext\",\n options ?? {},\n async (options) => {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listPhoneNumbersNextOperationSpec,\n ) as Promise<PhoneNumbersListPhoneNumbersNextResponse>;\n },\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst listAreaCodesOperationSpec: coreClient.OperationSpec = {\n path: \"/availablePhoneNumbers/countries/{countryCode}/areaCodes\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.PhoneNumberAreaCodes,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n queryParameters: [\n Parameters.phoneNumberType,\n Parameters.skip,\n Parameters.maxPageSize,\n Parameters.assignmentType,\n Parameters.locality,\n Parameters.administrativeDivision,\n Parameters.apiVersion,\n ],\n urlParameters: [Parameters.endpoint, Parameters.countryCode],\n headerParameters: [Parameters.accept, Parameters.acceptLanguage],\n serializer,\n};\nconst listAvailableCountriesOperationSpec: coreClient.OperationSpec = {\n path: \"/availablePhoneNumbers/countries\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.PhoneNumberCountries,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n queryParameters: [\n Parameters.skip,\n Parameters.maxPageSize,\n Parameters.apiVersion,\n ],\n urlParameters: [Parameters.endpoint],\n headerParameters: [Parameters.accept, Parameters.acceptLanguage],\n serializer,\n};\nconst listAvailableLocalitiesOperationSpec: coreClient.OperationSpec = {\n path: \"/availablePhoneNumbers/countries/{countryCode}/localities\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.PhoneNumberLocalities,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n queryParameters: [\n Parameters.skip,\n Parameters.maxPageSize,\n Parameters.administrativeDivision,\n Parameters.apiVersion,\n ],\n urlParameters: [Parameters.endpoint, Parameters.countryCode],\n headerParameters: [Parameters.accept, Parameters.acceptLanguage],\n serializer,\n};\nconst listOfferingsOperationSpec: coreClient.OperationSpec = {\n path: \"/availablePhoneNumbers/countries/{countryCode}/offerings\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.OfferingsResponse,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n queryParameters: [\n Parameters.skip,\n Parameters.maxPageSize,\n Parameters.assignmentType,\n Parameters.apiVersion,\n Parameters.phoneNumberType1,\n ],\n urlParameters: [Parameters.endpoint, Parameters.countryCode],\n headerParameters: [Parameters.accept, Parameters.acceptLanguage],\n serializer,\n};\nconst searchAvailablePhoneNumbersOperationSpec: coreClient.OperationSpec = {\n path: \"/availablePhoneNumbers/countries/{countryCode}/:search\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.PhoneNumberSearchResult,\n headersMapper: Mappers.PhoneNumbersSearchAvailablePhoneNumbersHeaders,\n },\n 201: {\n bodyMapper: Mappers.PhoneNumberSearchResult,\n headersMapper: Mappers.PhoneNumbersSearchAvailablePhoneNumbersHeaders,\n },\n 202: {\n bodyMapper: Mappers.PhoneNumberSearchResult,\n headersMapper: Mappers.PhoneNumbersSearchAvailablePhoneNumbersHeaders,\n },\n 204: {\n bodyMapper: Mappers.PhoneNumberSearchResult,\n headersMapper: Mappers.PhoneNumbersSearchAvailablePhoneNumbersHeaders,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n requestBody: {\n parameterPath: {\n phoneNumberType: [\"phoneNumberType\"],\n assignmentType: [\"assignmentType\"],\n capabilities: [\"capabilities\"],\n areaCode: [\"options\", \"areaCode\"],\n quantity: [\"options\", \"quantity\"],\n },\n mapper: { ...Mappers.PhoneNumberSearchRequest, required: true },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.countryCode],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer,\n};\nconst getSearchResultOperationSpec: coreClient.OperationSpec = {\n path: \"/availablePhoneNumbers/searchResults/{searchId}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.PhoneNumberSearchResult,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.searchId],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst purchasePhoneNumbersOperationSpec: coreClient.OperationSpec = {\n path: \"/availablePhoneNumbers/:purchase\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n headersMapper: Mappers.PhoneNumbersPurchasePhoneNumbersHeaders,\n },\n 201: {\n headersMapper: Mappers.PhoneNumbersPurchasePhoneNumbersHeaders,\n },\n 202: {\n headersMapper: Mappers.PhoneNumbersPurchasePhoneNumbersHeaders,\n },\n 204: {\n headersMapper: Mappers.PhoneNumbersPurchasePhoneNumbersHeaders,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n requestBody: {\n parameterPath: {\n searchId: [\"options\", \"searchId\"],\n consentToNotResellNumbers: [\"options\", \"consentToNotResellNumbers\"],\n },\n mapper: { ...Mappers.PhoneNumberPurchaseRequest, required: true },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer,\n};\nconst getOperationOperationSpec: coreClient.OperationSpec = {\n path: \"/phoneNumbers/operations/{operationId}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.PhoneNumberOperation,\n headersMapper: Mappers.PhoneNumbersGetOperationHeaders,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.operationId],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst cancelOperationOperationSpec: coreClient.OperationSpec = {\n path: \"/phoneNumbers/operations/{operationId}\",\n httpMethod: \"DELETE\",\n responses: {\n 204: {},\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.operationId],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst updateCapabilitiesOperationSpec: coreClient.OperationSpec = {\n path: \"/phoneNumbers/{phoneNumber}/capabilities\",\n httpMethod: \"PATCH\",\n responses: {\n 200: {\n bodyMapper: Mappers.PurchasedPhoneNumber,\n headersMapper: Mappers.PhoneNumbersUpdateCapabilitiesHeaders,\n },\n 201: {\n bodyMapper: Mappers.PurchasedPhoneNumber,\n headersMapper: Mappers.PhoneNumbersUpdateCapabilitiesHeaders,\n },\n 202: {\n bodyMapper: Mappers.PurchasedPhoneNumber,\n headersMapper: Mappers.PhoneNumbersUpdateCapabilitiesHeaders,\n },\n 204: {\n bodyMapper: Mappers.PurchasedPhoneNumber,\n headersMapper: Mappers.PhoneNumbersUpdateCapabilitiesHeaders,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n requestBody: {\n parameterPath: { calling: [\"options\", \"calling\"], sms: [\"options\", \"sms\"] },\n mapper: Mappers.PhoneNumberCapabilitiesRequest,\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.phoneNumber],\n headerParameters: [Parameters.accept, Parameters.contentType1],\n mediaType: \"json\",\n serializer,\n};\nconst getByNumberOperationSpec: coreClient.OperationSpec = {\n path: \"/phoneNumbers/{phoneNumber}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.PurchasedPhoneNumber,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.phoneNumber],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst releasePhoneNumberOperationSpec: coreClient.OperationSpec = {\n path: \"/phoneNumbers/{phoneNumber}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {\n headersMapper: Mappers.PhoneNumbersReleasePhoneNumberHeaders,\n },\n 201: {\n headersMapper: Mappers.PhoneNumbersReleasePhoneNumberHeaders,\n },\n 202: {\n headersMapper: Mappers.PhoneNumbersReleasePhoneNumberHeaders,\n },\n 204: {\n headersMapper: Mappers.PhoneNumbersReleasePhoneNumberHeaders,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.phoneNumber],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst listPhoneNumbersOperationSpec: coreClient.OperationSpec = {\n path: \"/phoneNumbers\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.PurchasedPhoneNumbers,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n queryParameters: [Parameters.skip, Parameters.apiVersion, Parameters.top],\n urlParameters: [Parameters.endpoint],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst operatorInformationSearchOperationSpec: coreClient.OperationSpec = {\n path: \"/operatorInformation/:search\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.OperatorInformationResult,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n requestBody: {\n parameterPath: { phoneNumbers: [\"options\", \"phoneNumbers\"] },\n mapper: { ...Mappers.OperatorInformationRequest, required: true },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer,\n};\nconst listAreaCodesNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.PhoneNumberAreaCodes,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n urlParameters: [\n Parameters.endpoint,\n Parameters.countryCode,\n Parameters.nextLink,\n ],\n headerParameters: [Parameters.accept, Parameters.acceptLanguage],\n serializer,\n};\nconst listAvailableCountriesNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.PhoneNumberCountries,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n urlParameters: [Parameters.endpoint, Parameters.nextLink],\n headerParameters: [Parameters.accept, Parameters.acceptLanguage],\n serializer,\n};\nconst listAvailableLocalitiesNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.PhoneNumberLocalities,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n urlParameters: [\n Parameters.endpoint,\n Parameters.countryCode,\n Parameters.nextLink,\n ],\n headerParameters: [Parameters.accept, Parameters.acceptLanguage],\n serializer,\n};\nconst listOfferingsNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.OfferingsResponse,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n urlParameters: [\n Parameters.endpoint,\n Parameters.countryCode,\n Parameters.nextLink,\n ],\n headerParameters: [Parameters.accept, Parameters.acceptLanguage],\n serializer,\n};\nconst listPhoneNumbersNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.PurchasedPhoneNumbers,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n urlParameters: [Parameters.endpoint, Parameters.nextLink],\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 {\n PipelineRequest,\n PipelineResponse,\n SendRequest,\n} from \"@azure/core-rest-pipeline\";\nimport { PhoneNumbersImpl } from \"./operations\";\nimport { PhoneNumbers } from \"./operationsInterfaces\";\nimport { PhoneNumbersClientOptionalParams } from \"./models\";\n\nexport class PhoneNumbersClient extends coreClient.ServiceClient {\n endpoint: string;\n apiVersion: string;\n\n /**\n * Initializes a new instance of the PhoneNumbersClient class.\n * @param endpoint The communication resource, for example https://resourcename.communication.azure.com\n * @param options The parameter options\n */\n constructor(endpoint: string, options?: PhoneNumbersClientOptionalParams) {\n if (endpoint === undefined) {\n throw new Error(\"'endpoint' cannot be null\");\n }\n\n // Initializing default values for options\n if (!options) {\n options = {};\n }\n const defaults: PhoneNumbersClientOptionalParams = {\n requestContentType: \"application/json; charset=utf-8\",\n };\n\n const packageDetails = `azsdk-js-communication-phone-numbers/1.3.0-beta.3`;\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: options.endpoint ?? options.baseUri ?? \"{endpoint}\",\n };\n super(optionsWithDefaults);\n // Parameter assignments\n this.endpoint = endpoint;\n\n // Assigning values to Constant parameters\n this.apiVersion = options.apiVersion || \"2023-10-01-preview\";\n this.phoneNumbers = new PhoneNumbersImpl(this);\n this.addCustomApiVersionPolicy(options.apiVersion);\n }\n\n /** A function that adds a policy that sets the api-version (or equivalent) to reflect the library version. */\n private addCustomApiVersionPolicy(apiVersion?: string) {\n if (!apiVersion) {\n return;\n }\n const apiVersionPolicy = {\n name: \"CustomApiVersionPolicy\",\n async sendRequest(\n request: PipelineRequest,\n next: SendRequest,\n ): Promise<PipelineResponse> {\n const param = request.url.split(\"?\");\n if (param.length > 1) {\n const newParams = param[1].split(\"&\").map((item) => {\n if (item.indexOf(\"api-version\") > -1) {\n return \"api-version=\" + apiVersion;\n } else {\n return item;\n }\n });\n request.url = param[0] + \"?\" + newParams.join(\"&\");\n }\n return next(request);\n },\n };\n this.pipeline.addPolicy(apiVersionPolicy);\n }\n\n phoneNumbers: PhoneNumbers;\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { FullOperationResponse } from \"@azure/core-client\";\nimport {\n PipelinePolicy,\n PipelineRequest,\n PipelineResponse,\n SendRequest,\n} from \"@azure/core-rest-pipeline\";\n\n/**\n * Creates a `PipelinePolicy` that converts relative URL values in the `nextLink` property to absolute URLs.\n *\n * This is necessary because the Core V2 library does not support paging with relative links at time of writing.\n *\n * @param host - The base URL of the resource.\n * @returns the `PipelinePolicy` that addresses the issue.\n */\nexport function createPhoneNumbersPagingPolicy(host: string): PipelinePolicy {\n return {\n name: \"phoneNumbersPagingPolicy\",\n async sendRequest(request: PipelineRequest, next: SendRequest): Promise<PipelineResponse> {\n const response: FullOperationResponse = await next(request);\n let nextLink: string = response?.parsedBody?.nextLink;\n\n if (nextLink && !nextLink.startsWith(host)) {\n nextLink = host.endsWith(\"/\") ? nextLink.substring(1) : nextLink;\n const absolutePath = `${host}${nextLink}`;\n response.parsedBody.nextLink = absolutePath;\n }\n\n return response;\n },\n };\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { createClientLogger } from \"@azure/logger\";\n\n/**\n * The \\@azure\\/logger configuration for this package.\n */\nexport const logger = createClientLogger(\"communication-phone-numbers\");\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n/// <reference lib=\"esnext.asynciterable\" />\n\nimport {\n createCommunicationAuthPolicy,\n isKeyCredential,\n parseClientArguments,\n} from \"@azure/communication-common\";\nimport { KeyCredential, TokenCredential, isTokenCredential } from \"@azure/core-auth\";\nimport { InternalPipelineOptions } from \"@azure/core-rest-pipeline\";\nimport { PollOperationState, PollerLike } from \"@azure/core-lro\";\nimport { PagedAsyncIterableIterator } from \"@azure/core-paging\";\nimport { PhoneNumbersClient as PhoneNumbersGeneratedClient } from \"./generated/src\";\nimport {\n PhoneNumberAreaCode,\n PhoneNumberCapabilitiesRequest,\n PhoneNumberCountry,\n PhoneNumberLocality,\n PhoneNumberOffering,\n PhoneNumberSearchResult,\n PurchasedPhoneNumber,\n} from \"./generated/src/models/\";\nimport {\n GetPurchasedPhoneNumberOptions,\n ListAvailableCountriesOptions,\n ListGeographicAreaCodesOptions,\n ListLocalitiesOptions,\n ListOfferingsOptions,\n ListPurchasedPhoneNumbersOptions,\n ListTollFreeAreaCodesOptions,\n PurchasePhoneNumbersResult,\n ReleasePhoneNumberResult,\n SearchAvailablePhoneNumbersRequest,\n} from \"./models\";\nimport {\n BeginPurchasePhoneNumbersOptions,\n BeginReleasePhoneNumberOptions,\n BeginSearchAvailablePhoneNumbersOptions,\n BeginUpdatePhoneNumberCapabilitiesOptions,\n} from \"./lroModels\";\nimport { createPhoneNumbersPagingPolicy } from \"./utils/customPipelinePolicies\";\nimport { CommonClientOptions } from \"@azure/core-client\";\nimport { logger } from \"./utils\";\nimport { tracingClient } from \"./generated/src/tracing\";\n\n/**\n * Client options used to configure the PhoneNumbersClient API requests.\n */\nexport interface PhoneNumbersClientOptions extends CommonClientOptions {\n /**\n * The accept language parameter to be used in the request header's \"accept-language\" property.\n */\n acceptLanguage?: string;\n}\n\nconst isPhoneNumbersClientOptions = (options: any): options is PhoneNumbersClientOptions =>\n options && !isKeyCredential(options) && !isTokenCredential(options);\n\n/**\n * Client class for interacting with Azure Communication Services Phone Number Administration.\n */\nexport class PhoneNumbersClient {\n /**\n * A reference to the auto-generated PhoneNumber HTTP client.\n */\n private readonly client: PhoneNumbersGeneratedClient;\n\n /**\n * The accept language parameter to be used in the request header's \"accept-language\" property.\n */\n private acceptLanguage: string | undefined;\n\n /**\n * Initializes a new instance of the PhoneNumberAdministrationClient class using a connection string.\n *\n * @param connectionString - Connection string to connect to an Azure Communication Service resource. (eg: endpoint=https://contoso.eastus.communications.azure.net/;accesskey=secret)\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n public constructor(connectionString: string, options?: PhoneNumbersClientOptions);\n\n /**\n * Initializes a new instance of the PhoneNumberAdministrationClient class using an Azure KeyCredential.\n *\n * @param url - The endpoint of the service (eg: https://contoso.eastus.communications.azure.net)\n * @param credential - An object that is used to authenticate requests to the service. Use the Azure KeyCredential or `@azure/identity` to create a credential.\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n public constructor(url: string, credential: KeyCredential, options?: PhoneNumbersClientOptions);\n\n /**\n * Initializes a new instance of the PhoneNumberAdministrationClient class using a TokenCredential.\n * @param url - The endpoint of the service (ex: https://contoso.eastus.communications.azure.net).\n * @param credential - TokenCredential that is used to authenticate requests to the service.\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n public constructor(url: string, credential: TokenCredential, options?: PhoneNumbersClientOptions);\n\n public constructor(\n connectionStringOrUrl: string,\n credentialOrOptions?: KeyCredential | TokenCredential | PhoneNumbersClientOptions,\n maybeOptions: PhoneNumbersClientOptions = {},\n ) {\n const { url, credential } = parseClientArguments(connectionStringOrUrl, credentialOrOptions);\n const options = isPhoneNumbersClientOptions(credentialOrOptions)\n ? credentialOrOptions\n : maybeOptions;\n\n const internalPipelineOptions: InternalPipelineOptions = {\n ...options,\n ...{\n loggingOptions: {\n logger: logger.info,\n },\n },\n };\n\n this.client = new PhoneNumbersGeneratedClient(url, {\n endpoint: url,\n ...internalPipelineOptions,\n });\n const authPolicy = createCommunicationAuthPolicy(credential);\n this.client.pipeline.addPolicy(authPolicy);\n\n // This policy is temporary workarounds to address compatibility issues with Azure Core V2.\n const phoneNumbersPagingPolicy = createPhoneNumbersPagingPolicy(url);\n this.client.pipeline.addPolicy(phoneNumbersPagingPolicy);\n this.acceptLanguage = maybeOptions.acceptLanguage;\n }\n\n /**\n * Gets the details of a purchased phone number. Includes phone number, cost, country code, etc.\n *\n * @param phoneNumber - The E.164 formatted phone number being fetched. The leading plus can be either + or encoded as %2B.\n * @param options - Additional request options.\n */\n public getPurchasedPhoneNumber(\n phoneNumber: string,\n options: GetPurchasedPhoneNumberOptions = {},\n ): Promise<PurchasedPhoneNumber> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient-getPurchasedPhoneNumber\",\n options,\n (updatedOptions) => {\n return this.client.phoneNumbers.getByNumber(phoneNumber, {\n ...updatedOptions,\n });\n },\n );\n }\n\n /**\n * Iterates the purchased phone numbers.\n *\n * Example usage:\n * ```ts\n * let client = new PhoneNumbersClient(credentials);\n * for await (const purchased of client.listPhoneNumbers()) {\n * console.log(\"phone number: \", purchased.phoneNumber);\n * }\n * ```\n * List all purchased phone numbers.\n * @param options - The optional parameters.\n */\n public listPurchasedPhoneNumbers(\n options: ListPurchasedPhoneNumbersOptions = {},\n ): PagedAsyncIterableIterator<PurchasedPhoneNumber> {\n const { span, updatedOptions } = tracingClient.startSpan(\n \"PhoneNumbersClient-listPurchasedPhoneNumbers\",\n options,\n );\n\n try {\n return this.client.phoneNumbers.listPhoneNumbers({\n ...updatedOptions,\n });\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e,\n });\n\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Starts the release of a purchased phone number.\n *\n * This function returns a Long Running Operation poller that allows you to wait indefinitely until the operation is complete.\n *\n * Example usage:\n * ```ts\n * const client = new PhoneNumbersClient(CONNECTION_STRING);\n * const releasePoller = await client.beginReleasePhoneNumber(\"+14125550100\");\n *\n * // Serializing the poller\n * const serialized = releasePoller.toString();\n *\n * // Waiting until it's done\n * const results = await releasePoller.pollUntilDone();\n * console.log(results);\n * ```\n * @param phoneNumber - The E.164 formatted phone number being released. The leading plus can be either + or encoded as %2B.\n * @param options - Additional request options.\n */\n public beginReleasePhoneNumber(\n phoneNumber: string,\n options: BeginReleasePhoneNumberOptions = {},\n ): Promise<PollerLike<PollOperationState<ReleasePhoneNumberResult>, ReleasePhoneNumberResult>> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient-beginReleasePhoneNumber\",\n options,\n (updatedOptions) => {\n return this.client.phoneNumbers.beginReleasePhoneNumber(phoneNumber, updatedOptions);\n },\n );\n }\n\n /**\n * Starts a search for phone numbers given some constraints such as name or area code.\n * The phone numbers that are found are reserved until you cancel, purchase or the reservation expires.\n *\n * This function returns a Long Running Operation poller that allows you to wait indefinitely until the operation is complete.\n *\n * Example usage:\n * ```ts\n * const client = new PhoneNumberAdministrationClient(CONNECTION_STRING);\n * const searchPoller = await client.beginSearchAvailablePhoneNumbers(SEARCH_REQUEST);\n *\n * // Serializing the poller\n * const serialized = searchPoller.toString();\n *\n * // Waiting until it's done\n * const results = await searchPoller.pollUntilDone();\n * console.log(results);\n * ```\n *\n * @param search - Request properties to constraint the search scope.\n * @param options - Additional request options.\n */\n public beginSearchAvailablePhoneNumbers(\n search: SearchAvailablePhoneNumbersRequest,\n options: BeginSearchAvailablePhoneNumbersOptions = {},\n ): Promise<PollerLike<PollOperationState<PhoneNumberSearchResult>, PhoneNumberSearchResult>> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient-beginSearchAvailablePhoneNumbers\",\n options,\n (updatedOptions) => {\n const { countryCode, phoneNumberType, assignmentType, capabilities, ...rest } = search;\n return this.client.phoneNumbers.beginSearchAvailablePhoneNumbers(\n countryCode,\n phoneNumberType,\n assignmentType,\n capabilities,\n {\n ...updatedOptions,\n ...rest,\n },\n );\n },\n );\n }\n\n /**\n * Starts the purchase of the phone number(s) in the search associated with a given id.\n *\n * This function returns a Long Running Operation poller that allows you to wait indefinitely until the operation is complete.\n *\n * Example usage:\n * ```ts\n * const client = new PhoneNumbersClient(CONNECTION_STRING);\n * const purchasePoller = await client.beginPurchasePhoneNumbers(SEARCH_ID);\n *\n * // Serializing the poller\n * const serialized = purchasePoller.toString();\n *\n * // Waiting until it's done\n * const results = await purchasePoller.pollUntilDone();\n * console.log(results);\n * ```\n *\n * @param searchId - The id of the search to purchase. Returned from `beginSearchAvailablePhoneNumbers`\n * @param consentToNotResellNumbers - The consent to not resell Phone Numbers.\n * @param options - Additional request options.\n */\n public beginPurchasePhoneNumbers(\n searchId: string,\n consentToNotResellNumbers: boolean = false,\n options: BeginPurchasePhoneNumbersOptions = {},\n ): Promise<\n PollerLike<PollOperationState<PurchasePhoneNumbersResult>, PurchasePhoneNumbersResult>\n > {\n return tracingClient.withSpan(\n \"PhoneNumbersClient-beginPurchasePhoneNumbers\",\n options,\n (updatedOptions) => {\n return this.client.phoneNumbers.beginPurchasePhoneNumbers({\n ...updatedOptions,\n searchId,\n consentToNotResellNumbers,\n });\n },\n );\n }\n\n /**\n * Starts the update of a purchased phone number's capabilities.\n *\n * This function returns a Long Running Operation poller that allows you to wait indefinitely until the operation is complete.\n *\n * Example usage:\n * ```ts\n * const client = new PhoneNumbersClient(CONNECTION_STRING);\n * const updatePoller = await client.beginUpdatePhoneNumberCapabilities(\"+14125550100\", UPDATE_REQUEST);\n *\n * // Serializing the poller\n * const serialized = updatePoller.toString();\n *\n * // Waiting until it's done\n * const results = await updatePoller.pollUntilDone();\n * console.log(results);\n * ```\n *\n * @param phoneNumber - The E.164 formatted phone number being updated. The leading plus can be either + or encoded as %2B.\n * @param request - The updated properties which will be applied to the phone number.\n * @param options - Additional request options.\n */\n public beginUpdatePhoneNumberCapabilities(\n phoneNumber: string,\n request: PhoneNumberCapabilitiesRequest,\n options: BeginUpdatePhoneNumberCapabilitiesOptions = {},\n ): Promise<PollerLike<PollOperationState<PurchasedPhoneNumber>, PurchasedPhoneNumber>> {\n if (!phoneNumber) {\n throw Error(\"phone number can't be empty\");\n }\n return tracingClient.withSpan(\n \"PhoneNumbersClient-beginUpdatePhoneNumberCapabilities\",\n options,\n (updatedOptions) => {\n return this.client.phoneNumbers.beginUpdateCapabilities(phoneNumber, {\n ...updatedOptions,\n ...request,\n });\n },\n );\n }\n\n /**\n * Iterates the available countries.\n *\n * Example usage:\n * ```ts\n * let client = new PhoneNumbersClient(credentials);\n * for await (const country of client.listAvailableCountries()) {\n * console.log(\"country: \", country.localizedName);\n * }\n * ```\n * List all available countries.\n * @param options - The optional parameters.\n */\n public listAvailableCountries(\n options: ListAvailableCountriesOptions = {},\n ): PagedAsyncIterableIterator<PhoneNumberCountry> {\n const { span, updatedOptions } = tracingClient.startSpan(\n \"PhoneNumbersClient-listAvailableCountries\",\n options,\n );\n\n try {\n return this.client.phoneNumbers.listAvailableCountries({\n ...updatedOptions,\n acceptLanguage: this.acceptLanguage,\n });\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e,\n });\n\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Iterates the available Toll-Free area codes.\n *\n * Example usage:\n * ```ts\n * let client = new PhoneNumbersClient(credentials);\n * for await (const areaCodeItem of client.listTollFreeAreaCodes()) {\n * console.log(\"area code: \", areaCodeItem.areaCode);\n * }\n * ```\n * List all available Toll-Free area codes.\n * @param countryCode - The ISO 3166-2 country code.\n * @param options - The optional parameters.\n */\n public listAvailableTollFreeAreaCodes(\n countryCode: string,\n options: ListTollFreeAreaCodesOptions = {},\n ): PagedAsyncIterableIterator<PhoneNumberAreaCode> {\n const { span, updatedOptions } = tracingClient.startSpan(\n \"PhoneNumbersClient-listAvailableTollFreeAreaCodes\",\n options,\n );\n\n try {\n return this.client.phoneNumbers.listAreaCodes(countryCode, \"tollFree\", {\n ...updatedOptions,\n assignmentType: \"application\",\n });\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e,\n });\n\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Iterates the available Geographic area codes.\n *\n * Example usage:\n * ```ts\n * let client = new PhoneNumbersClient(credentials);\n * for await (const areaCodeItem of client.listGeographicAreaCodes()) {\n * console.log(\"area code: \", areaCodeItem.areaCode);\n * }\n * ```\n * List all available Geographic area codes.\n * @param countryCode - The ISO 3166-2 country code.\n * @param options - The optional parameters.\n */\n public listAvailableGeographicAreaCodes(\n countryCode: string,\n options: ListGeographicAreaCodesOptions = {},\n ): PagedAsyncIterableIterator<PhoneNumberAreaCode> {\n const { span, updatedOptions } = tracingClient.startSpan(\n \"PhoneNumbersClient-listAvailableGeographicFreeAreaCodes\",\n options,\n );\n\n try {\n return this.client.phoneNumbers.listAreaCodes(countryCode, \"geographic\", {\n ...updatedOptions,\n });\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e,\n });\n\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Iterates the available localities.\n *\n * Example usage:\n * ```ts\n * let client = new PhoneNumbersClient(credentials);\n * for await (const locality of client.listAvailableLocalities()) {\n * console.log(\"locality: \", locality.localizedName);\n * }\n * ```\n * List all available localities.\n * @param countryCode - The ISO 3166-2 country code.\n * @param options - The optional parameters.\n */\n public listAvailableLocalities(\n countryCode: string,\n options: ListLocalitiesOptions = {},\n ): PagedAsyncIterableIterator<PhoneNumberLocality> {\n const { span, updatedOptions } = tracingClient.startSpan(\n \"PhoneNumbersClient-listAvailableLocalities\",\n options,\n );\n\n try {\n return this.client.phoneNumbers.listAvailableLocalities(countryCode, {\n ...updatedOptions,\n acceptLanguage: this.acceptLanguage,\n });\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e,\n });\n\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Iterates the available offerings.\n *\n * Example usage:\n * ```ts\n * let client = new PhoneNumbersClient(credentials);\n * for await (const offering of client.listAvailableOfferings()) {\n * console.log(\"phone number type: \", offering.phoneNumberType);\n * console.log(\"cost: \", offering.cost.amount);\n * }\n * ```\n * List all available offerings.\n * @param countryCode - The ISO 3166-2 country code.\n * @param options - The optional parameters.\n */\n public listAvailableOfferings(\n countryCode: string,\n options: ListOfferingsOptions = {},\n ): PagedAsyncIterableIterator<PhoneNumberOffering> {\n const { span, updatedOptions } = tracingClient.startSpan(\n \"PhoneNumbersClient-listOfferings\",\n options,\n );\n\n try {\n return this.client.phoneNumbers.listOfferings(countryCode, {\n ...updatedOptions,\n });\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e,\n });\n\n throw e;\n } finally {\n span.end();\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 * as coreClient from \"@azure/core-client\";\n\nexport const SipConfiguration: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SipConfiguration\",\n modelProperties: {\n trunks: {\n serializedName: \"trunks\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"Composite\", className: \"SipTrunk\" } }\n }\n },\n routes: {\n constraints: {\n MaxItems: 250\n },\n serializedName: \"routes\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SipTrunkRoute\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const SipTrunk: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SipTrunk\",\n modelProperties: {\n sipSignalingPort: {\n serializedName: \"sipSignalingPort\",\n required: true,\n type: {\n name: \"Number\"\n }\n }\n }\n }\n};\n\nexport const SipTrunkRoute: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SipTrunkRoute\",\n modelProperties: {\n description: {\n constraints: {\n MaxLength: 1024\n },\n serializedName: \"description\",\n type: {\n name: \"String\"\n }\n },\n name: {\n constraints: {\n MaxLength: 256\n },\n serializedName: \"name\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n numberPattern: {\n constraints: {\n MaxLength: 1024\n },\n serializedName: \"numberPattern\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n trunks: {\n constraints: {\n MaxItems: 250\n },\n serializedName: \"trunks\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const CommunicationErrorResponse: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"CommunicationErrorResponse\",\n modelProperties: {\n error: {\n serializedName: \"error\",\n type: {\n name: \"Composite\",\n className: \"SipRoutingError\"\n }\n }\n }\n }\n};\n\nexport const SipRoutingError: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SipRoutingError\",\n modelProperties: {\n code: {\n serializedName: \"code\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n message: {\n serializedName: \"message\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n target: {\n serializedName: \"target\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n details: {\n serializedName: \"details\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SipRoutingError\"\n }\n }\n }\n },\n innerError: {\n serializedName: \"innererror\",\n type: {\n name: \"Composite\",\n className: \"SipRoutingError\"\n }\n }\n }\n }\n};\n\nexport const SipConfigurationUpdate: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SipConfigurationUpdate\",\n modelProperties: {\n trunks: {\n serializedName: \"trunks\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"Composite\", className: \"TrunkUpdate\" } }\n }\n },\n routes: {\n constraints: {\n MaxItems: 250\n },\n serializedName: \"routes\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SipTrunkRoute\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const TrunkUpdate: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"TrunkUpdate\",\n modelProperties: {\n sipSignalingPort: {\n serializedName: \"sipSignalingPort\",\n type: {\n name: \"Number\"\n }\n }\n }\n }\n};\n\nexport const SipRoutingGetExceptionHeaders: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SipRoutingGetExceptionHeaders\",\n modelProperties: {\n xMsErrorCode: {\n serializedName: \"x-ms-error-code\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const SipRoutingUpdateExceptionHeaders: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SipRoutingUpdateExceptionHeaders\",\n modelProperties: {\n xMsErrorCode: {\n serializedName: \"x-ms-error-code\",\n type: {\n name: \"String\"\n }\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 {\n OperationParameter,\n OperationURLParameter,\n OperationQueryParameter\n} from \"@azure/core-client\";\nimport { SipConfigurationUpdate as SipConfigurationUpdateMapper } 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 endpoint: OperationURLParameter = {\n parameterPath: \"endpoint\",\n mapper: {\n serializedName: \"endpoint\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n skipEncoding: true\n};\n\nexport const apiVersion: OperationQueryParameter = {\n parameterPath: \"apiVersion\",\n mapper: {\n defaultValue: \"2023-03-01\",\n isConstant: true,\n serializedName: \"api-version\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const contentType: OperationParameter = {\n parameterPath: [\"options\", \"contentType\"],\n mapper: {\n defaultValue: \"application/merge-patch+json\",\n isConstant: true,\n serializedName: \"Content-Type\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const trunks: OperationParameter = {\n parameterPath: [\"options\", \"trunks\"],\n mapper: SipConfigurationUpdateMapper\n};\n\nexport const routes: OperationParameter = {\n parameterPath: [\"options\", \"routes\"],\n mapper: SipConfigurationUpdateMapper\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 { SipRouting } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { SipRoutingClientContext } from \"../sipRoutingClientContext\";\nimport {\n SipRoutingGetOptionalParams,\n SipRoutingGetResponse,\n SipRoutingUpdateOptionalParams,\n SipRoutingUpdateResponse\n} from \"../models\";\n\n/** Class containing SipRouting operations. */\nexport class SipRoutingImpl implements SipRouting {\n private readonly client: SipRoutingClientContext;\n\n /**\n * Initialize a new instance of the class SipRouting class.\n * @param client Reference to the service client\n */\n constructor(client: SipRoutingClientContext) {\n this.client = client;\n }\n\n /**\n * Gets SIP configuration for resource.\n * @param options The options parameters.\n */\n get(options?: SipRoutingGetOptionalParams): Promise<SipRoutingGetResponse> {\n return this.client.sendOperationRequest({ options }, getOperationSpec);\n }\n\n /**\n * Updates SIP configuration for resource.\n * @param options The options parameters.\n */\n update(\n options?: SipRoutingUpdateOptionalParams\n ): Promise<SipRoutingUpdateResponse> {\n return this.client.sendOperationRequest({ options }, updateOperationSpec);\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst getOperationSpec: coreClient.OperationSpec = {\n path: \"/sip\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SipConfiguration\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n headersMapper: Mappers.SipRoutingGetExceptionHeaders\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst updateOperationSpec: coreClient.OperationSpec = {\n path: \"/sip\",\n httpMethod: \"PATCH\",\n responses: {\n 200: {\n bodyMapper: Mappers.SipConfiguration\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n headersMapper: Mappers.SipRoutingUpdateExceptionHeaders\n }\n },\n requestBody: {\n parameterPath: {\n trunks: [\"options\", \"trunks\"],\n routes: [\"options\", \"routes\"]\n },\n mapper: Mappers.SipConfigurationUpdate\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint],\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 * as coreClient from \"@azure/core-client\";\nimport { SipRoutingClientOptionalParams } from \"./models\";\n\nexport class SipRoutingClientContext extends coreClient.ServiceClient {\n endpoint: string;\n apiVersion: string;\n\n /**\n * Initializes a new instance of the SipRoutingClientContext class.\n * @param endpoint The communication resource, for example https://resourcename.communication.azure.com\n * @param options The parameter options\n */\n constructor(endpoint: string, options?: SipRoutingClientOptionalParams) {\n if (endpoint === undefined) {\n throw new Error(\"'endpoint' cannot be null\");\n }\n\n // Initializing default values for options\n if (!options) {\n options = {};\n }\n const defaults: SipRoutingClientOptionalParams = {\n requestContentType: \"application/json; charset=utf-8\"\n };\n\n const packageDetails = `azsdk-js-communication-phone-numbers/1.3.0-beta.3`;\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 baseUri: options.endpoint || \"{endpoint}\"\n };\n super(optionsWithDefaults);\n // Parameter assignments\n this.endpoint = endpoint;\n\n // Assigning values to Constant parameters\n this.apiVersion = options.apiVersion || \"2023-03-01\";\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 { SipRoutingImpl } from \"./operations\";\nimport { SipRouting } from \"./operationsInterfaces\";\nimport { SipRoutingClientContext } from \"./sipRoutingClientContext\";\nimport { SipRoutingClientOptionalParams } from \"./models\";\n\nexport class SipRoutingClient extends SipRoutingClientContext {\n /**\n * Initializes a new instance of the SipRoutingClient class.\n * @param endpoint The communication resource, for example https://resourcename.communication.azure.com\n * @param options The parameter options\n */\n constructor(endpoint: string, options?: SipRoutingClientOptionalParams) {\n super(endpoint, options);\n this.sipRouting = new SipRoutingImpl(this);\n }\n\n sipRouting: SipRouting;\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { SipTrunk } from \"./models\";\nimport { TrunkUpdate as RestSipTrunk } from \"./generated/src/siprouting/models\";\n\n/**\n * @internal\n * Transforming SIP trunks REST model to SDK model\n */\nexport function transformFromRestModel(\n trunks: { [propertyName: string]: RestSipTrunk } | undefined,\n): SipTrunk[] {\n const result: SipTrunk[] = [];\n\n if (trunks) {\n Object.keys(trunks).forEach((fqdn: string) => {\n const port = trunks[fqdn].sipSignalingPort;\n result.push({ fqdn: fqdn, sipSignalingPort: port } as SipTrunk);\n });\n }\n\n return result;\n}\n\n/**\n * @internal\n * Transforming SIP trunks SDK model to REST model\n */\nexport function transformIntoRestModel(trunks: SipTrunk[]): {\n [propertyName: string]: RestSipTrunk;\n} {\n const result: { [propertyName: string]: RestSipTrunk } = {};\n\n trunks.forEach((trunk: SipTrunk) => {\n result[trunk.fqdn] = { sipSignalingPort: trunk.sipSignalingPort } as RestSipTrunk;\n });\n\n return result;\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport {\n createCommunicationAuthPolicy,\n isKeyCredential,\n parseClientArguments,\n} from \"@azure/communication-common\";\nimport { KeyCredential, TokenCredential, isTokenCredential } from \"@azure/core-auth\";\nimport { InternalPipelineOptions } from \"@azure/core-rest-pipeline\";\nimport { logger } from \"./utils\";\nimport { SipRoutingClient as SipRoutingGeneratedClient } from \"./generated/src/siprouting/sipRoutingClient\";\nimport { SipConfigurationUpdate, SipRoutingError } from \"./generated/src/siprouting/models\";\nimport { ListSipRoutesOptions, ListSipTrunksOptions, SipTrunk, SipTrunkRoute } from \"./models\";\nimport { transformFromRestModel, transformIntoRestModel } from \"./mappers\";\nimport { CommonClientOptions, OperationOptions } from \"@azure/core-client\";\nimport { tracingClient } from \"./generated/src/tracing\";\nimport { PagedAsyncIterableIterator } from \"@azure/core-paging\";\n\nexport * from \"./models\";\n\n/**\n * Client options used to configure the SipRoutingClient API requests.\n */\nexport interface SipRoutingClientOptions extends CommonClientOptions {}\n\n/**\n * Checks whether the type of a value is SipClientOptions or not.\n *\n * @param options - The value being checked.\n */\nconst isSipClientOptions = (options: any): options is SipRoutingClientOptions =>\n options && !isKeyCredential(options) && !isTokenCredential(options);\n\n/**\n * Client class for interacting with Azure Communication Services SIP Routing Administration.\n */\nexport class SipRoutingClient {\n /**\n * A reference to the auto-generated SipRouting HTTP client.\n */\n private readonly client: SipRoutingGeneratedClient;\n\n /**\n * Initializes a new instance of the SipRoutingClient class using a connection string.\n *\n * @param connectionString - Connection string to connect to an Azure Communication Service resource. (eg: endpoint=https://contoso.eastus.communications.azure.net/;accesskey=secret)\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n public constructor(connectionString: string, options?: SipRoutingClientOptions);\n\n /**\n * Initializes a new instance of the SipRoutingClient class using an Azure KeyCredential.\n *\n * @param endpoint - The endpoint of the service (eg: https://contoso.eastus.communications.azure.net).\n * @param credential - An object that is used to authenticate requests to the service. Use the Azure KeyCredential or `@azure/identity` to create a credential.\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n public constructor(\n endpoint: string,\n credential: KeyCredential,\n options?: SipRoutingClientOptions,\n );\n\n /**\n * Initializes a new instance of the SipRoutingClient class using a TokenCredential.\n * @param endpoint - The endpoint of the service (ex: https://contoso.eastus.communications.azure.net).\n * @param credential - TokenCredential that is used to authenticate requests to the service.\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n public constructor(\n endpoint: string,\n credential: TokenCredential,\n options?: SipRoutingClientOptions,\n );\n\n public constructor(\n connectionStringOrUrl: string,\n credentialOrOptions?: KeyCredential | TokenCredential | SipRoutingClientOptions,\n maybeOptions: SipRoutingClientOptions = {},\n ) {\n const { url, credential } = parseClientArguments(connectionStringOrUrl, credentialOrOptions);\n const options = isSipClientOptions(credentialOrOptions) ? credentialOrOptions : maybeOptions;\n\n const internalPipelineOptions: InternalPipelineOptions = {\n ...options,\n ...{\n loggingOptions: {\n logger: logger.info,\n },\n },\n };\n\n this.client = new SipRoutingGeneratedClient(url, {\n endpoint: url,\n ...internalPipelineOptions,\n });\n const authPolicy = createCommunicationAuthPolicy(credential);\n this.client.pipeline.addPolicy(authPolicy);\n }\n\n /**\n * Lists the SIP trunks.\n * @param options - The options parameters.\n */\n public listTrunks(options: ListSipTrunksOptions = {}): PagedAsyncIterableIterator<SipTrunk> {\n const { span, updatedOptions } = tracingClient.startSpan(\n \"SipRoutingClient-listTrunks\",\n options,\n );\n\n try {\n const iter = this.listTrunksPagingAll({ ...updatedOptions });\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listTrunksPagingPage({ ...updatedOptions });\n },\n };\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Gets the SIP trunk.\n * @param fqdn - The trunk's FQDN.\n * @param options - The options parameters.\n */\n public async getTrunk(fqdn: string, options: OperationOptions = {}): Promise<SipTrunk> {\n return tracingClient.withSpan(\"SipRoutingClient-getTrunk\", options, async (updatedOptions) => {\n const trunks = await this.getTrunksInternal(updatedOptions);\n const trunk = trunks.find((value: SipTrunk) => value.fqdn === fqdn);\n if (trunk) {\n return trunk;\n }\n throw { code: \"NotFound\", message: \"Not Found\" } as SipRoutingError;\n });\n }\n\n /**\n * Lists the SIP trunk routes.\n * @param options - The options parameters.\n */\n public listRoutes(options: ListSipRoutesOptions = {}): PagedAsyncIterableIterator<SipTrunkRoute> {\n const { span, updatedOptions } = tracingClient.startSpan(\n \"SipRoutingClient-listRoutes\",\n options,\n );\n\n try {\n const iter = this.listRoutesPagingAll({ ...updatedOptions });\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listRoutesPagingPage({ ...updatedOptions });\n },\n };\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Sets the SIP trunks.\n * @param trunks - The SIP trunks to be set.\n * @param options - The options parameters.\n */\n public async setTrunks(trunks: SipTrunk[], options: OperationOptions = {}): Promise<SipTrunk[]> {\n return tracingClient.withSpan(\"SipRoutingClient-setTrunks\", options, async (updatedOptions) => {\n const patch: SipConfigurationUpdate = { trunks: transformIntoRestModel(trunks) };\n let config = await this.client.sipRouting.get(updatedOptions);\n const storedFqdns = transformFromRestModel(config.trunks).map((trunk) => trunk.fqdn);\n const setFqdns = trunks.map((trunk) => trunk.fqdn);\n storedFqdns.forEach((storedFqdn) => {\n const shouldDeleteStoredTrunk = !setFqdns.find((value) => value === storedFqdn);\n if (shouldDeleteStoredTrunk) {\n patch.trunks![storedFqdn] = null;\n }\n });\n\n const isPatchNeeded = Object.keys(patch.trunks!).length > 0;\n if (isPatchNeeded) {\n const payload = {\n ...updatedOptions,\n ...patch,\n };\n config = await this.client.sipRouting.update(payload);\n }\n\n return transformFromRestModel(config.trunks);\n });\n }\n\n /**\n * Sets the SIP trunk.\n * @param trunk - The SIP trunk to be set.\n * @param options - The options parameters.\n */\n public async setTrunk(trunk: SipTrunk, options: OperationOptions = {}): Promise<SipTrunk> {\n return tracingClient.withSpan(\"SipRoutingClient-setTrunk\", options, async (updatedOptions) => {\n const patch: SipConfigurationUpdate = {\n trunks: transformIntoRestModel([trunk]),\n };\n const payload = {\n ...updatedOptions,\n ...patch,\n };\n const config = await this.client.sipRouting.update(payload);\n const storedTrunk = transformFromRestModel(config.trunks).find(\n (value: SipTrunk) => value.fqdn === trunk.fqdn,\n );\n if (storedTrunk) {\n return storedTrunk;\n }\n\n throw { code: \"NotFound\", message: \"Not Found\" } as SipRoutingError;\n });\n }\n\n /**\n * Sets the SIP trunk routes.\n * @param routes - The SIP trunk routes to be set.\n * @param options - The options parameters.\n */\n public async setRoutes(\n routes: SipTrunkRoute[],\n options: OperationOptions = {},\n ): Promise<SipTrunkRoute[]> {\n return tracingClient.withSpan(\"SipRoutingClient-setRoutes\", options, async (updatedOptions) => {\n const patch: SipConfigurationUpdate = {\n routes: routes,\n };\n const payload = {\n ...updatedOptions,\n ...patch,\n };\n const config = await this.client.sipRouting.update(payload);\n const storedRoutes = config.routes || (await this.getRoutesInternal(updatedOptions));\n return storedRoutes;\n });\n }\n\n /**\n * Deletes the SIP trunk.\n * @param fqdn - The trunk's FQDN.\n * @param options - The options parameters.\n */\n public async deleteTrunk(fqdn: string, options: OperationOptions = {}): Promise<void> {\n return tracingClient.withSpan(\n \"SipRoutingClient-deleteTrunk\",\n options,\n async (updatedOptions) => {\n const trunks: any = {};\n trunks[fqdn] = null;\n const patch: SipConfigurationUpdate = {\n trunks: trunks,\n };\n\n const payload = {\n ...updatedOptions,\n ...patch,\n };\n await this.client.sipRouting.update(payload);\n },\n );\n }\n\n private async getRoutesInternal(options: OperationOptions): Promise<SipTrunkRoute[]> {\n const config = await this.client.sipRouting.get(options);\n return config.routes || [];\n }\n\n private async getTrunksInternal(options: OperationOptions): Promise<SipTrunk[]> {\n const config = await this.client.sipRouting.get(options);\n return transformFromRestModel(config.trunks);\n }\n\n private async *listRoutesPagingAll(\n options?: ListSipRoutesOptions,\n ): AsyncIterableIterator<SipTrunkRoute> {\n for await (const page of this.listRoutesPagingPage(options)) {\n yield* page;\n }\n }\n\n private async *listTrunksPagingAll(\n options?: ListSipTrunksOptions,\n ): AsyncIterableIterator<SipTrunk> {\n for await (const page of this.listTrunksPagingPage(options)) {\n yield* page;\n }\n }\n\n private async *listTrunksPagingPage(\n options: ListSipTrunksOptions = {},\n ): AsyncIterableIterator<SipTrunk[]> {\n const apiResult = await this.getTrunksInternal(options as OperationOptions);\n yield apiResult;\n }\n\n private async *listRoutesPagingPage(\n options: ListSipRoutesOptions = {},\n ): AsyncIterableIterator<SipTrunkRoute[]> {\n const apiResult = await this.getRoutesInternal(options as OperationOptions);\n yield apiResult;\n }\n}\n"],"names":["createTracingClient","CommunicationErrorResponse","accept","endpoint","apiVersion","contentType","__rest","__await","__asyncValues","__asyncDelegator","LroEngine","serializer","coreClient","Mappers","Mappers.PhoneNumberAreaCodes","Mappers.CommunicationErrorResponse","Parameters.phoneNumberType","Parameters.skip","Parameters.maxPageSize","Parameters.assignmentType","Parameters.locality","Parameters.administrativeDivision","Parameters.apiVersion","Parameters.endpoint","Parameters.countryCode","Parameters.accept","Parameters.acceptLanguage","Mappers.PhoneNumberCountries","Mappers.PhoneNumberLocalities","Mappers.OfferingsResponse","Parameters.phoneNumberType1","Mappers.PhoneNumberSearchResult","Mappers.PhoneNumbersSearchAvailablePhoneNumbersHeaders","Mappers.PhoneNumberSearchRequest","Parameters.contentType","Parameters.searchId","Mappers.PhoneNumbersPurchasePhoneNumbersHeaders","Mappers.PhoneNumberPurchaseRequest","Mappers.PhoneNumberOperation","Mappers.PhoneNumbersGetOperationHeaders","Parameters.operationId","Mappers.PurchasedPhoneNumber","Mappers.PhoneNumbersUpdateCapabilitiesHeaders","Mappers.PhoneNumberCapabilitiesRequest","Parameters.phoneNumber","Parameters.contentType1","Mappers.PhoneNumbersReleasePhoneNumberHeaders","Mappers.PurchasedPhoneNumbers","Parameters.top","Mappers.OperatorInformationResult","Mappers.OperatorInformationRequest","Parameters.nextLink","createClientLogger","isKeyCredential","isTokenCredential","parseClientArguments","PhoneNumbersGeneratedClient","createCommunicationAuthPolicy","Mappers.SipConfiguration","Mappers.SipRoutingGetExceptionHeaders","Mappers.SipRoutingUpdateExceptionHeaders","Mappers.SipConfigurationUpdate","SipRoutingGeneratedClient"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../src/generated/src/pagingHelper.ts","../src/generated/src/tracing.ts","../src/generated/src/models/mappers.ts","../src/generated/src/models/parameters.ts","../src/generated/src/lroImpl.ts","../src/generated/src/operations/phoneNumbers.ts","../src/generated/src/phoneNumbersClient.ts","../src/utils/customPipelinePolicies.ts","../src/utils/logger.ts","../src/phoneNumbersClient.ts","../src/generated/src/siprouting/models/mappers.ts","../src/generated/src/siprouting/models/parameters.ts","../src/generated/src/siprouting/operations/sipRouting.ts","../src/generated/src/siprouting/sipRoutingClientContext.ts","../src/generated/src/siprouting/sipRoutingClient.ts","../src/mappers.ts","../src/sipRoutingClient.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 { createTracingClient } from \"@azure/core-tracing\";\n\nexport const tracingClient = createTracingClient({\n namespace: \"Microsoft.Communication\",\n packageName: \"@azure/communication-phone-numbers\",\n packageVersion: \"1.2.1\",\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 PhoneNumberAreaCodes: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberAreaCodes\",\n modelProperties: {\n areaCodes: {\n serializedName: \"areaCodes\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberAreaCode\",\n },\n },\n },\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumberAreaCode: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberAreaCode\",\n modelProperties: {\n areaCode: {\n serializedName: \"areaCode\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const CommunicationErrorResponse: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"CommunicationErrorResponse\",\n modelProperties: {\n error: {\n serializedName: \"error\",\n type: {\n name: \"Composite\",\n className: \"CommunicationError\",\n },\n },\n },\n },\n};\n\nexport const CommunicationError: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"CommunicationError\",\n modelProperties: {\n code: {\n serializedName: \"code\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n message: {\n serializedName: \"message\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n target: {\n serializedName: \"target\",\n readOnly: true,\n type: {\n name: \"String\",\n },\n },\n details: {\n serializedName: \"details\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"CommunicationError\",\n },\n },\n },\n },\n innerError: {\n serializedName: \"innererror\",\n type: {\n name: \"Composite\",\n className: \"CommunicationError\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumberCountries: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberCountries\",\n modelProperties: {\n countries: {\n serializedName: \"countries\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberCountry\",\n },\n },\n },\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumberCountry: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberCountry\",\n modelProperties: {\n localizedName: {\n serializedName: \"localizedName\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n countryCode: {\n serializedName: \"countryCode\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumberLocalities: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberLocalities\",\n modelProperties: {\n phoneNumberLocalities: {\n serializedName: \"phoneNumberLocalities\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberLocality\",\n },\n },\n },\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumberLocality: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberLocality\",\n modelProperties: {\n localizedName: {\n serializedName: \"localizedName\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n administrativeDivision: {\n serializedName: \"administrativeDivision\",\n type: {\n name: \"Composite\",\n className: \"PhoneNumberAdministrativeDivision\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumberAdministrativeDivision: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberAdministrativeDivision\",\n modelProperties: {\n localizedName: {\n serializedName: \"localizedName\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n abbreviatedName: {\n serializedName: \"abbreviatedName\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const OfferingsResponse: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"OfferingsResponse\",\n modelProperties: {\n phoneNumberOfferings: {\n serializedName: \"phoneNumberOfferings\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberOffering\",\n },\n },\n },\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumberOffering: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberOffering\",\n modelProperties: {\n phoneNumberType: {\n serializedName: \"phoneNumberType\",\n type: {\n name: \"String\",\n },\n },\n assignmentType: {\n serializedName: \"assignmentType\",\n type: {\n name: \"String\",\n },\n },\n availableCapabilities: {\n serializedName: \"availableCapabilities\",\n type: {\n name: \"Composite\",\n className: \"PhoneNumberCapabilities\",\n },\n },\n cost: {\n serializedName: \"cost\",\n type: {\n name: \"Composite\",\n className: \"PhoneNumberCost\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumberCapabilities: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberCapabilities\",\n modelProperties: {\n calling: {\n serializedName: \"calling\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n sms: {\n serializedName: \"sms\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumberCost: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberCost\",\n modelProperties: {\n amount: {\n serializedName: \"amount\",\n required: true,\n type: {\n name: \"Number\",\n },\n },\n currencyCode: {\n serializedName: \"currencyCode\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n billingFrequency: {\n defaultValue: \"monthly\",\n isConstant: true,\n serializedName: \"billingFrequency\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumberSearchRequest: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberSearchRequest\",\n modelProperties: {\n phoneNumberType: {\n serializedName: \"phoneNumberType\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n assignmentType: {\n serializedName: \"assignmentType\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n capabilities: {\n serializedName: \"capabilities\",\n type: {\n name: \"Composite\",\n className: \"PhoneNumberCapabilities\",\n },\n },\n areaCode: {\n serializedName: \"areaCode\",\n type: {\n name: \"String\",\n },\n },\n quantity: {\n defaultValue: 1,\n constraints: {\n InclusiveMaximum: 2147483647,\n InclusiveMinimum: 1,\n },\n serializedName: \"quantity\",\n type: {\n name: \"Number\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumberSearchResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberSearchResult\",\n modelProperties: {\n searchId: {\n serializedName: \"searchId\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n phoneNumbers: {\n serializedName: \"phoneNumbers\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n phoneNumberType: {\n serializedName: \"phoneNumberType\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n assignmentType: {\n serializedName: \"assignmentType\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n capabilities: {\n serializedName: \"capabilities\",\n type: {\n name: \"Composite\",\n className: \"PhoneNumberCapabilities\",\n },\n },\n cost: {\n serializedName: \"cost\",\n type: {\n name: \"Composite\",\n className: \"PhoneNumberCost\",\n },\n },\n searchExpiresBy: {\n serializedName: \"searchExpiresBy\",\n required: true,\n type: {\n name: \"DateTime\",\n },\n },\n errorCode: {\n serializedName: \"errorCode\",\n type: {\n name: \"Number\",\n },\n },\n error: {\n serializedName: \"error\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumberPurchaseRequest: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberPurchaseRequest\",\n modelProperties: {\n searchId: {\n serializedName: \"searchId\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumberOperation: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberOperation\",\n modelProperties: {\n operationType: {\n serializedName: \"operationType\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n status: {\n serializedName: \"status\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n resourceLocation: {\n serializedName: \"resourceLocation\",\n type: {\n name: \"String\",\n },\n },\n createdDateTime: {\n serializedName: \"createdDateTime\",\n required: true,\n type: {\n name: \"DateTime\",\n },\n },\n error: {\n serializedName: \"error\",\n type: {\n name: \"Composite\",\n className: \"CommunicationError\",\n },\n },\n id: {\n serializedName: \"id\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n lastActionDateTime: {\n serializedName: \"lastActionDateTime\",\n readOnly: true,\n type: {\n name: \"DateTime\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumberCapabilitiesRequest: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumberCapabilitiesRequest\",\n modelProperties: {\n calling: {\n serializedName: \"calling\",\n type: {\n name: \"String\",\n },\n },\n sms: {\n serializedName: \"sms\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const PurchasedPhoneNumber: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PurchasedPhoneNumber\",\n modelProperties: {\n id: {\n serializedName: \"id\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n phoneNumber: {\n serializedName: \"phoneNumber\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n countryCode: {\n serializedName: \"countryCode\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n phoneNumberType: {\n serializedName: \"phoneNumberType\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n capabilities: {\n serializedName: \"capabilities\",\n type: {\n name: \"Composite\",\n className: \"PhoneNumberCapabilities\",\n },\n },\n assignmentType: {\n serializedName: \"assignmentType\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n purchaseDate: {\n serializedName: \"purchaseDate\",\n required: true,\n type: {\n name: \"DateTime\",\n },\n },\n cost: {\n serializedName: \"cost\",\n type: {\n name: \"Composite\",\n className: \"PhoneNumberCost\",\n },\n },\n },\n },\n};\n\nexport const PurchasedPhoneNumbers: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PurchasedPhoneNumbers\",\n modelProperties: {\n phoneNumbers: {\n serializedName: \"phoneNumbers\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"PurchasedPhoneNumber\",\n },\n },\n },\n },\n nextLink: {\n serializedName: \"nextLink\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const OperatorInformationRequest: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"OperatorInformationRequest\",\n modelProperties: {\n phoneNumbers: {\n serializedName: \"phoneNumbers\",\n required: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\",\n },\n },\n },\n },\n options: {\n serializedName: \"options\",\n type: {\n name: \"Composite\",\n className: \"OperatorInformationOptions\",\n },\n },\n },\n },\n};\n\nexport const OperatorInformationOptions: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"OperatorInformationOptions\",\n modelProperties: {\n includeAdditionalOperatorDetails: {\n serializedName: \"includeAdditionalOperatorDetails\",\n type: {\n name: \"Boolean\",\n },\n },\n },\n },\n};\n\nexport const OperatorInformationResult: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"OperatorInformationResult\",\n modelProperties: {\n values: {\n serializedName: \"values\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"OperatorInformation\",\n },\n },\n },\n },\n },\n },\n};\n\nexport const OperatorInformation: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"OperatorInformation\",\n modelProperties: {\n phoneNumber: {\n serializedName: \"phoneNumber\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n nationalFormat: {\n serializedName: \"nationalFormat\",\n type: {\n name: \"String\",\n },\n },\n internationalFormat: {\n serializedName: \"internationalFormat\",\n type: {\n name: \"String\",\n },\n },\n isoCountryCode: {\n serializedName: \"isoCountryCode\",\n type: {\n name: \"String\",\n },\n },\n numberType: {\n serializedName: \"numberType\",\n type: {\n name: \"String\",\n },\n },\n operatorDetails: {\n serializedName: \"operatorDetails\",\n type: {\n name: \"Composite\",\n className: \"OperatorDetails\",\n },\n },\n },\n },\n};\n\nexport const OperatorDetails: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"OperatorDetails\",\n modelProperties: {\n name: {\n serializedName: \"name\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n mobileNetworkCode: {\n serializedName: \"mobileNetworkCode\",\n type: {\n name: \"String\",\n },\n },\n mobileCountryCode: {\n serializedName: \"mobileCountryCode\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumbersSearchAvailablePhoneNumbersHeaders: coreClient.CompositeMapper =\n {\n type: {\n name: \"Composite\",\n className: \"PhoneNumbersSearchAvailablePhoneNumbersHeaders\",\n modelProperties: {\n location: {\n serializedName: \"location\",\n type: {\n name: \"String\",\n },\n },\n operationLocation: {\n serializedName: \"operation-location\",\n type: {\n name: \"String\",\n },\n },\n operationId: {\n serializedName: \"operation-id\",\n type: {\n name: \"String\",\n },\n },\n searchId: {\n serializedName: \"search-id\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n };\n\nexport const PhoneNumbersPurchasePhoneNumbersHeaders: coreClient.CompositeMapper =\n {\n type: {\n name: \"Composite\",\n className: \"PhoneNumbersPurchasePhoneNumbersHeaders\",\n modelProperties: {\n operationLocation: {\n serializedName: \"operation-location\",\n type: {\n name: \"String\",\n },\n },\n operationId: {\n serializedName: \"operation-id\",\n type: {\n name: \"String\",\n },\n },\n purchaseId: {\n serializedName: \"purchase-id\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n };\n\nexport const PhoneNumbersGetOperationHeaders: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"PhoneNumbersGetOperationHeaders\",\n modelProperties: {\n location: {\n serializedName: \"location\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n};\n\nexport const PhoneNumbersUpdateCapabilitiesHeaders: coreClient.CompositeMapper =\n {\n type: {\n name: \"Composite\",\n className: \"PhoneNumbersUpdateCapabilitiesHeaders\",\n modelProperties: {\n location: {\n serializedName: \"location\",\n type: {\n name: \"String\",\n },\n },\n operationLocation: {\n serializedName: \"operation-location\",\n type: {\n name: \"String\",\n },\n },\n operationId: {\n serializedName: \"operation-id\",\n type: {\n name: \"String\",\n },\n },\n capabilitiesId: {\n serializedName: \"capabilities-id\",\n type: {\n name: \"String\",\n },\n },\n },\n },\n };\n\nexport const PhoneNumbersReleasePhoneNumberHeaders: coreClient.CompositeMapper =\n {\n type: {\n name: \"Composite\",\n className: \"PhoneNumbersReleasePhoneNumberHeaders\",\n modelProperties: {\n operationLocation: {\n serializedName: \"operation-location\",\n type: {\n name: \"String\",\n },\n },\n operationId: {\n serializedName: \"operation-id\",\n type: {\n name: \"String\",\n },\n },\n releaseId: {\n serializedName: \"release-id\",\n type: {\n name: \"String\",\n },\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 {\n OperationParameter,\n OperationURLParameter,\n OperationQueryParameter,\n} from \"@azure/core-client\";\nimport {\n PhoneNumberSearchRequest as PhoneNumberSearchRequestMapper,\n PhoneNumberPurchaseRequest as PhoneNumberPurchaseRequestMapper,\n PhoneNumberCapabilitiesRequest as PhoneNumberCapabilitiesRequestMapper,\n OperatorInformationRequest as OperatorInformationRequestMapper,\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 endpoint: OperationURLParameter = {\n parameterPath: \"endpoint\",\n mapper: {\n serializedName: \"endpoint\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n skipEncoding: true,\n};\n\nexport const countryCode: OperationURLParameter = {\n parameterPath: \"countryCode\",\n mapper: {\n serializedName: \"countryCode\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const phoneNumberType: OperationQueryParameter = {\n parameterPath: \"phoneNumberType\",\n mapper: {\n serializedName: \"phoneNumberType\",\n required: true,\n type: {\n name: \"Enum\",\n allowedValues: [\"geographic\", \"tollFree\"],\n },\n },\n};\n\nexport const skip: OperationQueryParameter = {\n parameterPath: [\"options\", \"skip\"],\n mapper: {\n defaultValue: 0,\n serializedName: \"skip\",\n type: {\n name: \"Number\",\n },\n },\n};\n\nexport const maxPageSize: OperationQueryParameter = {\n parameterPath: [\"options\", \"maxPageSize\"],\n mapper: {\n defaultValue: 100,\n serializedName: \"maxPageSize\",\n type: {\n name: \"Number\",\n },\n },\n};\n\nexport const assignmentType: OperationQueryParameter = {\n parameterPath: [\"options\", \"assignmentType\"],\n mapper: {\n serializedName: \"assignmentType\",\n type: {\n name: \"Enum\",\n allowedValues: [\"person\", \"application\"],\n },\n },\n};\n\nexport const locality: OperationQueryParameter = {\n parameterPath: [\"options\", \"locality\"],\n mapper: {\n serializedName: \"locality\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const administrativeDivision: OperationQueryParameter = {\n parameterPath: [\"options\", \"administrativeDivision\"],\n mapper: {\n serializedName: \"administrativeDivision\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const apiVersion: OperationQueryParameter = {\n parameterPath: \"apiVersion\",\n mapper: {\n defaultValue: \"2024-03-01-preview\",\n isConstant: true,\n serializedName: \"api-version\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const acceptLanguage: OperationParameter = {\n parameterPath: [\"options\", \"acceptLanguage\"],\n mapper: {\n serializedName: \"accept-language\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const phoneNumberType1: OperationQueryParameter = {\n parameterPath: [\"options\", \"phoneNumberType\"],\n mapper: {\n serializedName: \"phoneNumberType\",\n type: {\n name: \"Enum\",\n allowedValues: [\"geographic\", \"tollFree\"],\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 phoneNumberType2: OperationParameter = {\n parameterPath: \"phoneNumberType\",\n mapper: PhoneNumberSearchRequestMapper,\n};\n\nexport const assignmentType1: OperationParameter = {\n parameterPath: \"assignmentType\",\n mapper: PhoneNumberSearchRequestMapper,\n};\n\nexport const capabilities: OperationParameter = {\n parameterPath: \"capabilities\",\n mapper: PhoneNumberSearchRequestMapper,\n};\n\nexport const areaCode: OperationParameter = {\n parameterPath: [\"options\", \"areaCode\"],\n mapper: PhoneNumberSearchRequestMapper,\n};\n\nexport const quantity: OperationParameter = {\n parameterPath: [\"options\", \"quantity\"],\n mapper: PhoneNumberSearchRequestMapper,\n};\n\nexport const searchId: OperationURLParameter = {\n parameterPath: \"searchId\",\n mapper: {\n serializedName: \"searchId\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const searchId1: OperationParameter = {\n parameterPath: [\"options\", \"searchId\"],\n mapper: PhoneNumberPurchaseRequestMapper,\n};\n\nexport const operationId: OperationURLParameter = {\n parameterPath: \"operationId\",\n mapper: {\n serializedName: \"operationId\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const contentType1: OperationParameter = {\n parameterPath: [\"options\", \"contentType\"],\n mapper: {\n defaultValue: \"application/merge-patch+json\",\n isConstant: true,\n serializedName: \"Content-Type\",\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const calling: OperationParameter = {\n parameterPath: [\"options\", \"calling\"],\n mapper: PhoneNumberCapabilitiesRequestMapper,\n};\n\nexport const sms: OperationParameter = {\n parameterPath: [\"options\", \"sms\"],\n mapper: PhoneNumberCapabilitiesRequestMapper,\n};\n\nexport const phoneNumber: OperationURLParameter = {\n parameterPath: \"phoneNumber\",\n mapper: {\n serializedName: \"phoneNumber\",\n required: true,\n type: {\n name: \"String\",\n },\n },\n};\n\nexport const top: OperationQueryParameter = {\n parameterPath: [\"options\", \"top\"],\n mapper: {\n defaultValue: 100,\n serializedName: \"top\",\n type: {\n name: \"Number\",\n },\n },\n};\n\nexport const phoneNumbers: OperationParameter = {\n parameterPath: \"phoneNumbers\",\n mapper: OperatorInformationRequestMapper,\n};\n\nexport const options: OperationParameter = {\n parameterPath: [\"options\", \"options\"],\n mapper: OperatorInformationRequestMapper,\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","/*\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 { tracingClient } from \"../tracing\";\nimport { PagedAsyncIterableIterator, PageSettings } from \"@azure/core-paging\";\nimport { setContinuationToken } from \"../pagingHelper\";\nimport { PhoneNumbers } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { PhoneNumbersClient } from \"../phoneNumbersClient\";\nimport { PollerLike, PollOperationState, LroEngine } from \"@azure/core-lro\";\nimport { createLroSpec } from \"../lroImpl\";\nimport {\n PhoneNumberAreaCode,\n PhoneNumbersListAreaCodesNextOptionalParams,\n PhoneNumberType,\n PhoneNumbersListAreaCodesOptionalParams,\n PhoneNumbersListAreaCodesResponse,\n PhoneNumberCountry,\n PhoneNumbersListAvailableCountriesNextOptionalParams,\n PhoneNumbersListAvailableCountriesOptionalParams,\n PhoneNumbersListAvailableCountriesResponse,\n PhoneNumberLocality,\n PhoneNumbersListAvailableLocalitiesNextOptionalParams,\n PhoneNumbersListAvailableLocalitiesOptionalParams,\n PhoneNumbersListAvailableLocalitiesResponse,\n PhoneNumberOffering,\n PhoneNumbersListOfferingsNextOptionalParams,\n PhoneNumbersListOfferingsOptionalParams,\n PhoneNumbersListOfferingsResponse,\n PurchasedPhoneNumber,\n PhoneNumbersListPhoneNumbersNextOptionalParams,\n PhoneNumbersListPhoneNumbersOptionalParams,\n PhoneNumbersListPhoneNumbersResponse,\n PhoneNumberAssignmentType,\n PhoneNumberCapabilities,\n PhoneNumbersSearchAvailablePhoneNumbersOptionalParams,\n PhoneNumbersSearchAvailablePhoneNumbersResponse,\n PhoneNumbersGetSearchResultOptionalParams,\n PhoneNumbersGetSearchResultResponse,\n PhoneNumbersPurchasePhoneNumbersOptionalParams,\n PhoneNumbersPurchasePhoneNumbersResponse,\n PhoneNumbersGetOperationOptionalParams,\n PhoneNumbersGetOperationResponse,\n PhoneNumbersCancelOperationOptionalParams,\n PhoneNumbersUpdateCapabilitiesOptionalParams,\n PhoneNumbersUpdateCapabilitiesResponse,\n PhoneNumbersGetByNumberOptionalParams,\n PhoneNumbersGetByNumberResponse,\n PhoneNumbersReleasePhoneNumberOptionalParams,\n PhoneNumbersReleasePhoneNumberResponse,\n PhoneNumbersOperatorInformationSearchOptionalParams,\n PhoneNumbersOperatorInformationSearchResponse,\n PhoneNumbersListAreaCodesNextResponse,\n PhoneNumbersListAvailableCountriesNextResponse,\n PhoneNumbersListAvailableLocalitiesNextResponse,\n PhoneNumbersListOfferingsNextResponse,\n PhoneNumbersListPhoneNumbersNextResponse,\n} from \"../models\";\n\n/// <reference lib=\"esnext.asynciterable\" />\n/** Class containing PhoneNumbers operations. */\nexport class PhoneNumbersImpl implements PhoneNumbers {\n private readonly client: PhoneNumbersClient;\n\n /**\n * Initialize a new instance of the class PhoneNumbers class.\n * @param client Reference to the service client\n */\n constructor(client: PhoneNumbersClient) {\n this.client = client;\n }\n\n /**\n * Gets the list of available area codes.\n * @param countryCode The ISO 3166-2 country code, e.g. US.\n * @param phoneNumberType Filter by numberType, e.g. Geographic, TollFree.\n * @param options The options parameters.\n */\n public listAreaCodes(\n countryCode: string,\n phoneNumberType: PhoneNumberType,\n options?: PhoneNumbersListAreaCodesOptionalParams,\n ): PagedAsyncIterableIterator<PhoneNumberAreaCode> {\n const iter = this.listAreaCodesPagingAll(\n countryCode,\n phoneNumberType,\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.listAreaCodesPagingPage(\n countryCode,\n phoneNumberType,\n options,\n settings,\n );\n },\n };\n }\n\n private async *listAreaCodesPagingPage(\n countryCode: string,\n phoneNumberType: PhoneNumberType,\n options?: PhoneNumbersListAreaCodesOptionalParams,\n settings?: PageSettings,\n ): AsyncIterableIterator<PhoneNumberAreaCode[]> {\n let result: PhoneNumbersListAreaCodesResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listAreaCodes(countryCode, phoneNumberType, options);\n let page = result.areaCodes || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listAreaCodesNext(\n countryCode,\n continuationToken,\n options,\n );\n continuationToken = result.nextLink;\n let page = result.areaCodes || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listAreaCodesPagingAll(\n countryCode: string,\n phoneNumberType: PhoneNumberType,\n options?: PhoneNumbersListAreaCodesOptionalParams,\n ): AsyncIterableIterator<PhoneNumberAreaCode> {\n for await (const page of this.listAreaCodesPagingPage(\n countryCode,\n phoneNumberType,\n options,\n )) {\n yield* page;\n }\n }\n\n /**\n * Gets the list of supported countries.\n * @param options The options parameters.\n */\n public listAvailableCountries(\n options?: PhoneNumbersListAvailableCountriesOptionalParams,\n ): PagedAsyncIterableIterator<PhoneNumberCountry> {\n const iter = this.listAvailableCountriesPagingAll(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.listAvailableCountriesPagingPage(options, settings);\n },\n };\n }\n\n private async *listAvailableCountriesPagingPage(\n options?: PhoneNumbersListAvailableCountriesOptionalParams,\n settings?: PageSettings,\n ): AsyncIterableIterator<PhoneNumberCountry[]> {\n let result: PhoneNumbersListAvailableCountriesResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listAvailableCountries(options);\n let page = result.countries || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listAvailableCountriesNext(\n continuationToken,\n options,\n );\n continuationToken = result.nextLink;\n let page = result.countries || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listAvailableCountriesPagingAll(\n options?: PhoneNumbersListAvailableCountriesOptionalParams,\n ): AsyncIterableIterator<PhoneNumberCountry> {\n for await (const page of this.listAvailableCountriesPagingPage(options)) {\n yield* page;\n }\n }\n\n /**\n * Gets the list of cities or towns with available phone numbers.\n * @param countryCode The ISO 3166-2 country code, e.g. US.\n * @param options The options parameters.\n */\n public listAvailableLocalities(\n countryCode: string,\n options?: PhoneNumbersListAvailableLocalitiesOptionalParams,\n ): PagedAsyncIterableIterator<PhoneNumberLocality> {\n const iter = this.listAvailableLocalitiesPagingAll(countryCode, 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.listAvailableLocalitiesPagingPage(\n countryCode,\n options,\n settings,\n );\n },\n };\n }\n\n private async *listAvailableLocalitiesPagingPage(\n countryCode: string,\n options?: PhoneNumbersListAvailableLocalitiesOptionalParams,\n settings?: PageSettings,\n ): AsyncIterableIterator<PhoneNumberLocality[]> {\n let result: PhoneNumbersListAvailableLocalitiesResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listAvailableLocalities(countryCode, options);\n let page = result.phoneNumberLocalities || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listAvailableLocalitiesNext(\n countryCode,\n continuationToken,\n options,\n );\n continuationToken = result.nextLink;\n let page = result.phoneNumberLocalities || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listAvailableLocalitiesPagingAll(\n countryCode: string,\n options?: PhoneNumbersListAvailableLocalitiesOptionalParams,\n ): AsyncIterableIterator<PhoneNumberLocality> {\n for await (const page of this.listAvailableLocalitiesPagingPage(\n countryCode,\n options,\n )) {\n yield* page;\n }\n }\n\n /**\n * List available offerings of capabilities with rates for the given country.\n * @param countryCode The ISO 3166-2 country code, e.g. US.\n * @param options The options parameters.\n */\n public listOfferings(\n countryCode: string,\n options?: PhoneNumbersListOfferingsOptionalParams,\n ): PagedAsyncIterableIterator<PhoneNumberOffering> {\n const iter = this.listOfferingsPagingAll(countryCode, 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.listOfferingsPagingPage(countryCode, options, settings);\n },\n };\n }\n\n private async *listOfferingsPagingPage(\n countryCode: string,\n options?: PhoneNumbersListOfferingsOptionalParams,\n settings?: PageSettings,\n ): AsyncIterableIterator<PhoneNumberOffering[]> {\n let result: PhoneNumbersListOfferingsResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listOfferings(countryCode, options);\n let page = result.phoneNumberOfferings || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listOfferingsNext(\n countryCode,\n continuationToken,\n options,\n );\n continuationToken = result.nextLink;\n let page = result.phoneNumberOfferings || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listOfferingsPagingAll(\n countryCode: string,\n options?: PhoneNumbersListOfferingsOptionalParams,\n ): AsyncIterableIterator<PhoneNumberOffering> {\n for await (const page of this.listOfferingsPagingPage(\n countryCode,\n options,\n )) {\n yield* page;\n }\n }\n\n /**\n * Gets the list of all purchased phone numbers.\n * @param options The options parameters.\n */\n public listPhoneNumbers(\n options?: PhoneNumbersListPhoneNumbersOptionalParams,\n ): PagedAsyncIterableIterator<PurchasedPhoneNumber> {\n const iter = this.listPhoneNumbersPagingAll(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.listPhoneNumbersPagingPage(options, settings);\n },\n };\n }\n\n private async *listPhoneNumbersPagingPage(\n options?: PhoneNumbersListPhoneNumbersOptionalParams,\n settings?: PageSettings,\n ): AsyncIterableIterator<PurchasedPhoneNumber[]> {\n let result: PhoneNumbersListPhoneNumbersResponse;\n let continuationToken = settings?.continuationToken;\n if (!continuationToken) {\n result = await this._listPhoneNumbers(options);\n let page = result.phoneNumbers || [];\n continuationToken = result.nextLink;\n setContinuationToken(page, continuationToken);\n yield page;\n }\n while (continuationToken) {\n result = await this._listPhoneNumbersNext(continuationToken, options);\n continuationToken = result.nextLink;\n let page = result.phoneNumbers || [];\n setContinuationToken(page, continuationToken);\n yield page;\n }\n }\n\n private async *listPhoneNumbersPagingAll(\n options?: PhoneNumbersListPhoneNumbersOptionalParams,\n ): AsyncIterableIterator<PurchasedPhoneNumber> {\n for await (const page of this.listPhoneNumbersPagingPage(options)) {\n yield* page;\n }\n }\n\n /**\n * Gets the list of available area codes.\n * @param countryCode The ISO 3166-2 country code, e.g. US.\n * @param phoneNumberType Filter by numberType, e.g. Geographic, TollFree.\n * @param options The options parameters.\n */\n private async _listAreaCodes(\n countryCode: string,\n phoneNumberType: PhoneNumberType,\n options?: PhoneNumbersListAreaCodesOptionalParams,\n ): Promise<PhoneNumbersListAreaCodesResponse> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient._listAreaCodes\",\n options ?? {},\n async (options) => {\n return this.client.sendOperationRequest(\n { countryCode, phoneNumberType, options },\n listAreaCodesOperationSpec,\n ) as Promise<PhoneNumbersListAreaCodesResponse>;\n },\n );\n }\n\n /**\n * Gets the list of supported countries.\n * @param options The options parameters.\n */\n private async _listAvailableCountries(\n options?: PhoneNumbersListAvailableCountriesOptionalParams,\n ): Promise<PhoneNumbersListAvailableCountriesResponse> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient._listAvailableCountries\",\n options ?? {},\n async (options) => {\n return this.client.sendOperationRequest(\n { options },\n listAvailableCountriesOperationSpec,\n ) as Promise<PhoneNumbersListAvailableCountriesResponse>;\n },\n );\n }\n\n /**\n * Gets the list of cities or towns with available phone numbers.\n * @param countryCode The ISO 3166-2 country code, e.g. US.\n * @param options The options parameters.\n */\n private async _listAvailableLocalities(\n countryCode: string,\n options?: PhoneNumbersListAvailableLocalitiesOptionalParams,\n ): Promise<PhoneNumbersListAvailableLocalitiesResponse> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient._listAvailableLocalities\",\n options ?? {},\n async (options) => {\n return this.client.sendOperationRequest(\n { countryCode, options },\n listAvailableLocalitiesOperationSpec,\n ) as Promise<PhoneNumbersListAvailableLocalitiesResponse>;\n },\n );\n }\n\n /**\n * List available offerings of capabilities with rates for the given country.\n * @param countryCode The ISO 3166-2 country code, e.g. US.\n * @param options The options parameters.\n */\n private async _listOfferings(\n countryCode: string,\n options?: PhoneNumbersListOfferingsOptionalParams,\n ): Promise<PhoneNumbersListOfferingsResponse> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient._listOfferings\",\n options ?? {},\n async (options) => {\n return this.client.sendOperationRequest(\n { countryCode, options },\n listOfferingsOperationSpec,\n ) as Promise<PhoneNumbersListOfferingsResponse>;\n },\n );\n }\n\n /**\n * Search for available phone numbers to purchase.\n * @param countryCode The ISO 3166-2 country code, e.g. US.\n * @param phoneNumberType The type of phone numbers to search for, e.g. geographic, or tollFree.\n * @param assignmentType The assignment type of the phone numbers to search for. A phone number can be\n * assigned to a person, or to an application.\n * @param capabilities Capabilities of a phone number.\n * @param options The options parameters.\n */\n async beginSearchAvailablePhoneNumbers(\n countryCode: string,\n phoneNumberType: PhoneNumberType,\n assignmentType: PhoneNumberAssignmentType,\n capabilities: PhoneNumberCapabilities,\n options?: PhoneNumbersSearchAvailablePhoneNumbersOptionalParams,\n ): Promise<\n PollerLike<\n PollOperationState<PhoneNumbersSearchAvailablePhoneNumbersResponse>,\n PhoneNumbersSearchAvailablePhoneNumbersResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<PhoneNumbersSearchAvailablePhoneNumbersResponse> => {\n return tracingClient.withSpan(\n \"PhoneNumbersClient.beginSearchAvailablePhoneNumbers\",\n options ?? {},\n async () => {\n return this.client.sendOperationRequest(\n args,\n spec,\n ) as Promise<PhoneNumbersSearchAvailablePhoneNumbersResponse>;\n },\n );\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ) => {\n let currentRawResponse: coreClient.FullOperationResponse | undefined =\n 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 countryCode,\n phoneNumberType,\n assignmentType,\n capabilities,\n options,\n },\n spec: searchAvailablePhoneNumbersOperationSpec,\n });\n const poller = new LroEngine(lro, {\n resumeFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n lroResourceLocationConfig: \"location\",\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Search for available phone numbers to purchase.\n * @param countryCode The ISO 3166-2 country code, e.g. US.\n * @param phoneNumberType The type of phone numbers to search for, e.g. geographic, or tollFree.\n * @param assignmentType The assignment type of the phone numbers to search for. A phone number can be\n * assigned to a person, or to an application.\n * @param capabilities Capabilities of a phone number.\n * @param options The options parameters.\n */\n async beginSearchAvailablePhoneNumbersAndWait(\n countryCode: string,\n phoneNumberType: PhoneNumberType,\n assignmentType: PhoneNumberAssignmentType,\n capabilities: PhoneNumberCapabilities,\n options?: PhoneNumbersSearchAvailablePhoneNumbersOptionalParams,\n ): Promise<PhoneNumbersSearchAvailablePhoneNumbersResponse> {\n const poller = await this.beginSearchAvailablePhoneNumbers(\n countryCode,\n phoneNumberType,\n assignmentType,\n capabilities,\n options,\n );\n return poller.pollUntilDone();\n }\n\n /**\n * Gets a phone number search result by search id.\n * @param searchId The search Id.\n * @param options The options parameters.\n */\n async getSearchResult(\n searchId: string,\n options?: PhoneNumbersGetSearchResultOptionalParams,\n ): Promise<PhoneNumbersGetSearchResultResponse> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient.getSearchResult\",\n options ?? {},\n async (options) => {\n return this.client.sendOperationRequest(\n { searchId, options },\n getSearchResultOperationSpec,\n ) as Promise<PhoneNumbersGetSearchResultResponse>;\n },\n );\n }\n\n /**\n * Purchases phone numbers.\n * @param options The options parameters.\n */\n async beginPurchasePhoneNumbers(\n options?: PhoneNumbersPurchasePhoneNumbersOptionalParams,\n ): Promise<\n PollerLike<\n PollOperationState<PhoneNumbersPurchasePhoneNumbersResponse>,\n PhoneNumbersPurchasePhoneNumbersResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<PhoneNumbersPurchasePhoneNumbersResponse> => {\n return tracingClient.withSpan(\n \"PhoneNumbersClient.beginPurchasePhoneNumbers\",\n options ?? {},\n async () => {\n return this.client.sendOperationRequest(\n args,\n spec,\n ) as Promise<PhoneNumbersPurchasePhoneNumbersResponse>;\n },\n );\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ) => {\n let currentRawResponse: coreClient.FullOperationResponse | undefined =\n 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: { options },\n spec: purchasePhoneNumbersOperationSpec,\n });\n const poller = new LroEngine(lro, {\n resumeFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Purchases phone numbers.\n * @param options The options parameters.\n */\n async beginPurchasePhoneNumbersAndWait(\n options?: PhoneNumbersPurchasePhoneNumbersOptionalParams,\n ): Promise<PhoneNumbersPurchasePhoneNumbersResponse> {\n const poller = await this.beginPurchasePhoneNumbers(options);\n return poller.pollUntilDone();\n }\n\n /**\n * Gets an operation by its id.\n * @param operationId The id of the operation\n * @param options The options parameters.\n */\n async getOperation(\n operationId: string,\n options?: PhoneNumbersGetOperationOptionalParams,\n ): Promise<PhoneNumbersGetOperationResponse> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient.getOperation\",\n options ?? {},\n async (options) => {\n return this.client.sendOperationRequest(\n { operationId, options },\n getOperationOperationSpec,\n ) as Promise<PhoneNumbersGetOperationResponse>;\n },\n );\n }\n\n /**\n * Cancels an operation by its id.\n * @param operationId The id of the operation\n * @param options The options parameters.\n */\n async cancelOperation(\n operationId: string,\n options?: PhoneNumbersCancelOperationOptionalParams,\n ): Promise<void> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient.cancelOperation\",\n options ?? {},\n async (options) => {\n return this.client.sendOperationRequest(\n { operationId, options },\n cancelOperationOperationSpec,\n ) as Promise<void>;\n },\n );\n }\n\n /**\n * Updates the capabilities of a phone number.\n * @param phoneNumber The phone number id in E.164 format. The leading plus can be either + or encoded\n * as %2B, e.g. +11234567890.\n * @param options The options parameters.\n */\n async beginUpdateCapabilities(\n phoneNumber: string,\n options?: PhoneNumbersUpdateCapabilitiesOptionalParams,\n ): Promise<\n PollerLike<\n PollOperationState<PhoneNumbersUpdateCapabilitiesResponse>,\n PhoneNumbersUpdateCapabilitiesResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<PhoneNumbersUpdateCapabilitiesResponse> => {\n return tracingClient.withSpan(\n \"PhoneNumbersClient.beginUpdateCapabilities\",\n options ?? {},\n async () => {\n return this.client.sendOperationRequest(\n args,\n spec,\n ) as Promise<PhoneNumbersUpdateCapabilitiesResponse>;\n },\n );\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ) => {\n let currentRawResponse: coreClient.FullOperationResponse | undefined =\n 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: { phoneNumber, options },\n spec: updateCapabilitiesOperationSpec,\n });\n const poller = new LroEngine(lro, {\n resumeFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n lroResourceLocationConfig: \"location\",\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Updates the capabilities of a phone number.\n * @param phoneNumber The phone number id in E.164 format. The leading plus can be either + or encoded\n * as %2B, e.g. +11234567890.\n * @param options The options parameters.\n */\n async beginUpdateCapabilitiesAndWait(\n phoneNumber: string,\n options?: PhoneNumbersUpdateCapabilitiesOptionalParams,\n ): Promise<PhoneNumbersUpdateCapabilitiesResponse> {\n const poller = await this.beginUpdateCapabilities(phoneNumber, options);\n return poller.pollUntilDone();\n }\n\n /**\n * Gets the details of the given purchased phone number.\n * @param phoneNumber The purchased phone number whose details are to be fetched in E.164 format, e.g.\n * +11234567890.\n * @param options The options parameters.\n */\n async getByNumber(\n phoneNumber: string,\n options?: PhoneNumbersGetByNumberOptionalParams,\n ): Promise<PhoneNumbersGetByNumberResponse> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient.getByNumber\",\n options ?? {},\n async (options) => {\n return this.client.sendOperationRequest(\n { phoneNumber, options },\n getByNumberOperationSpec,\n ) as Promise<PhoneNumbersGetByNumberResponse>;\n },\n );\n }\n\n /**\n * Releases a purchased phone number.\n * @param phoneNumber Phone number to be released, e.g. +11234567890.\n * @param options The options parameters.\n */\n async beginReleasePhoneNumber(\n phoneNumber: string,\n options?: PhoneNumbersReleasePhoneNumberOptionalParams,\n ): Promise<\n PollerLike<\n PollOperationState<PhoneNumbersReleasePhoneNumberResponse>,\n PhoneNumbersReleasePhoneNumberResponse\n >\n > {\n const directSendOperation = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ): Promise<PhoneNumbersReleasePhoneNumberResponse> => {\n return tracingClient.withSpan(\n \"PhoneNumbersClient.beginReleasePhoneNumber\",\n options ?? {},\n async () => {\n return this.client.sendOperationRequest(\n args,\n spec,\n ) as Promise<PhoneNumbersReleasePhoneNumberResponse>;\n },\n );\n };\n const sendOperationFn = async (\n args: coreClient.OperationArguments,\n spec: coreClient.OperationSpec,\n ) => {\n let currentRawResponse: coreClient.FullOperationResponse | undefined =\n 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: { phoneNumber, options },\n spec: releasePhoneNumberOperationSpec,\n });\n const poller = new LroEngine(lro, {\n resumeFrom: options?.resumeFrom,\n intervalInMs: options?.updateIntervalInMs,\n });\n await poller.poll();\n return poller;\n }\n\n /**\n * Releases a purchased phone number.\n * @param phoneNumber Phone number to be released, e.g. +11234567890.\n * @param options The options parameters.\n */\n async beginReleasePhoneNumberAndWait(\n phoneNumber: string,\n options?: PhoneNumbersReleasePhoneNumberOptionalParams,\n ): Promise<PhoneNumbersReleasePhoneNumberResponse> {\n const poller = await this.beginReleasePhoneNumber(phoneNumber, options);\n return poller.pollUntilDone();\n }\n\n /**\n * Gets the list of all purchased phone numbers.\n * @param options The options parameters.\n */\n private async _listPhoneNumbers(\n options?: PhoneNumbersListPhoneNumbersOptionalParams,\n ): Promise<PhoneNumbersListPhoneNumbersResponse> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient._listPhoneNumbers\",\n options ?? {},\n async (options) => {\n return this.client.sendOperationRequest(\n { options },\n listPhoneNumbersOperationSpec,\n ) as Promise<PhoneNumbersListPhoneNumbersResponse>;\n },\n );\n }\n\n /**\n * Searches for number format and operator information for a given list of phone numbers.\n * @param phoneNumbers Phone number(s) whose operator information is being requested\n * @param options The options parameters.\n */\n async operatorInformationSearch(\n phoneNumbers: string[],\n options?: PhoneNumbersOperatorInformationSearchOptionalParams,\n ): Promise<PhoneNumbersOperatorInformationSearchResponse> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient.operatorInformationSearch\",\n options ?? {},\n async (options) => {\n return this.client.sendOperationRequest(\n { phoneNumbers, options },\n operatorInformationSearchOperationSpec,\n ) as Promise<PhoneNumbersOperatorInformationSearchResponse>;\n },\n );\n }\n\n /**\n * ListAreaCodesNext\n * @param countryCode The ISO 3166-2 country code, e.g. US.\n * @param nextLink The nextLink from the previous successful call to the ListAreaCodes method.\n * @param options The options parameters.\n */\n private async _listAreaCodesNext(\n countryCode: string,\n nextLink: string,\n options?: PhoneNumbersListAreaCodesNextOptionalParams,\n ): Promise<PhoneNumbersListAreaCodesNextResponse> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient._listAreaCodesNext\",\n options ?? {},\n async (options) => {\n return this.client.sendOperationRequest(\n { countryCode, nextLink, options },\n listAreaCodesNextOperationSpec,\n ) as Promise<PhoneNumbersListAreaCodesNextResponse>;\n },\n );\n }\n\n /**\n * ListAvailableCountriesNext\n * @param nextLink The nextLink from the previous successful call to the ListAvailableCountries method.\n * @param options The options parameters.\n */\n private async _listAvailableCountriesNext(\n nextLink: string,\n options?: PhoneNumbersListAvailableCountriesNextOptionalParams,\n ): Promise<PhoneNumbersListAvailableCountriesNextResponse> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient._listAvailableCountriesNext\",\n options ?? {},\n async (options) => {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listAvailableCountriesNextOperationSpec,\n ) as Promise<PhoneNumbersListAvailableCountriesNextResponse>;\n },\n );\n }\n\n /**\n * ListAvailableLocalitiesNext\n * @param countryCode The ISO 3166-2 country code, e.g. US.\n * @param nextLink The nextLink from the previous successful call to the ListAvailableLocalities\n * method.\n * @param options The options parameters.\n */\n private async _listAvailableLocalitiesNext(\n countryCode: string,\n nextLink: string,\n options?: PhoneNumbersListAvailableLocalitiesNextOptionalParams,\n ): Promise<PhoneNumbersListAvailableLocalitiesNextResponse> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient._listAvailableLocalitiesNext\",\n options ?? {},\n async (options) => {\n return this.client.sendOperationRequest(\n { countryCode, nextLink, options },\n listAvailableLocalitiesNextOperationSpec,\n ) as Promise<PhoneNumbersListAvailableLocalitiesNextResponse>;\n },\n );\n }\n\n /**\n * ListOfferingsNext\n * @param countryCode The ISO 3166-2 country code, e.g. US.\n * @param nextLink The nextLink from the previous successful call to the ListOfferings method.\n * @param options The options parameters.\n */\n private async _listOfferingsNext(\n countryCode: string,\n nextLink: string,\n options?: PhoneNumbersListOfferingsNextOptionalParams,\n ): Promise<PhoneNumbersListOfferingsNextResponse> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient._listOfferingsNext\",\n options ?? {},\n async (options) => {\n return this.client.sendOperationRequest(\n { countryCode, nextLink, options },\n listOfferingsNextOperationSpec,\n ) as Promise<PhoneNumbersListOfferingsNextResponse>;\n },\n );\n }\n\n /**\n * ListPhoneNumbersNext\n * @param nextLink The nextLink from the previous successful call to the ListPhoneNumbers method.\n * @param options The options parameters.\n */\n private async _listPhoneNumbersNext(\n nextLink: string,\n options?: PhoneNumbersListPhoneNumbersNextOptionalParams,\n ): Promise<PhoneNumbersListPhoneNumbersNextResponse> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient._listPhoneNumbersNext\",\n options ?? {},\n async (options) => {\n return this.client.sendOperationRequest(\n { nextLink, options },\n listPhoneNumbersNextOperationSpec,\n ) as Promise<PhoneNumbersListPhoneNumbersNextResponse>;\n },\n );\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst listAreaCodesOperationSpec: coreClient.OperationSpec = {\n path: \"/availablePhoneNumbers/countries/{countryCode}/areaCodes\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.PhoneNumberAreaCodes,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n queryParameters: [\n Parameters.phoneNumberType,\n Parameters.skip,\n Parameters.maxPageSize,\n Parameters.assignmentType,\n Parameters.locality,\n Parameters.administrativeDivision,\n Parameters.apiVersion,\n ],\n urlParameters: [Parameters.endpoint, Parameters.countryCode],\n headerParameters: [Parameters.accept, Parameters.acceptLanguage],\n serializer,\n};\nconst listAvailableCountriesOperationSpec: coreClient.OperationSpec = {\n path: \"/availablePhoneNumbers/countries\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.PhoneNumberCountries,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n queryParameters: [\n Parameters.skip,\n Parameters.maxPageSize,\n Parameters.apiVersion,\n ],\n urlParameters: [Parameters.endpoint],\n headerParameters: [Parameters.accept, Parameters.acceptLanguage],\n serializer,\n};\nconst listAvailableLocalitiesOperationSpec: coreClient.OperationSpec = {\n path: \"/availablePhoneNumbers/countries/{countryCode}/localities\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.PhoneNumberLocalities,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n queryParameters: [\n Parameters.skip,\n Parameters.maxPageSize,\n Parameters.administrativeDivision,\n Parameters.apiVersion,\n ],\n urlParameters: [Parameters.endpoint, Parameters.countryCode],\n headerParameters: [Parameters.accept, Parameters.acceptLanguage],\n serializer,\n};\nconst listOfferingsOperationSpec: coreClient.OperationSpec = {\n path: \"/availablePhoneNumbers/countries/{countryCode}/offerings\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.OfferingsResponse,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n queryParameters: [\n Parameters.skip,\n Parameters.maxPageSize,\n Parameters.assignmentType,\n Parameters.apiVersion,\n Parameters.phoneNumberType1,\n ],\n urlParameters: [Parameters.endpoint, Parameters.countryCode],\n headerParameters: [Parameters.accept, Parameters.acceptLanguage],\n serializer,\n};\nconst searchAvailablePhoneNumbersOperationSpec: coreClient.OperationSpec = {\n path: \"/availablePhoneNumbers/countries/{countryCode}/:search\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.PhoneNumberSearchResult,\n headersMapper: Mappers.PhoneNumbersSearchAvailablePhoneNumbersHeaders,\n },\n 201: {\n bodyMapper: Mappers.PhoneNumberSearchResult,\n headersMapper: Mappers.PhoneNumbersSearchAvailablePhoneNumbersHeaders,\n },\n 202: {\n bodyMapper: Mappers.PhoneNumberSearchResult,\n headersMapper: Mappers.PhoneNumbersSearchAvailablePhoneNumbersHeaders,\n },\n 204: {\n bodyMapper: Mappers.PhoneNumberSearchResult,\n headersMapper: Mappers.PhoneNumbersSearchAvailablePhoneNumbersHeaders,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n requestBody: {\n parameterPath: {\n phoneNumberType: [\"phoneNumberType\"],\n assignmentType: [\"assignmentType\"],\n capabilities: [\"capabilities\"],\n areaCode: [\"options\", \"areaCode\"],\n quantity: [\"options\", \"quantity\"],\n },\n mapper: { ...Mappers.PhoneNumberSearchRequest, required: true },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.countryCode],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer,\n};\nconst getSearchResultOperationSpec: coreClient.OperationSpec = {\n path: \"/availablePhoneNumbers/searchResults/{searchId}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.PhoneNumberSearchResult,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.searchId],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst purchasePhoneNumbersOperationSpec: coreClient.OperationSpec = {\n path: \"/availablePhoneNumbers/:purchase\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n headersMapper: Mappers.PhoneNumbersPurchasePhoneNumbersHeaders,\n },\n 201: {\n headersMapper: Mappers.PhoneNumbersPurchasePhoneNumbersHeaders,\n },\n 202: {\n headersMapper: Mappers.PhoneNumbersPurchasePhoneNumbersHeaders,\n },\n 204: {\n headersMapper: Mappers.PhoneNumbersPurchasePhoneNumbersHeaders,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n requestBody: {\n parameterPath: { searchId: [\"options\", \"searchId\"] },\n mapper: { ...Mappers.PhoneNumberPurchaseRequest, required: true },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer,\n};\nconst getOperationOperationSpec: coreClient.OperationSpec = {\n path: \"/phoneNumbers/operations/{operationId}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.PhoneNumberOperation,\n headersMapper: Mappers.PhoneNumbersGetOperationHeaders,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.operationId],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst cancelOperationOperationSpec: coreClient.OperationSpec = {\n path: \"/phoneNumbers/operations/{operationId}\",\n httpMethod: \"DELETE\",\n responses: {\n 204: {},\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.operationId],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst updateCapabilitiesOperationSpec: coreClient.OperationSpec = {\n path: \"/phoneNumbers/{phoneNumber}/capabilities\",\n httpMethod: \"PATCH\",\n responses: {\n 200: {\n bodyMapper: Mappers.PurchasedPhoneNumber,\n headersMapper: Mappers.PhoneNumbersUpdateCapabilitiesHeaders,\n },\n 201: {\n bodyMapper: Mappers.PurchasedPhoneNumber,\n headersMapper: Mappers.PhoneNumbersUpdateCapabilitiesHeaders,\n },\n 202: {\n bodyMapper: Mappers.PurchasedPhoneNumber,\n headersMapper: Mappers.PhoneNumbersUpdateCapabilitiesHeaders,\n },\n 204: {\n bodyMapper: Mappers.PurchasedPhoneNumber,\n headersMapper: Mappers.PhoneNumbersUpdateCapabilitiesHeaders,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n requestBody: {\n parameterPath: { calling: [\"options\", \"calling\"], sms: [\"options\", \"sms\"] },\n mapper: Mappers.PhoneNumberCapabilitiesRequest,\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.phoneNumber],\n headerParameters: [Parameters.accept, Parameters.contentType1],\n mediaType: \"json\",\n serializer,\n};\nconst getByNumberOperationSpec: coreClient.OperationSpec = {\n path: \"/phoneNumbers/{phoneNumber}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.PurchasedPhoneNumber,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.phoneNumber],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst releasePhoneNumberOperationSpec: coreClient.OperationSpec = {\n path: \"/phoneNumbers/{phoneNumber}\",\n httpMethod: \"DELETE\",\n responses: {\n 200: {\n headersMapper: Mappers.PhoneNumbersReleasePhoneNumberHeaders,\n },\n 201: {\n headersMapper: Mappers.PhoneNumbersReleasePhoneNumberHeaders,\n },\n 202: {\n headersMapper: Mappers.PhoneNumbersReleasePhoneNumberHeaders,\n },\n 204: {\n headersMapper: Mappers.PhoneNumbersReleasePhoneNumberHeaders,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint, Parameters.phoneNumber],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst listPhoneNumbersOperationSpec: coreClient.OperationSpec = {\n path: \"/phoneNumbers\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.PurchasedPhoneNumbers,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n queryParameters: [Parameters.skip, Parameters.apiVersion, Parameters.top],\n urlParameters: [Parameters.endpoint],\n headerParameters: [Parameters.accept],\n serializer,\n};\nconst operatorInformationSearchOperationSpec: coreClient.OperationSpec = {\n path: \"/operatorInformation/:search\",\n httpMethod: \"POST\",\n responses: {\n 200: {\n bodyMapper: Mappers.OperatorInformationResult,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n requestBody: {\n parameterPath: {\n phoneNumbers: [\"phoneNumbers\"],\n options: [\"options\", \"options\"],\n },\n mapper: { ...Mappers.OperatorInformationRequest, required: true },\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint],\n headerParameters: [Parameters.accept, Parameters.contentType],\n mediaType: \"json\",\n serializer,\n};\nconst listAreaCodesNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.PhoneNumberAreaCodes,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n urlParameters: [\n Parameters.endpoint,\n Parameters.countryCode,\n Parameters.nextLink,\n ],\n headerParameters: [Parameters.accept, Parameters.acceptLanguage],\n serializer,\n};\nconst listAvailableCountriesNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.PhoneNumberCountries,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n urlParameters: [Parameters.endpoint, Parameters.nextLink],\n headerParameters: [Parameters.accept, Parameters.acceptLanguage],\n serializer,\n};\nconst listAvailableLocalitiesNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.PhoneNumberLocalities,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n urlParameters: [\n Parameters.endpoint,\n Parameters.countryCode,\n Parameters.nextLink,\n ],\n headerParameters: [Parameters.accept, Parameters.acceptLanguage],\n serializer,\n};\nconst listOfferingsNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.OfferingsResponse,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n urlParameters: [\n Parameters.endpoint,\n Parameters.countryCode,\n Parameters.nextLink,\n ],\n headerParameters: [Parameters.accept, Parameters.acceptLanguage],\n serializer,\n};\nconst listPhoneNumbersNextOperationSpec: coreClient.OperationSpec = {\n path: \"{nextLink}\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.PurchasedPhoneNumbers,\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n },\n },\n urlParameters: [Parameters.endpoint, Parameters.nextLink],\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 {\n PipelineRequest,\n PipelineResponse,\n SendRequest,\n} from \"@azure/core-rest-pipeline\";\nimport { PhoneNumbersImpl } from \"./operations\";\nimport { PhoneNumbers } from \"./operationsInterfaces\";\nimport { PhoneNumbersClientOptionalParams } from \"./models\";\n\nexport class PhoneNumbersClient extends coreClient.ServiceClient {\n endpoint: string;\n apiVersion: string;\n\n /**\n * Initializes a new instance of the PhoneNumbersClient class.\n * @param endpoint The communication resource, for example https://resourcename.communication.azure.com\n * @param options The parameter options\n */\n constructor(endpoint: string, options?: PhoneNumbersClientOptionalParams) {\n if (endpoint === undefined) {\n throw new Error(\"'endpoint' cannot be null\");\n }\n\n // Initializing default values for options\n if (!options) {\n options = {};\n }\n const defaults: PhoneNumbersClientOptionalParams = {\n requestContentType: \"application/json; charset=utf-8\",\n };\n\n const packageDetails = `azsdk-js-communication-phone-numbers/1.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: options.endpoint ?? options.baseUri ?? \"{endpoint}\",\n };\n super(optionsWithDefaults);\n // Parameter assignments\n this.endpoint = endpoint;\n\n // Assigning values to Constant parameters\n this.apiVersion = options.apiVersion || \"2024-03-01-preview\";\n this.phoneNumbers = new PhoneNumbersImpl(this);\n this.addCustomApiVersionPolicy(options.apiVersion);\n }\n\n /** A function that adds a policy that sets the api-version (or equivalent) to reflect the library version. */\n private addCustomApiVersionPolicy(apiVersion?: string) {\n if (!apiVersion) {\n return;\n }\n const apiVersionPolicy = {\n name: \"CustomApiVersionPolicy\",\n async sendRequest(\n request: PipelineRequest,\n next: SendRequest,\n ): Promise<PipelineResponse> {\n const param = request.url.split(\"?\");\n if (param.length > 1) {\n const newParams = param[1].split(\"&\").map((item) => {\n if (item.indexOf(\"api-version\") > -1) {\n return \"api-version=\" + apiVersion;\n } else {\n return item;\n }\n });\n request.url = param[0] + \"?\" + newParams.join(\"&\");\n }\n return next(request);\n },\n };\n this.pipeline.addPolicy(apiVersionPolicy);\n }\n\n phoneNumbers: PhoneNumbers;\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { FullOperationResponse } from \"@azure/core-client\";\nimport {\n PipelinePolicy,\n PipelineRequest,\n PipelineResponse,\n SendRequest,\n} from \"@azure/core-rest-pipeline\";\n\n/**\n * Creates a `PipelinePolicy` that converts relative URL values in the `nextLink` property to absolute URLs.\n *\n * This is necessary because the Core V2 library does not support paging with relative links at time of writing.\n *\n * @param host - The base URL of the resource.\n * @returns the `PipelinePolicy` that addresses the issue.\n */\nexport function createPhoneNumbersPagingPolicy(host: string): PipelinePolicy {\n return {\n name: \"phoneNumbersPagingPolicy\",\n async sendRequest(request: PipelineRequest, next: SendRequest): Promise<PipelineResponse> {\n const response: FullOperationResponse = await next(request);\n let nextLink: string = response?.parsedBody?.nextLink;\n\n if (nextLink && !nextLink.startsWith(host)) {\n nextLink = host.endsWith(\"/\") ? nextLink.substring(1) : nextLink;\n const absolutePath = `${host}${nextLink}`;\n response.parsedBody.nextLink = absolutePath;\n }\n\n return response;\n },\n };\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { createClientLogger } from \"@azure/logger\";\n\n/**\n * The \\@azure\\/logger configuration for this package.\n */\nexport const logger = createClientLogger(\"communication-phone-numbers\");\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n/// <reference lib=\"esnext.asynciterable\" />\n\nimport {\n createCommunicationAuthPolicy,\n isKeyCredential,\n parseClientArguments,\n} from \"@azure/communication-common\";\nimport { KeyCredential, TokenCredential, isTokenCredential } from \"@azure/core-auth\";\nimport { InternalPipelineOptions } from \"@azure/core-rest-pipeline\";\nimport { PollOperationState, PollerLike } from \"@azure/core-lro\";\nimport { PagedAsyncIterableIterator } from \"@azure/core-paging\";\nimport { PhoneNumbersClient as PhoneNumbersGeneratedClient } from \"./generated/src\";\nimport {\n OperatorInformationResult,\n PhoneNumberAreaCode,\n PhoneNumberCapabilitiesRequest,\n PhoneNumberCountry,\n PhoneNumberLocality,\n PhoneNumberOffering,\n PhoneNumberSearchResult,\n PurchasedPhoneNumber,\n} from \"./generated/src/models/\";\nimport {\n GetPurchasedPhoneNumberOptions,\n ListAvailableCountriesOptions,\n ListGeographicAreaCodesOptions,\n ListLocalitiesOptions,\n ListOfferingsOptions,\n ListPurchasedPhoneNumbersOptions,\n ListTollFreeAreaCodesOptions,\n PurchasePhoneNumbersResult,\n ReleasePhoneNumberResult,\n SearchAvailablePhoneNumbersRequest,\n SearchOperatorInformationOptions,\n} from \"./models\";\nimport {\n BeginPurchasePhoneNumbersOptions,\n BeginReleasePhoneNumberOptions,\n BeginSearchAvailablePhoneNumbersOptions,\n BeginUpdatePhoneNumberCapabilitiesOptions,\n} from \"./lroModels\";\nimport { createPhoneNumbersPagingPolicy } from \"./utils/customPipelinePolicies\";\nimport { CommonClientOptions } from \"@azure/core-client\";\nimport { logger } from \"./utils\";\nimport { tracingClient } from \"./generated/src/tracing\";\n\n/**\n * Client options used to configure the PhoneNumbersClient API requests.\n */\nexport interface PhoneNumbersClientOptions extends CommonClientOptions {\n /**\n * The accept language parameter to be used in the request header's \"accept-language\" property.\n */\n acceptLanguage?: string;\n}\n\nconst isPhoneNumbersClientOptions = (options: any): options is PhoneNumbersClientOptions =>\n options && !isKeyCredential(options) && !isTokenCredential(options);\n\n/**\n * Client class for interacting with Azure Communication Services Phone Number Administration.\n */\nexport class PhoneNumbersClient {\n /**\n * A reference to the auto-generated PhoneNumber HTTP client.\n */\n private readonly client: PhoneNumbersGeneratedClient;\n\n /**\n * The accept language parameter to be used in the request header's \"accept-language\" property.\n */\n private acceptLanguage: string | undefined;\n\n /**\n * Initializes a new instance of the PhoneNumberAdministrationClient class using a connection string.\n *\n * @param connectionString - Connection string to connect to an Azure Communication Service resource. (eg: endpoint=https://contoso.eastus.communications.azure.net/;accesskey=secret)\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n public constructor(connectionString: string, options?: PhoneNumbersClientOptions);\n\n /**\n * Initializes a new instance of the PhoneNumberAdministrationClient class using an Azure KeyCredential.\n *\n * @param url - The endpoint of the service (eg: https://contoso.eastus.communications.azure.net)\n * @param credential - An object that is used to authenticate requests to the service. Use the Azure KeyCredential or `@azure/identity` to create a credential.\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n public constructor(url: string, credential: KeyCredential, options?: PhoneNumbersClientOptions);\n\n /**\n * Initializes a new instance of the PhoneNumberAdministrationClient class using a TokenCredential.\n * @param url - The endpoint of the service (ex: https://contoso.eastus.communications.azure.net).\n * @param credential - TokenCredential that is used to authenticate requests to the service.\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n public constructor(url: string, credential: TokenCredential, options?: PhoneNumbersClientOptions);\n\n public constructor(\n connectionStringOrUrl: string,\n credentialOrOptions?: KeyCredential | TokenCredential | PhoneNumbersClientOptions,\n maybeOptions: PhoneNumbersClientOptions = {},\n ) {\n const { url, credential } = parseClientArguments(connectionStringOrUrl, credentialOrOptions);\n const options = isPhoneNumbersClientOptions(credentialOrOptions)\n ? credentialOrOptions\n : maybeOptions;\n\n const internalPipelineOptions: InternalPipelineOptions = {\n ...options,\n ...{\n loggingOptions: {\n logger: logger.info,\n },\n },\n };\n\n this.client = new PhoneNumbersGeneratedClient(url, {\n endpoint: url,\n ...internalPipelineOptions,\n });\n const authPolicy = createCommunicationAuthPolicy(credential);\n this.client.pipeline.addPolicy(authPolicy);\n\n // This policy is temporary workarounds to address compatibility issues with Azure Core V2.\n const phoneNumbersPagingPolicy = createPhoneNumbersPagingPolicy(url);\n this.client.pipeline.addPolicy(phoneNumbersPagingPolicy);\n this.acceptLanguage = maybeOptions.acceptLanguage;\n }\n\n /**\n * Gets the details of a purchased phone number. Includes phone number, cost, country code, etc.\n *\n * @param phoneNumber - The E.164 formatted phone number being fetched. The leading plus can be either + or encoded as %2B.\n * @param options - Additional request options.\n */\n public getPurchasedPhoneNumber(\n phoneNumber: string,\n options: GetPurchasedPhoneNumberOptions = {},\n ): Promise<PurchasedPhoneNumber> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient-getPurchasedPhoneNumber\",\n options,\n (updatedOptions) => {\n return this.client.phoneNumbers.getByNumber(phoneNumber, {\n ...updatedOptions,\n });\n },\n );\n }\n\n /**\n * Iterates the purchased phone numbers.\n *\n * Example usage:\n * ```ts\n * let client = new PhoneNumbersClient(credentials);\n * for await (const purchased of client.listPhoneNumbers()) {\n * console.log(\"phone number: \", purchased.phoneNumber);\n * }\n * ```\n * List all purchased phone numbers.\n * @param options - The optional parameters.\n */\n public listPurchasedPhoneNumbers(\n options: ListPurchasedPhoneNumbersOptions = {},\n ): PagedAsyncIterableIterator<PurchasedPhoneNumber> {\n const { span, updatedOptions } = tracingClient.startSpan(\n \"PhoneNumbersClient-listPurchasedPhoneNumbers\",\n options,\n );\n\n try {\n return this.client.phoneNumbers.listPhoneNumbers({\n ...updatedOptions,\n });\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e,\n });\n\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Starts the release of a purchased phone number.\n *\n * This function returns a Long Running Operation poller that allows you to wait indefinitely until the operation is complete.\n *\n * Example usage:\n * ```ts\n * const client = new PhoneNumbersClient(CONNECTION_STRING);\n * const releasePoller = await client.beginReleasePhoneNumber(\"+14125550100\");\n *\n * // Serializing the poller\n * const serialized = releasePoller.toString();\n *\n * // Waiting until it's done\n * const results = await releasePoller.pollUntilDone();\n * console.log(results);\n * ```\n * @param phoneNumber - The E.164 formatted phone number being released. The leading plus can be either + or encoded as %2B.\n * @param options - Additional request options.\n */\n public beginReleasePhoneNumber(\n phoneNumber: string,\n options: BeginReleasePhoneNumberOptions = {},\n ): Promise<PollerLike<PollOperationState<ReleasePhoneNumberResult>, ReleasePhoneNumberResult>> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient-beginReleasePhoneNumber\",\n options,\n (updatedOptions) => {\n return this.client.phoneNumbers.beginReleasePhoneNumber(phoneNumber, updatedOptions);\n },\n );\n }\n\n /**\n * Starts a search for phone numbers given some constraints such as name or area code.\n * The phone numbers that are found are reserved until you cancel, purchase or the reservation expires.\n *\n * This function returns a Long Running Operation poller that allows you to wait indefinitely until the operation is complete.\n *\n * Example usage:\n * ```ts\n * const client = new PhoneNumberAdministrationClient(CONNECTION_STRING);\n * const searchPoller = await client.beginSearchAvailablePhoneNumbers(SEARCH_REQUEST);\n *\n * // Serializing the poller\n * const serialized = searchPoller.toString();\n *\n * // Waiting until it's done\n * const results = await searchPoller.pollUntilDone();\n * console.log(results);\n * ```\n *\n * @param search - Request properties to constraint the search scope.\n * @param options - Additional request options.\n */\n public beginSearchAvailablePhoneNumbers(\n search: SearchAvailablePhoneNumbersRequest,\n options: BeginSearchAvailablePhoneNumbersOptions = {},\n ): Promise<PollerLike<PollOperationState<PhoneNumberSearchResult>, PhoneNumberSearchResult>> {\n return tracingClient.withSpan(\n \"PhoneNumbersClient-beginSearchAvailablePhoneNumbers\",\n options,\n (updatedOptions) => {\n const { countryCode, phoneNumberType, assignmentType, capabilities, ...rest } = search;\n return this.client.phoneNumbers.beginSearchAvailablePhoneNumbers(\n countryCode,\n phoneNumberType,\n assignmentType,\n capabilities,\n {\n ...updatedOptions,\n ...rest,\n },\n );\n },\n );\n }\n\n /**\n * Starts the purchase of the phone number(s) in the search associated with a given id.\n *\n * This function returns a Long Running Operation poller that allows you to wait indefinitely until the operation is complete.\n *\n * Example usage:\n * ```ts\n * const client = new PhoneNumbersClient(CONNECTION_STRING);\n * const purchasePoller = await client.beginPurchasePhoneNumbers(SEARCH_ID);\n *\n * // Serializing the poller\n * const serialized = purchasePoller.toString();\n *\n * // Waiting until it's done\n * const results = await purchasePoller.pollUntilDone();\n * console.log(results);\n * ```\n *\n * @param searchId - The id of the search to purchase. Returned from `beginSearchAvailablePhoneNumbers`\n * @param options - Additional request options.\n */\n public beginPurchasePhoneNumbers(\n searchId: string,\n options: BeginPurchasePhoneNumbersOptions = {},\n ): Promise<\n PollerLike<PollOperationState<PurchasePhoneNumbersResult>, PurchasePhoneNumbersResult>\n > {\n return tracingClient.withSpan(\n \"PhoneNumbersClient-beginPurchasePhoneNumbers\",\n options,\n (updatedOptions) => {\n return this.client.phoneNumbers.beginPurchasePhoneNumbers({ ...updatedOptions, searchId });\n },\n );\n }\n\n /**\n * Starts the update of a purchased phone number's capabilities.\n *\n * This function returns a Long Running Operation poller that allows you to wait indefinitely until the operation is complete.\n *\n * Example usage:\n * ```ts\n * const client = new PhoneNumbersClient(CONNECTION_STRING);\n * const updatePoller = await client.beginUpdatePhoneNumberCapabilities(\"+14125550100\", UPDATE_REQUEST);\n *\n * // Serializing the poller\n * const serialized = updatePoller.toString();\n *\n * // Waiting until it's done\n * const results = await updatePoller.pollUntilDone();\n * console.log(results);\n * ```\n *\n * @param phoneNumber - The E.164 formatted phone number being updated. The leading plus can be either + or encoded as %2B.\n * @param request - The updated properties which will be applied to the phone number.\n * @param options - Additional request options.\n */\n public beginUpdatePhoneNumberCapabilities(\n phoneNumber: string,\n request: PhoneNumberCapabilitiesRequest,\n options: BeginUpdatePhoneNumberCapabilitiesOptions = {},\n ): Promise<PollerLike<PollOperationState<PurchasedPhoneNumber>, PurchasedPhoneNumber>> {\n if (!phoneNumber) {\n throw Error(\"phone number can't be empty\");\n }\n return tracingClient.withSpan(\n \"PhoneNumbersClient-beginUpdatePhoneNumberCapabilities\",\n options,\n (updatedOptions) => {\n return this.client.phoneNumbers.beginUpdateCapabilities(phoneNumber, {\n ...updatedOptions,\n ...request,\n });\n },\n );\n }\n\n /**\n * Iterates the available countries.\n *\n * Example usage:\n * ```ts\n * let client = new PhoneNumbersClient(credentials);\n * for await (const country of client.listAvailableCountries()) {\n * console.log(\"country: \", country.localizedName);\n * }\n * ```\n * List all available countries.\n * @param options - The optional parameters.\n */\n public listAvailableCountries(\n options: ListAvailableCountriesOptions = {},\n ): PagedAsyncIterableIterator<PhoneNumberCountry> {\n const { span, updatedOptions } = tracingClient.startSpan(\n \"PhoneNumbersClient-listAvailableCountries\",\n options,\n );\n\n try {\n return this.client.phoneNumbers.listAvailableCountries({\n ...updatedOptions,\n acceptLanguage: this.acceptLanguage,\n });\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e,\n });\n\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Iterates the available Toll-Free area codes.\n *\n * Example usage:\n * ```ts\n * let client = new PhoneNumbersClient(credentials);\n * for await (const areaCodeItem of client.listTollFreeAreaCodes()) {\n * console.log(\"area code: \", areaCodeItem.areaCode);\n * }\n * ```\n * List all available Toll-Free area codes.\n * @param countryCode - The ISO 3166-2 country code.\n * @param options - The optional parameters.\n */\n public listAvailableTollFreeAreaCodes(\n countryCode: string,\n options: ListTollFreeAreaCodesOptions = {},\n ): PagedAsyncIterableIterator<PhoneNumberAreaCode> {\n const { span, updatedOptions } = tracingClient.startSpan(\n \"PhoneNumbersClient-listAvailableTollFreeAreaCodes\",\n options,\n );\n\n try {\n return this.client.phoneNumbers.listAreaCodes(countryCode, \"tollFree\", {\n ...updatedOptions,\n assignmentType: \"application\",\n });\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e,\n });\n\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Iterates the available Geographic area codes.\n *\n * Example usage:\n * ```ts\n * let client = new PhoneNumbersClient(credentials);\n * for await (const areaCodeItem of client.listGeographicAreaCodes()) {\n * console.log(\"area code: \", areaCodeItem.areaCode);\n * }\n * ```\n * List all available Geographic area codes.\n * @param countryCode - The ISO 3166-2 country code.\n * @param options - The optional parameters.\n */\n public listAvailableGeographicAreaCodes(\n countryCode: string,\n options: ListGeographicAreaCodesOptions = {},\n ): PagedAsyncIterableIterator<PhoneNumberAreaCode> {\n const { span, updatedOptions } = tracingClient.startSpan(\n \"PhoneNumbersClient-listAvailableGeographicFreeAreaCodes\",\n options,\n );\n\n try {\n return this.client.phoneNumbers.listAreaCodes(countryCode, \"geographic\", {\n ...updatedOptions,\n });\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e,\n });\n\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Iterates the available localities.\n *\n * Example usage:\n * ```ts\n * let client = new PhoneNumbersClient(credentials);\n * for await (const locality of client.listAvailableLocalities()) {\n * console.log(\"locality: \", locality.localizedName);\n * }\n * ```\n * List all available localities.\n * @param countryCode - The ISO 3166-2 country code.\n * @param options - The optional parameters.\n */\n public listAvailableLocalities(\n countryCode: string,\n options: ListLocalitiesOptions = {},\n ): PagedAsyncIterableIterator<PhoneNumberLocality> {\n const { span, updatedOptions } = tracingClient.startSpan(\n \"PhoneNumbersClient-listAvailableLocalities\",\n options,\n );\n\n try {\n return this.client.phoneNumbers.listAvailableLocalities(countryCode, {\n ...updatedOptions,\n acceptLanguage: this.acceptLanguage,\n });\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e,\n });\n\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Iterates the available offerings.\n *\n * Example usage:\n * ```ts\n * let client = new PhoneNumbersClient(credentials);\n * for await (const offering of client.listAvailableOfferings()) {\n * console.log(\"phone number type: \", offering.phoneNumberType);\n * console.log(\"cost: \", offering.cost.amount);\n * }\n * ```\n * List all available offerings.\n * @param countryCode - The ISO 3166-2 country code.\n * @param options - The optional parameters.\n */\n public listAvailableOfferings(\n countryCode: string,\n options: ListOfferingsOptions = {},\n ): PagedAsyncIterableIterator<PhoneNumberOffering> {\n const { span, updatedOptions } = tracingClient.startSpan(\n \"PhoneNumbersClient-listOfferings\",\n options,\n );\n\n try {\n return this.client.phoneNumbers.listOfferings(countryCode, {\n ...updatedOptions,\n });\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e,\n });\n\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Search for operator information about specified phone numbers.\n *\n * @param phoneNumbers - The phone numbers to search.\n * @param options - Additional request options.\n */\n public searchOperatorInformation(\n phoneNumbers: string[],\n options: SearchOperatorInformationOptions = { includeAdditionalOperatorDetails: false },\n ): Promise<OperatorInformationResult> {\n const { span, updatedOptions } = tracingClient.startSpan(\n \"PhoneNumbersClient-searchOperatorInformation\",\n options,\n );\n\n try {\n return this.client.phoneNumbers.operatorInformationSearch(phoneNumbers, {\n ...updatedOptions,\n options: { includeAdditionalOperatorDetails: options.includeAdditionalOperatorDetails },\n });\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e,\n });\n\n throw e;\n } finally {\n span.end();\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 * as coreClient from \"@azure/core-client\";\n\nexport const SipConfiguration: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SipConfiguration\",\n modelProperties: {\n trunks: {\n serializedName: \"trunks\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"Composite\", className: \"SipTrunk\" } }\n }\n },\n routes: {\n constraints: {\n MaxItems: 250\n },\n serializedName: \"routes\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SipTrunkRoute\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const SipTrunk: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SipTrunk\",\n modelProperties: {\n sipSignalingPort: {\n serializedName: \"sipSignalingPort\",\n required: true,\n type: {\n name: \"Number\"\n }\n }\n }\n }\n};\n\nexport const SipTrunkRoute: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SipTrunkRoute\",\n modelProperties: {\n description: {\n constraints: {\n MaxLength: 1024\n },\n serializedName: \"description\",\n type: {\n name: \"String\"\n }\n },\n name: {\n constraints: {\n MaxLength: 256\n },\n serializedName: \"name\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n numberPattern: {\n constraints: {\n MaxLength: 1024\n },\n serializedName: \"numberPattern\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n trunks: {\n constraints: {\n MaxItems: 250\n },\n serializedName: \"trunks\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"String\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const CommunicationErrorResponse: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"CommunicationErrorResponse\",\n modelProperties: {\n error: {\n serializedName: \"error\",\n type: {\n name: \"Composite\",\n className: \"SipRoutingError\"\n }\n }\n }\n }\n};\n\nexport const SipRoutingError: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SipRoutingError\",\n modelProperties: {\n code: {\n serializedName: \"code\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n message: {\n serializedName: \"message\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n target: {\n serializedName: \"target\",\n readOnly: true,\n type: {\n name: \"String\"\n }\n },\n details: {\n serializedName: \"details\",\n readOnly: true,\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SipRoutingError\"\n }\n }\n }\n },\n innerError: {\n serializedName: \"innererror\",\n type: {\n name: \"Composite\",\n className: \"SipRoutingError\"\n }\n }\n }\n }\n};\n\nexport const SipConfigurationUpdate: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SipConfigurationUpdate\",\n modelProperties: {\n trunks: {\n serializedName: \"trunks\",\n type: {\n name: \"Dictionary\",\n value: { type: { name: \"Composite\", className: \"TrunkUpdate\" } }\n }\n },\n routes: {\n constraints: {\n MaxItems: 250\n },\n serializedName: \"routes\",\n type: {\n name: \"Sequence\",\n element: {\n type: {\n name: \"Composite\",\n className: \"SipTrunkRoute\"\n }\n }\n }\n }\n }\n }\n};\n\nexport const TrunkUpdate: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"TrunkUpdate\",\n modelProperties: {\n sipSignalingPort: {\n serializedName: \"sipSignalingPort\",\n type: {\n name: \"Number\"\n }\n }\n }\n }\n};\n\nexport const SipRoutingGetExceptionHeaders: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SipRoutingGetExceptionHeaders\",\n modelProperties: {\n xMsErrorCode: {\n serializedName: \"x-ms-error-code\",\n type: {\n name: \"String\"\n }\n }\n }\n }\n};\n\nexport const SipRoutingUpdateExceptionHeaders: coreClient.CompositeMapper = {\n type: {\n name: \"Composite\",\n className: \"SipRoutingUpdateExceptionHeaders\",\n modelProperties: {\n xMsErrorCode: {\n serializedName: \"x-ms-error-code\",\n type: {\n name: \"String\"\n }\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 {\n OperationParameter,\n OperationURLParameter,\n OperationQueryParameter\n} from \"@azure/core-client\";\nimport { SipConfigurationUpdate as SipConfigurationUpdateMapper } 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 endpoint: OperationURLParameter = {\n parameterPath: \"endpoint\",\n mapper: {\n serializedName: \"endpoint\",\n required: true,\n type: {\n name: \"String\"\n }\n },\n skipEncoding: true\n};\n\nexport const apiVersion: OperationQueryParameter = {\n parameterPath: \"apiVersion\",\n mapper: {\n defaultValue: \"2023-03-01\",\n isConstant: true,\n serializedName: \"api-version\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const contentType: OperationParameter = {\n parameterPath: [\"options\", \"contentType\"],\n mapper: {\n defaultValue: \"application/merge-patch+json\",\n isConstant: true,\n serializedName: \"Content-Type\",\n type: {\n name: \"String\"\n }\n }\n};\n\nexport const trunks: OperationParameter = {\n parameterPath: [\"options\", \"trunks\"],\n mapper: SipConfigurationUpdateMapper\n};\n\nexport const routes: OperationParameter = {\n parameterPath: [\"options\", \"routes\"],\n mapper: SipConfigurationUpdateMapper\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 { SipRouting } from \"../operationsInterfaces\";\nimport * as coreClient from \"@azure/core-client\";\nimport * as Mappers from \"../models/mappers\";\nimport * as Parameters from \"../models/parameters\";\nimport { SipRoutingClientContext } from \"../sipRoutingClientContext\";\nimport {\n SipRoutingGetOptionalParams,\n SipRoutingGetResponse,\n SipRoutingUpdateOptionalParams,\n SipRoutingUpdateResponse\n} from \"../models\";\n\n/** Class containing SipRouting operations. */\nexport class SipRoutingImpl implements SipRouting {\n private readonly client: SipRoutingClientContext;\n\n /**\n * Initialize a new instance of the class SipRouting class.\n * @param client Reference to the service client\n */\n constructor(client: SipRoutingClientContext) {\n this.client = client;\n }\n\n /**\n * Gets SIP configuration for resource.\n * @param options The options parameters.\n */\n get(options?: SipRoutingGetOptionalParams): Promise<SipRoutingGetResponse> {\n return this.client.sendOperationRequest({ options }, getOperationSpec);\n }\n\n /**\n * Updates SIP configuration for resource.\n * @param options The options parameters.\n */\n update(\n options?: SipRoutingUpdateOptionalParams\n ): Promise<SipRoutingUpdateResponse> {\n return this.client.sendOperationRequest({ options }, updateOperationSpec);\n }\n}\n// Operation Specifications\nconst serializer = coreClient.createSerializer(Mappers, /* isXml */ false);\n\nconst getOperationSpec: coreClient.OperationSpec = {\n path: \"/sip\",\n httpMethod: \"GET\",\n responses: {\n 200: {\n bodyMapper: Mappers.SipConfiguration\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n headersMapper: Mappers.SipRoutingGetExceptionHeaders\n }\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint],\n headerParameters: [Parameters.accept],\n serializer\n};\nconst updateOperationSpec: coreClient.OperationSpec = {\n path: \"/sip\",\n httpMethod: \"PATCH\",\n responses: {\n 200: {\n bodyMapper: Mappers.SipConfiguration\n },\n default: {\n bodyMapper: Mappers.CommunicationErrorResponse,\n headersMapper: Mappers.SipRoutingUpdateExceptionHeaders\n }\n },\n requestBody: {\n parameterPath: {\n trunks: [\"options\", \"trunks\"],\n routes: [\"options\", \"routes\"]\n },\n mapper: Mappers.SipConfigurationUpdate\n },\n queryParameters: [Parameters.apiVersion],\n urlParameters: [Parameters.endpoint],\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 * as coreClient from \"@azure/core-client\";\nimport { SipRoutingClientOptionalParams } from \"./models\";\n\nexport class SipRoutingClientContext extends coreClient.ServiceClient {\n endpoint: string;\n apiVersion: string;\n\n /**\n * Initializes a new instance of the SipRoutingClientContext class.\n * @param endpoint The communication resource, for example https://resourcename.communication.azure.com\n * @param options The parameter options\n */\n constructor(endpoint: string, options?: SipRoutingClientOptionalParams) {\n if (endpoint === undefined) {\n throw new Error(\"'endpoint' cannot be null\");\n }\n\n // Initializing default values for options\n if (!options) {\n options = {};\n }\n const defaults: SipRoutingClientOptionalParams = {\n requestContentType: \"application/json; charset=utf-8\"\n };\n\n const packageDetails = `azsdk-js-communication-phone-numbers/1.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 baseUri: options.endpoint || \"{endpoint}\"\n };\n super(optionsWithDefaults);\n // Parameter assignments\n this.endpoint = endpoint;\n\n // Assigning values to Constant parameters\n this.apiVersion = options.apiVersion || \"2023-03-01\";\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 { SipRoutingImpl } from \"./operations\";\nimport { SipRouting } from \"./operationsInterfaces\";\nimport { SipRoutingClientContext } from \"./sipRoutingClientContext\";\nimport { SipRoutingClientOptionalParams } from \"./models\";\n\nexport class SipRoutingClient extends SipRoutingClientContext {\n /**\n * Initializes a new instance of the SipRoutingClient class.\n * @param endpoint The communication resource, for example https://resourcename.communication.azure.com\n * @param options The parameter options\n */\n constructor(endpoint: string, options?: SipRoutingClientOptionalParams) {\n super(endpoint, options);\n this.sipRouting = new SipRoutingImpl(this);\n }\n\n sipRouting: SipRouting;\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport { SipTrunk } from \"./models\";\nimport { TrunkUpdate as RestSipTrunk } from \"./generated/src/siprouting/models\";\n\n/**\n * @internal\n * Transforming SIP trunks REST model to SDK model\n */\nexport function transformFromRestModel(\n trunks: { [propertyName: string]: RestSipTrunk } | undefined,\n): SipTrunk[] {\n const result: SipTrunk[] = [];\n\n if (trunks) {\n Object.keys(trunks).forEach((fqdn: string) => {\n const port = trunks[fqdn].sipSignalingPort;\n result.push({ fqdn: fqdn, sipSignalingPort: port } as SipTrunk);\n });\n }\n\n return result;\n}\n\n/**\n * @internal\n * Transforming SIP trunks SDK model to REST model\n */\nexport function transformIntoRestModel(trunks: SipTrunk[]): {\n [propertyName: string]: RestSipTrunk;\n} {\n const result: { [propertyName: string]: RestSipTrunk } = {};\n\n trunks.forEach((trunk: SipTrunk) => {\n result[trunk.fqdn] = { sipSignalingPort: trunk.sipSignalingPort } as RestSipTrunk;\n });\n\n return result;\n}\n","// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT license.\n\nimport {\n createCommunicationAuthPolicy,\n isKeyCredential,\n parseClientArguments,\n} from \"@azure/communication-common\";\nimport { KeyCredential, TokenCredential, isTokenCredential } from \"@azure/core-auth\";\nimport { InternalPipelineOptions } from \"@azure/core-rest-pipeline\";\nimport { logger } from \"./utils\";\nimport { SipRoutingClient as SipRoutingGeneratedClient } from \"./generated/src/siprouting/sipRoutingClient\";\nimport { SipConfigurationUpdate, SipRoutingError } from \"./generated/src/siprouting/models\";\nimport { ListSipRoutesOptions, ListSipTrunksOptions, SipTrunk, SipTrunkRoute } from \"./models\";\nimport { transformFromRestModel, transformIntoRestModel } from \"./mappers\";\nimport { CommonClientOptions, OperationOptions } from \"@azure/core-client\";\nimport { tracingClient } from \"./generated/src/tracing\";\nimport { PagedAsyncIterableIterator } from \"@azure/core-paging\";\n\nexport * from \"./models\";\n\n/**\n * Client options used to configure the SipRoutingClient API requests.\n */\nexport interface SipRoutingClientOptions extends CommonClientOptions {}\n\n/**\n * Checks whether the type of a value is SipClientOptions or not.\n *\n * @param options - The value being checked.\n */\nconst isSipClientOptions = (options: any): options is SipRoutingClientOptions =>\n options && !isKeyCredential(options) && !isTokenCredential(options);\n\n/**\n * Client class for interacting with Azure Communication Services SIP Routing Administration.\n */\nexport class SipRoutingClient {\n /**\n * A reference to the auto-generated SipRouting HTTP client.\n */\n private readonly client: SipRoutingGeneratedClient;\n\n /**\n * Initializes a new instance of the SipRoutingClient class using a connection string.\n *\n * @param connectionString - Connection string to connect to an Azure Communication Service resource. (eg: endpoint=https://contoso.eastus.communications.azure.net/;accesskey=secret)\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n public constructor(connectionString: string, options?: SipRoutingClientOptions);\n\n /**\n * Initializes a new instance of the SipRoutingClient class using an Azure KeyCredential.\n *\n * @param endpoint - The endpoint of the service (eg: https://contoso.eastus.communications.azure.net).\n * @param credential - An object that is used to authenticate requests to the service. Use the Azure KeyCredential or `@azure/identity` to create a credential.\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n public constructor(\n endpoint: string,\n credential: KeyCredential,\n options?: SipRoutingClientOptions,\n );\n\n /**\n * Initializes a new instance of the SipRoutingClient class using a TokenCredential.\n * @param endpoint - The endpoint of the service (ex: https://contoso.eastus.communications.azure.net).\n * @param credential - TokenCredential that is used to authenticate requests to the service.\n * @param options - Optional. Options to configure the HTTP pipeline.\n */\n public constructor(\n endpoint: string,\n credential: TokenCredential,\n options?: SipRoutingClientOptions,\n );\n\n public constructor(\n connectionStringOrUrl: string,\n credentialOrOptions?: KeyCredential | TokenCredential | SipRoutingClientOptions,\n maybeOptions: SipRoutingClientOptions = {},\n ) {\n const { url, credential } = parseClientArguments(connectionStringOrUrl, credentialOrOptions);\n const options = isSipClientOptions(credentialOrOptions) ? credentialOrOptions : maybeOptions;\n\n const internalPipelineOptions: InternalPipelineOptions = {\n ...options,\n ...{\n loggingOptions: {\n logger: logger.info,\n },\n },\n };\n\n this.client = new SipRoutingGeneratedClient(url, {\n endpoint: url,\n ...internalPipelineOptions,\n });\n const authPolicy = createCommunicationAuthPolicy(credential);\n this.client.pipeline.addPolicy(authPolicy);\n }\n\n /**\n * Lists the SIP trunks.\n * @param options - The options parameters.\n */\n public listTrunks(options: ListSipTrunksOptions = {}): PagedAsyncIterableIterator<SipTrunk> {\n const { span, updatedOptions } = tracingClient.startSpan(\n \"SipRoutingClient-listTrunks\",\n options,\n );\n\n try {\n const iter = this.listTrunksPagingAll({ ...updatedOptions });\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listTrunksPagingPage({ ...updatedOptions });\n },\n };\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Gets the SIP trunk.\n * @param fqdn - The trunk's FQDN.\n * @param options - The options parameters.\n */\n public async getTrunk(fqdn: string, options: OperationOptions = {}): Promise<SipTrunk> {\n return tracingClient.withSpan(\"SipRoutingClient-getTrunk\", options, async (updatedOptions) => {\n const trunks = await this.getTrunksInternal(updatedOptions);\n const trunk = trunks.find((value: SipTrunk) => value.fqdn === fqdn);\n if (trunk) {\n return trunk;\n }\n throw { code: \"NotFound\", message: \"Not Found\" } as SipRoutingError;\n });\n }\n\n /**\n * Lists the SIP trunk routes.\n * @param options - The options parameters.\n */\n public listRoutes(options: ListSipRoutesOptions = {}): PagedAsyncIterableIterator<SipTrunkRoute> {\n const { span, updatedOptions } = tracingClient.startSpan(\n \"SipRoutingClient-listRoutes\",\n options,\n );\n\n try {\n const iter = this.listRoutesPagingAll({ ...updatedOptions });\n return {\n next() {\n return iter.next();\n },\n [Symbol.asyncIterator]() {\n return this;\n },\n byPage: () => {\n return this.listRoutesPagingPage({ ...updatedOptions });\n },\n };\n } catch (e: any) {\n span.setStatus({\n status: \"error\",\n error: e,\n });\n throw e;\n } finally {\n span.end();\n }\n }\n\n /**\n * Sets the SIP trunks.\n * @param trunks - The SIP trunks to be set.\n * @param options - The options parameters.\n */\n public async setTrunks(trunks: SipTrunk[], options: OperationOptions = {}): Promise<SipTrunk[]> {\n return tracingClient.withSpan(\"SipRoutingClient-setTrunks\", options, async (updatedOptions) => {\n const patch: SipConfigurationUpdate = { trunks: transformIntoRestModel(trunks) };\n let config = await this.client.sipRouting.get(updatedOptions);\n const storedFqdns = transformFromRestModel(config.trunks).map((trunk) => trunk.fqdn);\n const setFqdns = trunks.map((trunk) => trunk.fqdn);\n storedFqdns.forEach((storedFqdn) => {\n const shouldDeleteStoredTrunk = !setFqdns.find((value) => value === storedFqdn);\n if (shouldDeleteStoredTrunk) {\n patch.trunks![storedFqdn] = null;\n }\n });\n\n const isPatchNeeded = Object.keys(patch.trunks!).length > 0;\n if (isPatchNeeded) {\n const payload = {\n ...updatedOptions,\n ...patch,\n };\n config = await this.client.sipRouting.update(payload);\n }\n\n return transformFromRestModel(config.trunks);\n });\n }\n\n /**\n * Sets the SIP trunk.\n * @param trunk - The SIP trunk to be set.\n * @param options - The options parameters.\n */\n public async setTrunk(trunk: SipTrunk, options: OperationOptions = {}): Promise<SipTrunk> {\n return tracingClient.withSpan(\"SipRoutingClient-setTrunk\", options, async (updatedOptions) => {\n const patch: SipConfigurationUpdate = {\n trunks: transformIntoRestModel([trunk]),\n };\n const payload = {\n ...updatedOptions,\n ...patch,\n };\n const config = await this.client.sipRouting.update(payload);\n const storedTrunk = transformFromRestModel(config.trunks).find(\n (value: SipTrunk) => value.fqdn === trunk.fqdn,\n );\n if (storedTrunk) {\n return storedTrunk;\n }\n\n throw { code: \"NotFound\", message: \"Not Found\" } as SipRoutingError;\n });\n }\n\n /**\n * Sets the SIP trunk routes.\n * @param routes - The SIP trunk routes to be set.\n * @param options - The options parameters.\n */\n public async setRoutes(\n routes: SipTrunkRoute[],\n options: OperationOptions = {},\n ): Promise<SipTrunkRoute[]> {\n return tracingClient.withSpan(\"SipRoutingClient-setRoutes\", options, async (updatedOptions) => {\n const patch: SipConfigurationUpdate = {\n routes: routes,\n };\n const payload = {\n ...updatedOptions,\n ...patch,\n };\n const config = await this.client.sipRouting.update(payload);\n const storedRoutes = config.routes || (await this.getRoutesInternal(updatedOptions));\n return storedRoutes;\n });\n }\n\n /**\n * Deletes the SIP trunk.\n * @param fqdn - The trunk's FQDN.\n * @param options - The options parameters.\n */\n public async deleteTrunk(fqdn: string, options: OperationOptions = {}): Promise<void> {\n return tracingClient.withSpan(\n \"SipRoutingClient-deleteTrunk\",\n options,\n async (updatedOptions) => {\n const trunks: any = {};\n trunks[fqdn] = null;\n const patch: SipConfigurationUpdate = {\n trunks: trunks,\n };\n\n const payload = {\n ...updatedOptions,\n ...patch,\n };\n await this.client.sipRouting.update(payload);\n },\n );\n }\n\n private async getRoutesInternal(options: OperationOptions): Promise<SipTrunkRoute[]> {\n const config = await this.client.sipRouting.get(options);\n return config.routes || [];\n }\n\n private async getTrunksInternal(options: OperationOptions): Promise<SipTrunk[]> {\n const config = await this.client.sipRouting.get(options);\n return transformFromRestModel(config.trunks);\n }\n\n private async *listRoutesPagingAll(\n options?: ListSipRoutesOptions,\n ): AsyncIterableIterator<SipTrunkRoute> {\n for await (const page of this.listRoutesPagingPage(options)) {\n yield* page;\n }\n }\n\n private async *listTrunksPagingAll(\n options?: ListSipTrunksOptions,\n ): AsyncIterableIterator<SipTrunk> {\n for await (const page of this.listTrunksPagingPage(options)) {\n yield* page;\n }\n }\n\n private async *listTrunksPagingPage(\n options: ListSipTrunksOptions = {},\n ): AsyncIterableIterator<SipTrunk[]> {\n const apiResult = await this.getTrunksInternal(options as OperationOptions);\n yield apiResult;\n }\n\n private async *listRoutesPagingPage(\n options: ListSipRoutesOptions = {},\n ): AsyncIterableIterator<SipTrunkRoute[]> {\n const apiResult = await this.getRoutesInternal(options as OperationOptions);\n yield apiResult;\n }\n}\n"],"names":["createTracingClient","CommunicationErrorResponse","accept","endpoint","apiVersion","contentType","__rest","__await","__asyncValues","__asyncDelegator","LroEngine","serializer","coreClient","Mappers","Mappers.PhoneNumberAreaCodes","Mappers.CommunicationErrorResponse","Parameters.phoneNumberType","Parameters.skip","Parameters.maxPageSize","Parameters.assignmentType","Parameters.locality","Parameters.administrativeDivision","Parameters.apiVersion","Parameters.endpoint","Parameters.countryCode","Parameters.accept","Parameters.acceptLanguage","Mappers.PhoneNumberCountries","Mappers.PhoneNumberLocalities","Mappers.OfferingsResponse","Parameters.phoneNumberType1","Mappers.PhoneNumberSearchResult","Mappers.PhoneNumbersSearchAvailablePhoneNumbersHeaders","Mappers.PhoneNumberSearchRequest","Parameters.contentType","Parameters.searchId","Mappers.PhoneNumbersPurchasePhoneNumbersHeaders","Mappers.PhoneNumberPurchaseRequest","Mappers.PhoneNumberOperation","Mappers.PhoneNumbersGetOperationHeaders","Parameters.operationId","Mappers.PurchasedPhoneNumber","Mappers.PhoneNumbersUpdateCapabilitiesHeaders","Mappers.PhoneNumberCapabilitiesRequest","Parameters.phoneNumber","Parameters.contentType1","Mappers.PhoneNumbersReleasePhoneNumberHeaders","Mappers.PurchasedPhoneNumbers","Parameters.top","Mappers.OperatorInformationResult","Mappers.OperatorInformationRequest","Parameters.nextLink","createClientLogger","isKeyCredential","isTokenCredential","parseClientArguments","PhoneNumbersGeneratedClient","createCommunicationAuthPolicy","Mappers.SipConfiguration","Mappers.SipRoutingGetExceptionHeaders","Mappers.SipRoutingUpdateExceptionHeaders","Mappers.SipConfigurationUpdate","SipRoutingGeneratedClient"],"mappings":"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"}